jk-GitHub-coder 4 yıl önce
ebeveyn
işleme
b7b351b983

+ 53 - 37
YijiaRestful/src/main/java/com/platform/yijia/service/impl/PayOrderServiceImpl.java

@@ -36,6 +36,12 @@ public class PayOrderServiceImpl implements PayOrderService {
     @Override
     @Transactional
     public String AddPayOrderInfo(PayOrderRequest payOrderRequest, PayOrder payOrder) {
+
+        //存放查询用户信息
+        AppUserInfo appUserInfo = new AppUserInfo();
+        //存放查询客户已存在信息
+        CustomerManage customerManage = new CustomerManage();
+
         //订单规则 时间+6位随机数
         Random random = new Random();
         String result="";
@@ -45,29 +51,7 @@ public class PayOrderServiceImpl implements PayOrderService {
         //System.out.println("随机生成6位数result :"+result);
         String ordNo=System.nanoTime()+result;
         payOrder.setOrderNo(ordNo);
-        String oilName = payOrderRequest.getOilName();
-        payOrder.setOilName(oilName);      //油品名称
-        //根据油品名称存储油品类型 1.柴油 2 汽油
-        switch (oilName){
-            case "92#":
-                payOrder.setOilType("2");
-                break;
-            case "95#":
-                payOrder.setOilType("2");
-                break;
-            case "97#":
-                payOrder.setOilType("2");
-                break;
-            case "0#":
-                payOrder.setOilType("1");
-                break;
-            case "-10#":
-                payOrder.setOilType("1");
-                break;
-            case "-20#":
-                payOrder.setOilType("1");
-                break;
-        }
+
         payOrder.setReceivableAmt(payOrderRequest.getReceivableAmt());  //应收金额
         payOrder.setDiscountAmt(payOrderRequest.getDiscountAmt());  //优惠金额
         payOrder.setDiscountCouponAmt(payOrderRequest.getDiscountCouponAmt());  //优惠劵金额
@@ -135,6 +119,30 @@ public class PayOrderServiceImpl implements PayOrderService {
                 payOrder.setOrderLiters(recKonOrderLiters(amt, oilPrice, 2));     //计算油价升数存放
             }
         }
+
+        String oilName = payOrderRequest.getOilName();
+        payOrder.setOilName(oilName);      //油品名称
+        //根据油品名称存储油品类型 1.柴油 2 汽油
+        switch (oilName){
+            case "92#":
+                payOrder.setOilType("2");
+                break;
+            case "95#":
+                payOrder.setOilType("2");
+                break;
+            case "97#":
+                payOrder.setOilType("2");
+                break;
+            case "0#":
+                payOrder.setOilType("1");
+                break;
+            case "-10#":
+                payOrder.setOilType("1");
+                break;
+            case "-20#":
+                payOrder.setOilType("1");
+                break;
+        }
         //数据落地
         payOrderMapper.insertSelective(payOrder);
         //根据订单号查询出订单
@@ -145,10 +153,8 @@ public class PayOrderServiceImpl implements PayOrderService {
         //返回订单号
         ordNo= payOrderList.get(0).getOrderNo();
 
-        //向客户表中插入数据
-//        AppUserInfo appUserInfo = new AppUserInfo();
-//        CustomerManage customerManage = new CustomerManage();
-//        appUserInfo.setUserType(payOrderRequest.getUserType());
+//        //向客户表中插入数据
+//        appUserInfo.setUserType(payOrderRequest.getUserType()); //用户类型
 //        if(payOrderRequest.getUserType().equals("1")){
 //            //1 是公众号
 //            appUserInfo.setBlogOpenid(payOrderRequest.getToken());
@@ -163,21 +169,31 @@ public class PayOrderServiceImpl implements PayOrderService {
 //        //判断该用户是否已存在
 //        customerManage.setStationId(payOrderRequest.getStationId());
 //        CustomerManage existCustomer = payOrderMapper.isExistCustomer(customerManage);
-//        if(existCustomer != null){
-//            //已存在更新
-//            customerManage.setCustomerName(userInfos.get(0).getBlogNickName());
-//            //Double oilLiters = Double.valueOf(payOrder.getOrderLiters() + customerManage.getCyLiters());
-//            customerManage.setCyLiters(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
+//        if(existCustomer != null){  //存在该用户时更新
+//            //判断是汽油还是柴油 用于存放在柴油 汽油 各升数 总额累积值
+//            if(payOrder.getOilType().equals("1")){
+//                BigDecimal sumCyAmt = customerManage.getCyAmt().add(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt())));
+//                customerManage.setCyAmt(sumCyAmt);
+//                BigDecimal sumCyLiters = customerManage.getCyLiters().add(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
+//                customerManage.setCyLiters(sumCyLiters);
+//            }else if(payOrder.getOilType().equals("2")) {
+//                BigDecimal sumQyAmt = customerManage.getQyAmt().add(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt())));
+//                customerManage.setQyAmt(sumQyAmt);
+//                BigDecimal sumQyLiters = customerManage.getQyLiters().add(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
+//                customerManage.setQyLiters(sumQyLiters);
+//            }
 //            payOrderMapper.updateCustomer(customerManage);
 //        }else{
-//
 //            //不存在时从客户信息表查询插入
-//
-//            //customerManage.setMemberId();
-//            //customerManage.setCustomerName(userInfos.get(0).getBlogNickName());
+//            if(payOrder.getOilType().equals("1")){
+//                customerManage.setCyAmt(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt())));
+//                customerManage.setCyLiters(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
+//            }else if(payOrder.getOilType().equals("2")) {
+//                customerManage.setQyAmt(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt())));
+//                customerManage.setQyLiters(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
+//            }
 //            payOrderMapper.insertCustomer(customerManage);
 //        }
-
         return ordNo;
     }
 

+ 19 - 14
YijiaRestful/src/main/resources/mapper/PayOrderMapper.xml

@@ -703,7 +703,7 @@
   <update id="updateCustomer" parameterType="com.platform.yijia.pojo.CustomerManage">
     UPDATE
         customer_manage
-    <set>
+    SET
         <if test="memberGrade !=null ">
           member_grade = #{memberGrade},
         </if>
@@ -720,26 +720,31 @@
           cy_liters = #{cyLiters},
         </if>
         <if test="qyLiters !=null ">
-          qy_liters = #{qyLiters}
+          qy_liters = #{qyLiters},
+        </if>
+        <if test="cyAmt !=null ">
+          cy_amt = #{cyAmt},
+        </if>
+        <if test="qyAmt !=null ">
+          qy_amt = #{qyAmt}
         </if>
-    </set>
     <where>
       <if test="blogOpenid !=null and blogOpenid !='' ">
-        blog_openid = #{blogOpenid}
+        blog_openid = #{blogOpenid} AND
       </if>
       <if test="minaOpenid !=null and minaOpenid !='' ">
-        AND mina_openid = #{minaOpenid}
+        mina_openid = #{minaOpenid} AND
       </if>
       <if test="stationId !=null and stationId !='' ">
-        AND station_id = #{stationId}
+        station_id = #{stationId}
       </if>
     </where>
   </update>
 
   <!-- 插入客户表 -->
   <insert id="insertCustomer" parameterType="com.platform.yijia.pojo.CustomerManage">
-    INSERT INTO
-        <trim prefix="values (" suffix=")" suffixOverrides=",">
+    INSERT INTO customer_manage
+        <trim prefix="(" suffix=")" suffixOverrides=",">
           <if test="memberId !=null ">
             member_id,
           </if>
@@ -791,7 +796,7 @@
             cy_liters,
           </if>
           <if test="qyLiters !=null ">
-            qy_liters
+            qy_liters,
           </if>
 
           <if test="cyAmt !=null ">
@@ -848,10 +853,10 @@
             #{regtime},
           </if>
           <if test="stationId !=null ">
-            #{stationId},
+            #{stationId, jdbcType=INTEGER},
           </if>
           <if test="stationName !=null ">
-            #{stationName},
+            #{stationName, jdbcType=VARCHAR},
           </if>
 
           <if test="cyGrade !=null ">
@@ -877,13 +882,13 @@
             #{blogOpenid},
           </if>
           <if test="minaOpenid !=null ">
-            #{minaOpenid},
+            #{minaOpenid, jdbcType=VARCHAR},
           </if>
           <if test="blogUserId !=null ">
-            #{blogUserId},
+            #{blogUserId, jdbcType=INTEGER},
           </if>
           <if test="minaUserId !=null ">
-            #{minaUserId}
+            #{minaUserId, jdbcType=INTEGER}
           </if>
         </trim>
   </insert>