From deaf2b0b4ada3689e235754b61c9c34133c00157 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 27 Apr 2022 16:48:37 +0800
Subject: [PATCH] add member center some interface

---
 src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java              |    3 
 src/main/java/cc/mrbird/febs/mall/entity/MallMoneyFlow.java                    |    7 +
 src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java                 |    3 
 src/main/resources/mapper/modules/MallMemberMapper.xml                         |   19 +++
 src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java                        |    3 
 src/main/resources/application-prod.yml                                        |    2 
 src/main/resources/mapper/modules/MallOrderInfoMapper.xml                      |    5 
 src/main/java/cc/mrbird/febs/mall/vo/MoneyFlowVo.java                          |    2 
 src/main/java/cc/mrbird/febs/mall/entity/MallMemberWallet.java                 |   15 ++
 src/main/resources/application-test.yml                                        |    2 
 src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java           |    3 
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java |    2 
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java   |   45 ++++++
 src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeEnum.java          |   50 +++++---
 src/main/java/cc/mrbird/febs/mall/vo/MallMemberVo.java                         |   10 +
 src/main/java/cc/mrbird/febs/mall/entity/MallMember.java                       |    6 +
 src/main/java/cc/mrbird/febs/mall/dto/WithdrawalDto.java                       |    6 +
 src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java      |    6 +
 src/main/java/cc/mrbird/febs/mall/dto/RankListDto.java                         |   21 +++
 src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java           |    4 
 src/main/java/cc/mrbird/febs/mall/quartz/ProfitJob.java                        |   68 +++++-----
 src/main/resources/application-dev.yml                                         |    2 
 src/main/java/cc/mrbird/febs/mall/vo/RankListVo.java                           |   31 +++++
 src/main/resources/mapper/modules/MallMoneyFlowMapper.xml                      |    3 
 24 files changed, 254 insertions(+), 64 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeEnum.java
index 594e957..7f28442 100644
--- a/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeEnum.java
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeEnum.java
@@ -3,48 +3,62 @@
 import lombok.Getter;
 
 /**
+ *
+ * 1-静态收益 2-动态收益 3-代理收益 4-排名收益 5-董事收益 6-社区点补 7-推荐人收益 8-提现 9-转增 10-支付 11-退款
  * @author wzy
  * @date 2021-09-24
- * 1-分红收入 2-业绩奖励 3-订单支付 4-退款 5-转账
  **/
 @Getter
 public enum MoneyFlowTypeEnum {
     /**
-     * 直推奖励
+     * 静态收益
      */
-    BONUS(1),
+    STATIC_BONUS(1),
     /**
-     * 团队奖励
+     * 动态收益
      */
-    ACHIEVE(2),
+    DYNAMIC_ACHIEVE(2),
+
     /**
-     * 支付
+     * 代理收益
      */
-    PAY(3),
+    AGENT_BONUS(3),
+
     /**
-     * 退款
+     * 排名收益
      */
-    REFUND(4),
+    RANK_BONUS(4),
+
     /**
-     * 转账
+     * 董事收益
      */
-    TRANSFER(5),
+    DIRECTOR_BONUS(5),
+
+    /**
+     * 社区店补
+     */
+    COMMUNITY_BONUS(6),
+
+    /**
+     * 推荐人收益
+     */
+    RECOMMEND_BONUS(7),
     /**
      * 提现
      */
-    WITHDRAWAL(6),
+    WITHDRAWAL(8),
     /**
-     * 排名奖励
+     * 转账
      */
-    RANK(7),
+    TRANSFER(9),
     /**
-     * 利润分红
+     * 支付
      */
-    PARENT_BONUS(8),
+    PAY(10),
     /**
-     * 系统拨付
+     * 退款
      */
-    SYSTEM_PAY(9);
+    REFUND(11);
 
     private final int value;
 
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
index e0f8a44..5ad31a7 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -122,4 +122,10 @@
     public FebsResponse canWithdrawal() {
         return new FebsResponse().success().data(memberService.canMoney());
     }
+
+    @ApiOperation(value = "用户消费排名")
+    @PostMapping(value = "/findRankList")
+    public FebsResponse findRankList(@RequestBody RankListDto rankListDto) {
+        return new FebsResponse().success().data(memberService.findRankList(rankListDto));
+    }
 }
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 1ceb0a8..a585553 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/MoneyFlowDto.java
@@ -21,6 +21,9 @@
     @ApiModelProperty(value = "类型 1-全部 2-支出 3-收入")
     private Integer type;
 
+    @ApiModelProperty(value = "流水类型 1-余额 2-赠送积分 3-竞猜积分")
+    private Integer flowType;
+
     @ApiModelProperty(hidden = true)
     private Long memberId;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/RankListDto.java b/src/main/java/cc/mrbird/febs/mall/dto/RankListDto.java
new file mode 100644
index 0000000..651fcd1
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/RankListDto.java
@@ -0,0 +1,21 @@
+package cc.mrbird.febs.mall.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author wzy
+ * @date 2022-04-27
+ **/
+@Data
+@ApiModel(value = "RankListDto", description = "消费排名接口参数接收类")
+public class RankListDto {
+
+    @ApiModelProperty(value = "一页多少个", example = "10")
+    private Integer pageSize;
+
+    @ApiModelProperty(value = "页码", example = "1")
+    private Integer pageNum;
+
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/WithdrawalDto.java b/src/main/java/cc/mrbird/febs/mall/dto/WithdrawalDto.java
index c3524b0..f9aa0b6 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/WithdrawalDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/WithdrawalDto.java
@@ -25,4 +25,10 @@
     @NotBlank(message = "参数不能为空")
     @ApiModelProperty(value = "交易密码")
     private String tradePwd;
+
+    @ApiModelProperty(value = "银行卡号")
+    private String bankNo;
+
+    @ApiModelProperty(value = "姓名")
+    private String name;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
index 48086a1..5618bf6 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
@@ -109,4 +109,10 @@
     @TableField(exist = false)
     private BigDecimal balance;
 
+    @TableField(exist = false)
+    private BigDecimal amount;
+
+    @TableField(exist = false)
+    private String query;
+
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWallet.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWallet.java
index d7cdab9..937c248 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWallet.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallMemberWallet.java
@@ -23,4 +23,19 @@
      * 余额
      */
     private BigDecimal balance;
+
+    /**
+     * 积分
+     */
+    private BigDecimal score;
+
+    /**
+     * 累计积分
+     */
+    private BigDecimal totalScore;
+
+    /**
+     * 抽奖积分
+     */
+    private BigDecimal prizeScore;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallMoneyFlow.java b/src/main/java/cc/mrbird/febs/mall/entity/MallMoneyFlow.java
index 334f1ef..0c0af91 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallMoneyFlow.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallMoneyFlow.java
@@ -19,7 +19,7 @@
     private BigDecimal amount;
 
     /**
-     * 流水类型 1-直推奖励 2-团队奖励 3-订单支付 4-退款 5-转账 6-提现 7-排名奖励 8-利润分红
+     * 类型 1-静态收益 2-动态收益 3-代理收益 4-排名收益 5-董事收益 6-社区点补 7-推荐人收益 8-提现 9-转增
      */
     private Integer type;
 
@@ -41,4 +41,9 @@
      */
     private Integer isReturn;
     public static final Integer IS_RETURN_Y = 1;
+
+    /**
+     * 流水类型 1-余额 2-赠送积分 3-竞猜积分
+     */
+    private Integer flowType;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
index 6871415..2a7731e 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
@@ -3,6 +3,7 @@
 import cc.mrbird.febs.mall.dto.AgentDto;
 import cc.mrbird.febs.mall.dto.AgentLevelDto;
 import cc.mrbird.febs.mall.dto.RankAwardDto;
+import cc.mrbird.febs.mall.dto.RankListDto;
 import cc.mrbird.febs.mall.entity.AppVersion;
 import cc.mrbird.febs.mall.entity.MallMember;
 import cc.mrbird.febs.mall.vo.*;
@@ -69,4 +70,6 @@
     AdminAgentLevelSetInfoVo getAgentLevelSetInfoByMemberId(@Param("id")long id);
 
     IPage<MallDataVo> getMallDataListInPage(Page<MallDataVo> page,  @Param("record")MallMember mallMember);
+
+    IPage<MallMember> selectRankListInPage(IPage<MallMember> page, @Param("record") MallMember mallMember);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
index 3a29899..cb64ee0 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
@@ -12,6 +12,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 
@@ -42,4 +43,6 @@
     Integer selectCntDirectOrTeam(@Param("type") Integer type, @Param("inviteId") String inviteId);
 
     Integer selectCntDirect(@Param("inviteId") String inviteId);
+
+    BigDecimal selectTotalAmount(@Param("memberId") Long memberId);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/quartz/ProfitJob.java b/src/main/java/cc/mrbird/febs/mall/quartz/ProfitJob.java
index b223c47..87984f8 100644
--- a/src/main/java/cc/mrbird/febs/mall/quartz/ProfitJob.java
+++ b/src/main/java/cc/mrbird/febs/mall/quartz/ProfitJob.java
@@ -49,39 +49,39 @@
     @Transactional(rollbackFor = Exception.class)
     public void profitJob() {
         log.info("推荐人返利执行");
-        DateTime yesterday = DateUtil.yesterday();
-        List<MallMoneyFlow> flows = moneyFlowMapper.selectMoneyFlowProfitByDate(yesterday);
-
-        if (CollUtil.isEmpty(flows)) {
-            return;
-        }
-
-        for (MallMoneyFlow flow : flows) {
-            MallMember member = memberMapper.selectById(flow.getMemberId());
-
-            List<MallMember> child = memberMapper.selectByIdAndNoLevel(member.getInviteId(), AgentLevelEnum.ZERO_LEVEL.name());
-            if (CollUtil.isEmpty(child)) {
-                continue;
-            }
-            int size = child.size();
-            BigDecimal needReturn = flow.getAmount().multiply(BigDecimal.valueOf(0.1));
-
-            String orderNo = MallUtils.getOrderNum("R");
-            String remarkFormat = "{}, 用户:{}, 利润分红: {}";
-
-            BigDecimal returnMoney = needReturn.divide(BigDecimal.valueOf(size), 2, RoundingMode.DOWN);
-            for (MallMember mallMember : child) {
-                memberWalletService.addBalance(returnMoney, mallMember.getId());
-
-                String remark = StrUtil.format(remarkFormat, DateUtil.format(yesterday, "yyyy-MM-dd"), member.getName(), returnMoney);
-                memberService.addMoneyFlow(mallMember.getId(), returnMoney, MoneyFlowTypeEnum.PARENT_BONUS.getValue(), orderNo, null, remark, member.getId(), null);
-            }
-
-            String remark = StrUtil.format(remarkFormat, DateUtil.format(yesterday, "yyyy-MM-dd"), member.getName(), needReturn);
-            memberService.addMoneyFlow(member.getId(), needReturn.negate(), MoneyFlowTypeEnum.PARENT_BONUS.getValue(), orderNo, null, remark, null, null);
-            memberWalletService.reduceBalance(needReturn, member.getId());
-
-            moneyFlowMapper.updateIsReturnByMemberId(MallMoneyFlow.IS_RETURN_Y, flow.getMemberId());
-        }
+//        DateTime yesterday = DateUtil.yesterday();
+//        List<MallMoneyFlow> flows = moneyFlowMapper.selectMoneyFlowProfitByDate(yesterday);
+//
+//        if (CollUtil.isEmpty(flows)) {
+//            return;
+//        }
+//
+//        for (MallMoneyFlow flow : flows) {
+//            MallMember member = memberMapper.selectById(flow.getMemberId());
+//
+//            List<MallMember> child = memberMapper.selectByIdAndNoLevel(member.getInviteId(), AgentLevelEnum.ZERO_LEVEL.name());
+//            if (CollUtil.isEmpty(child)) {
+//                continue;
+//            }
+//            int size = child.size();
+//            BigDecimal needReturn = flow.getAmount().multiply(BigDecimal.valueOf(0.1));
+//
+//            String orderNo = MallUtils.getOrderNum("R");
+//            String remarkFormat = "{}, 用户:{}, 利润分红: {}";
+//
+//            BigDecimal returnMoney = needReturn.divide(BigDecimal.valueOf(size), 2, RoundingMode.DOWN);
+//            for (MallMember mallMember : child) {
+//                memberWalletService.addBalance(returnMoney, mallMember.getId());
+//
+//                String remark = StrUtil.format(remarkFormat, DateUtil.format(yesterday, "yyyy-MM-dd"), member.getName(), returnMoney);
+//                memberService.addMoneyFlow(mallMember.getId(), returnMoney, MoneyFlowTypeEnum.PARENT_BONUS.getValue(), orderNo, null, remark, member.getId(), null);
+//            }
+//
+//            String remark = StrUtil.format(remarkFormat, DateUtil.format(yesterday, "yyyy-MM-dd"), member.getName(), needReturn);
+//            memberService.addMoneyFlow(member.getId(), needReturn.negate(), MoneyFlowTypeEnum.PARENT_BONUS.getValue(), orderNo, null, remark, null, null);
+//            memberWalletService.reduceBalance(needReturn, member.getId());
+//
+//            moneyFlowMapper.updateIsReturnByMemberId(MallMoneyFlow.IS_RETURN_Y, flow.getMemberId());
+//        }
     }
 }
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 6295ea3..96b8c6c 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -7,6 +7,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 
 import java.math.BigDecimal;
+import java.util.List;
 
 public interface IApiMallMemberService extends IService<MallMember> {
     FebsResponse register(RegisterDto registerDto);
@@ -42,4 +43,6 @@
     void bindPhone(AccountAndCodeDto accountAndCodeDto);
 
     BigDecimal canMoney();
+
+    List<MallMember> findRankList(RankListDto rankListDto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index 1314ef0..5b4e315 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -405,7 +405,7 @@
         MallMoneyFlow flow = new MallMoneyFlow();
         flow.setMemberId(memberId);
         flow.setAmount(bigDecimal);
-        flow.setType(MoneyFlowTypeEnum.SYSTEM_PAY.getValue());
+//        flow.setType(MoneyFlowTypeEnum.SYSTEM_PAY.getValue());
         flow.setOrderNo("SYS"+MallUtils.getOrderNum());
         flow.setStatus(2);
         mallMoneyFlowMapper.insert(flow);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
index be30735..d2a96d2 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -173,7 +173,7 @@
         }
         memberWalletService.addBalance(returnMoney, parent.getId());
 
-        memberService.addMoneyFlow(parent.getId(), returnMoney, MoneyFlowTypeEnum.BONUS.getValue(), orderInfo.getOrderNo(), null, null, orderInfo.getMemberId(), null);
+//        memberService.addMoneyFlow(parent.getId(), returnMoney, MoneyFlowTypeEnum.BONUS.getValue(), orderInfo.getOrderNo(), null, null, orderInfo.getMemberId(), null);
     }
 
     /**
@@ -235,7 +235,7 @@
             for (Map.Entry<Long, BigDecimal> amount : entry.getValue().entrySet()) {
                 memberWalletService.addBalance(amount.getValue(), amount.getKey());
 
-                memberService.addMoneyFlow(amount.getKey(), amount.getValue(), MoneyFlowTypeEnum.ACHIEVE.getValue(), orderInfo.getOrderNo(), null, null, orderInfo.getMemberId(), null);
+//                memberService.addMoneyFlow(amount.getKey(), amount.getValue(), MoneyFlowTypeEnum.ACHIEVE.getValue(), orderInfo.getOrderNo(), null, null, orderInfo.getMemberId(), null);
             }
         }
     }
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 c5eb694..2631bd7 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
@@ -14,6 +14,7 @@
 import cc.mrbird.febs.mall.service.ICommonService;
 import cc.mrbird.febs.mall.vo.MallMemberVo;
 import cc.mrbird.febs.mall.vo.MoneyFlowVo;
+import cc.mrbird.febs.mall.vo.RankListVo;
 import cc.mrbird.febs.mall.vo.TeamListVo;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.IdUtil;
@@ -33,6 +34,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -229,6 +231,9 @@
         }
         MallMemberWallet wallet = mallMemberWalletMapper.selectWalletByMemberId(mallMemberVo.getId());
         mallMemberVo.setBalance(wallet.getBalance());
+        mallMemberVo.setScore(wallet.getScore());
+        mallMemberVo.setPrizeScore(wallet.getPrizeScore());
+        mallMemberVo.setTotalCost(mallOrderInfoMapper.selectTotalAmount(id));
         return new FebsResponse().success().data(mallMemberVo);
     }
 
@@ -383,10 +388,10 @@
             throw new FebsException("最小提现金额为100");
         }
 
-        MallMemberPayment payment = mallMemberPaymentMapper.selectByMemberId(memberId);
-        if (payment == null) {
-            throw new FebsException("未设置收款方式");
-        }
+//        MallMemberPayment payment = mallMemberPaymentMapper.selectByMemberId(memberId);
+//        if (payment == null) {
+//            throw new FebsException("未设置收款方式");
+//        }
 
         BigDecimal profit = mallMoneyFlowMapper.selectProfitByDateAndMemberId(memberId);
         MallMemberWallet wallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
@@ -452,4 +457,36 @@
         }
         return canMoney;
     }
+
+    @Override
+    public List<MallMember> findRankList(RankListDto rankListDto) {
+        IPage<MallMember> page = new Page<>(rankListDto.getPageNum(), rankListDto.getPageSize());
+
+        MallMember member = new MallMember();
+        member.setQuery("2");
+        member.setCreatedTime(new Date());
+        IPage<MallMember> list = this.baseMapper.selectRankListInPage(page, member);
+
+        List<MallMember> records = list.getRecords();
+        if (CollUtil.isNotEmpty(records)) {
+            BigDecimal amount = records.get(records.size() - 1).getAmount();
+            page.setSize(999);
+            member.setAmount(amount);
+
+            IPage<MallMember> amountList = this.baseMapper.selectRankListInPage(page, member);
+            if (CollUtil.isNotEmpty(amountList.getRecords())) {
+                Map<Long, Object> map = new HashMap<>();
+                for (MallMember record : records) {
+                    map.put(record.getId(), record);
+                }
+
+                for (MallMember record : amountList.getRecords()) {
+                    if (map.get(record.getId()) == null) {
+                        records.add(record);
+                    }
+                }
+            }
+        }
+        return records;
+    }
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/MallMemberVo.java b/src/main/java/cc/mrbird/febs/mall/vo/MallMemberVo.java
index d05951b..b78cb76 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/MallMemberVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/MallMemberVo.java
@@ -62,4 +62,14 @@
 
     @ApiModelProperty(value = "绑定手机号")
     private String bindPhone;
+
+    @ApiModelProperty(value = "累计消费")
+    private BigDecimal totalCost;
+
+    @ApiModelProperty(value = "赠送积分")
+    private BigDecimal score;
+
+    @ApiModelProperty(value = "抽奖积分")
+    private BigDecimal prizeScore;
+
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/MoneyFlowVo.java b/src/main/java/cc/mrbird/febs/mall/vo/MoneyFlowVo.java
index c922de7..e32a561 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/MoneyFlowVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/MoneyFlowVo.java
@@ -22,7 +22,7 @@
     @ApiModelProperty(value = "金额,有正负")
     private BigDecimal amount;
 
-    @ApiModelProperty(value = "类型 1-直推奖励 2-团队奖励 3-订单支付 4-退款 5-转账 6-提现 7-排名奖励")
+    @ApiModelProperty(value = "类型 1-静态收益 2-动态收益 3-代理收益 4-排名收益 5-董事收益 6-社区点补 7-推荐人收益 8-提现 9-转增 10-支付 11-退款")
     private Integer type;
 
     @ApiModelProperty(value = "对方手机号")
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/RankListVo.java b/src/main/java/cc/mrbird/febs/mall/vo/RankListVo.java
new file mode 100644
index 0000000..9dfa147
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/vo/RankListVo.java
@@ -0,0 +1,31 @@
+package cc.mrbird.febs.mall.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author wzy
+ * @date 2022-04-27
+ **/
+@Data
+@ApiModel(value = "RankListVo", description = "用户消费排名接口返回参数类")
+public class RankListVo {
+
+    @ApiModelProperty(value = "id")
+    private String id;
+
+    @ApiModelProperty(value = "邀请码")
+    private String inviteId;
+
+    @ApiModelProperty(value = "邀请码")
+    private String name;
+
+    @ApiModelProperty(value = "头像")
+    private String avatar;
+
+    @ApiModelProperty(value = "金额")
+    private BigDecimal amount;
+}
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 634d67d..8869d29 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -18,7 +18,7 @@
           username: ct_test
           password: 123456
           driver-class-name: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://120.27.238.55:3306/xc_mall?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
+          url: jdbc:mysql://120.27.238.55:3306/db_amz?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
 
   redis:
     # Redis数据库索引(默认为 0)
diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml
index 7fab32d..00f7aee 100644
--- a/src/main/resources/application-prod.yml
+++ b/src/main/resources/application-prod.yml
@@ -18,7 +18,7 @@
           username: ct_test
           password: 123456
           driver-class-name: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://120.27.238.55:3306/xc_mall?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
+          url: jdbc:mysql://120.27.238.55:3306/db_amz?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
 
   redis:
     # Redis数据库索引(默认为 0)
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index 9602ced..a8eb6ea 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -18,7 +18,7 @@
           username: ct_test
           password: 123456
           driver-class-name: com.mysql.cj.jdbc.Driver
-          url: jdbc:mysql://120.27.238.55:3306/xc_mall?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
+          url: jdbc:mysql://120.27.238.55:3306/db_amz?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
 
   redis:
     # Redis数据库索引(默认为 0)
diff --git a/src/main/resources/mapper/modules/MallMemberMapper.xml b/src/main/resources/mapper/modules/MallMemberMapper.xml
index be0d026..34616f6 100644
--- a/src/main/resources/mapper/modules/MallMemberMapper.xml
+++ b/src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -302,4 +302,23 @@
         ORDER BY
             DATE_FORMAT(a.CREATED_TIME, '%Y-%m-%d') DESC
     </select>
+
+    <select id="selectRankListInPage" resultType="cc.mrbird.febs.mall.entity.MallMember">
+        select * from (
+          select a.id, a.name, a.invite_id, a.avatar, sum(b.amount) amount from mall_member a, mall_order_info b
+          where  a.id=b.member_id and b.status = 4
+        <!-- 日 -->
+        <if test="record.query == '1'">
+
+        </if>
+        <!-- 月 -->
+        <if test="record.query == '2'">
+            and date_format(#{record.createdTime},'%Y-%m') = date_format(b.order_time,'%Y-%m')
+        </if>
+        <if test="record.amount != null">
+            and amount = #{record.amount}
+        </if>
+          group by a.id
+      ) a order by amount desc, a.id
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
index 0949c74..0e3b7d8 100644
--- a/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
+++ b/src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -27,6 +27,9 @@
             <if test="record.memberId != null">
                 and a.member_id=#{record.memberId}
             </if>
+            <if test="record.flowType != null and record.flowType != ''">
+                and a.flow_type=#{record.flowType}
+            </if>
         </where>
         order by a.created_time desc
     </select>
diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
index 116f9ab..2f61d0f 100644
--- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -172,4 +172,9 @@
         group by a.invite_id
          ) a
     </select>
+
+    <select id="selectTotalAmount" resultType="java.math.BigDecimal">
+        select sum(amount) from mall_order_info
+        where member_id=#{memberId} and status = 4
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.1