|
@@ -232,56 +232,44 @@ class Facility extends Api
|
|
|
if (empty($machine)){
|
|
if (empty($machine)){
|
|
|
$this->error('参数错误');
|
|
$this->error('参数错误');
|
|
|
}
|
|
}
|
|
|
-// $lastUniqid = Db::table('设备_产量计酬')->field('UniqId')->order('UniqId desc')->find();
|
|
|
|
|
-// $startUniqid = $lastUniqid['UniqId']-10000;
|
|
|
|
|
-// halt($lastUniqid);
|
|
|
|
|
- $workOrder = Db::table('设备_产量计酬')->where('sczl_jtbh',$machine)->field('sczl_gdbh')->order('UniqId desc')->find();
|
|
|
|
|
-
|
|
|
|
|
- if (empty($workOrder)){
|
|
|
|
|
- $this->error('未找到正在生产工单');
|
|
|
|
|
- }
|
|
|
|
|
- $where = [
|
|
|
|
|
- 'Gy0_sbbh' => $machine,
|
|
|
|
|
- 'Gy0_gdbh' => $workOrder['sczl_gdbh']
|
|
|
|
|
- ];
|
|
|
|
|
- $list = Db::table('工单_工艺资料')->where($where)->find();
|
|
|
|
|
|
|
+ $sql = "SELECT
|
|
|
|
|
+ rtrim(b.Gy0_gdbh) AS 工单编号,
|
|
|
|
|
+ rtrim(b.Gy0_yjno) AS 印件号,
|
|
|
|
|
+ rtrim(b.Gy0_gxh) AS gxh,
|
|
|
|
|
+ rtrim(b.Gy0_gxmc) AS gxmc,
|
|
|
|
|
+ rtrim(b.Add_gxmc) AS add_gxmc,
|
|
|
|
|
+ RTRIM(a.Gd_cpmc) AS 产品名称
|
|
|
|
|
+ FROM
|
|
|
|
|
+ `工单_基本资料` AS a
|
|
|
|
|
+ JOIN `工单_工艺资料` AS b ON a.Gd_gdbh = b.Gy0_gdbh
|
|
|
|
|
+ JOIN `产品_基本资料` AS c ON a.`成品代号` = c.`产品编号`
|
|
|
|
|
+ JOIN `工单_印件资料` AS d ON a.Gd_gdbh = d.Yj_Gdbh
|
|
|
|
|
+ LEFT JOIN `设备_产量计酬` AS e ON e.sczl_gdbh = a.Gd_gdbh
|
|
|
|
|
+ AND e.sczl_jtbh = b.Gy0_sbbh
|
|
|
|
|
+ WHERE
|
|
|
|
|
+ a.gd_statu = '2-生产中'
|
|
|
|
|
+ AND a.`行号` = '1'
|
|
|
|
|
+ AND b.Gy0_sbbh = '{$machine}'
|
|
|
|
|
+ AND c.`状态` = ''
|
|
|
|
|
+ AND b.PD_WG = '1900-01-01 00:00:00'
|
|
|
|
|
+ AND b.Gy0_sj1 <> '1900-01-01 00:00:00'
|
|
|
|
|
+ GROUP BY
|
|
|
|
|
+ a.Gd_gdbh
|
|
|
|
|
+ ORDER BY
|
|
|
|
|
+ b.Gy0_sj1
|
|
|
|
|
+ LIMIT 1";
|
|
|
|
|
+ $list = Db::query($sql);
|
|
|
if (empty($list)){
|
|
if (empty($list)){
|
|
|
- $this->error('未找到正在生产工单');
|
|
|
|
|
|
|
+ $this->error('未找到排产工单');
|
|
|
}
|
|
}
|
|
|
- $facilityWhere = [
|
|
|
|
|
- 'sczl_jtbh'=>$machine,
|
|
|
|
|
- 'sczl_gdbh'=>$list['Gy0_gdbh']
|
|
|
|
|
- ];
|
|
|
|
|
- $facilityField = 'sczl_bh1,sczl_bh2,sczl_bh3,sczl_bh4,sczl_bh5,sczl_bh6,sczl_bh7,sczl_bh8,sczl_bh9,sczl_bh10';
|
|
|
|
|
- $Ctaff = Db::table('设备_产量计酬')->where($facilityWhere)->field($facilityField)->order('UniqId desc')->find();
|
|
|
|
|
- $data = [];
|
|
|
|
|
- foreach ($Ctaff as $key=>$value){
|
|
|
|
|
- if (!empty($value)){
|
|
|
|
|
- $staffName = Db::table('人事_基本资料')
|
|
|
|
|
- ->where('员工编号',$value)
|
|
|
|
|
- ->field('员工姓名,员工编号')
|
|
|
|
|
- ->find();
|
|
|
|
|
- $data[$key] = [
|
|
|
|
|
- '员工编号' => rtrim($staffName['员工编号']),
|
|
|
|
|
- '员工姓名' => rtrim($staffName['员工姓名']),
|
|
|
|
|
- ];
|
|
|
|
|
|
|
+ foreach ($list as $key=>$value){
|
|
|
|
|
+ if ($value['gxh']<10){
|
|
|
|
|
+ $list[$key]['gxh'] = '0'.$value['gxh'];
|
|
|
}
|
|
}
|
|
|
|
|
+ $list[$key]['工序名称'] = $list[$key]['gxh'].'-'.$value['gxmc'].'【'.$value['add_gxmc'].'】';
|
|
|
|
|
+ unset($list[$key]['gxh'],$list[$key]['gxmc'],$list[$key]['add_gxmc']);
|
|
|
}
|
|
}
|
|
|
- if ($list['Gy0_yjno']<10){
|
|
|
|
|
- $list['Gy0_yjno'] = '0'.$list['Gy0_yjno'];
|
|
|
|
|
- }
|
|
|
|
|
- if ($list['Gy0_gxh']<10){
|
|
|
|
|
- $list['Gy0_gxh'] = '0'.$list['Gy0_gxh'];
|
|
|
|
|
- }
|
|
|
|
|
- $data['工单编号'] = rtrim($list['Gy0_gdbh']);
|
|
|
|
|
- $data['印件编号'] = rtrim($list['Gy0_yjno']);
|
|
|
|
|
- $data['工序名称'] = rtrim($list['Gy0_gxh']).'-'.rtrim($list['Gy0_gxmc']).'【'.rtrim($list['Add_gxmc']).'】';
|
|
|
|
|
- $data['产品名称'] = Db::table('工单_基本资料')
|
|
|
|
|
- ->where('Gd_gdbh',rtrim($list['Gy0_gdbh']))
|
|
|
|
|
- ->field('rtrim(Gd_cpmc) as 产品名称')
|
|
|
|
|
- ->find()['产品名称'];
|
|
|
|
|
- $data['班组'] = Db::table('设备_产量计酬')->where($facilityWhere)->field('rtrim(sczl_bzdh) as bzdh')->order('UniqId desc')->find()['bzdh'];
|
|
|
|
|
- $this->success('成功',$data);
|
|
|
|
|
|
|
+ $this->success('成功',$list);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -303,60 +291,56 @@ class Facility extends Api
|
|
|
if (empty($machine)){
|
|
if (empty($machine)){
|
|
|
$this->error('参数错误');
|
|
$this->error('参数错误');
|
|
|
}
|
|
}
|
|
|
- $lastTechonUniqId = Db::table('工单_工艺资料')->field('UniqId')->order('UniqId desc')->find();
|
|
|
|
|
- $startTechonUniqId = $lastTechonUniqId['UniqId']-10000;
|
|
|
|
|
-// $lastYieldUniqId = Db::table('设备_产量计酬')->field('UniqId')->order('UniqId desc')->find();
|
|
|
|
|
-// $startYieldUniqId = $lastYieldUniqId['UniqId']-100000;
|
|
|
|
|
- $workOrder = Db::table('设备_产量计酬')
|
|
|
|
|
- ->where('sczl_jtbh',$machine)
|
|
|
|
|
- ->field('sczl_gdbh')
|
|
|
|
|
-// ->where('UniqId','>',$startYieldUniqId)
|
|
|
|
|
- ->order('UniqId desc')
|
|
|
|
|
- ->find();
|
|
|
|
|
- $startTime = Db::table('工单_工艺资料')
|
|
|
|
|
- ->where('Gy0_gdbh',$workOrder['sczl_gdbh'])
|
|
|
|
|
- ->where('Gy0_sbbh',$machine)
|
|
|
|
|
- ->where('UniqId','>',$startTechonUniqId)
|
|
|
|
|
- ->field('Gy0_sj1')
|
|
|
|
|
- ->order('UniqId desc')
|
|
|
|
|
- ->find();
|
|
|
|
|
- $where = [
|
|
|
|
|
-// 'UniqId' => ['>',$startTechonUniqId],
|
|
|
|
|
- 'Gy0_sbbh' => $machine,
|
|
|
|
|
- 'Gy0_sj1' => ['>= time',$startTime['Gy0_sj1']],
|
|
|
|
|
- ];
|
|
|
|
|
- $field = 'rtrim(Gy0_gdbh) as gdbh,rtrim(质量要求) as 质量信息,rtrim(Gy0_yjno) as yjno,rtrim(Gy0_gxh) as gxh,rtrim(Gy0_gxmc) as gxmc,
|
|
|
|
|
- rtrim(Add_gxmc) as add_gxmc,rtrim(Gy0_辅助工时) as 装版时数,rtrim(Gy0_小时产能) as 工序产能,rtrim(Gy0_生产工时) as 计划工时,
|
|
|
|
|
- rtrim(Gy0_sj1) as sj1,rtrim(Gy0_sj2) as sj2,rtrim(工序备注) as 排产备注';
|
|
|
|
|
- $orderList = Db::table('工单_工艺资料')
|
|
|
|
|
- ->where($where)
|
|
|
|
|
- ->where('Gy0_sj1','<','2099-01-01 00:00:00')
|
|
|
|
|
- ->field($field)
|
|
|
|
|
- ->order('UniqId desc')
|
|
|
|
|
- ->select();
|
|
|
|
|
|
|
+ $sql = "SELECT
|
|
|
|
|
+ rtrim( b.Gy0_gdbh ) AS gdbh,
|
|
|
|
|
+ rtrim(b.质量要求) 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.Gy0_生产工时 ) AS 计划工时,
|
|
|
|
|
+ rtrim( b.Gy0_sj1 ) AS sj1,
|
|
|
|
|
+ rtrim( b.Gy0_sj2 ) AS sj2,
|
|
|
|
|
+ rtrim(b.工序备注) AS 排产备注,
|
|
|
|
|
+ RTRIM(d.yj_yjmc) AS 印件名称,
|
|
|
|
|
+ RTRIM(a.Gd_cpmc) AS 产品名称,
|
|
|
|
|
+ SUM(E.sczl_cl) AS 已完成,
|
|
|
|
|
+ rtrim(b.Gy0_计划接货数) AS 计划接货数,
|
|
|
|
|
+ RTRIM(b.Gy0_ls) AS ls
|
|
|
|
|
+ FROM
|
|
|
|
|
+ `工单_基本资料` AS a
|
|
|
|
|
+ JOIN `工单_工艺资料` AS b ON a.Gd_gdbh = b.Gy0_gdbh
|
|
|
|
|
+ JOIN `产品_基本资料` AS c ON a.`成品代号` = c.`产品编号`
|
|
|
|
|
+ JOIN `工单_印件资料` AS d ON a.Gd_gdbh = d.Yj_Gdbh
|
|
|
|
|
+ LEFT JOIN `设备_产量计酬` AS e ON e.sczl_gdbh = a.Gd_gdbh AND e.sczl_jtbh = b.Gy0_sbbh
|
|
|
|
|
+ WHERE
|
|
|
|
|
+ a.gd_statu = '2-生产中'
|
|
|
|
|
+ AND a.`行号` = '1'
|
|
|
|
|
+ AND b.Gy0_sbbh = '{$machine}'
|
|
|
|
|
+ AND c.`状态` = ''
|
|
|
|
|
+ AND b.PD_WG = '1900-01-01 00:00:00'
|
|
|
|
|
+ AND b.Gy0_sj1 <> '1900-01-01 00:00:00'
|
|
|
|
|
+ GROUP BY a.Gd_gdbh
|
|
|
|
|
+ ORDER BY b.Gy0_sj1";
|
|
|
|
|
+ $orderList = Db::query($sql);
|
|
|
|
|
+ if (empty($orderList)){
|
|
|
|
|
+ $this->error('未找到排产工单');
|
|
|
|
|
+ }
|
|
|
foreach ($orderList as $key=>$value){
|
|
foreach ($orderList as $key=>$value){
|
|
|
$orderList[$key]['工单编号|质量信息'] = $value['gdbh'].'|'.$value['质量信息'];
|
|
$orderList[$key]['工单编号|质量信息'] = $value['gdbh'].'|'.$value['质量信息'];
|
|
|
- $name = Db::table('工单_印件资料')->where(['Yj_Gdbh'=>$value['gdbh'],'yj_Yjno'=>$value['yjno']])->field('yj_yjmc')->find();
|
|
|
|
|
if ($value['yjno']<10){
|
|
if ($value['yjno']<10){
|
|
|
$orderList[$key]['yjno'] = '0'.$value['yjno'];
|
|
$orderList[$key]['yjno'] = '0'.$value['yjno'];
|
|
|
}
|
|
}
|
|
|
if ($value['gxh']<10){
|
|
if ($value['gxh']<10){
|
|
|
$orderList[$key]['gxh'] = '0'.$value['gxh'];
|
|
$orderList[$key]['gxh'] = '0'.$value['gxh'];
|
|
|
}
|
|
}
|
|
|
- $orderList[$key]['印件资料'] = $orderList[$key]['yjno'].'-'.rtrim($name['yj_yjmc']);
|
|
|
|
|
|
|
+ $orderList[$key]['印件资料'] = $orderList[$key]['yjno'].'-'.$value['印件名称'];
|
|
|
$orderList[$key]['工序名称'] = $orderList[$key]['gxh'].'-'.$value['gxmc'].'【'.$value['add_gxmc'].'】';
|
|
$orderList[$key]['工序名称'] = $orderList[$key]['gxh'].'-'.$value['gxmc'].'【'.$value['add_gxmc'].'】';
|
|
|
- $scheduled = Db::table('工单_基本资料')->where('Gd_gdbh',$value['gdbh'])->field('rtrim(计划投料) as 计划产量')->find();
|
|
|
|
|
- $finished = Db::table('设备_产量计酬')
|
|
|
|
|
- ->where('sczl_gdbh',$value['gdbh'])
|
|
|
|
|
- ->where('sczl_jtbh',$machine)
|
|
|
|
|
-// ->where('UniqId','>',$startYieldUniqId)
|
|
|
|
|
- ->order('UniqId desc')
|
|
|
|
|
- ->field('SUM(sczl_cl) as cl')
|
|
|
|
|
- ->select();
|
|
|
|
|
- $orderList[$key]['计划产量/已完成'] = $scheduled['计划产量'].'/'.$finished[0]['cl']=null?'':(int)$finished[0]['cl'];
|
|
|
|
|
|
|
+ $orderList[$key]['计划产量/已完成'] = (int)($value['计划接货数']/$value['ls']).'/'.$value['已完成']=null?'':(int)$value['已完成'];
|
|
|
$orderList[$key]['计划生产时段'] =substr($value['sj1'],5,5).' '.substr($value['sj1'],11,5).'<-->'.substr($value['sj2'],5,5).' '.substr($value['sj2'],11,5);
|
|
$orderList[$key]['计划生产时段'] =substr($value['sj1'],5,5).' '.substr($value['sj1'],11,5).'<-->'.substr($value['sj2'],5,5).' '.substr($value['sj2'],11,5);
|
|
|
- $orderList[$key]['产品名称'] = rtrim($name['yj_yjmc']);
|
|
|
|
|
- unset($orderList[$key]['gdbh'],$orderList[$key]['质量信息'],$orderList[$key]['yjno'],$orderList[$key]['gxh'],$orderList[$key]['gxmc'],$orderList[$key]['add_gxmc'],$orderList[$key]['sj1'],$orderList[$key]['sj2']);
|
|
|
|
|
|
|
+ unset($orderList[$key]['gdbh'],$orderList[$key]['质量信息'],$orderList[$key]['yjno'],$orderList[$key]['gxh'],$orderList[$key]['gxmc'],$orderList[$key]['add_gxmc'],$orderList[$key]['sj1'],$orderList[$key]['sj2'],$orderList[$key]['计划接货数'],$orderList[$key]['已完成'],$orderList[$key]['印件名称'],$orderList[$key]['ls']);
|
|
|
}
|
|
}
|
|
|
$this->success('成功',$orderList);
|
|
$this->success('成功',$orderList);
|
|
|
}
|
|
}
|