package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.controller.BaseController; import cc.mrbird.febs.common.entity.FebsConstant; import cc.mrbird.febs.common.utils.FebsUtil; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.MallAgentRecordMapper; import cc.mrbird.febs.mall.mapper.MallMemberMapper; import cc.mrbird.febs.mall.mapper.MallSalesmanMapper; import cc.mrbird.febs.mall.service.IAdminMallMemberService; import cc.mrbird.febs.mall.vo.*; import cn.hutool.core.util.ObjectUtil; import lombok.RequiredArgsConstructor; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import java.util.HashMap; import java.util.Map; @Controller("mallMemberView") @RequestMapping(FebsConstant.VIEW_PREFIX + "modules/mallMember") @RequiredArgsConstructor public class ViewMallMemberController extends BaseController { private final IAdminMallMemberService mallMemberService; private final MallSalesmanMapper mallSalesmanMapper; private final MallMemberMapper mallMemberMapper; private final MallAgentRecordMapper mallAgentRecordMapper; public static long idFromMoneyFlow; public static long idFromAgentAllMember; /** * 平台账单 * @return */ @GetMapping("mallDataList") @RequiresPermissions("mallDataList:view") public String mallDataList() { return FebsUtil.view("modules/mallMember/mallDataList"); } /** * 会员列表 * @return */ @GetMapping("mallMemberList") @RequiresPermissions("mallMemberList:view") public String mallMember() { return FebsUtil.view("modules/mallMember/mallMemberList"); } /** * 会员列表-个人详情 * @param id * @param model * @return */ @GetMapping("detail/{id}") @RequiresPermissions("detail:update") public String detail(@PathVariable long id, Model model) { MallMemberVo data = mallMemberService.getMallMemberInfoById(id); model.addAttribute("member", data); return FebsUtil.view("modules/mallMember/detail"); } /** * 会员列表-系统拨付 * @param id * @param model * @return */ @GetMapping("mallSystemPay/{type}/{id}") @RequiresPermissions("mallSystemPay:update") public String systemPay(@PathVariable long id, @PathVariable Integer type, Model model) { MallMemberVo data = mallMemberService.getMallMemberInfoById(id); model.addAttribute("systemPay", data); model.addAttribute("type", type); return FebsUtil.view("modules/mallMember/mallSystemPay"); } /** * 会员列表-资金流水 * @param id * @param model * @return */ @GetMapping("moneyFlow/{id}") public String moneyFlow(@PathVariable long id, Model model) { idFromMoneyFlow = id; return FebsUtil.view("modules/mallMember/moneyFlow"); } /** * 资金流水列表 * @return */ @GetMapping("moneyFlowList") @RequiresPermissions("moneyFlowList:view") public String moneyFlowList() { return FebsUtil.view("modules/mallMember/moneyFlowList"); } /** * 提现列表 * @return */ @GetMapping("chargeFlowList") @RequiresPermissions("chargeFlowList:view") public String chargeFlowList() { return FebsUtil.view("modules/mallMember/chargeFlowList"); } /** * 提现列表-收款方式 * @param id * @param model * @return */ @GetMapping("paymentInfo/{id}") @RequiresPermissions("paymentInfo:update") public String paymentInfo(@PathVariable long id, Model model) { AdminMallMemberPaymentVo data = mallMemberService.getMallMemberPaymentInfoByFlowId(id); model.addAttribute("paymentInfo", data); return FebsUtil.view("modules/mallMember/paymentInfo"); } /** * 代理列表 * @return */ @GetMapping("agentList") @RequiresPermissions("agentList:view") public String agentList() { return FebsUtil.view("modules/mallMember/agentList"); } /** * 代理级别-列表 * @return */ @GetMapping("agentLevelList") @RequiresPermissions("agentLevelList:view") public String agentLevelList() { return FebsUtil.view("modules/mallMember/agentLevelList"); } /** * 代理级别-详情 * @param id * @param model * @return */ @GetMapping("agentLevelUpdate/{id}") @RequiresPermissions("agentLevelUpdate:update") public String agentLevelUpdate(@PathVariable long id, Model model) { AdminAgentLevelUpdateInfoVo data = mallMemberService.getAgentLevelUpdateInfoById(id); model.addAttribute("agentLevelUpdateInfo", data); return FebsUtil.view("modules/mallMember/agentLevelUpdate"); } /** * 代理级别-全部成员 * @param id * @param model * @return */ @GetMapping("agentAllMember/{id}") public String agentAllMember(@PathVariable long id, Model model) { idFromAgentAllMember = id; return FebsUtil.view("modules/mallMember/agentAllMember"); } /** * 代理级别-设置代理 * @param id * @param model * @return */ @GetMapping("agentLevelSet/{id}") @RequiresPermissions("agentLevelSet:update") public String agentLevelSet(@PathVariable long id, Model model) { AdminAgentLevelSetInfoVo data = mallMemberService.getAgentLevelSetInfoByMemberId(id); model.addAttribute("agentLevelSet", data); return FebsUtil.view("modules/mallMember/agentLevelSet"); } /** * 奖励设置-列表 * @return */ @GetMapping("rankAwardList") @RequiresPermissions("rankAwardList:view") public String rankAwardList() { return FebsUtil.view("modules/mallMember/rankAwardList"); } /** * 奖励设置-详情 * @param id * @param model * @return */ @GetMapping("rankAwardUpdate/{id}") @RequiresPermissions("rankAwardUpdate:update") public String rankAwardUpdate(@PathVariable long id, Model model) { AdminRankAwardUpdateInfoVo data = mallMemberService.getRankAwardUpdateInfoById(id); model.addAttribute("rankAwardUpdateInfo", data); return FebsUtil.view("modules/mallMember/rankAwardUpdate"); } /** * App版本-列表 * @return */ @GetMapping("appVersionList") @RequiresPermissions("appVersionList:view") public String appVersionList() { return FebsUtil.view("modules/mallMember/appVersionList"); } /** * App版本-新增 * @return */ @GetMapping("appVersionAdd") @RequiresPermissions("appVersionAdd:add") public String appVersionAdd() { return FebsUtil.view("modules/mallMember/appVersionAdd"); } /** * App版本-详情 * @param id * @param model * @return */ @GetMapping("appVerSionUpdate/{id}") @RequiresPermissions("appVerSionUpdate:update") public String appVerSionUpdate(@PathVariable long id, Model model) { AppVersion data = mallMemberService.getAppVersionInfoById(id); model.addAttribute("appVersion", data); return FebsUtil.view("modules/mallMember/appVerSionUpdate"); } @GetMapping("shopApply") public String shopApply() { return FebsUtil.view("modules/mallMember/shopApply"); } @GetMapping("applyDetail/{id}") public String applyDetail(@PathVariable("id") Long id, Model model) { MallShopApply apply = mallMemberService.findShopApplyById(id); model.addAttribute("apply", apply); return FebsUtil.view("modules/mallMember/shopApplyInfo"); } @GetMapping("updateReferer/{id}") public String updateReferer(@PathVariable("id") Long id, Model model) { MallMember member = mallMemberService.getById(id); MallMember byInviteId = null; byInviteId = mallMemberService.findByInviteId(member.getReferrerId()); if(ObjectUtil.isEmpty(byInviteId)){ byInviteId = new MallMember(); byInviteId.setName("无推荐人"); } model.addAttribute("referer", byInviteId); model.addAttribute("id", id); return FebsUtil.view("modules/mallMember/updateRefererId"); } @GetMapping("addMember") public String addMember() { return FebsUtil.view("modules/mallMember/addMember"); } /** * 代理申请列表 */ @GetMapping("mallAgentRecord") @RequiresPermissions("mallAgentRecord:view") public String mallAgentRecord() { return FebsUtil.view("modules/mallMember/mallAgentRecord"); } /** * 推销员列表 */ @GetMapping("mallSalesManList") @RequiresPermissions("mallSalesManList:view") public String mallSalesManList() { return FebsUtil.view("modules/mallMember/mallSalesManList"); } /** * 推销员列表-新增 */ @GetMapping("addSalesman") @RequiresPermissions("addSalesman:view") public String addSalesman() { return FebsUtil.view("modules/mallMember/addSalesman"); } /** * 推销员列表-详情 */ @GetMapping("salesmanUpdate/{id}") @RequiresPermissions("salesmanUpdate:update") public String salesmanUpdate(@PathVariable long id, Model model) { MallSalesman mallSalesman = mallSalesmanMapper.selectById(id); model.addAttribute("mallSalesman", mallSalesman); return FebsUtil.view("modules/mallMember/salesmanUpdate"); } /** * 推销员列表-选择 * @param id * @param model * @return */ @GetMapping("agentSelect/{id}") @RequiresPermissions("agentSelect:update") public String agentSelect(@PathVariable long id, Model model) { AdminAgentSelectVo data = mallSalesmanMapper.agentSelect(id); model.addAttribute("adminAgentSelectVo", data); return FebsUtil.view("modules/mallMember/agentSelect"); } /** * 地址金额统计列表 */ @GetMapping("addressAmountList") @RequiresPermissions("addressAmountList:view") public String addressAmountList() { return FebsUtil.view("modules/mallMember/addressAmountList"); } /** * 地址金额统计列表 */ @GetMapping("salesmanAchieveList") @RequiresPermissions("salesmanAchieveList:view") public String salesmanAchieveList() { return FebsUtil.view("modules/mallMember/salesmanAchieveList"); } /** * 合伙人业绩列表 */ @GetMapping("agentAchieveList") @RequiresPermissions("agentAchieveList:view") public String agentAchieveList() { return FebsUtil.view("modules/mallMember/agentAchieveList"); } /** * 合伙人代理等级列表-选择 * @param id * @param model * @return */ @GetMapping("agentVerify/{id}") @RequiresPermissions("agentVerify:update") public String agentVerify(@PathVariable long id, Model model) { MallAgentRecord mallAgentRecord = mallAgentRecordMapper.selectById(id); AdminAgentVerifyVo data = new AdminAgentVerifyVo(); data.setId(mallAgentRecord.getId()); model.addAttribute("adminAgentVerifyVo", data); return FebsUtil.view("modules/mallMember/agentVerify"); } /** * 推销员列表 * @return */ @GetMapping("memberSaleman") @RequiresPermissions("memberSaleman:view") public String memberSaleman() { return FebsUtil.view("modules/mallMember/memberSaleman"); } /** * 优惠卷列表-选择 * @param id * @param model * @return */ @GetMapping("couponSelect/{id}") @RequiresPermissions("couponSelect:update") public String couponSelect(@PathVariable long id, Model model) { MallMember mallMember = mallMemberMapper.selectById(id); AdminCouponSelectVo data = new AdminCouponSelectVo(); data.setId(mallMember.getId()); model.addAttribute("adminCouponSelectVo", data); return FebsUtil.view("modules/mallMember/couponSelect"); } @GetMapping("vipLevelSetting/{id}") public String vipLevelSetting(@PathVariable(value = "id") String id, Model model) { MallMember mallMember = mallMemberMapper.selectById(id); Map data = new HashMap<>(); data.put("id", mallMember.getId()); data.put("level", mallMember.getLevel()); model.addAttribute("vipLevelSet", data); return FebsUtil.view("modules/mallMember/vip-level-setting"); } @GetMapping("addCoupon/{id}") public String addCoupon(@PathVariable long id, Model model) { // AdminAgentLevelSetInfoVo data = mallMemberService.getAgentLevelSetInfoByMemberId(id); model.addAttribute("memberId", id); return FebsUtil.view("modules/mallMember/member-coupon-select"); } }