|
|
@@ -195,113 +195,91 @@ class MachineProductionReport extends Api
|
|
|
$where['a.sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
|
|
|
$option['sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
|
|
|
}
|
|
|
+ $total1 = db()->table('设备_产量计酬')->where($option)->count();
|
|
|
+ $total2 = db()->table('db_sczl')->where($option)->count();
|
|
|
|
|
|
- //拆片联拼系数 拆片条小盒系数
|
|
|
- $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('a.sys_id asc, a.sczl_num asc')
|
|
|
-// ->page($page,$limit)
|
|
|
- ->select();
|
|
|
+ if (!cache('ReportGetList-'.$req['date'].'-'.$req['sys_id'].'-'.$req['page'].'-'.$req['limit'])){
|
|
|
+ // a.sczl_来料少数,
|
|
|
+ //a.拆片联拼系数, a.拆片条小盒系数,
|
|
|
+ $sql = 'SELECT 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_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, a.sczl_来料少数, NULL AS 拆片联拼系数, NULL AS 拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "设备_产量计酬" AS table_type
|
|
|
+ FROM `设备_产量计酬` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh` ';
|
|
|
+ if (strpos($req['date'],'-')){
|
|
|
+ $sql .= 'WHERE `a`.`sys_rq` LIKE "%'.$req['date'].'%" ';
|
|
|
+ }else{
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` = "'.$req['date'].'" ';
|
|
|
+ }
|
|
|
|
|
|
- $total1 = db()->table('设备_产量计酬')->where($option)->count();
|
|
|
+ if (isset($req['sys_id']) && !empty($req['sys_id'])){
|
|
|
+ $sql .= 'AND `a`.`sys_id` LIKE "%'.$req['sys_id'].'%" ';
|
|
|
+ }
|
|
|
+ $sql .= 'UNION ALL
|
|
|
+ SELECT 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.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, NULL AS sczl_来料少数, a.拆片联拼系数, a.拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "db_sczl" AS table_type
|
|
|
+ FROM `db_sczl` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh`';
|
|
|
+ if (strpos($req['date'],'-')){
|
|
|
+ $sql .= 'WHERE `a`.`sys_rq` LIKE "%'.$req['date'].'%" ';
|
|
|
+ }else{
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` = "'.$req['date'].'" ';
|
|
|
+ }
|
|
|
|
|
|
- //来料异常
|
|
|
- $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('a.sys_id asc, a.sczl_num asc')
|
|
|
-// ->page($page,$limit)
|
|
|
- ->select();
|
|
|
- $total2 = db()->table('db_sczl')->where($option)->count();
|
|
|
+ if (isset($req['sys_id']) && !empty($req['sys_id'])){
|
|
|
+ $sql .= 'AND `a`.`sys_id` LIKE "%'.$req['sys_id'].'%" ';
|
|
|
+ }
|
|
|
+ $sql .= 'ORDER BY sys_id ASC, sczl_num ASC LIMIT '.($page-1)*$limit.','.$limit;
|
|
|
+ $rows = db()->query($sql);
|
|
|
+
|
|
|
+ cache('ReportGetList',$rows,3600);
|
|
|
+ }else{
|
|
|
+ $rows = cache('ReportGetList-'.$req['date'].'-'.$req['sys_id'].'-'.$req['page'].'-'.$req['limit']);
|
|
|
+ }
|
|
|
|
|
|
$gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
|
|
|
$rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名');
|
|
|
- foreach ($rows2 as $key=>$value){
|
|
|
+ foreach ($rows 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']]) : '';
|
|
|
+ $rows[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
|
|
|
+ $rows[$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'];
|
|
|
+ $rows[$key]['name'.$i] = $rows[$key]['name1'];
|
|
|
}else{
|
|
|
- $rows2[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
|
|
|
+ $rows[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
|
|
|
}
|
|
|
}else{
|
|
|
- $rows2[$key]['name'.$i] = '';
|
|
|
+ $rows[$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']);
|
|
|
+ $rows[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
|
|
|
+ $rows[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
|
|
|
+ $rows[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
|
|
|
+ $rows[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
|
|
|
+ $rows[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
|
|
|
+ $rows[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
|
|
|
+ $rows[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
|
|
|
+ $rows[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
|
|
|
+ $rows[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
|
|
|
+ $rows[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
|
|
|
+ $rows[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
|
|
|
+ $rows[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
|
|
|
+ $rows[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
|
|
|
+ $rows[$key]['sczl_来料少数'] = $value['sczl_来料少数'] == 0 ? '' : floatval($value['sczl_来料少数']);
|
|
|
+ $rows[$key]['拆片联拼系数'] = $value['拆片联拼系数'] == 0 ? '' : floatval($value['拆片联拼系数']);
|
|
|
+ $rows[$key]['拆片条小盒系数'] = $value['拆片条小盒系数'] == 0 ? '' : floatval($value['拆片条小盒系数']);
|
|
|
+
|
|
|
+ unset($rows[$key]['sczl_yjno']);
|
|
|
+ unset($rows[$key]['sczl_gxh']);
|
|
|
+ unset($rows[$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,
|
|
|
@@ -332,42 +310,37 @@ class MachineProductionReport extends Api
|
|
|
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')->cache(true)
|
|
|
- ->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('a.sczl_yjno asc, a.sczl_gxh asc, a.sczl_type asc, a.sczl_rq asc')
|
|
|
- ->page($page,$limit)
|
|
|
- ->select();
|
|
|
+ if (!cache('ReportGetList-'.$req['gdbh'].'-'.$req['cpmc'].'-'.$req['page'].'-'.$req['limit'])){
|
|
|
+ //a.拆片联拼系数, a.拆片条小盒系数,
|
|
|
+ $sql = 'SELECT 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_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, a.sczl_来料少数, NULL AS 拆片联拼系数, NULL AS 拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "设备_产量计酬" AS table_type
|
|
|
+ FROM `设备_产量计酬` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh` ';
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` LIKE "%'.$req['gdbh'].'%" ';
|
|
|
+ $sql .= 'UNION ALL
|
|
|
+ SELECT 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.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, NULL AS sczl_来料少数, a.拆片联拼系数, a.拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "db_sczl" AS table_type
|
|
|
+ FROM `db_sczl` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh`';
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` LIKE "%'.$req['gdbh'].'%" ';
|
|
|
+ $sql .= 'ORDER BY sys_id ASC, sczl_num ASC LIMIT '.($page-1)*$limit.','.$limit;
|
|
|
+ $rows = db()->query($sql);
|
|
|
+
|
|
|
+ cache('ReportGetList-'.$req['gdbh'].'-'.$req['cpmc'].'-'.$req['page'].'-'.$req['limit'],$rows,3600);
|
|
|
+ }else{
|
|
|
+ $rows = cache('ReportGetList-'.$req['gdbh'].'-'.$req['cpmc'].'-'.$req['page'].'-'.$req['limit']);
|
|
|
+ }
|
|
|
|
|
|
$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('a.sczl_yjno asc, a.sczl_gxh asc, a.sczl_type asc, a.sczl_rq asc')
|
|
|
- ->page($page,$limit)
|
|
|
- ->select();
|
|
|
$total2 = db()->table('db_sczl')->where($option)->count();
|
|
|
}else{
|
|
|
if (isset($req['cpmc']) && !empty($req['cpmc'])){
|
|
|
@@ -375,42 +348,38 @@ class MachineProductionReport extends Api
|
|
|
$gd = db()->table('工单_基本资料')
|
|
|
->where('Gd_cpmc', 'LIKE', '%'.$req['cpmc'].'%')
|
|
|
->column('Gd_gdbh');
|
|
|
- $where = [
|
|
|
- 'a.sczl_gdbh'=>['in', $gd]
|
|
|
- ];
|
|
|
+ $in = "'" . implode("','", $gd) . "'";
|
|
|
+
|
|
|
$option = [
|
|
|
'sczl_gdbh'=>['in', $gd]
|
|
|
];
|
|
|
|
|
|
- //拆片联拼系数 拆片条小盒系数
|
|
|
- $rows1 = db()->table('设备_产量计酬')->alias('a')->cache(true)
|
|
|
- ->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('a.sczl_yjno asc, a.sczl_gxh asc, a.sczl_type asc, a.sczl_rq asc')
|
|
|
- ->page($page,$limit)
|
|
|
- ->select();
|
|
|
+ if (!cache('ReportLocate')){
|
|
|
+ $sql = 'SELECT 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_bh1, a.sczl_bh2, a.sczl_bh3, a.sczl_bh4, a.sczl_bh5, a.sczl_bh6, a.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, a.sczl_来料少数, NULL AS 拆片联拼系数, NULL AS 拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "设备_产量计酬" AS table_type
|
|
|
+ FROM `设备_产量计酬` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh` ';
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` IN ('.$in.') ';
|
|
|
+ $sql .= 'UNION ALL
|
|
|
+ SELECT 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.sczl_工价系数,
|
|
|
+ d.日定额, d.千件工价, d.补产标准, NULL AS sczl_来料少数, a.拆片联拼系数, a.拆片条小盒系数,
|
|
|
+ rtrim(a.sys_id) as sys_id, a.sys_rq, a.mod_rq, a.UniqId, "db_sczl" AS table_type
|
|
|
+ FROM `db_sczl` `a` INNER JOIN `dic_lzde` `d` ON `a`.`sczl_dedh`=`d`.`sys_bh` ';
|
|
|
+ $sql .= 'WHERE `a`.`sczl_gdbh` IN ('.$in.') ';
|
|
|
+ $sql .= 'ORDER BY sys_id ASC, sczl_num ASC LIMIT '.($page-1)*$limit.','.$limit;
|
|
|
+ $rows = db()->query($sql);
|
|
|
+ }else{
|
|
|
|
|
|
- $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('a.sczl_yjno asc, a.sczl_gxh asc, a.sczl_type asc, a.sczl_rq asc')
|
|
|
- ->page($page,$limit)
|
|
|
- ->select();
|
|
|
+
|
|
|
+ $total1 = db()->table('设备_产量计酬')->where($option)->count();
|
|
|
$total2 = db()->table('db_sczl')->where($option)->count();
|
|
|
}else{
|
|
|
$this->error('参数错误');
|
|
|
@@ -419,79 +388,42 @@ class MachineProductionReport extends Api
|
|
|
|
|
|
$gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
|
|
|
$rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名');
|
|
|
- foreach ($rows2 as $key=>$value){
|
|
|
+ foreach ($rows 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']]) : '';
|
|
|
+ $rows[$key]['Gd_cpmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? trim($gd[$value['sczl_gdbh']]) : '';
|
|
|
+ $rows[$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'];
|
|
|
+ $rows[$key]['name'.$i] = $rows[$key]['name1'];
|
|
|
}else{
|
|
|
- $rows2[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
|
|
|
+ $rows[$key]['name1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
|
|
|
}
|
|
|
}else{
|
|
|
- $rows2[$key]['name'.$i] = '';
|
|
|
+ $rows[$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']);
|
|
|
+ $rows[$key]['jyno_gxmc'] = sprintf("%02d", $value['sczl_yjno']).'-'.sprintf("%02d", $value['sczl_gxh']).'-->'.trim($value['sczl_type']);
|
|
|
+ $rows[$key]['sczl_num'] = $value['sczl_num'] == 0 ? '' : $value['sczl_num'];
|
|
|
+ $rows[$key]['sczl_cl'] = $value['sczl_cl'] == 0 ? '' : floatval($value['sczl_cl']);
|
|
|
+ $rows[$key]['sczl_ms'] = $value['sczl_ms'] == 0 ? 1 : floatval($value['sczl_ms']);
|
|
|
+ $rows[$key]['sczl_zcfp'] = $value['sczl_zcfp'] == 0 ? '' : floatval($value['sczl_zcfp']);
|
|
|
+ $rows[$key]['sczl_zccp'] = $value['sczl_zccp'] == 0 ? '' : floatval($value['sczl_zccp']);
|
|
|
+ $rows[$key]['sczl_装版工时'] = $value['sczl_装版工时'] == 0 ? '' : floatval($value['sczl_装版工时']);
|
|
|
+ $rows[$key]['sczl_保养工时'] = $value['sczl_保养工时'] == 0 ? '' : floatval($value['sczl_保养工时']);
|
|
|
+ $rows[$key]['sczl_打样工时'] = $value['sczl_打样工时'] == 0 ? '' : floatval($value['sczl_打样工时']);
|
|
|
+ $rows[$key]['sczl_异常停机工时'] = $value['sczl_异常停机工时'] == 0 ? '' : floatval($value['sczl_异常停机工时']);
|
|
|
+ $rows[$key]['sczl_设备运行工时'] = $value['sczl_设备运行工时'] == 0 ? '' : floatval($value['sczl_设备运行工时']);
|
|
|
+ $rows[$key]['sczl_工价系数'] = $value['sczl_工价系数'] == 0 ? '' : floatval($value['sczl_工价系数']);
|
|
|
+ $rows[$key]['千件工价'] = $value['千件工价'] == 0 ? '' : floatval($value['千件工价']);
|
|
|
+ $rows[$key]['sczl_来料少数'] = $value['sczl_来料少数'] == 0 ? '' : floatval($value['sczl_来料少数']);
|
|
|
+ $rows[$key]['拆片联拼系数'] = $value['拆片联拼系数'] == 0 ? '' : floatval($value['拆片联拼系数']);
|
|
|
+ $rows[$key]['拆片条小盒系数'] = $value['拆片条小盒系数'] == 0 ? '' : floatval($value['拆片条小盒系数']);
|
|
|
+
|
|
|
+ unset($rows[$key]['sczl_yjno']);
|
|
|
+ unset($rows[$key]['sczl_gxh']);
|
|
|
+ unset($rows[$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,
|