From 6965d18f9bcf9afedd03d200ee4d778ae3712cd8 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 13 May 2025 17:56:03 +0800
Subject: [PATCH] feat(mall): 添加会员流水明细接口

---
 src/main/java/cc/mrbird/febs/mall/dto/ApiMoneyFlowDto.java                       |   22 +++++++++++
 src/main/java/cc/mrbird/febs/mall/controller/member/ApiMallMemberController.java |    9 ++++
 src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java                          |    2 
 src/main/resources/mapper/modules/MallMoneyFlowMapper.xml                        |   18 +++++++++
 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java             |    2 +
 src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java                |    8 ++--
 src/main/java/cc/mrbird/febs/mall/vo/ApiMoneyFlowVo.java                         |   28 ++++++++++++++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java     |    9 ++++
 8 files changed, 93 insertions(+), 5 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/member/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/member/ApiMallMemberController.java
index e79a5db..b877d7e 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/member/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/member/ApiMallMemberController.java
@@ -89,6 +89,15 @@
         return memberService.teamList(teamListDto);
     }
 
+    @ApiOperation(value = "积分明细,余额明细,佣金明细,会员经验明细")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = ApiMoneyFlowVo.class)
+    })
+    @PostMapping(value = "/flowList")
+    public FebsResponse flowList(@RequestBody ApiMoneyFlowDto dto) {
+        return memberService.flowList(dto);
+    }
+
 
     @ApiOperation(value = "资金流水列表")
     @ApiResponses({
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/ApiMoneyFlowDto.java b/src/main/java/cc/mrbird/febs/mall/dto/ApiMoneyFlowDto.java
new file mode 100644
index 0000000..35aede7
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/ApiMoneyFlowDto.java
@@ -0,0 +1,22 @@
+package cc.mrbird.febs.mall.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ApiMoneyFlowDto", description = "参数接收类")
+public class ApiMoneyFlowDto {
+
+    @ApiModelProperty(value = "一页多少个", example = "10")
+    private Integer pageSize;
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private Integer pageNum;
+
+    @ApiModelProperty(value = "流水类型 1-余额明细 2-会员经验明细 3-积分明细 4-佣金明细")
+    private Integer flowType;
+
+    @ApiModelProperty(hidden = true)
+    private Long memberId;
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java b/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java
index ec2be7d..e85e562 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java
@@ -25,7 +25,7 @@
     @ApiModelProperty(value = "类型 1-全部 2-支出 3-收入")
     private Integer inOrOut;
 
-    @ApiModelProperty(value = "流水类型 1-余额 2-赠送积分 3-积分 4-佣金")
+    @ApiModelProperty(value = "流水类型 1-余额 2-会员经验 3-折扣积分 4-佣金")
     private Integer flowType;
 
     @ApiModelProperty(hidden = true)
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java
index 2ac996c..69f3066 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java
@@ -1,14 +1,12 @@
 package cc.mrbird.febs.mall.mapper;
 
+import cc.mrbird.febs.mall.dto.ApiMoneyFlowDto;
 import cc.mrbird.febs.mall.dto.MoneyChargeListDto;
 import cc.mrbird.febs.mall.dto.MoneyFlowDto;
 import cc.mrbird.febs.mall.dto.MoneyFlowListDto;
 import cc.mrbird.febs.mall.entity.MallMember;
 import cc.mrbird.febs.mall.entity.MallMoneyFlow;
-import cc.mrbird.febs.mall.vo.AdminMallMoneyFlowVo;
-import cc.mrbird.febs.mall.vo.AdminMoneyChargeListVo;
-import cc.mrbird.febs.mall.vo.AdminMoneyFlowListVo;
-import cc.mrbird.febs.mall.vo.MoneyFlowVo;
+import cc.mrbird.febs.mall.vo.*;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -43,4 +41,6 @@
     BigDecimal selectAmountByFlowtypeAndType(@Param("memberId")Long memberId,@Param("flowType")Integer flowType,
                                              @Param("type")Integer type, @Param("status")Integer status,
                                              @Param("dateDay") Date DateTime,@Param("dateMonth") Date dateMonth);
+
+    IPage<ApiMoneyFlowVo> selectFlowInPage(IPage<ApiMoneyFlowVo> page, @Param("record")ApiMoneyFlowDto dto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
index 6539dfc..e323d71 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -115,4 +115,6 @@
     FebsResponse authList();
 
     FebsResponse authDel(ApiDoctorAuthDeleteDto dto);
+
+    FebsResponse flowList(ApiMoneyFlowDto dto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
index f37ac73..4510ac0 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -1501,6 +1501,15 @@
         return new FebsResponse().success().message("操作成功");
     }
 
+    @Override
+    public FebsResponse flowList(ApiMoneyFlowDto dto) {
+        Long id = LoginUserUtil.getLoginUser().getId();
+        IPage<ApiMoneyFlowVo> page = new Page<>(dto.getPageNum(), dto.getPageSize());
+        dto.setMemberId(id);
+        IPage<ApiMoneyFlowVo> pages = mallMoneyFlowMapper.selectFlowInPage(page, dto);
+        return new FebsResponse().success().data(pages);
+    }
+
     public static void main(String[] args) {
         Long userld = 16425L;
         String shopAccount = "爱和美医疗";
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/ApiMoneyFlowVo.java b/src/main/java/cc/mrbird/febs/mall/vo/ApiMoneyFlowVo.java
new file mode 100644
index 0000000..65b9cf0
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/vo/ApiMoneyFlowVo.java
@@ -0,0 +1,28 @@
+package cc.mrbird.febs.mall.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@ApiModel(value = "ApiMoneyFlowVo", description = "信息返回类")
+public class ApiMoneyFlowVo {
+
+    @ApiModelProperty(value = "金额,有正负")
+    private BigDecimal amount;
+
+    @ApiModelProperty(value = "提现状态 1-提现中2-成功 3-拒绝")
+    private Integer status;
+
+    @ApiModelProperty(value = "时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createdTime;
+
+    @ApiModelProperty(value = "描述")
+    private String remark;
+
+}
diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index 6840259..471ffd0 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -166,4 +166,22 @@
             </if>
         </where>
     </select>
+
+
+
+    <select id="selectFlowInPage" resultType="cc.mrbird.febs.mall.vo.ApiMoneyFlowVo">
+        select
+               a.amount amount,
+               a.status status,
+               a.CREATED_TIME createdTime,
+               a.remark remark
+        from mall_money_flow a
+        <where>
+            and a.member_id = #{record.memberId}
+            <if test="record.flowType!=null and record.flowType!=''">
+                and  a.flow_type = #{record.flowType}
+            </if>
+        </where>
+        order by a.CREATED_TIME desc
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1