|
|
@@ -508,32 +508,29 @@ class PurchaseOrderClass extends BaseClass
|
|
|
$productList = ProductClass::getByIds($productIds, null, 'id');
|
|
|
|
|
|
foreach ($ghsItemInfo as $v) {
|
|
|
+ $ratioType = $v['ratioType'] ?? 1;
|
|
|
+ $ratio = $v['ratio'] ?? 1;
|
|
|
if (isset($v['bigNum']) == false || $v['bigNum'] <= 0) {
|
|
|
if (isset($v['smallNum']) == false || $v['smallNum'] <= 0) {
|
|
|
util::fail('请填写数量');
|
|
|
}
|
|
|
- $ratioType = $v['ratioType'] ?? 1;
|
|
|
if ($ratioType == 1) {
|
|
|
util::fail('小单位采购,单位比必须固定');
|
|
|
}
|
|
|
- $ratio = $v['ratio'] ?? 1;
|
|
|
if ($ratio <= 1) {
|
|
|
util::fail('小单位采购,单位比必须大于1');
|
|
|
}
|
|
|
- $v['bigNum'] = bcdiv($v['smallNum'], $ratio, 2);
|
|
|
}
|
|
|
if (isset($v['itemPrice']) == false || $v['itemPrice'] <= 0) {
|
|
|
util::fail('请填写价格');
|
|
|
}
|
|
|
- $bigNum += $v['bigNum'] ?? 0;
|
|
|
- $smallNum += $v['smallNum'] ?? 0;
|
|
|
-
|
|
|
- //限制不允许小单位采购,这样大单位就量总数量 ssh 20211021
|
|
|
- if (isset($v['smallNum']) && $v['smallNum'] > 0) {
|
|
|
- //util::fail('采购最小单位必须扎');
|
|
|
- }
|
|
|
- $currentBigNum = $v['bigNum'] ?? 0;
|
|
|
- $totalNum = bcadd($totalNum, $currentBigNum, 2);
|
|
|
+ $bNum = $v['bigNum'] ?? 0;
|
|
|
+ $sNum = $v['smallNum'] ?? 0;
|
|
|
+ $bigNum = bcadd($bigNum, $bNum, 2);
|
|
|
+ $smallNum = bcadd($smallNum, $sNum, 2);
|
|
|
+ $sNewNum = bcdiv($sNum, $ratio, 2);
|
|
|
+ $currentTotalNum = bcadd($bNum,$sNewNum,2);
|
|
|
+ $totalNum = bcadd($totalNum, $currentTotalNum, 2);
|
|
|
$kindNum++;
|
|
|
$currentTotalPrice = bcmul($v['bigNum'], $v['itemPrice'], 2);
|
|
|
$totalItemPrice = bcadd($totalItemPrice, $currentTotalPrice, 2);
|