Sfoglia il codice sorgente

超节损合格率计算优化

unknown 7 mesi fa
parent
commit
ab44736a10
1 ha cambiato i file con 19 aggiunte e 1 eliminazioni
  1. 19 1
      application/api/controller/OrderSuperLoss.php

+ 19 - 1
application/api/controller/OrderSuperLoss.php

@@ -1807,13 +1807,31 @@ class OrderSuperLoss extends Api
                 ->where('Yj_Gdbh', $value['Gd_gdbh'])
                 ->where('yj_Yjno', $value['jjcp_yjno'])
                 ->value('质量考核');
+            $processDetail = \db('工单_工艺资料')
+                ->where('Gy0_gdbh', $value['Gd_gdbh'])
+                ->where('Gy0_yjno', $value['jjcp_yjno'])
+                ->field('CONCAT(rtrim(Gy0_gxmc),"[",rtrim(Add_gxmc),"]") as 工序名称,Gy0_ls as 联数')
+                ->select();
+            $number1 = $number2 = 0;
+            foreach ($processDetail as $k => $v) {
+                if (strpos($v['工序名称'],'分切') !== false) {
+                    $number1 = $v['联数'];
+                }
+                if (strpos($v['工序名称'],'分切') === false && $v['联数'] > 1) {
+                    $number2 = $v['联数'];
+                }
+            }
+            $Multiple = $number1/$number2;
+            if (is_int($Multiple) === false) {
+                $Multiple = 1;
+            }
             $list[$key]['工单质检废'] = $value['废品合计'] - $value['zcfp'];
             $list[$key]['质量考核'] = $status;
             $list[$key]['考核'] = ($status == 1) ? '否' : '是';
             if ($value['实际投料'] !== null){
                 $actualMaterial = $value['实际投料'] * 10000;
                 $list[$key]['target_rate'] = $this->calculateRate($actualMaterial, $value['工单计划损耗']);
-                $list[$key]['real_rate'] = $value['warehousing_num']/($value['实际投料']*10000)*100;
+                $list[$key]['real_rate'] = $value['warehousing_num']/($value['实际投料']*10000*$Multiple)*100;
                 $list[$key]['real_rate'] = number_format($list[$key]['real_rate'], 2).'%';
             }else{
                 $list[$key]['target_rate'] = null;