瀏覽代碼

机台生产日报表显示方式, 定位

曹鹤洋 1 年之前
父節點
當前提交
227321970e
共有 1 個文件被更改,包括 328 次插入63 次删除
  1. 328 63
      application/api/controller/MachineProductionReport.php

+ 328 - 63
application/api/controller/MachineProductionReport.php

@@ -129,6 +129,61 @@ class MachineProductionReport extends Api
         $this->success('成功',$rows);
     }
 
+    /**
+     * 通过工单获取机台生产日报表侧边栏
+     * @ApiMethod (GET)
+     */
+    public function getTabByGdbh()
+    {
+        //get请求
+        if(!$this->request->isGet()){
+            $this->error('请求方式错误');
+        }
+
+        $sql = 'SELECT t1.`sczl_gdbh`,t2.`yj_yjmc`
+            FROM (
+                SELECT `sczl_gdbh`, sczl_yjno FROM `db_sczl`
+                UNION
+                SELECT `sczl_gdbh`, sczl_yjno FROM `设备_产量计酬`
+                GROUP BY `sczl_gdbh`
+            ) AS t1
+            JOIN `工单_印件资料` AS t2 ON t1.`sczl_gdbh` = t2.`Yj_Gdbh`
+            WHERE t1.sczl_yjno = t2.yj_Yjno
+            ORDER BY t1.`sczl_gdbh` DESC
+            LIMIT 65';
+        $rows = db()->query($sql);
+
+        $arr1 = db()->table('设备_产量计酬')
+            ->field('sczl_gdbh,rtrim(sys_id) as sys_id')
+            ->where('sczl_gdbh','>=',$rows[64]['sczl_gdbh'])
+            ->select();
+        $arr2 = db()->table('db_sczl')
+            ->field('sczl_gdbh,rtrim(sys_id) as sys_id')
+            ->where('sczl_gdbh','>=',$rows[64]['sczl_gdbh'])
+            ->select();
+        $arr = array_merge($arr1,$arr2);
+
+        $brr = [];
+        foreach($arr as $k=>$v){
+            if(array_key_exists($v['sczl_gdbh'],$brr)){
+                if(array_key_exists($v['sys_id'],$brr[$v['sczl_gdbh']])){
+                    $brr[$v['sczl_gdbh']][$v['sys_id']] += 1;
+                }else{
+                    $brr[$v['sczl_gdbh']][$v['sys_id']] = 1;
+                }
+            }else{
+                $brr[$v['sczl_gdbh']][$v['sys_id']] = 1;
+            }
+        }
+
+        foreach($rows as $key=>$value){
+            $rows[$key]['sys'] = $brr[$value['sczl_gdbh']];
+            $rows[$key]['yj_yjmc'] = trim($value['yj_yjmc']);
+        }
+
+        $this->success('成功',$rows);
+    }
+
     /**
      * 获取机台生产日报表列表
      * @ApiMethod (GET)
@@ -148,51 +203,55 @@ class MachineProductionReport extends Api
         if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
         if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
 
-        $where = [];
-        if (isset($req['date']) && !empty($req['date'])){
-            $where['sys_rq'] = ['LIKE',$req['date'].'%'];
+        if(strpos($req['date'],'-')){
+            $where = ['a.sys_rq'=>['like','%'.$req['date'].'%']];
+            $option = ['sys_rq'=>['like','%'.$req['date'].'%']];
         }else{
-            $this->error('参数错误');
+            $where = ['a.sczl_gdbh'=>$req['date']];
+            $option = ['sczl_gdbh'=>$req['date']];
         }
-        if (isset($req['sys_id']) && !empty($req['sys_id'])) $where['sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
-
-        //拆片联拼系数 拆片条小盒系数 日定额 千件工价 补产标准
-        $rows1 = db()->table('设备_产量计酬')
-            ->field('sczl_gdbh, sczl_yjno, sczl_gxmc, LEFT(sczl_rq, 10) as sczl_rq, sczl_jtbh, 
-            sczl_bzdh, sczl_num, CAST(sczl_cl AS SIGNED) as sczl_cl, CAST(sczl_ms AS SIGNED) as sczl_ms, 
-            CAST(sczl_zcfp AS SIGNED) as sczl_zcfp, CAST(sczl_zccp AS SIGNED) as sczl_zccp, CAST(sczl_来料少数 AS SIGNED) as sczl_来料少数, 
-            CAST(sczl_装版工时 AS SIGNED) as sczl_装版工时, CAST(sczl_保养工时 AS SIGNED) as sczl_保养工时, CAST(sczl_打样工时 AS SIGNED) as sczl_打样工时, 
-            CAST(sczl_异常停机工时 AS SIGNED) as sczl_异常停机工时, CAST(sczl_设备运行工时 AS SIGNED) as sczl_设备运行工时, 
-            sczl_bh1, sczl_bh2, sczl_bh3, sczl_bh4, sczl_bh5, sczl_bh6, CAST(sczl_工价系数 AS SIGNED) as sczl_工价系数, 
-            rtrim(sys_id) as sys_id, sys_rq, mod_rq, UniqId')
+        if (isset($req['sys_id']) && !empty($req['sys_id'])){
+            $where['a.sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
+            $option['sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
+        }
+
+        //拆片联拼系数 拆片条小盒系数
+        $rows1 = db()->table('设备_产量计酬')->alias('a')
+            ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_zcfp, a.sczl_zccp, a.sczl_来料少数, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数, 
+            d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
             ->where($where)
-            ->order('UniqId desc')
+            ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+            ->order('sys_id asc, sczl_num asc')
             ->page($page,$limit)
             ->select();
-        $total1 = db()->table('设备_产量计酬')->where($where)->count();
 
-        //来料异常 日定额 千件工价 补产标准
+        $total1 = db()->table('设备_产量计酬')->where($option)->count();
+
+        //来料异常
         //制程废 次品
-        $rows2 = db()->table('db_sczl')
-            ->field('sczl_gdbh, sczl_yjno, sczl_gxmc, LEFT(sczl_rq, 10) as sczl_rq, sczl_jtbh, 
-            sczl_bzdh, sczl_num, CAST(sczl_cl AS SIGNED) as sczl_cl, CAST(sczl_ms AS SIGNED) as sczl_ms, 
-            CAST(sczl_fp AS SIGNED) as sczl_zcfp, CAST(sczl_cp AS SIGNED) as sczl_zccp, 
-            CAST(sczl_装版工时 AS SIGNED) as sczl_装版工时, CAST(sczl_保养工时 AS SIGNED) as sczl_保养工时, CAST(sczl_打样工时 AS SIGNED) as sczl_打样工时, 
-            CAST(sczl_异常停机工时 AS SIGNED) as sczl_异常停机工时, CAST(sczl_设备运行工时 AS SIGNED) as sczl_设备运行工时, 
-            sczl_bh1, sczl_bh2, sczl_bh3, sczl_bh4, sczl_bh5, sczl_bh6, 
-            CAST(拆片联拼系数 AS SIGNED) as 拆片联拼系数, CAST(拆片条小盒系数 AS SIGNED) as 拆片条小盒系数, CAST(sczl_工价系数 AS SIGNED) as sczl_工价系数, 
-            rtrim(sys_id) as sys_id, sys_rq, mod_rq, UniqId')
+        $rows2 = db()->table('db_sczl')->alias('a')
+            ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_fp as sczl_zcfp, a.sczl_cp as sczl_zccp, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, 
+            a.拆片联拼系数, a.拆片条小盒系数, a.sczl_工价系数, d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
             ->where($where)
-            ->order('UniqId desc')
+            ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+            ->order('sys_id asc, sczl_num asc')
             ->page($page,$limit)
             ->select();
-        $total2 = db()->table('db_sczl')->where($where)->count();
+        $total2 = db()->table('db_sczl')->where($option)->count();
 
         $gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
         $rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名');
         foreach ($rows2 as $key=>$value){
+            $rows[$key]['mod_rq'] = $value['mod_rq']=='1900-01-01 00:00:00' ? '' :$value['mod_rq'];
             $rows2[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
-
             $rows2[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
             for ($i=2;$i<=6;$i++){
                 if ($value['sczl_bh'.$i]){
@@ -205,27 +264,30 @@ class MachineProductionReport extends Api
                     $rows2[$key]['name'.$i] = '';
                 }
             }
-            $rows2[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.trim($value['sczl_gxmc']);
+            $rows2[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
             $rows2[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
-            $rows2[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : $value['sczl_cl'];
-            $rows2[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : $value['sczl_ms'];
-            $rows2[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : $value['sczl_zcfp'];
-            $rows2[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : $value['sczl_zccp'];
-            $rows2[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : $value['sczl_装版工时'];
-            $rows2[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : $value['sczl_保养工时'];
-            $rows2[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : $value['sczl_打样工时'];
-            $rows2[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : $value['sczl_异常停机工时'];
-            $rows2[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : $value['sczl_设备运行工时'];
-            $rows2[$key]['拆片联拼系数'] = $value['拆片联拼系数'] == 0 ? '' : $value['拆片联拼系数'];
-            $rows2[$key]['拆片条小盒系数'] = $value['拆片条小盒系数'] == 0 ? '' : $value['拆片条小盒系数'];
-            $rows2[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : $value['sczl_工价系数'];
+            $rows2[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
+            $rows2[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
+            $rows2[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
+            $rows2[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
+            $rows2[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
+            $rows2[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
+            $rows2[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
+            $rows2[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
+            $rows2[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
+            $rows2[$key]['拆片联拼系数'] = $value['拆片联拼系数'] == 0 ? '' : floatval($value['拆片联拼系数']);
+            $rows2[$key]['拆片条小盒系数'] = $value['拆片条小盒系数'] == 0 ? '' : floatval($value['拆片条小盒系数']);
+            $rows2[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
+            $rows2[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
+            $rows2[$key]['table_type']='db_sczl';
 
             unset($rows2[$key]['sczl_yjno']);
-            unset($rows2[$key]['sczl_gxmc']);
+            unset($rows2[$key]['sczl_gxh']);
+            unset($rows2[$key]['sczl_type']);
         }
         foreach ($rows1 as $key=>$value){
+            $rows[$key]['mod_rq'] = $value['mod_rq']=='1900-01-01 00:00:00' ? '' :$value['mod_rq'];
             $rows1[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
-
             $rows1[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
             for ($i=2;$i<=6;$i++){
                 if ($value['sczl_bh'.$i]){
@@ -238,22 +300,25 @@ class MachineProductionReport extends Api
                     $rows1[$key]['name'.$i] = '';
                 }
             }
-            $rows1[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.trim($value['sczl_gxmc']);
+            $rows1[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
             $rows1[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
-            $rows1[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : $value['sczl_cl'];
-            $rows1[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : $value['sczl_ms'];
-            $rows1[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : $value['sczl_zcfp'];
-            $rows1[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : $value['sczl_zccp'];
-            $rows1[$key]['sczl_来料少数'] = $value['sczl_来料少数'] == 0 ? '' : $value['sczl_来料少数'];
-            $rows1[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : $value['sczl_装版工时'];
-            $rows1[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : $value['sczl_保养工时'];
-            $rows1[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : $value['sczl_打样工时'];
-            $rows1[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : $value['sczl_异常停机工时'];
-            $rows1[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : $value['sczl_设备运行工时'];
-            $rows1[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : $value['sczl_工价系数'];
+            $rows1[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
+            $rows1[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
+            $rows1[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
+            $rows1[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
+            $rows1[$key]['sczl_来料少数'] = $value['sczl_来料少数'] == 0 ? '' : floatval($value['sczl_来料少数']);
+            $rows1[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
+            $rows1[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
+            $rows1[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
+            $rows1[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
+            $rows1[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
+            $rows1[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
+            $rows1[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
+            $rows1[$key]['table_type']='设备_产量计酬';
 
             unset($rows1[$key]['sczl_yjno']);
-            unset($rows1[$key]['sczl_gxmc']);
+            unset($rows1[$key]['sczl_gxh']);
+            unset($rows1[$key]['sczl_type']);
         }
 
         $rows = array_merge($rows2,$rows1);
@@ -265,6 +330,198 @@ class MachineProductionReport extends Api
         $this->success('成功',$data);
     }
 
+    /**
+     * 定位
+     * @ApiMethod (GET)
+     * @param string $gdbh 工单编号
+     * @param string $cpmc 产品名称
+     * @param string $page 页码
+     * @param string $limit 数量
+     */
+    public function locate()
+    {
+        //get请求
+        if(!$this->request->isGet()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+
+        $page = 1;
+        $limit = 15;
+        if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
+        if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
+
+        if (isset($req['gdbh']) && !empty($req['gdbh'])){
+            $where = [
+                'a.sczl_gdbh'=>[ 'like', '%' . $req['gdbh'] . '%']
+            ];
+            $option = [
+                'sczl_gdbh'=>[ 'like', '%' . $req['gdbh'] . '%']
+            ];
+
+            //拆片联拼系数 拆片条小盒系数 日定额 千件工价 补产标准
+            $rows1 = db()->table('设备_产量计酬')->alias('a')
+                ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_zcfp, a.sczl_zccp, a.sczl_来料少数, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数, 
+            d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
+                ->where($where)
+                ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+                ->order('sczl_yjno asc, sczl_gxh asc, sczl_type asc, sczl_rq asc')
+                ->page($page,$limit)
+                ->select();
+
+            $total1 = db()->table('设备_产量计酬')->where($option)->count();
+
+            //来料异常 日定额 千件工价 补产标准
+            //制程废 次品
+            $rows2 = db()->table('db_sczl')->alias('a')
+                ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_fp as sczl_zcfp, a.sczl_cp as sczl_zccp, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, 
+            a.拆片联拼系数, a.拆片条小盒系数, a.sczl_工价系数, d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
+                ->where($where)
+                ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+                ->order('sczl_yjno asc, sczl_gxh asc, sczl_type asc, sczl_rq asc')
+                ->page($page,$limit)
+                ->select();
+            $total2 = db()->table('db_sczl')->where($option)->count();
+        }else{
+            if (isset($req['cpmc']) && !empty($req['cpmc'])){
+                //查询工单表
+                $gd = db()->table('工单_基本资料')
+                    ->where('Gd_cpmc', 'LIKE', '%'.$req['cpmc'].'%')
+                    ->column('Gd_gdbh');
+                $where = [
+                    'a.sczl_gdbh'=>['in', $gd]
+                ];
+                $option = [
+                    'sczl_gdbh'=>['in', $gd]
+                ];
+
+                //拆片联拼系数 拆片条小盒系数 日定额 千件工价 补产标准
+                $rows1 = db()->table('设备_产量计酬')->alias('a')
+                    ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_zcfp, a.sczl_zccp, a.sczl_来料少数, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数, 
+            d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
+                    ->where($where)
+                    ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+                    ->order('sczl_yjno asc, sczl_gxh asc, sczl_type asc, sczl_rq asc')
+                    ->page($page,$limit)
+                    ->select();
+
+                $total1 = db()->table('设备_产量计酬')->where($option)->count();
+
+                //来料异常 日定额 千件工价 补产标准
+                //制程废 次品
+                $rows2 = db()->table('db_sczl')->alias('a')
+                    ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_fp as sczl_zcfp, a.sczl_cp as sczl_zccp, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, 
+            a.拆片联拼系数, a.拆片条小盒系数, a.sczl_工价系数, d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
+                    ->where($where)
+                    ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+                    ->order('sczl_yjno asc, sczl_gxh asc, sczl_type asc, sczl_rq asc')
+                    ->page($page,$limit)
+                    ->select();
+                $total2 = db()->table('db_sczl')->where($option)->count();
+            }else{
+                $this->error('参数错误');
+            }
+        }
+
+        $gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
+        $rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名');
+        foreach ($rows2 as $key=>$value){
+            $rows[$key]['mod_rq'] = $value['mod_rq']=='1900-01-01 00:00:00' ? '' :$value['mod_rq'];
+            $rows2[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
+            $rows2[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
+            for ($i=2;$i<=6;$i++){
+                if ($value['sczl_bh'.$i]){
+                    if ($value['sczl_bh'.$i]==$value['sczl_bh1']){
+                        $rows2[$key]['name'.$i] = $rows2[$key]['name1'];
+                    }else{
+                        $rows2[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
+                    }
+                }else{
+                    $rows2[$key]['name'.$i] = '';
+                }
+            }
+            $rows2[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
+            $rows2[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
+            $rows2[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
+            $rows2[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
+            $rows2[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
+            $rows2[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
+            $rows2[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
+            $rows2[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
+            $rows2[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
+            $rows2[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
+            $rows2[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
+            $rows2[$key]['拆片联拼系数'] = $value['拆片联拼系数'] == 0 ? '' : floatval($value['拆片联拼系数']);
+            $rows2[$key]['拆片条小盒系数'] = $value['拆片条小盒系数'] == 0 ? '' : floatval($value['拆片条小盒系数']);
+            $rows2[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
+            $rows2[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
+            $rows2[$key]['table_type']='db_sczl';
+
+            unset($rows2[$key]['sczl_yjno']);
+            unset($rows2[$key]['sczl_gxh']);
+            unset($rows2[$key]['sczl_type']);
+        }
+        foreach ($rows1 as $key=>$value){
+            $rows[$key]['mod_rq'] = $value['mod_rq']=='1900-01-01 00:00:00' ? '' :$value['mod_rq'];
+            $rows1[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
+            $rows1[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
+            for ($i=2;$i<=6;$i++){
+                if ($value['sczl_bh'.$i]){
+                    if ($value['sczl_bh'.$i]==$value['sczl_bh1']){
+                        $rows1[$key]['name'.$i] = $rows1[$key]['name1'];
+                    }else{
+                        $rows1[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
+                    }
+                }else{
+                    $rows1[$key]['name'.$i] = '';
+                }
+            }
+            $rows1[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
+            $rows1[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
+            $rows1[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
+            $rows1[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
+            $rows1[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
+            $rows1[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
+            $rows1[$key]['sczl_来料少数'] = $value['sczl_来料少数'] == 0 ? '' : floatval($value['sczl_来料少数']);
+            $rows1[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
+            $rows1[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
+            $rows1[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
+            $rows1[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
+            $rows1[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
+            $rows1[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
+            $rows1[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
+            $rows1[$key]['table_type']='设备_产量计酬';
+
+            unset($rows1[$key]['sczl_yjno']);
+            unset($rows1[$key]['sczl_gxh']);
+            unset($rows1[$key]['sczl_type']);
+        }
+
+        $rows = array_merge($rows1,$rows2);
+
+        $data = [
+            'total'          => $total1+$total2,
+            'rows'          => $rows,
+        ];
+        $this->success('成功',$data);
+    }
+
     /**
      * 获取机台生产日报表信息
      * @ApiMethod (GET)
@@ -283,11 +540,19 @@ class MachineProductionReport extends Api
             $this->error('参数错误');
         }
 
-        $rows = db()->table('db_sczl')->alias('d')
-            ->field('d.*, ')
-            ->join('工单_基本资料 g', 'd.')
-            ->where('d.UniqId',$UniqId)
-            ->select();
+        $rows = db()->table('db_sczl')->alias('a')
+            ->field('a.sczl_gdbh, a.sczl_yjno, a.sczl_gxh, a.sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, 
+            a.sczl_bzdh, a.sczl_num, a.sczl_cl, a.sczl_ms, a.sczl_fp as sczl_zcfp, a.sczl_cp as sczl_zccp, 
+            a.sczl_装版工时, a.sczl_保养工时, a.sczl_打样工时, a.sczl_异常停机工时, a.sczl_设备运行工时, 
+            a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, 
+            a.拆片联拼系数, a.拆片条小盒系数, a.sczl_工价系数, d.日定额, d.千件工价, d.补产标准, 
+            rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId')
+            ->where('UniqId', $UniqId)
+            ->where('a.sczl_yjno = y.yj_yjno')
+            ->join(['dic_lzde'=>'d'],'a.sczl_dedh=d.sys_bh')
+            ->join(['工单_基本资料'=>'j'],'a.sczl_gdbh=j.Gd_gdbh')
+            ->join(['工单_印件资料'=>'y'],'a.sczl_gdbh=y.Yj_Gdbh')
+            ->find();
 
 
         $this->success('成功',$rows);