evaluate.js 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  1. Evaluate = function(limit = 0, limits = []) {
  2. var _this = this;
  3. _this.listCount = 0;
  4. _this.page = 1;
  5. _this.limits = limits;
  6. _this.limit = limit == false ? 10 : limit;
  7. };
  8. Evaluate.prototype.getList = function(d) {
  9. var _this = d._this;
  10. var page = _this.page;
  11. var limit = _this.limit;
  12. var search_type = d.search_type;
  13. var search_text = d.search_text == null ? {} : d.search_text;
  14. var explain_type = d.explain_type;
  15. var start_time = d.start_time;
  16. var end_time = d.end_time;
  17. var goods_id = d.goods_id;
  18. var is_audit = d.is_audit;
  19. $.ajax({
  20. url: ns.url("shop/goods/evaluate"),
  21. async: false,
  22. data: {
  23. "page": page,
  24. "page_size": limit,
  25. "search_type": search_type,
  26. "search_text": search_text,
  27. "explain_type": explain_type,
  28. "start_time": start_time,
  29. "end_time": end_time,
  30. "goods_id" : goods_id,
  31. "is_audit" : is_audit,
  32. },
  33. type: "POST",
  34. dataType: "JSON",
  35. success: function (res) {
  36. _this.listCount = res.data.count;
  37. $(".evaluate-table").find("tbody").empty();
  38. var d = res.data.list;
  39. if (d.length == 0) {
  40. var html = '<tr><td colspan="8" align="center">无数据</td></tr>';
  41. $(".evaluate-table").find("tbody").append(html);
  42. }
  43. for (var i in d) {
  44. var img_one = d[i].sku_image.split(",")[0];
  45. var html = '';
  46. var isFirstExplain = Boolean(d[i].explain_first) ? 1 : 0;//是否第一次评价
  47. html += '<tr>';
  48. html += '<td>' +
  49. '<div>' +
  50. '<input class="evaluate_id" type="hidden" value=' + d[i].evaluate_id + ' data-is-first-explain="' + isFirstExplain + '" />' +
  51. '<input type="checkbox" name="evaluate" value=' + d[i].evaluate_id + ' lay-skin="primary" lay-filter="evaluate" ' + ($("input[name='check_all']").is(":checked") ? "checked" : "") + ' />' +
  52. '</div>' +
  53. '</td>';
  54. html += '<td>' +
  55. '<div class="table-title">' +
  56. '<div class="title-pic" id="goods_img_'+ i +'">' +
  57. // '<img layer-src src="' + ns.img(d[i].sku_image,'small') + '">' +
  58. '<img layer-src="' + ns.img(img_one,'big') + '" src="' + ns.img(img_one,'small') + '">' +
  59. '</div>' +
  60. '<div class="title-content">' +
  61. '<p class="sku-name">' + d[i].sku_name + '</p>' +
  62. '<p>¥' + d[i].sku_price + '</p>' +
  63. '</div>' +
  64. '</div>' +
  65. '</td>';
  66. html += '<td>' +
  67. '<div class="table-title">' +
  68. '<p>' + d[i].member_name + '</p>' +
  69. '</div>' +
  70. '</td>';
  71. html += '<td>' +
  72. '<div class="table-title evaluate-img">';
  73. if (d[i].explain_type == 1) {
  74. html += `<p class="evaluate-level-good"><img src= "${SHOPIMG}/good_evaluate.png" /><span>好评</span></p>`;
  75. } else if (d[i].explain_type == 2) {
  76. html += `<p class="evaluate-level-middel"><img src= "${SHOPIMG}/middel_evaluate.png" /><span>中评</span></p>`;
  77. } else {
  78. html += `<p class="evaluate-level-bad"><img src= "${SHOPIMG}/bad_evaluate.png" /><span>差评</span></p>`;
  79. }
  80. '</div>' +
  81. '</td>';
  82. if(d[i].again_images.length > 0 && d[i].images.length == false){
  83. html += '<td style="padding-top:45px">';
  84. html += '<div class="evaluate" style="margin-bottom:45px">'+
  85. '<p>' + d[i].content + '</p>'+
  86. '</div>';
  87. }else{
  88. html += '<td>';
  89. html += '<div class="evaluate">'+
  90. '<p>' + d[i].content + '</p>'+
  91. '</div>';
  92. }
  93. if (d[i].images) {
  94. html += '<div class="evaluate-img">';
  95. var images = d[i].images.split(",");
  96. for (var j=0; j<images.length; j++) {
  97. html += '<div class="title-pic" id="eva_img_'+ i +'_'+ j +'">';
  98. html += '<img layer-src src="' + ns.img(images[j]) + '" onerror=src="'+ns.img('public/static/img/null.png')+'">';
  99. html += '</div>';
  100. }
  101. html += '</div>';
  102. }
  103. if (d[i].explain_first) {
  104. html += '<div class="evaluate-explain">'+
  105. '<span class="again-evaluate required">商家回复:</span>'+
  106. '<p>' + d[i].explain_first + '</p>' +
  107. '</div>';
  108. }
  109. if (d[i].again_content) {
  110. html += '<hr />';
  111. html += '<div class="evaluate-again">' +
  112. '<span class="again-evaluate required">追评:</span>' +
  113. '<p>' + d[i].again_content + '</p>' +
  114. '</div>';
  115. if (d[i].again_images) {
  116. html += '<div class="evaluate-img">';
  117. var again_images = d[i].again_images.split(",");
  118. for (var k=0; k<again_images.length; k++) {
  119. html += '<div class="title-pic" id="again_img_'+ i +'_'+ k +'">';
  120. html += '<img layer-src src="' + ns.img(again_images[k]) + '" onerror=src="'+ns.img('public/static/img/null.png')+'">';
  121. html += '</div>';
  122. }
  123. html += '</div>';
  124. }
  125. }
  126. if (d[i].again_explain) {
  127. html += '<div class="evaluate-again-explain">'+
  128. '<span class="again-evaluate required">[商家回复]</span>'+
  129. '<p>' + d[i].again_explain + '</p>' +
  130. '</div>';
  131. }
  132. html += '</td>';
  133. if(d[i].again_time != 0){
  134. if(d[i].again_images.length > 0 ){
  135. html += '<td>' +
  136. '<div class="table-title">' +
  137. '<p>' + ns.time_to_date(d[i].create_time) + '</p>' +
  138. '</div>' +
  139. '<hr style="margin:45px 0px;>' +
  140. '<div class="table-title">' +
  141. '<p>' + ns.time_to_date(d[i].again_time) + '</p>' +
  142. '</div>' +
  143. '</td>';
  144. }else{
  145. html += '<td>' +
  146. '<div class="table-title">' +
  147. '<p>' + ns.time_to_date(d[i].create_time) + '</p>' +
  148. '</div>' +
  149. '<hr>' +
  150. '<div class="table-title">' +
  151. '<p>' + ns.time_to_date(d[i].again_time) + '</p>' +
  152. '</div>' +
  153. '</td>';
  154. }
  155. }else{
  156. html += '<td>' +
  157. '<div class="table-title">' +
  158. '<p>' + ns.time_to_date(d[i].create_time) + '</p>' +
  159. '</div>' +
  160. '</td>';
  161. }
  162. var audit = "已审核";
  163. var audit_action = '';
  164. if(d[i].is_audit == 0){
  165. audit = "未审核";
  166. audit_action = '<a class="default layui-btn" onclick="audit(this,1)">审核通过</a>';
  167. audit_action += '<a class="default layui-btn" onclick="audit(this,2)">审核拒绝</a>';
  168. audit_action += '<a class=" layui-btn" onclick="toDelete(this)">删除评论</a>';
  169. }else if(d[i].is_audit == 1){
  170. audit = "审核通过";
  171. audit_action += '<a class="layui-btn" onclick="toDelete(this)">删除评论</a>';
  172. }else if(d[i].is_audit == 2){
  173. audit = "审核拒绝";
  174. audit_action += '<a class="layui-btn" onclick="toDelete(this)">删除评论</a>';
  175. }
  176. var again_audit = "未追评";
  177. if (d[i].again_time){
  178. if(d[i].again_is_audit == 0){
  179. again_audit = "未审核";
  180. if (d[i].is_audit != 0 && d[i].again_is_audit == 0){
  181. audit_action = '<a class="default layui-btn" onclick="again_audit(this,1)">通过追评</a>';
  182. audit_action += '<a class="default layui-btn" onclick="again_audit(this,2)">拒绝追评</a>';
  183. }
  184. }else if(d[i].again_is_audit == 1){
  185. again_audit = "审核通过";
  186. }else if(d[i].again_is_audit == 2){
  187. again_audit = "审核拒绝";
  188. }
  189. }
  190. html += '<td style="text-align:center;">' + audit + '</td>';
  191. html += '<td><div class="table-btn order-list-top-line">';
  192. html += audit_action;
  193. if(d[i].is_audit == 1) {
  194. if ((d[i].content != "" && d[i].explain_first == "")) {
  195. html += '<a class="default layui-btn" onclick="replay(this)">回复</a>';
  196. } else if ((d[i].again_content != "" && d[i].again_explain == "" && d[i].again_is_audit == 1)) {
  197. html += '<a class="default layui-btn" onclick="replay(this)">追评回复</a>';
  198. }
  199. if ((d[i].content != "" && d[i].explain_first != "")) {
  200. html += '<a class="default layui-btn" onclick="deleteContent(this,0)">删除回复</a>';
  201. }
  202. if ((d[i].again_content != "" && d[i].again_explain != "")) {
  203. html += '<a class="default layui-btn" onclick="deleteContent(this,1)">删除追评回复</a>';
  204. }
  205. }
  206. html += '</div></td>';
  207. html += '</tr>';
  208. $(".evaluate-table").find("tbody").append(html);
  209. layui.use(['form', 'layer'],function(){
  210. var form = layui.form,
  211. layer = layui.layer;
  212. form.render();
  213. layer.photos({
  214. photos: '.title-pic',
  215. anim: 5
  216. });
  217. });
  218. }
  219. }
  220. });
  221. };
  222. Evaluate.prototype.pageInit = function (d) {
  223. var _this = d._this;
  224. layui.use('laypage', function () {
  225. var laypage = layui.laypage;
  226. laypage.render({
  227. elem: 'laypage',
  228. count: _this.listCount,
  229. limit: _this.limit,
  230. limits: _this.limits,
  231. prev: '<i class="layui-icon layui-icon-left"></i>',
  232. next: '<i class="layui-icon layui-icon-right"></i>',
  233. layout: ['count','limit','prev', 'page', 'next'],
  234. // curr: location.hash.replace('#!page=', ''), //获取起始页
  235. // hash: 'page',
  236. jump: function (obj, first) {
  237. _this.limit = obj.limit;
  238. if (!first) {
  239. _this.page = obj.curr;
  240. _this.getList({
  241. _this: _this,
  242. "search_type": d.search_type,
  243. "search_text": d.search_text,
  244. "explain_type": d.explain_type,
  245. "start_time": d.start_time,
  246. "end_time": d.end_time,
  247. "goods_id" : d.goods_id,
  248. "is_audit" : d.is_audit
  249. });
  250. }
  251. }
  252. });
  253. });
  254. };