index.php 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. <?php
  2. use app\common\enum\DeliveryType as DeliveryTypeEnum;
  3. ?>
  4. <div class="row-content am-cf">
  5. <div class="row">
  6. <div class="am-u-sm-12 am-u-md-12 am-u-lg-12">
  7. <div class="widget am-cf">
  8. <div class="widget-head am-cf">
  9. <div class="widget-title am-cf"><?= $title ?></div>
  10. </div>
  11. <div class="widget-body am-fr">
  12. <!-- 工具栏 -->
  13. <div class="page_toolbar am-margin-bottom-xs am-cf">
  14. <form id="form-search" class="toolbar-form" action="">
  15. <input type="hidden" name="s" value="/<?= $request->pathinfo() ?>">
  16. <input type="hidden" name="dataType" value="<?= $dataType ?>">
  17. <div class="am-u-sm-12 am-u-md-3">
  18. <div class="am-form-group">
  19. <div class="am-btn-toolbar">
  20. <div class="am-btn-group am-btn-group-xs">
  21. <?php if (checkPrivilege('order.operate/export')): ?>
  22. <a class="j-export am-btn am-btn-success am-radius"
  23. href="javascript:void(0);">
  24. <i class="iconfont icon-daochu am-margin-right-xs"></i>订单导出
  25. </a>
  26. <?php endif; ?>
  27. <?php if (checkPrivilege('order.operate/batchdelivery')): ?>
  28. <?php if (in_array($dataType, ['all', 'delivery'])): ?>
  29. <a class="j-export am-btn am-btn-secondary am-radius"
  30. href="<?= url('order.operate/batchdelivery') ?>">
  31. <i class="iconfont icon-daoru am-margin-right-xs"></i>批量发货
  32. </a>
  33. <?php endif; ?>
  34. <?php endif; ?>
  35. </div>
  36. </div>
  37. </div>
  38. </div>
  39. <div class="am-u-sm-12 am-u-md-9">
  40. <div class="am fr">
  41. <div class="am-form-group am-fl">
  42. <?php $deliveryType = $request->get('delivery_type'); ?>
  43. <select name="delivery_type"
  44. data-am-selected="{btnSize: 'sm', placeholder: '配送方式'}">
  45. <option value=""></option>
  46. <option value="-1"
  47. <?= $deliveryType === '-1' ? 'selected' : '' ?>>全部
  48. </option>
  49. <?php foreach (DeliveryTypeEnum::data() as $item): ?>
  50. <option value="<?= $item['value'] ?>"
  51. <?= $item['value'] == $deliveryType ? 'selected' : '' ?>><?= $item['name'] ?>
  52. </option>
  53. <?php endforeach; ?>
  54. </select>
  55. </div>
  56. <div class="am-form-group am-fl">
  57. <?php $extractShopId = $request->get('extract_shop_id'); ?>
  58. <select name="extract_shop_id"
  59. data-am-selected="{btnSize: 'sm', placeholder: '自提门店名称'}">
  60. <option value=""></option>
  61. <option value="-1"
  62. <?= $extractShopId === '-1' ? 'selected' : '' ?>>全部
  63. </option>
  64. <?php if (isset($shopList)): foreach ($shopList as $item): ?>
  65. <option value="<?= $item['shop_id'] ?>"
  66. <?= $item['shop_id'] == $extractShopId ? 'selected' : '' ?>><?= $item['shop_name'] ?>
  67. </option>
  68. <?php endforeach; endif; ?>
  69. </select>
  70. </div>
  71. <div class="am-form-group tpl-form-border-form am-fl">
  72. <input type="text" name="start_time"
  73. class="am-form-field"
  74. value="<?= $request->get('start_time') ?>" placeholder="请选择起始日期"
  75. data-am-datepicker>
  76. </div>
  77. <div class="am-form-group tpl-form-border-form am-fl">
  78. <input type="text" name="end_time"
  79. class="am-form-field"
  80. value="<?= $request->get('end_time') ?>" placeholder="请选择截止日期"
  81. data-am-datepicker>
  82. </div>
  83. <div class="am-form-group am-fl">
  84. <div class="am-input-group am-input-group-sm tpl-form-border-form">
  85. <input type="text" class="am-form-field" name="search"
  86. placeholder="请输入订单号/用户昵称" value="<?= $request->get('search') ?>">
  87. <div class="am-input-group-btn">
  88. <button class="am-btn am-btn-default am-icon-search"
  89. type="submit"></button>
  90. </div>
  91. </div>
  92. </div>
  93. </div>
  94. </div>
  95. </form>
  96. </div>
  97. <div class="order-list am-scrollable-horizontal am-u-sm-12 am-margin-top-xs">
  98. <table width="100%" class="am-table am-table-centered
  99. am-text-nowrap am-margin-bottom-xs">
  100. <thead>
  101. <tr>
  102. <th width="25%" class="goods-detail">商品信息</th>
  103. <th width="10%">单价/数量</th>
  104. <th width="15%">实付款</th>
  105. <th>买家</th>
  106. <th>支付方式</th>
  107. <th>配送方式</th>
  108. <th>交易状态</th>
  109. <th>操作</th>
  110. </tr>
  111. </thead>
  112. <tbody>
  113. <?php $colspan = 8; ?>
  114. <?php if (!$list->isEmpty()): foreach ($list as $order): ?>
  115. <tr class="order-empty">
  116. <td colspan="<?= $colspan ?>"></td>
  117. </tr>
  118. <tr>
  119. <td class="am-text-middle am-text-left" colspan="<?= $colspan ?>">
  120. <span class="am-margin-right-lg"> <?= $order['create_time'] ?></span>
  121. <span class="am-margin-right-lg">订单号:<?= $order['order_no'] ?></span>
  122. </td>
  123. </tr>
  124. <?php $i = 0;
  125. foreach ($order['goods'] as $goods): $i++; ?>
  126. <tr>
  127. <td class="goods-detail am-text-middle">
  128. <div class="goods-image">
  129. <img src="<?= $goods['image']['file_path'] ?>" alt="">
  130. </div>
  131. <div class="goods-info">
  132. <p class="goods-title"><?= $goods['goods_name'] ?></p>
  133. <p class="goods-spec am-link-muted"><?= $goods['goods_attr'] ?></p>
  134. </div>
  135. </td>
  136. <td class="am-text-middle">
  137. <p>¥<?= $goods['goods_price'] ?></p>
  138. <p>×<?= $goods['total_num'] ?></p>
  139. </td>
  140. <?php if ($i === 1) : $goodsCount = count($order['goods']); ?>
  141. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  142. <p>¥<?= $order['pay_price'] ?></p>
  143. <p class="am-link-muted">(含运费:¥<?= $order['express_price'] ?>)</p>
  144. </td>
  145. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  146. <p><?= $order['user']['nickName'] ?></p>
  147. <p class="am-link-muted">(用户id:<?= $order['user']['user_id'] ?>)</p>
  148. </td>
  149. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  150. <span class="am-badge am-badge-secondary">
  151. <?= $order['pay_type']['text'] ?>
  152. </span>
  153. </td>
  154. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  155. <span class="am-badge am-badge-secondary">
  156. <?= $order['delivery_type']['text'] ?>
  157. </span>
  158. </td>
  159. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  160. <p>付款状态:
  161. <span class="am-badge
  162. <?= $order['pay_status']['value'] == 20 ? 'am-badge-success' : '' ?>">
  163. <?= $order['pay_status']['text'] ?></span>
  164. </p>
  165. <p>发货状态:
  166. <span class="am-badge
  167. <?= $order['delivery_status']['value'] == 20 ? 'am-badge-success' : '' ?>">
  168. <?= $order['delivery_status']['text'] ?></span>
  169. </p>
  170. <p>收货状态:
  171. <span class="am-badge
  172. <?= $order['receipt_status']['value'] == 20 ? 'am-badge-success' : '' ?>">
  173. <?= $order['receipt_status']['text'] ?></span>
  174. </p>
  175. <?php if ($order['order_status']['value'] == 20 || $order['order_status']['value'] == 21): ?>
  176. <p>订单状态:
  177. <span class="am-badge am-badge-warning"><?= $order['order_status']['text'] ?></span>
  178. </p>
  179. <?php endif; ?>
  180. </td>
  181. <td class="am-text-middle" rowspan="<?= $goodsCount ?>">
  182. <div class="tpl-table-black-operation">
  183. <?php if (checkPrivilege('order/detail')): ?>
  184. <a class="tpl-table-black-operation-green"
  185. href="<?= url('order/detail', ['order_id' => $order['order_id']]) ?>">
  186. 订单详情</a>
  187. <?php endif; ?>
  188. <?php if (checkPrivilege(['order/detail', 'order/delivery'])): ?>
  189. <?php if ($order['pay_status']['value'] == 20
  190. && $order['delivery_status']['value'] == 10
  191. && $order['order_status']['value'] != 20
  192. && $order['order_status']['value'] != 21
  193. ): ?>
  194. <a class="tpl-table-black-operation"
  195. href="<?= url('order/detail#delivery',
  196. ['order_id' => $order['order_id']]) ?>">去发货</a>
  197. <?php endif; ?>
  198. <?php endif; ?>
  199. <?php if (checkPrivilege(['order/detail', 'order.operate/confirmcancel'])): ?>
  200. <?php if ($order['order_status']['value'] == 21): ?>
  201. <a class="tpl-table-black-operation-del"
  202. href="<?= url('order/detail#cancel',
  203. ['order_id' => $order['order_id']]) ?>">去审核</a>
  204. <?php endif; ?>
  205. <?php endif; ?>
  206. </div>
  207. </td>
  208. <?php endif; ?>
  209. </tr>
  210. <?php endforeach; ?>
  211. <?php endforeach; else: ?>
  212. <tr>
  213. <td colspan="<?= $colspan ?>" class="am-text-center">暂无记录</td>
  214. </tr>
  215. <?php endif; ?>
  216. </tbody>
  217. </table>
  218. </div>
  219. <div class="am-u-lg-12 am-cf">
  220. <div class="am-fr"><?= $list->render() ?> </div>
  221. <div class="am-fr pagination-total am-margin-right">
  222. <div class="am-vertical-align-middle">总记录:<?= $list->total() ?></div>
  223. </div>
  224. </div>
  225. </div>
  226. </div>
  227. </div>
  228. </div>
  229. </div>
  230. <script>
  231. $(function () {
  232. /**
  233. * 订单导出
  234. */
  235. $('.j-export').click(function () {
  236. var data = {};
  237. var formData = $('#form-search').serializeArray();
  238. $.each(formData, function () {
  239. this.name !== 's' && (data[this.name] = this.value);
  240. });
  241. window.location = "<?= url('order.operate/export') ?>" + '&' + $.urlEncode(data);
  242. });
  243. });
  244. </script>