|
|
@@ -17,6 +17,7 @@ use app\traits\GzcApiRequest;
|
|
17
|
17
|
use Carbon\Carbon;
|
|
18
|
18
|
use crmeb\services\SpreadsheetExcelService;
|
|
19
|
19
|
use FormBuilder\Factory\Elm;
|
|
|
20
|
+use think\facade\Db;
|
|
20
|
21
|
use think\facade\Log;
|
|
21
|
22
|
use think\facade\Route;
|
|
22
|
23
|
|
|
|
@@ -50,36 +51,78 @@ class OrderGzcRepository extends BaseRepository
|
|
50
|
51
|
// 导出
|
|
51
|
52
|
$is_excel = request()->param('is_excel', 0);
|
|
52
|
53
|
if ($is_excel == 1) {
|
|
53
|
|
- $data = $query->with('user')->select();
|
|
|
54
|
+ $data = $query->with('user')->select()->toArray();
|
|
|
55
|
+
|
|
54
|
56
|
$arr = [];
|
|
55
|
|
- foreach ($data as $item) {
|
|
56
|
|
- $arr[] = [
|
|
57
|
|
- $item['id'],
|
|
58
|
|
- $item['platform_no'],
|
|
59
|
|
- $item['user']['nickname'],
|
|
60
|
|
- $item['user']['account'],
|
|
61
|
|
- $item['user_name'],
|
|
62
|
|
- $item['mobile'],
|
|
63
|
|
- $item['user_card'],
|
|
64
|
|
- $item['bank_name'],
|
|
65
|
|
- $item['branch_name'],
|
|
66
|
|
- $item['bank_account'],
|
|
67
|
|
- $item['bank_no'],
|
|
68
|
|
- $item['alipay_account'],
|
|
69
|
|
- $item['alipay_no'],
|
|
70
|
|
- $item['wxpay_account'],
|
|
71
|
|
- $item['wxpay_no'],
|
|
72
|
|
- $item['out_trade_no'],
|
|
73
|
|
- $item['pension'],
|
|
74
|
|
- $item['gzc'] == 1 ? '已发起' : '待发起',
|
|
75
|
|
- $item['gzc_deposit_no'],
|
|
76
|
|
- $item['gzc_confirm_result'],
|
|
77
|
|
- $item['create_time'],
|
|
78
|
|
- $item['update_time']
|
|
|
57
|
+ if (!empty($data)) {
|
|
|
58
|
+ $orderTypeMap = [];
|
|
|
59
|
+ $orderDetailMap = [];
|
|
|
60
|
+ $orderMap = [
|
|
|
61
|
+ 0 => ['table' => 'rrx_store_order', 'name' => '平台订单', 'pk' => 'order_id', 'field' => 'order_id, total_price AS order_money, pay_price AS pay_money, con_pri AS commission'],
|
|
|
62
|
+ 1 => ['table' => 'rrx_order_pdd', 'name' => '拼多多', 'pk' => 'order_pdd_id', 'field' => 'order_pdd_id AS order_id, order_money, pay_money, commission'],
|
|
|
63
|
+ 2 => ['table' => 'rrx_order_vip', 'name' => '唯品会', 'pk' => 'order_vip_id', 'field' => 'order_vip_id AS order_id, pay_money AS order_money, pay_money, commission'],
|
|
|
64
|
+ 3 => ['table' => 'rrx_order_su', 'name' => '苏宁', 'pk' => 'order_su_id', 'field' => 'order_su_id AS order_id, total_amount AS order_money, pay_amount AS pay_money, commission'],
|
|
|
65
|
+ 5 => ['table' => 'rrx_order_tb', 'name' => '淘宝', 'pk' => 'order_tb_id', 'field' => 'order_tb_id AS order_id, alipay_total_price AS order_money, alipay_total_price AS pay_money, commission'],
|
|
|
66
|
+ 6 => ['table' => 'rrx_order_jd', 'name' => '京东', 'pk' => 'order_jd_id', 'field' => 'order_jd_id AS order_id, pay_money AS order_money, pay_money AS pay_money, commission'],
|
|
|
67
|
+ 9 => ['table' => 'rrx_order_huafei', 'name' => '话费', 'pk' => 'order_huafei_id', 'field' => 'order_huafei_id AS order_id, pay_money AS order_money, pay_money AS pay_money, commission'],
|
|
|
68
|
+ 10 => ['table' => 'rrx_order_merchant', 'name' => '线下扫码', 'pk' => 'id', 'field' => 'id AS order_id, money AS order_money, money AS pay_money, available AS commission']
|
|
79
|
69
|
];
|
|
|
70
|
+
|
|
|
71
|
+ foreach ($data as $gzcData) {
|
|
|
72
|
+ if (!empty($gzcData['link_id'])) {
|
|
|
73
|
+ $orderTypeMap[$gzcData['order_type']][$gzcData['link_id']] = $gzcData['id'];
|
|
|
74
|
+ }
|
|
|
75
|
+ }
|
|
|
76
|
+
|
|
|
77
|
+ if (!empty($orderTypeMap)) {
|
|
|
78
|
+ foreach ($orderTypeMap as $orderType => $map) {
|
|
|
79
|
+ if (isset($orderMap[$orderType])) {
|
|
|
80
|
+ $config = $orderMap[$orderType];
|
|
|
81
|
+ $result = Db::table($config['table'])
|
|
|
82
|
+ ->whereIn($config['pk'], array_keys($map))
|
|
|
83
|
+ ->select()
|
|
|
84
|
+ ->toArray();
|
|
|
85
|
+ if (!empty($result)) {
|
|
|
86
|
+ foreach ($result as $orderData) {
|
|
|
87
|
+ $orderDetailMap[$map[$orderData['order_id']]] = $orderData;
|
|
|
88
|
+ }
|
|
|
89
|
+ }
|
|
|
90
|
+ }
|
|
|
91
|
+ }
|
|
|
92
|
+ }
|
|
|
93
|
+
|
|
|
94
|
+ foreach ($data as $item) {
|
|
|
95
|
+ $arr[] = [
|
|
|
96
|
+ $item['id'],
|
|
|
97
|
+ $item['platform_no'],
|
|
|
98
|
+ $item['user']['nickname'],
|
|
|
99
|
+ $item['user']['account'],
|
|
|
100
|
+ $item['user_name'],
|
|
|
101
|
+ $item['mobile'],
|
|
|
102
|
+ $item['user_card'],
|
|
|
103
|
+ $item['bank_name'],
|
|
|
104
|
+ $item['branch_name'],
|
|
|
105
|
+ $item['bank_account'],
|
|
|
106
|
+ $item['bank_no'],
|
|
|
107
|
+ $item['alipay_account'],
|
|
|
108
|
+ $item['alipay_no'],
|
|
|
109
|
+ $item['wxpay_account'],
|
|
|
110
|
+ $item['wxpay_no'],
|
|
|
111
|
+ $orderMap[$item['order_type']]['name'],
|
|
|
112
|
+ $orderDetailMap[$item['id']]['order_money'],
|
|
|
113
|
+ $orderDetailMap[$item['id']]['commission'],
|
|
|
114
|
+ $item['out_trade_no'],
|
|
|
115
|
+ $item['pension'],
|
|
|
116
|
+ $item['gzc'] == 1 ? '已发起' : '待发起',
|
|
|
117
|
+ $item['gzc_deposit_no'],
|
|
|
118
|
+ $item['gzc_confirm_result'],
|
|
|
119
|
+ $item['create_time'],
|
|
|
120
|
+ $item['update_time']
|
|
|
121
|
+ ];
|
|
|
122
|
+ }
|
|
80
|
123
|
}
|
|
81
|
124
|
return $this->getStatisticsExcel([
|
|
82
|
|
- 'ID', '平台申请单号', '用户昵称', '用户账号', '实名认证姓名', '实名认证电话', '实名认证证件号', '银行名称', '银行名称', '开户账号', '转账流水号', '支付宝账号', '支付宝流水号', '微信账号', '微信流水号', '关联订单', '养老金', '处理状态', '公证处入账编号', '公证处入账结果', '创建时间', '更新时间'
|
|
|
125
|
+ 'ID', '平台申请单号', '用户昵称', '用户账号', '实名认证姓名', '实名认证电话', '实名认证证件号', '银行名称', '银行名称', '开户账号', '转账流水号', '支付宝账号', '支付宝流水号', '微信账号', '微信流水号', '订单来源', '订单金额', '订单利润', '关联订单', '养老金', '处理状态', '公证处入账编号', '公证处入账结果', '创建时间', '更新时间'
|
|
83
|
126
|
], $arr, '公证处入账明细');
|
|
84
|
127
|
}
|
|
85
|
128
|
|