|  |  |  | 
|---|
|  |  |  | <div class="layui-col-md10"> | 
|---|
|  |  |  | <div class="layui-form-item"> | 
|---|
|  |  |  | <div class="layui-inline"> | 
|---|
|  |  |  | <label class="layui-form-label layui-form-label-sm">商品名称</label> | 
|---|
|  |  |  | <div class="layui-input-inline"> | 
|---|
|  |  |  | <input type="text" placeholder="名称" name="goodsName" autocomplete="off" class="layui-input"> | 
|---|
|  |  |  | <input type="text" placeholder="商品名称" name="goodsName" autocomplete="off" class="layui-input"> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </form> | 
|---|
|  |  |  | <table lay-filter="userTable" lay-data="{id: 'userTable'}"></table> | 
|---|
|  |  |  | <table lay-filter="goodsListTable" lay-data="{id: 'goodsListTable'}"></table> | 
|---|
|  |  |  | <style type="text/css"> | 
|---|
|  |  |  | .layui-table-cell{ | 
|---|
|  |  |  | text-align:center; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .layui-table img{ | 
|---|
|  |  |  | max-width:100px | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::-webkit-scrollbar { | 
|---|
|  |  |  | height: 20px !important; | 
|---|
|  |  |  | background-color: #f4f4f4; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | <a lay-event="edit" shiro:hasPermission="user:update"><i | 
|---|
|  |  |  | class="layui-icon febs-edit-area febs-blue"></i></a> | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <script type="text/html" id="upOrDownSwitch"> | 
|---|
|  |  |  | {{# if(d.isSale === 1) { }} | 
|---|
|  |  |  | <input type="checkbox" value={{d.id}} lay-text="上架|下架" checked lay-skin="switch" lay-filter="upOrDownSwitch"> | 
|---|
|  |  |  | {{# } else { }} | 
|---|
|  |  |  | <input type="checkbox" value={{d.id}} lay-text="上架|下架" lay-skin="switch" lay-filter="upOrDownSwitch"> | 
|---|
|  |  |  | {{# } }} | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <script type="text/html" id="isHotSwitch"> | 
|---|
|  |  |  | {{# if(d.isHot === 1) { }} | 
|---|
|  |  |  | <input type="checkbox" value={{d.id}} lay-text="是|否" checked lay-skin="switch" lay-filter="isHotSwitch"> | 
|---|
|  |  |  | {{# } else { }} | 
|---|
|  |  |  | <input type="checkbox" value={{d.id}} lay-text="是|否" lay-skin="switch" lay-filter="isHotSwitch"> | 
|---|
|  |  |  | {{# } }} | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <script type="text/html" id="isSkuFormat"> | 
|---|
|  |  |  | {{# if(d.isSku === 1) { }} | 
|---|
|  |  |  | <span>是</span> | 
|---|
|  |  |  | {{# } else { }} | 
|---|
|  |  |  | <span>否</span> | 
|---|
|  |  |  | {{# } }} | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <script type="text/html" id="goodsTypeFormat"> | 
|---|
|  |  |  | {{# if(d.isNormal == 1) { }} | 
|---|
|  |  |  | <span>普通商品</span> | 
|---|
|  |  |  | {{# } else { }} | 
|---|
|  |  |  | <span>套餐</span> | 
|---|
|  |  |  | {{# } }} | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | .layui-form-onswitch { | 
|---|
|  |  |  | background-color: #5FB878 !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | <!-- 表格操作栏 end --> | 
|---|
|  |  |  | <script data-th-inline="none" type="text/javascript"> | 
|---|
|  |  |  | // 引入组件并初始化 | 
|---|
|  |  |  | 
|---|
|  |  |  | $reset = $view.find('#reset'), | 
|---|
|  |  |  | $searchForm = $view.find('form'), | 
|---|
|  |  |  | $add = $view.find('#add'), | 
|---|
|  |  |  | sortObject = {field: 'phone', type: null}, | 
|---|
|  |  |  | sortObject = {field: 'isSale', type: 'asc'}, | 
|---|
|  |  |  | tableIns; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | form.render(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | let currPageGoods = 1;//首先默认值为1,防止出错 | 
|---|
|  |  |  | //获取当前页 | 
|---|
|  |  |  | currPageGoods = $view.find(".layui-laypage-em").next().html(); | 
|---|
|  |  |  | // 表格初始化 | 
|---|
|  |  |  | initTable(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 初始化表格操作栏各个按钮功能 | 
|---|
|  |  |  | table.on('tool(userTable)', function (obj) { | 
|---|
|  |  |  | table.on('tool(goodsListTable)', function (obj) { | 
|---|
|  |  |  | var data = obj.data, | 
|---|
|  |  |  | layEvent = obj.event; | 
|---|
|  |  |  | if (layEvent === 'downGoods') { | 
|---|
|  |  |  | 
|---|
|  |  |  | $query.click(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | function goodsHot(id) { | 
|---|
|  |  |  | febs.get(ctx + 'admin/goods/goodsHot/' + id, null, function () { | 
|---|
|  |  |  | febs.alert.success('设置成功'); | 
|---|
|  |  |  | $query.click(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | function goodsNotHot(id) { | 
|---|
|  |  |  | febs.get(ctx + 'admin/goods/goodsNotHot/' + id, null, function () { | 
|---|
|  |  |  | febs.alert.success('设置成功'); | 
|---|
|  |  |  | $query.click(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 查询按钮 | 
|---|
|  |  |  | $query.on('click', function () { | 
|---|
|  |  |  | var params = $.extend(getQueryParams(), {field: sortObject.field, order: sortObject.type}); | 
|---|
|  |  |  | tableIns.reload({where: params, page: {curr: 1}}); | 
|---|
|  |  |  | // params.pageNum = $view.find(".layui-laypage-em").next().html(); | 
|---|
|  |  |  | tableIns.reload({where: params, page: {curr: currPageGoods}}); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 刷新按钮 | 
|---|
|  |  |  | $reset.on('click', function () { | 
|---|
|  |  |  | $searchForm[0].reset(); | 
|---|
|  |  |  | sortObject.type = 'null'; | 
|---|
|  |  |  | tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject}); | 
|---|
|  |  |  | tableIns.reload({where: getQueryParams(), page: {curr: currPageGoods}, initSort: sortObject}); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $add.on('click', function () { | 
|---|
|  |  |  | febs.view.tab.change("/modules/goods/goodsAddNew/"); | 
|---|
|  |  |  | febs.modal.open('新增商品', 'modules/goods/goodsAddNew/', { | 
|---|
|  |  |  | btn: ['提交', '取消'], | 
|---|
|  |  |  | area:['100%','100%'], | 
|---|
|  |  |  | yes: function (index, layero) { | 
|---|
|  |  |  | $('#febs-goods-add').find('#submit').trigger('click'); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | btn2: function () { | 
|---|
|  |  |  | layer.closeAll(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function initTable() { | 
|---|
|  |  |  | tableIns = febs.table.init({ | 
|---|
|  |  |  | elem: $view.find('table'), | 
|---|
|  |  |  | id: 'userTable', | 
|---|
|  |  |  | id: 'goodsListTable', | 
|---|
|  |  |  | url: ctx + 'admin/goods/goodsList?goodsType=1', | 
|---|
|  |  |  | cols: [[ | 
|---|
|  |  |  | {field: 'goodsNo', title: '商品编号', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'goodsName', title: '商品名称', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'goodsNo', title: '商品编号', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {field: 'goodsName', title: '商品名称', minWidth: 140,align:'left'}, | 
|---|
|  |  |  | {field: 'thumb', title: '缩略图', | 
|---|
|  |  |  | templet: function (d) { | 
|---|
|  |  |  | return '<a lay-event="seeImgThumb"><img id="seeImgThumb'+d.id+'" src="'+d.thumb+'" alt=""></a>'; | 
|---|
|  |  |  | }, minWidth: 150,align:'center'}, | 
|---|
|  |  |  | {field: 'categaryName', title: '分类', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'isSale', title: '是否上架', | 
|---|
|  |  |  | templet: function (d) { | 
|---|
|  |  |  | if (d.isSale === 1) { | 
|---|
|  |  |  | return '<span>上架</span>' | 
|---|
|  |  |  | } else if (d.isSale === 2) { | 
|---|
|  |  |  | return '<span>下架</span>' | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | return '' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, minWidth: 80,align:'center'}, | 
|---|
|  |  |  | {field: 'presentPrice', title: '现价', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'originalPrice', title: '原价', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'stock', title: '商品库存', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | {field: 'skuVolume', title: '商品销量', minWidth: 150,align:'left'}, | 
|---|
|  |  |  | //     {field: 'accountStatus', title: '账号状态', | 
|---|
|  |  |  | //         templet: function (d) { | 
|---|
|  |  |  | //             if (d.accountStatus === 1) { | 
|---|
|  |  |  | //                 return '<span style="color:green;">正常</span>' | 
|---|
|  |  |  | //             } else if (d.accountStatus === 2) { | 
|---|
|  |  |  | //                 return '<span style="color:red;">禁用</span>' | 
|---|
|  |  |  | //             }else{ | 
|---|
|  |  |  | //                 return '' | 
|---|
|  |  |  | //             } | 
|---|
|  |  |  | //         }, minWidth: 80,align:'center'}, | 
|---|
|  |  |  | //     {field: 'createdTime', title: '注册时间', minWidth: 180,align:'center'}, | 
|---|
|  |  |  | {field: 'categaryName', title: '分类', minWidth: 140,align:'left'}, | 
|---|
|  |  |  | {field: 'isSale', title: '是否上架', templet: '#upOrDownSwitch', minWidth: 100,align:'center'}, | 
|---|
|  |  |  | {field: 'isHot', title: '是否主推', templet: '#isHotSwitch', minWidth: 100,align:'center'}, | 
|---|
|  |  |  | {templet:"#goodsTypeFormat",  title: '商品类型', minWidth: 140,align:'left'}, | 
|---|
|  |  |  | {templet:"#isSkuFormat", title: '是否多规格', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {field: 'presentPrice', title: '现价', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {field: 'originalPrice', title: '原价', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {field: 'stock', title: '商品库存', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {field: 'skuVolume', title: '商品销量', minWidth: 100,align:'left'}, | 
|---|
|  |  |  | {title: '操作', | 
|---|
|  |  |  | templet: function (d) { | 
|---|
|  |  |  | if (d.isSale === 1) { | 
|---|
|  |  |  | return '<button class="layui-btn layui-btn-normal layui-btn-xs febs-bg-orange" lay-event="downGoods" shiro:hasPermission="user:update">下架</button>' | 
|---|
|  |  |  | + '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="detailGoods" shiro:hasPermission="user:update">详情</button>' | 
|---|
|  |  |  | return ''; | 
|---|
|  |  |  | // return '<button class="layui-btn layui-btn-normal layui-btn-xs febs-bg-orange" lay-event="downGoods" shiro:hasPermission="user:update">下架</button>' | 
|---|
|  |  |  | // + '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="detailGoods" shiro:hasPermission="user:update">详情</button>' | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | return '<button class="layui-btn layui-btn-normal layui-btn-xs febs-bg-green" lay-event="upGoods" shiro:hasPermission="user:update">上架</button>' | 
|---|
|  |  |  | // '<button class="layui-btn layui-btn-normal layui-btn-xs febs-bg-green" lay-event="upGoods" shiro:hasPermission="user:update">上架</button>' | 
|---|
|  |  |  | return '' | 
|---|
|  |  |  | + '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="goodsUpdate" shiro:hasPermission="user:update">编辑</button>' | 
|---|
|  |  |  | + '<button class="layui-btn layui-btn-normal layui-btn-xs febs-bg-red" lay-event="delGoods" shiro:hasPermission="user:update">删除</button>' | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | form.on('switch(upOrDownSwitch)', function (data) { | 
|---|
|  |  |  | if (data.elem.checked) { | 
|---|
|  |  |  | upGoods(data.value); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | downGoods(data.value); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | form.on('switch(isHotSwitch)', function (data) { | 
|---|
|  |  |  | if (data.elem.checked) { | 
|---|
|  |  |  | goodsHot(data.value); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | goodsNotHot(data.value); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取查询参数 | 
|---|
|  |  |  | function getQueryParams() { | 
|---|
|  |  |  | return { | 
|---|