From aa3d6de962edd525824c81bfa7173e0a3c394b1f Mon Sep 17 00:00:00 2001 From: sonjinyon <2476687577@qq.com> Date: Fri, 25 Oct 2024 15:51:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E7=A7=AF=E5=88=86=E5=95=86?= =?UTF-8?q?=E5=9F=8E=EF=BC=8C=E6=88=91=E7=9A=84=E7=A7=AF=E5=88=86=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=98=BE=E7=A4=BA=EF=BC=8C=E5=85=91=E6=8D=A2=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/mysql/order/TradeOrderMapper.java | 4 ++-- .../point/AppMemberPointRecordController.java | 11 ++++++++++ .../dataobject/point/MemberPointRecordDO.java | 10 ++++++++++ .../point/MemberPointRecordService.java | 2 ++ .../point/MemberPointRecordServiceImpl.java | 20 +++++++++++++++++++ 5 files changed, 45 insertions(+), 2 deletions(-) diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java index e714837..55492e5 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java @@ -132,10 +132,10 @@ public interface TradeOrderMapper extends BaseMapperX { return selectList(wrapperX); } - @Select(" SELECT a.status,d.label,a.create_time,a.pay_price,a.use_point,c.name,c.pic_url,b.count FROM trade_order a " + + @Select(" SELECT a.id,a.status,d.label,a.create_time,a.pay_price,a.use_point,c.name,c.pic_url,b.count FROM trade_order a " + " inner join trade_order_item b on a.id = b.order_id " + " inner join (SELECT sort, label, value, dict_type, css_class FROM system_dict_data WHERE dict_type = 'trade_order_status') d on d.sort = a.status "+ " inner join product_spu c on b.spu_id = c.id " + - " where a.user_id = #{userId} and a.use_point > 0 order by a.create_time ASC ") + " where a.user_id = #{userId} and a.use_point > 0 order by a.create_time DESC ") List getPointOrder(Long userId); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/point/AppMemberPointRecordController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/point/AppMemberPointRecordController.java index 3871b54..762a3a4 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/point/AppMemberPointRecordController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/point/AppMemberPointRecordController.java @@ -41,4 +41,15 @@ public class AppMemberPointRecordController { return success(BeanUtils.toBean(pageResult, AppMemberPointRecordRespVO.class)); } + + + @GetMapping("/getPointInfo") + public CommonResult getPointInfo() { + MemberPointRecordDO pointInfo = pointRecordService.getPointInfo(getLoginUserId()); + return success(pointInfo); + } + + + + } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointRecordDO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointRecordDO.java index f884f08..de5a731 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointRecordDO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/point/MemberPointRecordDO.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.member.dal.dataobject.point; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; import cn.iocoder.yudao.module.member.enums.point.MemberPointBizTypeEnum; import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; @@ -66,4 +67,13 @@ public class MemberPointRecordDO extends BaseDO { */ private Integer totalPoint; + + //总共获得的积分 + @TableField(exist = false) + private Integer addUp; + + //总共消费的积分 + @TableField(exist = false) + private Integer reduce; + } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordService.java index 7e660d5..493c38b 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordService.java @@ -39,4 +39,6 @@ public interface MemberPointRecordService { * @param bizId 业务编号 */ void createPointRecord(Long userId, Integer point, MemberPointBizTypeEnum bizType, String bizId); + + MemberPointRecordDO getPointInfo(Long userId); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordServiceImpl.java index d21c7bf..91de488 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/point/MemberPointRecordServiceImpl.java @@ -92,4 +92,24 @@ public class MemberPointRecordServiceImpl implements MemberPointRecordService { memberPointRecordMapper.insert(record); } + @Override + public MemberPointRecordDO getPointInfo(Long userId) { + List memberPointRecordDOList = memberPointRecordMapper.selectList("user_id", userId); + Integer addUp = 0; + Integer reduce = 0; + for (int i = 0; i < memberPointRecordDOList.size(); i++) { + MemberPointRecordDO memberPointRecordDO = memberPointRecordDOList.get(i); + if (memberPointRecordDO.getPoint() > 0){ //获得积分 + addUp = addUp + memberPointRecordDO.getPoint(); + } + if (memberPointRecordDO.getPoint() < 0){ //消费积分 + reduce = reduce + memberPointRecordDO.getPoint(); + } + } + MemberPointRecordDO memberPointRecordDO = new MemberPointRecordDO(); + memberPointRecordDO.setAddUp(addUp); + memberPointRecordDO.setReduce(reduce); + return memberPointRecordDO; + } + }