|
@@ -2696,36 +2696,33 @@ class WorkOrder extends Api
|
|
|
//获取工艺资料
|
|
//获取工艺资料
|
|
|
$processList = \db('工单_工艺资料')
|
|
$processList = \db('工单_工艺资料')
|
|
|
->where($where)
|
|
->where($where)
|
|
|
- ->field('Gy0_Rate0 as 损耗定额,Gy0_Rate1 as 损耗率,rtrim(损耗系数) as 损耗系数,Gy0_ms,Gy0_ls,UniqId')
|
|
|
|
|
|
|
+ ->field('CONCAT(rtrim(Gy0_gxmc),"[",rtrim(Add_gxmc),"]") as 工序名称,Gy0_Rate0 as 损耗定额,Gy0_Rate1 as 损耗率,rtrim(损耗系数) as 损耗系数,Gy0_ms,Gy0_ls,UniqId')
|
|
|
->order('Gy0_gxh')
|
|
->order('Gy0_gxh')
|
|
|
->select();
|
|
->select();
|
|
|
if (empty($processList)){
|
|
if (empty($processList)){
|
|
|
$this->success('未找到该工单工序资料');
|
|
$this->success('未找到该工单工序资料');
|
|
|
}
|
|
}
|
|
|
|
|
+ $processDetail = \db('工单_工艺资料')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->field('CONCAT(rtrim(Gy0_gxmc),"[",rtrim(Add_gxmc),"]") as 工序名称,Gy0_ls as 联数')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+ $number1 = $number2 = 1;
|
|
|
|
|
+ foreach ($processDetail as $k => $v) {
|
|
|
|
|
+ if (strpos($v['工序名称'],'分切') !== false) {
|
|
|
|
|
+ $number1 = $v['联数'];
|
|
|
|
|
+ }
|
|
|
|
|
+ if (strpos($v['工序名称'],'分切') === false && $v['联数'] > 1) {
|
|
|
|
|
+ $number2 = $v['联数'];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ $Multiple = $number1/$number2;
|
|
|
|
|
+ if (is_int($Multiple) === false) {
|
|
|
|
|
+ $Multiple = 1;
|
|
|
|
|
+ }
|
|
|
//计算损耗定额和计划产量
|
|
//计算损耗定额和计划产量
|
|
|
$production = [];
|
|
$production = [];
|
|
|
$i = 0;
|
|
$i = 0;
|
|
|
foreach ($processList as $key=>$value){
|
|
foreach ($processList as $key=>$value){
|
|
|
-// if ($key === 0){
|
|
|
|
|
-// array_push($production,$feed);
|
|
|
|
|
-// }
|
|
|
|
|
-// $wastage = 0;
|
|
|
|
|
-// if ($value['损耗率'] !== 0 && !empty($value['损耗率'])){
|
|
|
|
|
-// $wastage = ($production[$key]*$value['损耗率']+$value['损耗定额'])*$value['损耗系数'];
|
|
|
|
|
-// }
|
|
|
|
|
-//
|
|
|
|
|
-// if ($value['Gy0_ms'] >0 && !empty($value['Gy0_ms'])){
|
|
|
|
|
-// $wastage = round($wastage * $value['Gy0_ms']);
|
|
|
|
|
-// }
|
|
|
|
|
-// if ((int)$value['Gy0_ls'] === 1 && $key>=1){
|
|
|
|
|
-// $number = $production[$key]*$processList[$key-1]['Gy0_ls'];
|
|
|
|
|
-// }else{
|
|
|
|
|
-// $number = $production[$key];
|
|
|
|
|
-// }
|
|
|
|
|
-// if ($key>=1 && (int)$processList[$key-1]['Gy0_ls'] === 1 && (int)$value['Gy0_ls'] > 1){
|
|
|
|
|
-// $number = $number/(int)$value['Gy0_ls'];
|
|
|
|
|
-// }
|
|
|
|
|
-// array_push($production,ceil($number-$wastage));
|
|
|
|
|
if ($key === 0){
|
|
if ($key === 0){
|
|
|
array_push($production,$feed);
|
|
array_push($production,$feed);
|
|
|
}else{
|
|
}else{
|
|
@@ -2738,7 +2735,7 @@ class WorkOrder extends Api
|
|
|
if ($value['Gy0_ms'] >0 && !empty($value['Gy0_ms'])){
|
|
if ($value['Gy0_ms'] >0 && !empty($value['Gy0_ms'])){
|
|
|
$wastage = round($wastage * $value['Gy0_ms']);
|
|
$wastage = round($wastage * $value['Gy0_ms']);
|
|
|
}
|
|
}
|
|
|
- array_push($production,ceil($production[$key]-$wastage)*$value['Gy0_ls']);
|
|
|
|
|
|
|
+ array_push($production,ceil($production[$key]-$wastage)*$value['Gy0_ls']/$Multiple);
|
|
|
$processSql = \db('工单_工艺资料')
|
|
$processSql = \db('工单_工艺资料')
|
|
|
->where('UniqId',$value['UniqId'])
|
|
->where('UniqId',$value['UniqId'])
|
|
|
->fetchSql(true)
|
|
->fetchSql(true)
|
|
@@ -2865,4 +2862,37 @@ class WorkOrder extends Api
|
|
|
$list['工序号'] = $process + 1;
|
|
$list['工序号'] = $process + 1;
|
|
|
$this->success('成功',$list);
|
|
$this->success('成功',$list);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 糊盒工单配件完成度查询
|
|
|
|
|
+ * @return void
|
|
|
|
|
+ * @throws \think\db\exception\DataNotFoundException
|
|
|
|
|
+ * @throws \think\db\exception\ModelNotFoundException
|
|
|
|
|
+ * @throws \think\exception\DbException
|
|
|
|
|
+ */
|
|
|
|
|
+ public function Accessories()
|
|
|
|
|
+ {
|
|
|
|
|
+ if ($this->request->isGet() === false){
|
|
|
|
|
+ $this->error('请求错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $param = $this->request->param();
|
|
|
|
|
+ if (empty($param['batch'])){
|
|
|
|
|
+ $this->error('参数错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $list = \db('工单_基本资料')
|
|
|
|
|
+ ->alias('a')
|
|
|
|
|
+ ->join('工单_印件资料 b','a.Gd_gdbh=b.Yj_Gdbh')
|
|
|
|
|
+ ->join('成品入仓 c','a.Gd_gdbh=c.jjcp_gdbh and a.销售订单号 = c.订单编号 and b.yj_Yjno = c.jjcp_yjno','left')
|
|
|
|
|
+ ->where('a.销售订单号',$param['batch'])
|
|
|
|
|
+ ->field('a.Gd_gdbh as 工单编号,b.yj_Yjno as 印件号,b.yj_yjmc as 印件名称,b.yj_平张投料*b.yj_ls*b.yj_ks as 计划产量,SUM(c.jjcp_sl) as 入仓数量')
|
|
|
|
|
+ ->group('a.Gd_gdbh,b.yj_Yjno')
|
|
|
|
|
+ ->order('a.Gd_gdbh,b.yj_Yjno')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+ if (empty($list)){
|
|
|
|
|
+ $this->error('未找到数据');
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $this->success('成功',$list);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|