Browse Source

工单排产优化,工单流程单号查询

qiuenguang 1 year ago
parent
commit
b15b331505

+ 7 - 1
application/api/controller/Facility.php

@@ -360,7 +360,7 @@ class Facility extends Api
 //            ->join('设备_产量计酬 b','a.Gy0_gdbh = b.sczl_gdbh AND a.Gy0_yjno = b.sczl_yjno AND a.Gy0_gxh = b.sczl_gxh','LEFT')
             ->join('工单_基本资料 c','a.Gy0_gdbh = c.Gd_gdbh')
             ->join('工单_印件资料 d','a.Gy0_gdbh = d.Yj_Gdbh AND a.Gy0_yjno = d.yj_Yjno')
-            ->field('a.Gy0_gdbh as gdbh,a.质量要求 as 质量信息,a.Gy0_yjno as yjno,a.Gy0_gxh as gxh,
+            ->field('a.Gy0_gdbh as gdbh,a.质量要求 as 质量信息,a.Gy0_yjno as yjno,a.Gy0_gxh as gxh,a.Gy0_sbbh as sbbh,
     a.Gy0_gxmc as gxmc,a.Add_gxmc as add_gxmc,a.Gy0_辅助工时 as 装版工时,a.Gy0_小时产能 as 工序产能,a.Gy0_生产工时 as 计划工时,
     a.Gy0_sj1 as sj1,a.Gy0_sj2 as sj2,a.工序备注 as 排产备注,d.yj_yjmc as 印件名称,c.成品名称 as 产品名称,c.成品代号 as 产品代号,
     a.Gy0_计划接货数 as 计划接货数,a.Gy0_ls as ls,a.Gy0_班次安排 as 班组,a.UniqId as UniqId,a.Gy0_最早开工时间 as 最早开工时间')
@@ -374,6 +374,8 @@ class Facility extends Api
         if (!empty($orderList)){
             $data = \db('设备_产量采集')->where('设备编号',$machine)->order('UniqId desc')->find();
             foreach ($orderList as $key=>$value){
+                $machineList = explode(' ',$value['sbbh']);
+
                 $cl_data = \db('设备_产量计酬')
                     ->field('SUM(sczl_cl) as 已完成,SUM(sczl_zcfp) as 制程废品')
                     ->where('sczl_gdbh',$value['gdbh'])
@@ -406,7 +408,11 @@ class Facility extends Api
 
                 $orderList[$key]['计划生产时段'] =substr($value['sj1'],5,5).' '.substr($value['sj1'],11,5).'<-->'.substr($value['sj2'],5,5).' '.substr($value['sj2'],11,5);
                 unset($orderList[$key]['gdbh'],$orderList[$key]['质量信息'],$orderList[$key]['gxh'],$orderList[$key]['yjno'],$orderList[$key]['gxmc'],$orderList[$key]['add_gxmc'],$orderList[$key]['计划接货数'],$orderList[$key]['已完成'],$orderList[$key]['印件名称'],$orderList[$key]['ls'],$orderList[$key]['制程废品']);
+                if (in_array($machine,$machineList) === false){
+                    unset($orderList[$key]);
+                }
             }
+
         }
         $this->success('成功',$orderList);
     }

+ 29 - 25
application/api/controller/Manufacture.php

@@ -829,7 +829,7 @@ class Manufacture extends Api
             ->join('设备_产量计酬 d','a.Gy0_gdbh = d.sczl_gdbh AND a.Gy0_yjno = d.sczl_yjno AND a.Gy0_gxh = d.sczl_gxh AND a.Gy0_sbbh = d.sczl_jtbh','LEFT')
             ->where([
                 'b.gd_statu' => '2-生产中',
-                'a.Gy0_sbbh' => ['LIKE',$param['machine'].'%'],
+                'a.Gy0_sbbh' => ['LIKE','%'.$param['machine'].'%'],
                 'a.PD_WG' => '1900-01-01 00:00:00',
             ])
             ->where($where)
@@ -841,31 +841,35 @@ class Manufacture extends Api
         }
         $data['制程'] = $data['排程'] = [];
         foreach ($list as $key=>$value){
-            $list[$key]['设备编号'] = $param['machine'];
-            if ((int)$value['yjno'] <10){
-                $value['yjno'] = '0'.rtrim($value['yjno']);
-            }
-            if ((int)$value['gxh'] <10){
-                $value['gxh'] = '0'.rtrim($value['gxh']);
-            }
-            if (rtrim($value['Add_gxmc']) == ''){
-                $list[$key]['印件工序及名称'] = $value['yjno'].'-'.$value['gxh'].'-->'.rtrim($value['gxmc']);
-            }else{
-                $list[$key]['印件工序及名称'] = $value['yjno'].'-'.$value['gxh'].'-->'.rtrim($value['gxmc']).'【'.rtrim($value['Add_gxmc']).'】';
-            }
-            unset($list[$key]['Add_gxmc']);
-            if ($value['产品名称'] == ''){
-                $list[$key]['产品名称'] = $value['成品名称'];
-            }
-            if ($value['产品代号'] == ''){
-                $list[$key]['产品代号'] = $value['成品代号'];
-            }
-            unset($list[$key]['成品代号'],$list[$key]['成品名称']);
-            if ($list[$key]['计划开工时间'] !== '1900-01-01 00:00:00'){
-                array_push($data['制程'],$list[$key]);
-            }else{
-                array_push($data['排程'],$list[$key]);
+            $machine = explode(' ',$list[$key]['设备编号']);
+            if (in_array($param['machine'],$machine)){
+                $list[$key]['设备编号'] = $param['machine'];
+                if ((int)$value['yjno'] <10){
+                    $value['yjno'] = '0'.rtrim($value['yjno']);
+                }
+                if ((int)$value['gxh'] <10){
+                    $value['gxh'] = '0'.rtrim($value['gxh']);
+                }
+                if (rtrim($value['Add_gxmc']) == ''){
+                    $list[$key]['印件工序及名称'] = $value['yjno'].'-'.$value['gxh'].'-->'.rtrim($value['gxmc']);
+                }else{
+                    $list[$key]['印件工序及名称'] = $value['yjno'].'-'.$value['gxh'].'-->'.rtrim($value['gxmc']).'【'.rtrim($value['Add_gxmc']).'】';
+                }
+                unset($list[$key]['Add_gxmc']);
+                if ($value['产品名称'] == ''){
+                    $list[$key]['产品名称'] = $value['成品名称'];
+                }
+                if ($value['产品代号'] == ''){
+                    $list[$key]['产品代号'] = $value['成品代号'];
+                }
+                unset($list[$key]['成品代号'],$list[$key]['成品名称']);
+                if ($list[$key]['计划开工时间'] !== '1900-01-01 00:00:00'){
+                    array_push($data['制程'],$list[$key]);
+                }else{
+                    array_push($data['排程'],$list[$key]);
+                }
             }
+
         }
 
         $this->success('成功',$data);

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

@@ -742,7 +742,7 @@ class WorkOrderVerification extends Api
         if (!isset($params['gxNo']) || empty($params['gxNo'])){
             $this->error('参数错误');
         }
-        $total = db('设备_产量计酬')->where('sczl_gdbh',$params['order'])->where('sczl_gdbh',$params['yjno'])->order('sczl_num')->column('distinct(sczl_num)');
+        $total = db('设备_产量计酬')->where('sczl_gdbh',$params['order'])->where('sczl_yjno',$params['yjno'])->order('sczl_num')->column('distinct(sczl_num)');
         $where['sczl_gxh'] = (int)$params['gxNo'];
         $where['sczl_gdbh'] = $params['order'];
         $where['sczl_yjno'] = $params['yjno'];