counts问题
This commit is contained in:
parent
ed04a81983
commit
85dfd3352e
@ -96,6 +96,8 @@ class LogSyncJob implements ShouldQueue
|
|||||||
// 按规则生成订单编号 (月6+类型1+公司3+套餐4+价格6)
|
// 按规则生成订单编号 (月6+类型1+公司3+套餐4+价格6)
|
||||||
$sn = date('Ym', $value['create_time']) . $type . sprintf('%03d', $company['id']) . sprintf('%04d', $package['id']) . sprintf('%06d', $custom_price);
|
$sn = date('Ym', $value['create_time']) . $type . sprintf('%03d', $company['id']) . sprintf('%04d', $package['id']) . sprintf('%06d', $custom_price);
|
||||||
|
|
||||||
|
$counts = isset($orderArray[$sn]) ? $orderArray[$sn]['counts'] + 1 : 1;
|
||||||
|
|
||||||
$orderArray[$sn] = [
|
$orderArray[$sn] = [
|
||||||
'sn' => $sn,
|
'sn' => $sn,
|
||||||
'source' => 1,
|
'source' => 1,
|
||||||
@ -105,7 +107,7 @@ class LogSyncJob implements ShouldQueue
|
|||||||
'product_id' => $product['id'],
|
'product_id' => $product['id'],
|
||||||
'pay_channel' => $pay_channel,
|
'pay_channel' => $pay_channel,
|
||||||
'unit_price' => $unit_price,
|
'unit_price' => $unit_price,
|
||||||
'counts' => 1,
|
'counts' => $counts,
|
||||||
'total_price' => $unit_price,
|
'total_price' => $unit_price,
|
||||||
'custom_price' => $custom_price,
|
'custom_price' => $custom_price,
|
||||||
'order_at' => date('Y-m-d H:i:s', $value['create_time']),
|
'order_at' => date('Y-m-d H:i:s', $value['create_time']),
|
||||||
@ -114,13 +116,17 @@ class LogSyncJob implements ShouldQueue
|
|||||||
'created_at' => date('Y-m-d H:i:s', $value['create_time']),
|
'created_at' => date('Y-m-d H:i:s', $value['create_time']),
|
||||||
];
|
];
|
||||||
|
|
||||||
|
$k = $sn . '-' . $value['sim'];
|
||||||
|
|
||||||
|
$counts = isset($relationArray[$k]) ? $relationArray[$k]['counts'] + 1 : 1;
|
||||||
|
|
||||||
$relationArray[] = [
|
$relationArray[] = [
|
||||||
'order_sn' => $sn,
|
'order_sn' => $sn,
|
||||||
'type' => $type,
|
'type' => $type,
|
||||||
'sim' => $value['sim'],
|
'sim' => $value['sim'],
|
||||||
'company_id' => $company['id'],
|
'company_id' => $company['id'],
|
||||||
'package_id' => $package['id'],
|
'package_id' => $package['id'],
|
||||||
'counts' => 1,
|
'counts' => $counts,
|
||||||
'created_at' => date('Y-m-d H:i:s', $value['create_time']),
|
'created_at' => date('Y-m-d H:i:s', $value['create_time']),
|
||||||
'updated_at' => date('Y-m-d H:i:s'),
|
'updated_at' => date('Y-m-d H:i:s'),
|
||||||
];
|
];
|
||||||
@ -132,9 +138,9 @@ class LogSyncJob implements ShouldQueue
|
|||||||
$sql = $builder->getGrammar()->compileInsert($builder, $orderArray);
|
$sql = $builder->getGrammar()->compileInsert($builder, $orderArray);
|
||||||
|
|
||||||
$sql .= " on conflict (sn, COALESCE(deleted_at, '1970-01-01 08:00:00'::timestamp)) do update set
|
$sql .= " on conflict (sn, COALESCE(deleted_at, '1970-01-01 08:00:00'::timestamp)) do update set
|
||||||
counts=virtual_orders.counts + 1,
|
counts=virtual_orders.counts + excluded.counts,
|
||||||
total_price=virtual_orders.unit_price * (virtual_orders.counts + 1),
|
total_price=virtual_orders.unit_price * (virtual_orders.counts + excluded.counts),
|
||||||
custom_price=virtual_orders.unit_price * (virtual_orders.counts + 1)";
|
custom_price=virtual_orders.unit_price * (virtual_orders.counts + excluded.counts)";
|
||||||
|
|
||||||
$builder->connection->insert($sql, Arr::flatten($orderArray, 1));
|
$builder->connection->insert($sql, Arr::flatten($orderArray, 1));
|
||||||
|
|
||||||
@ -150,7 +156,7 @@ class LogSyncJob implements ShouldQueue
|
|||||||
$sql = $builder->getGrammar()->compileInsert($builder, $relationArray);
|
$sql = $builder->getGrammar()->compileInsert($builder, $relationArray);
|
||||||
|
|
||||||
$sql .= " on conflict (type, order_id, sim, COALESCE(deleted_at, '1970-01-01 08:00:00'::timestamp)) do update set
|
$sql .= " on conflict (type, order_id, sim, COALESCE(deleted_at, '1970-01-01 08:00:00'::timestamp)) do update set
|
||||||
counts=virtual_order_cards_partition.counts + 1";
|
counts=virtual_order_cards_partition.counts + excluded.counts";
|
||||||
|
|
||||||
$builder->connection->insert($sql, Arr::flatten($relationArray, 1));
|
$builder->connection->insert($sql, Arr::flatten($relationArray, 1));
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user