Ver código fonte

超节损实际投料修改

qiuenguang 1 ano atrás
pai
commit
78dd7b149e
1 arquivos alterados com 18 adições e 5 exclusões
  1. 18 5
      application/api/controller/OrderSuperLoss.php

+ 18 - 5
application/api/controller/OrderSuperLoss.php

@@ -799,7 +799,7 @@ class OrderSuperLoss extends Api
         }
 //        $search = $params['year'].'.'.$params['month'];
         $field = "a.Gd_gdbh,rtrim(c.yj_Yjdh) as yj_yjdh,c.yj_Yjno, c.yj_ks,c.yj_ls,rtrim(c.yj_zzdh) as yj_zzdh,
-                  rtrim(b.BOM_物料名称) as BOM_物料名称,rtrim(c.yj_tlgg) as yj_tlgg,rtrim(b.BOM_投料单位) as BOM_投料单位,a.订单数量,c.yj_平张投料, b.BOM_实际用量,d.st_sl as 实际投料,a.投料确认,a.UniqId";
+                  rtrim(b.BOM_物料名称) as BOM_物料名称,rtrim(c.yj_tlgg) as yj_tlgg,rtrim(b.BOM_投料单位) as BOM_投料单位,a.订单数量,c.yj_平张投料, b.BOM_实际用量,d.st_sl as 实际投料,a.投料确认,c.Uniqid as UniqId";
         $data =db('工单_基本资料')->alias('a')
             ->join('工单_印件资料 c','a.Gd_gdbh = c.Yj_Gdbh ','left')
             ->join('工单_bom资料 b','c.Yj_Gdbh = b.BOM_工单编号 AND c.yj_zzdh = b.BOM_物料编码','left')
@@ -850,14 +850,27 @@ class OrderSuperLoss extends Api
         }
         $i = 0;
         foreach ($params as $key=>$value){
+            $list = \db('工单_印件资料')->where('Uniqid',$value['UniqId'])->find();
             if (!empty($value['number'])){
-                $info = db('工单_基本资料')->where('UniqId',$value['UniqId'])->value('Gd_gdbh');
-                $res_sql = db('工单_基本资料')->where('UniqId',$value['UniqId'])->fetchSql(true)->setField('实际投料',$value['number']);
+                $res_sql = db('工单_基本资料')->where('Gd_gdbh',$list['Yj_Gdbh'])->where('Gd_cpdh',$list['yj_Yjdh'])->fetchSql(true)->setField('实际投料',$value['number']);
                 $res = Db::query($res_sql);
                 $data['yj_实际投料'] = $value['number'];
-                $yj_sql =db('工单_印件资料')->where('Yj_Gdbh',$info)->fetchSql(true)->update($data);
+                $yj_sql =db('工单_印件资料')->where('Uniqid',$value['UniqId'])->fetchSql(true)->update($data);
                 $yjRes = Db::query($yj_sql);
-                if (!$res && !$yjRes){
+                if ((int)$list['yj_ls'] !== 0 && (int)$list['yj_ks'] !== 0){
+                    $tl_num = number_format(((float)$value['number']*10000)/((int)$list['yj_ks']*(int)$list['yj_ls']),4);
+                }else{
+                    $tl_num = (float)$value['number']*10000;
+                }
+                $tl_num = (float)str_replace(',', '', $tl_num);
+                $tl_sql = \db('物料_收发记录')
+                    ->where('st_gdbh',$list['Yj_Gdbh'])
+                    ->where('cpdh',$list['yj_Yjdh'])
+                    ->where('仓库编号','Y101')
+                    ->fetchSql(true)
+                    ->update(['st_sl'=>$tl_num]);
+                $tlRes = Db::query($tl_sql);
+                if (!$res && !$yjRes && !$tlRes){
                     $i++;
                 }
             }