|
@@ -107,17 +107,20 @@ class TestExportOrder extends TestCase
|
|
if (empty($orders)) {
|
|
if (empty($orders)) {
|
|
return [false, '统计数据为空'];
|
|
return [false, '统计数据为空'];
|
|
}
|
|
}
|
|
- $orders = $this->orderFormat($orders);
|
|
|
|
- $objPHPExcel = new PHPExcel();
|
|
|
|
|
|
|
|
|
|
+ $merchants = [];
|
|
$column_values = ['平台单号', '面额', '充值卡号', '充值卡类型', '下单日期', '完成日期', '官方流水号', '订单状态', '扣款金额'];
|
|
$column_values = ['平台单号', '面额', '充值卡号', '充值卡类型', '下单日期', '完成日期', '官方流水号', '订单状态', '扣款金额'];
|
|
- $data_keys = ['order_sn', 'refill_amount', 'card_no', 'card_type_text', 'order_time_text', 'notify_time_text', 'official_sn', 'order_state_text', 'mch_amount'];
|
|
|
|
|
|
+ $data_keys = ['order_sn', 'refill_amount', 'card_no', 'card_type_text', 'order_time_text', 'notify_time_text', 'official_sn', 'order_state_text'];
|
|
if (!empty($condition['refill_order.mchid'])) {
|
|
if (!empty($condition['refill_order.mchid'])) {
|
|
- $column_values = array_merge(['商户号', '商户订单号'], $column_values);
|
|
|
|
- $data_keys = array_merge(['mchid', 'mch_order'], $data_keys);
|
|
|
|
|
|
+ $merchant_list = Model('')->table('merchant')->limit(1000)->order('company_name asc')->select();
|
|
|
|
+ foreach ($merchant_list as $value) {
|
|
|
|
+ $merchants[$value['mchid']] = $value;
|
|
|
|
+ }
|
|
|
|
+ $column_values = array_merge(['商户号', '商户名称', '商户订单号'], $column_values);
|
|
|
|
+ $data_keys = array_merge(['mchid', 'mch_name', 'mch_order'], $data_keys, 'mch_amount');
|
|
} elseif (!empty($condition['vr_order.store_id'])) {
|
|
} elseif (!empty($condition['vr_order.store_id'])) {
|
|
- $column_values = array_merge(['上游订单号'], $column_values);
|
|
|
|
- $data_keys = array_merge(['ch_trade_no'], $data_keys);
|
|
|
|
|
|
+ $column_values = array_merge(['上游名称','上游订单号'], $column_values);
|
|
|
|
+ $data_keys = array_merge(['channel_name', 'ch_trade_no'], $data_keys, 'channel_amount');
|
|
} else {
|
|
} else {
|
|
$column_values = array_merge([], $column_values);
|
|
$column_values = array_merge([], $column_values);
|
|
$data_keys = array_merge([], $data_keys);
|
|
$data_keys = array_merge([], $data_keys);
|
|
@@ -128,7 +131,7 @@ class TestExportOrder extends TestCase
|
|
$column_key++;
|
|
$column_key++;
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+ $objPHPExcel = new PHPExcel();
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
$objPHPExcel->setActiveSheetIndex(0);
|
|
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')->setSize(10);
|
|
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')->setSize(10);
|
|
foreach ($column_keys as $key => $column_key) {
|
|
foreach ($column_keys as $key => $column_key) {
|
|
@@ -137,11 +140,18 @@ class TestExportOrder extends TestCase
|
|
$objPHPExcel->getActiveSheet()->setCellValue($cell_value, $column_values[$key]);
|
|
$objPHPExcel->getActiveSheet()->setCellValue($cell_value, $column_values[$key]);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ $card_type_texts = [mtopcard\PetroChinaCard => '中石油', mtopcard\SinopecCard => '中石化', mtopcard\ChinaMobileCard => '中国移动', mtopcard\ChinaUnicomCard => '中国联通', mtopcard\ChinaTelecomCard => '中国电信'];
|
|
foreach ($orders as $k => $order) {
|
|
foreach ($orders as $k => $order) {
|
|
|
|
+ if(!empty($merchants)) {
|
|
|
|
+ $order['mch_name'] = $merchants[$order['mchid']]['company_name'];
|
|
|
|
+ }
|
|
|
|
+ $order['card_type_text'] = $card_type_texts[$order['card_type']];
|
|
|
|
+ $order['order_time_text'] = $order['order_time'] ? date('Y-m-d H:i:s', $order['order_time']) : '';
|
|
|
|
+ $order['notify_time_text'] = $order['notify_time'] ? date('Y-m-d H:i:s', $order['notify_time']) : '';
|
|
|
|
+ $order['order_state_text'] = orderState($order);
|
|
foreach ($column_keys as $key => $column_key) {
|
|
foreach ($column_keys as $key => $column_key) {
|
|
$field = $column_key . ($k + 2);
|
|
$field = $column_key . ($k + 2);
|
|
- $objPHPExcel->getActiveSheet()->setCellValueExplicit($field, $order[$data_keys[$key]],
|
|
|
|
- PHPExcel_Cell_DataType::TYPE_STRING);
|
|
|
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValueExplicit($field, $order[$data_keys[$key]]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
try {
|
|
try {
|
|
@@ -161,19 +171,6 @@ class TestExportOrder extends TestCase
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- private function orderFormat($orders): array
|
|
|
|
- {
|
|
|
|
- $card_type_texts = [mtopcard\PetroChinaCard => '中石油', mtopcard\SinopecCard => '中石化', mtopcard\ChinaMobileCard => '中国移动', mtopcard\ChinaUnicomCard => '中国联通', mtopcard\ChinaTelecomCard => '中国电信'];
|
|
|
|
- foreach($orders as $key => $order)
|
|
|
|
- {
|
|
|
|
- $orders[$key]['card_type_text'] = $card_type_texts[$order['card_type']];
|
|
|
|
- $orders[$key]['order_time_text'] = $order['order_time'] ? date('Y-m-d H:i:s', $order['order_time']) : '';
|
|
|
|
- $orders[$key]['notify_time_text'] = $order['notify_time'] ? date('Y-m-d H:i:s', $order['notify_time']) : '';
|
|
|
|
- $orders[$key]['order_state_text'] = orderState($order);
|
|
|
|
- }
|
|
|
|
- return $orders;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
public function testStrSer()
|
|
public function testStrSer()
|
|
{
|
|
{
|
|
$str = 'a:3:{s:11:"is_transfer";b:1;s:11:"card_states";a:2:{i:0;i:0;i:1;i:5;}s:10:"card_types";a:1:{i:0;i:4;}}';
|
|
$str = 'a:3:{s:11:"is_transfer";b:1;s:11:"card_states";a:2:{i:0;i:0;i:1;i:5;}s:10:"card_types";a:1:{i:0;i:4;}}';
|
|
@@ -183,6 +180,9 @@ class TestExportOrder extends TestCase
|
|
for($index=0;$index<10;$index++){
|
|
for($index=0;$index<10;$index++){
|
|
$j++;
|
|
$j++;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ $a1 = [1];
|
|
|
|
+ $a = array_merge([0],$a1,[2]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|