From f7e51fc7c91e474e5c0bcc79c47f074c0a59b5c3 Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 11 十月 2023 20:03:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java | 75 ++++++++++++++++++++++++++++++++----- 1 files changed, 64 insertions(+), 11 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 309550a..a5faf58 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,15 +1,23 @@ package com.dsh.account.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsh.account.entity.TAppUser; +import com.dsh.account.entity.UserIntegral; 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.IntegralListQuery; import com.dsh.account.model.SaveUserIntegralChangesVo; -import com.dsh.account.model.vo.userBenefitDetail.IntegralDetailsResponse; +import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsResponse; +import com.dsh.account.model.vo.userBenefitDetail.ExchangeDetailsVo; +import com.dsh.account.model.vo.userBenefitDetail.IntegralsData; +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; @@ -34,11 +42,13 @@ @Resource private TAppUserMapper tauMapper; - + + @Resource + private MerChandiseClient mcClient; + @Override - public IntegralDetailsResponse queryUserPointsDetails(String yearMonth, Integer recordId, Integer userIdFormRedis) { - IntegralDetailsResponse vo = new IntegralDetailsResponse(); - List<IntegralDetailsResponse.IntegralsData> details = new ArrayList<>(); + public List<IntegralsData> queryUserPointsDetails(String yearMonth, Integer recordId, Integer userIdFormRedis) { + List<IntegralsData> details = new ArrayList<>(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM-dd HH:mm"); Date monthStart = null; @@ -56,7 +66,7 @@ .orderByDesc("insertTime")); if (userIntegralChanges.size() > 0 ){ for (UserIntegralChanges userIntegralChange : userIntegralChanges) { - IntegralDetailsResponse.IntegralsData detail= new IntegralDetailsResponse.IntegralsData(); + IntegralsData detail= new IntegralsData(); switch (userIntegralChange.getType()){ case 1: detail.setConsumeAmount("+"+(userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral())); @@ -87,15 +97,12 @@ } if (null != recordId){ details = details.stream() - .filter(obj -> obj instanceof IntegralDetailsResponse.IntegralsData) + .filter(obj -> obj instanceof IntegralsData) .filter(obj -> Objects.equals(obj.getDetailsType(), recordId)) .collect(Collectors.toList()); } - TAppUser tAppUser = tauMapper.selectById(userIdFormRedis); - vo.setWpGold(tAppUser.getIntegral()); - vo.setDetailList(details); } - return vo; + return details; } @@ -114,6 +121,52 @@ appUser.setIntegral(appUser.getIntegral() + vo.getIntegral()); userIntegralChanges.setNewIntegral(appUser.getIntegral()); userIntegralChanges.setInsertTime(new Date()); + userIntegralChanges.setCategory(1); this.save(userIntegralChanges); } + + @Override + public List<ExchangeDetailsResponse> queryExchangeGoodsdetails(Integer userIdFormRedis, Integer useType, Integer goodType) { + List<ExchangeDetailsResponse> detailsResponses = new ArrayList<>(); + ExchangeDetailsVo integralExchangeDetails = mcClient.getIntegralExchangeDetails(userIdFormRedis); + if (ToolUtil.isNotEmpty(integralExchangeDetails.getDetailsResponses())){ + detailsResponses = integralExchangeDetails.getDetailsResponses(); + if (ToolUtil.isNotEmpty(useType)){ + detailsResponses = integralExchangeDetails.getDetailsResponses().stream() + .filter(response -> Objects.equals(response.getUseStatus(), useType)) + .collect(Collectors.toList()); + } + if (ToolUtil.isNotEmpty(goodType)){ + detailsResponses = integralExchangeDetails.getDetailsResponses().stream() + .filter(response -> Objects.equals(response.getGoodType(), goodType)) + .collect(Collectors.toList()); + } + } + return detailsResponses; + } + + @Override + public PointDetailsVo queryRedemptionDetails(Long detailsId) { + PointDetailsVo specificsOfGoods = mcClient.getSpecificsOfGoods(detailsId); + return specificsOfGoods; + } + + @Override + public Page<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery) { + String sTime =null; + String eTime =null; + if(ToolUtil.isNotEmpty(integralListQuery.getTime())){ + sTime = integralListQuery.getTime().split(" - ")[0]+" 00:00:00"; + eTime = integralListQuery.getTime().split(" - ")[1]+" 23:59:59"; + } + Page<UserIntegral> userIntegrals = this.baseMapper.listAll(userIntegralPage, integralListQuery, sTime, eTime); + for (UserIntegral userIntegral : userIntegrals.getRecords()) { + if(userIntegral.getCategory()==1){ + userIntegral.setIntegral(userIntegral.getNewIntegral()-userIntegral.getOldIntegral()); + }else { + userIntegral.setIntegral(userIntegral.getOldIntegral()-userIntegral.getNewIntegral()); + } + } + return userIntegrals; + } } -- Gitblit v1.7.1