package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsConstant; import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; import cc.mrbird.febs.common.utils.FebsUtil; import cc.mrbird.febs.mall.dto.*; import cc.mrbird.febs.mall.entity.DataDictionaryCustom; import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; 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.RequestMapping; @Controller("mallSystemView") @RequestMapping(FebsConstant.VIEW_PREFIX + "modules/system") @RequiredArgsConstructor public class ViewSystemController { private final DataDictionaryCustomMapper dataDictionaryCustomMapper; @GetMapping("profitSetting") public String profitSetting() { return FebsUtil.view("modules/system/profitSetting"); } @GetMapping("cashOutSetting") @RequiresPermissions("cashOutSetting:update") public String cashOutSetting(Model model) { DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode()); if (dic != null) { model.addAttribute("cashout", JSONObject.parseObject(dic.getValue(), CashOutSettingDto.class)); } return FebsUtil.view("modules/system/cashOutSetting"); } @GetMapping("agentAmountSet") @RequiresPermissions("agentAmountSet:update") public String agentAmountSet(Model model) { DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.PRICE_AMOUNT.getType(), DataDictionaryEnum.PRICE_AMOUNT.getCode()); DataDictionaryCustom giveStateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.GIVE_STATE.getType(), DataDictionaryEnum.GIVE_STATE.getCode()); DataDictionaryCustom activityBulletinDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.ACTIVITY_BULLETIN.getType(), DataDictionaryEnum.ACTIVITY_BULLETIN.getCode()); DataDictionaryCustom giveAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.GIVE_AMOUNT.getType(), DataDictionaryEnum.GIVE_AMOUNT.getCode()); DataDictionaryCustom chargeAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CHARGE_AMOUNT.getType(), DataDictionaryEnum.CHARGE_AMOUNT.getCode()); AdminAgentAmountDto adminAgentAmountDto = new AdminAgentAmountDto(); if (dic != null) { adminAgentAmountDto.setAgentAmountValue(dic.getValue()); } if (giveStateDic != null) { adminAgentAmountDto.setGiveState(giveStateDic.getValue()); } if (activityBulletinDic != null) { adminAgentAmountDto.setActivityBulletin(activityBulletinDic.getValue()); } if (giveAmountDic != null) { adminAgentAmountDto.setGiveAmount(giveAmountDic.getValue()); } if (chargeAmountDic != null) { adminAgentAmountDto.setChargeAmount(chargeAmountDic.getValue()); } model.addAttribute("agentAmountSet", adminAgentAmountDto); return FebsUtil.view("modules/system/agentAmountSet"); } @GetMapping("agentDetail") @RequiresPermissions("agentDetail:update") public String agentDetail(Model model) { DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.AGENT_DETAILS.getType(), DataDictionaryEnum.AGENT_DETAILS.getCode()); AdminAgentDetailDto adminAgentDetailDto = new AdminAgentDetailDto(); if (ObjectUtil.isNotEmpty(dic)) { adminAgentDetailDto.setAgentDetail(dic.getValue()); model.addAttribute("agentDetail", adminAgentDetailDto); } return FebsUtil.view("modules/system/agentDetail"); } @GetMapping("indexVideo") @RequiresPermissions("indexVideo:update") public String indexVideoSet(Model model) { DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( DataDictionaryEnum.VIDEO_URL_INDEX.getType(), DataDictionaryEnum.VIDEO_URL_INDEX.getCode()); AdminIndexVideoDto adminIndexVideoDto = new AdminIndexVideoDto(); if (ObjectUtil.isNotEmpty(dic)) { adminIndexVideoDto.setVideoUrl(dic.getValue()); } model.addAttribute("indexVideoSet", adminIndexVideoDto); return FebsUtil.view("modules/system/indexVideo"); } @GetMapping("faPiao") @RequiresPermissions("faPiao:update") public String faPiao(Model model) { FaPiaoDto faPiaoDto = new FaPiaoDto(); DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.FP_CALLBACK_URL.getType(), DataDictionaryEnum.FP_CALLBACK_URL.getCode()); if (dic != null) { faPiaoDto.setCallbackUrl(dic.getValue()); } model.addAttribute("faPiaoDto", faPiaoDto); return FebsUtil.view("modules/system/faPiao"); } @GetMapping("vipCenterSetting") public String vipCenterSetting() { return FebsUtil.view("modules/system/vipCenterSetting"); } @GetMapping("kefu") public String kefu() { return FebsUtil.view("modules/system/kefu"); } @GetMapping("sender") public String sender() { return FebsUtil.view("modules/system/sender"); } @GetMapping("lwPayConfig") @RequiresPermissions("lwPayConfig:update") public String lwPayConfig(Model model) { LwPayConfigDto dto = new LwPayConfigDto(); // 逐条读取 LWPAY_CONFIG 下的配置项 DataDictionaryCustom memberId = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("LWPAY_CONFIG", "MEMBER_ID"); DataDictionaryCustom secretKey = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("LWPAY_CONFIG", "SECRET_KEY"); DataDictionaryCustom notifyUrl = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("LWPAY_CONFIG", "NOTIFY_URL"); DataDictionaryCustom returnUrl = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("LWPAY_CONFIG", "RETURN_URL"); if (memberId != null) dto.setMemberId(memberId.getValue()); if (secretKey != null) dto.setSecretKey(secretKey.getValue()); if (notifyUrl != null) dto.setNotifyUrl(notifyUrl.getValue()); if (returnUrl != null) dto.setReturnUrl(returnUrl.getValue()); model.addAttribute("lwPayConfig", dto); return FebsUtil.view("modules/system/lwPayConfig"); } @GetMapping("tokenviewConfig") @RequiresPermissions("tokenviewConfig:update") public String tokenviewConfig(Model model) { TokenviewConfigDto dto = new TokenviewConfigDto(); DataDictionaryCustom secret = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("TOKENVIEW_CONFIG", "WEBHOOK_SECRET"); DataDictionaryCustom address = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("TOKENVIEW_CONFIG", "TRC20_USDT_ADDRESS"); if (secret != null) dto.setWebhookSecret(secret.getValue()); if (address != null) dto.setTrc20UsdtAddress(address.getValue()); model.addAttribute("tokenviewConfig", dto); return FebsUtil.view("modules/system/tokenviewConfig"); } @GetMapping("salesService") @RequiresPermissions("salesService:update") public String salesService(Model model) { SalesServiceDto dto = new SalesServiceDto(); DataDictionaryCustom whatsApp = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("SALES_SERVICE", "WHATSAPP"); DataDictionaryCustom phone = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("SALES_SERVICE", "PHONE"); DataDictionaryCustom email = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("SALES_SERVICE", "EMAIL"); DataDictionaryCustom address = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("SALES_SERVICE", "ADDRESS"); DataDictionaryCustom workingHours = dataDictionaryCustomMapper.selectDicDataByTypeAndCode("SALES_SERVICE", "WORKINGHOURS"); if (whatsApp != null) dto.setWhatsApp(whatsApp.getValue()); if (phone != null) dto.setPhone(phone.getValue()); if (email != null) dto.setEmail(email.getValue()); if (address != null) dto.setAddress(address.getValue()); if (workingHours != null) dto.setWorkingHours(workingHours.getValue()); model.addAttribute("salesService", dto); return FebsUtil.view("modules/system/salesService"); } @GetMapping("countryDeliveryList") @RequiresPermissions("countryDelivery:view") public String countryDeliveryList() { return FebsUtil.view("modules/system/countryDeliveryList"); } }