From 1d03a9e224dc0ce11d47bede74da9db2189d663c Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 21 Jul 2021 11:21:09 +0800 Subject: [PATCH] 202107021 --- gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java | 85 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 76 insertions(+), 9 deletions(-) diff --git a/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java b/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java index 34fe401..2637795 100644 --- a/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java +++ b/gc-user/src/main/java/com/xzx/gc/user/service/JhyInfoService.java @@ -3,17 +3,20 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xzx.gc.common.exception.RestException; -import com.xzx.gc.entity.AccountInfo; -import com.xzx.gc.entity.JhyInfo; -import com.xzx.gc.entity.ScoreDetails; +import com.xzx.gc.common.utils.StringUtils; +import com.xzx.gc.entity.*; import com.xzx.gc.user.dto.*; import com.xzx.gc.user.mapper.AccountMapper; import com.xzx.gc.user.mapper.JhyInfoMapper; +import com.xzx.gc.user.mapper.UserLoginInfoMapper; +import com.xzx.gc.user.mapper.UserMapper; import com.xzx.gc.user.vo.GetScoreNumVo; import com.xzx.gc.user.vo.JhyInfoListVo; +import com.xzx.gc.user.vo.ViewJhyInfoVo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -33,6 +36,12 @@ @Autowired private JhyInfoMapper jhyInfoMapper; + + @Autowired + private UserMapper userMapper; + + @Autowired + private UserLoginInfoMapper userLoginInfoMapper; @Autowired private AccountMapper accountMapper; @@ -87,6 +96,25 @@ public Map<String, Object> queryList(JhyInfoListDto jhyInfoListDto) { PageHelper.startPage(jhyInfoListDto.getPage(), jhyInfoListDto.getLimit()); List<JhyInfoListVo> jhyInfoListVos = jhyInfoMapper.selectJhyInfoList(jhyInfoListDto); + if(CollUtil.isNotEmpty(jhyInfoListVos)){ + for(JhyInfoListVo jhyInfoListVo : jhyInfoListVos){ + String userId = jhyInfoListVo.getUserId(); + if(StrUtil.isNotEmpty(userId)){ + AccountInfo accountInfo = accountMapper.selectOneByUserId(userId); + String collectScore = StrUtil.isEmpty(accountInfo.getCollectScore()) ? "0" : accountInfo.getCollectScore(); + jhyInfoListVo.setScore(new BigDecimal(collectScore).setScale( 2, BigDecimal.ROUND_DOWN )); + + Example example = new Example(UserLoginInfo.class); + Example.Criteria criteria = example.createCriteria(); + criteria.andEqualTo("userId", userId); + example.setOrderByClause("login_time desc"); + List<UserLoginInfo> userLoginInfos = userLoginInfoMapper.selectByExample(example); + if (CollUtil.isNotEmpty(userLoginInfos)) { + jhyInfoListVo.setLastLogintime(CollUtil.getFirst(userLoginInfos).getLoginTime()); + } + } + } + } PageInfo<JhyInfoListVo> pageInfo = new PageInfo<>(jhyInfoListVos); Map<String, Object> data = new HashMap<>(); @@ -118,7 +146,7 @@ List<AccountInfo> accountInfos = accountMapper.selectByExample(exampleAccount); if(CollUtil.isNotEmpty(accountInfos)){ AccountInfo accountInfo = accountInfos.get(0); - Integer collectScore = Integer.parseInt(accountInfo.getCollectScore()); + String collectScore = StrUtil.isEmpty(accountInfo.getCollectScore())?"0":accountInfo.getCollectScore(); // collectScore = collectScore + model.getScore(); accountInfo.setCollectScore(model.getScore().toString()); accountMapper.updateByPrimaryKey(accountInfo); @@ -126,9 +154,9 @@ ScoreDetails scoreDetailsRet = new ScoreDetails(); scoreDetailsRet.setUserId(model.getUserId()); scoreDetailsRet.setType(ScoreDetails.SCORE_TYPE_ADMIN_RECHARGE); - scoreDetailsRet.setOriginalScore(new BigDecimal(collectScore)); - scoreDetailsRet.setCurrentScore(new BigDecimal(model.getScore())); - scoreDetailsRet.setChangeScore(new BigDecimal(model.getScore())); + scoreDetailsRet.setOriginalScore(new BigDecimal(collectScore).setScale( 0, BigDecimal.ROUND_DOWN )); + scoreDetailsRet.setCurrentScore(new BigDecimal(model.getScore()).setScale( 0, BigDecimal.ROUND_DOWN )); + scoreDetailsRet.setChangeScore(new BigDecimal(model.getScore()).setScale( 0, BigDecimal.ROUND_DOWN )); scoreDetailsRet.setCreatedTime(new Date()); accountMapper.insertScoreDetailsRet(scoreDetailsRet); } @@ -142,9 +170,48 @@ List<AccountInfo> accountInfos = accountMapper.selectByExample(exampleAccount); if(CollUtil.isNotEmpty(accountInfos)){ AccountInfo accountInfo = accountInfos.get(0); - Integer collectScore = Integer.parseInt(accountInfo.getCollectScore()); - getScoreNumVo.setScore(new BigDecimal(collectScore)); + getScoreNumVo.setScore(new BigDecimal(StrUtil.isEmpty(accountInfo.getCollectScore())?"0":accountInfo.getCollectScore()).setScale( 0, BigDecimal.ROUND_DOWN )); } return getScoreNumVo; } + + public ViewJhyInfoVo viewJhyInfo(Long id) { + JhyInfo jhyInfo = jhyInfoMapper.selectByPrimaryKey(id); + ViewJhyInfoVo viewJhyInfoVo = new ViewJhyInfoVo(); + viewJhyInfoVo.setIsJhy(jhyInfo.getIsJhy()); + viewJhyInfoVo.setUsername(jhyInfo.getUsername()); + viewJhyInfoVo.setMobile(jhyInfo.getMobile()); + viewJhyInfoVo.setIdCard(jhyInfo.getIdentity()); + viewJhyInfoVo.setIdCardImg(jhyInfo.getCardPos()); + viewJhyInfoVo.setAddress(jhyInfo.getAddress()); + String userId = jhyInfo.getUserId(); + AccountInfo accountInfo = accountMapper.selectOneByUserId(userId); + String collectScore = accountInfo.getCollectScore(); + BigDecimal bigDecimal = new BigDecimal(StrUtil.isEmpty(collectScore) ? "0" : collectScore).setScale( 2, BigDecimal.ROUND_DOWN ); + viewJhyInfoVo.setScore(bigDecimal); + viewJhyInfoVo.setCreateTime(jhyInfo.getCreatedTime().toString()); + + UserInfo userInfo = userMapper.selectByPrimaryKey(userId); + String nickName = userInfo.getNickName(); + if(StrUtil.isNotEmpty(nickName)){ + String decode = StringUtils.decode(nickName); + viewJhyInfoVo.setNickname(decode); + } + + List<UserLoginInfo> userLoginInfos = userLoginInfoMapper.selectOneByUserId(userId); + if(CollUtil.isNotEmpty(userLoginInfos)){ + String loginTime = userLoginInfos.get(0).getLoginTime(); + viewJhyInfoVo.setLoginTime(loginTime); + } + return viewJhyInfoVo; + } + + public void updateJhyInfo(UpdateJhyInfoDto model) { + JhyInfo jhyInfo = jhyInfoMapper.selectByPrimaryKey(model.getId()); + String mobile = model.getMobile(); + String isJhy = model.getIsJhy(); + jhyInfo.setIsJhy(isJhy); + jhyInfo.setMobile(mobile); + jhyInfoMapper.updateByPrimaryKey(jhyInfo); + } } -- Gitblit v1.9.1