修复积分类型修改引发的积分对不上问题

This commit is contained in:
pikachu 2021-08-05 08:26:35 +08:00
parent 86d0ecc89e
commit 4498d63f6c
3 changed files with 10 additions and 7 deletions

View File

@ -59,7 +59,7 @@ public class PointLogInterceptor {
memberPointsHistory.setPointType(type ? PointTypeEnum.INCREASE.name() : PointTypeEnum.REDUCE.name()); memberPointsHistory.setPointType(type ? PointTypeEnum.INCREASE.name() : PointTypeEnum.REDUCE.name());
memberPointsHistory.setVariablePoint(point); memberPointsHistory.setVariablePoint(point);
memberPointsHistory.setBeforePoint(true ? new Double(CurrencyUtil.sub(member.getPoint(), point)).longValue() : new Double(CurrencyUtil.add(member.getPoint(), point)).longValue()); memberPointsHistory.setBeforePoint(type ? member.getPoint() - point : member.getPoint() + point);
memberPointsHistory.setPoint(member.getPoint()); memberPointsHistory.setPoint(member.getPoint());
memberPointsHistory.setContent(obj[3] == null ? "" : obj[3].toString()); memberPointsHistory.setContent(obj[3] == null ? "" : obj[3].toString());
memberPointsHistory.setCreateBy("系统"); memberPointsHistory.setCreateBy("系统");

View File

@ -19,7 +19,7 @@ public interface MemberPointsHistoryMapper extends BaseMapper<MemberPointsHistor
* @return * @return
*/ */
@Select("SELECT SUM( variable_point ) FROM li_member_points_history WHERE point_type = #{pointType}") @Select("SELECT SUM( variable_point ) FROM li_member_points_history WHERE point_type = #{pointType}")
Long getALLMemberPointsHistoryVO(Integer pointType); Long getALLMemberPointsHistoryVO(String pointType);
/** /**
* 获取用户的积分数量 * 获取用户的积分数量
@ -29,7 +29,7 @@ public interface MemberPointsHistoryMapper extends BaseMapper<MemberPointsHistor
* @return 积分数量 * @return 积分数量
*/ */
@Select("SELECT SUM( variable_point ) FROM li_member_points_history WHERE point_type = #{pointType} AND member_id=#{memberId}") @Select("SELECT SUM( variable_point ) FROM li_member_points_history WHERE point_type = #{pointType} AND member_id=#{memberId}")
Long getMemberPointsHistoryVO(Integer pointType, String memberId); Long getMemberPointsHistoryVO(String pointType, String memberId);
} }

View File

@ -1,6 +1,7 @@
package cn.lili.modules.member.serviceimpl; package cn.lili.modules.member.serviceimpl;
import cn.lili.modules.member.entity.enums.PointTypeEnum;
import cn.lili.mybatis.util.PageUtil; import cn.lili.mybatis.util.PageUtil;
import cn.lili.common.utils.StringUtils; import cn.lili.common.utils.StringUtils;
import cn.lili.common.vo.PageVO; import cn.lili.common.vo.PageVO;
@ -22,6 +23,8 @@ import org.springframework.stereotype.Service;
@Service @Service
public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHistoryMapper, MemberPointsHistory> implements MemberPointsHistoryService { public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHistoryMapper, MemberPointsHistory> implements MemberPointsHistoryService {
@Override @Override
public MemberPointsHistoryVO getMemberPointsHistoryVO(String memberId) { public MemberPointsHistoryVO getMemberPointsHistoryVO(String memberId) {
MemberPointsHistoryVO memberPointsHistoryVO = new MemberPointsHistoryVO(); MemberPointsHistoryVO memberPointsHistoryVO = new MemberPointsHistoryVO();
@ -29,12 +32,12 @@ public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHist
Long variablePoint = 0L; Long variablePoint = 0L;
if (StringUtils.isNotEmpty(memberId)) { if (StringUtils.isNotEmpty(memberId)) {
point = this.baseMapper.getMemberPointsHistoryVO(1, memberId); point = this.baseMapper.getMemberPointsHistoryVO(PointTypeEnum.INCREASE.name(), memberId);
variablePoint = this.baseMapper.getMemberPointsHistoryVO(0, memberId); variablePoint = this.baseMapper.getMemberPointsHistoryVO(PointTypeEnum.REDUCE.name(), memberId);
} else { } else {
point = this.baseMapper.getALLMemberPointsHistoryVO(0); point = this.baseMapper.getALLMemberPointsHistoryVO(PointTypeEnum.REDUCE.name());
variablePoint = this.baseMapper.getALLMemberPointsHistoryVO(1); variablePoint = this.baseMapper.getALLMemberPointsHistoryVO(PointTypeEnum.INCREASE.name());
} }
memberPointsHistoryVO.setPoint(point == null ? 0 : point); memberPointsHistoryVO.setPoint(point == null ? 0 : point);
memberPointsHistoryVO.setVariablePoint(variablePoint == null ? 0 : variablePoint); memberPointsHistoryVO.setVariablePoint(variablePoint == null ? 0 : variablePoint);