Virtualorder.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  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 as OrderCommonModel;
  14. use app\model\order\VirtualOrder as VirtualOrderModel;
  15. use think\facade\Config;
  16. use app\model\system\Promotion as PromotionModel;
  17. /**
  18. * 虚拟订单管理 控制器
  19. */
  20. class Virtualorder extends BaseAdmin
  21. {
  22. /**
  23. * 外卖订单列表
  24. */
  25. public function lists()
  26. {
  27. $order_label_list = array(
  28. "order_no" => "订单号",
  29. "out_trade_no" => "外部单号",
  30. "name" => "收货人姓名",
  31. "order_name" => "商品名称",
  32. "site_name" => "店铺名称",
  33. );
  34. $order_status = input("order_status", "");//订单状态
  35. $order_name = input("order_name", '');
  36. $pay_type = input("pay_type", '');
  37. $order_from = input("order_from", '');
  38. $start_time = input("start_time", '');
  39. $end_time = input("end_time", '');
  40. $site_id = input("site_id", '');
  41. $order_label = !empty($order_label_list[ input("order_label") ]) ? input("order_label") : "";
  42. $search_text = input("search", '');
  43. $promotion_type = input("promotion_type", '');
  44. $order_common_model = new OrderCommonModel();
  45. if(request()->isAjax()){
  46. $page_index = input('page', 1);
  47. $page_size = input('limit', PAGE_LIST_ROWS);
  48. $condition = [
  49. ["order_type", "=", 4]
  50. ];
  51. //订单状态
  52. if ($order_status != "") {
  53. $condition[] = ["order_status", "=", $order_status];
  54. }
  55. //订单内容 模糊查询
  56. if ($order_name != "") {
  57. $condition[] = ["order_name", 'like', "%$order_name%" ];
  58. }
  59. //订单来源
  60. if ($order_from != "") {
  61. $condition[] = ["order_from", "=", $order_from];
  62. }
  63. //订单支付
  64. if ($pay_type != "") {
  65. $condition[] = ["pay_type", "=", $pay_type];
  66. }
  67. //营销类型
  68. if ($promotion_type != "") {
  69. if($promotion_type == 'empty'){
  70. $condition[] = ["promotion_type", "=", ''];
  71. }else{
  72. $condition[] = ["promotion_type", "=", $promotion_type];
  73. }
  74. }
  75. if (!empty($start_time) && empty($end_time)) {
  76. $condition[] = ["create_time", "egt", date_to_time($start_time)] ;
  77. } elseif (empty($start_time) && !empty($end_time)) {
  78. $condition[] = ["create_time", "elt", date_to_time($end_time)] ;
  79. } elseif (!empty($start_time) && !empty($end_time)) {
  80. $condition[] = [ 'create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
  81. }
  82. if ($search_text != "") {
  83. $condition[] = [$order_label, 'like', "%$search_text%" ];
  84. }
  85. if(!empty($site_id))
  86. {
  87. $condition[] = ["site_id", '=', $site_id ];
  88. }
  89. $list = $order_common_model->getOrderPageList($condition, $page_index, $page_size);
  90. return $list;
  91. }else {
  92. $this->assign("order_label_list", $order_label_list);
  93. $order_model = new VirtualOrderModel();
  94. $order_status_list = $order_model->order_status;
  95. $this->assign("order_status_list", $order_status_list);//订单状态
  96. //订单来源 (支持端口)
  97. $order_from = Config::get("app_type");
  98. $this->assign('order_from_list', $order_from);
  99. $pay_type = $order_common_model->getPayType();
  100. $this->assign("pay_type_list", $pay_type);
  101. //营销活动类型
  102. $promotion_model = new PromotionModel();
  103. $promotion_type = $promotion_model->getPromotionType();
  104. $this->assign("promotion_type", $promotion_type);
  105. return $this->fetch('virtualorder/lists');
  106. }
  107. }
  108. /**
  109. * 外卖订单详情
  110. */
  111. public function detail()
  112. {
  113. $order_id = input("order_id", 0);
  114. $order_common_model = new OrderCommonModel();
  115. $order_detail_result = $order_common_model->getOrderDetail($order_id);
  116. $order_detail =$order_detail_result["data"];
  117. $this->assign("order_detail", $order_detail);
  118. return $this->fetch('virtualorder/detail');
  119. }
  120. }