diff --git a/app/admin/controller/warehouse_product/WarehouseProductController.php b/app/admin/controller/warehouse_product/WarehouseProductController.php index 6f5817b35..42d89d7c4 100644 --- a/app/admin/controller/warehouse_product/WarehouseProductController.php +++ b/app/admin/controller/warehouse_product/WarehouseProductController.php @@ -41,10 +41,11 @@ class WarehouseProductController extends BaseAdminController $params = (new WarehouseProductValidate())->post()->goCheck('add'); $params['admin_id']=$this->adminId; $result = WarehouseProductLogic::add($params); - if (true === $result) { + if (WarehouseProductLogic::hasError()) { + return $this->fail(WarehouseProductLogic::getError()); + }else{ return $this->success('添加成功', [], 1, 1); } - return $this->fail(WarehouseProductLogic::getError()); } @@ -59,10 +60,11 @@ class WarehouseProductController extends BaseAdminController $params = (new WarehouseProductValidate())->post()->goCheck('edit'); $params['admin_id']=$this->adminId; $result = WarehouseProductLogic::edit($params); - if (true === $result) { + if (WarehouseProductLogic::hasError()) { + return $this->fail(WarehouseProductLogic::getError()); + }else{ return $this->success('编辑成功', [], 1, 1); } - return $this->fail(WarehouseProductLogic::getError()); } @@ -76,7 +78,11 @@ class WarehouseProductController extends BaseAdminController { $params = (new WarehouseProductValidate())->post()->goCheck('delete'); WarehouseProductLogic::delete($params); - return $this->success('删除成功', [], 1, 1); + if (WarehouseProductLogic::hasError()) { + return $this->fail(WarehouseProductLogic::getError()); + }else{ + return $this->success('删除成功', [], 1, 1); + } } diff --git a/app/admin/logic/warehouse_product/WarehouseProductLogic.php b/app/admin/logic/warehouse_product/WarehouseProductLogic.php index 11421df1f..0655e349d 100644 --- a/app/admin/logic/warehouse_product/WarehouseProductLogic.php +++ b/app/admin/logic/warehouse_product/WarehouseProductLogic.php @@ -163,8 +163,17 @@ class WarehouseProductLogic extends BaseLogic if($res['financial_pm']==1){ WarehouseProductStorege::where('warehouse_id',$res['warehouse_id'])->dec('nums',$res['nums'])->update(); }elseif($res['financial_pm']==0){ + $find=SystemStoreStorage::where(['outbound_id'=>$res['id']])->find(); + if($find){ + $stock=StoreBranchProduct::where(['store_id'=>$res['store_id'],'product_id'=>$res['product_id']])->value('stock'); + if($stock<$res['nums']){ + self::setError('商品库存不足,无法退回'); + return false; + } + $find->delete(); + StoreBranchProduct::where(['store_id'=>$res['store_id'],'product_id'=>$res['product_id']])->dec('stock',$res['nums'])->update(); + } WarehouseProductStorege::where('warehouse_id',$res['warehouse_id'])->inc('nums',$res['nums'])->update(); - SystemStoreStorage::where(['outbound_id'=>$res['id']])->delete(); } return true;