Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop

This commit is contained in:
Chopper
2021-08-09 09:14:08 +08:00
14 changed files with 70 additions and 73 deletions

View File

@@ -41,9 +41,9 @@ public class PointLogInterceptor {
point = Long.valueOf(obj[0].toString());
}
//变动类型
Boolean type = false;
String type = PointTypeEnum.INCREASE.name();
if (obj[1] != null) {
type = Boolean.valueOf(obj[1].toString());
type = obj[1].toString();
}
//会员ID
String memberId = "";
@@ -56,10 +56,15 @@ public class PointLogInterceptor {
MemberPointsHistory memberPointsHistory = new MemberPointsHistory();
memberPointsHistory.setMemberId(member.getId());
memberPointsHistory.setMemberName(member.getUsername());
memberPointsHistory.setPointType(type ? PointTypeEnum.INCREASE.name() : PointTypeEnum.REDUCE.name());
memberPointsHistory.setPointType(type);
memberPointsHistory.setVariablePoint(point);
memberPointsHistory.setBeforePoint(type ? member.getPoint() - point : member.getPoint() + point);
if (type.equals(PointTypeEnum.INCREASE.name())) {
memberPointsHistory.setBeforePoint(member.getPoint() - point);
} else {
memberPointsHistory.setBeforePoint(member.getPoint() + point);
}
memberPointsHistory.setPoint(member.getPoint());
memberPointsHistory.setContent(obj[3] == null ? "" : obj[3].toString());
memberPointsHistory.setCreateBy("系统");

View File

@@ -46,7 +46,7 @@ public class Member extends BaseEntity {
private Integer sex;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "会员生日")
private Date birthday;
@@ -64,6 +64,10 @@ public class Member extends BaseEntity {
@ApiModelProperty(value = "积分数量")
private Long point;
@Min(message = "必须为数字", value = 0)
@ApiModelProperty(value = "积分总数量")
private Long totalPoint;
@ApiModelProperty(value = "会员头像")
private String face;
@@ -103,6 +107,7 @@ public class Member extends BaseEntity {
this.haveStore = false;
this.sex = 0;
this.point = 0L;
this.totalPoint = 0L;
this.lastLoginDate = new Date();
}
@@ -116,6 +121,7 @@ public class Member extends BaseEntity {
this.face = face;
this.sex = 0;
this.point = 0L;
this.totalPoint = 0L;
this.lastLoginDate = new Date();
}
@@ -129,6 +135,7 @@ public class Member extends BaseEntity {
this.face = face;
this.sex = sex;
this.point = 0L;
this.totalPoint = 0L;
this.lastLoginDate = new Date();
}
}

View File

@@ -67,7 +67,7 @@ public class MemberPointsHistory {
@ApiModelProperty(value = "消费之前积分")
private Long beforePoint;
@ApiModelProperty(value = "消费积分")
@ApiModelProperty(value = "变动积分")
private Long variablePoint;
@ApiModelProperty(value = "content")
@@ -76,7 +76,7 @@ public class MemberPointsHistory {
/**
* @see cn.lili.modules.member.entity.enums.PointTypeEnum
*/
@ApiModelProperty(value = "消费积分类型")
@ApiModelProperty(value = "积分类型")
private String pointType;
}

View File

@@ -16,7 +16,7 @@ public class MemberPointMessage {
private Long point;
@ApiModelProperty(value = "是否增加积分")
private Boolean type;
private String type;
@ApiModelProperty(value = "会员id")
private String memberId;

View File

@@ -12,11 +12,15 @@ import lombok.Data;
@Data
public class MemberPointsHistoryVO {
@ApiModelProperty(value = "积分总数")
@ApiModelProperty(value = "当前会员积分")
private Long point;
@ApiModelProperty(value = "未使用积分总数")
private Long variablePoint;
@ApiModelProperty(value = "累计获得积分")
private Long totalPoint;
public MemberPointsHistoryVO(){
this.point = 0L;
this.totalPoint = 0L;
}
}

View File

@@ -178,23 +178,13 @@ public interface MemberService extends IService<Member> {
* 会员积分变动
*
* @param point 变动积分
* @param type 是否增加积分 true 增加积分,反之扣减积分
* @param type 是否增加积分 INCREASE 增加 REDUCE 扣减
* @param memberId 会员id
* @param content 变动日志
* @return 操作结果
*/
Boolean updateMemberPoint(Long point, Boolean type, String memberId, String content);
Boolean updateMemberPoint(Long point, String type, String memberId, String content);
/**
* 会员积分变动
*
* @param experience 变动经验值
* @param type 是否增加经验值
* @param memberId 会员id
* @param content 变动详细
* @return 操作结果
*/
Boolean updateMemberExperience(Long experience, Boolean type, String memberId, String content);
/**
* 修改会员状态

View File

@@ -1,7 +1,9 @@
package cn.lili.modules.member.serviceimpl;
import cn.lili.modules.member.entity.dos.Member;
import cn.lili.modules.member.entity.enums.PointTypeEnum;
import cn.lili.modules.member.service.MemberService;
import cn.lili.mybatis.util.PageUtil;
import cn.lili.common.utils.StringUtils;
import cn.lili.common.vo.PageVO;
@@ -12,6 +14,7 @@ import cn.lili.modules.member.service.MemberPointsHistoryService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
@@ -24,25 +27,20 @@ import org.springframework.stereotype.Service;
public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHistoryMapper, MemberPointsHistory> implements MemberPointsHistoryService {
@Autowired
private MemberService memberService;
@Override
public MemberPointsHistoryVO getMemberPointsHistoryVO(String memberId) {
//获取会员积分历史
Member member = memberService.getById(memberId);
MemberPointsHistoryVO memberPointsHistoryVO = new MemberPointsHistoryVO();
Long point = 0L;
Long variablePoint = 0L;
if (StringUtils.isNotEmpty(memberId)) {
point = this.baseMapper.getMemberPointsHistoryVO(PointTypeEnum.INCREASE.name(), memberId);
variablePoint = this.baseMapper.getMemberPointsHistoryVO(PointTypeEnum.REDUCE.name(), memberId);
} else {
point = this.baseMapper.getALLMemberPointsHistoryVO(PointTypeEnum.REDUCE.name());
variablePoint = this.baseMapper.getALLMemberPointsHistoryVO(PointTypeEnum.INCREASE.name());
if (member != null) {
memberPointsHistoryVO.setPoint(member.getPoint());
memberPointsHistoryVO.setTotalPoint(member.getTotalPoint());
return memberPointsHistoryVO;
}
memberPointsHistoryVO.setPoint(point == null ? 0 : point);
memberPointsHistoryVO.setVariablePoint(variablePoint == null ? 0 : variablePoint);
memberPointsHistoryVO.setVariablePoint(memberPointsHistoryVO.getPoint() - memberPointsHistoryVO.getVariablePoint());
return memberPointsHistoryVO;
return new MemberPointsHistoryVO();
}
@Override

View File

@@ -7,6 +7,7 @@ import cn.lili.cache.CachePrefix;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.enums.SwitchEnum;
import cn.lili.common.exception.ServiceException;
import cn.lili.modules.member.entity.enums.PointTypeEnum;
import cn.lili.mybatis.util.PageUtil;
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
import cn.lili.rocketmq.tags.MemberTagsEnum;
@@ -376,21 +377,26 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> impleme
@Override
@PointLogPoint
public Boolean updateMemberPoint(Long point, Boolean type, String memberId, String content) {
public Boolean updateMemberPoint(Long point, String type, String memberId, String content) {
//获取当前会员信息
Member member = this.getById(memberId);
if (member != null) {
//积分变动后的会员积分
long currentPoint;
//会员总获得积分
long totalPoint = member.getTotalPoint();
//如果增加积分
if (type) {
if (type.equals(PointTypeEnum.INCREASE.name())) {
currentPoint = member.getPoint() + point;
//如果是增加积分 需要增加总获得积分
totalPoint = totalPoint + point;
}
//否则扣除积分
else {
currentPoint = member.getPoint() - point < 0 ? 0 : member.getPoint() - point;
}
member.setPoint(currentPoint);
member.setTotalPoint(totalPoint);
Boolean result = this.updateById(member);
if (result) {
//发送会员消息
@@ -408,26 +414,6 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> impleme
throw new ServiceException(ResultCode.USER_NOT_EXIST);
}
@Override
public Boolean updateMemberExperience(Long experience, Boolean type, String memberId, String content) {
//获取当前会员信息
Member member = this.getById(memberId);
if (member != null) {
//积分变动后的会员积分
long currentExperience;
if (type) {
currentExperience = CurrencyUtil.add(member.getPoint(), experience).longValue();
} else {
currentExperience = CurrencyUtil.sub(member.getPoint(), experience) < 0 ? 0 : new Double(CurrencyUtil.sub(member.getExperience(), experience)).longValue();
}
member.setExperience(currentExperience);
return this.updateById(member);
}
throw new ServiceException(ResultCode.USER_NOT_EXIST);
}
@Override
public Boolean updateMemberStatus(List<String> memberIds, Boolean status) {
UpdateWrapper<Member> updateWrapper = Wrappers.update();

View File

@@ -2,6 +2,7 @@ package cn.lili.modules.member.serviceimpl;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException;
import cn.lili.modules.member.entity.enums.PointTypeEnum;
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
import cn.lili.rocketmq.tags.MemberTagsEnum;
import cn.lili.common.security.AuthUser;
@@ -66,8 +67,8 @@ public class MemberSignServiceImpl extends ServiceImpl<MemberSignMapper, MemberS
AuthUser authUser = UserContext.getCurrentUser();
if (authUser != null) {
QueryWrapper<MemberSign> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("member_id",authUser.getId());
queryWrapper.between("create_time",new Date(DateUtil.startOfTodDay()*1000),DateUtil.getCurrentDayEndTime());
queryWrapper.eq("member_id", authUser.getId());
queryWrapper.between("create_time", new Date(DateUtil.startOfTodDay() * 1000), DateUtil.getCurrentDayEndTime());
//校验今天是否已经签到
List<MemberSign> todaySigns = this.baseMapper.getTodayMemberSign(queryWrapper);
if (todaySigns.size() > 0) {
@@ -139,10 +140,10 @@ public class MemberSignServiceImpl extends ServiceImpl<MemberSignMapper, MemberS
content = "会员签到第" + day + "天,赠送积分" + point + "";
}
//赠送会员积分
memberService.updateMemberPoint(point, true, memberId, content);
memberService.updateMemberPoint(point, PointTypeEnum.INCREASE.name(), memberId, content);
}
} catch (Exception e) {
log.error("会员签到错误",e);
log.error("会员签到错误", e);
}
}

File diff suppressed because one or more lines are too long