|
|
@@ -121,6 +121,7 @@ class WorkOrder extends Api
|
|
|
if (!empty($startTime) && !empty($endTime)){
|
|
|
$where['接单日期'] = ['between',[$startTime,$endTime]];
|
|
|
}
|
|
|
+ $where['行号'] = 1;
|
|
|
$total = \db('工单_基本资料')->where($where)->count();
|
|
|
$list = \db('工单_基本资料')
|
|
|
->where($where)
|
|
|
@@ -250,11 +251,16 @@ class WorkOrder extends Api
|
|
|
'印件-工序' => rtrim($value['Gy0_yjno']).'-'.rtrim($value['Gy0_gxh']),
|
|
|
'备选工序' => rtrim($value['备选工序']),
|
|
|
'工序名称' => rtrim($value['Gy0_gxmc']).'【'.rtrim($value['Add_gxmc']).'】',
|
|
|
+ '印件号' => rtrim($value['Gy0_yjno']),
|
|
|
+ '工序号' => rtrim($value['Gy0_gxh']),
|
|
|
+ '工艺名称' => rtrim($value['Gy0_gxmc']),
|
|
|
+ 'gxmc' => rtrim($value['Add_gxmc']),
|
|
|
'计划产量' => $value['Gy0_计划接货数'],
|
|
|
'基础损耗' => rtrim($value['Gy0_Rate0']),
|
|
|
'损耗率' => rtrim($value['Gy0_Rate1']),
|
|
|
'机台编号' => rtrim($value['Gy0_sbbh']),
|
|
|
'报废定额' => rtrim($value['Gy0_计划损耗']),
|
|
|
+ '计损色数' => rtrim($value['Gy0_ms']),
|
|
|
'允损比例' => $number,
|
|
|
'难度系数' => isset($value['工价系数'])?rtrim($value['工价系数']):'',
|
|
|
'损耗系数' => isset($value['损耗系数'])?rtrim($value['损耗系数']):'',
|
|
|
@@ -928,6 +934,10 @@ class WorkOrder extends Api
|
|
|
}
|
|
|
$i = 0;
|
|
|
foreach ($param as $key=>$value){
|
|
|
+ $data = [
|
|
|
+ 'rate0' => 0,
|
|
|
+ 'rate1' => 0,
|
|
|
+ ];
|
|
|
if (!empty($value['loss'])){
|
|
|
$data = \db('dic_lzsh')->where('sys_bh',$value['loss'])->field('rtrim(sys_rate0) as rate0,rtrim(sys_rate1) as rate1')->find();
|
|
|
}
|
|
|
@@ -1057,12 +1067,16 @@ class WorkOrder extends Api
|
|
|
//修改工艺资料
|
|
|
$sql = \db('工单_工艺资料')->where('UniqId',$param['UniqId'])->fetchSql(true)->update($data);
|
|
|
$res = Db::query($sql);
|
|
|
+ //获取工艺资料数据
|
|
|
+ $list = \db('工单_工艺资料')->where('UniqId',$param['UniqId'])->field('Gy0_yjno,Gy0_gxh,rtrim(Gy0_计划接货数) as 计划接货数')->find();
|
|
|
//修改工单状态
|
|
|
$status = \db('工单_基本资料')->where('Gd_gdbh',$param['workOrder'])->field('rtrim(gd_statu) as status')->find();
|
|
|
if ($status['status'] !== '2-生产中'){
|
|
|
$statusSql = \db('工单_基本资料')->where('Gd_gdbh',$param['workOrder'])->fetchSql(true)->update(['gd_statu'=>'2-生产中']);
|
|
|
Db::query($statusSql);
|
|
|
}
|
|
|
+ //重新分配工序计划产量
|
|
|
+ $result = $this->PlannedProcessYield($param['workOrder'],$list['Gy0_yjno'],$list['Gy0_gxh'],$list['计划接货数']);
|
|
|
if ($res !== false){
|
|
|
$this->success('成功');
|
|
|
}else{
|
|
|
@@ -1176,9 +1190,6 @@ class WorkOrder extends Api
|
|
|
$this->success('未找到工单信息');
|
|
|
}
|
|
|
$materiel = $this->MaterielDetailGet($param['workOrder']);
|
|
|
- if (empty($materiel)){
|
|
|
- $this->success('未找到物料信息');
|
|
|
- }
|
|
|
$printDetail = $this->PrintDetailGet($param['workOrder'],$param['yjno'],$param['gxh']);
|
|
|
if (empty($printDetail)){
|
|
|
$this->success('未找到工艺信息');
|
|
|
@@ -1264,13 +1275,12 @@ class WorkOrder extends Api
|
|
|
];
|
|
|
$filed = 'rtrim(BOM_物料编码) as 物料编码,rtrim(BOM_物料名称) as 物料名称,rtrim(BOM_投料单位) as 投料单位,rtrim(BOM_计划用量) as 计划用量';
|
|
|
$list = \db('工单_bom资料')->where($where)->field($filed)->select();
|
|
|
- if (empty($list)){
|
|
|
- $this->success('未找到物料资料信息');
|
|
|
- }
|
|
|
- foreach ($list as $key=>$value){
|
|
|
- $list[$key]['物料代码及名称'] = $value['物料编码'].' '.$value['物料名称'];
|
|
|
- $list[$key]['计划用量'] = (float)$value['计划用量'];
|
|
|
- unset($list[$key]['物料编码'],$list[$key]['物料名称']);
|
|
|
+ if (!empty($list)){
|
|
|
+ foreach ($list as $key=>$value){
|
|
|
+ $list[$key]['物料代码及名称'] = $value['物料编码'].' '.$value['物料名称'];
|
|
|
+ $list[$key]['计划用量'] = (float)$value['计划用量'];
|
|
|
+ unset($list[$key]['物料编码'],$list[$key]['物料名称']);
|
|
|
+ }
|
|
|
}
|
|
|
return $list;
|
|
|
}
|
|
|
@@ -2313,4 +2323,27 @@ class WorkOrder extends Api
|
|
|
$this->error('删除失败');
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修正核算参数-》工单产品信息获取
|
|
|
+ * @return void
|
|
|
+ * @throws \think\db\exception\DataNotFoundException
|
|
|
+ * @throws \think\db\exception\ModelNotFoundException
|
|
|
+ * @throws \think\exception\DbException
|
|
|
+ */
|
|
|
+ public function ProductNameData()
|
|
|
+ {
|
|
|
+ if ($this->request->isGet() === false){
|
|
|
+ $this->error('请求错误');
|
|
|
+ }
|
|
|
+ $workOrder = input('workOrder');
|
|
|
+ if (empty($workOrder)){
|
|
|
+ $this->error('参数错误');
|
|
|
+ }
|
|
|
+ $orderList = \db('工单_基本资料')
|
|
|
+ ->field('rtrim(Gd_cpdh) as 印件代号,rtrim(Gd_cpmc) as 印件名称,rtrim(成品代号) as 产品代号,rtrim(成品名称) as 产品名称')
|
|
|
+ ->where('Gd_gdbh',$workOrder)
|
|
|
+ ->find();
|
|
|
+ $this->success('成功',$orderList);
|
|
|
+ }
|
|
|
}
|