fix: 内包间桁架任务添加纸管信息

This commit is contained in:
2024-04-12 14:22:39 +08:00
parent 2b1ae4f3c4
commit b021b2a5a1
2 changed files with 104 additions and 30 deletions

View File

@@ -17,6 +17,7 @@ import org.nl.b_lms.sch.tasks.slitter.TrussCallShaftCacheTask;
import org.nl.b_lms.sch.tasks.slitter.constant.SlitterConstant;
import org.nl.b_lms.sch.tasks.slitter.constant.SlitterEnum;
import org.nl.b_lms.sch.tasks.slitter.mapper.dto.SlitterPlanDistinctDto;
import org.nl.b_lms.sch.tasks.slitter.util.SlitterTaskUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.common.utils.TaskUtils;
import org.nl.modules.common.exception.BadRequestException;
@@ -144,21 +145,7 @@ public class AutoCallAirShaftTask {
param.put("product_area", SlitterConstant.SLITTER_TASK_AREA);
param.put("qzz_size", needPlan.getQzz_size());
// 所需的纸管规格
for (PdmBiSlittingproductionplan plan : needPlans) {
if (SlitterConstant.SLITTER_SUB_VOLUME_LEFT.equals(plan.getLeft_or_right())) {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("left", plan.getPaper_tube_model());
} else {
param.put("left", plan.getFRP_model());
}
} else {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("right", plan.getPaper_tube_model());
} else {
param.put("right", plan.getFRP_model());
}
}
}
SlitterTaskUtil.putNeedPaperSpec(param, needPlans);
// 当前纸管的规格信息
String oldQzzNo = ObjectUtil.isNotEmpty(startPoint.getQzz_no1())
? startPoint.getQzz_no1() : startPoint.getQzz_no2();
@@ -167,21 +154,7 @@ public class AutoCallAirShaftTask {
}
// 最多两条
List<PdmBiSlittingproductionplan> oldPlans = slittingproductionplanService.getByQzzNo(oldQzzNo);
for (PdmBiSlittingproductionplan plan : oldPlans) {
if (SlitterConstant.SLITTER_SUB_VOLUME_LEFT.equals(plan.getLeft_or_right())) {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("currentLeft", plan.getPaper_tube_model());
} else {
param.put("currentLeft", plan.getFRP_model());
}
} else {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("currentRight", plan.getPaper_tube_model());
} else {
param.put("currentRight", plan.getFRP_model());
}
}
}
SlitterTaskUtil.putCurrentPaperSpec(param, oldPlans);
// 套管数量
param.put("casingCount", needPlans.size());
// 拔管数量

View File

@@ -0,0 +1,101 @@
package org.nl.b_lms.sch.tasks.slitter.util;
import com.alibaba.fastjson.JSONObject;
import org.nl.b_lms.pdm.bi.slittingproductionplan.service.dao.PdmBiSlittingproductionplan;
import org.nl.b_lms.sch.tasks.slitter.constant.SlitterConstant;
import java.util.List;
/**
* @Author: lyd
* @Description: 分切部分的任务工具类
* @Date: 2024/4/12
*/
public class SlitterTaskUtil {
/**
* 组成纸管信息
* @param plan 对应的分切计划数组
* @return 组成的纸管信息
*/
public static String getPaperTubeInformation(PdmBiSlittingproductionplan plan) {
StringBuilder sb = new StringBuilder();
// 长*外径*内径*壁厚*重量*材质1纸管2FRP管
// 长
sb.append(plan.getPaper_tube_model().split("\\|")[3]);
sb.append("*");
// 外径
sb.append(0);
sb.append("*");
// 内径
sb.append(0);
sb.append("*");
// 壁厚
sb.append(0);
sb.append("*");
// 重量
sb.append(0);
sb.append("*");
// 材质
sb.append(plan.getPaper_tube_or_FRP());
return sb.toString();
}
/**
* 设置所需的套管纸管信息
* @param param 任务参数
* @param needPlans 所需的分切计划
*/
public static void putNeedPaperSpec(JSONObject param, List<PdmBiSlittingproductionplan> needPlans) {
for (PdmBiSlittingproductionplan plan : needPlans) {
if (SlitterConstant.SLITTER_SUB_VOLUME_LEFT.equals(plan.getLeft_or_right())) {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("left", plan.getPaper_tube_material());
param.put("leftSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0));
} else {
param.put("left", plan.getFRP_material());
param.put("leftSize", plan.getFRP_model().split("\\|")[2].charAt(0));
}
param.put("leftSpec", SlitterTaskUtil.getPaperTubeInformation(plan));
} else {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("right", plan.getPaper_tube_material());
param.put("rightSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0));
} else {
param.put("right", plan.getFRP_material());
param.put("rightSize", plan.getFRP_model().split("\\|")[2].charAt(0));
}
param.put("rightSpec", SlitterTaskUtil.getPaperTubeInformation(plan));
}
}
}
/**
* 设置当前的拔管纸管信息
* @param param 任务参数
* @param oldPlans 老的分切计划
*/
public static void putCurrentPaperSpec(JSONObject param, List<PdmBiSlittingproductionplan> oldPlans) {
for (PdmBiSlittingproductionplan plan : oldPlans) {
if (SlitterConstant.SLITTER_SUB_VOLUME_LEFT.equals(plan.getLeft_or_right())) {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("currentLeft", plan.getPaper_tube_material());
param.put("currentLeftSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0));
} else {
param.put("currentLeft", plan.getFRP_material());
param.put("currentLeftSize", plan.getFRP_model().split("\\|")[2].charAt(0));
}
param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan));
} else {
if (SlitterConstant.SLITTER_TYPE_PAPER.equals(plan.getPaper_tube_or_FRP())) {
param.put("currentRight", plan.getPaper_tube_model());
param.put("currentRightSize", plan.getPaper_tube_model().split("\\|")[2].charAt(0));
} else {
param.put("currentRight", plan.getFRP_model());
param.put("currentRightSize", plan.getFRP_model().split("\\|")[2].charAt(0));
}
param.put("currentLeftSpec", SlitterTaskUtil.getPaperTubeInformation(plan));
}
}
}
}