From c5f4f9ae8be34d2c258c20ba2455066bf49ce66c Mon Sep 17 00:00:00 2001
From: zds <2388969634@qq.com>
Date: Fri, 2 Sep 2022 22:22:45 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E5=80=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../service/impl/AutoformulaServiceImpl.java | 43 +++++++++++++++++++
.../pf/service/impl/FormulaServiceImpl.java | 29 +++++++++++++
.../service/impl/InitformulaServiceImpl.java | 30 +++++++++++++
.../org/nl/wms/pf/wql/QPF_INITFORMULA01.wql | 23 ++++++++++
mes/qd/src/views/wms/pf/formula/DivDialog.vue | 7 ++-
.../src/views/wms/pf/formula/ViewDialog.vue | 1 +
.../views/wms/pf/initformula/DivDialog.vue | 7 ++-
7 files changed, 136 insertions(+), 4 deletions(-)
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java
index a68a031a..e94f59f7 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java
@@ -312,6 +312,10 @@ public class AutoformulaServiceImpl implements AutoformulaService {
}
});
}else if(StrUtil.isNotEmpty(material_type_id) && MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){//碳化钨新料
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
+
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -618,6 +622,11 @@ public class AutoformulaServiceImpl implements AutoformulaService {
double bom_ivt_qty = bomdlt_Cr3C2.getDouble("bom_ivt_qty");
//含碳比
double value = FactoryWarranty.getDouble("value");
+
+ //获取修正值
+ double change_qty = this.getWCChange(bomdlt_Cr3C2.getString("material_id"),bomdlt_Cr3C2.getString("pcsn"));
+ value = value + change_qty;
+
//总碳
CT1 = CT1 + bom_ivt_qty*value/100.0;
@@ -1685,6 +1694,10 @@ public class AutoformulaServiceImpl implements AutoformulaService {
double bom_ivt_qty = bomdlt_Cr3C2.getDouble("bom_ivt_qty");
//含碳比
double is_tan = FactoryWarranty.getDouble("value");
+
+ //获取修正值
+ double change_qty = this.getWCChange(bomdlt_Cr3C2.getString("material_id"),bomdlt_Cr3C2.getString("pcsn"));
+ is_tan = is_tan + change_qty;
//总碳
CT1 = CT1 + bom_ivt_qty*is_tan/100.0;
//总碳化钨
@@ -2750,6 +2763,10 @@ public class AutoformulaServiceImpl implements AutoformulaService {
}
});
}else if(StrUtil.isNotEmpty(material_type_id) && MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){//碳化钨新料
+
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -3170,6 +3187,10 @@ public class AutoformulaServiceImpl implements AutoformulaService {
double bom_ivt_qty = bomdlt_Cr3C2.getDouble("bom_ivt_qty");
//含碳比
double is_tan = FactoryWarranty.getDouble("value");
+
+ //获取修正值
+ double change_qty = this.getWCChange(bomdlt_Cr3C2.getString("material_id"),bomdlt_Cr3C2.getString("pcsn"));
+ is_tan = is_tan + change_qty;
//总碳
CT1 = CT1 + bom_ivt_qty*is_tan/100.0;
//更新含碳比
@@ -4134,4 +4155,26 @@ public class AutoformulaServiceImpl implements AutoformulaService {
}
+
+ public double getWCChange(String material_id,String pcsn){
+ WQLObject PDM_BI_SuppWCChange = WQLObject.getWQLObject("PDM_BI_SuppWCChange"); // 工艺路线主表
+ double wcchange = 0.0;
+
+ //获取碳化钒
+ JSONObject FactoryWarranty = WQL.getWO("QPF_INITFORMULA01")
+ .addParam("material_id",material_id)
+ .addParam("pcsn",pcsn)
+ .addParam("flag","9")
+ .process()
+ .uniqueResult(0);
+ if(FactoryWarranty!=null){
+ String source_id = FactoryWarranty.getString("source_id");
+ JSONObject jo = PDM_BI_SuppWCChange.query("material_id='"+material_id+"' and supp_id='"+source_id+"'").uniqueResult(0);
+ if(jo!=null){
+ wcchange = jo.getDouble("change_qty");
+ }
+ }
+
+ return wcchange;
+ }
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/FormulaServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/FormulaServiceImpl.java
index 39eaecd2..424fcc3a 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/FormulaServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/FormulaServiceImpl.java
@@ -400,6 +400,10 @@ public class FormulaServiceImpl implements FormulaService {
}
});
}else if(StrUtil.isNotEmpty(material_type_id) && MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){//碳化钨新料
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
+
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -521,6 +525,9 @@ public class FormulaServiceImpl implements FormulaService {
}
});
}else if(StrUtil.isNotEmpty(material_type_id) && MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){//碳化钨新料
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -1045,4 +1052,26 @@ public class FormulaServiceImpl implements FormulaService {
e.printStackTrace();
}
}
+
+ public double getWCChange(String material_id,String pcsn){
+ WQLObject PDM_BI_SuppWCChange = WQLObject.getWQLObject("PDM_BI_SuppWCChange"); // 工艺路线主表
+ double wcchange = 0.0;
+
+ //获取碳化钒
+ JSONObject FactoryWarranty = WQL.getWO("QPF_INITFORMULA01")
+ .addParam("material_id",material_id)
+ .addParam("pcsn",pcsn)
+ .addParam("flag","9")
+ .process()
+ .uniqueResult(0);
+ if(FactoryWarranty!=null){
+ String source_id = FactoryWarranty.getString("source_id");
+ JSONObject jo = PDM_BI_SuppWCChange.query("material_id='"+material_id+"' and supp_id='"+source_id+"'").uniqueResult(0);
+ if(jo!=null){
+ wcchange = jo.getDouble("change_qty");
+ }
+ }
+
+ return wcchange;
+ }
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/InitformulaServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/InitformulaServiceImpl.java
index 87fb798d..1382a1f4 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/InitformulaServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/InitformulaServiceImpl.java
@@ -54,6 +54,9 @@ public class InitformulaServiceImpl implements InitformulaService {
String material_type_id = jo.getString("material_type_id");
//如果该物料是碳化钨
if(MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -953,6 +956,10 @@ public class InitformulaServiceImpl implements InitformulaService {
}
});
}else if(StrUtil.isNotEmpty(material_type_id) && MaterOptTypeEnum.THW.getClass_idStr().contains(material_type_id)){//碳化钨新料
+
+ //获取修正值
+ double change_qty = this.getWCChange(jo.getString("material_id"),jo.getString("pcsn"));
+ jo.put("change_qty",change_qty);
//获取碳含量
JSONObject FactoryWarranty = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
@@ -1171,4 +1178,27 @@ public class InitformulaServiceImpl implements InitformulaService {
return ret;
}
+
+ public double getWCChange(String material_id,String pcsn){
+ WQLObject PDM_BI_SuppWCChange = WQLObject.getWQLObject("PDM_BI_SuppWCChange"); // 工艺路线主表
+ double wcchange = 0.0;
+
+ //获取碳化钒
+ JSONObject FactoryWarranty = WQL.getWO("QPF_INITFORMULA01")
+ .addParam("material_id",material_id)
+ .addParam("pcsn",pcsn)
+ .addParam("flag","9")
+ .process()
+ .uniqueResult(0);
+ if(FactoryWarranty!=null){
+ String source_id = FactoryWarranty.getString("source_id");
+ JSONObject jo = PDM_BI_SuppWCChange.query("material_id='"+material_id+"' and supp_id='"+source_id+"'").uniqueResult(0);
+ if(jo!=null){
+ wcchange = jo.getDouble("change_qty");
+ }
+ }
+
+ return wcchange;
+ }
+
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_INITFORMULA01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_INITFORMULA01.wql
index aa235a78..54379e5d 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_INITFORMULA01.wql
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_INITFORMULA01.wql
@@ -566,5 +566,28 @@
ENDPAGEQUERY
ENDIF
+ IF 输入.flag = "9"
+ QUERY
+ SELECT
+ ReceiveMst.receive_id,
+ ReceiveMst.source_id,
+ ReceiveDtl.receivedtl_id,
+ ReceiveDtl.material_id,
+ ReceiveDtl.pcsn
+ FROM
+ PCS_RC_ReceiveDtl ReceiveDtl
+ LEFT JOIN PCS_RC_ReceiveMst ReceiveMst ON ReceiveMst.receive_id = ReceiveDtl.receive_id
+ WHERE
+ 1 = 1 and ReceiveMst.is_delete='0' and ReceiveMst.source_type='01'
+ OPTION 输入.material_id <> ""
+ ReceiveDtl.material_id = 输入.material_id
+ ENDOPTION
+ OPTION 输入.pcsn <> ""
+ ReceiveDtl.pcsn = 输入.pcsn
+ ENDOPTION
+ ENDSELECT
+ ENDQUERY
+ ENDIF
+
diff --git a/mes/qd/src/views/wms/pf/formula/DivDialog.vue b/mes/qd/src/views/wms/pf/formula/DivDialog.vue
index 82f0b313..cb661891 100644
--- a/mes/qd/src/views/wms/pf/formula/DivDialog.vue
+++ b/mes/qd/src/views/wms/pf/formula/DivDialog.vue
@@ -309,6 +309,7 @@
+
@@ -821,7 +822,7 @@ export default {
}
if (!this.flagnow) {
const row = { edit: false, status:'10', is_rf_xl: '1', bucket_type: '01', material_type: '01', material_id: '', material_code: '',is_CJZB00021: '',is_CJZB00020: '',
- material_name: '', pcsn: '', quality_scode: '',need_sum_qty:'0', ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_add: '1', is_tan: '', is_09030102: '', qty_unit_id: '', qty_unit_name: '' }
+ material_name: '', pcsn: '', quality_scode: '',need_sum_qty:'0', ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_add: '1', is_tan: '', is_09030102: '', qty_unit_id: '', qty_unit_name: '',change_qty:'0' }
row.material_id = item.material_id
row.quality_scode = item.quality_scode
row.pcsn = item.pcsn
@@ -833,6 +834,7 @@ export default {
row.ivt_level = item.ivt_level
row.is_active = item.is_active
row.is_tan = item.is_tan
+ row.change_qty = item.change_qty
row.is_09030102 = item.is_09030102
row.is_CXJ001 = item.is_CXJ001
row.is_CXJ003 = item.is_CXJ003
@@ -852,7 +854,7 @@ export default {
}
} else {
const row = { edit: false, status:'10', is_rf_xl: '1', bucket_type: '01', material_type: '01', material_id: '', material_code: '',is_CJZB00021: '',is_CJZB00020: '',
- material_name: '', pcsn: '', quality_scode: '',need_sum_qty:'0', ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_add: '1', is_tan: '', is_09030102: '', qty_unit_id: '', qty_unit_name: '' }
+ material_name: '', pcsn: '', quality_scode: '',need_sum_qty:'0', ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_add: '1', is_tan: '', is_09030102: '', qty_unit_id: '', qty_unit_name: '',change_qty:'0' }
row.material_id = item.material_id
row.quality_scode = item.quality_scode
row.pcsn = item.pcsn
@@ -863,6 +865,7 @@ export default {
row.material_code = item.material_code
row.ivt_level = item.ivt_level
row.is_tan = item.is_tan
+ row.change_qty = item.change_qty
row.is_09030102 = item.is_09030102
row.is_CXJ001 = item.is_CXJ001
row.is_CXJ003 = item.is_CXJ003
diff --git a/mes/qd/src/views/wms/pf/formula/ViewDialog.vue b/mes/qd/src/views/wms/pf/formula/ViewDialog.vue
index 3fc55607..5e0ab01d 100644
--- a/mes/qd/src/views/wms/pf/formula/ViewDialog.vue
+++ b/mes/qd/src/views/wms/pf/formula/ViewDialog.vue
@@ -211,6 +211,7 @@
+
diff --git a/mes/qd/src/views/wms/pf/initformula/DivDialog.vue b/mes/qd/src/views/wms/pf/initformula/DivDialog.vue
index e76d0e42..23fdf239 100644
--- a/mes/qd/src/views/wms/pf/initformula/DivDialog.vue
+++ b/mes/qd/src/views/wms/pf/initformula/DivDialog.vue
@@ -266,6 +266,7 @@
+
@@ -963,7 +964,7 @@ export default {
const row = { edit: false,is_rf_xl: '1', bucket_type: '01', material_type: '01', material_id: '', material_code: '',
material_name: '', pcsn: '', quality_scode: '', ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_tan: '', is_09030102: '',
is_CXJ001: '', is_CXJ003: '',need_sum_qty:'0', is_CXJ004: '',is_CXJ005: '',is_CXJ006: '',is_CXJ007: '',is_CXJ008: '',is_CXJ002: '',is_CJZB00021: '',is_CJZB00020: '',
- qty_unit_id: '', qty_unit_name: '' }
+ qty_unit_id: '', qty_unit_name: '',change_qty:'0' }
row.material_id = item.material_id
row.quality_scode = item.quality_scode
row.pcsn = item.pcsn
@@ -978,6 +979,7 @@ export default {
row.qty_unit_id = item.qty_unit_id
row.qty_unit_name = item.qty_unit_name
row.is_tan = item.is_tan
+ row.change_qty = item.change_qty
row.is_09030102 = item.is_09030102
row.is_CXJ001 = item.is_CXJ001
row.is_CXJ003 = item.is_CXJ003
@@ -995,7 +997,7 @@ export default {
const row = { edit: false, is_rf_xl: '1', bucket_type: '01', material_type: '01', material_id: '', material_code: '',
material_name: '', pcsn: '', quality_scode: '', need_sum_qty:'0',ivt_level: '', is_active: '', formula_qty: '0', sum_ivt_qty: '', is_need_move: '', is_need_manage: '1', is_tan: '', is_09030102: '', is_CXJ001: '',
is_CXJ003: '',is_CXJ004: '',is_CXJ005: '',is_CXJ006: '',is_CXJ007: '',is_CXJ008: '',is_CXJ002: '',is_CJZB00021: '',is_CJZB00020: '',
- qty_unit_id: '', qty_unit_name: '' }
+ qty_unit_id: '', qty_unit_name: '',change_qty:'0' }
row.material_id = item.material_id
row.quality_scode = item.quality_scode
row.pcsn = item.pcsn
@@ -1010,6 +1012,7 @@ export default {
row.qty_unit_id = item.qty_unit_id
row.qty_unit_name = item.qty_unit_name
row.is_tan = item.is_tan
+ row.change_qty = item.change_qty
row.is_09030102 = item.is_09030102
row.is_CXJ001 = item.is_CXJ001
row.is_CXJ003 = item.is_CXJ003