jk-GitHub-coder 3 년 전
부모
커밋
b482c5112e

+ 22 - 27
YijiaRestful/src/main/java/com/platform/yijia/controller/AppUserInfoController.java

@@ -653,34 +653,15 @@ public class AppUserInfoController {
                 customerPoints.setStationName(stationInfos.getStationName());
                 customerElectronicCard.setStationName(stationInfos.getStationName());
             }
-
-            //
-            //Integer excelId = null;
-
             //是否开起积分功能
             if(stationInfos.getIntegralRuleFlagGroup().equals("1")){
                 customerPoints.setStationId(stationInfos.getGroupId());
                 if(stationInfos.getIntegralFlagGroup().equals("1")){
-//                    //积分导入
-//                    CardExcelImport cardExcelImport = this.selectCardExcelImportInfo(request.getMobilePhone(), customerPoints.getStationId());
-//                    if(cardExcelImport !=null && cardExcelImport.getIntegral() !=null){
-//                        excelId = cardExcelImport.getExcelId();
-//                        BigDecimal newPoints = new BigDecimal(customerPoints.getPoints().toString()).add(new BigDecimal(cardExcelImport.getIntegral().toString()));
-//                        customerPoints.setPoints(newPoints.intValue());
-//                    }
                     this.insertCustomerPointsInfo(customerPoints, request, stationInfos);
                 }
             }else {
                 if(stationInfos.getIntegralFlag().equals("1")){
                     customerPoints.setStationId(request.getStationId());
-//                    //积分导入
-//                    CardExcelImport cardExcelImport = this.selectCardExcelImportInfo(request.getMobilePhone(), customerPoints.getStationId());
-//                    if(cardExcelImport !=null && cardExcelImport.getIntegral() !=null){
-//                        excelId = cardExcelImport.getExcelId();
-//                        BigDecimal newPoints = new BigDecimal(customerPoints.getPoints().toString()).add(new BigDecimal(cardExcelImport.getIntegral().toString()));
-//                        customerPoints.setPoints(newPoints.intValue());
-//                    }
-
                     this.insertCustomerPointsInfo(customerPoints, request, stationInfos);
                 }
 
@@ -697,6 +678,9 @@ public class AppUserInfoController {
                     this.insertCustomerElectronicCard(customerElectronicCard, request, stationInfos);
                 }
             }
+            //数据迁移
+            this.selectCardExcelImportInfo(request, stationInfos);
+
             resultData = ResultData.success(CodeMsg.SUCCESS);
         }catch (Exception e){
             resultData = ResultData.error(CodeMsg.INSERT_FAIL);
@@ -751,7 +735,9 @@ public class AppUserInfoController {
     }
 
     /*
+     * ********************************************************************************************************************** ******
      * 数据迁移功能:业务逻辑: SAAS系统导入Excel表格数据到临时表,用户登录小程序时根据手机号和站点Id 找寻数据插入到客户电子卡表,积分表,成功后删除此条信息
+     * ********************************************************************************************************************** ******
      */
     public void selectCardExcelImportInfo(AppUserInfoRequest request, StationInfo stationInfos){
 
@@ -759,12 +745,7 @@ public class AppUserInfoController {
         if(StringUtils.isNotBlank(request.getMobilePhone())){
             String mobilePhone = request.getMobilePhone();
             //站点Id
-            Integer stationId = stationInfos.getStationId();
-            if(StringUtils.isNotBlank(stationInfos.getCardRuleFlagGroup()) && stationInfos.getCardRuleFlagGroup().equals("1")){
-                if(StringUtils.isNotBlank(stationInfos.getCardEnabledFlagGroup()) &&stationInfos.getCouponEnabledFlag().equals("1")){
-                    stationId = stationInfos.getGroupId();
-                }
-            }
+            Integer stationId = request.getStationId();
             AppUserInfo a = new AppUserInfo();
             a.setMobilePhone(mobilePhone);
             //app_user_info 存储的为集团Id
@@ -774,7 +755,7 @@ public class AppUserInfoController {
             List<AppUserInfo> userInfoList = appUserInfoService.getUserInfo(a);
             if(StringUtils.isNotBlank(userInfoList.get(0).getUnionId())){
                 String unionId = userInfoList.get(0).getUnionId();
-                logger.info("当前要导入用户的手机号和站点所对应的unionId:" +unionId);
+                logger.info("当前要导入用户的手机号和站点所对应的unionId:" +mobilePhone +" ; "+unionId);
 
                 //******* 1、根据油站Id和用户手机号查询该用户已有的信息;  *******/
                 CardExcelImport cei = new CardExcelImport();
@@ -784,7 +765,7 @@ public class AppUserInfoController {
                 logger.info("当前用户是否有导入信息:" + cardExcelImportList.toString());
                 if(cardExcelImportList !=null && cardExcelImportList.size() >0){
 
-                    //***** 2、更新电子卡余额, 积分 标签到SAAS系统电子卡积分等信息;*/
+                    //***** 2、更新电子卡余额, 积分 标签到SAAS系统电子卡积分等信息;*****/
                     String phoneNumber = cardExcelImportList.get(0).getPhoneNumber();
                     Integer excelStaId = cardExcelImportList.get(0).getStationId();
                     if(StringUtils.isNotBlank(phoneNumber) && excelStaId !=null){
@@ -797,6 +778,12 @@ public class AppUserInfoController {
                             String cardType = cardExcelImportList.get(0).getCardType();
                             CustomerElectronicCard c = new CustomerElectronicCard();
                             c.setStationId(stationId);
+                            if(StringUtils.isNotBlank(stationInfos.getCardRuleFlagGroup()) && stationInfos.getCardRuleFlagGroup().equals("1")){
+                                if(StringUtils.isNotBlank(stationInfos.getCardEnabledFlagGroup()) &&stationInfos.getCouponEnabledFlag().equals("1")){
+                                    stationId = stationInfos.getGroupId();
+                                    c.setStationId(stationId);
+                                }
+                            }
                             c.setMobilePhone(phoneNumber);
                             c.setCardOilsType(cardType);
                             CustomerElectronicCard electronicCardInfo = electronicMembershipCardService.getElectronicCardInfo(c);
@@ -815,6 +802,12 @@ public class AppUserInfoController {
                         if(!"0".equals(integral)){
                             CustomerPoints cusp = new CustomerPoints();
                             cusp.setStationId(stationId);
+                            if(StringUtils.isNotBlank(stationInfos.getIntegralRuleFlagGroup()) && stationInfos.getIntegralRuleFlagGroup().equals("1")){
+                                if(StringUtils.isNotBlank(stationInfos.getIntegralFlagGroup()) &&stationInfos.getIntegralFlagGroup().equals("1")){
+                                    stationId = stationInfos.getGroupId();
+                                    cusp.setStationId(stationId);
+                                }
+                            }
                             cusp.setUnionId(unionId);
                             CustomerPoints customerPointsInfo = customerPointsService.getCustomerPointsInfo(cusp);
                             if(customerPointsInfo !=null){
@@ -848,6 +841,8 @@ public class AppUserInfoController {
                     }
                     //******* 3、删除该条用户信息 ********/
                     CardExcelImport cardExcelImport = cardExcelImportList.get(0);
+                    cardExcelImport.setImportFlag("1");
+                    cardExcelImport.setImportDate(new Date());
                     cardExcelImportService.deleteCardExcelImportByExcelId(cardExcelImport);
                 }
             }

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

@@ -970,7 +970,7 @@ public class PayController {
                                 StationBalanceChange stationBalanceChange = new StationBalanceChange();
                                 stationBalanceChange.setStationId(stationInfos.getStationId());
                                 stationBalanceChange.setAmt(Double.valueOf(infoMap.get("sellAmt").toString()));
-                                stationBalanceChange.setCreateTime(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(infoMap.get("payDate").toString()));
+                                stationBalanceChange.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(infoMap.get("payDate").toString()));
                                 stationBalanceChange.setType("-");
                                 stationBalanceChange.setOrderNo(ordNo);
                                 //生成记录

+ 3 - 0
YijiaRestful/src/main/java/com/platform/yijia/pojo/CardExcelImport.java

@@ -3,6 +3,7 @@ package com.platform.yijia.pojo;
 import lombok.Data;
 
 import java.math.BigDecimal;
+import java.util.Date;
 
 /***
  * 数据迁移实体类
@@ -18,4 +19,6 @@ public class CardExcelImport {
     private Integer stationId;      // '油站id信息',
     private Integer labelId;        // '标签id',
     private String couponIssueId;   // '发放方式的id',
+    private String importFlag;      // '导入标志'
+    private Date importDate;        //导入更新时间
 }

+ 2 - 2
YijiaRestful/src/main/resources/application.yml

@@ -19,7 +19,7 @@ yijia:
     domainName: mp.huijy.net
     # 路径前缀 test:测试; api:生产一线;prod:生产二线; demo:演示;
     path:
-        global-prefix: demo
+        global-prefix: test
 
 
 # POS机登录解密密文密码
@@ -44,7 +44,7 @@ swagger2:
 spring:
     datasource:
 #        url: jdbc:mysql://47.105.116.204:3306/jiaduoduo_db_prod?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
-        url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_demo?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
+        url: jdbc:mysql://115.28.211.17:3306/jiaduoduo_db_test?useUnicode=true&characterEncoding=utf8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8&useSSL=true
         username: develop
         password: 1234.Abcd
         driver-class-name: com.mysql.cj.jdbc.Driver

+ 1 - 1
YijiaRestful/src/main/resources/mapper/AppUserInfoMapper.xml

@@ -463,7 +463,7 @@
         user_type = #{userType}
       </if>
       <if test="stationId !=null and stationId !=''">
-        station_id = #{stationId}
+        AND station_id = #{stationId}
       </if>
       <if test="blogOpenid !=null and blogOpenid !=''">
         AND blog_openid = #{blogOpenid}

+ 15 - 2
YijiaRestful/src/main/resources/mapper/CardExcelImportMapper.xml

@@ -12,6 +12,8 @@
       <result column="member_grade"         jdbcType="VARCHAR"  property="memberGrad" />
       <result column="label_id"             jdbcType="INTEGER"  property="labelId" />
       <result column="coupon_issue_id"      jdbcType="VARCHAR"  property="couponIssueId" />
+      <result column="import_flag"          jdbcType="VARCHAR"  property="importFlag" />
+      <result column="import_date"          jdbcType="TIMESTAMP"  property="importDate" />
   </resultMap>
 
 
@@ -30,8 +32,9 @@
     FROM
       card_excel_import
     <where>
+            import_flag = "0"
           <if test="stationId !=null and stationId !=''">
-             station_id = #{stationId}
+             AND station_id = #{stationId}
           </if>
           <if test="phoneNumber !=null and phoneNumber !=''">
             AND phone_number = #{phoneNumber}
@@ -41,7 +44,17 @@
 
     <!-- 删除该条用户信息 -->
     <delete id="deleteCardExcelImportByExcelId" parameterType="com.platform.yijia.pojo.CardExcelImport">
-        DELETE FROM  card_excel_import WHERE excel_id = #{excelId}
+        UPDATE
+            card_excel_import
+        <set>
+            <if test="importFlag !=null">
+                import_flag=#{importFlag},
+            </if>
+            <if test="importDate !=null">
+                import_date=#{importDate},
+            </if>
+        </set>
+        WHERE excel_id = #{excelId}
     </delete>
 
 </mapper>

+ 10 - 4
YijiaRestful/src/test/java/com/palatform/yijia/test.java

@@ -17,11 +17,17 @@ public class test {
 
     public static void main(String[] args) throws ParseException {
 
-        String yyyyMMddhhmmss = new SimpleDateFormat("yyyyMMddhhmmss").format(new Date());
-        System.out.println(yyyyMMddhhmmss);
+        Date parse = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2021-09-27 00:05:25");
+        System.out.println(parse);
 
-        BigDecimal subtract = new BigDecimal("0").subtract(new BigDecimal("2"));
-        System.out.println(subtract);
+        Date parse1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse("2021-09-27 00:05:25");
+        System.out.println(parse1);
+
+//        String yyyyMMddhhmmss = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
+//        System.out.println(yyyyMMddhhmmss);
+//
+//        BigDecimal subtract = new BigDecimal("0").subtract(new BigDecimal("2"));
+//        System.out.println(subtract);
 
 
 //        BigDecimal discountPrice = new BigDecimal("5.52");