From cf8dc9ea458b5efc54d6d6d9d8e89db49ca6cf0f Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 23 Jun 2026 22:02:11 +0800
Subject: [PATCH] feat(system): 添加汇率配置管理功能
---
src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java | 145 +++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 141 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
index 950abdd..355fab3 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewSystemController.java
@@ -3,11 +3,10 @@
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.AdminAgentAmountDto;
-import cc.mrbird.febs.mall.dto.CashOutSettingDto;
-import cc.mrbird.febs.mall.dto.ScoreSettingDto;
+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;
@@ -44,11 +43,149 @@
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());
- model.addAttribute("agentAmountSet", adminAgentAmountDto);
}
+ 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");
+ }
+
+ @GetMapping("moneyChange")
+ @RequiresPermissions("moneyChange:update")
+ public String moneyChange() {
+ return FebsUtil.view("modules/system/moneyChange");
+ }
}
--
Gitblit v1.9.1