生产单xml导入问题修复:封边临时表数据错误修复

This commit is contained in:
gaoqr
2025-03-05 18:03:10 +08:00
parent 8374365163
commit 275a1ddf3a
@@ -140,7 +140,9 @@ public class DefaultOrderImportXmlParserHandler {
private RoomXmlVO roomXmlVO;
private BlockXmlVO blockXmlVO;
private PointXmlVOS pointXmlVOS;
private PointXmlVOS groovePointXmlVOS;
private OutlineXmlVO outlineXmlVO;
private OutlineXmlVO grooveOutlineXmlVO;
private CuttingOutlineXmlVO cuttingOutlineXmlVO;
private RawOutlineXmlVO rawOutlineXmlVO;
private HoleXmlVOS holeXmlVOS;
@@ -997,8 +999,12 @@ public class DefaultOrderImportXmlParserHandler {
private void analyzeOutline(Iterator<Attribute> attributes) throws Exception {
// 设置全局参数
inOutline = true;
if (inGroove) {
grooveOutlineXmlVO = getJavaBeanFromXmlAttr(OutlineXmlVO.class, attributes);
} else {
outlineXmlVO = getJavaBeanFromXmlAttr(OutlineXmlVO.class, attributes);
}
}
/**
* Outline标签结束
@@ -1009,8 +1015,10 @@ public class DefaultOrderImportXmlParserHandler {
if (CollUtil.isEmpty(points)) {
throw ServiceExceptionUtil.exception(ORDER_IMPORT_DETAIL_VALID_ERROR, "原始造型(外)轮廓点阵列表不能为空");
}
}
grooveOutlineXmlVO.setPointXmlVOList(ListUtil.toList(points));
} else {
outlineXmlVO.setPointXmlVOList(ListUtil.toList(points));
}
// 重置全局参数
points.clear();
inOutline = false;
@@ -1215,8 +1223,8 @@ public class DefaultOrderImportXmlParserHandler {
* Groove标签结束
*/
private void endGroove() {
grooveXmlVO.setOutlineXmlVO(outlineXmlVO);
grooveXmlVO.setPointXmlVOS(pointXmlVOS);
grooveXmlVO.setOutlineXmlVO(grooveOutlineXmlVO);
grooveXmlVO.setPointXmlVOS(groovePointXmlVOS);
grooveXmlVOS.getGrooveXmlVOList().add(grooveXmlVO);
// 重置全局参数
inGroove = false;
@@ -1268,8 +1276,12 @@ public class DefaultOrderImportXmlParserHandler {
// 设置全局参数
inPoints = true;
// 从标签属性生成points对象
if(inGroove) {
groovePointXmlVOS = getJavaBeanFromXmlAttr(PointXmlVOS.class, attributes);
} else {
pointXmlVOS = getJavaBeanFromXmlAttr(PointXmlVOS.class, attributes);
}
}
/**
* Points标签结束
@@ -1279,7 +1291,11 @@ public class DefaultOrderImportXmlParserHandler {
if (ObjectUtil.isNotNull(pointXmlVOS) && CollUtil.isEmpty(points)) {
throw ServiceExceptionUtil.exception(ORDER_IMPORT_DETAIL_VALID_ERROR, inIslet ? "孤岛点阵列表不可为空" : "槽点坐标列表不可为空");
}
if(inGroove) {
groovePointXmlVOS.setPointXmlVOList(ListUtil.toList(points));
} else {
pointXmlVOS.setPointXmlVOList(ListUtil.toList(points));
}
// 重置全局参数
points.clear();
inPoints = false;