From acf7cd254090a98916270612e523eecfb1857264 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Thu, 09 Jan 2025 14:41:06 +0800
Subject: [PATCH] refactor(mall): 重构轮播图编辑页面

---
 src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html        |   43 ++++++-------
 src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html |   93 ++++++++++++++++++-------------
 src/main/java/cc/mrbird/febs/mall/controller/ViewBannerController.java           |    2 
 src/main/resources/templates/febs/views/modules/banner/platformBanner.html       |   13 ---
 4 files changed, 77 insertions(+), 74 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewBannerController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewBannerController.java
index e89e61e..140f687 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewBannerController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewBannerController.java
@@ -36,7 +36,7 @@
     @RequiresPermissions("platformBannerUpdate:update")
     public String platformBannerUpdate(@PathVariable long id, Model model) {
         PlatformBanner data = iAdminBannerService.selectPlatformBannerById(id);
-        model.addAttribute("member", data);
+        model.addAttribute("bannerInfo", data);
         return FebsUtil.view("modules/banner/platformBannerDetail");
     }
 
diff --git a/src/main/resources/templates/febs/views/modules/banner/platformBanner.html b/src/main/resources/templates/febs/views/modules/banner/platformBanner.html
index 7f7cb73..25a0255 100644
--- a/src/main/resources/templates/febs/views/modules/banner/platformBanner.html
+++ b/src/main/resources/templates/febs/views/modules/banner/platformBanner.html
@@ -59,15 +59,10 @@
     <span class="layui-badge febs-bg-{{isTop.color}}">{{ isTop.title }}</span>
 </script>
 <!-- 表格操作栏 start -->
-<script type="text/html" id="user-option">
-<!--    <span shiro:lacksPermission="user:view,user:update,user:delete">-->
-<!--        <span class="layui-badge-dot febs-bg-orange"></span> 无权限-->
-<!--    </span>-->
-<!--    <a lay-event="edit" shiro:hasPermission="user:update">编辑-->
+<script type="text/html" id="banner-option">
     <a lay-event="edit">编辑
 		<i class="layui-icon febs-edit-area febs-blue"></i>
  	</a>
-<!--    <a lay-event="delete" shiro:hasPermission="user:update">删除-->
     <a lay-event="delete">删除
 		<i class="layui-icon febs-edit-area febs-blue"></i>
  	</a>
@@ -163,15 +158,11 @@
                         templet: function (d) {
                             return '<img src="'+d.imageUrl+'" >'
                         }, minWidth: 200,align:'center'},
-                    // {field: 'sort', title: '联系方式', minWidth: 200,align:'center'},
-                    
                     {title: '是否可跳转', templet: '#isJump', minWidth: 60,align:'center'},
                     {field: 'jumpUrl', title: '跳转链接', minWidth: 200,align:'center'},
                     {title: '跳转外部或内部', templet: '#isInside', minWidth: 60,align:'center'},
-                    // {title: '显示端口', templet: '#showPort', minWidth: 60,align:'center'},
                     {title: '是否置顶', templet: '#isTop', minWidth: 60,align:'center'},
-                    
-                    {title: '操作', toolbar: '#user-option', minWidth: 140, fixed : 'right'}
+                    {title: '操作', toolbar: '#banner-option', minWidth: 140, fixed : 'right'}
                 ]]
             });
         }
diff --git a/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html b/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html
index f696b90..8de7868 100644
--- a/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html
+++ b/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html
@@ -22,14 +22,14 @@
         <div class="layui-form-item febs-hide">
             <label class="layui-form-label febs-form-item-require">用户id:</label>
             <div class="layui-input-block">
-                <input type="text" name="id" data-th-value="${member.id}">
+                <input type="text" name="id" data-th-value="${bannerInfo.id}">
             </div>
         </div>
         <div class="layui-form-item">
             <label class="layui-form-label febs-form-item-require">标题:</label>
             <div class="layui-input-block">
-                <input type="text" name="name"  data-th-id="${member.name}"
-                        autocomplete="off" class="layui-input" >
+                <input type="text" name="name"
+                       autocomplete="off" class="layui-input" >
             </div>
         </div>
         <div class="layui-form-item">
@@ -47,49 +47,35 @@
             <label class="layui-form-label febs-form-item-require">图片链接:</label>
             <div class="layui-input-block">
                 <input type="text" id="imageUrl" name="imageUrl"
-                        autocomplete="off" class="layui-input" readonly>
+                       autocomplete="off" class="layui-input" readonly>
             </div>
         </div>
-<!--        <div class="layui-form-item">-->
-<!--            <label class="layui-form-label febs-form-item-require">联系方式:</label>-->
-<!--            <div class="layui-input-block">-->
-<!--                <input type="text" name="sort" minlength="4" maxlength="10" data-th-id="${member.sort}"-->
-<!--                       lay-verify="range|sort" autocomplete="off" class="layui-input" >-->
-<!--            </div>-->
-<!--        </div>-->
         <div class="layui-form-item">
             <label class="layui-form-label febs-form-item-require">是否置顶:</label>
             <div class="layui-input-block">
-                <input type="radio" name="isTop" value="1" title="是">
+                <input type="radio" name="isTop" value="1" title="是" checked="">
                 <input type="radio" name="isTop" value="2" title="否">
             </div>
         </div>
-<!--        <div class="layui-form-item">-->
-<!--            <label class="layui-form-label febs-form-item-require">显示端口:</label>-->
-<!--            <div class="layui-input-block">-->
-<!--                <input type="radio" name="showPort" value="1" title="pc">-->
-<!--                <input type="radio" name="showPort" value="2" title="手机">-->
-<!--            </div>-->
-<!--        </div>-->
         <div class="layui-form-item">
             <label class="layui-form-label febs-form-item-require">是否可跳转:</label>
             <div class="layui-input-block">
-                <input type="radio" name="isJump" value="1" title="是">
+                <input type="radio" name="isJump" value="1" title="是" checked="">
                 <input type="radio" name="isJump" value="2" title="否">
             </div>
         </div>
+
         <div class="layui-form-item">
-            <label class="layui-form-label">跳转链接:</label>
+            <label class="layui-form-label">关联活动:</label>
             <div class="layui-input-block">
-                <input type="text" name="jumpUrl"  data-th-id="${member.jumpUrl}"
-                        autocomplete="off" class="layui-input" >
+                <div id="jumpUrl-list"></div>
             </div>
-            <div class="layui-form-mid layui-word-aux">图片需要跳转到商品详情,请填写商品编号。</div>
         </div>
+
         <div class="layui-form-item">
             <label class="layui-form-label febs-form-item-require">跳转外部或内部:</label>
             <div class="layui-input-block">
-                <input type="radio" name="isInside" value="1" title="内">
+                <input type="radio" name="isInside" value="1" title="内" checked="">
                 <input type="radio" name="isInside" value="2" title="外">
             </div>
         </div>
@@ -100,7 +86,7 @@
 </div>
 
 <script data-th-inline="javascript">
-    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','upload'], function () {
+    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','upload', 'xmSelect'], function () {
         var $ = layui.$,
             febs = layui.febs,
             layer = layui.layer,
@@ -108,7 +94,7 @@
             treeSelect = layui.treeSelect,
             form = layui.form,
             eleTree = layui.eleTree,
-            member = [[${member}]],
+            bannerInfo = [[${bannerInfo}]],
             $view = $('#banner-update'),
             validate = layui.validate,
             upload = layui.upload,
@@ -132,26 +118,55 @@
 
         form.render();
 
-        initUserValue();
+        var activityList = xmSelect.render({
+            el: '#jumpUrl-list',
+            language: 'zh',
+            prop : {
+                value : 'id',
+                children : 'child'
+            },
+            iconfont: {
+                parent: 'hidden',
+            },
+            radio: true,//单选按钮。如何想要多选直接注释掉此行代码
+            clickClose: true,
+            tree: {
+                show: true,
+                //非严格模式
+                strict: false,
+            },
+            data: []
+        })
+
+        febs.get(ctx + 'admin/activity/activityList', null, function(res) {
+            activityList.update({
+                data : res.data,
+                autoRow: true,
+            });
+            // 确保在数据加载完成后初始化表单值
+            initBannerValue();
+        })
 
         formSelects.render();
 
-        function initUserValue() {
-            $('#imageUrls').attr('src', member.imageUrl);
+        function initBannerValue() {
+            $('#imageUrls').attr('src', bannerInfo.imageUrl);
             form.val("banner-update-form", {
-                "id": member.id,
-                "name": member.name,
-                "imageUrl": member.imageUrl,
-                "isInside": member.isInside,
-                // "showPort": member.showPort,
-                "jumpUrl": member.jumpUrl,
-                // "sort": member.sort,
-                "isTop": member.isTop,
-                "isJump": member.isJump
+                "id": bannerInfo.id,
+                "name": bannerInfo.name,
+                "imageUrl": bannerInfo.imageUrl,
+                "isInside": bannerInfo.isInside,
+                "jumpUrl": bannerInfo.jumpUrl,
+                "isTop": bannerInfo.isTop,
+                "isJump": bannerInfo.isJump
             });
+            var arr = [];
+            arr.push(bannerInfo.jumpUrl)
+            activityList.setValue(arr);
         }
 
         form.on('submit(banner-update-form-submit)', function (data) {
+            data.field.jumpUrl = activityList.getValue('valueStr');
             febs.post(ctx + 'admin/banner/platformBannerConfirm', data.field, function () {
                 layer.closeAll();
                 febs.alert.success('设置成功');
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
index a21f756..1c26e1b 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsUpdateNew.html
@@ -435,8 +435,6 @@
         //         return layedit.sync(indexUpdate);
         //     }
         // });
-
-        formSelects.render();
         const E = window.wangEditor;
         const editor = new E('#toolbar-container', '#text-container'); // 传入两个元素
         editor.config.showLinkImg = false;
@@ -476,7 +474,7 @@
 
         var category = xmSelect.render({
             el: '#goods-category',
-            language: 'zn',
+            language: 'zh',
             prop : {
                 value : 'id',
                 children : 'child'
@@ -494,18 +492,9 @@
             data: []
         })
 
-        febs.get(ctx + 'admin/goodsCategory/categoryTree', null, function(res) {
-            category.update({
-                data : res.data,
-                autoRow: true,
-            });
-
-            // initValue();
-        })
-
         var couponRule = xmSelect.render({
             el: '#coupon-rule',
-            language: 'zn',
+            language: 'zh',
             prop : {
                 value : 'id',
                 children : 'child'
@@ -523,18 +512,9 @@
             data: []
         })
 
-        febs.get(ctx + 'admin/goods/couponTreeSet', null, function(res) {
-            couponRule.update({
-                data : res.data,
-                autoRow: true,
-            });
-
-            initValue();
-        })
-
         var carriageRule = xmSelect.render({
             el: '#carriage-rule',
-            language: 'zn',
+            language: 'zh',
             prop : {
                 value : 'id',
                 children : 'child'
@@ -559,6 +539,23 @@
             });
         })
 
+        febs.get(ctx + 'admin/goods/couponTreeSet', null, function(res) {
+            couponRule.update({
+                data : res.data,
+                autoRow: true,
+            });
+        })
+
+        febs.get(ctx + 'admin/goodsCategory/categoryTree', null, function(res) {
+            category.update({
+                data : res.data,
+                autoRow: true,
+            });
+            initValue();
+        })
+
+        formSelects.render();
+
 
         var tableSkuData = [];
         var tableIns = table.render({

--
Gitblit v1.9.1