|
|
@@ -30,6 +30,60 @@ class CheckOrderClass extends BaseClass
|
|
|
self::STATUS_COMPLETE => '已盘点',
|
|
|
];
|
|
|
|
|
|
+ public static function loanStock($inId, $outId, $num, $shop, $staff)
|
|
|
+ {
|
|
|
+ $in = ProductClass::getById($inId, true);
|
|
|
+ if (empty($in)) {
|
|
|
+ util::fail('没有找到花材...');
|
|
|
+ }
|
|
|
+ $inName = $in->name ?? '';
|
|
|
+ $out = ProductClass::getById($outId, true);
|
|
|
+ if (empty($out)) {
|
|
|
+ util::fail('没有找到花材。');
|
|
|
+ }
|
|
|
+ $outName = $out->name ?? '';
|
|
|
+ $outStock = $out->stock ?? 0;
|
|
|
+ $remainOutStock = bcsub($outStock, $num);
|
|
|
+ if ($remainOutStock < 0) {
|
|
|
+ util::fail('库存不够借');
|
|
|
+ }
|
|
|
+
|
|
|
+ $inStock = $in->stock ?? 0;
|
|
|
+ $newInStock = bcadd($inStock, $num);
|
|
|
+
|
|
|
+ //增加盘点记录
|
|
|
+ $adminId = $staff->adminId ?? 0;
|
|
|
+ $sjId = $shop->sjId ?? 0;
|
|
|
+ $shopId = $shop->id ?? 0;
|
|
|
+ $mainId = $shop->mainId ?? 0;
|
|
|
+ $ghsItemInfo = [['productId' => $outId, 'bigNum' => $remainOutStock, 'smallNum' => 0,]];
|
|
|
+ $pdData = [];
|
|
|
+ $pdData['itemInfo'] = $ghsItemInfo;
|
|
|
+ $pdData['sjId'] = $sjId;
|
|
|
+ $pdData['shopId'] = $shopId;
|
|
|
+ $pdData['adminId'] = $adminId;
|
|
|
+ $pdData['mainId'] = $mainId;
|
|
|
+ $pdData['staffName'] = $data['staffName'] ?? '';
|
|
|
+ $pdData['remark'] = "借{$num}个库存给{$inName}";
|
|
|
+ self::opOrder($pdData, false, false);
|
|
|
+
|
|
|
+ $adminId = $staff->adminId ?? 0;
|
|
|
+ $sjId = $shop->sjId ?? 0;
|
|
|
+ $shopId = $shop->id ?? 0;
|
|
|
+ $mainId = $shop->mainId ?? 0;
|
|
|
+ $ghsItemInfo = [['productId' => $inId, 'bigNum' => $newInStock, 'smallNum' => 0,]];
|
|
|
+ $pdData = [];
|
|
|
+ $pdData['itemInfo'] = $ghsItemInfo;
|
|
|
+ $pdData['sjId'] = $sjId;
|
|
|
+ $pdData['shopId'] = $shopId;
|
|
|
+ $pdData['adminId'] = $adminId;
|
|
|
+ $pdData['mainId'] = $mainId;
|
|
|
+ $pdData['staffName'] = $data['staffName'] ?? '';
|
|
|
+ $pdData['remark'] = "向{$outName}借{$num}个库存";
|
|
|
+ self::opOrder($pdData, false, false);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
//2021.1.22 lqh 操作订单 添加/保存草稿/草稿编辑保存: 区别在添加是立即改库存和记录流水记录,而保存草稿是只保存订单信息
|
|
|
public static function opOrder($data, $draft = false, $update = false)
|
|
|
{
|