Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop
This commit is contained in:
commit
bf2882b566
@ -7,6 +7,7 @@ import cn.lili.event.MemberRegisterEvent;
|
|||||||
import cn.lili.event.OrderStatusChangeEvent;
|
import cn.lili.event.OrderStatusChangeEvent;
|
||||||
import cn.lili.modules.member.entity.dos.Member;
|
import cn.lili.modules.member.entity.dos.Member;
|
||||||
import cn.lili.modules.member.entity.dos.MemberEvaluation;
|
import cn.lili.modules.member.entity.dos.MemberEvaluation;
|
||||||
|
import cn.lili.modules.member.entity.enums.PointTypeEnum;
|
||||||
import cn.lili.modules.member.service.MemberService;
|
import cn.lili.modules.member.service.MemberService;
|
||||||
import cn.lili.modules.order.order.entity.dos.Order;
|
import cn.lili.modules.order.order.entity.dos.Order;
|
||||||
import cn.lili.modules.order.order.entity.dto.OrderMessage;
|
import cn.lili.modules.order.order.entity.dto.OrderMessage;
|
||||||
@ -54,7 +55,7 @@ public class MemberExperienceExecute implements MemberRegisterEvent, GoodsCommen
|
|||||||
//获取经验值设置
|
//获取经验值设置
|
||||||
ExperienceSetting experienceSetting = getExperienceSetting();
|
ExperienceSetting experienceSetting = getExperienceSetting();
|
||||||
//赠送会员经验值
|
//赠送会员经验值
|
||||||
memberService.updateMemberExperience(Long.valueOf(experienceSetting.getRegister().longValue()), true, member.getId(), "会员注册,赠送经验值" + experienceSetting.getRegister());
|
memberService.updateMemberPoint(Long.valueOf(experienceSetting.getRegister().longValue()), PointTypeEnum.INCREASE.name(), member.getId(), "会员注册,赠送经验值" + experienceSetting.getRegister());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -67,7 +68,7 @@ public class MemberExperienceExecute implements MemberRegisterEvent, GoodsCommen
|
|||||||
//获取经验值设置
|
//获取经验值设置
|
||||||
ExperienceSetting experienceSetting = getExperienceSetting();
|
ExperienceSetting experienceSetting = getExperienceSetting();
|
||||||
//赠送会员经验值
|
//赠送会员经验值
|
||||||
memberService.updateMemberExperience(Long.valueOf(experienceSetting.getComment().longValue()), true, memberEvaluation.getMemberId(), "会员评价,赠送经验值" + experienceSetting.getComment());
|
memberService.updateMemberPoint(Long.valueOf(experienceSetting.getComment().longValue()), PointTypeEnum.INCREASE.name(), memberEvaluation.getMemberId(), "会员评价,赠送经验值" + experienceSetting.getComment());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,7 +86,7 @@ public class MemberExperienceExecute implements MemberRegisterEvent, GoodsCommen
|
|||||||
//计算赠送经验值数量
|
//计算赠送经验值数量
|
||||||
Double point = CurrencyUtil.mul(experienceSetting.getMoney(), order.getFlowPrice(), 0);
|
Double point = CurrencyUtil.mul(experienceSetting.getMoney(), order.getFlowPrice(), 0);
|
||||||
//赠送会员经验值
|
//赠送会员经验值
|
||||||
memberService.updateMemberExperience(point.longValue(), true, order.getMemberId(), "会员下单,赠送经验值" + point + "分");
|
memberService.updateMemberPoint(point.longValue(), PointTypeEnum.INCREASE.name(), order.getMemberId(), "会员下单,赠送经验值" + point + "分");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,6 +10,7 @@ import cn.lili.event.MemberRegisterEvent;
|
|||||||
import cn.lili.event.OrderStatusChangeEvent;
|
import cn.lili.event.OrderStatusChangeEvent;
|
||||||
import cn.lili.modules.member.entity.dos.Member;
|
import cn.lili.modules.member.entity.dos.Member;
|
||||||
import cn.lili.modules.member.entity.dos.MemberEvaluation;
|
import cn.lili.modules.member.entity.dos.MemberEvaluation;
|
||||||
|
import cn.lili.modules.member.entity.enums.PointTypeEnum;
|
||||||
import cn.lili.modules.member.service.MemberService;
|
import cn.lili.modules.member.service.MemberService;
|
||||||
import cn.lili.modules.order.order.entity.dos.AfterSale;
|
import cn.lili.modules.order.order.entity.dos.AfterSale;
|
||||||
import cn.lili.modules.order.order.entity.dos.Order;
|
import cn.lili.modules.order.order.entity.dos.Order;
|
||||||
@ -61,7 +62,7 @@ public class MemberPointExecute implements MemberRegisterEvent, GoodsCommentComp
|
|||||||
//获取积分设置
|
//获取积分设置
|
||||||
PointSetting pointSetting = getPointSetting();
|
PointSetting pointSetting = getPointSetting();
|
||||||
//赠送会员积分
|
//赠送会员积分
|
||||||
memberService.updateMemberPoint(Long.valueOf(pointSetting.getRegister().longValue()), true, member.getId(), "会员注册,赠送积分" + pointSetting.getRegister() + "分");
|
memberService.updateMemberPoint(Long.valueOf(pointSetting.getRegister().longValue()), PointTypeEnum.INCREASE.name(), member.getId(), "会员注册,赠送积分" + pointSetting.getRegister() + "分");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -74,7 +75,7 @@ public class MemberPointExecute implements MemberRegisterEvent, GoodsCommentComp
|
|||||||
//获取积分设置
|
//获取积分设置
|
||||||
PointSetting pointSetting = getPointSetting();
|
PointSetting pointSetting = getPointSetting();
|
||||||
//赠送会员积分
|
//赠送会员积分
|
||||||
memberService.updateMemberPoint(Long.valueOf(pointSetting.getComment().longValue()), true, memberEvaluation.getMemberId(), "会员评价,赠送积分" + pointSetting.getComment() + "分");
|
memberService.updateMemberPoint(Long.valueOf(pointSetting.getComment().longValue()), PointTypeEnum.INCREASE.name(), memberEvaluation.getMemberId(), "会员评价,赠送积分" + pointSetting.getComment() + "分");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -96,13 +97,13 @@ public class MemberPointExecute implements MemberRegisterEvent, GoodsCommentComp
|
|||||||
//计算赠送积分数量
|
//计算赠送积分数量
|
||||||
Double point = CurrencyUtil.mul(pointSetting.getMoney(), order.getFlowPrice(), 0);
|
Double point = CurrencyUtil.mul(pointSetting.getMoney(), order.getFlowPrice(), 0);
|
||||||
//赠送会员积分
|
//赠送会员积分
|
||||||
memberService.updateMemberPoint(point.longValue(), true, order.getMemberId(), "会员下单,赠送积分" + point + "分");
|
memberService.updateMemberPoint(point.longValue(), PointTypeEnum.INCREASE.name(), order.getMemberId(), "会员下单,赠送积分" + point + "分");
|
||||||
//取消订单恢复积分
|
//取消订单恢复积分
|
||||||
} else if (orderMessage.getNewStatus().equals(OrderStatusEnum.CANCELLED)) {
|
} else if (orderMessage.getNewStatus().equals(OrderStatusEnum.CANCELLED)) {
|
||||||
//根据订单编号获取订单数据,如果为积分订单则跳回
|
//根据订单编号获取订单数据,如果为积分订单则跳回
|
||||||
Order order = orderService.getBySn(orderMessage.getOrderSn());
|
Order order = orderService.getBySn(orderMessage.getOrderSn());
|
||||||
if (order.getOrderPromotionType().equals(OrderPromotionTypeEnum.POINTS.name()) && order.getPriceDetailDTO().getPayPoint() != null) {
|
if (order.getOrderPromotionType().equals(OrderPromotionTypeEnum.POINTS.name()) && order.getPriceDetailDTO().getPayPoint() != null) {
|
||||||
memberService.updateMemberPoint(Convert.toLong(order.getPriceDetailDTO().getPayPoint()), true, order.getMemberId(), "订单取消,恢复积分:" + order.getPriceDetailDTO().getPayPoint() + "分");
|
memberService.updateMemberPoint(Convert.toLong(order.getPriceDetailDTO().getPayPoint()), PointTypeEnum.INCREASE.name(), order.getMemberId(), "订单取消,恢复积分:" + order.getPriceDetailDTO().getPayPoint() + "分");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -120,7 +121,7 @@ public class MemberPointExecute implements MemberRegisterEvent, GoodsCommentComp
|
|||||||
//计算扣除积分数量
|
//计算扣除积分数量
|
||||||
Double point = CurrencyUtil.mul(pointSetting.getMoney(), afterSale.getActualRefundPrice(), 0);
|
Double point = CurrencyUtil.mul(pointSetting.getMoney(), afterSale.getActualRefundPrice(), 0);
|
||||||
//扣除会员积分
|
//扣除会员积分
|
||||||
memberService.updateMemberPoint(point.longValue(), false, afterSale.getMemberId(), "会员退款,扣除积分" + point + "分");
|
memberService.updateMemberPoint(point.longValue(), PointTypeEnum.REDUCE.name(), afterSale.getMemberId(), "会员退款,回退积分" + point + "分");
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import cn.lili.event.*;
|
|||||||
import cn.lili.modules.member.entity.dto.MemberPointMessage;
|
import cn.lili.modules.member.entity.dto.MemberPointMessage;
|
||||||
import cn.lili.modules.member.entity.dto.MemberWithdrawalMessage;
|
import cn.lili.modules.member.entity.dto.MemberWithdrawalMessage;
|
||||||
import cn.lili.modules.member.entity.enums.MemberWithdrawalDestinationEnum;
|
import cn.lili.modules.member.entity.enums.MemberWithdrawalDestinationEnum;
|
||||||
|
import cn.lili.modules.member.entity.enums.PointTypeEnum;
|
||||||
import cn.lili.modules.member.entity.enums.WithdrawStatusEnum;
|
import cn.lili.modules.member.entity.enums.WithdrawStatusEnum;
|
||||||
import cn.lili.modules.message.entity.dto.NoticeMessageDTO;
|
import cn.lili.modules.message.entity.dto.NoticeMessageDTO;
|
||||||
import cn.lili.modules.message.entity.enums.NoticeMessageNodeEnum;
|
import cn.lili.modules.message.entity.enums.NoticeMessageNodeEnum;
|
||||||
@ -160,7 +161,7 @@ public class NoticeMessageExecute implements TradeEvent, OrderStatusChangeEvent,
|
|||||||
NoticeMessageDTO noticeMessageDTO = new NoticeMessageDTO();
|
NoticeMessageDTO noticeMessageDTO = new NoticeMessageDTO();
|
||||||
noticeMessageDTO.setMemberId(memberPointMessage.getMemberId());
|
noticeMessageDTO.setMemberId(memberPointMessage.getMemberId());
|
||||||
Map<String, String> params = new HashMap<>(2);
|
Map<String, String> params = new HashMap<>(2);
|
||||||
if (memberPointMessage.getType()) {
|
if (memberPointMessage.getType().equals(PointTypeEnum.INCREASE.name())) {
|
||||||
params.put("expenditure_points", "0");
|
params.put("expenditure_points", "0");
|
||||||
params.put("income_points", memberPointMessage.getPoint().toString());
|
params.put("income_points", memberPointMessage.getPoint().toString());
|
||||||
} else {
|
} else {
|
||||||
|
@ -41,9 +41,9 @@ public class PointLogInterceptor {
|
|||||||
point = Long.valueOf(obj[0].toString());
|
point = Long.valueOf(obj[0].toString());
|
||||||
}
|
}
|
||||||
//变动类型
|
//变动类型
|
||||||
Boolean type = false;
|
String type = PointTypeEnum.INCREASE.name();
|
||||||
if (obj[1] != null) {
|
if (obj[1] != null) {
|
||||||
type = Boolean.valueOf(obj[1].toString());
|
type = obj[1].toString();
|
||||||
}
|
}
|
||||||
//会员ID
|
//会员ID
|
||||||
String memberId = "";
|
String memberId = "";
|
||||||
@ -56,10 +56,15 @@ public class PointLogInterceptor {
|
|||||||
MemberPointsHistory memberPointsHistory = new MemberPointsHistory();
|
MemberPointsHistory memberPointsHistory = new MemberPointsHistory();
|
||||||
memberPointsHistory.setMemberId(member.getId());
|
memberPointsHistory.setMemberId(member.getId());
|
||||||
memberPointsHistory.setMemberName(member.getUsername());
|
memberPointsHistory.setMemberName(member.getUsername());
|
||||||
memberPointsHistory.setPointType(type ? PointTypeEnum.INCREASE.name() : PointTypeEnum.REDUCE.name());
|
memberPointsHistory.setPointType(type);
|
||||||
|
|
||||||
memberPointsHistory.setVariablePoint(point);
|
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.setPoint(member.getPoint());
|
||||||
memberPointsHistory.setContent(obj[3] == null ? "" : obj[3].toString());
|
memberPointsHistory.setContent(obj[3] == null ? "" : obj[3].toString());
|
||||||
memberPointsHistory.setCreateBy("系统");
|
memberPointsHistory.setCreateBy("系统");
|
||||||
|
@ -46,7 +46,7 @@ public class Member extends BaseEntity {
|
|||||||
private Integer sex;
|
private Integer sex;
|
||||||
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
@ApiModelProperty(value = "会员生日")
|
@ApiModelProperty(value = "会员生日")
|
||||||
private Date birthday;
|
private Date birthday;
|
||||||
|
|
||||||
@ -64,6 +64,10 @@ public class Member extends BaseEntity {
|
|||||||
@ApiModelProperty(value = "积分数量")
|
@ApiModelProperty(value = "积分数量")
|
||||||
private Long point;
|
private Long point;
|
||||||
|
|
||||||
|
@Min(message = "必须为数字", value = 0)
|
||||||
|
@ApiModelProperty(value = "积分总数量")
|
||||||
|
private Long totalPoint;
|
||||||
|
|
||||||
@ApiModelProperty(value = "会员头像")
|
@ApiModelProperty(value = "会员头像")
|
||||||
private String face;
|
private String face;
|
||||||
|
|
||||||
@ -103,6 +107,7 @@ public class Member extends BaseEntity {
|
|||||||
this.haveStore = false;
|
this.haveStore = false;
|
||||||
this.sex = 0;
|
this.sex = 0;
|
||||||
this.point = 0L;
|
this.point = 0L;
|
||||||
|
this.totalPoint = 0L;
|
||||||
this.lastLoginDate = new Date();
|
this.lastLoginDate = new Date();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,6 +121,7 @@ public class Member extends BaseEntity {
|
|||||||
this.face = face;
|
this.face = face;
|
||||||
this.sex = 0;
|
this.sex = 0;
|
||||||
this.point = 0L;
|
this.point = 0L;
|
||||||
|
this.totalPoint = 0L;
|
||||||
this.lastLoginDate = new Date();
|
this.lastLoginDate = new Date();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -129,6 +135,7 @@ public class Member extends BaseEntity {
|
|||||||
this.face = face;
|
this.face = face;
|
||||||
this.sex = sex;
|
this.sex = sex;
|
||||||
this.point = 0L;
|
this.point = 0L;
|
||||||
|
this.totalPoint = 0L;
|
||||||
this.lastLoginDate = new Date();
|
this.lastLoginDate = new Date();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ public class MemberPointsHistory {
|
|||||||
@ApiModelProperty(value = "消费之前积分")
|
@ApiModelProperty(value = "消费之前积分")
|
||||||
private Long beforePoint;
|
private Long beforePoint;
|
||||||
|
|
||||||
@ApiModelProperty(value = "消费积分")
|
@ApiModelProperty(value = "变动积分")
|
||||||
private Long variablePoint;
|
private Long variablePoint;
|
||||||
|
|
||||||
@ApiModelProperty(value = "content")
|
@ApiModelProperty(value = "content")
|
||||||
@ -76,7 +76,7 @@ public class MemberPointsHistory {
|
|||||||
/**
|
/**
|
||||||
* @see cn.lili.modules.member.entity.enums.PointTypeEnum
|
* @see cn.lili.modules.member.entity.enums.PointTypeEnum
|
||||||
*/
|
*/
|
||||||
@ApiModelProperty(value = "消费积分类型")
|
@ApiModelProperty(value = "积分类型")
|
||||||
private String pointType;
|
private String pointType;
|
||||||
|
|
||||||
}
|
}
|
@ -16,7 +16,7 @@ public class MemberPointMessage {
|
|||||||
private Long point;
|
private Long point;
|
||||||
|
|
||||||
@ApiModelProperty(value = "是否增加积分")
|
@ApiModelProperty(value = "是否增加积分")
|
||||||
private Boolean type;
|
private String type;
|
||||||
|
|
||||||
@ApiModelProperty(value = "会员id")
|
@ApiModelProperty(value = "会员id")
|
||||||
private String memberId;
|
private String memberId;
|
||||||
|
@ -12,11 +12,15 @@ import lombok.Data;
|
|||||||
@Data
|
@Data
|
||||||
public class MemberPointsHistoryVO {
|
public class MemberPointsHistoryVO {
|
||||||
|
|
||||||
@ApiModelProperty(value = "积分总数")
|
@ApiModelProperty(value = "当前会员积分")
|
||||||
private Long point;
|
private Long point;
|
||||||
|
|
||||||
@ApiModelProperty(value = "未使用积分总数")
|
@ApiModelProperty(value = "累计获得积分")
|
||||||
private Long variablePoint;
|
private Long totalPoint;
|
||||||
|
|
||||||
|
|
||||||
|
public MemberPointsHistoryVO(){
|
||||||
|
this.point = 0L;
|
||||||
|
this.totalPoint = 0L;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -178,23 +178,13 @@ public interface MemberService extends IService<Member> {
|
|||||||
* 会员积分变动
|
* 会员积分变动
|
||||||
*
|
*
|
||||||
* @param point 变动积分
|
* @param point 变动积分
|
||||||
* @param type 是否增加积分 true 增加积分,反之扣减积分
|
* @param type 是否增加积分 INCREASE 增加 REDUCE 扣减
|
||||||
* @param memberId 会员id
|
* @param memberId 会员id
|
||||||
* @param content 变动日志
|
* @param content 变动日志
|
||||||
* @return 操作结果
|
* @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);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改会员状态
|
* 修改会员状态
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
package cn.lili.modules.member.serviceimpl;
|
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.entity.enums.PointTypeEnum;
|
||||||
|
import cn.lili.modules.member.service.MemberService;
|
||||||
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;
|
||||||
@ -12,6 +14,7 @@ import cn.lili.modules.member.service.MemberPointsHistoryService;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -24,25 +27,20 @@ import org.springframework.stereotype.Service;
|
|||||||
public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHistoryMapper, MemberPointsHistory> implements MemberPointsHistoryService {
|
public class MemberPointsHistoryServiceImpl extends ServiceImpl<MemberPointsHistoryMapper, MemberPointsHistory> implements MemberPointsHistoryService {
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private MemberService memberService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public MemberPointsHistoryVO getMemberPointsHistoryVO(String memberId) {
|
public MemberPointsHistoryVO getMemberPointsHistoryVO(String memberId) {
|
||||||
|
//获取会员积分历史
|
||||||
|
Member member = memberService.getById(memberId);
|
||||||
MemberPointsHistoryVO memberPointsHistoryVO = new MemberPointsHistoryVO();
|
MemberPointsHistoryVO memberPointsHistoryVO = new MemberPointsHistoryVO();
|
||||||
Long point = 0L;
|
if (member != null) {
|
||||||
Long variablePoint = 0L;
|
memberPointsHistoryVO.setPoint(member.getPoint());
|
||||||
|
memberPointsHistoryVO.setTotalPoint(member.getTotalPoint());
|
||||||
if (StringUtils.isNotEmpty(memberId)) {
|
return memberPointsHistoryVO;
|
||||||
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());
|
|
||||||
}
|
}
|
||||||
memberPointsHistoryVO.setPoint(point == null ? 0 : point);
|
return new MemberPointsHistoryVO();
|
||||||
memberPointsHistoryVO.setVariablePoint(variablePoint == null ? 0 : variablePoint);
|
|
||||||
memberPointsHistoryVO.setVariablePoint(memberPointsHistoryVO.getPoint() - memberPointsHistoryVO.getVariablePoint());
|
|
||||||
return memberPointsHistoryVO;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -7,6 +7,7 @@ import cn.lili.cache.CachePrefix;
|
|||||||
import cn.lili.common.enums.ResultCode;
|
import cn.lili.common.enums.ResultCode;
|
||||||
import cn.lili.common.enums.SwitchEnum;
|
import cn.lili.common.enums.SwitchEnum;
|
||||||
import cn.lili.common.exception.ServiceException;
|
import cn.lili.common.exception.ServiceException;
|
||||||
|
import cn.lili.modules.member.entity.enums.PointTypeEnum;
|
||||||
import cn.lili.mybatis.util.PageUtil;
|
import cn.lili.mybatis.util.PageUtil;
|
||||||
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
|
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
|
||||||
import cn.lili.rocketmq.tags.MemberTagsEnum;
|
import cn.lili.rocketmq.tags.MemberTagsEnum;
|
||||||
@ -376,21 +377,26 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> impleme
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@PointLogPoint
|
@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);
|
Member member = this.getById(memberId);
|
||||||
if (member != null) {
|
if (member != null) {
|
||||||
//积分变动后的会员积分
|
//积分变动后的会员积分
|
||||||
long currentPoint;
|
long currentPoint;
|
||||||
|
//会员总获得积分
|
||||||
|
long totalPoint = member.getTotalPoint();
|
||||||
//如果增加积分
|
//如果增加积分
|
||||||
if (type) {
|
if (type.equals(PointTypeEnum.INCREASE.name())) {
|
||||||
currentPoint = member.getPoint() + point;
|
currentPoint = member.getPoint() + point;
|
||||||
|
//如果是增加积分 需要增加总获得积分
|
||||||
|
totalPoint = totalPoint + point;
|
||||||
}
|
}
|
||||||
//否则扣除积分
|
//否则扣除积分
|
||||||
else {
|
else {
|
||||||
currentPoint = member.getPoint() - point < 0 ? 0 : member.getPoint() - point;
|
currentPoint = member.getPoint() - point < 0 ? 0 : member.getPoint() - point;
|
||||||
}
|
}
|
||||||
member.setPoint(currentPoint);
|
member.setPoint(currentPoint);
|
||||||
|
member.setTotalPoint(totalPoint);
|
||||||
Boolean result = this.updateById(member);
|
Boolean result = this.updateById(member);
|
||||||
if (result) {
|
if (result) {
|
||||||
//发送会员消息
|
//发送会员消息
|
||||||
@ -408,26 +414,6 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> impleme
|
|||||||
throw new ServiceException(ResultCode.USER_NOT_EXIST);
|
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
|
@Override
|
||||||
public Boolean updateMemberStatus(List<String> memberIds, Boolean status) {
|
public Boolean updateMemberStatus(List<String> memberIds, Boolean status) {
|
||||||
UpdateWrapper<Member> updateWrapper = Wrappers.update();
|
UpdateWrapper<Member> updateWrapper = Wrappers.update();
|
||||||
|
@ -2,6 +2,7 @@ package cn.lili.modules.member.serviceimpl;
|
|||||||
|
|
||||||
import cn.lili.common.enums.ResultCode;
|
import cn.lili.common.enums.ResultCode;
|
||||||
import cn.lili.common.exception.ServiceException;
|
import cn.lili.common.exception.ServiceException;
|
||||||
|
import cn.lili.modules.member.entity.enums.PointTypeEnum;
|
||||||
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
|
import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
|
||||||
import cn.lili.rocketmq.tags.MemberTagsEnum;
|
import cn.lili.rocketmq.tags.MemberTagsEnum;
|
||||||
import cn.lili.common.security.AuthUser;
|
import cn.lili.common.security.AuthUser;
|
||||||
@ -66,8 +67,8 @@ public class MemberSignServiceImpl extends ServiceImpl<MemberSignMapper, MemberS
|
|||||||
AuthUser authUser = UserContext.getCurrentUser();
|
AuthUser authUser = UserContext.getCurrentUser();
|
||||||
if (authUser != null) {
|
if (authUser != null) {
|
||||||
QueryWrapper<MemberSign> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<MemberSign> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.eq("member_id",authUser.getId());
|
queryWrapper.eq("member_id", authUser.getId());
|
||||||
queryWrapper.between("create_time",new Date(DateUtil.startOfTodDay()*1000),DateUtil.getCurrentDayEndTime());
|
queryWrapper.between("create_time", new Date(DateUtil.startOfTodDay() * 1000), DateUtil.getCurrentDayEndTime());
|
||||||
//校验今天是否已经签到
|
//校验今天是否已经签到
|
||||||
List<MemberSign> todaySigns = this.baseMapper.getTodayMemberSign(queryWrapper);
|
List<MemberSign> todaySigns = this.baseMapper.getTodayMemberSign(queryWrapper);
|
||||||
if (todaySigns.size() > 0) {
|
if (todaySigns.size() > 0) {
|
||||||
@ -139,10 +140,10 @@ public class MemberSignServiceImpl extends ServiceImpl<MemberSignMapper, MemberS
|
|||||||
content = "会员签到第" + day + "天,赠送积分" + point + "分";
|
content = "会员签到第" + day + "天,赠送积分" + point + "分";
|
||||||
}
|
}
|
||||||
//赠送会员积分
|
//赠送会员积分
|
||||||
memberService.updateMemberPoint(point, true, memberId, content);
|
memberService.updateMemberPoint(point, PointTypeEnum.INCREASE.name(), memberId, content);
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("会员签到错误",e);
|
log.error("会员签到错误", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -156,3 +156,6 @@ INSERT INTO `li_menu` VALUES (1410862675914764290, 'admin', '2021-07-02 15:27:29
|
|||||||
INSERT INTO `li_menu` VALUES (1419926569920536578, 'admin', '2021-07-27 15:44:10', b'0', 'admin', '2021-07-27 16:07:10', NULL, 'customWords/index', NULL, 2, 'customWords', '1367050250249830400', 'customWords', 4.00, 'ES分词', NULL, '/manager/manager/custom-words*');
|
INSERT INTO `li_menu` VALUES (1419926569920536578, 'admin', '2021-07-27 15:44:10', b'0', 'admin', '2021-07-27 16:07:10', NULL, 'customWords/index', NULL, 2, 'customWords', '1367050250249830400', 'customWords', 4.00, 'ES分词', NULL, '/manager/manager/custom-words*');
|
||||||
COMMIT;
|
COMMIT;
|
||||||
SET FOREIGN_KEY_CHECKS = 1;
|
SET FOREIGN_KEY_CHECKS = 1;
|
||||||
|
|
||||||
|
/** 新增会员获的总积分 **/
|
||||||
|
ALTER TABLE li_member ADD total_point bigint ( 20 ) DEFAULT 0 COMMENT '积分总数量';
|
Loading…
x
Reference in New Issue
Block a user