From f16f74cacb9ef0ae4be89ed15353b6a449479d8c Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 28 May 2025 13:38:09 +0800
Subject: [PATCH] feat(mall): 添加轮播图背景图片功能

---
 src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html |  339 +++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 214 insertions(+), 125 deletions(-)

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 31fef1d..10156a1 100644
--- a/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html
+++ b/src/main/resources/templates/febs/views/modules/banner/platformBannerDetail.html
@@ -1,162 +1,251 @@
-<style>
-    #banner-update {
-        padding: 20px 25px 25px 0;
-    }
+<div class="layui-fluid layui-anim febs-anim" id="febs-banner-Info" lay-title="编辑">
+    <div class="layui-row febs-container">
+        <div class="layui-col-md12">
+            <div class="layui-fluid" id="banner-info">
+                <form class="layui-form" action="" lay-filter="banner-info-form">
+                    <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
+                        <ul class="layui-tab-title">
+                            <li class="layui-this">基础信息</li>
+                        </ul>
+                        <div class="layui-tab-content">
+                            <input type="text" name="id"
+                                   placeholder="" autoComplete="off" class="layui-input febs-hide">
+                            <div class="layui-tab-item layui-show">
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">标题:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" name="name" lay-verify="required"
+                                                   placeholder="" autocomplete="off" class="layui-input">
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">排序:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" name="sort" lay-verify="required"
+                                                   placeholder="" autocomplete="off" class="layui-input">
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">类别:</label>
+                                        <div class="layui-input-block">
+                                            <select name="type" class="banner-type" id="type">
+                                                <option value="">请选择</option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                </div>
 
-    #banner-update .layui-treeSelect .ztree li a, .ztree li span {
-        margin: 0 0 2px 3px !important;
-    }
-    #banner-update #data-permission-tree-block {
-        border: 1px solid #eee;
-        border-radius: 2px;
-        padding: 3px 0;
-    }
-    #user-add .layui-treeSelect .ztree li span.button.switch {
-        top: 1px;
-        left: 3px;
-    }
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">图片:</label>
+                                        <div class="layui-input-block">
+                                            <div class="layui-upload">
+                                                <button type="button" class="layui-btn layui-btn-normal layui-btn" id="bannerImgUploadButton">上传</button>
+                                                <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+                                                    <div class="layui-upload-list" id="bannerImgUpload"></div>
+                                                </blockquote>
+                                            </div>
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="layui-row layui-col-space10 layui-form-item febs-hide">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label">图片链接:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" id="imageUrl" lay-verify="required" name="imageUrl" autocomplete="off" class="layui-input" readonly>
+                                        </div>
+                                    </div>
+                                </div>
 
-</style>
-<div class="layui-fluid" id="banner-update">
-    <form class="layui-form" action="" lay-filter="banner-update-form">
-        <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}">
-            </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" minlength="4" maxlength="10" data-th-id="${member.name}"
-                       lay-verify="range|name" 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-upload">
-                <button type="button" class="layui-btn" id="test1">上传图片</button>
-                <div class="layui-input-block">
-                    <div class="layui-upload-list">
-                        <img class="layui-upload-img" id="imageUrls" width="100%" >
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label">背景图片:</label>
+                                        <div class="layui-input-block">
+                                            <div class="layui-upload">
+                                                <button type="button" class="layui-btn layui-btn-normal layui-btn" id="bannerImgUploadButtonBack">上传</button>
+                                                <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+                                                    <div class="layui-upload-list" id="bannerImgUploadBack"></div>
+                                                </blockquote>
+                                            </div>
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="layui-row layui-col-space10 layui-form-item febs-hide">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label">背景图片链接:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" id="imageBackUrl" name="imageBackUrl" autocomplete="off" class="layui-input" readonly>
+                                        </div>
+                                    </div>
+                                </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">是否置顶:</label>
+                                        <div class="layui-input-block">
+                                            <input type="radio" name="isTop" value="1" title="是" checked="">
+                                            <input type="radio" name="isTop" value="2" title="否">
+                                        </div>
+                                    </div>
+                                </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">是否可跳转:</label>
+                                        <div class="layui-input-block">
+                                            <input type="radio" name="isJump" value="1" title="是" checked="">
+                                            <input type="radio" name="isJump" value="2" title="否">
+                                        </div>
+                                    </div>
+                                </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">跳转外部或内部:</label>
+                                        <div class="layui-input-block">
+                                            <input type="radio" name="isInside" value="1" title="内" checked="">
+                                            <input type="radio" name="isInside" value="2" title="外">
+                                        </div>
+                                    </div>
+                                </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label">跳转链接:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" name="jumpUrl"
+                                                   autocomplete="off" class="layui-input" >
+                                            <div class="layui-form-mid layui-word-aux">图片需要跳转到商品详情,请填写商品编号。</div>
+                                        </div>
+                                    </div>
+                                </div>
+                            </div>
+                        </div>
                     </div>
-                </div>
+                    <div class="layui-form-item febs-hide">
+                        <button class="layui-btn" lay-submit="" lay-filter="banner-info-form-submit" id="submit">保存</button>
+                    </div>
+                </form>
             </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" id="imageUrl" name="imageUrl" minlength="4" maxlength="500"
-                       lay-verify="range|imageUrl" 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="jumpUrl" minlength="4" maxlength="10" data-th-id="${member.jumpUrl}"
-                       lay-verify="range|jumpUrl" 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="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="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="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="isInside" value="1" title="内">
-                <input type="radio" name="isInside" value="2" title="外">
-            </div>
-        </div>
-        <div class="layui-form-item febs-hide">
-            <button class="layui-btn" lay-submit="" lay-filter="banner-update-form-submit" id="submit"></button>
-        </div>
-    </form>
+    </div>
 </div>
-
+<style>
+    .blue-border {
+        border-left-color: #2db7f5;
+        font-size: 18px;
+    }
+    .layui-table-cell {
+        height:auto;
+    }
+    .layui-upload-list {
+        margin: 0 !important;
+    }
+    .multi-images {
+        margin: 0 5px !important;
+    }
+</style>
+<!-- 表格操作栏 end -->
 <script data-th-inline="javascript">
-    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','upload'], function () {
-        var $ = layui.$,
+    layui.use(['febs', 'form', 'validate','formSelects', 'table', 'upload'], function () {
+        var $ = layui.jquery,
             febs = layui.febs,
             layer = layui.layer,
-            formSelects = layui.formSelects,
-            treeSelect = layui.treeSelect,
+            table = layui.table,
             form = layui.form,
-            eleTree = layui.eleTree,
-            member = [[${member}]],
-            $view = $('#banner-update'),
-            validate = layui.validate,
+            formSelects = layui.formSelects,
+            $view = $('#banner-info'),
+            banner = [[${banner}]],
             upload = layui.upload,
-            _deptTree;
+            validate = layui.validate;
 
-        //普通图片上传
-        var uploadInst = upload.render({
-            elem: '#test1'
+        //图片上传
+        upload.render({
+            elem: '#bannerImgUploadButton'
             ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+            ,accept: 'file' //普通文件
+            ,size: 10240 //限制文件大小,单位 KB
             ,before: function(obj){
                 //预读本地文件示例,不支持ie8
                 obj.preview(function(index, file, result){
-                    $('#imageUrls').attr('src', result); //图片链接(base64)
+                    $('#bannerImgUpload').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
                 });
             }
             ,done: function(res){
-                febs.alert.success(res.data.src);
                 $("#imageUrl").val(res.data.src);
             }
         });
 
-        form.render();
+        //图片上传
+        upload.render({
+            elem: '#bannerImgUploadButtonBack'
+            ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
+            ,accept: 'file' //普通文件
+            ,size: 10240 //限制文件大小,单位 KB
+            ,before: function(obj){
+                //预读本地文件示例,不支持ie8
+                obj.preview(function(index, file, result){
+                    $('#bannerImgUploadBack').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
+                });
+            }
+            ,done: function(res){
+                $("#imageBackUrl").val(res.data.src);
+            }
+        });
 
-        initUserValue();
+        form.render();
+        //(下拉框)
+        $.get(ctx + 'admin/banner/typeAll', function (res) {
+            var data = res.data;
+            for (let k in data)
+            {
+                $(".banner-type").append("<option value='" + data[k].type + "'>" + data[k].code + "</option>");
+            }
+            layui.use('form', function () {
+                var form = layui.form;
+                $("#type").val(banner.type)
+                form.render();
+            });
+        });
+
+        initBannerTable();
 
         formSelects.render();
 
-        function initUserValue() {
-            $('#imageUrls').attr('src', member.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
+        function initBannerTable() {
+            form.val("banner-info-form", {
+                "id": banner.id,
+                "name": banner.name,
+                "imageUrl": banner.imageUrl,
+                "imageBackUrl": banner.imageBackUrl,
+                "isInside": banner.isInside,
+                "jumpUrl": banner.jumpUrl,
+                "isTop": banner.isTop,
+                "sort": banner.sort,
+                "isJump": banner.isJump,
+                "type": banner.type,
             });
+
+            $('#bannerImgUpload').append('<img src="' + banner.imageUrl + '" alt="" class="layui-upload-img single-image" style="width: 130px">');
+            $("#imageUrl").val(banner.imageUrl);
+
+            $('#bannerImgUploadBack').append('<img src="' + banner.imageBackUrl + '" alt="" class="layui-upload-img single-image" style="width: 130px">');
+            $("#imageBackUrl").val(banner.imageBackUrl);
         }
 
-        form.on('submit(banner-update-form-submit)', function (data) {
+        form.on('submit(banner-info-form-submit)', function (data) {
             febs.post(ctx + 'admin/banner/platformBannerConfirm', data.field, function () {
                 layer.closeAll();
-                febs.alert.success('设置成功');
-                $('#febs-banner').find('#reset').click();
+                febs.alert.success('操作成功');
+                $('#febs-banner').find('#query').click();
             });
             return false;
         });
+
     });
 </script>
\ No newline at end of file

--
Gitblit v1.9.1