|
@@ -154,25 +154,51 @@ class OrderSuperLoss extends Api
|
|
|
->whereRaw('LEFT(a.成品编码, ' . $num . ') = "' . $params['code'] . '"')
|
|
->whereRaw('LEFT(a.成品编码, ' . $num . ') = "' . $params['code'] . '"')
|
|
|
->count();
|
|
->count();
|
|
|
}else{
|
|
}else{
|
|
|
|
|
+// $data = db('成品入仓')->alias('a')
|
|
|
|
|
+// ->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
|
|
|
|
|
+// ->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh AND a.jjcp_cpdh = c.yj_Yjdh','left')
|
|
|
|
|
+// ->join('物料_收发记录 d',' a.jjcp_gdbh = d.st_gdbh AND d.cpdh = a.jjcp_cpdh')
|
|
|
|
|
+// ->where($where)
|
|
|
|
|
+// ->where('d.仓库编号','Y101')
|
|
|
|
|
+// ->field('DISTINCT(a.jjcp_gdbh) as Gd_gdbh,a.jjcp_yjno,rtrim(a.jjcp_cpdh) as 成品编码,rtrim(a.jjcp_cpmc) as 成品名称,a.jjcp_sj,a.jjcp_smb,b.计量单位,
|
|
|
|
|
+// b.Gd_khdh, SUM(d.st_sl) as 实际投料,c.yj_Yjno, c.yj_ls,c.yj_ks,c.质量考核')
|
|
|
|
|
+// ->order('b.Gd_khdh,a.成品编码 asc,a.jjcp_yjno,d.st_rq desc')
|
|
|
|
|
+// ->group('a.jjcp_gdbh,a.jjcp_yjno')
|
|
|
|
|
+// ->page($pages)
|
|
|
|
|
+// ->limit($limit)
|
|
|
|
|
+// ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $sql= db('物料_收发记录')
|
|
|
|
|
+ ->alias('d')
|
|
|
|
|
+ ->where('d.仓库编号', 'Y101')
|
|
|
|
|
+ ->group('d.st_gdbh, d.cpdh')
|
|
|
|
|
+ ->field('d.st_gdbh, d.cpdh, SUM(d.st_sl) as 实际投料')
|
|
|
|
|
+ ->buildSql();
|
|
|
|
|
+
|
|
|
$data = db('成品入仓')->alias('a')
|
|
$data = db('成品入仓')->alias('a')
|
|
|
- ->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
|
|
|
|
|
- ->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh AND a.jjcp_cpdh = c.yj_Yjdh','left')
|
|
|
|
|
- ->join('物料_收发记录 d',' a.jjcp_gdbh = d.st_gdbh AND d.cpdh = a.jjcp_cpdh')
|
|
|
|
|
|
|
+ ->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh', 'left')
|
|
|
|
|
+ ->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh AND a.jjcp_cpdh = c.yj_Yjdh', 'left')
|
|
|
|
|
+ ->join([$sql => 'd'], 'a.jjcp_gdbh = d.st_gdbh AND a.jjcp_cpdh = d.cpdh', 'left')
|
|
|
->where($where)
|
|
->where($where)
|
|
|
- ->where('d.仓库编号','Y101')
|
|
|
|
|
- ->field('DISTINCT(a.jjcp_gdbh) as Gd_gdbh,a.jjcp_yjno,rtrim(a.jjcp_cpdh) as 成品编码,rtrim(a.jjcp_cpmc) as 成品名称,a.jjcp_sj,a.jjcp_smb,b.计量单位,
|
|
|
|
|
- b.Gd_khdh, SUM(d.st_sl) as 实际投料,c.yj_Yjno, c.yj_ls,c.yj_ks,c.质量考核')
|
|
|
|
|
- ->order('b.Gd_khdh,a.成品编码 asc,a.jjcp_yjno,d.st_rq desc')
|
|
|
|
|
- ->group('a.jjcp_gdbh,a.jjcp_yjno')
|
|
|
|
|
|
|
+ ->field('a.jjcp_gdbh as Gd_gdbh, a.jjcp_yjno, rtrim(a.jjcp_cpdh) as 成品编码, rtrim(a.jjcp_cpmc) as 成品名称,
|
|
|
|
|
+ a.jjcp_sj, a.jjcp_smb, b.计量单位, b.Gd_khdh, d.实际投料, c.yj_Yjno, c.yj_ls, c.yj_ks, c.质量考核')
|
|
|
|
|
+ ->group('a.jjcp_gdbh, a.jjcp_yjno, a.jjcp_cpdh, a.jjcp_cpmc, a.jjcp_sj, a.jjcp_smb, b.计量单位, b.Gd_khdh, c.yj_Yjno, c.yj_ls, c.yj_ks, c.质量考核, d.实际投料')
|
|
|
|
|
+ ->order('b.Gd_khdh, 成品编码 asc, a.jjcp_yjno, d.实际投料 desc')
|
|
|
->page($pages)
|
|
->page($pages)
|
|
|
->limit($limit)
|
|
->limit($limit)
|
|
|
->select();
|
|
->select();
|
|
|
|
|
+
|
|
|
|
|
+// echo "<pre>";
|
|
|
|
|
+// print_r($data);
|
|
|
|
|
+// echo "<pre>";
|
|
|
|
|
+
|
|
|
$total = db('成品入仓')->alias('a')
|
|
$total = db('成品入仓')->alias('a')
|
|
|
->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
|
|
->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
|
|
|
->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh','left')
|
|
->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh','left')
|
|
|
->where($where)
|
|
->where($where)
|
|
|
->count();
|
|
->count();
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
foreach ($data as $key => $value){
|
|
foreach ($data as $key => $value){
|
|
|
//查出成品数量及日期
|
|
//查出成品数量及日期
|
|
|
$cp_sql = "SELECT SUM(jjcp_sl) as cp_sl,MAX(jjcp_sj) as jjcp_sj FROM `成品入仓` WHERE jjcp_gdbh = '{$value['Gd_gdbh']}' AND jjcp_yjno = '{$value['jjcp_yjno']}' GROUP BY jjcp_gdbh,jjcp_yjno";
|
|
$cp_sql = "SELECT SUM(jjcp_sl) as cp_sl,MAX(jjcp_sj) as jjcp_sj FROM `成品入仓` WHERE jjcp_gdbh = '{$value['Gd_gdbh']}' AND jjcp_yjno = '{$value['jjcp_yjno']}' GROUP BY jjcp_gdbh,jjcp_yjno";
|
|
@@ -222,12 +248,14 @@ class OrderSuperLoss extends Api
|
|
|
// $machine_plan_loss = $v['Gy0_计划损耗'];
|
|
// $machine_plan_loss = $v['Gy0_计划损耗'];
|
|
|
// }
|
|
// }
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
if ((int)$value['yj_ls'] > 0){
|
|
if ((int)$value['yj_ls'] > 0){
|
|
|
$value['实际投料'] = number_format(((int)$value['实际投料']/10000)*$value['yj_ls']*$value['yj_ks'],4);
|
|
$value['实际投料'] = number_format(((int)$value['实际投料']/10000)*$value['yj_ls']*$value['yj_ks'],4);
|
|
|
}else{
|
|
}else{
|
|
|
$value['实际投料'] = number_format($value['实际投料']/10000,4);
|
|
$value['实际投料'] = number_format($value['实际投料']/10000,4);
|
|
|
}
|
|
}
|
|
|
$data[$key]['实际投料'] = $value['实际投料'];
|
|
$data[$key]['实际投料'] = $value['实际投料'];
|
|
|
|
|
+
|
|
|
if ($value['实际投料'] >0 ){
|
|
if ($value['实际投料'] >0 ){
|
|
|
$target_rate = (1-array_sum($arr))*100;
|
|
$target_rate = (1-array_sum($arr))*100;
|
|
|
$data[$key]['target_rate'] =$target_rate.'%'; //目标合格率
|
|
$data[$key]['target_rate'] =$target_rate.'%'; //目标合格率
|
|
@@ -237,6 +265,7 @@ class OrderSuperLoss extends Api
|
|
|
$data[$key]['target_rate'] = ''; //目标合格率
|
|
$data[$key]['target_rate'] = ''; //目标合格率
|
|
|
$data[$key]['real_rate'] = '';//实际合格率
|
|
$data[$key]['real_rate'] = '';//实际合格率
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
//制程废品
|
|
//制程废品
|
|
|
$zzfp_data =db('设备_产量计酬')->where('sczl_gdbh',$value['Gd_gdbh'])->where('sczl_yjno',$value['jjcp_yjno'])->field('SUM(sczl_zcfp) as sczl_zcfp')->select();
|
|
$zzfp_data =db('设备_产量计酬')->where('sczl_gdbh',$value['Gd_gdbh'])->where('sczl_yjno',$value['jjcp_yjno'])->field('SUM(sczl_zcfp) as sczl_zcfp')->select();
|
|
|
$data[$key]['zcfp'] = $zzfp_data[0]['sczl_zcfp'] * $value['yj_ls'];//制程废品
|
|
$data[$key]['zcfp'] = $zzfp_data[0]['sczl_zcfp'] * $value['yj_ls'];//制程废品
|