JK 4 vuotta sitten
vanhempi
commit
92e48c6685

+ 22 - 1
YijiaRestful/src/main/java/com/platform/yijia/controller/ElectronicMembershipCardController.java

@@ -289,6 +289,7 @@ public class ElectronicMembershipCardController {
                 String receivableAmt = resultMap.get("receivableAmt").toString();
                 String amt = resultMap.get("amt").toString();
                 String orderType = resultMap.get("orderType").toString();
+                String groupId = resultMap.get("groupId").toString();
 
                 CustomerCardUseRecord customerCardUseRecord = new CustomerCardUseRecord();  //电子会员卡插入消费记录
                 BigDecimal balance = null;                                                  //电子会员卡余额
@@ -352,7 +353,7 @@ public class ElectronicMembershipCardController {
                     payOrderService.getUpdatePayOrder(payOrder);
                     resultMap.put("payType","dzk");
                     //插入集团客户信息
-                    insertCustomerGroup(resultMap);
+                    //insertCustomerGroup(resultMap);
                     //更新客户表
                     CustomerManage customerManage = new CustomerManage();
                     customerManage.setStationId(Integer.valueOf(stationId));
@@ -366,7 +367,13 @@ public class ElectronicMembershipCardController {
                     String discountPlanType = stationService.getStationDiscountWay(stationId);
                     logger.info("油站优惠方式:"+discountPlanType);
                     CustomerManage customerManageInfo = customerManagerService.getCustomerManageInfo(customerManage);
+                    customerManage.setGroupId(Integer.valueOf(groupId));
                     if(customerManageInfo !=null){
+                        //此处用于更新没有会员ID的用户
+                        if(!StringUtils.isNotBlank(customerManageInfo.getMemberId())){
+                            this.updateCustomerManagerMemberId(resultMap);
+                        }
+                        customerManage.setGroupId(Integer.valueOf(groupId));
                         customerManage.setPhoneNumber(mobilePhone);
                         customerManage.setAmt(customerManageInfo.getAmt().add(new BigDecimal(amt)));
                         customerManage.setLiters(customerManageInfo.getLiters().add(new BigDecimal(oilLiters)));
@@ -401,6 +408,9 @@ public class ElectronicMembershipCardController {
                             }
                             logger.info("直降等级信息是否存入客户表:"+ "直降ID:"+ customerManage.getMemberGrade()+ "直降名称: "+customerManage.getGrade());
                         }
+                        //客户会员号
+                        String memberId=groupId+stationId+System.nanoTime();
+                        customerManage.setMemberId(memberId);
                         customerManagerService.insertCustomerInfo(customerManage);
                     }
 
@@ -469,6 +479,17 @@ public class ElectronicMembershipCardController {
         }
     }
 
+    //更新客户ID
+    public void updateCustomerManagerMemberId(Map infoMap){
+        CustomerManage customerManage  = new CustomerManage();
+        String customerId=infoMap.get("groupId").toString()+infoMap.get("stationId").toString()+System.nanoTime();
+        customerManage.setMemberId(customerId);
+        customerManage.setUnionId(infoMap.get("unionId").toString());
+        customerManage.setStationId(Integer.valueOf(infoMap.get("groupId").toString()));
+        customerManagerService.updateCustomerInfo(customerManage);
+
+    }
+
     //插入集团客户信息
     public CustomerGroup insertCustomerGroup(Map infoMap){
         CustomerGroup customerGroup = new CustomerGroup();

+ 20 - 0
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -602,6 +602,17 @@ public class PayController {
         }
     }
 
+    //更新客户ID
+    public void updateCustomerManagerMemberId(Map infoMap){
+        CustomerManage customerManage  = new CustomerManage();
+        String customerId=infoMap.get("groupId").toString()+infoMap.get("stationId").toString()+System.nanoTime();
+        customerManage.setMemberId(customerId);
+        customerManage.setUnionId(infoMap.get("unionId").toString());
+        customerManage.setStationId(Integer.valueOf(infoMap.get("groupId").toString()));
+        customerManagerService.updateCustomerInfo(customerManage);
+
+    }
+
     //插入集团客户信息
     public CustomerGroup insertCustomerGroup(Map infoMap){
         CustomerGroup customerGroup = new CustomerGroup();
@@ -691,6 +702,12 @@ public class PayController {
             }else {
                 customerManage.setAmt(BigDecimal.valueOf((Double) infoMap.get("amt")));
             }
+
+            //此处用于更新没有会员ID的用户
+            if(!StringUtils.isNotBlank(existCustomer.getMemberId())){
+                this.updateCustomerManagerMemberId(infoMap);
+            }
+
             if(infoMap.containsKey("orderType") && infoMap.get("orderType").equals("1")) {
                 if (existCustomer.getLiters() != null) {
                     customerManage.setLiters(existCustomer.getLiters().add(BigDecimal.valueOf((Double) infoMap.get("orderLiters"))));//存入升数 累加原来升数
@@ -731,6 +748,9 @@ public class PayController {
                 customerManage.setLiters(BigDecimal.valueOf((Double) infoMap.get("orderLiters")));    //存入升数
             }
             logger.info("不存在客户 新增时参数: " + customerManage.toString());
+            //客户会员号
+            String memberId=infoMap.get("groupId").toString()+infoMap.get("stationId").toString()+System.nanoTime();
+            customerManage.setMemberId(memberId);
             customerManagerService.insertCustomerInfo(customerManage);
             //payOrderService.insertCustomer(customerManage);//不存在 新增
         }

+ 21 - 0
YijiaRestful/src/main/resources/mapper/CustomerManagerMapper.xml

@@ -55,6 +55,24 @@
         liters, amt, union_id, group_id
     </sql>
 
+    <!--获取客户信息-->
+<!--    <select id="selectCustomerMannagerInfo" parameterType="com.platform.yijia.pojo.CustomerManage" resultMap="BaseResultMap">-->
+<!--        SELECT-->
+<!--            <include refid="Base_Column_List"/>-->
+<!--        FROM-->
+<!--            customer_manage-->
+<!--        <where>-->
+<!--            <if test="stationId !=null">-->
+<!--                station_id = #{stationId}-->
+<!--            </if>-->
+<!--            <if test="unionId !=null">-->
+<!--                AND union_id = #{unionId}-->
+<!--            </if>-->
+<!--        </where>-->
+
+<!--    </select>-->
+
+
     <!--查询集团下客户信息-->
     <select id="selectCustomerGroup" parameterType="com.platform.yijia.pojo.CustomerGroup" resultMap="customerGroupBaseResultMap">
         SELECT
@@ -136,6 +154,9 @@
         UPDATE
         customer_manage
         <set>
+            <if test="memberId !=null ">
+                member_id = #{memberId},
+            </if>
             <if test="memberGrade !=null ">
                 member_grade = #{memberGrade},
             </if>