fix
Hentua
2023-06-15 8bf923b44bbe9b45b73ddcc25df75c9c59f54e07
src/main/resources/templates/febs/views/modules/score/goodsAdd.html
@@ -68,6 +68,20 @@
        </div>
        <div class="layui-form-item">
            <div class="layui-col-lg6">
                <label class="layui-form-label febs-form-item-require">规定时间内</label>
                <div class="layui-input-inline">
                    <input type="text" name="rulesTimes"  lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-mid">天内,可领取</div>
                <div class="layui-input-inline">
                    <input type="text" name="rulesCnt"  lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-mid">次</div>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">商品介绍:</label>
            <div class="layui-input-block">
                <label>
@@ -80,17 +94,19 @@
            <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" id="test2">上传</button>
                    <button type="button" class="layui-btn layui-btn-normal layui-btn" id="test2">上传</button>
                    <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
                        <div class="layui-upload-list" id="demo2"></div>
                    </blockquote>
                    <div class="layui-word-aux">双击图片删除</div>
                </div>
            </div>
        </div>
        <div class="layui-form-item febs-hide">
            <label class="layui-form-label febs-form-item-require">缩略图链接:</label>
            <label class="layui-form-label">缩略图链接:</label>
            <div class="layui-input-block">
                <input type="text" id="thumb" name="thumb" autocomplete="off" class="layui-input" readonly>
                <input type="text" id="thumb" lay-verify="required" name="thumb" autocomplete="off" class="layui-input" readonly>
            </div>
        </div>
@@ -102,6 +118,7 @@
                    <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
                        <div class="layui-upload-list" id="thumbsBanners"></div>
                    </blockquote>
                    <div class="layui-word-aux">双击图片删除</div>
                </div>
            </div>
        </div>
@@ -116,7 +133,11 @@
        <div class="layui-form-item">
            <label class="layui-form-label febs-form-item-require">商品详情:</label>
            <div class="layui-input-block">
                <textarea id="lay_edit" lay-verify="goodsDetails" name = "goodsDetails" class="layui-textarea"></textarea>
<!--                <textarea id="lay_edit" lay-verify="goodsDetails" name = "goodsDetails" class="layui-textarea"></textarea>-->
                <div style="border: 1px solid #ccc;">
                    <div id="toolbar-container" style="border-bottom: 1px solid #ccc;"></div>
                    <div id="editor-container" style="height: 450px;"></div>
                </div>
            </div>
        </div>
        <div class="layui-form-item febs-hide">
@@ -135,7 +156,6 @@
            form = layui.form,
            laydate = layui.laydate,
            eleTree = layui.eleTree,
            member = [[${member}]],
            $view = $('#score-goods-add'),
            layedit = layui.layedit,
            upload = layui.upload,
@@ -146,72 +166,7 @@
            elem: '#febs-form-group-date'
        });
        formSelects.render();
        formSelects.config('user-add-goods', {
            searchUrl: ctx + 'admin/goodsCategory/categorys',
            response: {
                statusCode: 200
            },
            beforeSuccess: function (id, url, searchVal, result) {
                var data = result.data;
                var tranData = [];
                for (var i = 0; i < data.length; i++) {
                    tranData.push({
                        name: data[i].name,
                        value: data[i].id
                    })
                }
                result.data = tranData;
                return result;
            },
            success: function () {
                // formSelects.value('user-add-goods', result.id);
            },
            error: function (id, url, searchVal, err) {
                console.error(err);
                febs.alert.error('获取分类列表失败');
            }
        });
        //普通图片上传
        upload.render({
            elem: '#skuImg'
            ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
            ,before: function(obj){
                //预读本地文件示例,不支持ie8
                obj.preview(function(index, file, result){
                    $('#skuImgs').attr('src', result); //图片链接(base64)
                });
            }
            ,done: function(res){
                febs.alert.success(res.data.src);
                $("#skuImage").val(res.data.src);
            }
        });
        //多图片上传
        upload.render({
            elem: '#test2'
            ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
            ,multiple: true
            ,before: function(obj){
                //预读本地文件示例,不支持ie8
                obj.preview(function(index, file, result){
                    $('#demo2').append('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img">')
                });
            }
            ,done: function(res){
                var thumbs = $("#thumb").val();
                if(thumbs == ''){
                    $("#thumb").val(res.data.src);
                }else{
                    $("#thumb").val(thumbs + ',' + res.data.src);
                }
                // alert($("#thumb").val());
            }
        });
        upload.render({
            elem: '#thumbsBanner'
            ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
@@ -219,7 +174,7 @@
            ,before: function(obj){
                //预读本地文件示例,不支持ie8
                obj.preview(function(index, file, result){
                    $('#thumbsBanners').append('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img" style="width: 100px">')
                    $('#thumbsBanners').append('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img multi-images" style="width: 130px">')
                });
            }
            ,done: function(res){
@@ -229,35 +184,101 @@
                }else{
                    $("#thumbs").val(thumbs + ',' + res.data.src);
                }
                imgUnBind(".multi-images");
                imgMultiBind();
            }
        });
        layedit.set({   //设置图片接口
            uploadImage: {
                url: 'admin/goods/uploadFileBase64', //接口url
                type: 'post',
        function imgUnBind(className) {
            $(className).each(function() {
                $(this).unbind('dblclick');
            })
        }
        function imgMultiBind() {
            $(".multi-images").each(function(index, element) {
                $(this).on("dblclick", function() {
                    var imgThumb = $(".multi-images")[index];
                    $(imgThumb).remove();
                    var images = $("#thumbs").val();
                    var imagesArr;
                    if (images) {
                        imagesArr = images.split(",");
                        imagesArr.splice(index, 1);
                        images = imagesArr.join(",");
                    }
                    $("#thumbs").val(images);
                    imgUnBind(".multi-images");
                    imgMultiBind();
                });
            })
        }
        //图片上传
        upload.render({
            elem: '#test2'
            ,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
            ,multiple: true
            ,before: function(obj){
                //预读本地文件示例,不支持ie8
                obj.preview(function(index, file, result){
                    if ($("#thumb").val()) {
                        $('#demo2').html('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
                    } else {
                        $('#demo2').append('<img src="'+ result +'" alt="'+ file.name +'" class="layui-upload-img single-image" style="width: 130px">')
                    }
                });
            }
            ,done: function(res){
                $("#thumb").val(res.data.src);
                imgUnBind(".single-image");
                imgSingleBind();
            }
        });
        //创建一个编辑器
        var index = layedit.build('lay_edit',{
            height: 300
        function imgSingleBind() {
            $(".single-image").each(function(index, element) {
                $(this).on("dblclick", function() {
                    var imgThumb = $(".single-image")[index];
                    $(imgThumb).remove();
                    $("#thumb").val("");
                    imgUnBind(".single-image");
                    imgSingleBind();
                });
            })
        }
        var E = window.wangEditor;
        const editorConfig = { MENU_CONF: {} };
        editorConfig.MENU_CONF['uploadImage'] = {
            server: '/admin/goods/uploadFileBase64',
            fieldName : "file",
            customInsert(res, insertFn) {
                insertFn(res.data.src, res.data.title, '')
            },
        }
        const editor = E.createEditor({
            selector: '#editor-container',
            config : editorConfig,
            mode: 'default'
        });
        //提交时把值同步到文本域中
        form.verify({
            //content富文本域中的lay-verify值
            goodsDetails: function(value) {
                return layedit.sync(index);
            }
        const toolbar = E.createToolbar({
            editor,
            selector: '#toolbar-container',
            mode: 'default'
        });
        form.on('submit(score-goods-add-form-submit)', function (data) {
            data.field.goodsType = 2;
            // febs.post(ctx + 'admin/goods/addMallGoods', data.field, function () {
            //     layer.closeAll();
            //     febs.alert.success('新增成功');
            //     $('#febs-score-goods').find('#query').click();
            // });
            data.field.goodsDetails = editor.getHtml();
            $.ajax({
                'url':ctx + 'admin/goods/addMallGoods',
                'type':'post',
@@ -266,7 +287,7 @@
                'traditional': true,//ajax传递数组必须添加属性
                'data':JSON.stringify(data.field),
                'success':function (data) {
                    if(data.code==0){
                    if(data.code==200){
                        layer.closeAll();
                        febs.alert.success('新增成功');
                        $('#febs-score-goods').find('#query').click();