Complain.php 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 山西牛酷信息科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com.cn
  8. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用。
  9. * 任何企业和个人不允许对程序代码以任何形式任何目的再发布。
  10. * =========================================================
  11. */
  12. namespace app\admin\controller;
  13. use app\model\order\OrderCommon;
  14. use app\model\order\OrderRefund as OrderRefundModel;
  15. use app\model\order\Complain as ComplainModel;
  16. /**
  17. * 维权 控制器
  18. */
  19. class Complain extends BaseAdmin
  20. {
  21. /**
  22. * 维权订单列表
  23. * @return mixed
  24. */
  25. public function lists()
  26. {
  27. $complain_status = input("complain_status", "");//退款状态
  28. $sku_name = input("sku_name", '');//商品名称
  29. $start_time = input("start_time", '');//开始时间
  30. $end_time = input("end_time", '');//结束时间
  31. $order_no = input("order_no", '');//订单编号
  32. $site_id = input("site_id", "");
  33. $complain_model = new ComplainModel();
  34. if(request()->isAjax()){
  35. $page_index = input('page', 1);
  36. $page_size = input('page_size', PAGE_LIST_ROWS);
  37. $condition = [
  38. ];
  39. //维权状态
  40. if ($complain_status != "") {
  41. $condition[] = ["complain_status", "=", $complain_status];
  42. }
  43. //商品名称
  44. if ($sku_name != "") {
  45. $condition[] = ["sku_name", "like", "%$sku_name%"];
  46. }
  47. //订单编号
  48. if($order_no != ""){
  49. $condition[] = ["order_no", "like", "%$order_no%"] ;
  50. }
  51. if (!empty($start_time) && empty($end_time)) {
  52. $condition[] = ["complain_apply_time", "egt", date_to_time($start_time)] ;
  53. } elseif (empty($start_time) && !empty($end_time)) {
  54. $condition[] = ["complain_apply_time", "elt", date_to_time($end_time)] ;
  55. } elseif (!empty($start_time) && !empty($end_time)) {
  56. $condition[] = [ 'complain_apply_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
  57. }
  58. if(!empty($site_id))
  59. {
  60. $condition[] = ["site_id", "=", $site_id] ;
  61. }
  62. $list = $complain_model->getOrderComplainPageList($condition, $page_index, $page_size, "complain_apply_time desc");
  63. return $list;
  64. }else{
  65. $complain_status_list = $complain_model->complain_status;
  66. $this->assign("complain_status_list", $complain_status_list);//退款状态
  67. return $this->fetch("complain/lists");
  68. }
  69. }
  70. /**
  71. * 维权订单详情
  72. * @return mixed
  73. */
  74. public function detail()
  75. {
  76. $order_goods_id = input("order_goods_id", 0);
  77. //维权订单项信息
  78. $complain_model = new ComplainModel();
  79. $detail_result = $complain_model->getComplainDetail($order_goods_id);
  80. $detail = $detail_result["data"];
  81. if(empty($detail))
  82. $this->error("操作失败!请重试");
  83. $order_common_model = new OrderCommon();
  84. $order_info_result = $order_common_model->getOrderInfo([["order_id", "=", $detail["order_id"]]]);
  85. $order_info = $order_info_result["data"];
  86. if(empty($order_info))
  87. $this->error("操作失败!请重试");
  88. $this->assign("detail", $detail);
  89. $this->assign("order_info", $order_info);
  90. return $this->fetch("complain/detail");
  91. }
  92. /**
  93. * 维权拒绝
  94. * @return mixed
  95. */
  96. public function refuse()
  97. {
  98. $order_goods_id = input("order_goods_id", 0);
  99. $refund_refuse_reason = input("refund_refuse_reason", '');
  100. $complain_model = new ComplainModel();
  101. $data = array(
  102. "order_goods_id" => $order_goods_id,
  103. );
  104. $result = $complain_model->complainRefuse($data, $this->user_info, $refund_refuse_reason);
  105. return $result;
  106. }
  107. /**
  108. * 维权同意
  109. * @return mixed
  110. */
  111. public function agree()
  112. {
  113. $order_goods_id = input("order_goods_id", 0);
  114. $complain_model = new ComplainModel();
  115. $data = array(
  116. "order_goods_id" => $order_goods_id
  117. );
  118. $res = $complain_model->complainAgree($data, $this->user_info);
  119. return $res;
  120. }
  121. }