之前扣减库存的sql如下:
update `storage` set `quality` = `quality` - reduce_num where `shelf_id` = shelf_id and `goods_id` = goods_id and `quality` >= reduce_num;
改造后的sql如下:
update `storage` set `out_of_stock_time` = (
case when `quality` = reduce_num then now() end
),
`quality` = `quality` - reduce_num where `shelf_id` = shelf_id and `goods_id` = goods_id and `quality` >= reduce_num;
其实这里还缺少个判断条件,库存扣减到多少时,才会进行缺货提醒。