Administrator
8 days ago 0aaadc99bfced7f391ca1450951f46508389c620
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;
    /**
     * 平台账单
@@ -69,6 +74,18 @@
    @ControllerEndpoint(operation = "会员列表---禁止", exceptionMessage = "禁止失败")
    public FebsResponse closeAccount(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.closeAccount(id);
    }
    /**
     * 会员列表---注销
     *
     * @param id
     * @return
     */
    @GetMapping("memberOut/{id}")
    @ControllerEndpoint(operation = "会员列表---注销", exceptionMessage = "操作失败")
    public FebsResponse memberOut(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.memberOut(id);
    }
    /**
@@ -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();
    }
@@ -524,4 +561,100 @@
        return mallMemberService.agentAddress();
    }
    /**
     * 合伙人申请列表-更新
     */
    @PostMapping("agentVerifyUpdate")
    @ControllerEndpoint(operation = "合伙人申请列表-更新", exceptionMessage = "操作失败")
    public FebsResponse agentVerifyUpdate(@Valid AdminAgentVerifyVo adminAgentVerifyVo) {
        return mallMemberService.agentVerifyUpdate(adminAgentVerifyVo);
    }
    /**
     * 会员列表-医生设置
     */
    @GetMapping("doctorStateChange/{id}")
    @ControllerEndpoint(operation = " 会员列表-医生设置", exceptionMessage = "操作失败")
    public FebsResponse doctorStateChange(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.doctorStateChange(id);
    }
    /**
     * 会员列表-推销员设置
     */
    @GetMapping("upSale/{id}")
    @ControllerEndpoint(operation = " 会员列表-推销员设置", exceptionMessage = "操作失败")
    public FebsResponse upSale(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.upCoupon(id);
    }
    /**
     * 会员列表-核销员设置
     */
    @GetMapping("checkOrder/{id}")
    @ControllerEndpoint(operation = " 会员列表-核销员设置", exceptionMessage = "操作失败")
    public FebsResponse checkOrder(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.checkOrder(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();
    }
}