success('请求成功'); } /** * 获取机台生产日报表侧边栏 * @ApiMethod (GET) */ public function getTab() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $rows = db()->table('设备_产量计酬') ->field('LEFT(sys_rq, 10) as date, COUNT(*) as counts') ->group('date') ->order('UniqId desc') ->limit(30) ->select(); $rows1 = db()->table('db_sczl') ->group('date') ->order('UniqId desc') ->limit(40) ->column('LEFT(sys_rq, 10) as date, COUNT(*) as counts'); $arr2 = db()->table('设备_产量计酬') ->field('LEFT(sys_rq, 10) as date, rtrim(sys_id) as sys_id, COUNT(sys_id) as count') ->where('sys_rq','>=',$rows[29]['date']) ->group('date, sys_id') ->select(); $arr1 = db()->table('db_sczl') ->field('LEFT(sys_rq, 10) as date, rtrim(sys_id) as sys_id, COUNT(sys_id) as count') ->where('sys_rq','>=',$rows[29]['date']) ->group('date, sys_id') ->select(); $result = []; // 遍历第一个数组 foreach ($arr1 as $item) { $date = $item['date']; $sysId = $item['sys_id']; $count = $item['count']; // 如果结果数组中不存在该日期和系统ID的记录,则创建新记录 if (!isset($result[$date][$sysId])) { $result[$date][$sysId] = 0; } // 将count累加到对应的记录中 $result[$date][$sysId] += $count; } // 遍历第二个数组 foreach ($arr2 as $item) { $date = $item['date']; $sysId = $item['sys_id']; $count = $item['count']; // 如果结果数组中不存在该日期和系统ID的记录,则创建新记录 if (!isset($result[$date][$sysId])) { if (substr($sysId,1,3)=='00-'){ if (isset($result[$date])){ $result[$date] = array_merge([$sysId=>0],$result[$date]); }else{ $result[$date][$sysId] = 0; } // }else if (substr($sysId,5,1)=='/'){ // $num = substr($sysId,1,4); // $i = $flag = 0; // foreach ($result[$date] as $k => $v) { // if (substr($k, 4, 1) === "/") { // dump(substr($k, 1, 4)); // dump($k); // dump($result[$date][$i+1]); // if (substr($k, 1, 4)<$num && substr($result[$date][$i+1], 1, 4)>$num){ // $flag = $i; // break; // } // } // $i++; // } // dump($flag); // if (isset($result[$date])){ // $result[$date] = array_merge([$sysId=>0],$result[$date]); // }else{ // $result[$date][$sysId] = 0; // } }else{ $result[$date][$sysId] = 0; } } // 将count累加到对应的记录中 $result[$date][$sysId] += $count; } foreach($rows as $key=>$value){ if(array_key_exists($value['date'],$rows1)){ $rows[$key]['counts'] = $value['counts']+$rows1[$value['date']]; }else{ $rows[$key]['counts'] = $value['counts']; } $rows[$key]['sys'] = $result[$value['date']]; $rows[$key]['date'] = str_replace('-', '.', $rows[$key]['date']); } $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) * @param string $date 时间 * @param string $sys_id 用户 */ public function getList() { //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(strpos($req['date'],'-')){ $where = ['a.sys_rq'=>['like','%'.$req['date'].'%']]; $option = ['sys_rq'=>['like','%'.$req['date'].'%']]; }else{ $where = ['a.sczl_gdbh'=>$req['date']]; $option = ['sczl_gdbh'=>$req['date']]; } 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) ->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($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('sys_id asc, sczl_num asc') ->page($page,$limit) ->select(); $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]){ 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($rows2,$rows1); $data = [ 'total' => $total1+$total2, 'rows' => $rows, ]; $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) * @param string $UniqId UniqId */ public function getInfo() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $req = $this->request->param(); if (isset($req['UniqId']) && !empty($req['UniqId'])){ $UniqId = $req['UniqId']; }else{ $this->error('参数错误'); } $rows = db()->table('db_sczl')->alias('a') ->field('a.sczl_gdbh, rtrim(j.Gd_cpmc) as Gd_cpmc, a.sczl_yjno, rtrim(y.yj_yjmc) as yj_yjmc, rtrim(a.sczl_gxmc) as sczl_gxmc, a.sczl_gxh, rtrim(a.sczl_type) as sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, a.sczl_bzdh, a.sczl_ms, a.sczl_ls, a.sczl_cl, a.sczl_fp as sczl_zcfp, a.sczl_装版总工时, a.sczl_装版工时, a.sczl_保养工时, a.sczl_异常停机工时, a.sczl_打样总工时, a.sczl_打样工时, a.sczl_设备运行工时, a.拆片联拼系数, a.拆片条小盒系数, a.sczl_dedh, a.sczl_工价系数, a.sczl_计产系数, a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_bh7, a.sczl_bh8, a.sczl_bh9, a.sczl_bh10, a.sczl_rate1, a.sczl_rate2, a.sczl_rate3, a.sczl_rate4, a.sczl_rate5, a.sczl_rate6, a.sczl_rate7, a.sczl_rate8, a.sczl_rate9, a.sczl_rate10 ') ->where('a.UniqId', $UniqId) ->where('a.sczl_yjno = y.yj_yjno') ->join(['工单_基本资料'=>'j'],'a.sczl_gdbh = j.Gd_gdbh') ->join(['工单_印件资料'=>'y'],'a.sczl_gdbh = y.Yj_Gdbh') ->find(); $rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名'); for($i=1;$i<=10;$i++){ if(trim($rows['sczl_bh'.$i])!=''){ $rows['sczl_bh'.$i.'_name'] = array_key_exists($rows['sczl_bh'.$i],$rs) ? trim($rs[$rows['sczl_bh'.$i]]) : ''; }else{ $rows['sczl_bh'.$i.'_name'] = ''; } } $this->success('成功',$rows); } /** * 获取机台生产日报表信息 * @ApiMethod (GET) * @param string $UniqId UniqId */ public function add() { //get请求 if(!$this->request->isGet()){ $this->error('请求方式错误'); } $req = $this->request->param(); if (isset($req['UniqId']) && !empty($req['UniqId'])){ $UniqId = $req['UniqId']; }else{ $this->error('参数错误'); } $rows = db()->table('db_sczl')->alias('a') ->field('a.sczl_gdbh, rtrim(j.Gd_cpmc) as Gd_cpmc, a.sczl_yjno, rtrim(y.yj_yjmc) as yj_yjmc, rtrim(a.sczl_gxmc) as sczl_gxmc, a.sczl_gxh, rtrim(a.sczl_type) as sczl_type, LEFT(a.sczl_rq, 10) as sczl_rq, a.sczl_jtbh, a.sczl_bzdh, a.sczl_ms, a.sczl_ls, a.sczl_cl, a.sczl_fp as sczl_zcfp, a.sczl_装版总工时, a.sczl_装版工时, a.sczl_保养工时, a.sczl_异常停机工时, a.sczl_打样总工时, a.sczl_打样工时, a.sczl_设备运行工时, a.拆片联拼系数, a.拆片条小盒系数, a.sczl_dedh, a.sczl_工价系数, a.sczl_计产系数, a.sczl_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_bh7, a.sczl_bh8, a.sczl_bh9, a.sczl_bh10, d.日定额, d.千件工价, d.补产标准 ') ->where('a.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); } }