From c678894e37d15cca116d962eba5c107c99176945 Mon Sep 17 00:00:00 2001 From: lisy <linlangsur163@163.com> Date: 星期四, 20 七月 2023 17:39:05 +0800 Subject: [PATCH] 开始上课的主页中课包列表展示;bmi工具类匹配对应的身体状态 --- cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 53 insertions(+), 5 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java index 0280cee..e04b185 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java @@ -1,14 +1,19 @@ package com.dsh.account.service.impl; -import com.baomidou.mybatisplus.mapper.EntityWrapper; -import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsh.account.entity.TAppUser; import com.dsh.account.entity.UserIntegralChanges; +import com.dsh.account.feignclient.activity.MerChandiseClient; import com.dsh.account.mapper.TAppUserMapper; import com.dsh.account.mapper.UserIntegralChangesMapper; +import com.dsh.account.model.SaveUserIntegralChangesVo; +import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsResponse; import com.dsh.account.model.vo.userBenefitDetail.IntegralDetailsResponse; +import com.dsh.account.model.vo.userBenefitDetail.PointDetailsVo; import com.dsh.account.service.UserIntegralChangesService; import com.dsh.account.util.DateTimeHelper; +import com.dsh.account.util.ToolUtil; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; @@ -33,7 +38,10 @@ @Resource private TAppUserMapper tauMapper; - + + @Resource + private MerChandiseClient mcClient; + @Override public IntegralDetailsResponse queryUserPointsDetails(String yearMonth, Integer recordId, Integer userIdFormRedis) { IntegralDetailsResponse vo = new IntegralDetailsResponse(); @@ -49,10 +57,10 @@ monthStart = DateTimeHelper.getCurrentMouthStart(); monthEnd = DateTimeHelper.getCurrentMouthEnd(); } - List<UserIntegralChanges> userIntegralChanges = this.baseMapper.selectList(new EntityWrapper<UserIntegralChanges>() + List<UserIntegralChanges> userIntegralChanges = this.baseMapper.selectList(new QueryWrapper<UserIntegralChanges>() .eq("appUserId",userIdFormRedis ) .between("insertTime",monthStart,monthEnd) - .orderBy("insertTime",false)); + .orderByDesc("insertTime")); if (userIntegralChanges.size() > 0 ){ for (UserIntegralChanges userIntegralChange : userIntegralChanges) { IntegralDetailsResponse.IntegralsData detail= new IntegralDetailsResponse.IntegralsData(); @@ -96,4 +104,44 @@ } return vo; } + + + /** + * 保存用户积分变动 + * @param vo + * @throws Exception + */ + @Override + public void saveUserIntegralChanges(SaveUserIntegralChangesVo vo) throws Exception { + TAppUser appUser = tauMapper.selectById(vo.getAppUserId()); + UserIntegralChanges userIntegralChanges = new UserIntegralChanges(); + userIntegralChanges.setAppUserId(vo.getAppUserId()); + userIntegralChanges.setOldIntegral(appUser.getIntegral()); + userIntegralChanges.setType(vo.getType()); + appUser.setIntegral(appUser.getIntegral() + vo.getIntegral()); + userIntegralChanges.setNewIntegral(appUser.getIntegral()); + userIntegralChanges.setInsertTime(new Date()); + this.save(userIntegralChanges); + } + + @Override + public List<ExchangeDetailsResponse> queryExchangeGoodsdetails(Integer userIdFormRedis, Integer useType, Integer goodType) { + List<ExchangeDetailsResponse> integralExchangeDetails = mcClient.getIntegralExchangeDetails(userIdFormRedis); + if (ToolUtil.isNotEmpty(useType)){ + integralExchangeDetails = integralExchangeDetails.stream() + .filter(response -> Objects.equals(response.getUseStatus(), useType)) + .collect(Collectors.toList()); + } + if (ToolUtil.isNotEmpty(goodType)){ + integralExchangeDetails = integralExchangeDetails.stream() + .filter(response -> Objects.equals(response.getGoodType(), goodType)) + .collect(Collectors.toList()); + } + return integralExchangeDetails; + } + + @Override + public PointDetailsVo queryRedemptionDetails(Integer detailsId) { + return mcClient.getSpecificsOfGoods(detailsId); + } } -- Gitblit v1.7.1