From eb706a988e747b624fda0d44e0aaf6a4ee5e20eb Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 26 May 2022 11:27:03 +0800
Subject: [PATCH] fix saveOrder zkPrice is null

---
 zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml |  126 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 119 insertions(+), 7 deletions(-)

diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
index a9ba0be..bd66336 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
@@ -15,6 +15,7 @@
         <result property="activity" column="ACTIVITY"/>
         <result property="total" column="TOTAL"/>
 
+
         <result property="statu" column="STATU"/>
         <result property="zkTotal" column="ZK_TOTAL"/>
         <result property="shopId" column="SHOP_ID"/>
@@ -29,7 +30,8 @@
         <result property="cardPay" column="card_Pay"/>
         <result property="arrears" column="arrears"/>
         <result property="payTime" column="pay_time"/>
-
+        <result property="cashierId" column="cashier_id"/>
+        <result property="cashierName" column="cashierName"/>
         <!-- 扩展字段 -->
         <result property="shopName" column="SHOP_NAME"/>
         <result property="shopShortName" column="SHOP_SHORT_NAME"/>
@@ -64,7 +66,8 @@
 		pay_time,
 		company_id,
 		orderType,
-        is_has_refund
+        is_has_refund,
+        cashier_id
 		)
 		VALUES (
 		#{id},
@@ -88,7 +91,8 @@
 		#{payTime},
 		#{companyId},
 		#{orderType},
-		#{isHasRefund}
+		#{isHasRefund},
+		#{cashierId}
 		)
 	</insert>
 
@@ -151,7 +155,9 @@
             <if test="isHasRefund != null  ">
                 is_has_refund = #{isHasRefund},
             </if>
-
+            <if test="cashierId != null  ">
+                cashier_id = #{cashierId},
+            </if>
         </set>
         WHERE id=#{id}
     </update>
@@ -174,11 +180,12 @@
     <!-- 分页查询 -->
     <select id="selectInPage" resultMap="SysOrderMap">
         select
-        a.*, b.VIP_NAME, c.su_name as STAFF_NAME,
+        a.*, b.VIP_NAME, c.su_name as STAFF_NAME, e.su_name as cashierName,
         d.SHOP_NAME, b.PHONE
         from sys_order a
         LEFT JOIN sys_vip_info b on b.ID=a.VIP_ID
         left JOIN sys_users c on c.su_id=a.STAFF_ID
+        left JOIN sys_users e on e.su_id=a.cashier_id
         left JOIN sys_shop_info d on d.ID=a.SHOP_ID
         where 1=1
         <if test="record!=null">
@@ -208,6 +215,9 @@
             </if>
             <if test="record.staffId != null and record.staffId !='' ">
                 and a.STAFF_ID = #{record.staffId}
+            </if>
+            <if test="record.cashierId != null and record.cashierId !='' ">
+                and a.cashier_id = #{record.cashierId}
             </if>
             <if test="record.isCross != null and record.isCross !='' ">
                 and a.IS_CROSS = #{record.isCross}
@@ -290,6 +300,9 @@
             <if test="record.staffId != null and record.staffId !='' ">
                 and a.STAFF_ID = #{record.staffId}
             </if>
+            <if test="record.cashierId != null and record.cashierId !='' ">
+                and a.cashier_id = #{record.cashierId}
+            </if>
             <if test="(record.companyId!=null and record.companyId!='') ">
                 and a.company_id = #{record.companyId}
             </if>
@@ -334,7 +347,7 @@
     <select id="selectById" resultMap="SysOrderMap">
         select
             a.*,
-            c.su_name as STAFF_NAME,
+            c.su_name as STAFF_NAME, e.su_name as cashierName,
             d.SHOP_NAME,
             d.shop_short_name,
             b.PHONE,
@@ -342,6 +355,7 @@
         from sys_order a
 		LEFT JOIN sys_vip_info b on b.ID=a.VIP_ID
 		left JOIN sys_users c on c.su_id=a.STAFF_ID
+        left JOIN sys_users e on e.su_id=a.cashier_id
 		left JOIN sys_shop_info d on d.ID=a.SHOP_ID
         where a.id=#{id}
     </select>
@@ -384,6 +398,9 @@
 
             <if test="record.staffId != null and record.staffId !='' ">
                 and a.STAFF_ID = #{record.staffId}
+            </if>
+            <if test="record.cashierId != null and record.cashierId !='' ">
+                and a.cashier_id = #{record.cashierId}
             </if>
             <if test="record.isCross != null and record.isCross !='' ">
                 and a.IS_CROSS = #{record.isCross}
@@ -441,6 +458,9 @@
             <if test="record.staffId != null and record.staffId !='' ">
                 and a.STAFF_ID = #{record.staffId}
             </if>
+            <if test="record.cashierId != null and record.cashierId !='' ">
+                and a.cashier_id = #{record.cashierId}
+            </if>
             <if test="record.isCross != null and record.isCross !='' ">
                 and a.IS_CROSS = #{record.isCross}
             </if>
@@ -494,7 +514,7 @@
             MAX(pay_time) payTime,
             GROUP_CONCAT(DISTINCT t2.shop_short_name) shopName
         from sys_order t1
-        left join sys_order_flow b on t1.id=b.ORDER_ID and pay_method!='储值卡'
+        left join sys_order_flow b on t1.id=b.ORDER_ID and pay_method!='储值卡' and pay_method!='欠款'
         left join sys_shop_info t2 on t1.SHOP_ID=t2.ID
         where t1.VIP_ID=#{vipId} and STATU='已付款';
     </select>
@@ -538,6 +558,48 @@
         </if>
     </select>
 
+    <select id="selectPadApiOrderListInPage" resultType="com.matrix.system.padApi.vo.PadOrderDetailVo">
+        select
+        a.id orderId,
+        a.VIP_ID vipId,
+        a.ORDER_NO orderNo,
+        a.ORDER_TIME orderTime,
+        a.STATU orderStatus,
+        a.ZK_TOTAL needPay,
+        (a.card_Pay + a.cash_Pay) realPay,
+        a.arrears arrears,
+        b.su_name staffName,
+        c.VIP_NAME vipName,
+        c.PHONE phone
+        from sys_order a
+        left join sys_users b on a.STAFF_ID = b.su_id
+        left join sys_vip_info c on c.id = a.VIP_ID
+        <where>
+            <if test="record.queryKey != null and record.queryKey != ''">
+                and (instr(c.vip_name, #{record.queryKey}) or instr(c.phone, #{record.queryKey}) or instr(a.order_no, #{record.queryKey}))
+            </if>
+            <if test="record.status != null and record.status != ''">
+                and a.statu = #{record.status}
+            </if>
+            <if test="record.orderTime != null  ">
+                and a.ORDER_TIME = #{record.orderTime}
+            </if>
+            <if test="record.shopId != null">
+                and a.shop_id=#{record.shopId}
+            </if>
+            <if test="record.companyId != null">
+                and a.company_id=#{record.companyId}
+            </if>
+        </where>
+        <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 -->
+            order by a.order_time desc
+            <if test="pageVo.offset >=0  and pageVo.limit >0">
+                limit
+                #{pageVo.offset},#{pageVo.limit}
+            </if>
+        </if>
+    </select>
+
     <select id="selectApiOrderListTotal" resultType="java.lang.Integer">
         select
             count(1)
@@ -550,6 +612,31 @@
             </if>
             <if test="record.status != null and record.status != ''">
                 and a.statu = #{record.status}
+            </if>
+            <if test="record.shopId != null">
+                and a.shop_id=#{record.shopId}
+            </if>
+            <if test="record.companyId != null">
+                and a.company_id=#{record.companyId}
+            </if>
+        </where>
+    </select>
+
+    <select id="selectPadApiOrderListTotal" resultType="java.lang.Integer">
+        select
+        count(1)
+        from sys_order a
+        left join sys_users b on a.STAFF_ID = b.su_id
+        left join sys_vip_info c on c.id = a.VIP_ID
+        <where>
+            <if test="record.queryKey != null and record.queryKey != ''">
+                and (instr(c.vip_name, #{record.queryKey}) or instr(c.phone, #{record.queryKey}) or instr(a.order_no, #{record.queryKey}))
+            </if>
+            <if test="record.status != null and record.status != ''">
+                and a.statu = #{record.status}
+            </if>
+            <if test="record.orderTime != null  ">
+                and a.ORDER_TIME = #{record.orderTime}
             </if>
             <if test="record.shopId != null">
                 and a.shop_id=#{record.shopId}
@@ -578,6 +665,27 @@
         from sys_order a
         inner join sys_vip_info b on a.VIP_ID=b.ID
         left join sys_users c on a.STAFF_ID=c.su_id
+        where a.id=#{orderId}
+    </select>
+
+    <select id="selectPadApiOrderDetailById" resultType="com.matrix.system.padApi.vo.PadOrderDetailVo">
+        select
+            a.id orderId,
+            b.VIP_NAME vipName,
+            b.PHONE phone,
+            a.ORDER_NO orderNo,
+            c.su_name staffName,
+            a.cash_Pay cashPay,
+            a.card_Pay cardPay,
+            a.ZK_TOTAL needPay,
+            a.cash_Pay + a.card_Pay realPay,
+            a.arrears arrears,
+            a.TOTAL - a.ZK_TOTAL discount,
+            a.STATU orderStatus,
+            a.order_time orderTime
+        from sys_order a
+                 inner join sys_vip_info b on a.VIP_ID=b.ID
+                 left join sys_users c on a.STAFF_ID=c.su_id
         where a.id=#{orderId}
     </select>
 
@@ -690,4 +798,8 @@
     </select>
 
 
+    <select id="selectArrearsByVipId" resultType="java.math.BigDecimal">
+        select sum(arrears) from sys_order
+        where vip_id=#{vipId} and statu='欠款'
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1