qiuenguang пре 1 година
родитељ
комит
c7f04f2440
1 измењених фајлова са 52 додато и 55 уклоњено
  1. 52 55
      application/api/controller/Manufacture.php

+ 52 - 55
application/api/controller/Manufacture.php

@@ -738,63 +738,55 @@ class Manufacture extends Api
         if (empty($param)){
             $this->error('参数错误');
         }
-        if ($param['status'] === '制程'){
-            $where = "a.gd_statu = '2-生产中' 
-                        AND a.`行号` = '1' 
-                        AND b.Gy0_sbbh LIKE '%{$param['machine']}%' 
-                        AND b.PD_WG = '1900-01-01 00:00:00' 
-                        AND b.Gy0_sj1 != '1900-01-01 00:00:00' ";
-        }else{
-            $where = "a.gd_statu = '2-生产中' 
-                        AND a.`行号` = '1' 
-                        AND b.Gy0_sbbh LIKE '%{$param['machine']}%' 
-                        AND b.PD_WG = '1900-01-01 00:00:00' 
-                        AND b.Gy0_sj1 = '1900-01-01 00:00:00' ";
-        }
-        $sql = "SELECT
-                RTRIM( a.Gd_gdbh ) AS 工单编号,
-                RTRIM( a.`销售订单号` ) AS 销售订单号,
-                RTRIM( c.yj_yjmc ) AS 印件名称,
-                RTRIM( b.Gy0_yjno ) AS yjno,
-                RTRIM( b.Gy0_gxh ) AS gxh,
-                RTRIM( b.Gy0_gxmc ) AS gxmc,
-                RTRIM( b.Add_gxmc ) AS Add_gxmc,
-                RTRIM( b.`Gy0_计划接货数` ) AS 计划接货数,
-                RTRIM( b.`Gy0_小时产能` ) AS 小时产能,
-                RTRIM( b.`工价系数` ) AS 产能系数,
-                RTRIM( b.`Gy0_生产工时` ) AS 生产工时,
-                RTRIM( b.Gy0_ls ) AS ls,
-                RTRIM( b.`Gy0_辅助工时` ) AS 辅助工时,
-                RTRIM( b.`Gy0_最早开工时间` ) AS 最早开工时间,
-                RTRIM( b.Gy0_sj1 ) AS 计划开工时间,
-                RTRIM( b.Gy0_sj2 ) AS 计划完工时间,
-                RTRIM( b.`Gy0_班次安排` ) AS 班次安排,
-                RTRIM( b.`工序备注` ) AS 排单备注,
-                RTRIM( a.Gd_cpmc ) AS 产品名称,
-                RTRIM( a.`成品名称` ) AS 成品名称,
-                RTRIM( a.`订单数量` ) AS 订单数量,
-                RTRIM( a.`计量单位` ) AS 计量单位,
-                RTRIM( a.`交货日期` ) AS 交货日期,
-                RTRIM( a.Gd_cpdh ) AS 产品代号,
-                RTRIM( a.`成品代号` ) AS 成品代号,
-                RTRIM( b.Gy0_sbbh ) AS 设备编号,
-                RTRIM( b.Gy0_SITE ) AS 车间名称,
-                RTRIM( b.UniqId ) AS GYUID,
-                SUM( d.sczl_cl ) AS 已完成产量 
-            FROM
-                `工单_基本资料` AS a
-                JOIN `工单_工艺资料` AS b ON a.Gd_gdbh = b.Gy0_gdbh
-                JOIN `工单_印件资料` AS c ON c.Yj_Gdbh = a.Gd_gdbh
-                LEFT JOIN `设备_产量计酬` AS d ON a.Gd_gdbh = d.sczl_gdbh 
-                AND b.Gy0_sbbh = d.sczl_jtbh 
-            WHERE
-                ".$where."
-            GROUP BY
-                A.Gd_gdbh";
-        $list = \db()->query($sql);
+        $list = \db('工单_基本资料')
+            ->alias('a')
+            ->field([
+                'RTRIM( a.Gd_gdbh )' => '工单编号',
+                'RTRIM( a.`销售订单号` )' => '销售订单号',
+                'RTRIM( c.yj_yjmc )' => '印件名称',
+                'RTRIM( b.Gy0_yjno )' =>'yjno',
+                'RTRIM( b.Gy0_gxh )' => 'gxh',
+                'RTRIM( b.Gy0_gxmc )' => 'gxmc',
+                'RTRIM( b.Add_gxmc )' => 'Add_gxmc',
+                'RTRIM( b.`Gy0_计划接货数` )' => '计划接货数',
+                'RTRIM( b.`Gy0_小时产能` )' => '小时产能',
+                'RTRIM( b.`工价系数` )' => '产能系数',
+                'RTRIM( b.`Gy0_生产工时` )' => '生产工时',
+                'RTRIM( b.Gy0_ls )' => 'ls',
+                'RTRIM( b.`Gy0_辅助工时` )' => '辅助工时',
+                'RTRIM( b.`Gy0_最早开工时间` )' => '最早开工时间',
+                'RTRIM( b.Gy0_sj1 )' => '计划开工时间',
+                'RTRIM( b.Gy0_sj2 )' => '计划完工时间',
+                'RTRIM( b.`Gy0_班次安排` )' => '班次安排',
+                'RTRIM( b.`工序备注` )' => '排单备注',
+                'RTRIM( a.Gd_cpmc )' => '产品名称',
+                'RTRIM( a.`成品名称` )' => '成品名称',
+                'RTRIM( a.`订单数量` )' => '订单数量',
+                'RTRIM( a.`计量单位` )' => '计量单位',
+                'RTRIM( a.`交货日期` )' => '交货日期',
+                'RTRIM( a.Gd_cpdh )' => '产品代号',
+                'RTRIM( a.`成品代号` )' => '成品代号',
+                'RTRIM( b.Gy0_sbbh )' => '设备编号',
+                'RTRIM( b.Gy0_SITE )' => '车间名称',
+                'RTRIM( b.UniqId )' => 'GYUID',
+                'SUM( d.sczl_cl )' => '已完成产量'
+            ])
+            ->join('工单_工艺资料 b','a.Gd_gdbh = b.Gy0_gdbh')
+            ->join('工单_印件资料 c','c.Yj_Gdbh = a.Gd_gdbh')
+            ->join('设备_产量计酬 d','a.Gd_gdbh = d.sczl_gdbh AND b.Gy0_sbbh = d.sczl_jtbh','LEFT')
+            ->where([
+                'a.gd_statu' => '2-生产中',
+                'a.行号'=> '1',
+                'b.Gy0_sbbh' => ['LIKE','%'.$param['machine'].'%'],
+                'b.PD_WG' => '1900-01-01 00:00:00'
+            ])
+            ->group('a.Gd_gdbh')
+            ->cache(true,720)
+            ->select();
         if (empty($list)){
             $this->success('',[]);
         }
+        $data['制程'] = $data['排程'] = [];
         foreach ($list as $key=>$value){
             if ((int)$value['yjno'] <10){
                 $value['yjno'] = '0'.rtrim($value['yjno']);
@@ -815,7 +807,12 @@ class Manufacture extends Api
                 $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('成功',$list);
+        $this->success('成功',$data);
     }
 }