|
|
@@ -16,6 +16,77 @@ class CgOrderItemClass extends BaseClass
|
|
|
|
|
|
public static $baseFile = '\bizGhs\cg\models\CgOrderItem';
|
|
|
|
|
|
+ public static function cancelAssign($cg)
|
|
|
+ {
|
|
|
+ $orderSn = $cg->orderSn ?? '';
|
|
|
+ $bookSn = $cg->bookSn ?? '';
|
|
|
+ $cgItemList = PurchaseOrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (empty($cgItemList)) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ foreach ($cgItemList as $cgItem) {
|
|
|
+ $productId = $cgItem->productId ?? 0;
|
|
|
+ $cgItemName = $cgItem->name ?? '';
|
|
|
+ $parentId = $cgItem->id ?? 0;
|
|
|
+ $sendList = CgOrderItemSendClass::getAllByCondition(['parentId' => $parentId], null, '*', null, true);
|
|
|
+ if (!empty($sendList)) {
|
|
|
+ foreach ($sendList as $send) {
|
|
|
+ if ($send->status == 0) {
|
|
|
+ $num = $send->num ?? 0;
|
|
|
+ $send->status = 1;
|
|
|
+ $send->save();
|
|
|
+ $bookGhsGiveId = $send->bookGhsGiveId ?? 0;
|
|
|
+ $bookItemGhsRes = BookItemGhsClass::getById($bookGhsGiveId, true);
|
|
|
+ if (empty($bookItemGhsRes)) {
|
|
|
+ util::fail('送货记录缺失');
|
|
|
+ }
|
|
|
+ $bookItemGhsRes->status = 1;
|
|
|
+ $bookItemGhsRes->save();
|
|
|
+ $bookItemCustomId = $send->bookItemCustomId ?? 0;
|
|
|
+
|
|
|
+ //路上数量减少,上架数量增加
|
|
|
+ $bookItemCustomRes = BookItemCustomClass::getById($bookItemCustomId, true);
|
|
|
+ if (empty($bookItemCustomRes)) {
|
|
|
+ util::fail('预订花材客户缺失');
|
|
|
+ }
|
|
|
+ $roadNum = $bookItemCustomRes->roadNum ?? 0;
|
|
|
+ if ($num > $roadNum) {
|
|
|
+ util::fail("路上库存不足扣减 bookItemCustom {$cgItemName}");
|
|
|
+ }
|
|
|
+ $bookItemCustomRes->roadNum = bcsub($roadNum, $num);
|
|
|
+ $bookItemCustomRes->onNum = bcadd($bookItemCustomRes->onNum, $num);
|
|
|
+ $bookItemCustomRes->save();
|
|
|
+
|
|
|
+ $customId = $bookItemCustomRes->customId ?? 0;
|
|
|
+ $bookCustomRes = BookCustomClass::getByCondition(['bookSn' => $bookSn, 'customId' => $customId], true);
|
|
|
+ if (empty($bookCustomRes)) {
|
|
|
+ util::fail('预订客户缺失');
|
|
|
+ }
|
|
|
+ $roadNum2 = $bookCustomRes->roadNum ?? 0;
|
|
|
+ if ($num > $roadNum2) {
|
|
|
+ util::fail("路上库存不足扣减 bookCustom {$cgItemName}");
|
|
|
+ }
|
|
|
+ $bookCustomRes->roadNum = bcsub($roadNum2, $num);
|
|
|
+ $bookCustomRes->onNum = bcadd($bookCustomRes->onNum, $num);
|
|
|
+ $bookCustomRes->save();
|
|
|
+
|
|
|
+ $bookItemRes = BookItemClass::getByCondition(['bookSn' => $bookSn, 'itemId' => $productId], true);
|
|
|
+ if (empty($bookItemRes)) {
|
|
|
+ util::fail('预订花材缺失');
|
|
|
+ }
|
|
|
+ $roadNum3 = $bookItemRes->roadNum ?? 0;
|
|
|
+ if ($num > $roadNum3) {
|
|
|
+ util::fail("路上库存不足扣减 bookItem {$cgItemName}");
|
|
|
+ }
|
|
|
+ $bookItemRes->roadNum = bcsub($roadNum3, $num);
|
|
|
+ $bookItemRes->onNum = bcadd($bookItemRes->onNum, $num);
|
|
|
+ $bookItemRes->save();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//分配货位后上架和入库
|
|
|
public static function assignToPutOn($cg)
|
|
|
{
|
|
|
@@ -30,6 +101,7 @@ class CgOrderItemClass extends BaseClass
|
|
|
}
|
|
|
foreach ($cgItemList as $cgItem) {
|
|
|
$productId = $cgItem->productId ?? 0;
|
|
|
+ $cgItemName = $cgItem->name ?? '';
|
|
|
$parentId = $cgItem->id ?? 0;
|
|
|
$sendList = CgOrderItemSendClass::getAllByCondition(['parentId' => $parentId], null, '*', null, true);
|
|
|
if (!empty($sendList)) {
|
|
|
@@ -54,7 +126,7 @@ class CgOrderItemClass extends BaseClass
|
|
|
}
|
|
|
$roadNum = $bookItemCustomRes->roadNum ?? 0;
|
|
|
if ($num > $roadNum) {
|
|
|
- util::fail('路上库存不足扣减');
|
|
|
+ util::fail("路上库存不足扣减 bookItemCustom {$cgItemName}");
|
|
|
}
|
|
|
$bookItemCustomRes->roadNum = bcsub($roadNum, $num);
|
|
|
$bookItemCustomRes->onNum = bcadd($bookItemCustomRes->onNum, $num);
|
|
|
@@ -67,7 +139,7 @@ class CgOrderItemClass extends BaseClass
|
|
|
}
|
|
|
$roadNum2 = $bookCustomRes->roadNum ?? 0;
|
|
|
if ($num > $roadNum2) {
|
|
|
- util::fail('路上库存不足扣减2');
|
|
|
+ util::fail("路上库存不足扣减 bookCustom {$cgItemName}");
|
|
|
}
|
|
|
$bookCustomRes->roadNum = bcsub($roadNum2, $num);
|
|
|
$bookCustomRes->onNum = bcadd($bookCustomRes->onNum, $num);
|
|
|
@@ -78,8 +150,8 @@ class CgOrderItemClass extends BaseClass
|
|
|
util::fail('预订花材缺失');
|
|
|
}
|
|
|
$roadNum3 = $bookItemRes->roadNum ?? 0;
|
|
|
- if ($num < $roadNum3) {
|
|
|
- util::fail('路上库存不足扣减3');
|
|
|
+ if ($num > $roadNum3) {
|
|
|
+ util::fail("路上库存不足扣减 bookItem {$cgItemName}");
|
|
|
}
|
|
|
$bookItemRes->roadNum = bcsub($roadNum3, $num);
|
|
|
$bookItemRes->onNum = bcadd($bookItemRes->onNum, $num);
|