From 68bb55731629f29e7e275d6c0bff6a6e23886421 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 21 Feb 2025 16:42:05 +0800
Subject: [PATCH] feat(mall): 添加直推奖励功能
---
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java | 221 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 215 insertions(+), 6 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
index 2e446c9..30d49af 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -8,15 +8,21 @@
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberService;
-import cc.mrbird.febs.mall.vo.AdminAgentLevelOptionTreeVo;
+import cc.mrbird.febs.mall.vo.*;
+import cc.mrbird.febs.vip.entity.MallVipBenefitsRecord;
+import cc.mrbird.febs.vip.mapper.MallVipBenefitsRecordMapper;
+import cc.mrbird.febs.vip.service.IMallVipBenefitsService;
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.StrUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.ibatis.annotations.Param;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
+import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -29,6 +35,8 @@
private final IAdminMallMemberService mallMemberService;
private final IApiMallMemberService apiMallMemberService;
+ private final IMallVipBenefitsService mallVipBenefitsService;
+ private final MallVipBenefitsRecordMapper mallVipBenefitsRecordMapper;
/**
* 平台账单
@@ -69,6 +77,18 @@
}
/**
+ * 会员列表---注销
+ *
+ * @param id
+ * @return
+ */
+ @GetMapping("memberOut/{id}")
+ @ControllerEndpoint(operation = "会员列表---注销", exceptionMessage = "操作失败")
+ public FebsResponse memberOut(@NotNull(message = "{required}") @PathVariable Long id) {
+ return mallMemberService.memberOut(id);
+ }
+
+ /**
* 会员列表---开启
*
* @param id
@@ -88,7 +108,7 @@
@GetMapping("changeIdentityNo/{type}/{id}")
public FebsResponse changeIdentityNo(@PathVariable("type") Integer type, @PathVariable("id") Long id) {
- mallMemberService.changeIdentity(type, id, 2);
+ mallMemberService.changeIdentity(type, id, 0);
return new FebsResponse().success();
}
@@ -132,6 +152,16 @@
*/
@GetMapping("getMoneyFlowList")
public FebsResponse getMoneyFlowList(MoneyFlowListDto moneyFlowListDto, QueryRequest request) {
+ String startTime = moneyFlowListDto.getStartTime();
+ String endTime = moneyFlowListDto.getEndTime();
+ if(StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
+ DateTime dateStartTime= DateUtil.parseDate(startTime);
+ DateTime dateEndTime = DateUtil.parseDate(endTime);
+ int compare = DateUtil.compare(dateStartTime, dateEndTime);
+ if(compare >= 0){
+ return new FebsResponse().fail().message("请输入正确的开始时间和结束时间");
+ }
+ }
Map<String, Object> data = getDataTable(mallMemberService.getMoneyFlowListInPage(moneyFlowListDto, request));
return new FebsResponse().success().data(data);
}
@@ -215,6 +245,16 @@
@ControllerEndpoint(exceptionMessage = "获取等级失败")
public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption() {
return mallMemberService.getAgentLevelOption();
+ }
+
+ /**
+ * 代理-等级选择Option
+ */
+ @GetMapping("agentLevelOption/tree")
+ @ControllerEndpoint(exceptionMessage = "获取等级失败")
+ public List<AdminAgentLevelOptionTreeVo> agentLevelOption() {
+// return mallMemberService.getAgentLevelOption();
+ return mallMemberService.agentLevelOption();
}
@@ -359,8 +399,8 @@
registerDto.setAccount(member.getAccount());
registerDto.setRegistType("admin");
registerDto.setPassword("a123456");
+ registerDto.setPasswordAgain("a123456");
registerDto.setInviteId(member.getInviteId());
- registerDto.setName(member.getName());
apiMallMemberService.register(registerDto);
return new FebsResponse().success();
}
@@ -413,12 +453,21 @@
}
/**
- * 推销员列表-删除
+ * 推销员列表-禁用
*/
@GetMapping("salesmanDel/{id}")
- @ControllerEndpoint(operation = "推销员列表-删除", exceptionMessage = "操作失败")
+ @ControllerEndpoint(operation = "推销员列表-禁用", exceptionMessage = "操作失败")
public FebsResponse salesmanDel(@NotNull(message = "{required}") @PathVariable Long id) {
return mallMemberService.salesmanDel(id);
+ }
+
+ /**
+ * 推销员列表-启用
+ */
+ @GetMapping("salesmanUse/{id}")
+ @ControllerEndpoint(operation = "推销员列表-启用", exceptionMessage = "操作失败")
+ public FebsResponse salesmanUse(@NotNull(message = "{required}") @PathVariable Long id) {
+ return mallMemberService.salesmanUse(id);
}
/**
@@ -430,4 +479,164 @@
return mallMemberService.salesmanUpdate(mallSalesman);
}
+ /**
+ * 推销员列表-选择
+ */
+ @GetMapping("salesmans/tree")
+ @ControllerEndpoint(exceptionMessage = "推销员列表失败")
+ public List<AdminMallSalesmansTreeVo> getSalesmansTree(){
+ return mallMemberService.getSalesmansTree();
+ }
+
+ /**
+ * 会员列表-推销员列表-更新
+ */
+ @PostMapping("memberUpdateSalesman")
+ @ControllerEndpoint(operation = "会员列表-推销员列表-更新", exceptionMessage = "操作失败")
+ public FebsResponse memberUpdateSalesman(@Valid MallMember mallmember) {
+ return mallMemberService.memberUpdateSalesman(mallmember);
+ }
+
+ /**
+ * 地址金额统计列表
+ */
+ @GetMapping("addressAmountList")
+ public FebsResponse addressAmountList(MallAddressInfo mallAddressInfo, QueryRequest request) {
+ Map<String, Object> data = getDataTable(mallMemberService.getAddressAmountList(mallAddressInfo, request));
+ return new FebsResponse().success().data(data);
+ }
+
+ /**
+ * 地址金额统计列表-省
+ */
+ @GetMapping("address/tree")
+ @ControllerEndpoint(exceptionMessage = "地址金额统计列表")
+ public List<AdminMallAddressInfoVo> getAddressTree(){
+ return mallMemberService.getAddressTree();
+ }
+
+ /**
+ * 销售员业绩列表
+ */
+ @GetMapping("salesmanAchieveList")
+ public FebsResponse salesmanAchieveList(MallSalesman mallSalesman, QueryRequest request) {
+ Map<String, Object> data = getDataTable(mallMemberService.getSalesmanAchieveList(mallSalesman, request));
+ return new FebsResponse().success().data(data);
+ }
+
+ /**
+ * 销售员业绩列表-省
+ */
+ @GetMapping("salesmanAchieve/tree")
+ @ControllerEndpoint(exceptionMessage = "销售员业绩列表")
+ public List<AdminSalesmanAchieveVo> getSalesmanAchieveTree(){
+ return mallMemberService.getSalesmanAchieveTree();
+ }
+
+ /**
+ * 合伙人业绩
+ */
+ @GetMapping("agentAchieveList")
+ public FebsResponse agentAchieveList(MallAgentRecord mallAgentRecord, QueryRequest request) {
+ String startTime = mallAgentRecord.getStartTime();
+ String endTime = mallAgentRecord.getEndTime();
+ if(StrUtil.isNotBlank(startTime) && StrUtil.isNotBlank(endTime)){
+ DateTime dateStartTime= DateUtil.parseDate(startTime);
+ DateTime dateEndTime = DateUtil.parseDate(endTime);
+ int compare = DateUtil.compare(dateStartTime, dateEndTime);
+ if(compare >= 0){
+ return new FebsResponse().fail().message("请输入正确的开始时间和结束时间");
+ }
+ }
+ Map<String, Object> data = getDataTable(mallMemberService.getAgentAchieveList(mallAgentRecord, request));
+ return new FebsResponse().success().data(data);
+ }
+
+ /**
+ * 合伙人业绩-省
+ */
+ @GetMapping("agentAddress/tree")
+ @ControllerEndpoint(exceptionMessage = "合伙人业绩-省")
+ public List<AdminMallAgentRecordVo> agentAddress(){
+ return mallMemberService.agentAddress();
+ }
+
+ /**
+ * 合伙人申请列表-更新
+ */
+ @PostMapping("agentVerifyUpdate")
+ @ControllerEndpoint(operation = "合伙人申请列表-更新", exceptionMessage = "操作失败")
+ public FebsResponse agentVerifyUpdate(@Valid AdminAgentVerifyVo adminAgentVerifyVo) {
+ return mallMemberService.agentVerifyUpdate(adminAgentVerifyVo);
+ }
+
+ /**
+ * 会员列表-推销员设置
+ */
+ @GetMapping("upSale/{id}")
+ @ControllerEndpoint(operation = " 会员列表-推销员设置", exceptionMessage = "操作失败")
+ public FebsResponse upSale(@NotNull(message = "{required}") @PathVariable Long id) {
+ return mallMemberService.upCoupon(id);
+ }
+
+ /**
+ * 会员列表-推销员设置
+ */
+ @GetMapping("downSale/{id}")
+ @ControllerEndpoint(operation = " 会员列表-推销员设置", exceptionMessage = "操作失败")
+ public FebsResponse downSale(@NotNull(message = "{required}") @PathVariable Long id) {
+ return mallMemberService.downCoupon(id);
+ }
+
+ /**
+ * 推销员列表
+ *
+ * @param mallMember
+ * @param request
+ * @return
+ */
+ @GetMapping("getsalemanRuleList")
+ public FebsResponse getsalemanRuleList(MallMember mallMember, QueryRequest request) {
+ mallMember.setIsSale(1);
+ Map<String, Object> data = getDataTable(mallMemberService.getsalemanRuleList(mallMember, request));
+ return new FebsResponse().success().data(data);
+ }
+
+ /**
+ * 推销员列表-优惠卷绑定
+ */
+ @PostMapping("salemanCoupon")
+ @ControllerEndpoint(operation = "推销员列表-优惠卷绑定", exceptionMessage = "操作失败")
+ public FebsResponse salemanCoupon(@Valid MallMember mallmember) {
+ return mallMemberService.salemanCoupon(mallmember);
+ }
+
+ @PostMapping("vipLevelSetUpdate")
+ public FebsResponse vipLevelSetUpdate(MallMember member) {
+ member.setVipLevelTime(new Date());
+ mallMemberService.updateById(member);
+ return new FebsResponse().success().message("操作成功");
+ }
+
+ @PostMapping("addMemberCoupon")
+ @ControllerEndpoint(operation = "会员添加优惠券呢", exceptionMessage = "操作失败")
+ public FebsResponse addMemberCoupon(@Valid MallMember mallmember) {
+ return mallMemberService.addMemberCoupon(mallmember);
+ }
+
+ @GetMapping(value = "/findMemberBenefitsInPage")
+ public FebsResponse findMemberBenefitsInPage(MallVipBenefitsRecord record, QueryRequest request) {
+ Map<String, Object> data = getDataTable(mallVipBenefitsService.findVipBenefitsInPage(record, request));
+ return new FebsResponse().success().data(data);
+ }
+
+ @PostMapping(value = "/sendGift/{id}")
+ public FebsResponse sendGift(@PathVariable("id") Long id) {
+ MallVipBenefitsRecord record = new MallVipBenefitsRecord();
+ record.setId(id);
+ record.setStatus(1);
+ mallVipBenefitsRecordMapper.updateById(record);
+
+ return new FebsResponse().success();
+ }
}
--
Gitblit v1.9.1