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