From e20654c40b012cd5c2347078f4b6d0cb01a55bf5 Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期五, 18 十一月 2022 16:49:11 +0800
Subject: [PATCH] Merge branch 'local_20221104' into huacheng_test
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java | 353 +++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 211 insertions(+), 142 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
index f71d619..eb4131b 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java
@@ -1,5 +1,13 @@
package com.panzhihua.service_community.service.impl;
+import java.util.Date;
+
+import javax.annotation.Resource;
+
+import com.panzhihua.service_community.dao.ComBpActivityDAO;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -9,7 +17,6 @@
import com.panzhihua.common.model.dtos.community.integral.admin.AddComActIntegralUserDTO;
import com.panzhihua.common.model.dtos.community.integral.admin.PageComActIntegralTradeDTO;
import com.panzhihua.common.model.vos.R;
-import com.panzhihua.common.model.vos.community.integral.ComActIntegralUserRuleVO;
import com.panzhihua.common.model.vos.community.integral.admin.ComActIntegralUserTradeAdminVO;
import com.panzhihua.common.model.vos.community.integral.admin.IntegralUserVO;
import com.panzhihua.common.utlis.DateUtils;
@@ -19,12 +26,10 @@
import com.panzhihua.service_community.dao.ComActQuestnaireDAO;
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.*;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import javax.annotation.Resource;
-import java.util.Date;
+import lombok.extern.slf4j.Slf4j;
+
+import static java.util.Objects.nonNull;
/**
* @auther lyq
@@ -33,7 +38,8 @@
*/
@Slf4j
@Service
-public class ComActIntegralUserTradeServiceImpl extends ServiceImpl<ComActIntegralUserTradeMapper, ComActIntegralUserTradeDO> implements ComActIntegralUserTradeService {
+public class ComActIntegralUserTradeServiceImpl extends
+ ServiceImpl<ComActIntegralUserTradeMapper, ComActIntegralUserTradeDO> implements ComActIntegralUserTradeService {
@Resource
private ComActIntegralRuleService comActIntegralRuleService;
@@ -53,33 +59,49 @@
private ComActDiscussOptionService comActDiscussOptionService;
@Resource
private ComActActivityService comActActivityService;
+ @Resource
+ private ComBpActivityDAO comBpActivityDAO;
/**
* 查询用户某个时间段交易数量
- * @param integralCountDTO 请求参数
- * @return 交易数量
+ *
+ * @param integralCountDTO
+ * 请求参数
+ * @return 交易数量
*/
@Override
- public Integer getIntegralCount(ComActIntegralCountDTO integralCountDTO){
+ public Integer getIntegralCount(ComActIntegralCountDTO integralCountDTO) {
return this.baseMapper.getIntegralCount(integralCountDTO);
}
/**
* 添加用户积分交易记录
- * @param userId 用户id
- * @param integralId 积分账户id
- * @param communityId 社区id
- * @param serviceId 交易业务id
- * @param serviceType 交易业务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.参与志愿者活动 5.参与社区活动 6.参与党员活动 7.参与调查问卷)
- * @param amount 交易积分数量
- * @param changeType 变动类型(1.增加 2.减少)
- * @param remark 交易备注
- * @param identityType 交易身份类型(1.居民 2.党员 3.志愿者)
- * @param createBy 操作人id
+ *
+ * @param userId
+ * 用户id
+ * @param integralId
+ * 积分账户id
+ * @param communityId
+ * 社区id
+ * @param serviceId
+ * 交易业务id
+ * @param serviceType
+ * 交易业务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.社区活动-居民身份参与 " +
+ * "5.社区活动-党员身份参与 6.社区活动-志愿者身份参与 7.参与调查问卷 8.取消活动 9.参与单位党员活动)
+ * @param amount
+ * 交易积分数量
+ * @param changeType
+ * 变动类型(1.增加 2.减少)
+ * @param remark
+ * 交易备注
+ * @param identityType
+ * 交易身份类型(1.居民 2.党员 3.志愿者)
+ * @param createBy
+ * 操作人id
*/
@Override
- public Long addIntegralTradeRecord(Long userId,Long integralId,Long communityId,Long serviceId
- ,Integer serviceType,Integer amount,Integer changeType,String remark,Integer identityType,Long createBy){
+ public Long addIntegralTradeRecord(Long userId, Long integralId, Long communityId, Long serviceId,
+ Integer serviceType, Integer amount, Integer changeType, String remark, Integer identityType, Long createBy) {
ComActIntegralUserTradeDO integralUserTradeDO = new ComActIntegralUserTradeDO();
integralUserTradeDO.setId(Snowflake.getId());
integralUserTradeDO.setUserId(userId);
@@ -99,37 +121,43 @@
/**
* 小程序-查询用户社区积分明细
- * @param communityTradeDTO 请求参数
- * @return 用户社区积分明细
+ *
+ * @param communityTradeDTO
+ * 请求参数
+ * @return 用户社区积分明细
*/
@Override
- public R getIntegralCommunityTradeApplets(ComActIntegralCommunityRankDTO communityTradeDTO){
- if(communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.resident)){
+ public R getIntegralCommunityTradeApplets(ComActIntegralCommunityRankDTO communityTradeDTO) {
+ if (communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.resident)) {
communityTradeDTO.setIdentityType(ComActIntegralCommunityRankDTO.identityType.resident);
- }else if(communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.party)){
+ } else if (communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.party)) {
communityTradeDTO.setIdentityType(ComActIntegralCommunityRankDTO.identityType.party);
- }else if(communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.volunteer)){
+ } else if (communityTradeDTO.getType().equals(ComActIntegralCommunityRankDTO.type.volunteer)) {
communityTradeDTO.setIdentityType(ComActIntegralCommunityRankDTO.identityType.volunteer);
}
- return R.ok(this.baseMapper.getIntegralCommunityTradeApplets(new Page(communityTradeDTO.getPageNum(),communityTradeDTO.getPageSize()),communityTradeDTO));
+ return R.ok(this.baseMapper.getIntegralCommunityTradeApplets(
+ new Page(communityTradeDTO.getPageNum(), communityTradeDTO.getPageSize()), communityTradeDTO));
}
/**
* 社区后台-分页查询社区下积分明细记录
- * @param integralRuleDTO 请求参数
- * @return 社区下积分明细记录
+ *
+ * @param integralRuleDTO
+ * 请求参数
+ * @return 社区下积分明细记录
*/
@Override
- public R getIntegralTradeListAdmin(PageComActIntegralTradeDTO integralRuleDTO){
- IPage<ComActIntegralUserTradeAdminVO> userTradeAdminIPage = this.baseMapper.getIntegralTradeListAdmin(new Page(integralRuleDTO.getPageNum(),integralRuleDTO.getPageSize()),integralRuleDTO);
- if(!userTradeAdminIPage.getRecords().isEmpty()){
+ public R getIntegralTradeListAdmin(PageComActIntegralTradeDTO integralRuleDTO) {
+ IPage<ComActIntegralUserTradeAdminVO> userTradeAdminIPage = this.baseMapper.getIntegralTradeListAdmin(
+ new Page(integralRuleDTO.getPageNum(), integralRuleDTO.getPageSize()), integralRuleDTO);
+ if (!userTradeAdminIPage.getRecords().isEmpty()) {
userTradeAdminIPage.getRecords().forEach(userTrade -> {
StringBuilder sb = new StringBuilder();
sb.append("居民");
- if(userTrade.getIsVolunteer().equals(ComActIntegralUserTradeAdminVO.isVolunteer.yes)){
+ if (userTrade.getIsVolunteer().equals(ComActIntegralUserTradeAdminVO.isVolunteer.yes)) {
sb.append(",志愿者");
}
- if(userTrade.getIsPartymember().equals(ComActIntegralUserTradeAdminVO.isPartymember.yes)){
+ if (userTrade.getIsPartymember().equals(ComActIntegralUserTradeAdminVO.isPartymember.yes)) {
sb.append(",党员");
}
userTrade.setIdentity(sb.toString());
@@ -140,52 +168,60 @@
/**
* 给用户添加积分
- * @param integralUserDTO 请求参数
- * @return 添加积分结果
+ *
+ * @param integralUserDTO
+ * 请求参数
+ * @return 添加积分结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
- public R addIntegralTradeAdmin(AddComActIntegralUserDTO integralUserDTO){
- //判断增加积分类型 积分任务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.参与志愿者活动 5.参与社区活动 6.参与党员活动 7.参与调查问卷)
+ public R addIntegralTradeAdmin(AddComActIntegralUserDTO integralUserDTO) {
+ // 判断增加积分类型 积分任务类型(1.发布随手拍 2.发布微心愿 3.参与议事投票 4.社区活动-居民身份参与 " +
+ // "5.社区活动-党员身份参与 6.社区活动-志愿者身份参与 7.参与调查问卷 8.取消活动 9.参与单位党员活动)
Integer type = integralUserDTO.getIntegralType();
- //业务id
+ // 业务id
Long serviceId = integralUserDTO.getServiceId();
- //用户id
+ // 用户id
Long userId = integralUserDTO.getUserId();
- //社区id
+ // 社区id
Long communityId = integralUserDTO.getCommunityId();
- //需要给用户增加的积分数量
+ // 需要给用户增加的积分数量
Integer amount = 0;
- //用户增加积分的身份
+ // 用户增加积分的身份
Integer identityType = 1;
- //用户交易备注
+ // 用户交易备注
StringBuilder remark = new StringBuilder();
- //当前时间
+ // 当前时间
Date nowDate = new Date();
- //查询随手拍增加积分数量
- ComActIntegralRuleDO integralRuleDO = comActIntegralRuleService.getOne(new QueryWrapper<ComActIntegralRuleDO>().lambda()
- .eq(ComActIntegralRuleDO::getIntegralType,type)
- .eq(ComActIntegralRuleDO::getCommunityId,communityId));
- if(integralRuleDO == null){
- log.error("未查询到该社区积分规则,社区id:" + communityId);
- return R.fail("未查询到该社区积分规则,社区id:" + communityId);
- }
- //判断规则是否有次数限制
- if(integralRuleDO.getIsRestrict().equals(ComActIntegralRuleDO.isRestrict.yes)){
- Integer count = this.baseMapper.getIntegralCount(getIntegralCountDTO(integralRuleDO.getType(),userId,communityId,integralRuleDO.getIntegralType()));
- if(count >= integralRuleDO.getCount()){
- log.error("该用户参加任务次数已达上限");
- return R.fail("该用户参加任务次数已达上限");
- }
- }
- amount = integralRuleDO.getAmount();
+ Integer changeType = ComActIntegralUserTradeDO.changeType.add;
- switch (type){
+ if (!type.equals(8) && !type.equals(4) && !type.equals(5) && !type.equals(6) && !type.equals(9)) {
+ // 查询随手拍增加积分数量
+ ComActIntegralRuleDO integralRuleDO =
+ comActIntegralRuleService.getOne(new QueryWrapper<ComActIntegralRuleDO>().lambda()
+ .eq(ComActIntegralRuleDO::getIntegralType, type).eq(ComActIntegralRuleDO::getCommunityId, communityId));
+ if (integralRuleDO == null) {
+ log.error("未查询到该社区积分规则,社区id:" + communityId);
+ return R.fail("未查询到该社区积分规则,社区id:" + communityId);
+ }
+ // 判断规则是否有次数限制
+ if (integralRuleDO.getIsRestrict().equals(ComActIntegralRuleDO.isRestrict.yes)) {
+ Integer count = this.baseMapper.getIntegralCount(
+ getIntegralCountDTO(integralRuleDO.getType(), userId, communityId, integralRuleDO.getIntegralType()));
+ if (count >= integralRuleDO.getCount()) {
+ log.error("该用户参加任务次数已达上限");
+ return R.fail("该用户参加任务次数已达上限");
+ }
+ }
+ amount = integralRuleDO.getAmount();
+ }
+
+ switch (type) {
case 1:
remark.append("发布随手拍奖励积分");
ComActEasyPhotoDO easyPhotoDO = comActEasyPhotoService.getById(serviceId);
- if(easyPhotoDO != null){
+ if (easyPhotoDO != null) {
remark.append("【");
remark.append(easyPhotoDO.getDetail());
remark.append("】");
@@ -194,7 +230,7 @@
case 2:
remark.append("发布微心愿奖励积分");
ComActMicroWishDO microWishDO = comActMicroWishService.getById(serviceId);
- if(microWishDO != null){
+ if (microWishDO != null) {
remark.append("【");
remark.append(microWishDO.getWishName());
remark.append("】");
@@ -202,18 +238,18 @@
break;
case 3:
remark.append("参与议事投票奖励积分");
- if(integralUserDTO.getIsComment().equals(1)){
+ if (integralUserDTO.getIsComment().equals(1)) {
ComActDiscussDO discussDO = comActDiscussDAO.selectById(serviceId);
- if(discussDO != null){
+ if (discussDO != null) {
remark.append("【");
remark.append(discussDO.getDiscussSubject());
remark.append("】");
}
- }else{
+ } else {
ComActDiscussOptionDO discussOptionDO = comActDiscussOptionService.getById(serviceId);
- if(discussOptionDO != null){
+ if (discussOptionDO != null) {
ComActDiscussDO discussDO = comActDiscussDAO.selectById(discussOptionDO.getDiscussId());
- if(discussDO != null){
+ if (discussDO != null) {
remark.append("【");
remark.append(discussDO.getVoteTitle());
remark.append("】");
@@ -221,50 +257,27 @@
}
}
break;
- case 4:
- identityType = 3;
- remark.append("参与志愿者活动奖励积分");
- ComActActivityDO actActivityZYZDO = comActActivityService.getById(serviceId);
- if(actActivityZYZDO != null){
- remark.append("【");
- remark.append(actActivityZYZDO.getActivityName());
- remark.append("】");
- }
- break;
- case 5:
- remark.append("参与社区活动奖励积分");
- ComActActivityDO actActivityDO = comActActivityService.getById(serviceId);
- if(actActivityDO != null){
- remark.append("【");
- remark.append(actActivityDO.getActivityName());
- remark.append("】");
- }
- break;
- case 6:
- identityType = 2;
- remark.append("参与党员活动奖励积分");
- break;
case 7:
- //查询调查问卷
+ // 查询调查问卷
ComActQuestnaireDO questnaireDO = comActQuestnaireDAO.selectById(serviceId);
- if(questnaireDO == null){
+ if (questnaireDO == null) {
log.error("未查询到调查问卷记录,记录积分失败");
return R.fail("未查询到调查问卷记录,记录积分失败");
}
- //查询当前用户信息
+ // 查询当前用户信息
IntegralUserVO integralUser = this.baseMapper.getUserInfo(userId);
- if(integralUser == null){
+ if (integralUser == null) {
log.error("未查询到用户信息,记录积分失败");
return R.fail("未查询到用户信息,记录积分失败");
}
- //判断调查问卷调查的对象是什么身份,如果是党员和志愿者两种身份,则记录志愿者积分
- if(questnaireDO.getForParty() && integralUser.getIsPartymember().equals(1)){
+ // 判断调查问卷调查的对象是什么身份,如果是党员和志愿者两种身份,则记录志愿者积分
+ if (questnaireDO.getForParty().equals(1) && integralUser.getIsPartymember().equals(1)) {
identityType = 2;
- if(questnaireDO.getForVolunteer() && integralUser.getIsVolunteer().equals(1)){
+ if (questnaireDO.getForVolunteer().equals(1) && integralUser.getIsVolunteer().equals(1)) {
identityType = 3;
}
}
- if(questnaireDO.getForVolunteer() && integralUser.getIsVolunteer().equals(1)){
+ if (questnaireDO.getForVolunteer().equals(1) && integralUser.getIsVolunteer().equals(1)) {
identityType = 3;
}
remark.append("参与调查问卷奖励积分");
@@ -272,14 +285,29 @@
remark.append(questnaireDO.getTitle());
remark.append("】");
break;
+ case 8:
+ changeType = ComActIntegralUserTradeDO.changeType.reduce;
+ amount = -integralUserDTO.getIntegral();
+ remark.append(integralUserDTO.getRemark());
+ identityType = integralUserDTO.getSignIdentity();
+ break;
+ case 4:
+ case 5:
+ case 6:
+ case 9:
+ identityType = integralUserDTO.getSignIdentity();
+ remark.append(integralUserDTO.getRemark());
+ amount = integralUserDTO.getIntegral();
+ break;
default:
break;
}
- //查询用户积分账户
- ComActIntegralUserDO integralUserDO = comActIntegralUserService.getOne(new QueryWrapper<ComActIntegralUserDO>().lambda()
- .eq(ComActIntegralUserDO::getUserId,userId).eq(ComActIntegralUserDO::getCommunityId,communityId));
- if(integralUserDO == null){
+ // 查询用户积分账户
+ ComActIntegralUserDO integralUserDO =
+ comActIntegralUserService.getOne(new QueryWrapper<ComActIntegralUserDO>().lambda()
+ .eq(ComActIntegralUserDO::getUserId, userId).eq(ComActIntegralUserDO::getCommunityId, communityId));
+ if (integralUserDO == null) {
integralUserDO = new ComActIntegralUserDO();
integralUserDO.setCommunityId(communityId);
integralUserDO.setUserId(userId);
@@ -299,12 +327,12 @@
integralUserDO.setIntegralFrozenResident(0);
comActIntegralUserService.save(integralUserDO);
}
- if(integralUserDO.getStatus().equals(ComActIntegralUserDO.status.no)){
+ if (integralUserDO.getStatus().equals(ComActIntegralUserDO.status.no)) {
log.error("用户钱包已被禁用,记录积分失败,用户id:" + userId);
return R.fail("用户钱包已被禁用,记录积分失败,用户id:" + userId);
}
Long integralId = integralUserDO.getId();
- //记录变动前钱包金额
+ // 记录变动前钱包金额
Integer integralSum = integralUserDO.getIntegralSum();
Integer integralAvailableSum = integralUserDO.getIntegralAvailableSum();
Integer integralFrozenSum = integralUserDO.getIntegralFrozenSum();
@@ -318,53 +346,94 @@
Integer integralAvailableResident = integralUserDO.getIntegralAvailableResident();
Integer integralFrozenResident = integralUserDO.getIntegralFrozenResident();
- integralUserDO.setIntegralSum(integralUserDO.getIntegralSum() + amount);
- integralUserDO.setIntegralAvailableSum(integralUserDO.getIntegralAvailableSum() + amount);
- integralUserDO.setUpdateAt(nowDate);
- //根据不同身份,计算钱包金额
- if(identityType.equals(ComActIntegralUserTradeDO.identityType.jm)){
- integralUserDO.setIntegralResident(integralUserDO.getIntegralResident() + amount);
- integralUserDO.setIntegralAvailableResident(integralUserDO.getIntegralAvailableResident() + amount);
- }else if(identityType.equals(ComActIntegralUserTradeDO.identityType.dy)){
- integralUserDO.setIntegralParty(integralUserDO.getIntegralParty() + amount);
- integralUserDO.setIntegralAvailableParty(integralUserDO.getIntegralAvailableParty() + amount);
- }else if(identityType.equals(ComActIntegralUserTradeDO.identityType.zyz)){
- integralUserDO.setIntegralVolunteer(integralUserDO.getIntegralVolunteer() + amount);
- integralUserDO.setIntegralAvailableVolunteer(integralUserDO.getIntegralAvailableVolunteer() + amount);
+ // 根据不同身份,计算钱包金额
+ int reduceAmount = 0;
+ if (identityType.equals(ComActIntegralUserTradeDO.identityType.jm)) {
+ int integralResidentNow = addIntegral(integralResident + amount);
+ if (amount < 0) {
+ reduceAmount = integralResident - integralResidentNow;
+ }
+ integralUserDO.setIntegralResident(integralResidentNow);
+ integralUserDO.setIntegralAvailableResident(addIntegral(integralUserDO.getIntegralAvailableResident() + amount));
+ } else if (identityType.equals(ComActIntegralUserTradeDO.identityType.dy)) {
+ int integralPartyNow = addIntegral(integralParty + amount);
+ if (amount < 0) {
+ reduceAmount = integralParty - integralPartyNow;
+ }
+ integralUserDO.setIntegralParty(integralPartyNow);
+ integralUserDO.setIntegralAvailableParty(addIntegral(integralUserDO.getIntegralAvailableParty() + amount));
+ } else if (identityType.equals(ComActIntegralUserTradeDO.identityType.zyz)) {
+ int integralVolunteerNow = addIntegral(integralVolunteer + amount);
+ if (amount < 0) {
+ reduceAmount = integralVolunteer - integralVolunteerNow;
+ }
+ integralUserDO.setIntegralVolunteer(integralVolunteerNow);
+ integralUserDO.setIntegralAvailableVolunteer(addIntegral(integralUserDO.getIntegralAvailableVolunteer() + amount));
}
- //更新钱包
+ if (changeType == ComActIntegralUserTradeDO.changeType.reduce) {
+ amount = reduceAmount;
+ integralUserDO.setIntegralSum(addIntegral(integralSum - reduceAmount));
+ integralUserDO.setIntegralAvailableSum(addIntegral(integralAvailableSum - reduceAmount));
+ } else {
+ integralUserDO.setIntegralSum(addIntegral(integralSum + amount));
+ integralUserDO.setIntegralAvailableSum(addIntegral(integralAvailableSum + amount));
+ }
+ integralUserDO.setUpdateAt(nowDate);
+
+ // 更新钱包
comActIntegralUserService.updateById(integralUserDO);
- //增加积分账户交易记录
- Long tradeId = this.addIntegralTradeRecord(userId,integralId,communityId,serviceId,type,amount
- ,ComActIntegralUserTradeDO.changeType.add,remark.toString(),identityType,2L);
- //增加积分账户变更记录
- comActIntegralUserChangeService.addIntegralUserChangeRecord(userId,integralId,communityId,integralSum,integralUserDO.getIntegralSum()
- ,integralAvailableSum,integralUserDO.getIntegralAvailableSum(),integralFrozenSum,integralUserDO.getIntegralFrozenSum()
- ,integralParty,integralUserDO.getIntegralParty(),integralAvailableParty,integralUserDO.getIntegralAvailableParty()
- ,integralFrozenParty,integralUserDO.getIntegralFrozenParty(),integralVolunteer,integralUserDO.getIntegralVolunteer()
- ,integralAvailableVolunteer,integralUserDO.getIntegralAvailableVolunteer(),integralFrozenVolunteer,integralUserDO.getIntegralFrozenVolunteer()
- ,integralResident,integralUserDO.getIntegralResident(),integralAvailableResident,integralUserDO.getIntegralAvailableResident()
- ,integralFrozenResident,integralUserDO.getIntegralFrozenResident(),tradeId);
+ // 增加积分账户交易记录
+ Long tradeId = this.addIntegralTradeRecord(userId, integralId, communityId, serviceId, type, amount,
+ changeType, remark.toString(), identityType, 2L);
+ // 增加积分账户变更记录
+ comActIntegralUserChangeService.addIntegralUserChangeRecord(userId, integralId, communityId, integralSum,
+ integralUserDO.getIntegralSum(), integralAvailableSum, integralUserDO.getIntegralAvailableSum(),
+ integralFrozenSum, integralUserDO.getIntegralFrozenSum(), integralParty, integralUserDO.getIntegralParty(),
+ integralAvailableParty, integralUserDO.getIntegralAvailableParty(), integralFrozenParty,
+ integralUserDO.getIntegralFrozenParty(), integralVolunteer, integralUserDO.getIntegralVolunteer(),
+ integralAvailableVolunteer, integralUserDO.getIntegralAvailableVolunteer(), integralFrozenVolunteer,
+ integralUserDO.getIntegralFrozenVolunteer(), integralResident, integralUserDO.getIntegralResident(),
+ integralAvailableResident, integralUserDO.getIntegralAvailableResident(), integralFrozenResident,
+ integralUserDO.getIntegralFrozenResident(), tradeId);
return R.ok();
}
/**
- * 根据类型、用户id、社区id构建查询请求参数
- * @param type 类型
- * @param userId 用户id
- * @param communityId 社区id
- * @return 查询请求参数
+ * 获取积分详情
+ * @param id
+ * @return
*/
- private ComActIntegralCountDTO getIntegralCountDTO(Integer type,Long userId,Long communityId,Integer integralType){
+ @Override
+ public R getUserIntegralDetail(Long id) {
+ return R.ok(this.baseMapper.getUserIntegralDetail(id));
+ }
+
+ private int addIntegral(int integral) {
+ return integral > 0 ? integral : 0;
+ }
+
+ /**
+ * 根据类型、用户id、社区id构建查询请求参数
+ *
+ * @param type
+ * 类型
+ * @param userId
+ * 用户id
+ * @param communityId
+ * 社区id
+ * @return 查询请求参数
+ */
+ private ComActIntegralCountDTO getIntegralCountDTO(Integer type, Long userId, Long communityId,
+ Integer integralType) {
ComActIntegralCountDTO integralCountDTO = new ComActIntegralCountDTO();
integralCountDTO.setUserId(userId);
integralCountDTO.setCommunityId(communityId);
integralCountDTO.setServiceType(integralType);
integralCountDTO.setType(ComActIntegralUserTradeDO.changeType.add);
- if(type.equals(ComActIntegralRuleDO.type.month)){
+ if (type.equals(ComActIntegralRuleDO.type.month)) {
integralCountDTO.setStartTime(DateUtils.getFirstDayOfMonthString());
integralCountDTO.setEndTime(DateUtils.getLastDayOfMonthString());
- }else if(type.equals(ComActIntegralRuleDO.type.day)){
+ } else if (type.equals(ComActIntegralRuleDO.type.day)) {
integralCountDTO.setStartTime(DateUtils.getDayOfMonthString() + " 00:00:00");
integralCountDTO.setEndTime(DateUtils.getDayOfMonthString() + " 23:59:59");
}
--
Gitblit v1.7.1