From 73b750200f25df08aa64124da49e7461f9de6653 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 13 十二月 2024 15:09:49 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/NTTravel

---
 UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java |   87 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 78 insertions(+), 9 deletions(-)

diff --git a/UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java b/UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
index 4ab0aa2..716ec92 100644
--- a/UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
+++ b/UserNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -223,7 +223,7 @@
             userInfo.setConsumption(0D);
             userInfo.setBalance(0D);
             userInfo.setState(1);
-            userInfo.setAvatar("http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/img/a9fb2816e36644b292515ffdd6ebb411.jpg");
+            userInfo.setAvatar("http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/img/ad02d59ae74342359270f62a024fa9c6.png");
 
             //用户所属企业
             if(null != registAreaCode){
@@ -269,6 +269,69 @@
         return ResultUtil.success(loginWarpper);
     }
 
+
+    @Override
+    public ResultUtil<LoginWarpper> captchaLogin1(String phone) throws Exception {
+        Integer frequency = loginFailures.get(phone);
+        Long time = loginTime.get(phone);
+        if(null != time && System.currentTimeMillis() < (time + 300000) && null != frequency && frequency >= 5){
+            return ResultUtil.error("暂时无法登录,请5分钟后重试!");
+        }
+        if(null != time && System.currentTimeMillis() >= (time + 300000)){
+            frequency = 0;
+            loginFailures.put(phone, frequency);
+        }
+
+        UserInfo userInfo = userInfoMapper.queryByPhone(phone);
+        if(null == userInfo){
+            userInfo = new UserInfo();
+            userInfo.setPhone(phone);
+            userInfo.setPassWord(ShiroKit.md5("", salt));
+            userInfo.setNickName(this.getDefaultName());
+            userInfo.setIsAuth(1);
+            userInfo.setConsumption(0D);
+            userInfo.setBalance(0D);
+            userInfo.setState(1);
+            userInfo.setAvatar("http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/img/ad02d59ae74342359270f62a024fa9c6.png");
+
+
+            this.insert(userInfo);
+
+            addnewCoupoun(phone,userInfo);
+
+
+            this.addCoupon(userInfo);//添加优惠券
+
+            UserInfo finalUserInfo = userInfo;
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    if(pushMinistryOfTransport){
+                        //上传数据
+                        pushMinistryOfTransportUtil.baseInfoPassenger(finalUserInfo.getId());
+                    }
+                }
+            }).start();
+
+        }
+        if(userInfo.getState() == 2){
+            return ResultUtil.error("账号被冻结");
+        }
+
+        //调用单点登录的逻辑
+        this.singlePointLogin(userInfo.getId(),"Applets");
+
+        String token = this.getToken(userInfo, "","Applets");
+        LoginWarpper loginWarpper = new LoginWarpper();
+        loginWarpper.setId(userInfo.getId());
+        loginWarpper.setToken(token);
+        loginWarpper.setAppid(UUIDUtil.getRandomCode());
+        loginWarpper.setEmergencyContact(userInfo.getEmergencyContact());
+        loginWarpper.setEmergencyContactNumber(userInfo.getEmergencyContactNumber());
+
+        return ResultUtil.success(loginWarpper);
+    }
+
     @Autowired
     private ITActivityGeneralizationService activityGeneralizationService;
 
@@ -280,34 +343,40 @@
         if (redisUtil.getValue("counpon:" + phone)==null){
             return;
         }
-        Integer acId = Integer.valueOf(redisUtil.getValue("counpon:" + phone));
+        String acIds = redisUtil.getValue("counpon:" + phone);
+
+        String[] split = acIds.split(",");
+        for (String acId : split) {
 
         TActivityGeneralization tActivityGeneralization = activityGeneralizationService.selectById(acId);
+        if (tActivityGeneralization==null){
+            continue;
+        }
         SysCouponRecord sysCouponRecord = sysCouponRecordService.selectById(tActivityGeneralization.getCouponId());
         Date date = new Date();
         UserCouponRecord userCouponRecord = new UserCouponRecord();
         userCouponRecord.setActivityType(5);
-        userCouponRecord.setCouponActivityId(acId);
+        userCouponRecord.setCouponActivityId(Integer.valueOf(acId));
         userCouponRecord.setCouponId(tActivityGeneralization.getCouponId());
         userCouponRecord.setState(1);
         Calendar calendar = Calendar.getInstance();
         calendar.setTime(date);
-        calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) + sysCouponRecord.getEffective());
+        calendar.set(Calendar.DAY_OF_MONTH, calendar.get(Calendar.DAY_OF_MONTH) + tActivityGeneralization.getEffective());
         userCouponRecord.setExpirationTime(calendar.getTime());
         userCouponRecord.setCouponType(Integer.valueOf(String.valueOf(sysCouponRecord.getCouponType())));
         userCouponRecord.setCouponUseType(sysCouponRecord.getCouponUseType());
         userCouponRecord.setInsertTime(date);
         userCouponRecord.setFullMoney(Double.valueOf(String.valueOf(sysCouponRecord.getFullMoney()==null?0:sysCouponRecord.getFullMoney())));
         userCouponRecord.setMoney(Double.valueOf(String.valueOf(sysCouponRecord.getMoney())));
-        userCouponRecord.setCompanyId(userInfo.getCompanyId());
+        userCouponRecord.setCompanyId(sysCouponRecord.getCompanyId());
         userCouponRecord.setUserId(userInfo.getId());
-
         Integer userGrantCount = tActivityGeneralization.getUserGrantCount();
 //            userCouponRecordService.insert(userCouponRecord);
         if (userGrantCount != null && userGrantCount > 0) {
             for (int i = 0; i < userGrantCount; i++) {// ...
                 userCouponRecordService.insert(userCouponRecord);
             }
+        }
         }
 
     }
@@ -341,7 +410,7 @@
             userInfo.setConsumption(0D);
             userInfo.setBalance(0D);
             userInfo.setState(1);
-            userInfo.setAvatar("http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/img/a9fb2816e36644b292515ffdd6ebb411.jpg");
+            userInfo.setAvatar("http://bao-weiqing.oss-cn-hangzhou.aliyuncs.com/img/ad02d59ae74342359270f62a024fa9c6.png");
 
             //用户所属企业
             if(null != registAreaCode){
@@ -1211,7 +1280,7 @@
      */
     public String getDefaultName(){
         int num = this.selectCount(new EntityWrapper<UserInfo>().ne("flag", 3)) + 1000001;
-        return "WL" + String.valueOf(num).substring(1);
+        return "HQ" + String.valueOf(num).substring(1);
     }
 
 
@@ -1266,7 +1335,7 @@
                     userCouponRecord.setUserId(userInfo.getId());
                     userCouponRecord.setCompanyId(Integer.valueOf(String.valueOf(map.get("companyId"))));
                     userCouponRecord.setMoney(Double.valueOf(String.valueOf(map.get("money"))));
-                    userCouponRecord.setFullMoney(Double.valueOf(String.valueOf(map.get("fullMoney"))));
+                    userCouponRecord.setFullMoney(Double.valueOf(String.valueOf(map.get("fullMoney")==null?"0":map.get("fullMoney"))));
                     userCouponRecord.setInsertTime(new Date());
                     userCouponRecord.setState(1);
                     userCouponRecord.setCouponUseType(Integer.valueOf(String.valueOf(map.get("couponUseType"))));

--
Gitblit v1.7.1