From 06dad2095dbe4c465025e5bc6e0220521636e2c2 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 15 十一月 2024 18:20:59 +0800 Subject: [PATCH] 代码提交 --- xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java | 64 ++++++++++++++++++++++++-------- 1 files changed, 48 insertions(+), 16 deletions(-) diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java index 1f52b20..a19e79e 100644 --- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java +++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java @@ -101,6 +101,12 @@ dto.getWxOpenId()) .ne(AppUser::getUserStatus, AppUserStatusEnum.LOGOUT.getCode()).oneOpt(); } + @Override + public Optional<AppUser> getUserByCondition1(AppUserDTO dto) { + return this.lambdaQuery() + .eq(AppUser::getCellPhone,dto.getCellPhone()) + .ne(AppUser::getUserStatus,3).oneOpt(); + } /** * app用户注册 @@ -303,6 +309,7 @@ appUser.setLevelSettingId(TreeLevelEnum.SEED.getCode()); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String format = simpleDateFormat.format(new Date()); + appLoginUser.setBindStatus(DisabledEnum.YES.getCode()); // 生成四位随机数字 String randomCode = String.valueOf((int) ((Math.random() * 9 + 1) * 1000)); appUser.setCode("YH" + format + randomCode); @@ -310,6 +317,42 @@ // 初始化用户树苗 initUserTree(appUser.getId()); } + }else{ + // 不存在账户,创建账户 + // 注册用户信息 + sysUser = new SysUser(); + String nickname = "用户" + IdUtil.fastSimpleUUID().substring(0, 6); + sysUser.setNickName(nickname); + sysUser.setAvatar("https://xqgwzh.obs.cn-south-1.myhuaweicloud.com/Logo%E7%A1%AE%E8%AE%A4%E7%89%88%281%29.jpg"); + sysUser.setUserName(nickname); + sysUser.setUserType("01"); // app用户 + R<SysUser> registerResult = remoteUserService.registerAppUserInfo(sysUser, + SecurityConstants.INNER); + if (registerResult.getCode() == Constants.FAIL) { + throw new ServiceException(registerResult.getMsg()); + } + SysUser sysUserRes = registerResult.getData(); + appUser = new AppUser(); + appUser.setAppleId(appleId); + appUser.setUserId(sysUserRes.getUserId()); + appUser.setNickname(nickname); + appUser.setAvatar("https://xqgwzh.obs.cn-south-1.myhuaweicloud.com/Logo%E7%A1%AE%E8%AE%A4%E7%89%88%281%29.jpg"); // TODO 待完善默认头像 + appUser.setBalance(BigDecimal.ZERO); + appUser.setSanskritFlag(DisabledEnum.NO.getCode()); + appUser.setBalance(BigDecimal.ZERO); + appUser.setIncome(BigDecimal.ZERO); + appUser.setTotalEnergyValue(0); + appUser.setRegisterTime(LocalDateTime.now()); + appUser.setLevelSettingId(TreeLevelEnum.SEED.getCode()); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + String format = simpleDateFormat.format(new Date()); + appLoginUser.setBindStatus(DisabledEnum.YES.getCode()); + // 生成四位随机数字 + String randomCode = String.valueOf((int) ((Math.random() * 9 + 1) * 1000)); + appUser.setCode("YH" + format + randomCode); + this.save(appUser); + // 初始化用户树苗 + initUserTree(appUser.getId()); } } appLoginUser.setUserid(sysUser.getUserId()); @@ -629,25 +672,14 @@ List<AppUserQuestion> appUserQuestionList = BeanUtils.copyList( dto.getUserAnswerOneDTOList(), AppUserQuestion.class); // 查询用户已填写的答案 - List<AppUserQuestion> baseAppUserQuestionList = appUserQuestionService.lambdaQuery() - .eq(AppUserQuestion::getAppUserId, appUser.getUserId()) - .list(); - if (CollUtils.isNotEmpty(baseAppUserQuestionList)) { - // 根据类型更新答案 - for (AppUserQuestion appUserQuestion : appUserQuestionList) { + // 删除之前答案 + appUserQuestionService.lambdaUpdate().eq(AppUserQuestion::getAppUserId,userId).remove(); - Optional<AppUserQuestion> baseAppUserQuestionOptional = baseAppUserQuestionList.stream() - .filter(baseAppUserQuestion -> baseAppUserQuestion.getType() - .equals(appUserQuestion.getType())).findFirst(); - baseAppUserQuestionOptional.ifPresent( - userQuestion -> appUserQuestion.setId(userQuestion.getId())); - appUserQuestion.setAppUserId(userId); - } - } + // 根据类型更新答案 for (AppUserQuestion appUserQuestion : appUserQuestionList) { - appUserQuestion.setAppUserId(userId); + appUserQuestion.setAppUserId(userId); } - appUserQuestionService.saveOrUpdateBatch(appUserQuestionList); + appUserQuestionService.saveBatch(appUserQuestionList); // 筛选答案为是和偶尔有的问题,为用户设置对应的标签 List<AppUserQuestion> appUserQuestionYesList = appUserQuestionList.stream() .filter(appUserQuestion -> appUserQuestion.getAnswer().equals("1") -- Gitblit v1.7.1