|
@@ -686,7 +686,32 @@
|
|
|
AND exists (select 1 from trade_refund tr where tr.order_id=td.id and tr.refund_status = 6 and tr.refund_time BETWEEN #{vo.orderRefundDateStart} and #{vo.orderRefundDateEnd} )
|
|
AND exists (select 1 from trade_refund tr where tr.order_id=td.id and tr.refund_status = 6 and tr.refund_time BETWEEN #{vo.orderRefundDateStart} and #{vo.orderRefundDateEnd} )
|
|
|
</if>
|
|
</if>
|
|
|
|
|
|
|
|
- ORDER BY td.create_time DESC
|
|
|
|
|
|
|
+ ORDER BY
|
|
|
|
|
+ <choose>
|
|
|
|
|
+ <!-- 有前端排序:只使用前端多字段排序 -->
|
|
|
|
|
+ <when test="vo.sortField != null and vo.sortField != '' and vo.sortOrder != null and vo.sortOrder != ''">
|
|
|
|
|
+ <foreach collection="vo.sortField.split(',')" index="index" item="field" separator=",">
|
|
|
|
|
+ <choose>
|
|
|
|
|
+ <when test="field == 'orderSort'">td.order_sort</when>
|
|
|
|
|
+ <when test="field == 'sourceName'">td.source_id</when>
|
|
|
|
|
+ <when test="field == 'voyage.name'">
|
|
|
|
|
+ (SELECT pv.name FROM product_voyage pv WHERE pv.id = td.voyage_id AND pv.deleted = 0)
|
|
|
|
|
+ </when>
|
|
|
|
|
+ <when test="field == 'totalPerson'">
|
|
|
|
|
+ (SELECT COUNT(DISTINCT v1.id)
|
|
|
|
|
+ FROM trade_visitor v1
|
|
|
|
|
+ WHERE v1.order_id = td.id
|
|
|
|
|
+ AND v1.deleted = 0)
|
|
|
|
|
+ </when>
|
|
|
|
|
+ </choose>
|
|
|
|
|
+ ${vo.sortOrder.split(',')[index]}
|
|
|
|
|
+ </foreach>
|
|
|
|
|
+ </when>
|
|
|
|
|
+ <!-- 无前端排序:默认排序 -->
|
|
|
|
|
+ <otherwise>
|
|
|
|
|
+ td.create_time DESC
|
|
|
|
|
+ </otherwise>
|
|
|
|
|
+ </choose>
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|
|
|
<select id="findOrderDetailByIds"
|
|
<select id="findOrderDetailByIds"
|
|
@@ -725,7 +750,32 @@
|
|
|
#{id}
|
|
#{id}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
GROUP BY td.id
|
|
GROUP BY td.id
|
|
|
- ORDER BY td.create_time DESC
|
|
|
|
|
|
|
+ ORDER BY
|
|
|
|
|
+ <choose>
|
|
|
|
|
+ <!-- 有前端排序:只使用前端多字段排序 -->
|
|
|
|
|
+ <when test="vo.sortField != null and vo.sortField != '' and vo.sortOrder != null and vo.sortOrder != ''">
|
|
|
|
|
+ <foreach collection="vo.sortField.split(',')" index="index" item="field" separator=",">
|
|
|
|
|
+ <choose>
|
|
|
|
|
+ <when test="field == 'orderSort'">td.order_sort</when>
|
|
|
|
|
+ <when test="field == 'sourceName'">td.source_id</when>
|
|
|
|
|
+ <when test="field == 'voyage.name'">
|
|
|
|
|
+ (SELECT pv.name FROM product_voyage pv WHERE pv.id = td.voyage_id AND pv.deleted = 0)
|
|
|
|
|
+ </when>
|
|
|
|
|
+ <when test="field == 'totalPerson'">
|
|
|
|
|
+ (SELECT COUNT(DISTINCT v1.id)
|
|
|
|
|
+ FROM trade_visitor v1
|
|
|
|
|
+ WHERE v1.order_id = td.id
|
|
|
|
|
+ AND v1.deleted = 0)
|
|
|
|
|
+ </when>
|
|
|
|
|
+ </choose>
|
|
|
|
|
+ ${vo.sortOrder.split(',')[index]}
|
|
|
|
|
+ </foreach>
|
|
|
|
|
+ </when>
|
|
|
|
|
+ <!-- 无前端排序:默认排序 -->
|
|
|
|
|
+ <otherwise>
|
|
|
|
|
+ td.create_time DESC
|
|
|
|
|
+ </otherwise>
|
|
|
|
|
+ </choose>
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getTradeOrderUserPage"
|
|
<select id="getTradeOrderUserPage"
|
|
@@ -2802,7 +2852,8 @@
|
|
|
</select>
|
|
</select>
|
|
|
<select id="selectTotal1ByOrderIds"
|
|
<select id="selectTotal1ByOrderIds"
|
|
|
resultType="com.yc.ship.module.trade.controller.admin.order.vo.order.OrderTotalRespVO">
|
|
resultType="com.yc.ship.module.trade.controller.admin.order.vo.order.OrderTotalRespVO">
|
|
|
- select sum(deposi) deposi, sum(damaged) damaged, sum(supplement_amount) supplement_amount, sum(pay_amount) pay_amount, sum(real_pay_amount) real_pay_amount from trade_order
|
|
|
|
|
|
|
+ select sum(deposi) deposi, sum(damaged) damaged, sum(supplement_amount) supplement_amount,
|
|
|
|
|
+ sum(pay_amount) pay_amount, sum(real_pay_amount) real_pay_amount,sum(pay_amount - real_pay_amount) unpaid_amount from trade_order
|
|
|
where 1=1 and id in
|
|
where 1=1 and id in
|
|
|
<foreach collection="orderIds" item="item" separator="," open="(" close=")">
|
|
<foreach collection="orderIds" item="item" separator="," open="(" close=")">
|
|
|
#{item}
|
|
#{item}
|
|
@@ -2836,7 +2887,8 @@
|
|
|
ifnull( sum( CASE WHEN type = 'childTake' OR type = 'childNonTake' OR type = 'childPlus' THEN num ELSE 0 END ), 0 ) AS childTotalNum,
|
|
ifnull( sum( CASE WHEN type = 'childTake' OR type = 'childNonTake' OR type = 'childPlus' THEN num ELSE 0 END ), 0 ) AS childTotalNum,
|
|
|
ifnull( sum( CASE WHEN type = 'babyTake' OR type = 'babyNonTake' OR type = 'babyPlus' THEN num ELSE 0 END ), 0 ) AS babyTotalNum,
|
|
ifnull( sum( CASE WHEN type = 'babyTake' OR type = 'babyNonTake' OR type = 'babyPlus' THEN num ELSE 0 END ), 0 ) AS babyTotalNum,
|
|
|
ifnull( sum( CASE WHEN type = 'leader' THEN num ELSE 0 END ), 0 ) AS leaderTotalNum,
|
|
ifnull( sum( CASE WHEN type = 'leader' THEN num ELSE 0 END ), 0 ) AS leaderTotalNum,
|
|
|
- ifnull( sum( CASE WHEN type = 'with' THEN num ELSE 0 END ), 0 ) AS withTotalNum
|
|
|
|
|
|
|
+ ifnull( sum( CASE WHEN type = 'with' THEN num ELSE 0 END ), 0 ) AS withTotalNum,
|
|
|
|
|
+ ifnull( sum( num ), 0 ) AS totalNum
|
|
|
FROM
|
|
FROM
|
|
|
( SELECT type, count( 1 ) num FROM trade_visitor WHERE deleted = 0
|
|
( SELECT type, count( 1 ) num FROM trade_visitor WHERE deleted = 0
|
|
|
and order_id in
|
|
and order_id in
|