| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459 |
- {extend name="base"/}
- {block name="resources"}
- <link rel="stylesheet" type="text/css" href="SHOP_CSS/evaluate.css" />
- <style>
- .layui-table{margin: 15px 0;}
- tbody .title-content{}
- .layui-inline{margin-bottom: 15px !important;}
- .tab-bottom{display: flex;justify-content: space-between;}
- .evaluate-table tr td:nth-child(5),.evaluate-table tr td:nth-child(6){padding-right: 0px;}
- .evaluate-table tr td:nth-child(6){padding-left: 0px;}
- .layui-layout-admin.admin-style-2 .layui-form-item .layui-input-inline{background-color: #fff;}
- .layui-layout-admin.admin-style-2 .table-bottom{padding: 15px 0 10px;}
- .title-content .sku-name {overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
- </style>
- {/block}
- {block name="main"}
- <!-- 搜索框 -->
- <div class="screen layui-collapse" >
- <div class="layui-colla-item">
- <form class="layui-colla-content layui-form layui-show" lay-filter="selection_panel">
- <div class="layui-form-item">
- <div class="layui-inline">
- <label class="layui-form-label">搜索类型</label>
- <div class="layui-input-inline">
- <select name="search_type">
- <option value="sku_name">商品名称</option>
- <option value="member_name">评价人名称</option>
- </select>
- </div>
- <div class="layui-input-inline">
- <input type="text" name="search_text" placeholder="请输入搜索内容" class="layui-input len-mid" autocomplete="off">
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">评价类型</label>
- <div class="layui-input-inline">
- <select name="explain_type">
- <option value="">请选择评分类型</option>
- <option value="1">好评</option>
- <option value="2">中评</option>
- <option value="3">差评</option>
- </select>
- </div>
- </div>
-
- <div class="layui-inline">
- <label class="layui-form-label">评论时间</label>
- <div class="layui-input-inline">
- <input type="text" name="start_time" id="start_time" placeholder="开始时间" class="layui-input" autocomplete="off" readonly>
- <i class=" iconrili iconfont calendar"></i>
- </div>
- <div class="layui-form-mid">-</div>
- <div class="layui-input-inline end-time">
- <input type="text" name="end_time" id="end_time" placeholder="结束时间" class="layui-input" autocomplete="off" readonly>
- <i class=" iconrili iconfont calendar"></i>
- </div>
- </div>
- </div>
- <input type="hidden" name="goods_id" value="{$goods_id}">
- <div class="form-row">
- <button class="layui-btn" lay-submit lay-filter="search">筛选</button>
- <button type="reset" class="layui-btn layui-btn-primary">重置</button>
- </div>
- </form>
- </div>
- </div>
- <div class="layui-tab table-tab" lay-filter="is_audit">
- <ul class="layui-tab-title">
- <li class="layui-this" lay-id="">全部</li>
- <li lay-id="1">未审核</li>
- <li lay-id="2">审核通过</li>
- <li lay-id="3">审核拒绝</li>
- </ul>
- <div class="layui-tab-content">
- <div class="table-bottom layui-table-bottom-tool-temp layui-form" style="float: left;border: none; padding-left: 15px;">
- <input type="checkbox" name="check_all" lay-skin="primary" lay-filter="check_all">
- <button class="layui-btn layui-btn-primary js-audit-pass" data-is-audit="1">批量通过</button>
- <button class="layui-btn layui-btn-primary js-audit-refuse" data-is-audit="2">批量拒绝</button>
- <button class="layui-btn layui-btn-primary js-audit-delete" data-is-audit="3">批量删除</button>
- </div>
- <table class="layui-table evaluate-table layui-form" lay-skin="line" lay-size="lg">
- <div class="layui-tab-content">
- <colgroup>
- <col width="3%">
- <col width="20%">
- <col width="10%">
- <col width="10%">
- <col width="27%">
- <col width="10%">
- <col width="10%">
- <col width="10%">
- </colgroup>
- <thead>
- <tr>
- <th><input type="checkbox" name="check_all" lay-skin="primary" lay-filter="check_all" /></th>
- <th>商品信息</th>
- <th>客户昵称</th>
- <th>评论等级</th>
- <th>评论详情</th>
- <th>评论时间</th>
- <th style="text-align: center;">审核状态</th>
- <th class = 'operate'>操作</th>
- </tr>
- </thead>
- <tbody></tbody>
- </div>
- </table>
- <div class="tab-bottom">
- <div class="table-bottom layui-table-bottom-tool-temp layui-form" style="float: left;border: none; padding-left: 15px;">
- <input type="checkbox" name="check_all" lay-skin="primary" lay-filter="check_all">
- <button class="layui-btn layui-btn-primary js-audit-pass" data-is-audit="1">批量通过</button>
- <button class="layui-btn layui-btn-primary js-audit-refuse" data-is-audit="2">批量拒绝</button>
- <button class="layui-btn layui-btn-primary js-audit-delete" data-is-audit="3">批量删除</button>
- </div>
- <div id="laypage"></div>
- </div>
- </div>
- </div>
- {/block}
- {block name="script"}
- <script>
- var SHOPIMG = "SHOP_IMG";
- </script>
- <script src="SHOP_JS/evaluate.js"></script>
- <script>
- var limit = 5;
- var evaluate = new Evaluate(limit, [2, 5, 10]);
- var goods_id = "{$goods_id}";
- evaluate.getList({
- "_this": evaluate,
- "goods_id" : goods_id,
- });
- evaluate.pageInit({
- "_this": evaluate,
- "goods_id" : goods_id,
- });
- layui.use(['form', 'laydate','element'], function() {
- var form = layui.form,
- laydate = layui.laydate;
- element = layui.element;
- currentDate = new Date(),
- minDate = "";
- form.render();
- //监听Tab切换
- element.on('tab(is_audit)', function(data) {
- var is_audit = $(this).attr("lay-id");
- var num = $(".layui-laypage-limits option:selected").val()
- var evaluate = new Evaluate(num, [2, 5, 10]);
- data = form.val('selection_panel');
- evaluate.getList({
- "_this": evaluate,
- "search_type": data.search_type,
- "search_text": data.search_text,
- "explain_type": data.explain_type,
- "start_time": data.start_time,
- "end_time": data.end_time,
- "goods_id" : data.goods_id,
- "is_audit" : is_audit,
- });
- evaluate.pageInit({
- "_this": evaluate,
- "search_type": data.search_type,
- "search_text": data.search_text,
- "explain_type": data.explain_type,
- "start_time": data.start_time,
- "end_time": data.end_time,
- "goods_id" : data.goods_id,
- "is_audit" : is_audit,
- });
- return false;
- });
- currentDate.setDate(currentDate.getDate() - 7);
- form.on('checkbox(check_all)', function(data){
- $("input[name='evaluate']").prop("checked",data.elem.checked);
- $("input[name='check_all']").prop("checked",data.elem.checked);
- form.render();
- });
- form.on('checkbox(evaluate)', function(data){
- if($("input[name='evaluate']:checked").length == limit){
- $("input[name='check_all']").prop("checked",true);
- } else {
- $("input[name='check_all']").prop("checked",false);
- }
- form.render();
- });
- $(".js-audit-pass,.js-audit-refuse,.js-audit-delete").click(function () {
- var evaluate_ids = [];
- var is_audit = $(this).attr("data-is-audit");
- $("input[name='evaluate']:checked").each(function () {
- evaluate_ids.push($(this).val());
- });
- if(evaluate_ids.length<1) {
- layer.msg("请选择要操作的数据");
- return;
- }
- if(is_audit==3){
- deleteEvaluate(evaluate_ids.toString());
- }else{
- modifyAuditEvaluate(evaluate_ids.toString(),is_audit);
- }
- });
- //开始时间
- laydate.render({
- elem: '#start_time',
- type: 'datetime'
- });
- //结束时间
- laydate.render({
- elem: '#end_time',
- type: 'datetime'
- });
- /**
- * 重新渲染结束时间
- */
- function reRender() {
- $("#end_time").remove();
- $(".end-time").html('<input type="text" class="layui-input" placeholder="结束时间" name="end_time" id="end_time" >');
- laydate.render({
- elem: '#end_time',
- type: 'datetime',
- min: minDate
- });
- }
- /**
- * 搜索
- */
- form.on('submit(search)', function(data) {
- var num = $(".layui-laypage-limits option:selected").val()
- var evaluate = new Evaluate(num, [2, 5, 10]);
- var is_audit = $('.layui-tab-title .layui-this').attr('lay-id');
- evaluate.getList({
- "_this": evaluate,
- "search_type": data.field.search_type,
- "search_text": data.field.search_text,
- "explain_type": data.field.explain_type,
- "start_time": data.field.start_time,
- "end_time": data.field.end_time,
- "goods_id" : data.field.goods_id,
- "is_audit" : is_audit,
- });
- evaluate.pageInit({
- "_this": evaluate,
- "search_type": data.field.search_type,
- "search_text": data.field.search_text,
- "explain_type": data.field.explain_type,
- "start_time": data.field.start_time,
- "end_time": data.field.end_time,
- "goods_id" : data.field.goods_id,
- "is_audit" : is_audit,
- });
- return false;
- });
- });
- function replay(e) {
- var input = $(e).parents("tr").find(".evaluate_id");
- var evaluate_id = input.val();
- var isFirstExplain = input.attr("data-is-first-explain");
- layer.prompt({
- formType: 2,
- value: '',
- title: '请输入回复内容',
- area: ['350px', '150px'] ,//自定义文本域宽高
- yes: function(index, layero) {
- var explain = layero.find(".layui-layer-input").val();
-
- if (explain) {
- $.ajax({
- url: ns.url("shop/goods/evaluateapply"),
- data: {
- evaluate_id: evaluate_id,
- explain: explain,
- is_first_explain: isFirstExplain
- },
- dataType: 'JSON', //服务器返回json格式数据
- type: 'POST', //HTTP请求类型
- success: function(res) {
- if (res.code == 0) {
- window.location.reload();
- } else {
- layer.closeAll();
- evaluate.getList({
- "_this": evaluate,
- 'is_audit' : $(".layui-tab-title").find('.layui-this').attr('lay-id')
- });
- layer.msg(res.message);
- }
- }
- });
- layer.close(index);
- } else {
- layer.msg('请输入回复内容!', {icon: 5, anim: 6});
- }
- }
- });
- }
-
- var repeat_flag = false;
- function deleteContent(e, isFirst) {
- var input = $(e).parents("tr").find(".evaluate_id");
- var evaluate_id = input.val();
-
- if(repeat_flag) return false;
- repeat_flag = true;
- layer.confirm('确定要删除回复内容吗?', function() {
- $.ajax({
- url: ns.url("shop/goods/deleteContent"),
- data: {
- evaluate_id: evaluate_id,
- is_first: isFirst
- },
- dataType: 'JSON', //服务器返回json格式数据
- type: 'POST', //HTTP请求类型
- success: function(res) {
- repeat_flag = false;
- if (res.code == 0) {
- evaluate.getList({
- "_this": evaluate,
- 'is_audit' : $(".layui-tab-title").find('.layui-this').attr('lay-id')
- });
- layer.closeAll();
- } else {
- layer.closeAll();
- layer.msg(res.message);
- }
- }
- });
- }, function () {
- layer.close();
- repeat_flag = false;
- });
- }
- // 修改首评审核状态
- function audit(e,is_audit) {
- var input = $(e).parents("tr").find(".evaluate_id");
- var evaluate_id = input.val();
- modifyAuditEvaluate(evaluate_id,is_audit);
- }
- // 修改删除评论操作之前
- function toDelete(e) {
- var input = $(e).parents("tr").find(".evaluate_id");
- var evaluate_id = input.val();
- deleteEvaluate(evaluate_id);
- }
- function modifyAuditEvaluate(evaluate_ids,is_audit) {
- var hint = '确定要审核通过吗?';
- if(is_audit == 2){
- hint = '确定要拒绝审核吗?';
- }
- layer.confirm(hint, function() {
- $.ajax({
- url: ns.url("shop/goods/modifyAuditEvaluate"),
- data: {
- evaluate_ids: evaluate_ids,
- is_audit: is_audit
- },
- dataType: 'JSON', //服务器返回json格式数据
- type: 'POST', //HTTP请求类型
- success: function (res) {
- layer.msg(res.message);
- if (res.code == 0) {
- evaluate.getList({
- "_this": evaluate,
- 'is_audit' : $(".layui-tab-title").find('.layui-this').attr('lay-id')
- });
- }
- }
- });
- });
- }
- function deleteEvaluate(evaluate_ids) {
- if(repeat_flag) return false;
- repeat_flag = true;
- layer.confirm('确定要删除评论吗?', function() {
- $.ajax({
- url: ns.url("shop/goods/deleteEvaluate"),
- data: {
- evaluate_ids: evaluate_ids,
- },
- dataType: 'JSON', //服务器返回json格式数据
- type: 'POST', //HTTP请求类型
- success: function (res) {
- repeat_flag = false;
- layer.msg(res.message);
- if (res.code == 0) {
- evaluate.getList({
- "_this": evaluate,
- 'is_audit' : $(".layui-tab-title").find('.layui-this').attr('lay-id')
- });
- location.reload();
- }
- }
- });
- }, function () {
- layer.close();
- repeat_flag = false;
- });
- }
- function again_audit(e,is_audit) {
- var input = $(e).parents("tr").find(".evaluate_id");
- var evaluate_id = input.val();
- modifyAgainAuditEvaluate(evaluate_id,is_audit);
- }
- function modifyAgainAuditEvaluate(evaluate_ids,is_audit) {
- $.ajax({
- url: ns.url("shop/goods/modifyAgainAuditEvaluate"),
- data: {
- evaluate_ids: evaluate_ids,
- again_is_audit: is_audit
- },
- dataType: 'JSON', //服务器返回json格式数据
- type: 'POST', //HTTP请求类型
- success: function (res) {
- layer.msg(res.message);
- if (res.code == 0) {
- evaluate.getList({
- "_this": evaluate,
- 'is_audit' : $(".layui-tab-title").find('.layui-this').attr('lay-id')
- });
- }
- }
- });
- }
- </script>
- {/block}
|