This commit is contained in:
zds
2022-07-07 09:56:59 +08:00
parent 398bc268a5
commit 5e0dad1b62
2 changed files with 227 additions and 197 deletions

View File

@@ -710,58 +710,64 @@ public class AutoformulaServiceImpl implements AutoformulaService {
cw_list.add(C_weight);
//更新碳化钨配粉重量
double bom_ivt_qty = X22p-C;
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
yzj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double value = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*value/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
yzj_map.put(tjj_material_id,tjj_map_jo);
if(bom_ivt_qty<0){
flag = false;
}else{
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
yzj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double value = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*value/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
yzj_map.put(tjj_material_id,tjj_map_jo);
}
});
}
//判断已含添加剂与需配添加剂大小
yzj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
//判断已含添加剂与需配添加剂大小
yzj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
}
if(!flag){
@@ -793,6 +799,9 @@ public class AutoformulaServiceImpl implements AutoformulaService {
cw_list.add(C_weight);
//更新碳化钨配粉重量
double bom_ivt_qty = X21p-X21_jian;
if(bom_ivt_qty<0){
throw new BadRequestException("碳化钨倒数第二条配粉结果为负数,当前配粉无解!");
}
bomdlt_Cr3C2_X21p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X21p.getString("stockrecord_id"),bomdlt_Cr3C2_X21p);
if(bom_ivt_qty<=0){
@@ -970,58 +979,62 @@ public class AutoformulaServiceImpl implements AutoformulaService {
cw_list.add(W_weight);
//更新碳化钨配粉重量
double bom_ivt_qty = X22p-W;
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
yzj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double value = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*value/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
yzj_map.put(tjj_material_id,tjj_map_jo);
if(bom_ivt_qty<0){
flag = false;
}else{
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
yzj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double value = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*value/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
yzj_map.put(tjj_material_id,tjj_map_jo);
}
});
}
//判断已含添加剂与需配添加剂大小
yzj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
//判断已含添加剂与需配添加剂大小
yzj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
}
if(!flag){
@@ -1053,6 +1066,9 @@ public class AutoformulaServiceImpl implements AutoformulaService {
//更新碳化钨配粉重量
double bom_ivt_qty = X21p-X21_jian;
bomdlt_Cr3C2_X21p.put("bom_ivt_qty",bom_ivt_qty);
if(bom_ivt_qty<0){
throw new BadRequestException("碳化钨倒数第二条配粉结果为负数,当前配粉无解!");
}
bomdlts_plan_map.put(bomdlt_Cr3C2_X21p.getString("stockrecord_id"),bomdlt_Cr3C2_X21p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X21p.getString("stockrecord_id"));
@@ -1576,58 +1592,62 @@ public class AutoformulaServiceImpl implements AutoformulaService {
cw_list.add(C_weight);
//更新碳化钨配粉重量
double bom_ivt_qty = X22p-C;
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
tjj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double is_tan = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*is_tan/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
tjj_map.put(tjj_material_id,tjj_map_jo);
if(bom_ivt_qty<0){
flag = false;
}else{
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
tjj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double is_tan = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*is_tan/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
tjj_map.put(tjj_material_id,tjj_map_jo);
}
});
}
//判断已含添加剂与需配添加剂大小
tjj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
//判断已含添加剂与需配添加剂大小
tjj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
}
if(!flag){
@@ -1660,6 +1680,9 @@ public class AutoformulaServiceImpl implements AutoformulaService {
//更新碳化钨配粉重量
double bom_ivt_qty = X21p-X21_jian;
bomdlt_Cr3C2_X21p.put("bom_ivt_qty",bom_ivt_qty);
if(bom_ivt_qty<0){
throw new BadRequestException("碳化钨倒数第二条配粉结果为负数,当前配粉无解!");
}
bomdlts_plan_map.put(bomdlt_Cr3C2_X21p.getString("stockrecord_id"),bomdlt_Cr3C2_X21p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X21p.getString("stockrecord_id"));
@@ -1836,58 +1859,62 @@ public class AutoformulaServiceImpl implements AutoformulaService {
cw_list.add(W_weight);
//更新碳化钨配粉重量
double bom_ivt_qty = X22p-W;
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
tjj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double is_tan = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*is_tan/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
tjj_map.put(tjj_material_id,tjj_map_jo);
if(bom_ivt_qty<0){
flag = false;
}else{
bomdlt_Cr3C2_X22p.put("bom_ivt_qty",bom_ivt_qty);
bomdlts_plan_map.put(bomdlt_Cr3C2_X22p.getString("stockrecord_id"),bomdlt_Cr3C2_X22p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X22p.getString("stockrecord_id"));
}
//循环碳化钨
for(int i=0;i<bomdlts_Cr3C2.size();i++){
JSONObject jo = bomdlts_Cr3C2.getJSONObject(i);
double bom_ivt_qty_jo = jo.getDouble("bom_ivt_qty");
//计算不需要移库的添加剂
tjj_map.forEach((key,tjj_map_jo)->{
//获取添加剂id
String tjj_material_id = tjj_map_jo.getString("material_id");
JSONObject tjj_finished = WQL.getWO("QPF_AUTOFORMULA01")
.addParam("material_id",jo.getString("material_id"))
.addParam("pcsn",jo.getString("pcsn"))
.addParam("item_material_id",tjj_material_id)
.addParam("flag","5")
.process()
.uniqueResult(0);
if(tjj_finished!=null){
//已配重量
double finished_qty = tjj_map_jo.getDouble("finished_qty");
//质保书含量比
double is_tan = tjj_finished.getDouble("value");
//当前含量重量
double finished = bom_ivt_qty_jo*is_tan/100.0;
//累计各碳化钨中已含添加剂重量
tjj_map_jo.put("finished_qty",finished_qty+finished);
tjj_map.put(tjj_material_id,tjj_map_jo);
}
});
}
//判断已含添加剂与需配添加剂大小
tjj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
//判断已含添加剂与需配添加剂大小
tjj_map.forEach((key,tjj_map_now)->{
//需配添加剂重量
double need_qty = NumberUtil.round(tjj_map_now.getDouble("need_qty"),3).doubleValue();
//当前添加剂已配
double finished_qty = NumberUtil.round(tjj_map_now.getDouble("finished_qty"),3).doubleValue();
//已配小于需配
if(finished_qty<need_qty){
tjj_map_now.put("formula_qty",need_qty-finished_qty);
tjj_map_now.put("material_type","01");
tjj_map_now.put("is_need_move","0");
tjj_map_now.put("is_need_manage","1");
tjj_map_now.put("is_rf_xl","0");
tjj_map_now.put("ivt_level","01");
tjj_map_now.put("is_active","1");
tjj_map_now.put("quality_scode","01");
yzj_list.add(tjj_map_now);
}
});
}
}
if(!flag){
@@ -1919,6 +1946,9 @@ public class AutoformulaServiceImpl implements AutoformulaService {
//更新碳化钨配粉重量
double bom_ivt_qty = X21p-X21_jian;
bomdlt_Cr3C2_X21p.put("bom_ivt_qty",bom_ivt_qty);
if(bom_ivt_qty<0){
throw new BadRequestException("碳化钨倒数第二条配粉结果为负数,当前配粉无解!");
}
bomdlts_plan_map.put(bomdlt_Cr3C2_X21p.getString("stockrecord_id"),bomdlt_Cr3C2_X21p);
if(bom_ivt_qty<=0){
bomdlts_plan_map.remove(bomdlt_Cr3C2_X21p.getString("stockrecord_id"));

View File

@@ -80,7 +80,7 @@ https://juejin.cn/post/6844903775631572999
<!--生产环境:打印控制台和输出到文件-->
<springProfile name="prod">
<root level="info">
<root level="DEBUG">
<appender-ref ref="asyncFileAppender"/>
</root>
<logger name="jdbc.audit" level="ERROR" additivity="false">