后端更改为ONLINE全部下发

This commit is contained in:
2026-02-02 17:59:50 +08:00
parent f8b7d6b813
commit 82cffb7ea3
2 changed files with 44 additions and 59 deletions

View File

@@ -77,7 +77,7 @@ public class TrackServiceImpl implements TrackService {
// NEW/READY -> ONLINE下发张力下一设定值 // NEW/READY -> ONLINE下发张力下一设定值
if (form.getOperation() == com.fizz.business.constants.enums.L1OperateMatEnum.ONLINE) { if (form.getOperation() == com.fizz.business.constants.enums.L1OperateMatEnum.ONLINE) {
try { try {
segmentTrackerService.sendDriveTensionNextOnOnline(form.getEntryMatId(), form.getPorIdx()); segmentTrackerService.sendAllPdiOnOnline(form.getEntryMatId(), form.getPorIdx());
} catch (Exception e) { } catch (Exception e) {
log.error("张力Next下发异常, coilId={} err={}", form.getEntryMatId(), e.toString(), e); log.error("张力Next下发异常, coilId={} err={}", form.getEntryMatId(), e.toString(), e);
} }

View File

@@ -436,13 +436,6 @@ public class SegmentTrackerService {
if (d == DeviceEnum.WELDER) { if (d == DeviceEnum.WELDER) {
logDataService.logInfo("MATMAP-TRACK", "Coil reached welder, update plan status. coil=" + coilId + ", headPos=" + headPos); logDataService.logInfo("MATMAP-TRACK", "Coil reached welder, update plan status. coil=" + coilId + ", headPos=" + headPos);
// ONLINE -> PRODUCING下发入口卷参数
try {
sendEntryPdiOnProducing(coilId);
} catch (Exception ex) {
logDataService.logWarn("MATMAP-TRACK", "入口参数下发异常(PRODUCING触发), coilId=" + coilId + ", err=" + String.valueOf(ex));
}
trackService.l1OperateMat(L1OperateMatForm.builder() trackService.l1OperateMat(L1OperateMatForm.builder()
.entryMatId(coilId) .entryMatId(coilId)
.planId(matmap.getPlanId()) .planId(matmap.getPlanId())
@@ -476,74 +469,66 @@ public class SegmentTrackerService {
/** /**
* NEW/READY -> ONLINE下发全线张力“下一设定值”(Next) * NEW/READY -> ONLINE下发全线张力“下一设定值”(Next)
*/ */
public void sendDriveTensionNextOnOnline(String coilId, Integer porIdx) { private void addDriveTensionNextFields(java.util.List<OpcWriteDataForm> dataList, Integer porIdx, com.fizz.business.domain.PdiSetups setup) {
if (setup == null) {
return;
}
if (porIdx != null && porIdx == 0) {
dataList.add(buildOpcWrite("tensionPor1Next", setup.getPorTension()));
} else if (porIdx != null && porIdx == 1) {
dataList.add(buildOpcWrite("tensionPor2Next", setup.getPorTension()));
}
dataList.add(buildOpcWrite("tensionEnLpNext", setup.getCelTension()));
dataList.add(buildOpcWrite("tensionCleaningNext", setup.getCleanTension()));
dataList.add(buildOpcWrite("tensionGalvanizingCoolNext", setup.getPassivationTension()));
dataList.add(buildOpcWrite("tensionExLpNext", setup.getCxlTension()));
dataList.add(buildOpcWrite("tensionTlNext", setup.getLevelerEntryTension()));
dataList.add(buildOpcWrite("tensionTmExitNext", setup.getStraightenerExitTension()));
dataList.add(buildOpcWrite("tensionFuranceNext", setup.getFurTension()));
dataList.add(buildOpcWrite("tensionTrNext", setup.getTrTension()));
}
private void addEntryPdiFields(java.util.List<OpcWriteDataForm> dataList, String coilId, com.fizz.business.vo.CrmPdiPlanVO plan) {
dataList.add(buildOpcWrite("coilId", coilId));
dataList.add(buildOpcWrite("entryCoilWeight", plan.getEntryWeight()));
dataList.add(buildOpcWrite("entryCoilLength", plan.getEntryLength()));
dataList.add(buildOpcWrite("entryCoilWidth", plan.getEntryWidth()));
dataList.add(buildOpcWrite("entryCoilThick", plan.getEntryThick()));
dataList.add(buildOpcWrite("entryCoilInnerDia", plan.getEntryInnerDiameter()));
dataList.add(buildOpcWrite("entryCoilOuterDia", plan.getEntryOuterDiameter()));
dataList.add(buildOpcWrite("alloyCode", plan.getSteelGrade()));
dataList.add(buildOpcWrite("splitNum", plan.getSplitNum()));
}
/**
* NEW/READY -> ONLINE入口卷参数 + 全线张力“下一设定值”(Next) 一次性下发
*/
public void sendAllPdiOnOnline(String coilId, Integer porIdx) {
try { try {
com.fizz.business.vo.CrmPdiPlanVO plan = crmPdiPlanService.getByCoilIdAndOperId(coilId); com.fizz.business.vo.CrmPdiPlanVO plan = crmPdiPlanService.getByCoilIdAndOperId(coilId);
if (plan == null) { if (plan == null) {
logDataService.logWarn("MATMAP-TRACK", "张力Next下发跳过:未找到计划信息, coilId=" + coilId); logDataService.logWarn("MATMAP-TRACK", "ONLINE下发跳过:未找到计划信息, coilId=" + coilId);
return; return;
} }
com.fizz.business.domain.PdiSetups setup = loadPdiSetup(coilId, plan.getPlanid()); com.fizz.business.domain.PdiSetups setup = loadPdiSetup(coilId, plan.getPlanid());
if (setup == null) { if (setup == null) {
logDataService.logWarn("MATMAP-TRACK", "张力Next下发跳过未找到pdi_setup, coilId=" + coilId); logDataService.logWarn("MATMAP-TRACK", "ONLINE下发跳过未找到pdi_setup, coilId=" + coilId);
return; return;
} }
java.util.List<OpcWriteDataForm> dataList = new java.util.ArrayList<>(); java.util.List<OpcWriteDataForm> dataList = new java.util.ArrayList<>();
addEntryPdiFields(dataList, coilId, plan);
if (porIdx != null && porIdx == 0) { addDriveTensionNextFields(dataList, porIdx, setup);
dataList.add(buildOpcWrite("tensionPor1Next", setup.getPorTension()));
} else if (porIdx != null && porIdx == 1) {
dataList.add(buildOpcWrite("tensionPor2Next", setup.getPorTension()));
}
dataList.add(buildOpcWrite("tensionEnLpNext", setup.getCelTension()));
dataList.add(buildOpcWrite("tensionCleaningNext", setup.getCleanTension()));
dataList.add(buildOpcWrite("tensionGalvanizingCoolNext", setup.getPassivationTension()));
dataList.add(buildOpcWrite("tensionExLpNext", setup.getCxlTension()));
dataList.add(buildOpcWrite("tensionTlNext", setup.getLevelerEntryTension()));
dataList.add(buildOpcWrite("tensionTmExitNext", setup.getStraightenerExitTension()));
dataList.add(buildOpcWrite("tensionFuranceNext", setup.getFurTension()));
dataList.add(buildOpcWrite("tensionTrNext", setup.getTrTension()));
OpcBatchWriteDataForm opcForm = new OpcBatchWriteDataForm(); OpcBatchWriteDataForm opcForm = new OpcBatchWriteDataForm();
opcForm.setDataList(dataList); opcForm.setDataList(dataList);
boolean ok = opcDataService.batchWriteData(opcForm); boolean ok = opcDataService.batchWriteData(opcForm);
logDataService.logInfo("MATMAP-TRACK", "张力Next下发完成(ONLINE触发), coilId=" + coilId + ", ok=" + ok); logDataService.logInfo("MATMAP-TRACK", "ONLINE下发完成(入口参数+张力Next), coilId=" + coilId + ", ok=" + ok);
} catch (Exception ex) { } catch (Exception ex) {
logDataService.logWarn("MATMAP-TRACK", "张力Next下发异常(ONLINE触发), coilId=" + coilId + ", err=" + String.valueOf(ex)); logDataService.logWarn("MATMAP-TRACK", "ONLINE下发异常(入口参数+张力Next), coilId=" + coilId + ", err=" + String.valueOf(ex));
}
}
/**
* ONLINE -> PRODUCING下发入口卷参数481-490
*/
public void sendEntryPdiOnProducing(String coilId) {
try {
com.fizz.business.vo.CrmPdiPlanVO plan = crmPdiPlanService.getByCoilIdAndOperId(coilId);
if (plan == null) {
logDataService.logWarn("MATMAP-TRACK", "入口参数下发跳过:未找到计划信息, coilId=" + coilId);
return;
}
java.util.List<OpcWriteDataForm> dataList = new java.util.ArrayList<>();
dataList.add(buildOpcWrite("coilId", coilId));
dataList.add(buildOpcWrite("entryCoilWeight", plan.getEntryWeight()));
dataList.add(buildOpcWrite("entryCoilLength", plan.getEntryLength()));
dataList.add(buildOpcWrite("entryCoilWidth", plan.getEntryWidth()));
dataList.add(buildOpcWrite("entryCoilThick", plan.getEntryThick()));
dataList.add(buildOpcWrite("entryCoilInnerDia", plan.getEntryInnerDiameter()));
dataList.add(buildOpcWrite("entryCoilOuterDia", plan.getEntryOuterDiameter()));
dataList.add(buildOpcWrite("alloyCode", plan.getSteelGrade()));
dataList.add(buildOpcWrite("splitNum", plan.getSplitNum()));
OpcBatchWriteDataForm opcForm = new OpcBatchWriteDataForm();
opcForm.setDataList(dataList);
boolean ok = opcDataService.batchWriteData(opcForm);
logDataService.logInfo("MATMAP-TRACK", "入口参数下发完成(PRODUCING触发), coilId=" + coilId + ", ok=" + ok);
} catch (Exception ex) {
logDataService.logWarn("MATMAP-TRACK", "入口参数下发异常(PRODUCING触发), coilId=" + coilId + ", err=" + String.valueOf(ex));
} }
} }