284 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			HTML
		
	
	
		
		
			
		
	
	
			284 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			HTML
		
	
	
|  | {layout name="layout1" /} | |||
|  | <!-- 样式 --> | |||
|  | <style> | |||
|  |     .layui-table-cell { | |||
|  |         height: auto; | |||
|  |     } | |||
|  | </style> | |||
|  | <!-- 操作提示 --> | |||
|  | <div class="layui-fluid"> | |||
|  |     <div class="layui-card" style="margin-top: 15px;"> | |||
|  |         <div class="layui-card-body"> | |||
|  |             <div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4"> | |||
|  |                 <div class="layui-colla-item"> | |||
|  |                     <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 class="layui-card-body"> | |||
|  |             <div class="layui-tab layui-tab-card" lay-filter="tabContainer"> | |||
|  |                 <ul class="layui-tab-title"> | |||
|  |                     <li data-type="1" class="layui-this">已回复评价</li> | |||
|  |                     <li data-type="0">待回复评价</li> | |||
|  |                 </ul> | |||
|  |                 <div class="layui-tab-content"> | |||
|  |                     <!-- 搜索 --> | |||
|  |                     <div class="layui-form"> | |||
|  |                         <div class="layui-form-item layui-row"> | |||
|  |                             <div class="layui-inline"> | |||
|  |                                 <label class="layui-form-label">商家名称:</label> | |||
|  |                                 <div class="layui-input-inline"> | |||
|  |                                     <input type="text" name="shop_name" class="layui-input" /> | |||
|  |                                 </div> | |||
|  |                                 <label class="layui-form-label">评价信息:</label> | |||
|  |                                 <div class="layui-input-inline"> | |||
|  |                                     <select name="search_type"> | |||
|  |                                         <option value="name">商品名称</option> | |||
|  |                                         <option value="sn">会员编号</option> | |||
|  |                                         <option value="nickname">会员昵称</option> | |||
|  |                                     </select> | |||
|  |                                 </div> | |||
|  |                                 <div class="layui-input-inline"> | |||
|  |                                     <input type="text" name="search_word" class="layui-input" /> | |||
|  |                                 </div> | |||
|  |                             </div> | |||
|  |                             <div class="layui-inline"> | |||
|  |                                 <label class="layui-form-label">评价等级:</label> | |||
|  |                                 <div class="layui-input-inline"> | |||
|  |                                     <select name="goods_comment"> | |||
|  |                                         <option value="">全部</option> | |||
|  |                                         <option value="1">好评</option> | |||
|  |                                         <option value="2">中评</option> | |||
|  |                                         <option value="3">差评</option> | |||
|  |                                     </select> | |||
|  |                                 </div> | |||
|  |                                 <div class="layui-inline"> | |||
|  |                                     <label class="layui-form-label">显示状态:</label> | |||
|  |                                     <div class="layui-input-inline"> | |||
|  |                                         <select name="status"> | |||
|  |                                             <option value="">全部</option> | |||
|  |                                             <option value="1">显示</option> | |||
|  |                                             <option value="2">隐藏</option> | |||
|  |                                         </select> | |||
|  |                                     </div> | |||
|  |                                 </div> | |||
|  |                             </div> | |||
|  |                             <div class="layui-inline"> | |||
|  |                                 <label class="layui-form-label">评价时间:</label> | |||
|  |                                 <div class="layui-input-inline" style="width: 390px"> | |||
|  |                                     <input type="text" class="layui-input" name="start_end" id="start_end"> | |||
|  |                                 </div> | |||
|  |                             </div> | |||
|  |                             <div class="layui-inline"> | |||
|  |                                 <button class="layui-btn layui-btn-normal" lay-submit lay-filter="search">查询</button> | |||
|  |                                 <button class="layui-btn layui-btn-primary" lay-submit lay-filter="clear-search">重置</button> | |||
|  |                             </div> | |||
|  |                         </div> | |||
|  |                     </div> | |||
|  |                 </div> | |||
|  |             </div> | |||
|  |             <!-- 数据表格 --> | |||
|  |             <table id="comment-lists" lay-filter="comment-lists"></table> | |||
|  |         </div> | |||
|  |     </div> | |||
|  | </div> | |||
|  | </div> | |||
|  | <script type="text/html" id="shop-info"> | |||
|  |     <img src="{{d.shop_logo}}" style="height:80px;width: 80px;margin-right: 10px;" class="image-show"> | |||
|  |     <div class="layui-input-inline" style="text-align:left;width: 240px"> | |||
|  |         <p>商家编号:{{d.shop_id}}</p> | |||
|  |         <p style="width: 180px;text-overflow:ellipsis;overflow: hidden">商家名称:{{d.shop_name}}</p> | |||
|  |         <p>商家类型:{{d.shop_type_desc}}</p> | |||
|  |     </div> | |||
|  | </script> | |||
|  | <script type="text/html" id="user-info"> | |||
|  |     <img src="{{d.avatar}}" style="height:80px;width: 80px;margin-right: 10px;" class="image-show"> | |||
|  |     <div class="layui-input-inline" style="text-align:left;width: 240px"> | |||
|  |         <p>会员编号:{{d.sn}}</p> | |||
|  |         <p style="width: 180px;text-overflow:ellipsis;overflow: hidden">昵称:{{d.nickname}}</p> | |||
|  |         <p>会员等级:{{d.levelName}}</p> | |||
|  |     </div> | |||
|  | </script> | |||
|  | <script type="text/html" id="goods-info"> | |||
|  |     <img src="{{d.item_image}}" style="height:80px;width: 80px;margin-right: 10px;" class="image-show"> | |||
|  |     <div class="layui-input-inline" style="text-align:left;width: 240px"> | |||
|  |         <p>{{d.goods_name}}</p> | |||
|  |         <p style="width: 180px;text-overflow:ellipsis;overflow: hidden">{{d.spec_value_str}}</p> | |||
|  |     </div> | |||
|  | </script> | |||
|  | <script type="text/html" id="image-lists"> | |||
|  |     {{#  layui.each(d.comment_image, function(index, item){ }} | |||
|  |     <img src="{{item}}" style="height:80px;width: 80px;margin-right: 10px;" class="image-show"> | |||
|  |     {{#  }); }} | |||
|  | </script> | |||
|  | <script type="text/html" id="operate"> | |||
|  |     <button class="layui-btn layui-btn-normal layui-btn-sm" lay-event="changeStatus"> | |||
|  |         {{# if( d.status == 0 ){ }} | |||
|  |         显示 | |||
|  |         {{# } else { }} | |||
|  |         隐藏 | |||
|  |         {{# } }} | |||
|  |     </button> | |||
|  |     <button class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</button> | |||
|  | </script> | |||
|  | <script> | |||
|  |     layui.config({ | |||
|  |         version: "{$front_version}", | |||
|  |         base: '/static/lib/' | |||
|  |     }).use(['layer', 'table', 'form', 'element', 'laydate'], function () { | |||
|  |         var $ = layui.jquery; | |||
|  |         var layer = layui.layer; | |||
|  |         var form = layui.form; | |||
|  |         var laydate = layui.laydate; | |||
|  |         var table = layui.table; | |||
|  |         var element = layui.element; | |||
|  | 
 | |||
|  |         // 日期范围选择器 | |||
|  |         laydate.render({ | |||
|  |             elem: '#start_end', | |||
|  |             type: 'datetime', | |||
|  |             range: '~' | |||
|  |         }); | |||
|  | 
 | |||
|  |         // 监听选项卡切换 | |||
|  |         element.on('tab(tabContainer)', function(data) { | |||
|  |             // 获取类型 | |||
|  |             var type = $(this).attr('data-type'); | |||
|  |             // 重置搜索 | |||
|  |             $('input[name=shop_name]').val(''); | |||
|  |             $('input[name=search_word]').val(''); | |||
|  |             $('input[name=start_end]').val(''); | |||
|  |             $('select[name=search_type]').val('name'); | |||
|  |             $('select[name=goods_comment]').val(''); | |||
|  |             $('select[name=status]').val(''); | |||
|  |             form.render('select'); | |||
|  |             // 重新加载数据表格 | |||
|  |             getList(type); | |||
|  |         }); | |||
|  | 
 | |||
|  |         // 监听查询 | |||
|  |         form.on('submit(search)', function(data){ | |||
|  |             var field = data.field; | |||
|  |             // 执行重载 | |||
|  |             table.reload('comment-lists', { | |||
|  |                 where: field, | |||
|  |                 page: {curr: 1} | |||
|  |             }); | |||
|  |         }); | |||
|  | 
 | |||
|  |         // 重置查询 | |||
|  |         form.on('submit(clear-search)', function(data){ | |||
|  |             // 重置搜索 | |||
|  |             $('input[name=shop_name]').val(''); | |||
|  |             $('input[name=search_word]').val(''); | |||
|  |             $('input[name=start_end]').val(''); | |||
|  |             $('select[name=search_type]').val('name'); | |||
|  |             $('select[name=goods_comment]').val(''); | |||
|  |             $('select[name=status]').val(''); | |||
|  |             form.render('select'); | |||
|  |             // 重新加载数据表格 | |||
|  |             table.reload('comment-lists', { | |||
|  |                 where: {}, | |||
|  |                 page: {curr: 1} | |||
|  |             }); | |||
|  |         }); | |||
|  | 
 | |||
|  |         // 首次进入 | |||
|  |         getList(1); // 1 已回复列表 | |||
|  | 
 | |||
|  |         function getList(type) { | |||
|  |             table.render({ | |||
|  |                 id: 'comment-lists' | |||
|  |                 ,elem: '#comment-lists' | |||
|  |                 ,url: "{:url('goods.comment/lists')}?type=" + type | |||
|  |                 , parseData: function(res) { // res 原始返回数据 | |||
|  |                     return { | |||
|  |                         'code' : res.code  // 0 代表正常返回 | |||
|  |                         , 'msg' : res.msg  // 提示消息 | |||
|  |                         , 'count' : res.data.count // 数据长度 | |||
|  |                         , 'data' : res.data.lists  // 数据列表 | |||
|  |                     } | |||
|  |                 } | |||
|  |                 , response: { // 重新设定返回的数据格式 | |||
|  |                     statusCode: 1, // 成功的状态码,默认0 | |||
|  |                 } | |||
|  |                 , page: true // 开启分页 | |||
|  |                 , limit: 10 | |||
|  |                 , limits: [10, 20, 30, 40, 50] | |||
|  |                 , text: { | |||
|  |                     none: '暂无数据' | |||
|  |                 } | |||
|  |                 , cols: [[ // 设置表头,二维数组,方法渲染必填 | |||
|  |                     { title: '商家信息', width: 250, align: 'center', templet: '#shop-info' }, | |||
|  |                     { title: '会员信息', width: 250, align: 'center', templet: '#user-info' }, | |||
|  |                     { title: '商品信息', width: 250, align: 'center', templet: '#goods-info' }, | |||
|  |                     { field: 'goods_comment_desc', title: '评分等级', width: 100,align: 'center' }, | |||
|  |                     { field: 'comment', title: '买家评价', width: 200, align: 'center' }, | |||
|  |                     { title: '评论图片', width: 250, align: 'center',templet: '#image-lists' }, | |||
|  |                     { field: 'reply', title: '商家回复', width: 200, align: 'center' }, | |||
|  |                     { field: 'status_desc', title: '显示状态', width: 100, align: 'center' }, | |||
|  |                     { field: 'create_time', title: '评价时间', width: 180, align: 'center' }, | |||
|  |                     { fixed: 'right' ,title: '操作',width: 160, align: 'center', toolbar: '#operate' } | |||
|  |                 ]], done: function () { | |||
|  |                     setTimeout(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()); | |||
|  |                         }); | |||
|  |                     }, 200); | |||
|  |                 } | |||
|  |             }); | |||
|  |         } | |||
|  | 
 | |||
|  |         table.on('tool(comment-lists)', function(obj) { | |||
|  |             if(obj.event == 'changeStatus') { // 修改显示状态 | |||
|  |                 if(obj.data.status == 0) { | |||
|  |                     var tips = '确定显示此条评论吗?'; | |||
|  |                 }else{ | |||
|  |                     var tips = '确定隐藏此条评论吗?'; | |||
|  |                 } | |||
|  |                 layer.confirm(tips, {icon: 3, title:'提示'}, function(index){ | |||
|  |                     like.ajax({ | |||
|  |                         url: '{:url("goods.comment/changeStatus")}', | |||
|  |                         data: {'id': obj.data.id}, | |||
|  |                         type: "post", | |||
|  |                         success: function (res) { | |||
|  |                             if(res.code == 1) { | |||
|  |                                 layer.msg(res.msg); | |||
|  |                             } | |||
|  |                             table.reload('comment-lists', { | |||
|  |                                 where: {}, | |||
|  |                                 page: {curr: 1} | |||
|  |                             }); | |||
|  |                         } | |||
|  |                     }); | |||
|  |                     layer.close(index); | |||
|  |                 }); | |||
|  |             } | |||
|  | 
 | |||
|  |             if(obj.event == 'del') { // 删除 | |||
|  |                 layer.confirm('确定要删除此条评论吗?', {icon: 3, title:'提示'}, function(index){ | |||
|  |                     like.ajax({ | |||
|  |                         url: '{:url("goods.comment/del")}', | |||
|  |                         data: {'id': obj.data.id}, | |||
|  |                         type: "post", | |||
|  |                         success: function (res) { | |||
|  |                             if(res.code == 1) { | |||
|  |                                 layer.msg(res.msg); | |||
|  |                             } | |||
|  |                             table.reload('comment-lists', { | |||
|  |                                 where: {}, | |||
|  |                                 page: {curr: 1} | |||
|  |                             }); | |||
|  |                         } | |||
|  |                     }); | |||
|  |                     layer.close(index); | |||
|  |                 }); | |||
|  |             } | |||
|  |         }); | |||
|  |     }); | |||
|  | </script> |