From 1b4c8b8918825fea8e15b9b9368a2274b7e5a2df Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 08 May 2025 10:07:55 +0800
Subject: [PATCH] feat(mall): 添加公共设置功能

---
 src/main/java/cc/mrbird/febs/common/enumerates/CommonDictionaryEnum.java            |   20 +++++
 src/main/java/cc/mrbird/febs/mall/controller/common/AdminHappyCommonController.java |   52 +++++++++++++
 src/main/java/cc/mrbird/febs/mall/controller/CommonController.java                  |    2 
 src/main/resources/templates/febs/views/modules/common/commonSet.html               |   69 +++++++++++++++++
 src/main/java/cc/mrbird/febs/mall/controller/common/ViewHappyCommonController.java  |   45 +++++++++++
 src/main/java/cc/mrbird/febs/mall/dto/common/AdminCommonSetDto.java                 |    9 ++
 src/main/java/cc/mrbird/febs/mall/vo/common/AdminCommonSetVo.java                   |    9 ++
 7 files changed, 205 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/common/enumerates/CommonDictionaryEnum.java b/src/main/java/cc/mrbird/febs/common/enumerates/CommonDictionaryEnum.java
new file mode 100644
index 0000000..f91e198
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/common/enumerates/CommonDictionaryEnum.java
@@ -0,0 +1,20 @@
+package cc.mrbird.febs.common.enumerates;
+
+import lombok.Getter;
+
+@Getter
+public enum CommonDictionaryEnum {
+    /**
+     * 整体置灰
+     */
+    GRAY_SET("GRAY_SET", "GRAY_SET");
+
+    private String type;
+
+    private String code;
+
+    CommonDictionaryEnum(String type, String code) {
+        this.type = type;
+        this.code = code;
+    }
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java b/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
index 7d7ad7f..824aa9d 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
@@ -230,7 +230,7 @@
 
         String imageFuffix = ".jpg";
         String imageNames = System.currentTimeMillis() + IdUtil.simpleUUID() + imageFuffix;
-        String imageName = "uploadeFile/" + imageNames;
+        String imageName = "hc/" + imageNames;
         OssUtils.uploadFileWithBase64(base64Str, imageName);
         String bucket_name ="https://excoin.oss-cn-hangzhou.aliyuncs.com";
         String url = bucket_name + "/" + imageName;
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/common/AdminHappyCommonController.java b/src/main/java/cc/mrbird/febs/mall/controller/common/AdminHappyCommonController.java
new file mode 100644
index 0000000..5ab172c
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/controller/common/AdminHappyCommonController.java
@@ -0,0 +1,52 @@
+package cc.mrbird.febs.mall.controller.common;
+
+import cc.mrbird.febs.common.annotation.ControllerEndpoint;
+import cc.mrbird.febs.common.controller.BaseController;
+import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.enumerates.CommonDictionaryEnum;
+import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
+import cc.mrbird.febs.common.utils.RedisUtils;
+import cc.mrbird.febs.mall.dto.AdminAgentAmountDto;
+import cc.mrbird.febs.mall.dto.common.AdminCommonSetDto;
+import cc.mrbird.febs.mall.dto.memberLevel.*;
+import cc.mrbird.febs.mall.entity.DataDictionaryCustom;
+import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper;
+import cc.mrbird.febs.mall.service.AdminMemberLevelService;
+import cn.hutool.core.util.ObjectUtil;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.math.BigDecimal;
+import java.util.Map;
+
+@Slf4j
+@Validated
+@RestController
+@RequiredArgsConstructor
+@RequestMapping(value = "/admin/common")
+public class AdminHappyCommonController extends BaseController {
+
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+
+    @PostMapping(value = "/commonSet")
+    public FebsResponse commonSet(AdminCommonSetDto dto) {
+        this.commonUpdate(CommonDictionaryEnum.GRAY_SET.getType(),CommonDictionaryEnum.GRAY_SET.getCode(),dto.getGrayState());
+        return new FebsResponse().success().message("操作成功");
+    }
+
+    public void commonUpdate(String type,String code,String value) {
+        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                type,
+                code
+        );
+        if(ObjectUtil.isNotEmpty(dic)){
+            dic.setValue(value);
+            dataDictionaryCustomMapper.updateById(dic);
+        }
+    }
+
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/common/ViewHappyCommonController.java b/src/main/java/cc/mrbird/febs/mall/controller/common/ViewHappyCommonController.java
new file mode 100644
index 0000000..293bcee
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/controller/common/ViewHappyCommonController.java
@@ -0,0 +1,45 @@
+package cc.mrbird.febs.mall.controller.common;
+
+import cc.mrbird.febs.common.controller.BaseController;
+import cc.mrbird.febs.common.entity.FebsConstant;
+import cc.mrbird.febs.common.enumerates.CommonDictionaryEnum;
+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.entity.DataDictionaryCustom;
+import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper;
+import cc.mrbird.febs.mall.vo.common.AdminCommonSetVo;
+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;
+
+import java.util.HashMap;
+
+@Controller("commonView")
+@RequestMapping(FebsConstant.VIEW_PREFIX + "modules/common")
+@RequiredArgsConstructor
+public class ViewHappyCommonController extends BaseController {
+
+    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+
+
+
+    @GetMapping("commonSet")
+    @RequiresPermissions("commonSet:view")
+    public String agentAmountSet(Model model) {
+        DataDictionaryCustom grayStateDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
+                CommonDictionaryEnum.GRAY_SET.getType(),
+                CommonDictionaryEnum.GRAY_SET.getCode()
+        );
+        AdminCommonSetVo commonSet = new AdminCommonSetVo();
+        if (grayStateDic != null) {
+            commonSet.setGrayState(grayStateDic.getValue());
+        }
+        model.addAttribute("commonSet", commonSet);
+        return FebsUtil.view("modules/common/commonSet");
+    }
+
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/common/AdminCommonSetDto.java b/src/main/java/cc/mrbird/febs/mall/dto/common/AdminCommonSetDto.java
new file mode 100644
index 0000000..60a1f76
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/common/AdminCommonSetDto.java
@@ -0,0 +1,9 @@
+package cc.mrbird.febs.mall.dto.common;
+
+import lombok.Data;
+
+@Data
+public class AdminCommonSetDto {
+
+    private String grayState;
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/common/AdminCommonSetVo.java b/src/main/java/cc/mrbird/febs/mall/vo/common/AdminCommonSetVo.java
new file mode 100644
index 0000000..8ce910e
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/vo/common/AdminCommonSetVo.java
@@ -0,0 +1,9 @@
+package cc.mrbird.febs.mall.vo.common;
+
+import lombok.Data;
+
+@Data
+public class AdminCommonSetVo {
+
+    private String grayState;
+}
diff --git a/src/main/resources/templates/febs/views/modules/common/commonSet.html b/src/main/resources/templates/febs/views/modules/common/commonSet.html
new file mode 100644
index 0000000..ab4bd59
--- /dev/null
+++ b/src/main/resources/templates/febs/views/modules/common/commonSet.html
@@ -0,0 +1,69 @@
+<div class="layui-fluid layui-anim febs-anim" id="common-set" lay-title="公共设置">
+    <div class="layui-row layui-col-space8 febs-container">
+        <form class="layui-form" action="" lay-filter="common-set-form">
+            <div class="layui-card">
+                <div class="layui-card-body">
+                    <div class="layui-form-item">
+                        <blockquote class="layui-elem-quote blue-border">公共设置:</blockquote>
+                        <label class="layui-form-label">整体置灰:</label>
+                        <div class="layui-input-block">
+                            <input type="radio" name="grayState" value="1" title="开启" lay-filter="giveStateOpen" />
+                            <input type="radio" name="grayState" value="0" title="关闭" lay-filter="giveStateOpen" checked/>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="layui-card-footer">
+                    <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="common-set-form-submit" id="submit">保存</button>
+                </div>
+            </div>
+        </form>
+    </div>
+</div>
+<style>
+    .layui-form-label {
+        width: 120px;
+    }
+
+    .layui-form-item .layui-input-block {
+        margin-left: 150px;
+    }
+
+    .layui-table-form .layui-form-item {
+        margin-bottom: 20px !important;
+    }
+</style>
+<script data-th-inline="javascript" type="text/javascript">
+    layui.use(['dropdown', 'jquery', 'validate', 'febs', 'form', 'eleTree'], function () {
+        var $ = layui.jquery,
+            febs = layui.febs,
+            form = layui.form,
+            commonSet = [[${commonSet}]],
+            validate = layui.validate,
+            $view = $('#common-set');
+
+        form.verify(validate);
+
+        initCommonSetValue();
+
+        form.render();
+
+        function initCommonSetValue() {
+            form.val("common-set-form", {
+                "grayState": commonSet.grayState,
+            });
+        }
+
+        form.on('submit(common-set-form-submit)', function (data) {
+            console.log(data);
+            febs.post(ctx + 'admin/common/commonSet', data.field, function (res) {
+                if (res.code == 200) {
+                    febs.alert.success(res.message);
+                } else {
+                    febs.alert.warn(res.message);
+                }
+            });
+            return false;
+        });
+    });
+</script>
\ No newline at end of file

--
Gitblit v1.9.1