Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
A
Aidea
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sa_aidea
Aidea
Commits
2b2a6143
Commit
2b2a6143
authored
Nov 23, 2020
by
谢希宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Aidea product update by Strive Date 2020-11-23
parent
62f375f0
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
573 additions
and
345 deletions
+573
-345
consultSheetform.html
...n/webapp/WEB-INF/views/consultSheet/consultSheetform.html
+179
-30
ConsultSheetMapper.java
.../java/com/cftech/consultsheet/dao/ConsultSheetMapper.java
+5
-2
ConsultSheetMapper.xml
...n/java/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
+16
-4
ConsultSheetService.java
.../com/cftech/consultsheet/service/ConsultSheetService.java
+19
-9
ConsultSheetServiceImpl.java
...ch/consultsheet/service/impl/ConsultSheetServiceImpl.java
+33
-17
ConsultSheetController.java
...a/com/cftech/consultsheet/web/ConsultSheetController.java
+10
-5
ConsultSheetMapper.xml
...lasses/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
+16
-4
orderDetailslist.html
...n/webapp/WEB-INF/views/orderDetails/orderDetailslist.html
+3
-3
orderform.html
...le-web/src/main/webapp/WEB-INF/views/order/orderform.html
+124
-159
orderlist.html
...le-web/src/main/webapp/WEB-INF/views/order/orderlist.html
+63
-40
OrderMapper.java
...odule/src/main/java/com/cftech/order/dao/OrderMapper.java
+7
-0
OrderMapper.xml
...module/src/main/java/com/cftech/order/dao/OrderMapper.xml
+14
-4
Order.java
...er-module/src/main/java/com/cftech/order/model/Order.java
+1
-1
OrderFromVO.java
...ule/src/main/java/com/cftech/order/model/OrderFromVO.java
+2
-0
ProductMobile.java
...e/src/main/java/com/cftech/order/model/ProductMobile.java
+2
-0
OrderService.java
.../src/main/java/com/cftech/order/service/OrderService.java
+6
-1
OrderServiceImpl.java
.../java/com/cftech/order/service/impl/OrderServiceImpl.java
+54
-58
OrderController.java
...e/src/main/java/com/cftech/order/web/OrderController.java
+17
-6
common-test.properties
cftech-common-web/src/main/resources/common-test.properties
+1
-1
MobileCfArticleController.java
...m/cftech/cms/cfarticle/web/MobileCfArticleController.java
+1
-1
No files found.
aidea-modules/consult-module-web/src/main/webapp/WEB-INF/views/consultSheet/consultSheetform.html
View file @
2b2a6143
...
...
@@ -23,7 +23,7 @@
<!-- DataTables -->
<link
rel=
"stylesheet"
href=
"plugins/datatables/dataTables.bootstrap.css"
>
<link
rel=
"stylesheet"
href=
"plugins/select2/select2.min.css"
>
<!-- Theme style -->
<link
rel=
"stylesheet"
href=
"dist/css/AdminLTE.min.css"
>
<!-- AdminLTE Skins. Choose a skin from the css/skins
...
...
@@ -37,6 +37,7 @@
<link
rel=
"stylesheet"
href=
"plugins/daterangepicker/daterangepicker-bs3.css"
>
<!-- bootstrap wysihtml5 - text editor -->
<link
rel=
"stylesheet"
href=
"plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css"
>
<!--validate css-->
<link
rel=
"stylesheet"
href=
"plugins/jquery-validation/css/validate.css"
>
<!--fileinput css-->
...
...
@@ -94,7 +95,7 @@
</form>
</div>
<div
class=
"modal-footer"
>
<button
type=
"button"
class=
"btn btn-secondary"
data-dismiss=
"modal"
>
关闭
</button>
<button
type=
"button"
class=
"btn btn-secondary"
data-dismiss=
"modal"
>
取消
</button>
<button
type=
"button"
class=
"btn btn-primary"
onclick=
"review()"
>
提交
</button>
</div>
</div>
...
...
@@ -244,14 +245,19 @@
</div>
<div
class=
"panel panel-primary"
>
<div
class=
"panel-heading"
>
咨询单信息
</div>
<div
class=
"panel-heading"
>
商品信息
</div>
<div
class=
"panel-body"
>
<div
class=
"form-group form-md-line-input"
>
<div
id=
"group"
class=
"list-group"
>
<li
class=
"list-group-item"
>
<th
style=
""
><label
style=
"width: 180px;margin-right: 50px;text-align: center"
>
商品名称
</label></th>
<th
style=
""
><label
style=
"width: 180px;margin-right: 50px;text-align: center"
>
商品购买数量
</label>
</th>
<th
style=
""
><label
style=
"width: 160px;margin-right: 50px;text-align: center"
>
商品单价
</label></th>
<th
style=
""
><label
style=
"width: 180px;margin-right: 50px;text-align: center"
>
商品总价
</label></th>
</li>
</div>
<button
type=
"button"
class=
"search btn btn-primary"
onclick=
"clickAdd()"
>
添加商品
</button>
</div>
</div>
</div>
...
...
@@ -289,6 +295,7 @@
<script
src=
"plugins/jQuery/jQuery-2.1.4.min.js"
></script>
<!-- Bootstrap 3.3.5 -->
<script
src=
"bootstrap/js/bootstrap.min.js"
></script>
<script
src=
"plugins/select2/select2.full.min.js"
></script>
<!-- DataTables -->
<script
src=
"plugins/datatables/jquery.dataTables.min.js"
></script>
<script
src=
"plugins/datatables/extensions/i18n/lanauage_ch.js"
></script>
...
...
@@ -312,26 +319,121 @@
<script
src=
"common/js/cfapp.js"
></script>
<!-- END PAGE LEVEL PLUGINS -->
<script>
var
bindSwitch
=
function
()
{
// var illness = "$!{data.illness}";
// if (illness == 0
) {
// $('#illness').bootstrapSwitch({
// onText: '是',
// offText: '否'
,
// offColor: 'danger'
,
// state: false
// }
);
//
} else {
//
$('#illness').bootstrapSwitch({
//
onText: '是',
//
offText: '否',
//
offColor: 'danger',
//
state: true
//
}
);
var
goodsList
=
[];
function
goodList
(
)
{
var
url
=
"#springUrl('/a/order/fromProduct')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
success
:
function
(
res
)
{
goodsList
=
JSON
.
parse
(
res
.
data
);
//
var provinceId = '$!{data.productId}';
//
var selectProductList = '$!{list}';
//
if (selectProductList != null && selectProductList != '') {
//
selectProductList = JSON.parse(selectProductList);
//
for (var i = 0; i
<
selectProductList
.
length
;
i
++
)
{
//
var obj = selectProductList[i];
//
clickAdd(obj.id, obj.productId, obj.drugsNum, obj.price, obj.amount
);
// }
};
// }
}
});
}
function
clickAdd
(
id
,
productId
,
count
,
price
,
amount
)
{
var
options
=
goodsList
.
map
(
function
(
item
)
{
if
(
productId
&&
productId
!=
null
&&
item
.
id
===
productId
)
{
return
`<option selected value="
${
item
.
id
}
" data-price="
${
item
.
price
}
">
${
item
.
productName
}
</option>`
}
else
{
return
`<option value="
${
item
.
id
}
" data-price="
${
item
.
price
}
">
${
item
.
productName
}
</option>`
}
}).
join
(
''
);
var
idHtml
=
""
;
if
(
id
&&
id
!=
null
){
idHtml
+=
`<input type="hidden" id="idDetail" name="idDetail" value="`
+
id
+
`">`
;
}
else
{
idHtml
+=
`<input type="hidden" id="idDetail" name="idDetail" value="">`
}
var
listHtml
=
""
;
if
(
count
&&
count
!=
null
)
{
listHtml
+=
`<input name="listHtml" class="form-control" type='number' style="width: 180px;margin-right: 50px; margin-left: 50px;" oninput="if(value>100)value=100;if(value.length>2)value=value.slice(0,2);if(value<=0)value=1" onchange="updateCount(this)" value=
${
count
}
></input>`
;
}
else
{
listHtml
+=
`<input name="listHtml" class="form-control" type='number' style="width: 180px ;margin-right: 50px; margin-left: 50px;" oninput="if(value>100)value=100;if(value.length>2)value=value.slice(0,2);if(value<=0)value=1" onchange="updateCount(this)" value="1"></input>`
;
}
var
HtmlPrice
=
""
;
if
(
price
&&
price
!=
null
)
{
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" data-price="`
+
priceTmp
+
`" style="width: 180px ;margin-right: 50px" type='text' readonly="readonly" value="`
+
price
.
toFixed
(
2
)
+
`"></input>`
;
}
else
{
let
priceTmp
=
goodsList
[
0
].
price
.
toFixed
(
2
);
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" data-price="`
+
priceTmp
+
`" style="width: 180px ;margin-right: 50px" type="text" readonly="readonly" value="`
+
priceTmp
+
`"></input>`
}
var
HtmlAmount
=
""
;
if
(
amount
&&
amount
!=
null
)
{
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" style="width: 180px ;margin-right: 50px" type='text' readonly="readonly" value="`
+
amount
.
toFixed
(
2
)
+
`" ></input>`
;
}
else
{
var
amountTmp
=
goodsList
[
0
].
price
.
toFixed
(
2
);
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" style="width: 180px;margin-right: 50px" type="number" readonly="readonly" value="`
+
amountTmp
+
`"></input>`
}
let
html
=
`<li id="form-translate" class="list-group-item translate" style="display:flex ;">
${
idHtml
}
<select class="form-control select2 releas" name="releas" style="width: 180px;" onchange="getPrice(this)">
${
options
}
</select>
${
listHtml
}
${
HtmlPrice
}
${
HtmlAmount
}
<button type="button" class="search btn btn-primary" style="background-color: #d73925 ;" onclick="deleteSelect(event)">删除</button>
</li>`
;
$
(
"#group"
).
append
(
html
);
initSelect2
();
}
function
initSelect2
()
{
$
(
'.releas'
).
select2
({
placeholder
:
'选择商品'
});
}
function
getPrice
(
e
)
{
let
price
=
$
(
e
).
find
(
"option:selected"
).
attr
(
'data-price'
);
$
(
e
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
(
price
);
let
value
=
$
(
e
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
()
let
count
=
$
(
e
).
parent
().
find
(
'input[name="listHtml"]'
).
val
()
let
val
=
value
*
count
;
$
(
e
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
val
);
}
function
updateCount
(
value
)
{
var
price
=
$
(
value
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
();
var
count
=
$
(
value
).
val
();
var
totalPrice
=
price
*
count
;
$
(
value
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
totalPrice
.
toFixed
(
2
))
}
// function updatePrice(e) {
// // var orderAmount = $("#orderAmount");
// var valueSi = $(value).val();
// // var sign = Math.floor(valueSi * 100 ) /100
// $("#orderAmount").val(valueSi.toFixed(2));
// }
function
deleteSelect
(
event
)
{
let
dom
=
event
.
target
;
let
ret
=
$
(
dom
);
ret
.
parent
().
remove
();
}
$
().
ready
(
function
()
{
var
value
=
$
(
"#sex"
).
val
();
...
...
@@ -355,7 +457,7 @@
$
(
"#save"
).
hide
();
}
bindSwitch
();
goodList
();
Cfapp
.
init
();
recdTypeAdd
.
init
();
});
...
...
@@ -533,11 +635,58 @@
btnoktext
:
"确定"
,
btncanceltext
:
"取消"
,
success
:
function
()
{
//验证商品是否重复
var
arr
=
[];
var
obj
=
{};
$
(
".translate"
).
each
((
index
,
item
)
=>
{
var
txt
=
$
(
item
).
find
(
'[name="releas"]'
).
val
();
if
(
obj
[
txt
])
{
arr
.
push
(
index
);
return
;
}
else
{
obj
[
txt
]
=
true
;
}
})
if
(
arr
.
length
>
0
)
{
Cfapp
.
alert
({
message
:
"无法增加重复商品!"
,
btntext
:
"确定"
,
success
:
function
()
{
$
(
"#save"
).
attr
(
"disabled"
,
false
);
}
});
return
;
}
var
datas
=
[];
$
(
".translate"
).
each
(
function
(
index
,
item
){
datas
.
push
({
productId
:
$
(
item
).
find
(
'[name="releas"]'
).
val
(),
drugsNum
:
$
(
item
).
find
(
'[name="listHtml"]'
).
val
(),
price
:
$
(
item
).
find
(
'[name="htmlPrice"]'
).
val
(),
amount
:
$
(
item
).
find
(
'[name="htmlAmount"]'
).
val
()
});
});
if
(
datas
.
length
==
0
){
Cfapp
.
alert
({
message
:
"咨询单至少包含一件商品"
,
btntext
:
"确定"
,
success
:
function
()
{
$
(
"#save"
).
attr
(
"disabled"
,
false
);
}
});
return
;
};
var
dataJSON
=
{
"consultId"
:
$
(
"#id"
).
val
(),
"status"
:
"1"
,
"pastRecords"
:
$
(
"#pastRecords"
).
val
(),
"allergy"
:
$
(
"#allergy"
).
val
()
"allergy"
:
$
(
"#allergy"
).
val
(),
"goodsDes"
:
JSON
.
stringify
(
datas
)
};
$
.
getJSON
(
"#springUrl('/a/consultSheet/updateStatus')"
,
dataJSON
,
function
(
returnobj
)
{
$
(
"#save"
).
attr
(
"disabled"
,
false
);
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/dao/ConsultSheetMapper.java
View file @
2b2a6143
...
...
@@ -10,6 +10,7 @@ import org.apache.ibatis.annotations.Param;
import
org.apache.ibatis.annotations.Update
;
import
java.util.List
;
import
java.util.Map
;
/**
* 咨询单Mapper
...
...
@@ -19,11 +20,13 @@ import java.util.List;
*/
public
interface
ConsultSheetMapper
extends
GenericDao
<
ConsultSheet
>
{
Integer
updateDate
(
@Param
(
"
id"
)
Long
i
d
,
@Param
(
"status"
)
String
status
,
@Param
(
"description"
)
String
description
);
Integer
updateDate
(
@Param
(
"
consultId"
)
Long
consultI
d
,
@Param
(
"status"
)
String
status
,
@Param
(
"description"
)
String
description
);
Integer
updateStatus
(
@Param
(
"
id"
)
Long
id
,
@Param
(
"status"
)
String
statu
s
);
Integer
updateStatus
(
@Param
(
"
consultId"
)
Long
id
,
@Param
(
"status"
)
String
status
,
@Param
(
"des"
)
String
de
s
);
List
<
ConsultSheet
>
fetchSearchByPage
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
id
);
List
<
ConsultSheet
>
consultSheetList
(
ConsultSheetDto
consultSheetDto
);
Integer
fetchSearchByCount
(
Map
<
String
,
Object
>
params
);
}
\ No newline at end of file
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
View file @
2b2a6143
...
...
@@ -176,7 +176,7 @@
#{memberId, jdbcType=BIGINT},
#{orderId, jdbcType=BIGINT},
#{addressId, jdbcType=VARCHAR},
#{auditTime, jdbcType=TIMESTAMP}
,
#{auditTime, jdbcType=TIMESTAMP}
)
</insert>
...
...
@@ -197,7 +197,15 @@
LEFT JOIN t_qyuser c ON c.id = a.service_id
LEFT JOIN `user` u ON u.userid = b.id
<include
refid=
"sqlWhere"
/>
</select>
<select
id=
"fetchSearchByCount"
parameterType=
"java.util.Map"
resultType=
"java.lang.Integer"
>
SELECT COUNT(1) FROM t_aidea_consult_sheet a
LEFT JOIN t_qyuser b ON b.id = a.doctor_id
LEFT JOIN t_qyuser c ON c.id = a.service_id
LEFT JOIN `user` u ON u.userid = b.id
<include
refid=
"sqlWhere"
/>
<if
test=
"id!=null"
>
and (a.doctor_id = ${id} or a.service_id =${id} )
</if>
</select>
<select
id=
"fetchSearchByPage"
parameterType=
"java.util.Map"
resultType=
"com.cftech.consultsheet.model.ConsultSheet"
>
...
...
@@ -332,8 +340,9 @@
status = #{status},
</if>
<if
test=
"description !=null"
>
description = #{description}
description = #{description}
,
</if>
audit_time = now()
</set>
where id = #{consultId}
</update>
...
...
@@ -342,9 +351,12 @@
update t_aidea_consult_sheet
<set>
<if
test=
"status !=null"
>
status = #{status}
status = #{status}
,
</if>
<if
test=
"des !=null and des != ''"
>
symptom = #{des},
</if>
audit_time = now()
</set>
where id = #{consultId}
</update>
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/service/ConsultSheetService.java
View file @
2b2a6143
...
...
@@ -20,16 +20,24 @@ public interface ConsultSheetService extends GenericService<ConsultSheet> {
Integer
updateDate
(
Long
id
,
String
status
,
String
description
);
Integer
updateStatus
(
Long
id
,
String
status
);
/**
* 咨询单审核
* @param id
* @param status
* @param des
* @return
*/
Integer
updateStatus
(
Long
id
,
String
status
,
String
des
);
List
<
ConsultSheet
>
fetchSearchBy
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Stri
ng
id
);
List
<
ConsultSheet
>
fetchSearchBy
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Lo
ng
id
);
/**
* 提交咨询单且轮询对应客服、医生进行处理
* @param consultSheet
*/
JSONObject
pollingConsultSheet
(
ConsultSheet
consultSheet
);
/**
/**
* @Author Licc
* @Description 咨询单列表
* @Date 13:04 2020/11/1
...
...
@@ -39,4 +47,6 @@ public interface ConsultSheetService extends GenericService<ConsultSheet> {
JSONObject
consultSheetList
(
ConsultSheetDto
consultSheetDto
);
void
sendQyWechatMassage
(
ConsultSheet
consultSheet
);
Integer
fetchSearchByCount
(
Conds
conds
,
Long
id
);
}
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/service/impl/ConsultSheetServiceImpl.java
View file @
2b2a6143
...
...
@@ -71,7 +71,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
@Autowired
private
QyMsgUtil
qyMsgUtil
;
static
final
String
[]
arr
=
new
String
[]{
"
0"
,
"1
"
};
static
final
String
[]
arr
=
new
String
[]{
"
1"
,
"2
"
};
@Override
public
GenericDao
<
ConsultSheet
>
getGenericMapper
()
{
...
...
@@ -80,26 +80,23 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
@Override
public
Integer
updateDate
(
Long
i
d
,
String
status
,
String
description
)
{
return
consultSheetMapper
.
updateDate
(
i
d
,
status
,
description
);
public
Integer
updateDate
(
Long
consultI
d
,
String
status
,
String
description
)
{
return
consultSheetMapper
.
updateDate
(
consultI
d
,
status
,
description
);
}
@Override
public
Integer
updateStatus
(
Long
id
,
String
status
)
{
return
consultSheetMapper
.
updateStatus
(
id
,
status
);
public
Integer
updateStatus
(
Long
consultId
,
String
status
,
String
des
)
{
return
consultSheetMapper
.
updateStatus
(
consultId
,
status
,
des
);
}
@Override
public
List
<
ConsultSheet
>
fetchSearchBy
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Stri
ng
id
)
{
public
List
<
ConsultSheet
>
fetchSearchBy
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Lo
ng
id
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
params
.
put
(
"offset"
,
page
>
0
?
page
:
0
);
params
.
put
(
"limit"
,
pageSize
>
0
?
pageSize
:
0
);
params
.
put
(
"sort"
,
sort
);
if
(
!
StringUtils
.
equals
(
id
,
"1"
)
)
{
if
(
id
!=
null
&&
id
!=
1
)
{
params
.
put
(
"id"
,
id
);
}
return
consultSheetMapper
.
fetchSearchByPage
(
params
);
...
...
@@ -174,7 +171,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
Conds
conds
=
new
Conds
();
conds
.
equal
(
"o.del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"o.openid"
,
openid
);
conds
.
in
(
"o.status"
,
new
String
[]{
"
2"
,
"3"
,
"4
"
});
//2 待发货,3:待收货 4:待付款
conds
.
in
(
"o.status"
,
new
String
[]{
"
5
"
});
//2 待发货,3:待收货 4:待付款
int
count
=
orderService
.
count
(
conds
);
if
(
count
>
0
)
{
//复购
Conds
memberConds
=
new
Conds
();
...
...
@@ -183,6 +180,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
Member
member
=
memberService
.
fetchSearchByConds
(
memberConds
);
if
(
member
==
null
)
{
firstCustomerProcess
(
consultSheet
);
return
true
;
}
String
serviceId
=
member
.
getServiceId
();
...
...
@@ -195,6 +193,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
//推送消息
}
else
{
//普通轮询
firstCustomerProcess
(
consultSheet
);
return
true
;
}
String
doctorId
=
member
.
getDoctorId
();
...
...
@@ -204,9 +203,11 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
consultSheet
.
setDoctorId
(
user
.
getId
());
}
else
{
//普通轮询
firstCustomerProcess
(
consultSheet
);
return
true
;
}
}
else
{
//首次购买
firstCustomerProcess
(
consultSheet
);
return
true
;
}
if
(
consultSheetMapper
.
update
(
consultSheet
)
>
0
)
{
...
...
@@ -228,12 +229,12 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
Conds
conds
=
new
Conds
();
conds
.
equal
(
"t.del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"t.user_type"
,
arr
[
i
]);
//
0:客服; 1:药师
conds
.
equal
(
"t.user_type"
,
arr
[
i
]);
//
1:药师; 2:客服
conds
.
greatThan
(
"t.peak_val"
,
0
);
Sort
sort
=
new
Sort
(
"t.assigned"
,
OrderType
.
ASC
);
//峰值未满
List
<
Qyuser
>
users
=
qyuserService
.
fetchSearchByPage
(
conds
,
sort
,
0
,
0
);
if
(
users
.
size
()
==
1
)
{
if
(
arr
[
i
].
equals
(
"
0
"
))
{
if
(
arr
[
i
].
equals
(
"
2
"
))
{
consultSheet
.
setServiceId
(
users
.
get
(
0
).
getId
());
}
else
{
consultSheet
.
setDoctorId
(
users
.
get
(
0
).
getId
());
...
...
@@ -252,7 +253,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
for
(
Qyuser
user
:
users
)
{
if
(
user
.
getPeakVal
()
>
user
.
getAssigned
())
{
//峰值未满
if
(
arr
[
i
].
equals
(
"
0
"
))
{
if
(
arr
[
i
].
equals
(
"
2
"
))
{
consultSheet
.
setServiceId
(
user
.
getId
());
}
else
{
consultSheet
.
setDoctorId
(
user
.
getId
());
...
...
@@ -275,7 +276,7 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
if
(
users
.
size
()
>
0
)
{
Qyuser
user
=
users
.
get
(
0
);
if
(
arr
[
i
].
equals
(
"
0
"
))
{
if
(
arr
[
i
].
equals
(
"
2
"
))
{
consultSheet
.
setServiceId
(
user
.
getId
());
}
else
{
consultSheet
.
setDoctorId
(
user
.
getId
());
...
...
@@ -285,13 +286,18 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
user
.
setUnAssigned
(
user
.
getAssigned
()
+
1
);
qyuserService
.
updateAssigned
(
user
);
}
else
{
consultSheet
.
setDescription
(
arr
[
i
].
equals
(
"
0
"
)
?
"客服"
:
"药师"
+
"未有对应的咨询单处理人员"
);
consultSheet
.
setDescription
(
arr
[
i
].
equals
(
"
1
"
)
?
"客服"
:
"药师"
+
"未有对应的咨询单处理人员"
);
}
}
}
else
{
consultSheet
.
setDescription
(
arr
[
i
].
equals
(
"
0
"
)
?
"客服"
:
"药师"
+
"未有对应的咨询单处理人员"
);
consultSheet
.
setDescription
(
arr
[
i
].
equals
(
"
1
"
)
?
"客服"
:
"药师"
+
"未有对应的咨询单处理人员"
);
}
}
if
(
consultSheetMapper
.
update
(
consultSheet
)
>
0
)
{
//推送客服,药师
sendQyWechatMassage
(
consultSheet
);
return
true
;
}
return
true
;
}
...
...
@@ -320,4 +326,14 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
agenId
,
msg
,
false
);
}
@Override
public
Integer
fetchSearchByCount
(
Conds
conds
,
Long
id
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
if
(
id
!=
null
&&
id
!=
1
)
{
params
.
put
(
"id"
,
id
);
}
return
consultSheetMapper
.
fetchSearchByCount
(
params
);
}
}
\ No newline at end of file
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/web/ConsultSheetController.java
View file @
2b2a6143
...
...
@@ -26,6 +26,7 @@ import org.mp.api.wxsendmsg.JwTemplateMessageAPI;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.owasp.esapi.ESAPI
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
...
...
@@ -33,6 +34,7 @@ import org.springframework.ui.Model;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.util.HtmlUtils
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -151,7 +153,7 @@ public class ConsultSheetController {
@RequestMapping
(
value
=
"/listData"
)
@ResponseBody
public
JSONObject
listData
(
int
iDisplayStart
,
int
iDisplayLength
,
ConsultSheet
consultSheet
,
HttpServletRequest
request
)
{
String
id
=
String
.
valueOf
(
UserUtils
.
getUser
().
getId
()
);
Long
id
=
UserUtils
.
getUser
().
getUserid
(
);
Long
accountsId
=
UserUtils
.
getmpaccounts
(
request
);
Conds
conds
=
new
Conds
();
...
...
@@ -176,7 +178,7 @@ public class ConsultSheetController {
Sort
sort
=
new
Sort
(
"a.create_time"
,
OrderType
.
DESC
);
List
<
ConsultSheet
>
list
=
consultSheetService
.
fetchSearchBy
(
conds
,
sort
,
iDisplayStart
,
iDisplayLength
,
id
);
Integer
counts
=
consultSheetService
.
count
(
conds
);
Integer
counts
=
consultSheetService
.
fetchSearchByCount
(
conds
,
id
);
JSONObject
rtnJson
=
new
JSONObject
();
rtnJson
.
put
(
"iTotalRecords"
,
counts
);
rtnJson
.
put
(
"iTotalDisplayRecords"
,
counts
);
...
...
@@ -327,15 +329,16 @@ public class ConsultSheetController {
@RequiresPermissions
(
value
=
CONSULTSHEET_EDIT
)
@RequestMapping
(
"/updateStatus"
)
@ResponseBody
public
JSONObject
updateStatus
(
Long
consultId
,
String
status
,
Long
pastRecords
,
Long
allergy
,
HttpServletRequest
request
)
{
public
JSONObject
updateStatus
(
Long
consultId
,
String
status
,
Long
pastRecords
,
Long
allergy
,
String
goodsDes
,
HttpServletRequest
request
)
{
Long
accountId
=
UserUtils
.
getmpaccounts
(
request
);
JSONObject
rtnJson
=
new
JSONObject
();
ConsultSheet
consultSheet
=
consultSheetService
.
fetchById
(
consultId
);
try
{
if
(
consultId
!=
null
&&
StringUtils
.
isNoneBlank
(
status
))
{
Integer
integer
=
consultSheetService
.
updateStatus
(
consultId
,
status
);
String
contents
=
ESAPI
.
encoder
().
decodeForHTML
(
goodsDes
);
goodsDes
=
HtmlUtils
.
htmlUnescape
(
contents
);
Integer
integer
=
consultSheetService
.
updateStatus
(
consultId
,
status
,
goodsDes
);
if
(
integer
>
0
){
//生成空订单
Order
order
=
new
Order
();
order
.
setNumber
(
codingruleUtils
.
getNumber
(
consultSheet
.
getAccountsId
(),
Order
.
class
.
getName
()));
...
...
@@ -345,6 +348,7 @@ public class ConsultSheetController {
order
.
setDoctorId
(
consultSheet
.
getDoctorId
());
order
.
setAccountsId
(
accountId
);
order
.
setStatus
(
"0"
);
//添加订单待确认
order
.
setDescription
(
goodsDes
);
//获取默认地址
if
(
StringUtils
.
isEmpty
(
consultSheet
.
getAddressId
()))
{
...
...
@@ -364,6 +368,7 @@ public class ConsultSheetController {
order
.
setAddressId
(
Long
.
parseLong
(
consultSheet
.
getAddressId
()));
order
.
setAddressDes
(
address
.
getProvinceName
()+
address
.
getCityName
()+
address
.
getCountyName
()+
address
.
getAddressName
());
}
orderService
.
save
(
order
);
//反写咨询单
...
...
aidea-modules/consult-module/target/classes/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
View file @
2b2a6143
...
...
@@ -176,7 +176,7 @@
#{memberId, jdbcType=BIGINT},
#{orderId, jdbcType=BIGINT},
#{addressId, jdbcType=VARCHAR},
#{auditTime, jdbcType=TIMESTAMP}
,
#{auditTime, jdbcType=TIMESTAMP}
)
</insert>
...
...
@@ -197,7 +197,15 @@
LEFT JOIN t_qyuser c ON c.id = a.service_id
LEFT JOIN `user` u ON u.userid = b.id
<include
refid=
"sqlWhere"
/>
</select>
<select
id=
"fetchSearchByCount"
parameterType=
"java.util.Map"
resultType=
"java.lang.Integer"
>
SELECT COUNT(1) FROM t_aidea_consult_sheet a
LEFT JOIN t_qyuser b ON b.id = a.doctor_id
LEFT JOIN t_qyuser c ON c.id = a.service_id
LEFT JOIN `user` u ON u.userid = b.id
<include
refid=
"sqlWhere"
/>
<if
test=
"id!=null"
>
and (a.doctor_id = ${id} or a.service_id =${id} )
</if>
</select>
<select
id=
"fetchSearchByPage"
parameterType=
"java.util.Map"
resultType=
"com.cftech.consultsheet.model.ConsultSheet"
>
...
...
@@ -332,8 +340,9 @@
status = #{status},
</if>
<if
test=
"description !=null"
>
description = #{description}
description = #{description}
,
</if>
audit_time = now()
</set>
where id = #{consultId}
</update>
...
...
@@ -342,9 +351,12 @@
update t_aidea_consult_sheet
<set>
<if
test=
"status !=null"
>
status = #{status}
status = #{status}
,
</if>
<if
test=
"des !=null and des != ''"
>
symptom = #{des},
</if>
audit_time = now()
</set>
where id = #{consultId}
</update>
...
...
aidea-modules/order-detail-module-web/src/main/webapp/WEB-INF/views/orderDetails/orderDetailslist.html
View file @
2b2a6143
...
...
@@ -165,8 +165,8 @@
var
hour
=
now
.
getHours
();
var
minute
=
now
.
getMinutes
();
var
second
=
now
.
getSeconds
();
return
year
+
"-"
+
month
+
"-"
+
date
+
" "
+
hour
+
":"
+
minute
+
":"
+
second
;
return
year
+
"-"
+
(
month
<=
9
?
"0"
+
month
:
month
)
+
"-"
+
(
date
<=
9
?
"0"
+
date
:
date
)
+
" "
+
(
hour
<=
9
?
"0"
+
hour
:
hour
)
+
":"
+
(
minute
<=
9
?
"0"
+
minute
:
minute
)
+
":"
+
(
second
<=
9
?
"0"
+
second
:
second
)
;
}
function
seachTable
()
{
...
...
@@ -309,7 +309,7 @@
"aTargets"
:
[
8
],
"mData"
:
"createTime"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
return
a
;
return
formatDates
(
a
)
;
}
},
...
...
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderform.html
View file @
2b2a6143
...
...
@@ -122,21 +122,21 @@
<div
class=
"form-group form-md-line-input col-xs-5"
>
<label>
订单状态
<font
style=
"color: red"
></font></label>
<input
type=
"text"
class=
"form-control"
name=
"
payS
tatus"
id=
"
payS
tatus"
readonly=
"readonly"
class=
"form-control"
name=
"
s
tatus"
id=
"
s
tatus"
readonly=
"readonly"
maxlength=
"50"
placeholder=
""
value=
"$!{data.payStatus}"
>
</div>
<div
class=
"form-group form-md-line-input col-xs-5"
>
<label>
支付备注
<font
style=
"color: red"
></font></label>
<input
type=
"text"
class=
"form-control"
name=
"description"
id=
"description"
readonly=
"readonly"
maxlength=
"50"
placeholder=
""
value=
"$!{data.description}"
value=
"$!{data.status}"
>
</div>
<!--<div class="form-group form-md-line-input col-xs-5">-->
<!--<label>支付备注<font style="color: red"></font></label>-->
<!--<input type="text"-->
<!--class="form-control" name="description"-->
<!--id="description" readonly="readonly"-->
<!--maxlength="50" placeholder=""-->
<!--value="$!{data.description}"-->
<!-->-->
<!--</div>-->
<div
class=
"form-group form-md-line-input col-xs-5"
>
<label>
支付交易号
<font
style=
"color: red"
></font></label>
<input
type=
"text"
...
...
@@ -234,128 +234,111 @@
<script>
var
csrf
=
'${_csrf.token}'
;
var
csrf_header
=
'${_csrf.headerName}'
;
var
areaList
=
[];
var
goodsList
=
[];
let
status
=
`$!{data.status}`
;
console
.
log
(
status
);
if
(
status
!=
null
&&
status
!=
''
)
{
let
str
=
""
;
switch
(
status
)
{
case
'0'
:
str
=
"待确认"
;
break
;
case
'1'
:
str
=
"待付款"
;
break
;
case
'2'
:
str
=
"代发货"
;
break
;
case
'3'
:
str
=
"待收货"
;
break
;
case
'4'
:
str
=
"已完成"
;
break
;
case
'4'
:
str
=
"已取消"
;
break
;
}
$
(
'input[name="status"]'
).
val
(
str
);
}
function
list
()
{
goodList
();
function
goodList
()
{
var
url
=
"#springUrl('/a/order/fromProduct')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
success
:
function
(
data
)
{
console
.
log
(
data
+
"aaaa"
)
areaList
=
JSON
.
parse
(
data
.
data
);
// var province = document.querySelector('#selectProduct')
// for (index in areaList) {
// var op = new Option(areaList[index].productName, areaList[index].id, false, false)
// province.options[province.length] = op
// }
var
provinceId
=
'$!{data.productId}'
;
var
selectProductList
=
'$!{list}'
;
if
(
selectProductList
!=
null
&&
selectProductList
!=
''
)
{
selectProductList
=
JSON
.
parse
(
selectProductList
);
for
(
var
i
=
0
;
i
<
selectProductList
.
length
;
i
++
)
{
var
obj
=
selectProductList
[
i
];
// if($(this).val() == obj.provinceId){
// $(this).attr('selected', 'selected');
// }
clickAdd
(
obj
.
id
,
obj
.
productId
,
obj
.
drugsNum
,
obj
.
price
,
obj
.
amount
);
}
success
:
function
(
res
)
{
goodsList
=
JSON
.
parse
(
res
.
data
);
//订单产品
let
detailList
=
`$!{list}`
;
if
(
detailList
!=
null
&&
detailList
!=
''
&&
detailList
!=
'[]'
)
{
let
arr
=
JSON
.
parse
(
detailList
);
for
(
let
i
=
0
;
i
<
arr
.
length
;
i
++
)
{
let
obj
=
arr
[
i
];
clickAdd
(
obj
.
id
,
obj
.
productId
,
obj
.
count
,
obj
.
price
,
obj
.
amount
);
}
// $('#selectProduct option').each(function () {
// for(var index= 0;i
<
selectProductList
.
length
;
i
++
){
// var obj = selectProductList[i];
// if($(this).val() == obj.provinceId){
// $(this).attr('selected', 'selected');
// }
// }
//
// })
}
else
{
let
datas
=
`$!{data.description}`
;
if
(
datas
!=
null
&&
datas
!=
""
)
{
let
arr
=
JSON
.
parse
(
datas
);
for
(
let
i
=
0
;
i
<
arr
.
length
;
i
++
)
{
let
obj
=
arr
[
i
];
clickAdd
(
null
,
obj
.
productId
,
obj
.
count
,
obj
.
price
,
obj
.
amount
);
}
});
}
$
().
ready
(
function
()
{
$
(
"#divClass"
).
css
(
'display'
,
'none'
)
var
payStatus
=
$
(
"#payStatus"
).
val
();
if
(
payStatus
==
'0'
)
{
$
(
"#payStatus"
).
val
(
"未付款"
);
}
else
if
(
payStatus
==
'1'
)
{
$
(
"#payStatus"
).
val
(
"已付款"
);
}
else
if
(
payStatus
==
'2'
)
{
$
(
"#payStatus"
).
val
(
"已取消"
);
}
else
{
$
(
"#payStatus"
).
val
(
""
);
}
var
confirm
=
$
(
"#confirm"
).
val
();
if
(
confirm
=
'0'
)
{
$
(
"#divClass"
).
css
(
'display'
,
'blocks'
)
}
Cfapp
.
init
();
list
();
// var selectdrugsNum = $("#selectdrugsNum");
// for (var i = 1; i
<=
30
;
i
++
){
// selectdrugsNum.append("
<
option
value
=
'"+[i]+"'
>
"+[i]+"
<
/option>"
)
// }
// var drugsNum = "$!{data.drugsNum}";
// $('#selectdrugsNum option').each(function () {
// if($(this).val() == drugsNum){
// $(this).attr('selected', 'selected');
// }
// })
});
}
function
clickAdd
(
id
,
productId
,
count
,
price
,
amount
)
{
var
options
=
area
List
.
map
(
function
(
item
)
{
var
options
=
goods
List
.
map
(
function
(
item
)
{
if
(
productId
&&
productId
!=
null
&&
item
.
id
===
productId
)
{
return
`<option selected value="
${
item
.
id
}
" data-price="
${
item
.
price
}
">
${
item
.
productName
}
</option>`
}
else
{
return
`<option value="
${
item
.
id
}
" data-price="
${
item
.
price
}
">
${
item
.
productName
}
</option>`
}
}).
join
(
''
)
}).
join
(
''
)
;
var
idHtml
=
""
;
if
(
id
&&
id
!=
null
){
idHtml
+=
`<input type="hidden" id="idDetail" name="idDetail" value="
${
id
}
">`
idHtml
+=
`<input type="hidden" id="idDetail" name="idDetail" value="
`
+
id
+
`">`
;
}
else
{
idHtml
+=
`<input type="hidden" name="idDetail" value="">`
idHtml
+=
`<input type="hidden"
id="idDetail"
name="idDetail" value="">`
}
var
listHtml
=
""
;
if
(
count
&&
count
!=
null
)
{
price
listHtml
+=
`<input name="listHtml" class="form-control" type='number' style="width: 180px;margin-right: 50px; margin-left: 50px;" oninput="if(value>100)value=100;if(value.length>2)value=value.slice(0,2);if(value<=0)value=1" onchange="updateCount(this)" value=
${
count
}
></input>`
;
}
else
{
listHtml
+=
`<input name="listHtml" class="form-control" type='number' style="width: 180px ;margin-right: 50px; margin-left: 50px;" oninput="if(value>100)value=100;if(value.length>2)value=value.slice(0,2);if(value<=0)value=1" onchange="updateCount(this)" value="1"></input>`
;
}
let
bool
=
`$!{isThree}`
;
var
HtmlPrice
=
""
;
if
(
price
&&
price
!=
null
)
{
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" style="width: 180px ;margin-right: 50px" type='text' readonly="readonly" value="`
+
price
.
toFixed
(
2
)
+
`"></input>`
;
if
(
price
!=
null
&&
price
!=
''
)
{
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" data-price="`
+
price
+
`" style="width: 180px ;margin-right: 50px" type='text' `
;
if
(
bool
==
"1"
)
{
HtmlPrice
+=
`readonly="readonly"`
;
}
let
priceTmp
=
parseInt
(
price
).
toFixed
(
2
);
HtmlPrice
+=
` onchange="updatePrice(this)" value="`
+
priceTmp
+
`"></input>`
;
}
else
{
var
item
=
areaList
[
0
]
priveTmp
=
item
.
price
.
toFixed
(
2
)
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" data-price="
${
item
.
id
}
" style="width: 180px ;margin-right: 50px" type="text" readonly="readonly" value="
${
priveTmp
}
"></input>`
let
priceTmp
=
parseInt
(
goodsList
[
0
].
price
).
toFixed
(
2
);
HtmlPrice
+=
`<input name="htmlPrice" class="form-control" data-price="`
+
priceTmp
+
`" style="width: 180px ;margin-right: 50px" type="text" `
;
//console.log(bool);
if
(
bool
==
"1"
)
{
HtmlPrice
+=
`readonly="readonly"`
;
}
HtmlPrice
+=
` onchange="updatePrice(this)" value="`
+
priceTmp
+
`"></input>`
;
}
var
HtmlAmount
=
""
;
if
(
amount
&&
amount
!=
null
)
{
// var amout = ${amount};
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" style="width: 180px ;margin-right: 50px" type='text' readonly="readonly" value="`
+
amount
.
toFixed
(
2
)
+
`" ></input>`
;
var
HtmlAmount
=
""
;
if
(
amount
!=
null
&&
amount
!=
''
)
{
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" style="width: 180px ;margin-right: 50px" type='text' readonly="readonly" value="`
+
parseInt
(
amount
)
.
toFixed
(
2
)
+
`" ></input>`
;
}
else
{
var
countSi
=
1
;
var
amountPrice
=
countSi
*
item
.
price
var
amountTmp
=
amountPrice
.
toFixed
(
2
)
var
item
=
areaList
[
0
]
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" data-price="
${
item
.
id
}
" style="width: 180px;margin-right: 50px" type="number" value="
${
amountTmp
}
"></input>`
var
amountTmp
=
parseInt
(
goodsList
[
0
].
price
).
toFixed
(
2
);
HtmlAmount
+=
`<input id="htmlAmount" class="form-control" name="htmlAmount" style="width: 180px;margin-right: 50px" type="number" readonly="readonly" value="`
+
amountTmp
+
`"></input>`
}
...
...
@@ -369,13 +352,12 @@
${
HtmlPrice
}
${
HtmlAmount
}
<button type="button" class="search btn btn-primary" style="background-color: #d73925 ;" onclick="deleteSelect(event)">删除
</button>
<button type="button" class="search btn btn-primary" style="background-color: #d73925 ;" onclick="deleteSelect(event)">删除</button>
</li>`
;
$
(
"#group"
).
append
(
html
);
initSelect2
();
toTal
()
toTal
()
;
}
function
initSelect2
()
{
...
...
@@ -386,70 +368,49 @@
function
getPrice
(
e
)
{
let
price
=
$
(
e
).
find
(
"option:selected"
).
attr
(
'data-price'
);
//let price = $(e).parent().find('input[name="htmlPrice"]').attr("target-data");
$
(
e
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
(
price
);
let
value
=
$
(
e
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
()
let
count
=
$
(
e
).
parent
().
find
(
'input[name="listHtml"]'
).
val
()
let
val
=
value
*
count
;
$
(
e
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
val
)
// let htmlAmount = $(e).parent().find('input[name="htmlAmount"]').val()
toTal
()
$
(
e
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
val
);
}
function
updateCount
(
value
)
{
var
price
=
$
(
value
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
()
var
valueSi
=
$
(
value
).
val
()
var
totalPrice
=
valueSi
*
price
;
var
price
=
$
(
value
).
parent
().
find
(
'input[name="htmlPrice"]'
).
val
()
;
var
count
=
$
(
value
).
val
();
var
totalPrice
=
price
*
count
;
$
(
value
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
totalPrice
.
toFixed
(
2
))
toTal
()
toTal
()
;
}
function
updatePrice
(
e
)
{
// var orderAmount = $("#orderAmount"
);
var
valueSi
=
$
(
value
).
val
();
// var sign = Math.floor(valueSi * 100 ) /100
$
(
"#orderAmount"
).
val
(
valueSi
.
toFixed
(
2
)
);
function
updatePrice
(
valu
e
)
{
var
price
=
$
(
value
).
val
(
);
var
number
=
$
(
value
).
parent
().
find
(
'input[name="listHtml"]'
).
val
();
var
amount
=
(
price
*
number
).
toFixed
(
2
);
$
(
value
).
parent
().
find
(
'input[name="htmlAmount"]'
).
val
(
amount
);
toTal
();
}
function
deleteSelect
(
event
)
{
var
url
=
"#springUrl('/a/order/deleteAll')"
const
id
=
$
(
event
.
target
).
siblings
(
"#idDetail"
).
val
();
$
.
ajax
({
url
:
url
,
type
:
"POST"
,
data
:
{
_csrf
:
csrf
,
_csrf_header
:
csrf_header
,
id
:
id
},
success
:
function
(
rsp
)
{
if
(
rsp
.
errorNo
==
0
){
var
dom
=
event
.
target
;
var
ret
=
$
(
dom
);
ret
.
parent
().
remove
();
toTal
()
}
}
});
toTal
();
}
/**
* 计算商品总价
*/
function
toTal
()
{
var
count
=
0
var
amount
=
0
;
$
(
'.translate [name="htmlAmount"]'
).
each
(
function
(
index
,
item
){
c
ount
+=
+
item
.
value
am
ount
+=
+
item
.
value
})
$
(
"#orderAmount"
).
val
(
c
ount
.
toFixed
(
2
));
$
(
"#orderAmount"
).
val
(
am
ount
.
toFixed
(
2
));
}
function
save
()
{
// $('.translate').each(function (index,item) {
// const productId = $(item).find('[name="releas"]').val()
// if($('.translate').find('[name="releas"]')[index].value==$('.translate').find('[name="releas"]')[index+1].value){
// alert('商品名称不能重复')
// }
// })
var
arr
=
[]
var
obj
=
{}
...
...
@@ -472,8 +433,10 @@
});
return
;
}
var
id
=
$
(
"#id"
).
val
()
var
orderAmount
=
$
(
"#orderAmount"
).
val
()
var
id
=
$
(
"#id"
).
val
();
var
orderAmount
=
$
(
"#orderAmount"
).
val
();
var
datas
=
[];
$
(
".translate"
).
each
(
function
(
index
,
item
){
const
idDetail
=
$
(
item
).
find
(
'[name="idDetail"]'
).
val
()
...
...
@@ -492,7 +455,7 @@
orderAmount
:
orderAmount
})
})
if
(
!
datas
.
productId
){
if
(
!
datas
[
0
]
.
productId
){
Cfapp
.
alert
({
message
:
"订单至少包含一件商品"
,
btntext
:
"确定"
,
...
...
@@ -503,7 +466,7 @@
return
;
}
var
url
=
"#springUrl('/a/order/formData')"
var
url
=
"#springUrl('/a/order/formData')"
;
$
.
ajax
({
url
:
url
,
...
...
@@ -536,6 +499,8 @@
});
}
// var recdTypeAdd = function () {
// var initForm = function () {
// var initFormCtrl = function () {
...
...
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderlist.html
View file @
2b2a6143
...
...
@@ -56,6 +56,33 @@
<div
class=
"wrapper"
>
<div
class=
"content-wrapper"
style=
"margin-left:0;"
>
<div
class=
"modal fade"
id=
"exampleModal"
tabindex=
"-1"
role=
"dialog"
aria-labelledby=
"exampleModalLabel"
aria-hidden=
"true"
>
<div
class=
"modal-dialog"
>
<div
class=
"modal-content"
>
<div
class=
"modal-header"
>
<h4
class=
"modal-title"
id=
"exampleModalLabel"
style=
"font-weight: 700;"
>
订单关闭原由
</h4>
<button
type=
"button"
class=
"close"
data-dismiss=
"modal"
aria-label=
"Close"
>
<span
aria-hidden=
"true"
>
×
</span>
</button>
</div>
<div
class=
"modal-body"
>
<form>
<div
class=
"form-group"
>
<label
for=
"message-text"
class=
"col-form-label"
>
请输入关闭原由:
</label>
<textarea
class=
"form-control"
rows=
"3"
id=
"js-textarea"
></textarea>
<input
type=
"hidden"
id=
"orderId"
>
</div>
</form>
</div>
<div
class=
"modal-footer"
>
<button
type=
"button"
class=
"btn btn-secondary"
data-dismiss=
"modal"
>
取消
</button>
<button
type=
"button"
class=
"btn btn-primary"
onclick=
"review()"
>
提交
</button>
</div>
</div>
</div>
</div>
<div
id=
"importExcelDiv"
></div>
<section
class=
"content-header"
>
...
...
@@ -178,7 +205,6 @@
<th>
顺丰运单号
</th>
<th>
订单状态
</th>
<th>
支付交易号
</th>
<th>
支付备注
</th>
<th>
是否开票
</th>
<th>
创建时间
</th>
<th>
操作
</th>
...
...
@@ -242,8 +268,8 @@
var
hour
=
now
.
getHours
();
var
minute
=
now
.
getMinutes
();
var
second
=
now
.
getSeconds
();
return
year
+
"-"
+
month
+
"-"
+
date
+
" "
+
hour
+
":"
+
minute
+
":"
+
second
;
return
year
+
"-"
+
(
month
<=
9
?
"0"
+
month
:
month
)
+
"-"
+
(
date
<=
9
?
"0"
+
date
:
date
)
+
" "
+
(
hour
<=
9
?
"0"
+
hour
:
hour
)
+
":"
+
(
minute
<=
9
?
"0"
+
minute
:
minute
)
+
":"
+
(
second
<=
9
?
"0"
+
second
:
second
)
;
}
function
seachTable
()
{
...
...
@@ -322,10 +348,7 @@
{
"mData"
:
"tradeNo"
}
,
{
"mData"
:
"description"
}
,
{
"mData"
:
"confirm"
...
...
@@ -441,14 +464,6 @@
,
{
"aTargets"
:
[
11
],
"mData"
:
"description"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
return
a
;
}
}
,
{
"aTargets"
:
[
12
],
"mData"
:
"confirm"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
return
a
==
null
?
'否'
:
'是'
;
...
...
@@ -456,7 +471,7 @@
}
,
{
"aTargets"
:
[
1
3
],
"aTargets"
:
[
1
2
],
"mData"
:
"createTime"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
return
formatDates
(
a
);
...
...
@@ -464,7 +479,7 @@
}
,
{
"aTargets"
:
[
1
4
],
"aTargets"
:
[
1
3
],
"mData"
:
"id"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
var
html
=
'#if($shiro.hasPermission("qy:order:edit"))'
;
...
...
@@ -476,14 +491,14 @@
'</button>
\
n'
+
'<ul class="dropdown-menu" role="menu" style="min-width: 100px;">
\
n'
;
html
+=
'<li><a href="#springUrl("/a/order/findorderDetail?id='
+
a
+
'&isDetail=y")">查看清单明细</a></li>'
;
if
(
!
c
.
productName
||
c
.
productName
==
'
'
)
{
if
(
c
.
status
!=
'3'
&&
c
.
status
!=
'4'
&&
c
.
status
!=
'5
'
)
{
html
+=
'<li><a href="#springUrl("/a/order/form?id='
+
a
+
'")">添加商品</a></li>'
;
}
if
(
c
.
status
==
'1'
)
{
html
+=
'<li><a onclick="updateStatusSuccess('
+
a
+
'
,'
+
c
.
openid
+
'
)">订单付款</a></li>'
;
html
+=
'<li><a onclick="updateStatusSuccess('
+
a
+
')">订单付款</a></li>'
;
}
if
(
c
.
status
!=
'4'
&&
c
.
status
!=
'5'
)
{
html
+=
'<li><a onclick="
updateStatus
('
+
a
+
')">订单关闭</a></li>'
;
html
+=
'<li><a onclick="
showModal
('
+
a
+
')">订单关闭</a></li>'
;
}
if
(
c
.
status
==
'2'
)
{
//待发货才可以出库操作
html
+=
'<li><a href="#springUrl("/a/order/sendOut?id='
+
a
+
'")">订单出库</a></li>'
;
...
...
@@ -516,14 +531,18 @@
Cfapp
.
init
();
function
updateStatus
(
id
)
{
function
showModal
(
id
)
{
$
(
"#orderId"
).
val
(
id
);
$
(
'#exampleModal'
).
modal
(
'show'
);
}
function
updateStatusSuccess
(
id
)
{
Cfapp
.
confirm
({
message
:
"是否确认
关闭
"
,
message
:
"是否确认
付款
"
,
btntext
:
"确定"
,
btncanceltext
:
"取消"
,
success
:
function
()
{
updateStatu
(
id
,
null
,
5
);
updateStatu
(
id
,
3
,
null
);
//付款待发货
},
cancel
:
function
()
{
location
.
href
=
"#springUrl('/a/order/list')"
;
...
...
@@ -531,33 +550,35 @@
});
}
function
updateStatusSuccess
(
id
,
openid
)
{
Cfapp
.
confirm
({
message
:
"是否确认付款"
,
function
review
()
{
var
reason
=
$
(
"#js-textarea"
).
val
();
var
id
=
$
(
"#orderId"
).
val
();
if
(
!
reason
||
reason
==
null
)
{
Cfapp
.
alert
({
message
:
"请输入关闭原由!"
,
btntext
:
"确定"
,
btncanceltext
:
"取消"
,
success
:
function
()
{
updateStatu
(
id
,
openid
,
3
);
//付款待发货
},
cancel
:
function
()
{
location
.
href
=
"#springUrl('/a/order/list')"
;
}
success
:
function
()
{}
});
return
;
}
updateStatu
(
id
,
5
,
reason
);
}
function
updateStatu
(
id
,
openid
,
status
)
{
function
updateStatu
(
id
,
status
,
reason
)
{
var
url
=
"#springUrl('/a/order/updateStatus')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
data
:
{
id
:
id
,
openid
:
openid
,
orderCancel
:
reason
,
status
:
status
},
success
:
function
(
rsp
)
{
console
.
log
(
rsp
);
if
(
status
==
'5'
)
{
$
(
'#exampleModal'
).
modal
(
'hide'
);
}
if
(
rsp
.
errorNo
==
"0"
)
{
Cfapp
.
alert
({
message
:
"
设置
成功"
,
message
:
"
操作
成功"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/order/list')"
;
...
...
@@ -565,7 +586,7 @@
});
}
else
{
Cfapp
.
alert
({
message
:
"
设置
失败"
,
message
:
"
操作
失败"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/order/list')"
;
...
...
@@ -609,6 +630,8 @@
});
}
function
importExcel
()
{
var
templateExcelUrl
=
"#springUrl('/a/order/templateExcel')"
;
var
importExcelUrl
=
"#springUrl('/a/order/importExcel')"
;
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/dao/OrderMapper.java
View file @
2b2a6143
...
...
@@ -75,4 +75,11 @@ public interface OrderMapper extends GenericDao<Order> {
* @Param
**/
List
<
OrderMobile
>
orderList
(
OrderMobileDto
orderMobileDto
);
/**
* 是否三期用户
* @param openid
* @return
*/
Integer
isThreeUsers
(
@Param
(
"openid"
)
String
openid
);
}
\ No newline at end of file
aidea-modules/order-module/src/main/java/com/cftech/order/dao/OrderMapper.xml
View file @
2b2a6143
...
...
@@ -141,7 +141,9 @@
o.create_time AS createTime,
o.confirm,
o.courier_number AS courierNumber,
o.address_des
o.address_des,
o.openid,
o.status
</sql>
<sql
id=
"sqlColumnProduct"
>
...
...
@@ -465,8 +467,11 @@
<update
id=
"updateStatus"
parameterType=
"java.util.Map"
>
update t_order
<set>
<if
test=
"id!=null"
>
status = #{status}
<if
test=
"status != null"
>
status = #{status},
</if>
<if
test=
"orderCancel!=null and orderCancel != ''"
>
order_cancel = #{status}
</if>
</set>
where id= #{id}
...
...
@@ -530,7 +535,8 @@
t.amount,
p.is_rs AS isrs,
p.product_img AS productImg,
p.format
p.format,
t.drugs_num drugsNum
FROM t_order_details t LEFT JOIN t_aidea_product p ON t.drugs_id = p.id
WHERE t.del_flag = 0
<if
test=
"orderId!=null"
>
...
...
@@ -590,4 +596,8 @@
</if>
</select>
<select
id=
"isThreeUsers"
resultType=
"java.lang.Integer"
>
SELECT COUNT(1) FROM wx_mp_fanss f INNER JOIN wx_mp_member m ON f.openid = m.open_id
WHERE f.delflag = '0' AND m.del_flag = '0' AND m.compan = '0' AND m.open_id = #{openid}
</select>
</mapper>
\ No newline at end of file
aidea-modules/order-module/src/main/java/com/cftech/order/model/Order.java
View file @
2b2a6143
...
...
@@ -52,7 +52,7 @@ public class Order extends OrderDetail implements Serializable {
@ExportConfig
(
value
=
"订单取消原因"
,
width
=
100
,
showLevel
=
1
)
private
String
orderCancel
;
/* 卖家备注 */
@ExportConfig
(
value
=
"
卖家备注
"
,
width
=
100
,
showLevel
=
1
)
@ExportConfig
(
value
=
"
remarks
"
,
width
=
100
,
showLevel
=
1
)
private
String
remarks
;
/* 所属的账号 */
private
Long
accountsId
;
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/model/OrderFromVO.java
View file @
2b2a6143
...
...
@@ -30,6 +30,8 @@ public class OrderFromVO {
private
String
orderCancel
;
private
Double
price
;
private
Double
amount
;
private
String
openid
;
private
String
status
;
}
aidea-modules/order-module/src/main/java/com/cftech/order/model/ProductMobile.java
View file @
2b2a6143
...
...
@@ -19,6 +19,8 @@ public class ProductMobile {
private
String
productImg
;
/*商品规格*/
private
String
format
;
/*商品规格*/
private
Long
drugsNum
;
}
aidea-modules/order-module/src/main/java/com/cftech/order/service/OrderService.java
View file @
2b2a6143
...
...
@@ -36,7 +36,7 @@ public interface OrderService extends GenericService<Order> {
List
<
OrderFromVO
>
fetchProductId
(
Serializable
id
);
Integer
updateStatus
(
Long
id
,
String
status
);
Integer
updateStatus
(
Long
id
,
String
status
,
String
orderCancel
);
JSONObject
newlyAdded
(
String
datas
,
Long
accountsId
);
...
...
@@ -69,4 +69,9 @@ public interface OrderService extends GenericService<Order> {
**/
JSONObject
orderList
(
OrderMobileDto
orderMobileDto
);
/**
*
* @param openid
*/
Integer
isThreeUsers
(
String
openid
);
}
aidea-modules/order-module/src/main/java/com/cftech/order/service/impl/OrderServiceImpl.java
View file @
2b2a6143
...
...
@@ -85,10 +85,11 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
}
@Override
public
Integer
updateStatus
(
Long
id
,
String
status
)
{
public
Integer
updateStatus
(
Long
id
,
String
status
,
String
orderCancel
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"id"
,
id
);
params
.
put
(
"status"
,
status
);
params
.
put
(
"orderCancel"
,
orderCancel
);
return
orderMapper
.
updateStatus
(
params
);
}
...
...
@@ -102,7 +103,6 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
JSONArray
jsonArray
=
JSONArray
.
parseArray
(
datas
);
try
{
if
(
jsonArray
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
JSONObject
jsonObject
=
jsonArray
.
getJSONObject
(
i
);
long
id
=
jsonObject
.
getLong
(
"id"
);
...
...
@@ -122,12 +122,16 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
params
.
put
(
"idDetail"
,
idDetail
);
if
(!
""
.
equals
(
idDetail
))
{
orderMapper
.
updateDetill
(
params
);
Order
newOrder
=
orderMapper
.
fetchOrder
(
id
);
newOrder
.
setStatus
(
"1"
);
newOrder
.
setOrderAmount
(
orderAmount
);
orderMapper
.
update
(
newOrder
);
rtnJson
.
put
(
"errorNo"
,
"0"
);
return
rtnJson
;
}
else
{
ProductDto
productDtos
=
orderMapper
.
fetchProduct
(
params
);
orderDetailDto
=
new
OrderDetailDto
();
Order
orders
=
orderMapper
.
fetchOrder
(
id
);
String
number
=
orders
.
getNumber
();
orderDetailDto
=
new
OrderDetailDto
();
orderDetailDto
.
setOrderCode
(
orders
.
getNumber
());
orderDetailDto
.
setOrderId
(
id
);
orderDetailDto
.
setDrugsId
(
productDtos
.
getId
());
...
...
@@ -139,30 +143,22 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
orderDetailDto
.
setDrugsSku
(
productDtos
.
getFormat
());
orderDetailDto
.
setAccountsId
(
accountsId
);
Integer
detill
=
orderMapper
.
saveDetill
(
orderDetailDto
);
if
(
detill
<
0
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorNo"
,
"修改失败"
);
}
else
{
if
(
detill
>
0
)
{
Integer
integer
=
orderMapper
.
updateOrder
(
params
);
if
(
integer
>
0
)
{
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
"修改成功"
);
}
}
}
}
//修改订单待付款
Order
newOrder
=
orderMapper
.
fetchOrder
(
id
);
newOrder
.
setStatus
(
"1"
);
newOrder
.
setOrderAmount
(
orderAmount
);
orderMapper
.
update
(
newOrder
);
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
"修改成功"
);
return
rtnJson
;
}
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
}
rtnJson
.
put
(
"errorNo"
,
"1"
);
return
rtnJson
;
}
...
...
@@ -188,11 +184,6 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
rtnJson
.
put
(
"errorMsg"
,
"openid不能为空"
);
return
rtnJson
;
}
if
(
orderMobileDto
.
getStatus
()
==
null
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"status不能为空"
);
return
rtnJson
;
}
List
<
OrderMobile
>
orderMobiles
=
orderMapper
.
orderFall
(
orderMobileDto
);
for
(
OrderMobile
orderMobile
:
orderMobiles
)
{
...
...
@@ -273,4 +264,9 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
return
rtnJson
;
}
@Override
public
Integer
isThreeUsers
(
String
openid
)
{
return
orderMapper
.
isThreeUsers
(
openid
);
}
}
\ No newline at end of file
aidea-modules/order-module/src/main/java/com/cftech/order/web/OrderController.java
View file @
2b2a6143
...
...
@@ -54,8 +54,10 @@ public class OrderController {
public
static
final
String
ORDER_VIEW
=
"qy:order:view"
;
public
static
final
String
ORDER_EDIT
=
"qy:order:edit"
;
public
static
final
DoubleJSONFilter
DOUBLE_JSON_FILTER
=
new
DoubleJSONFilter
();
@Autowired
private
OrderService
orderService
;
@Autowired
private
OrderDetailsController
orderDetailsController
;
...
...
@@ -73,12 +75,21 @@ public class OrderController {
@RequestMapping
(
"/form"
)
public
String
form
(
HttpServletRequest
request
,
String
id
,
Model
model
)
{
if
(!
StringUtils
.
isEmpty
(
id
))
{
OrderFromVO
orderFromVO
=
orderService
.
fetchId
(
id
);
List
<
OrderFromVO
>
fromVO
=
orderService
.
fetchProductId
(
id
);
OrderFromVO
orderFromVO
=
orderService
.
fetchId
(
id
);
//订单信息
JSONObject
jsonObject
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
orderFromVO
));
String
jsonArray
=
JSON
.
toJSONString
(
fromVO
,
DOUBLE_JSON_FILTER
,
SerializerFeature
.
WriteMapNullValue
);
model
.
addAttribute
(
"data"
,
jsonObject
);
List
<
OrderFromVO
>
fromVO
=
orderService
.
fetchProductId
(
id
);
//获取订单产品明细数据
String
jsonArray
=
JSON
.
toJSONString
(
fromVO
,
DOUBLE_JSON_FILTER
,
SerializerFeature
.
WriteMapNullValue
);
model
.
addAttribute
(
"list"
,
jsonArray
);
Integer
i
=
orderService
.
isThreeUsers
(
orderFromVO
.
getOpenid
());
if
(
i
>
0
)
{
model
.
addAttribute
(
"isThree"
,
"0"
);
}
else
{
model
.
addAttribute
(
"isThree"
,
"1"
);
}
}
return
"order/orderform"
;
}
...
...
@@ -124,7 +135,7 @@ public class OrderController {
@RequestMapping
(
value
=
"/listData"
)
@ResponseBody
public
JSONObject
listData
(
int
iDisplayStart
,
int
iDisplayLength
,
Order
order
,
HttpServletRequest
request
)
{
Long
userid
=
UserUtils
.
getUser
().
get
I
d
();
Long
userid
=
UserUtils
.
getUser
().
get
Useri
d
();
Long
accountsId
=
UserUtils
.
getmpaccounts
(
request
);
Conds
conds
=
new
Conds
();
...
...
@@ -283,9 +294,9 @@ public class OrderController {
@RequestMapping
(
"/updateStatus"
)
@ResponseBody
public
JSONObject
updateStatus
(
Long
id
,
String
openid
,
String
status
,
HttpServletRequest
request
)
{
public
JSONObject
updateStatus
(
Long
id
,
String
status
,
String
orderCancel
,
HttpServletRequest
request
)
{
JSONObject
rtnJson
=
new
JSONObject
();
Integer
integer
=
orderService
.
updateStatus
(
id
,
status
);
Integer
integer
=
orderService
.
updateStatus
(
id
,
status
,
orderCancel
);
//设置已付款
if
(
integer
>
0
){
rtnJson
.
put
(
"errorNo"
,
"0"
);
...
...
cftech-common-web/src/main/resources/common-test.properties
View file @
2b2a6143
...
...
@@ -40,7 +40,7 @@ LOG_URL=http://www.michang-tech.com.cn:6989/log/addlog
#\u6821\u9A8C\u5151\u6362\u5BC6\u7801KEY
MEMBER_PASSWORD_KEY
=
DONGCHANGINT9527;
list.refreshtoken
=
true
jwt.domain
=
127.0.0.1
jwt.domain
=
pd.shxrtech.com
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD
jwt.duration
=
86400000
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u03AAtrue
...
...
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/web/MobileCfArticleController.java
View file @
2b2a6143
...
...
@@ -176,6 +176,6 @@ public class MobileCfArticleController {
**/
@RequestMapping
(
value
=
"/columnDetails"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
columnDetails
(
Long
id
,
String
appId
,
Long
page
,
Long
pageSize
,
String
title
){
return
cfarticleService
.
columnDetails
(
id
,
appId
,
page
,
pageSize
,
title
);
return
cfarticleService
.
columnDetails
(
id
,
appId
,
page
,
pageSize
,
title
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment