فهرست منبع

商城订单统计 在途只是只货到付款部分 已支付的不算

xgb 1 روز پیش
والد
کامیت
0590d623c0
1فایلهای تغییر یافته به همراه14 افزوده شده و 8 حذف شده
  1. 14 8
      fs-service/src/main/resources/mapper/hisStore/FsStoreOrderScrmMapper.xml

+ 14 - 8
fs-service/src/main/resources/mapper/hisStore/FsStoreOrderScrmMapper.xml

@@ -1000,9 +1000,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
   <!--    成交金额=实际支付金额   -->
     <sql id="selectFsStoreOrderConditions">
         sum(case when o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) then 1 else 0 end) AS totalCalls,
-        sum(case when o.status in (1,2,3,-1) and  (o.audit_status is null or o.audit_status = 4) then o.pay_price+o.pay_delivery else 0 end) AS totalAmount,
+        sum(case when o.status in (1,2,3,-1) and  (o.audit_status is null or o.audit_status = 4) then o.pay_price else 0 end) AS totalAmount,
 
-        SUM(CASE WHEN o.status IN (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) THEN o.pay_price+o.pay_delivery ELSE 0 END) AS validAmount,
+        SUM(CASE WHEN o.status IN (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) THEN o.pay_price ELSE 0 END) AS validAmount,
 
         COUNT(CASE WHEN o.audit_status in (0,2) THEN 1 END) AS waitingOrders,
         SUM(CASE WHEN o.audit_status in (0,2) THEN o.pay_price ELSE 0 END) AS waitingAmount,
@@ -1013,26 +1013,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         COUNT(CASE WHEN o.status IN (-3) THEN 1 END) AS cancelOrders,
         SUM(CASE WHEN o.status IN (-3) THEN o.pay_price ELSE 0 END) AS cancelAmount,
 
-        sum(case when o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) then 1 else 0 end) AS completeOrders,
-        sum(case when o.status in (1,2,3,-1) and  (o.audit_status is null or o.audit_status = 4) then o.pay_price else 0 end) AS completeAmount,
+        sum(case when o.pay_type = 1 then
+        case when o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) then 1 else 0 end
+        else case when o.status=3 then 1 else 0 end
+        end) AS completeOrders,
+        sum(case when o.pay_type = 1 then
+        case when o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) then o.pay_price else 0 end
+        else case when o.status=3 then o.pay_price else 0 end
+        end) AS completeAmount,
 
         COUNT(CASE WHEN o.status = 1 THEN 1 END) AS unshippedOrders,
         SUM(CASE WHEN o.status = 1 THEN o.pay_price ELSE 0 END) AS unshippedAmount,
 
         COUNT(CASE WHEN o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) THEN 1 END) AS shippedOrders,
-        SUM(CASE WHEN o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) THEN o.pay_price+o.pay_delivery ELSE 0 END) AS shippedAmount,
+        SUM(CASE WHEN o.status in (1,2,3,-1) and (o.audit_status is null or o.audit_status = 4) THEN o.pay_price ELSE 0 END) AS shippedAmount,
 
-        COUNT(CASE WHEN o.status = 2 THEN 1 END) AS transitOrders,
+        COUNT(CASE WHEN o.status = 2 and o.pay_type != 1 THEN 1 END) AS transitOrders,
         SUM(CASE WHEN o.status = 2 THEN o.pay_delivery ELSE 0 END) AS transitAmount,
 
         COUNT(CASE WHEN o.status = 3 THEN 1 END) AS receivedOrders,
-        SUM(CASE WHEN o.status = 3 THEN o.pay_price+o.pay_delivery ELSE 0 END) AS receivedAmount,
+        SUM(CASE WHEN o.status = 3 THEN o.pay_price ELSE 0 END) AS receivedAmount,
 
         COUNT(CASE WHEN o.refund_status = -2 THEN 1 END) AS returnOrders,
         SUM(CASE WHEN o.refund_status = -2 THEN o.refund_price ELSE 0 END) AS returnAmount,
 
         COUNT(CASE WHEN o.status = 3 THEN 1 END) AS paybackOrders,
-        SUM(CASE WHEN o.status = 3 THEN o.pay_price+o.pay_delivery ELSE 0 END) AS paybackAmount
+        SUM(CASE WHEN o.status = 3 THEN o.pay_price ELSE 0 END) AS paybackAmount
     </sql>