hurixing 1 год назад
Родитель
Сommit
9da4fefb42

+ 5 - 1
hcp-app/src/main/java/com/yingyangfly/app/controller/LoginController.java

@@ -1,8 +1,10 @@
 package com.yingyangfly.app.controller;
 
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.yingyangfly.common.dto.ResultResponse;
 import com.yingyangfly.common.log.annotation.TraceLog;
 import com.yingyangfly.core.annotation.Log;
+import com.yingyangfly.core.domain.AppUser;
 import com.yingyangfly.core.dto.LoginDto;
 import com.yingyangfly.core.enums.OperatorType;
 import com.yingyangfly.core.service.impl.AppUserService;
@@ -15,6 +17,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.time.LocalDate;
+
 /**
  * 登录/退出
  * @author hpt
@@ -31,7 +35,7 @@ public class LoginController {
     @PostMapping("/login")
     @TraceLog
     public ResultResponse login(@RequestBody LoginDto dto){
-        return ResultResponse.success(appUserService.login(dto));
+        return appUserService.login(dto);
     }
 
     @TraceLog

+ 8 - 1
hcp-app/src/main/java/com/yingyangfly/app/controller/UploadFileController.java

@@ -2,7 +2,9 @@ package com.yingyangfly.app.controller;
 
 import com.yingyangfly.common.dto.ResultResponse;
 import com.yingyangfly.core.annotation.Log;
+import com.yingyangfly.core.domain.SysDictData;
 import com.yingyangfly.core.enums.OperatorType;
+import com.yingyangfly.core.service.impl.SysDictDataService;
 import com.yingyangfly.file.api.FileClient;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -11,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
@@ -30,6 +33,9 @@ public class UploadFileController {
     @Autowired
     private FileClient fileClient;
 
+    @Resource
+    private SysDictDataService dictDataService;
+
     // 允许上传的文件类型
     private static final List<String> ALLOWED_FILE_TYPES = Arrays.asList("png", "jpg", "jpeg", "doc", "xls", "ppt", "mp4", "pdf");
 
@@ -106,7 +112,8 @@ public class UploadFileController {
 
     @GetMapping("/hertz/audio")
     public ResultResponse getHertzAudioUrl(){
-        return ResultResponse.success("https://yaorongoss.yaorongmedical.com/dabeizhou_40hz.mp3");
+        List<SysDictData> sysDictDataList = dictDataService.selectByDictType("app_40hz_url","0");
+        return ResultResponse.success(sysDictDataList);
     }
 
 

+ 4 - 4
hcp-app/src/main/resources/application-dev.yml

@@ -84,11 +84,11 @@ live:
   time-expand: 1440
   key: ZySdM7afXBAhP6XGkpjT
   livekey: TENYsAdNFfFwYJ2XiMWW
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
 vod:
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
   subappid: 1300835310
 im:
   sdkappid: 1600012587

+ 4 - 4
hcp-app/src/main/resources/application-prod.yml

@@ -84,11 +84,11 @@ live:
   time-expand: 1440
   key: ZySdM7afXBAhP6XGkpjT
   livekey: TENYsAdNFfFwYJ2XiMWW
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
 vod:
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
   subappid: 1300835310
 im:
   sdkappid: 1400823270

+ 1 - 0
hcp-app/src/main/resources/application.yml

@@ -38,3 +38,4 @@ security:
       - /app/learn/package/get/list
       - /app/pay/white/list/createPreOrder
       - /app/getChangePasswordCode
+      - /app/reset/password

+ 26 - 11
hcp-core/src/main/java/com/yingyangfly/core/service/impl/AppUserService.java

@@ -152,13 +152,17 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
      * @return
      */
     @Transactional(rollbackFor = Exception.class)
-    public String login(LoginDto dto) {
-        AppCurrentLoginUser userDetails = (AppCurrentLoginUser) loadUserByUsername(dto.getLoginName());
-        if (ObjectUtils.isNull(userDetails.getOrderEndTime())){
-            throw new BadCredentialsException("请充值后在进行登录");
+    public ResultResponse login(LoginDto dto) {
+        String encrypt = Sm4Util.encrypt(dto.getLoginName());
+        AppUser appUser = selectByMobile(encrypt, "0");
+        if (appUser == null) {
+            throw new BadCredentialsException("用户不存在");
+        }
+        if (ObjectUtils.isNull(appUser.getOrderEndTime())){
+            return ResultResponse.success(false);
         }
-        if (LocalDate.parse(userDetails.getOrderEndTime()).isBefore(LocalDate.now())){
-            throw new BadCredentialsException("你的套餐已到期,请充值后登录!");
+        if (LocalDate.parse(appUser.getOrderEndTime()).isBefore(LocalDate.now())){
+            return ResultResponse.success(false);
         }
 
         String errorNumKey = "app:error:num:"+dto.getLoginName();
@@ -169,7 +173,7 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
             }
         }
         dto.setPassWord(CryptoUtil.decrypt(dto.getPassWord()));
-        if (!bCryptPasswordEncoder.matches(dto.getPassWord(), userDetails.getPassword())) {
+        if (!bCryptPasswordEncoder.matches(dto.getPassWord(), appUser.getPwd())) {
             Integer errorNum = 0;
             if (ObjectUtils.isNotNull(errorNumRedis)){
                 errorNum = Integer.parseInt(errorNumRedis);
@@ -178,6 +182,7 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
             redisClient.set(errorNumKey,String.valueOf(errorNum),600);
             throw new BadCredentialsException("密码不正确");
         }
+        AppCurrentLoginUser userDetails = (AppCurrentLoginUser) createAppLoginUser(appUser);
         String token = tokenUtil.generateToken(userDetails, dto.getRememberMe(),"app");
         String tokenRedis = redisClient.get(String.format("%s%s", "token:app:", dto.getLoginName()),"");
         if (StringUtils.isNotBlank(tokenRedis)){
@@ -194,7 +199,7 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
         loginRecord.setOrgCode(userDetails.getOrgCode());
         loginRecord.setOrgName(userDetails.getOrgName());
         loginRecordMapper.insert(loginRecord);
-        return token;
+        return ResultResponse.success(token);
     }
 
     /**
@@ -418,6 +423,9 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
                 return ResultResponse.fail("手机号已经存在");
             }
 
+            String pwd = "Wllt"+ "+" + appUser.getIdCard().substring(14, 18);
+            appUser.setPwd(bCryptPasswordEncoder.encode(pwd));
+
             appUserMapper.insert(appUser);
             //首次登陆欢迎语
             log.info("<<<<<<<<<<<<发送首次登陆欢迎语IM>>用户信息:{}>>>>>>>>>>",JSON.toJSONString(appUser));
@@ -540,7 +548,9 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
                 gameDto.setPlayClass("C");
                 gameDto.setGameLevel(gameUser.getCurrentLevel());
                 gameDto.setGameId(gameUser.getId());
-                gameDtos.add(gameDto);
+                if ("0".equals(gameUser.getIsShow())){
+                    gameDtos.add(gameDto);
+                }
             }
             return gameDtos;
         }else if("A".equals(playClass)){
@@ -746,8 +756,10 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
         }
         Random rand = new Random();
         int randomNumber = rand.nextInt(1000000);
-        String random = String.format("%06d", randomNumber);
-        Boolean isSuccess = SmgUtil.sendCheckCode(mobile, MsgTemplateEnums.GET_CHECK_CODE.getTempalteCode(), random);
+//        String random = String.format("%06d", randomNumber);
+//        Boolean isSuccess = SmgUtil.sendCheckCode(mobile, MsgTemplateEnums.CHANGE_PASSWORD_CODE.getTempalteCode(), random);
+        String random = "123456";
+        Boolean isSuccess = true;
         if (isSuccess) {
             // 防机器
             redisClient.set("hcp:sms:changePass:mobile:"+mobile,random,120);
@@ -1022,6 +1034,9 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
         appUser.setTestFlag("1");
         appUser.setCreateTime(new Date());
         appUser.setUpdateTime(new Date());
+
+        String pwd = "Wllt"+ "+" + appUser.getIdCard().substring(14, 18);
+        appUser.setPwd(bCryptPasswordEncoder.encode(pwd));
         //新增用户脑力值是0分
         appUser.setMentalEnergy(0);
         appUser.setCreateBy("微信公众号");

+ 15 - 2
hcp-core/src/main/java/com/yingyangfly/core/service/impl/GameUserServiceImpl.java

@@ -157,8 +157,14 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
 
     @Override
     public ResultResponse delUserGame(Long gameId,String playClass ) {
-        if(!"A".equals(playClass)){
+        if("B".equals(playClass)){
            gameUserMapper.deleteById(gameId);
+        }else if ("C".equals(playClass)) {
+            GameUser gameUser = new GameUser();
+            gameUser.setIsShow("1");
+            LambdaQueryWrapper<GameUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+            lambdaQueryWrapper.eq(GameUser::getId,gameId);
+            int update = gameUserMapper.update(gameUser, lambdaQueryWrapper);
         }else{
             GameTaskDetail  gameTaskDetail = gameTaskDetailMapper.selectById(gameId);
             if("0".equals(gameTaskDetail.getStatus())){
@@ -242,7 +248,14 @@ public class GameUserServiceImpl extends ServiceImpl<GameUserMapper, GameUser> i
             }
             //保存推荐记录
             gameRecommendRecordService.saveBatch(list,appUser.getOrgCode(), appUser.getOrgName(), playClass);
-        }else{
+        }else if ("C".equals(playClass)) {
+            GameUser gameUser = new GameUser();
+            gameUser.setIsShow("0");
+            LambdaQueryWrapper<GameUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+            lambdaQueryWrapper.in(GameUser::getGameCode,gameCodes.split(","));
+            lambdaQueryWrapper.eq(GameUser::getUserId,userId);
+            int update = gameUserMapper.update(gameUser, lambdaQueryWrapper);
+        } else{
             //查询该用户下所有的在途游戏
             QueryWrapper<GameUser> queryWrapperGameUser = new QueryWrapper<>();
             queryWrapperGameUser.eq("user_id",userId);

+ 4 - 4
hcp-platform/src/main/resources/application-dev.yml

@@ -83,11 +83,11 @@ live:
   time-expand: 1440
   key: ZySdM7afXBAhP6XGkpjT
   livekey: TENYsAdNFfFwYJ2XiMWW
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
 vod:
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
   subappid: 1300835310
 im:
   sdkappid: 1600012587

+ 4 - 4
hcp-platform/src/main/resources/application-prod.yml

@@ -83,11 +83,11 @@ live:
   time-expand: 1440
   key: ZySdM7afXBAhP6XGkpjT
   livekey: TENYsAdNFfFwYJ2XiMWW
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
 vod:
-  secretid: AKIDBLvFQWglgSGvU0QfibKsGbosmV1AIMCo
-  secretkey: XzeDeu03349B2iEWjy8xV4WxKYinhXCz
+  secretid: AKIDPo5KNCoCLFoJb1HMFvQirpfJj0nSvAA4
+  secretkey: 1whR4UimcDakfMo2gCW9bppaHm371kET
   subappid: 1300835310
 im:
   sdkappid: 1400823270

+ 29 - 0
hcp-platform/src/test/java/com/yingyangfly/core/recommend/RecommendFacadeTest.java

@@ -2,16 +2,21 @@ package com.yingyangfly.core.recommend;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.yingyangfly.HcpPlatPlatformApplication;
+import com.yingyangfly.core.domain.AppUser;
 import com.yingyangfly.core.domain.Game;
 import com.yingyangfly.core.domain.GameUser;
 import com.yingyangfly.core.service.GameService;
 import com.yingyangfly.core.service.GameUserService;
+import com.yingyangfly.core.service.impl.AppUserService;
+import com.yingyangfly.core.util.Sm4Util;
 import org.junit.jupiter.api.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.test.context.junit4.SpringRunner;
 
+import javax.annotation.Resource;
 import java.util.List;
 
 /**
@@ -40,6 +45,12 @@ class RecommendFacadeTest {
     @Autowired
     private GameUserService gameUserService;
 
+    @Resource
+    private AppUserService appUserService;
+
+    @Resource
+    private BCryptPasswordEncoder bCryptPasswordEncoder;
+
     @Test
     void test(){
         List<Game> list = gameService.list();
@@ -73,7 +84,25 @@ class RecommendFacadeTest {
             gameUser.setIsShow(game.getRecommendedCStatus());
             LambdaQueryWrapper<GameUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
             lambdaQueryWrapper.eq(GameUser::getGameCode,game.getGameCode());
+//            lambdaQueryWrapper.eq(GameUser::getUserId,"1912405252575047681");
             boolean update = gameUserService.update(gameUser, lambdaQueryWrapper);
         }
     }
+
+    @Test
+    void test3() {
+        List<AppUser> list = appUserService.list();
+        for (AppUser appUser : list) {
+            AppUser appUserUpdate = new AppUser();
+            appUserUpdate.setId(appUser.getId());
+            String idCard = Sm4Util.decrypt(appUser.getIdCard());
+            if (idCard.length() != 18) {
+                throw new IllegalArgumentException("无效的身份证号码");
+            }
+
+            String pwd = "Wllt"+ "+" + idCard.substring(14, 18);
+            appUserUpdate.setPwd(bCryptPasswordEncoder.encode(pwd));
+            appUserService.updateById(appUserUpdate);
+        }
+    }
 }