同步退货

This commit is contained in:
邓皓元 2019-05-13 10:47:36 +08:00
parent aaa969a283
commit bead72c7b5

View File

@ -42,14 +42,18 @@ class RefundSync extends Command
->where('created_at', '<=', $item->create_time)
->update(['refunded_at' => $item->create_time]);
DB::table('virtual_order_cards_partition')
->leftJoin('cards', 'cards.sim', '=', 'virtual_order_cards_partition.sim')
->whereIn('virtual_order_cards_partition.sim', $item->sim)
->where('virtual_order_cards_partition.created_at', '<=', $item->create_time)
->where(function ($query) use ($item) {
$query->whereNull('cards.virtual_activated_at')->orWhere('cards.virtual_activated_at', '>=', $item->create_time);
})
->update(['virtual_order_cards_partition.refunded_at' => $item->create_time]);
$simArrayText = implode(',', $item->sim);
$sql = "
UPDATE virtual_order_cards_partition AS v
SET refunded_at = '%s'
FROM cards AS c
WHERE c.sim = v.sim
AND v.sim IN (%s)
AND v.created_at <= '%s'
";
DB::select(sprintf($sql, $item->create_time, $simArrayText, $item->create_time));
}
});