feat: #100000 预留量修改

This commit is contained in:
赵世界 2022-08-17 18:34:27 +08:00
parent 1d7c694fbd
commit 15275b399c

View File

@ -319,23 +319,24 @@ class GoodsSkusController extends Controller
$record->save(); $record->save();
$this->setAfterUpdate($record->loss_num); $this->setAfterUpdate($record->loss_num);
$sku->stock -= $request->loss_num; $sku->stock -= $request->loss_num;
$sku->save();
} else { } else {
$sku->$updateField = $request->$updateField; $this->setBeforeUpdate($sku->$updateField);
} if ('reserve' === $updateField) {
$this->setBeforeUpdate($sku->$updateField); $changeNum = $sku->reserve - $request->reserve;
if ('reserve' === $updateField) { if (0 > $changeNum + $sku->stock) {
$changeNum = $sku->reserve - $request->reserve; $this->setValidatorFailResponse('预留量超过库存数量');
if (0 > $changeNum + $sku->stock) { goto end;
$this->setValidatorFailResponse('预留量超过库存数量'); }
goto end; $sku->stock += $changeNum;
} }
$sku->stock += $changeNum; $sku->$updateField = $request->$updateField;
$sku->save();
$this->setAfterUpdate($sku->$updateField);
} }
$sku->save();
if (in_array($updateField, ['reserve', 'loss_num'])) { if (in_array($updateField, ['reserve', 'loss_num'])) {
event(new StockUpdateEvent($sku)); event(new StockUpdateEvent($sku));
} }
$this->setAfterUpdate($sku->$updateField);
$this->addLog($id, $updateField); $this->addLog($id, $updateField);
end: end: