Sfoglia il codice sorgente

幸福保后台-第三方订单-增加导出功能(待测试)

xupuyuan 9 mesi fa
parent
commit
eb72b705fe
2 ha cambiato i file con 513 aggiunte e 1 eliminazioni
  1. 507 1
      app/controller/admin/order/ThirdOrder.php
  2. 6 0
      route/admin.php

+ 507 - 1
app/controller/admin/order/ThirdOrder.php

@@ -3,6 +3,7 @@ namespace app\controller\admin\order;
3 3
 
4 4
 use app\common\repositories\user\UserThirdRepository;
5 5
 use crmeb\basic\BaseController;
6
+use crmeb\services\SpreadsheetExcelService;
6 7
 use think\App;
7 8
 
8 9
 class ThirdOrder extends BaseController
@@ -71,5 +72,510 @@ class ThirdOrder extends BaseController
71 72
         return app('json')->success($this->repository->GetThirdDetail($id,$table['table']));
72 73
     }
73 74
 
74
-
75
+    /**
76
+     * 导出第三方订单
77
+     */
78
+    public function getJdOrder()
79
+    {
80
+        $where = $this->request->params(['date','order_sn','status','keywords','bill_status']);
81
+        $page = 1;
82
+        $limit = 0;
83
+        $temporaryData = $this->repository->GetJdOrder($where,$page,$limit);
84
+        $data = $temporaryData['list'];
85
+        $arr = [];
86
+        foreach ($data as $item) {
87
+            $arr[] = [
88
+                $item['order_jd_id'] ?? '',       // 订单表ID
89
+                $item['uid'] ?? '',               // 用户ID
90
+                $item['commission'] ?? '',        // 佣金 actualFee
91
+                $item['commission_share'] ?? '',  // 佣金比例 finalRate
92
+                $item['jd_id'] ?? '',             // 订单id
93
+                $item['order_sn'] ?? '',          // 订单号
94
+                $item['pay_money'] ?? '',         // 实际计算佣金的金额
95
+                $item['create_time'] ?? '',       // 创建时间
96
+                $item['finish_time'] ?? '',       // 完成时间
97
+                $item['modify_time'] ?? '',       // 更新时间
98
+                $item['sku_num'] ?? '',           // 数量
99
+                $item['sku_id'] ?? '',            // 商品id
100
+                $item['sku_name'] ?? '',          // 商品名称
101
+                $item['price'] ?? '',             // 单价
102
+                $item['sub_union_id'] ?? '',      // 子渠道id-用户pid
103
+                $item['image_url'] ?? '',         // 商品图片
104
+                $item['shop_name'] ?? '',         // 店铺名称
105
+                $item['shop_id'] ?? '',           // 店铺id
106
+                $item['status'] ?? '',            // 订单状态 validCode
107
+                $item['bill_status'] ?? '',       // 结算状态
108
+                $item['bill_create_time'] ?? '',  // 平台结算时间
109
+                $item['bill_end_time'] ?? '',     // 可结算日期
110
+                $item['gzc'] ?? '',               // 公证处标记
111
+                $item['user_address_ids'] ?? '',  // 详细地址串
112
+                $item['type'] ?? '',              // 订单类型
113
+                $item['pv'] ?? '',                // PV值
114
+            ];
115
+        }
116
+        $header = [
117
+            '订单表ID',
118
+            '用户ID',
119
+            '佣金 (actualFee)',
120
+            '佣金比例 (finalRate)',
121
+            '订单ID',
122
+            '订单号',
123
+            '实际计算佣金的金额',
124
+            '创建时间',
125
+            '完成时间',
126
+            '更新时间',
127
+            '数量',
128
+            '商品ID',
129
+            '商品名称',
130
+            '单价',
131
+            '子渠道ID (用户PID)',
132
+            '商品图片',
133
+            '店铺名称',
134
+            '店铺ID',
135
+            '订单状态 (validCode)',
136
+            '0平台未结算1已结算2失效',
137
+            '平台结算时间',
138
+            '可结算日期',
139
+            '公证处IN10是否发起0否1是',
140
+            '详细地址串',
141
+            '1京推推订单 2京东联盟订单',
142
+            'PV值',
143
+        ];
144
+        $filename = '京东订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
145
+        $_instance = SpreadsheetExcelService::instance_xin();
146
+        $_path = $_instance
147
+            ->createOrActive()
148
+            ->setExcelHeader($header)
149
+            ->setExcelTile('京东订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
150
+            ->setExcelContent($arr)
151
+            ->excelSave($filename, 'xlsx', 'extract');
152
+        $domain = request()->domain();
153
+        return [
154
+            'name' => $filename . '.xlsx',
155
+            'status' => 1,
156
+            'path' => $domain . '/' . $_path
157
+        ];
158
+    }
159
+    public function  getWphOrder()
160
+    {
161
+        $where = $this->request->params(['date','order_sn','order_status','keywords','bill_status','settled']);
162
+        $page = 1;
163
+        $limit = 0;
164
+        $temporaryData = $this->repository->GetVipOrder($where,$page,$limit);
165
+        $data = $temporaryData['list'];
166
+        $arr = [];
167
+        foreach ($data as $item) {
168
+            $arr[] = [
169
+                $item['order_vip_id'],
170
+                $item['uid'],
171
+                $item['pid'],
172
+                $item['order_sn'],
173
+                $item['pay_money'],
174
+                $item['status'],
175
+                $item['new_customer'],
176
+                $item['order_time'],
177
+                $item['sign_time'],
178
+                $item['settled_time'],
179
+                $item['goods_id'],
180
+                $item['goods_name'],
181
+                $item['goods_thumb'],
182
+                $item['goods_count'],
183
+                $item['commission_total'],
184
+                $item['commission_rate'],
185
+                $item['commission'],
186
+                $item['commission_time'],
187
+                $item['order_source'],
188
+                $item['last_update_time'],
189
+                $item['settled'],
190
+                $item['self_buy'],
191
+                $item['order_status'],
192
+                $item['after_commission'],
193
+                $item['after_count'],
194
+                $item['bill_status'],
195
+                $item['bill_end_time'],
196
+                $item['create_time'],
197
+                $item['gzc'],
198
+                $item['bill_create_time'],
199
+                $item['user_address_ids'],
200
+                $item['pv'],
201
+            ];
202
+        }
203
+        $header = [
204
+            '订单表ID',
205
+            '用户ID',
206
+            '关联PID',
207
+            '订单号',
208
+            '订单支付金额',
209
+            '订单状态(0不合格1待定2已完结)',
210
+            '新老客(0待定1新客2老客)',
211
+            '下单时间',
212
+            '签收时间',
213
+            '结算时间',
214
+            '商品ID',
215
+            '商品名称',
216
+            '商品缩略图',
217
+            '商品数量',
218
+            '商品计佣金额',
219
+            '商品佣金比例(%)',
220
+            '商品佣金金额',
221
+            '入账时间',
222
+            '订单来源',
223
+            '上次更新时间',
224
+            '结算状态(0未结算1已结算)',
225
+            '是否自推自买(0否1是)',
226
+            '订单子状态',
227
+            '售后佣金变动',
228
+            '售后数量变动',
229
+            '结算标记(0未结算1已结算2失效)',
230
+            '可结算日期(时间戳)',
231
+            '订单创建时间',
232
+            '公证处标记(0否1是)',
233
+            '平台结算时间',
234
+            '详细地址串',
235
+            'PV值',
236
+        ];
237
+        $filename = '唯品会订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
238
+        $_instance = SpreadsheetExcelService::instance_xin();
239
+        $_path = $_instance
240
+            ->createOrActive()
241
+            ->setExcelHeader($header)
242
+            ->setExcelTile('唯品会订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
243
+            ->setExcelContent($arr)
244
+            ->excelSave($filename, 'xlsx', 'extract');
245
+        $domain = request()->domain();
246
+        return [
247
+            'name' => $filename . '.xlsx',
248
+            'status' => 1,
249
+            'path' => $domain . '/' . $_path
250
+        ];
251
+    }
252
+    public function  getPddOrder()
253
+    {
254
+        $where = $this->request->params(['date','order_sn','pin_order_status','keywords','bill_status']);
255
+        $page = 1;
256
+        $limit = 0;
257
+        $temporaryData = $this->repository->GetPddOrder($where,$page,$limit);
258
+        $data = $temporaryData['list'];
259
+        $arr = [];
260
+        foreach ($data as $item) {
261
+            $arr[] = [
262
+                $item['order_pdd_id'],
263
+                $item['uid'],
264
+                $item['goods_id'],
265
+                $item['goods_sign'],
266
+                $item['order_sn'],
267
+                $item['goods_num'],
268
+                $item['goods_img'],
269
+                $item['goods_name'],
270
+                $item['goods_price'],
271
+                $item['order_type'],
272
+                $item['pin_order_status'],
273
+                $item['pin_order_status_desc'],
274
+                $item['order_money'],
275
+                $item['pay_money'],
276
+                $item['create_time'],
277
+                $item['group_time'],
278
+                $item['pay_time'],
279
+                $item['receive_time'],
280
+                $item['settle_time'],
281
+                $item['last_modify_time'],
282
+                $item['p_id'],
283
+                $item['commission_rate'],
284
+                $item['commission'],
285
+                $item['bill_status'],
286
+                $item['bill_create_time'],
287
+                $item['bill_end_time'],
288
+                $item['gzc'],
289
+                $item['user_address_ids'],
290
+                $item['pv'],
291
+            ];
292
+        }
293
+        $header = [
294
+            '订单ID',
295
+            '用户ID',
296
+            '商品ID',
297
+            '商品sign',
298
+            '订单号',
299
+            '商品数量',
300
+            '商品图片',
301
+            '商品名称',
302
+            '商品单价',
303
+            '订单类型',
304
+            '订单状态码',
305
+            '订单状态描述',
306
+            '订单金额',
307
+            '实付金额',
308
+            '创建时间',
309
+            '成团时间',
310
+            '支付时间',
311
+            '收货时间',
312
+            '结算时间',
313
+            '最后更新时间',
314
+            'PID',
315
+            '佣金比例',
316
+            '佣金金额',
317
+            '结算状态',
318
+            '平台结算时间',
319
+            '可结算日期',
320
+            '公证处IN10是否发起0否1是',
321
+            '地址详情',
322
+            'PV值',
323
+        ];
324
+        $filename = '拼多多订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
325
+        $_instance = SpreadsheetExcelService::instance_xin();
326
+        $_path = $_instance
327
+            ->createOrActive()
328
+            ->setExcelHeader($header)
329
+            ->setExcelTile('拼多多订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
330
+            ->setExcelContent($arr)
331
+            ->excelSave($filename, 'xlsx', 'extract');
332
+        $domain = request()->domain();
333
+        return [
334
+            'name' => $filename . '.xlsx',
335
+            'status' => 1,
336
+            'path' => $domain . '/' . $_path
337
+        ];
338
+    }
339
+    public function getSuOrder()
340
+    {
341
+        $where = $this->request->params(['date','order_sn','status','keywords','bill_status']);
342
+        $page = 1;
343
+        $limit = 0;
344
+        $temporaryData = $this->repository->GetSuOrder($where,$page,$limit);
345
+        $data = $temporaryData['list'];
346
+        $arr = [];
347
+        foreach ($data as $item) {
348
+            $arr[] = [
349
+                $item['uid'],
350
+                $item['order_sn'],
351
+                $item['pid'],
352
+                $item['status'],
353
+                $item['goods_id'],
354
+                $item['goods_name'],
355
+                $item['goods_thumb'],
356
+                $item['goods_count'],
357
+                $item['cust_no'],
358
+                $item['order_time'],
359
+                $item['pay_time'],
360
+                $item['change_time'],
361
+                $item['settled_time'],
362
+                $item['refund_time'],
363
+                $item['total_amount'],
364
+                $item['pay_amount'],
365
+                $item['commission_rate'],
366
+                $item['commission'],
367
+                $item['pre_commission'],
368
+                $item['bill_status'],
369
+                $item['bill_create_time'],
370
+                $item['bill_end_time'],
371
+                $item['create_time'],
372
+                $item['gzc'],
373
+                $item['user_address_ids'],
374
+                $item['pv'],
375
+            ];
376
+        }
377
+        $header = [
378
+            '用户ID',
379
+            '订单行号',
380
+            '第三方标示',
381
+            '订单状态名称',
382
+            '商品ID',
383
+            '商品名称',
384
+            '商品图片',
385
+            '数量',
386
+            '推广会员编码',
387
+            '下单时间',
388
+            '支付时间',
389
+            '变动时间',
390
+            '结算时间',
391
+            '退款时间',
392
+            '订单金额',
393
+            '实付金额',
394
+            '佣金比例',
395
+            '佣金金额',
396
+            '预估佣金',
397
+            '结算状态',
398
+            '平台结算时间',
399
+            '可结算日期',
400
+            '创建时间',
401
+            '公证处IN10是否发起0否1是',
402
+            '详细地址串',
403
+            'PV值',
404
+        ];
405
+        $filename = '苏宁订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
406
+        $_instance = SpreadsheetExcelService::instance_xin();
407
+        $_path = $_instance
408
+            ->createOrActive()
409
+            ->setExcelHeader($header)
410
+            ->setExcelTile('苏宁订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
411
+            ->setExcelContent($arr)
412
+            ->excelSave($filename, 'xlsx', 'extract');
413
+        $domain = request()->domain();
414
+        return [
415
+            'name' => $filename . '.xlsx',
416
+            'status' => 1,
417
+            'path' => $domain . '/' . $_path
418
+        ];
419
+    }
420
+    public function getTbOrder()
421
+    {
422
+        $where = $this->request->params(['date','order_sn','tk_status','keywords','bill_status']);
423
+        $page = 1;
424
+        $limit = 0;
425
+        $temporaryData = $this->repository->GetTbOrder($where,$page,$limit);
426
+        $limit = 0;
427
+        $data = $temporaryData['list'];
428
+        $arr = [];
429
+        foreach ($data as $item) {
430
+            $arr[] = [
431
+                $item['order_tb_id'],
432
+                $item['uid'],
433
+                $item['pid'],
434
+                $item['type'],
435
+                $item['order_sn'],
436
+                $item['trade_id'],
437
+                $item['pub_id'],
438
+                $item['item_id'],
439
+                $item['item_img'],
440
+                $item['item_title'],
441
+                $item['item_num'],
442
+                $item['item_price'],
443
+                $item['seller_shop_title'],
444
+                $item['pay_price'],
445
+                $item['alipay_total_price'],
446
+                $item['tk_status'],
447
+                $item['create_time'],
448
+                $item['tk_earning_time'],
449
+                $item['pub_share_rate'],
450
+                $item['tk_total_rate'],
451
+                $item['income_rate'],
452
+                $item['commission_rate'],
453
+                $item['commission'],
454
+                $item['bill_status'],
455
+                $item['bill_create_time'],
456
+                $item['bill_end_time'],
457
+                $item['gzc'],
458
+                $item['user_address_ids'],
459
+                $item['pv'],
460
+            ];
461
+        }
462
+        $header = [
463
+            '订单表ID',
464
+            '用户ID',
465
+            'PID',
466
+            '类型',
467
+            '订单号',
468
+            '交易号',
469
+            '推广者ID',
470
+            '商品ID',
471
+            '商品图片',
472
+            '商品名称',
473
+            '数量',
474
+            '单价',
475
+            '店铺名称',
476
+            '支付金额',
477
+            '拍下付款金额',
478
+            '订单状态',
479
+            '下单时间',
480
+            '订单确认收货后且商家完成佣金支付的时间',
481
+            '从结算佣金中分得的收益比率',
482
+            '提成=收入比率*分成比率。指实际获得收益的比率',
483
+            '订单结算的佣金比率+平台的补贴比率',
484
+            '佣金比率',
485
+            '佣金金额=结算金额*佣金比率',
486
+            '0平台未结算1已结算2失效',
487
+            '平台结算时间',
488
+            '平台可结算日期',
489
+            '公证处IN10是否发起0否1是',
490
+            '详细地址串',
491
+            'PV值',
492
+        ];
493
+        $filename = '淘宝订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
494
+        $_instance = SpreadsheetExcelService::instance_xin();
495
+        $_path = $_instance
496
+            ->createOrActive()
497
+            ->setExcelHeader($header)
498
+            ->setExcelTile('淘宝订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
499
+            ->setExcelContent($arr)
500
+            ->excelSave($filename, 'xlsx', 'extract');
501
+        $domain = request()->domain();
502
+        return [
503
+            'name' => $filename . '.xlsx',
504
+            'status' => 1,
505
+            'path' => $domain . '/' . $_path
506
+        ];
507
+    }
508
+    public function getHfOrder()
509
+    {
510
+        $where = $this->request->params(['date','order_sn','status','keywords','bill_status']);
511
+        $page = 1;
512
+        $limit = 0;
513
+        $temporaryData = $this->repository->GetHfOrder($where,$page,$limit);
514
+        $data = $temporaryData['list'];
515
+        $arr = [];
516
+        foreach ($data as $item) {
517
+            $arr[] = [
518
+                $item['order_huafei_id'],
519
+                $item['uid'],
520
+                $item['mobile'],
521
+                $item['commission'],
522
+                $item['commission_share'],
523
+                $item['order_number'],
524
+                $item['order_sn'],
525
+                $item['amount_price'],
526
+                $item['fanli_price'],
527
+                $item['cost_price'],
528
+                $item['arrived_amount'],
529
+                $item['pay_money'],
530
+                $item['create_time'],
531
+                $item['finish_time'],
532
+                $item['modify_time'],
533
+                $item['status'],
534
+                $item['bill_status'],
535
+                $item['bill_create_time'],
536
+                $item['bill_end_time'],
537
+                $item['gzc'],
538
+                $item['pv'],
539
+                $item['is_independentaccount'],
540
+            ];
541
+        }
542
+        $header = [
543
+            '订单ID',
544
+            '用户ID',
545
+            '充值手机号',
546
+            '佣金',
547
+            '佣金比例',
548
+            '平台订单号',
549
+            '本地订单号',
550
+            '充值金额',
551
+            '返利金额',
552
+            '成本金额',
553
+            '到账金额',
554
+            '实际金额',
555
+            '创建时间',
556
+            '完成时间',
557
+            '更新时间',
558
+            '订单状态',
559
+            '结算状态',
560
+            '平台结算时间',
561
+            '可结算日期',
562
+            '公证处IN10是否发起0否1是',
563
+            'PV值',
564
+            '是否分账0否1是',
565
+        ];
566
+        $filename = '话费订单导出_' . date('YmdHis') . '_' . rand(10000,99999);
567
+        $_instance = SpreadsheetExcelService::instance_xin();
568
+        $_path = $_instance
569
+            ->createOrActive()
570
+            ->setExcelHeader($header)
571
+            ->setExcelTile('话费订单明细', $filename, '生成时间: ' . date('Y-m-d H:i:s'))
572
+            ->setExcelContent($arr)
573
+            ->excelSave($filename, 'xlsx', 'extract');
574
+        $domain = request()->domain();
575
+        return [
576
+            'name' => $filename . '.xlsx',
577
+            'status' => 1,
578
+            'path' => $domain . '/' . $_path
579
+        ];
580
+    }
75 581
 }

+ 6 - 0
route/admin.php

@@ -987,6 +987,12 @@ Route::group(config('admin.api_admin_prefix') . '/', function () {
987 987
             Route::get('order/tb', 'ThirdOrder/tbOrder')->name('systemThirdOrderTb');
988 988
             Route::get('order/hf', 'ThirdOrder/hfOrder')->name('systemThirdOrderHf');
989 989
             Route::get('order/detail/:id', 'ThirdOrder/detail')->name('systemThirdOrderDetail');
990
+            Route::get('order/gjd', 'ThirdOrder/getJdOrder')->name('systemThirdOrderGjd');//导出订单
991
+            Route::get('order/gwph', 'ThirdOrder/getWphOrder')->name('systemThirdOrderGwph');
992
+            Route::get('order/gpdd', 'ThirdOrder/getPddOrder')->name('systemThirdOrderGpdd');
993
+            Route::get('order/gsu', 'ThirdOrder/getSuOrder')->name('systemThirdOrderGsu');
994
+            Route::get('order/gtb', 'ThirdOrder/getTbOrder')->name('systemThirdOrderGtb');
995
+            Route::get('order/ghf', 'ThirdOrder/getHfOrder')->name('systemThirdOrderGhf');
990 996
         })->prefix('admin.order.');
991 997
 
992 998
         //分享图片管理