KKSU
2025-03-18 664184af3e070dee665ee736caffa0297804975f
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -9,17 +9,20 @@
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.service.IApiMallMemberService;
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;
@@ -32,6 +35,8 @@
    private final IAdminMallMemberService mallMemberService;
    private final IApiMallMemberService apiMallMemberService;
    private final IMallVipBenefitsService mallVipBenefitsService;
    private final MallVipBenefitsRecordMapper mallVipBenefitsRecordMapper;
    /**
     * 平台账单
@@ -72,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
@@ -91,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();
    }
@@ -135,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);
    }
@@ -218,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();
    }
@@ -362,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();
    }
@@ -524,4 +561,82 @@
        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();
    }
}