Administrator
8 days ago 0aaadc99bfced7f391ca1450951f46508389c620
src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -5,10 +5,16 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.*;
import cc.mrbird.febs.mall.entity.AppVersion;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.service.IAdminMallMemberService;
import cc.mrbird.febs.mall.vo.AdminAgentLevelOptionTreeVo;
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.springframework.validation.annotation.Validated;
@@ -16,6 +22,7 @@
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -27,9 +34,26 @@
public class AdminMallMemberController extends BaseController {
    private final IAdminMallMemberService mallMemberService;
    private final IApiMallMemberService apiMallMemberService;
    private final IMallVipBenefitsService mallVipBenefitsService;
    private final MallVipBenefitsRecordMapper mallVipBenefitsRecordMapper;
    /**
     * 平台账单
     *
     * @param mallMember
     * @param request
     * @return
     */
    @GetMapping("getMallDataList")
    public FebsResponse getMallDataList(MallMember mallMember, QueryRequest request) {
        Map<String, Object> data = getDataTable(mallMemberService.getMallDataList(mallMember, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 会员列表
     *
     * @param mallMember
     * @param request
     * @return
@@ -42,6 +66,7 @@
    /**
     * 会员列表---禁止
     *
     * @param id
     * @return
     */
@@ -52,7 +77,20 @@
    }
    /**
     * 会员列表---注销
     *
     * @param id
     * @return
     */
    @GetMapping("memberOut/{id}")
    @ControllerEndpoint(operation = "会员列表---注销", exceptionMessage = "操作失败")
    public FebsResponse memberOut(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.memberOut(id);
    }
    /**
     * 会员列表---开启
     *
     * @param id
     * @return
     */
@@ -62,13 +100,25 @@
        return mallMemberService.openAccount(id);
    }
    @GetMapping("changeIdentityYes/{type}/{id}")
    public FebsResponse changeIdentityYes(@PathVariable("type") Integer type, @PathVariable("id") Long id) {
        mallMemberService.changeIdentity(type, id, 1);
        return new FebsResponse().success();
    }
    @GetMapping("changeIdentityNo/{type}/{id}")
    public FebsResponse changeIdentityNo(@PathVariable("type") Integer type, @PathVariable("id") Long id) {
        mallMemberService.changeIdentity(type, id, 2);
        return new FebsResponse().success();
    }
    /**
     * 会员列表-资金流水
     */
    @GetMapping("/moneyFlow")
    public FebsResponse moneyFlow(QueryRequest request, MallMember mallMember, Integer parentId) {
        if(parentId==null){
            ViewMallMemberController.idFromMoneyFlow=0;
        if (parentId == null) {
            ViewMallMemberController.idFromMoneyFlow = 0;
        }
        mallMember.setId(ViewMallMemberController.idFromMoneyFlow);
        Map<String, Object> dataTable = getDataTable(mallMemberService.moneyFlow(request, mallMember));
@@ -76,19 +126,49 @@
    }
    /**
     * 会员列表-系统拨付
     */
    @PostMapping("updateSystemPay")
    @ControllerEndpoint(operation = "会员列表-系统拨付", exceptionMessage = "操作失败")
    public FebsResponse updateSystemPay(@Valid MallSystemPayDto mallSystemPayDto) {
        return mallMemberService.updateSystemPay(mallSystemPayDto);
    }
    /**
     * 会员列表-详情更新
     */
    @PostMapping("updateMemberInfo")
    @ControllerEndpoint(operation = "会员列表-详情更新", exceptionMessage = "操作失败")
    public FebsResponse updateMemberInfo(@Valid MallUpdateMemberInfoDto mallUpdateMemberInfoDto) {
        return mallMemberService.updateMemberInfo(mallUpdateMemberInfoDto);
    }
    /**
     * 资金流水-列表
     *
     * @param moneyFlowListDto
     * @param request
     * @return
     */
    @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);
    }
    /**
     * 会员提现-列表
     *
     * @param moneyChargeListDto
     * @param request
     * @return
@@ -101,6 +181,7 @@
    /**
     * 会员提现-同意
     *
     * @param id
     * @return
     */
@@ -112,6 +193,7 @@
    /**
     * 会员提现-拒绝
     *
     * @param id
     * @return
     */
@@ -123,6 +205,7 @@
    /**
     * 代理列表
     *
     * @param agentDto
     * @param request
     * @return
@@ -135,6 +218,7 @@
    /**
     * 代理级别-列表
     *
     * @param agentLevelDto
     * @param request
     * @return
@@ -159,8 +243,18 @@
     */
    @GetMapping("getAgentLevelOption/tree")
    @ControllerEndpoint(exceptionMessage = "获取等级失败")
    public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption(){
    public List<AdminAgentLevelOptionTreeVo> getAgentLevelOption() {
        return mallMemberService.getAgentLevelOption();
    }
    /**
     * 代理-等级选择Option
     */
    @GetMapping("agentLevelOption/tree")
    @ControllerEndpoint(exceptionMessage = "获取等级失败")
    public List<AdminAgentLevelOptionTreeVo> agentLevelOption() {
//        return mallMemberService.getAgentLevelOption();
        return mallMemberService.agentLevelOption();
    }
@@ -169,8 +263,8 @@
     */
    @GetMapping("/agentChild")
    public FebsResponse agentChild(QueryRequest request, MallMember mallMember, Integer parentId) {
        if(parentId==null){
            ViewMallMemberController.idFromAgentAllMember=0;
        if (parentId == null) {
            ViewMallMemberController.idFromAgentAllMember = 0;
        }
        mallMember.setId(ViewMallMemberController.idFromAgentAllMember);
        Map<String, Object> dataTable = getDataTable(mallMemberService.agentChild(request, mallMember));
@@ -178,7 +272,29 @@
    }
    /**
     * 代理列表---激活
     *
     * @param id
     * @return
     */
    @GetMapping("activateAccount/{id}")
    @ControllerEndpoint(operation = "代理列表---激活", exceptionMessage = "操作失败")
    public FebsResponse activateAccount(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.activateAccount(id);
    }
    /**
     * 代理列表-设置代理级别
     */
    @PostMapping("agentLevelSetUpdate")
    @ControllerEndpoint(operation = "代理列表-设置代理级别", exceptionMessage = "操作失败")
    public FebsResponse agentLevelSetUpdate(@Valid AgentLevelSetUpdateDto agentLevelSetUpdateDto) {
        return mallMemberService.agentLevelSetUpdate(agentLevelSetUpdateDto);
    }
    /**
     * 奖励设置-列表
     *
     * @param rankAwardDto
     * @param request
     * @return
@@ -200,6 +316,7 @@
    /**
     * App版本-列表
     *
     * @param appVersion
     * @param request
     * @return
@@ -238,7 +355,306 @@
    }
    @PostMapping("resetPwd/{id}")
    @ControllerEndpoint(operation = "会员列表---重置密码", exceptionMessage = "重置密码失败")
    public FebsResponse resetPwd(@PathVariable("id") Long id) {
        return mallMemberService.resetPwd(id);
    }
    @PostMapping(value = "resetPwdNew/{type}/{ids}")
    @ControllerEndpoint(operation = "重置密码", exceptionMessage = "重置密码失败")
    public FebsResponse resetPwd(@PathVariable("ids") String ids, @PathVariable("type") Integer type) {
        mallMemberService.resetPwd(ids, type);
        return new FebsResponse().success().message("重置成功");
    }
    @GetMapping("shopApplyList")
    @ControllerEndpoint(operation = "申请通道列表", exceptionMessage = "获取失败")
    public FebsResponse shopApplyList(MallShopApply mallShopApply, QueryRequest request) {
        return new FebsResponse().success().data(getDataTable(mallMemberService.findShopApplyListInPage(mallShopApply, request)));
    }
    @PostMapping("applyCheckAgree/{id}")
    public FebsResponse applyCheckAgree(@PathVariable Long id) {
        mallMemberService.applyCheckAgree(id);
        return new FebsResponse().success().message("操作成功");
    }
    @PostMapping(value = "applyCheckDisAgree/{id}")
    public FebsResponse applyCheckDisAgree(@PathVariable Long id) {
        mallMemberService.applyCheckDisAgree(id);
        return new FebsResponse().success().message("操作成功");
    }
    @PostMapping("/refererIdUpdate")
    @ControllerEndpoint(operation = "修改推荐人", exceptionMessage = "修改失败")
    public FebsResponse refererIdUpdate(MallMember member) {
        mallMemberService.modifyReferer(member);
        return new FebsResponse().success();
    }
    @PostMapping("/memberAdd")
    public FebsResponse memberAdd(MallMember member) {
        RegisterDto registerDto = new RegisterDto();
        registerDto.setAccount(member.getAccount());
        registerDto.setRegistType("admin");
        registerDto.setPassword("a123456");
        registerDto.setInviteId(member.getInviteId());
        registerDto.setName(member.getName());
        apiMallMemberService.register(registerDto);
        return new FebsResponse().success();
    }
    /**
     * 代理申请列表
     */
    @GetMapping("getAgentApplyList")
    public FebsResponse getAgentApplyList(MallAgentRecord mallAgentRecord, QueryRequest request) {
        Map<String, Object> data = getDataTable(mallMemberService.getAgentApplyList(mallAgentRecord, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 代理申请列表
     *      同意
     */
    @GetMapping("agreeAgentApply/{id}")
    @ControllerEndpoint(operation = "审核代理申请", exceptionMessage = "操作失败")
    public FebsResponse agreeAgentApply(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.agreeAgentApply(id);
    }
    /**
     * 代理申请列表
     *      拒绝
     */
    @GetMapping("disagreeAgentApply/{id}")
    @ControllerEndpoint(operation = "审核代理申请", exceptionMessage = "操作失败")
    public FebsResponse disagreeAgentApply(@NotNull(message = "{required}") @PathVariable Long id) {
        return mallMemberService.disagreeAgentApply(id);
    }
    /**
     * 推销员列表
     */
    @GetMapping("salesmanList")
    public FebsResponse salesmanList(MallSalesman mallSalesman, QueryRequest request) {
        Map<String, Object> data = getDataTable(mallMemberService.getMallSalesmanListInPage(mallSalesman, request));
        return new FebsResponse().success().data(data);
    }
    /**
     * 推销员列表-新增
     */
    @PostMapping("addSalesman")
    @ControllerEndpoint(operation = " 推销员列表-新增", exceptionMessage = "操作失败")
    public FebsResponse addSalesman(@Valid MallSalesman mallSalesman) {
        return mallMemberService.addSalesman(mallSalesman);
    }
    /**
     * 推销员列表-禁用
     */
    @GetMapping("salesmanDel/{id}")
    @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);
    }
    /**
     * 推销员列表-更新
     */
    @PostMapping("salesmanUpdate")
    @ControllerEndpoint(operation = "推销员列表-更新", exceptionMessage = "操作失败")
    public FebsResponse salesmanUpdate(@Valid MallSalesman mallSalesman) {
        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("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();
    }
}