同步退货

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) ->where('created_at', '<=', $item->create_time)
->update(['refunded_at' => $item->create_time]); ->update(['refunded_at' => $item->create_time]);
DB::table('virtual_order_cards_partition') $simArrayText = implode(',', $item->sim);
->leftJoin('cards', 'cards.sim', '=', 'virtual_order_cards_partition.sim')
->whereIn('virtual_order_cards_partition.sim', $item->sim) $sql = "
->where('virtual_order_cards_partition.created_at', '<=', $item->create_time) UPDATE virtual_order_cards_partition AS v
->where(function ($query) use ($item) { SET refunded_at = '%s'
$query->whereNull('cards.virtual_activated_at')->orWhere('cards.virtual_activated_at', '>=', $item->create_time); FROM cards AS c
}) WHERE c.sim = v.sim
->update(['virtual_order_cards_partition.refunded_at' => $item->create_time]); AND v.sim IN (%s)
AND v.created_at <= '%s'
";
DB::select(sprintf($sql, $item->create_time, $simArrayText, $item->create_time));
} }
}); });