Просмотр исходного кода

工艺计划产量重新分配

qiuenguang 1 год назад
Родитель
Сommit
84b834b70a
2 измененных файлов с 24 добавлено и 11 удалено
  1. 1 1
      application/api/controller/Manufacture.php
  2. 23 10
      application/api/controller/WorkOrder.php

+ 1 - 1
application/api/controller/Manufacture.php

@@ -707,7 +707,7 @@ class Manufacture extends Api
             ->group('a.Gd_gdbh')
             ->select();
         foreach ($list as $key=>$value){
-            $list[$key]['计划接货数'] = (int)round($value['计划接货数']/$value['ls']);
+            $list[$key]['计划接货数'] = (int)round($value['计划接货数']);
             if ($value['yjno']<10){
                 $value['yjno'] = '0'.$value['yjno'];
             }

+ 23 - 10
application/api/controller/WorkOrder.php

@@ -2408,26 +2408,39 @@ class WorkOrder extends Api
         $production = [];
         $i = 0;
         foreach ($processList as $key=>$value){
+//            if ($key === 0){
+//                array_push($production,$feed);
+//            }
+//            $wastage = 0;
+//            if ($value['损耗率'] !== 0 && !empty($value['损耗率'])){
+//                $wastage = ($production[$key]*$value['损耗率']+$value['损耗定额'])*$value['损耗系数'];
+//            }
+//
+//            if ($value['Gy0_ms'] >0 && !empty($value['Gy0_ms'])){
+//                $wastage = round($wastage * $value['Gy0_ms']);
+//            }
+//            if ((int)$value['Gy0_ls'] === 1 && $key>=1){
+//                $number = $production[$key]*$processList[$key-1]['Gy0_ls'];
+//            }else{
+//                $number = $production[$key];
+//            }
+//            if ($key>=1 && (int)$processList[$key-1]['Gy0_ls'] === 1 &&  (int)$value['Gy0_ls'] > 1){
+//                $number = $number/(int)$value['Gy0_ls'];
+//            }
+//            array_push($production,ceil($number-$wastage));
             if ($key === 0){
                 array_push($production,$feed);
+            }else{
+                $production[$key] = $production[$key]/$value['Gy0_ls'];
             }
             $wastage = 0;
             if ($value['损耗率'] !== 0 && !empty($value['损耗率'])){
                 $wastage = ($production[$key]*$value['损耗率']+$value['损耗定额'])*$value['损耗系数'];
             }
-
             if ($value['Gy0_ms'] >0 && !empty($value['Gy0_ms'])){
                 $wastage = round($wastage * $value['Gy0_ms']);
             }
-            if ((int)$value['Gy0_ls'] === 1 && $key>=1){
-                $number = $production[$key]*$processList[$key-1]['Gy0_ls'];
-            }else{
-                $number = $production[$key];
-            }
-            if ($key>=1 && (int)$processList[$key-1]['Gy0_ls'] === 1 &&  (int)$value['Gy0_ls'] > 1){
-                $number = $number/(int)$value['Gy0_ls'];
-            }
-            array_push($production,ceil($number-$wastage));
+            array_push($production,ceil($production[$key]-$wastage)*$value['Gy0_ls']);
             $processSql = \db('工单_工艺资料')
                 ->where('UniqId',$value['UniqId'])
                 ->fetchSql(true)