{layout name="layout1" /} <style> .layui-table-cell { height: auto; } p{ float: left; } </style> <div class="wrapper"> <div class="layui-card"> <!-- 操作提示 --> <div class="layui-card-body"> <div class="layui-collapse like-layui-collapse" style="border:1px dashed #c4c4c4"> <div class="layui-colla-item"> <div class="layui-inline"> <h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2> <div class="layui-colla-content layui-show"> <p>*设置参与砍价活动的商品。</p> <p>*生效的砍价活动商品需要满足两个条件,一是开启活动,二是在活动有效期内。</p> </div> </div> </div> </div> </div> <!-- 搜索模块 --> <div class="layui-form layui-card-header layuiadmin-card-header-auto" style="margin-top: 30px;"> <div class="layui-form-item"> <div class="layui-inline"> <label for="goods_name" class="layui-form-label">商品名称:</label> <div class="layui-input-block"> <input type="text" id="goods_name" name="goods_name" placeholder="请输入" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline"> <label for="status" class="layui-form-label">砍价状态:</label> <div class="layui-input-inline"> <select name="status" id="status" > <option value="">全部</option> <option value="1">已开启</option> <option value="0">已关闭</option> </select> </div> </div> <div class="layui-inline"> <button class="layui-btn layui-btn-sm layuiadmin-btn-article {$view_theme_color}" lay-submit lay-filter="list-search"> <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i> </button> <button class="layui-btn layui-btn-sm layui-btn-primary layuiadmin-btn-article }" lay-submit lay-filter="list-clear-search">重置</button> </div> </div> </div> <!-- 数据表格 --> <div class="layui-card-body"> <div style="padding-bottom: 10px;"> <button class="layui-btn layui-btn-sm layuiadmin-btn {$view_theme_color}" data-type="add">新增砍价商品</button> </div> <div class="layui-tab" lay-filter="lists-tab"> <ul class="layui-tab-title"> <li class="layui-this" data-type="1">砍价商品({$num.audit_pass})</li> <li data-type="0">待审核商品({$num.unaudit})</li> <li data-type="2">审核拒绝商品({$num.audit_refund})</li> </ul> </div> <table id="table-lists" lay-filter="table-lists"></table> <script type="text/html" id="table-goods"> <div> <img src="{{d.goods.image}}" alt="图片" style="width:60px;height:60px;float:left;" class="image-show"> <div style="margin-left:5px; width:150px;height:60px;white-space:normal;float: left;">{{d.goods.name}}</div> </div> </script> <script type="text/html" id="table-cost_price"> ¥{{d.goods.min_price}} ~ ¥{{d.goods.max_price}} </script> <script type="text/html" id="table-floor_price"> ¥{{d.bargain_min_price}} ~ ¥{{d.bargain_max_price}} </script> <script type="text/html" id="info"> <p>发起砍价:{{d.info.launch_people_number_count}}</p> <p>砍价成功人数:{{d.info.success_knife_people_number_count}}</p> <p>帮砍人数:{{d.info.knife_people_number_count}}</p> </script> <script type="text/html" id="table-activity_time"> {{d.activity_start_time}} ~ {{d.activity_end_time}} </script> <script type="text/html" id="operation"> {{# if(d.status == 1){ }} <a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="stop"><i class="layui-icon"></i>停止活动</a> {{# } }} {{# if(d.status == 0){ }} <a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="start"><i class="layui-icon"></i>开启活动</a> {{# } }} <a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="detail"><i class="layui-icon"></i>详情</a> <a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a> <a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">移除商品</a> {{# if(d.audit_status == 1){ }} <a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="lists">砍价记录</a> {{# } }} </script> </div> </div> </div> <script> layui.config({ base: '/static/plug/layui-admin/dist/layuiadmin/' }).extend({ index: 'lib/index' }).use(['index', 'table', 'like'], function(){ var $ = layui.$ ,form = layui.form ,table = layui.table ,like = layui.like ,element = layui.element; //监听搜索 form.on('submit(list-search)', function(data){ var field = data.field; //执行重载 table.reload('table-lists', { where: field }); }); //清空查询 form.on('submit(list-clear-search)', function () { $('#status').val(''); $('#goods_name').val(''); form.render('select'); //刷新列表 table.reload('table-lists', { where: [], page: { curr: 1 }, }); }); //获取列表 getList(''); //切换列表 element.on('tab(lists-tab)', function (data) { $('#goods_name').val(''); $('#status').val(''); form.render('select'); var type = $(this).attr('data-type'); getList(type); }); // 渲染数据表格 function getList(type) { table.render({ elem: '#table-lists' ,url: '{:url("bargain.Bargain/activity")}?type=' + type ,cols: [[ {field: 'id', title: 'ID',width:60, align:"center"} ,{field: 'goods', title: '商品',width:160, templet: '#table-goods'} ,{field: 'cost_price', title: '原价',width:160, align: 'center', templet: '#table-cost_price'} ,{field: 'floor_price', title: '底价',width:160, align: 'center', templet: '#table-floor_price'} ,{field: 'info', title: '砍价信息', width:130, align: 'center',templet: '#info'} ,{field: 'activity_time', title: '活动有效期', width:300, align: 'center', templet: '#table-activity_time'} ,{field: 'status_text', title: '状态', width:100, align: 'center'} ,{fixed: 'right', title: '操作', width:450, align: 'center', toolbar: '#operation'} ]] ,page:true ,text: {none: '暂无数据!'} ,response: { statusCode: 1 } ,parseData: function(res){ return { "code":res.code, "msg":res.msg, "count": res.data.count, "data": res.data.lists }; } ,done: function(){ $(".layui-table-main tr").each(function (index, val) { $($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height()); $($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height()); }); } }); } // 事件 var active = { add: function (obj) { layer.open({ type: 2 ,title: '新增砍价商品' ,content: '{:url("bargain.Bargain/add")}' ,area: ['90%','90%'] ,btn: ['确定', '取消'] ,yes: function(index, layero){ var iframeWindow = window['layui-layer-iframe'+ index]; var submitID = 'addSubmit'; var submit = layero.find('iframe').contents().find('#'+ submitID); //监听提交 iframeWindow.layui.form.on('submit('+ submitID +')', function(data){ var field = data.field; like.ajax({ url:'{:url("bargain.Bargain/add")}', data:field, type:"post", success:function(res) { if(res.code === 1) { layui.layer.msg(res.msg, { offset:'15px', icon:1, time:1000 }); layer.close(index); window.location.reload(); } } }); }); submit.trigger('click'); } }); }, edit: function (obj) { layer.open({ type: 2 ,title: '编辑砍价商品' ,content: '{:url("bargain.Bargain/edit")}?id=' + obj.data.id ,area: ['90%','90%'] ,btn: ['确定', '取消'] ,yes: function(index, layero){ var iframeWindow = window['layui-layer-iframe'+ index]; var submitID = 'addSubmit'; var submit = layero.find('iframe').contents().find('#'+ submitID); //监听提交 iframeWindow.layui.form.on('submit('+ submitID +')', function(data){ var field = data.field; like.ajax({ url:'{:url("bargain.Bargain/edit")}', data:field, type:"post", success:function(res) { if(res.code === 1) { layui.layer.msg(res.msg, { offset:'15px', icon:1, time:1000 }); layer.close(index); table.reload('table-lists'); } } }); }); submit.trigger('click'); } }); }, del: function(obj) { if (obj.data.del !== 0 || obj.data.status !== 0) { layui.layer.msg('活动进行中,禁止删除,请先结束活动!', { time:1000 }); return false; } layer.confirm('确定要删除该活动吗? ', function(index) { like.ajax({ url: '{:url("bargain.Bargain/del")}', data: {id:obj.data.id}, type: "post", success: function (res) { if (res.code === 1) { layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000}); layer.close(index); obj.del(); window.location.reload(); } } }); layer.close(index); }) }, lists: function (obj) { layer.open({ type: 2 ,title: '砍价列表' ,content: '{:url("bargain.Bargain/launch")}?bargain_id='+obj.data.id ,area: ['90%','90%'] }); }, detail: function (obj) { var id = obj.data.id; layer.open({ type: 2 ,title: '砍价活动商品详情' ,content: '{:url("bargain.bargain/bargain_detail")}?id='+id ,area: ['90%', '90%'] ,btn: ['确定', '取消'] ,yes: function(index, layero){ var iframeWindow = window['layui-layer-iframe'+ index] ,submitID = 'edit-submit' ,submit = layero.find('iframe').contents().find('#'+ submitID); submit.trigger('click'); } }) }, start: function (obj) { layer.confirm('确定要开启该活动吗? ', function(index) { like.ajax({ url: '{:url("bargain.Bargain/start")}', data: {id:obj.data.id}, type: "post", success: function (res) { if (res.code === 1) { layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000}); layer.close(index); obj.del(); } } }); table.reload('table-lists'); }) }, stop: function (obj) { layer.confirm('确定要停止活动:'+ obj.data.goods.name + '<br>'+'停止活动会将砍价中的砍价记录设置为砍价失败,请谨慎处理。', function(index) { like.ajax({ url: '{:url("bargain.Bargain/stop")}', data: {id:obj.data.id}, type: "post", success: function (res) { if (res.code === 1) { layui.layer.msg(res.msg, {offset: '15px', icon: 1, time: 1000}); layer.close(index); obj.del(); } } }); table.reload('table-lists'); }) }, // 切换状态 switchStatus: function (obj) { if (obj.status) { var endTime = Date.parse(new Date(obj.endTime)) / 1000; var curTime = Date.parse(new Date()) / 1000; if (endTime <= curTime) { layui.layer.msg('砍价时间已过,请重新修改活动时间后再开启!', {time: 1000}); table.reload('table-lists', {where: []}); return false; } like.ajax({ url:'{:url("bargain.Bargain/switchStatus")}', data:obj, type:"post", success:function(res) { if(res.code === 1) { layui.layer.msg(res.msg, { offset:'15px', icon:1, time:1000 }); table.reload('table-lists', { where: [] }); } } }); } else { layer.confirm('您确定要关闭该砍价活动吗?', { btn: ['确定','取消'] }, function(){ like.ajax({ url:'{:url("bargain.Bargain/switchStatus")}', data:obj, type:"post", success:function(res) { if(res.code === 1) { layui.layer.msg(res.msg, { offset:'15px', icon:1, time:1000 }); table.reload('table-lists', { where: [] }); } } }); }, function(){ table.reload('table-lists', {where: []}); }); } } }; // 监听表格右侧工具条 table.on('tool(table-lists)', function(obj){ var type = obj.event; active[type] ? active[type].call(this, obj) : ''; }); // 切换状态 form.on('switch(switch-status)',function (obj) { var id = obj.elem.attributes['data-id'].nodeValue; var fields = obj.elem.attributes['data-field'].nodeValue; var status = this.checked ? 1 : 0; var endTime = obj.elem.attributes['data-end-time'].nodeValue; var data = {"id":id, "field":fields, "status":status, endTime:endTime}; active['switchStatus'] ? active['switchStatus'].call(this, data) : ''; }); // 绑定点击按钮事件 $('.layui-btn.layuiadmin-btn').on('click', function(){ var type = $(this).data('type'); active[type] ? active[type].call(this) : ''; }); //监听搜索 form.on('submit(search)', function(data){ var field = data.field; table.reload('table-lists', { where: field, page: { curr: 1 } }); }); // 监听重置搜素 form.on('submit(clear-search)', function(){ $('#goods_name').val(''); $('#status').val(''); form.render('select'); table.reload('table-lists', { where: [] }); }); // 图片放大 $(document).on('click', '.image-show', function () { var src = $(this).attr('src'); like.showImg(src); }); }); </script>