mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-13 05:12:07 +08:00
Merge remote-tracking branch 'origin/main'
This commit is contained in:
+2
-4
@@ -342,7 +342,6 @@ public class OrderController {
|
||||
|
||||
} else if (type == 2) { // xml
|
||||
orderXmlVO = (OrderXmlVO) XMLUtil.read(file, OrderXmlVO.class);
|
||||
System.out.println("1、 " + orderXmlVO);
|
||||
|
||||
if (index == 0){
|
||||
if (orderXmlVO != null) {
|
||||
@@ -377,9 +376,8 @@ public class OrderController {
|
||||
}
|
||||
}
|
||||
if (!flag){
|
||||
System.out.println("xml = " + orderXmlVO);
|
||||
String xmlStr = XmlBuilder.objectToXmlStr(orderXmlVO);
|
||||
XMLUtil.writeErr(response, xmlStr, " 错误.xml");
|
||||
XMLUtil.writeErr(response, xmlStr, " order_add_xml_err.xml");
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -390,7 +388,7 @@ public class OrderController {
|
||||
ExcelWriterUtil.write(response, mapOrder, list, orderService.getSavePath() + File.separator + "order_add_excel_err.xlsx");
|
||||
} else if (type == 2) {
|
||||
String xmlStr = XmlBuilder.objectToXmlStr(orderXmlVO);
|
||||
XMLUtil.writeErr(response, xmlStr, " 错误.xml");
|
||||
XMLUtil.writeErr(response, xmlStr, " order_add_xml_err.xml");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-1
@@ -32,6 +32,8 @@ public class OrderModelDO extends ESDocument {
|
||||
@Schema(description = "小板id")
|
||||
private Long plateId;
|
||||
|
||||
@Schema(description = "房间的基点坐标")
|
||||
private BasePosition roomBasePosition; // 板件基准点坐标
|
||||
@Schema(description = "柜体的基点坐标")
|
||||
private BasePosition bodyBasePosition; // 板件基准点坐标
|
||||
@Schema(description = "板件的基点坐标")
|
||||
@@ -76,7 +78,7 @@ public class OrderModelDO extends ESDocument {
|
||||
@Schema(description = "侧面孔明细列表")
|
||||
private List<HoleDetail> sideHoleDetail;
|
||||
|
||||
@Schema(description = "生产封边备注 弃用")
|
||||
@Schema(description = "生产封边备注")
|
||||
private Map<String,String> sideRemark;// 封边备注
|
||||
@Schema(description = "板材扩展备注")
|
||||
private JSONObject plateExtraRemark;// 封边备注
|
||||
|
||||
+12
-4
@@ -867,7 +867,10 @@ public class OrderServiceImpl implements OrderService {
|
||||
PlateGoodDO plateGoodDO = null;
|
||||
List<PlateGoodDO> plateGoodDOS = null;
|
||||
if (goodsDO.getGoodsId() != null) { // 有goodsId
|
||||
plateGoodDO = plateGoodMapper.selectGoodOne(goodsDO.getGoodsId(), OrganContextHolder.getOrganId()).get(0);
|
||||
List<PlateGoodDO> plateGoodlist = plateGoodMapper.selectGoodOne(goodsDO.getGoodsId(), OrganContextHolder.getOrganId());
|
||||
if (plateGoodlist.size() > 0) {
|
||||
plateGoodDO = plateGoodlist.get(0);
|
||||
}
|
||||
} else { // 没有goodsId 其他信息匹配
|
||||
plateGoodDOS = plateGoodMapper.selectGood(goodsDO.getGoodsName(), goodsDO.getMaterial(), goodsDO.getColor(),
|
||||
goodsDO.getTexture(), goodsDO.getWidth(), goodsDO.getThickness(), goodsDO.getHeight(), goodsDO.getBrand(),
|
||||
@@ -879,14 +882,19 @@ public class OrderServiceImpl implements OrderService {
|
||||
} else if (plateGoodDO != null) { // 存在板材
|
||||
goodsDO.setGoodsId(plateGoodDO.getGoodsId());
|
||||
} else { // 不存在板材
|
||||
String goodsId = goodsDO.getGoodsId();
|
||||
|
||||
if (goodsId == null) {
|
||||
long plateNo = idWorker.nextId();
|
||||
long obtainingTime = idWorker.obtainingTime();
|
||||
goodsId = (obtainingTime) + Long.toString(plateNo).substring(2);
|
||||
}
|
||||
Long plateGoods = (Long) identifierGenerator.nextId(null);
|
||||
long plateNo = idWorker.nextId();
|
||||
long obtainingTime = idWorker.obtainingTime();
|
||||
|
||||
// Long goodsId = (Long) identifierGenerator.nextId(null);
|
||||
plateGoodDO = BeanUtils.toBean(goodsDO, PlateGoodDO.class)
|
||||
.setId(plateGoods)
|
||||
.setGoodsId((obtainingTime) + Long.toString(plateNo).substring(2));
|
||||
.setGoodsId(goodsId);
|
||||
// 判断是否存在raw_goods_id
|
||||
if (goodsDO.getGoodsId() != null) {
|
||||
plateGoodDO.setGoodsId(goodsDO.getGoodsId());
|
||||
|
||||
+2
@@ -1,6 +1,7 @@
|
||||
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
@@ -89,6 +90,7 @@ public class PlateDetail{
|
||||
private Boolean has3DModel; // 是否有三维刀路
|
||||
|
||||
// 轮廓数据、造型数据
|
||||
private BasePosition roomBasePosition; // 板件基准点坐标
|
||||
private BasePosition bodyBasePosition; // 柜体基准点坐标
|
||||
private BasePosition plateBasePosition; // 板件基准点坐标
|
||||
private List<PointDetail> pointDetail ; //点明细,表示小板外围轮廓的几个转折点(不含封边)
|
||||
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
|
||||
import javax.xml.bind.annotation.XmlAttribute;
|
||||
|
||||
/**
|
||||
* xml中房间、柜体、加工组的位置信息
|
||||
*/
|
||||
public class PositionVO {
|
||||
|
||||
@Schema(name = "房间名称")
|
||||
private String roomName;
|
||||
|
||||
@Schema(name = "房间号")
|
||||
private String roomCode;
|
||||
|
||||
@Schema(name = "柜体名称")
|
||||
private String boxName;
|
||||
|
||||
@Schema(name = "柜体号")
|
||||
private String boxCode;
|
||||
|
||||
@Schema(name = "加工组名称")
|
||||
private String groupName;
|
||||
|
||||
@Schema(name = "加工组号")
|
||||
private String groupCode;
|
||||
|
||||
@Schema(name = "模块名称")
|
||||
private String moduleName;
|
||||
|
||||
@Schema(name = "模块号")
|
||||
private String moduleCode;
|
||||
}
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 板补充备注 格式
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ExtraVO {
|
||||
|
||||
@Schema(description ="板类型" )
|
||||
private String boardType;
|
||||
|
||||
@Schema(description ="挖穿的孔数" )
|
||||
private String throughHoleCount;
|
||||
|
||||
@Schema(description ="挖穿的孔数" )
|
||||
private String throughModelCount;
|
||||
|
||||
@Schema(description ="是否有二维刀路" )
|
||||
private String has2DModel;
|
||||
|
||||
@Schema(description ="是否有三维刀路" )
|
||||
private String has3DModel;
|
||||
|
||||
@Schema(description ="排版面" )
|
||||
private String composingFace;
|
||||
|
||||
@Schema(description ="板边备注" )
|
||||
private List<String> edgeRemarks;
|
||||
|
||||
@Schema(description ="封边备注" )
|
||||
private List<String> rectSealDetail;
|
||||
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 板备注 格式
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class RectSealVO {
|
||||
|
||||
@Schema(description ="点id" )
|
||||
private String PointID;
|
||||
|
||||
@Schema(description ="预留边" )
|
||||
private String ReservedEdge;
|
||||
|
||||
@Schema(description ="封边颜色" )
|
||||
private String SealColor;
|
||||
|
||||
@Schema(description ="封边尺寸" )
|
||||
private String SealSize;
|
||||
|
||||
}
|
||||
+455
-385
File diff suppressed because it is too large
Load Diff
+98
-49
@@ -53,6 +53,47 @@ public class XmlTypeRealize {
|
||||
@Resource
|
||||
private IdentifierGenerator identifierGenerator;
|
||||
|
||||
// 房间基点坐标转换
|
||||
public Map<String, Map<String, BasePosition>> bodyBasePositionChange(RoomXmlVOS roomXmlVOS) {
|
||||
Map<String, Map<String, BasePosition>> roomInfos = new HashMap<>();
|
||||
if (roomXmlVOS != null && roomXmlVOS.getRoomXmlVOList() != null && roomXmlVOS.getRoomXmlVOList().size() > 0) {
|
||||
Map<String, BasePosition> basePositions = new HashMap<>();
|
||||
for (RoomXmlVO roomXmlVO : roomXmlVOS.getRoomXmlVOList()) {
|
||||
for (BoxXmlVO boxXmlVO : roomXmlVO.getBoxXmlVOList()) {
|
||||
BasePosition basePosition = BasePosition.builder()
|
||||
.basePointX(Double.valueOf(boxXmlVO.getBasePointX()))
|
||||
.basePointY(Double.valueOf(boxXmlVO.getBasePointY()))
|
||||
.basePointZ(Double.valueOf(boxXmlVO.getBasePointZ()))
|
||||
.axisXrotate(Double.valueOf(boxXmlVO.getAxisXrotate()))
|
||||
.axisYrotate(Double.valueOf(boxXmlVO.getAxisYrotate()))
|
||||
.axisZrotate(Double.valueOf(boxXmlVO.getAxisZrotate()))
|
||||
.build();
|
||||
basePositions.put(boxXmlVO.getCode(), basePosition);
|
||||
}
|
||||
roomInfos.put(roomXmlVO.getCode(), basePositions);
|
||||
}
|
||||
}
|
||||
return roomInfos;
|
||||
}
|
||||
|
||||
// 柜体基点坐标转换
|
||||
public Map<String, BasePosition> roomBasePositionChange(RoomXmlVOS roomXmlVOS) {
|
||||
Map<String, BasePosition> basePositions = new HashMap<>();
|
||||
if (roomXmlVOS != null && roomXmlVOS.getRoomXmlVOList() != null && roomXmlVOS.getRoomXmlVOList().size() > 0) {
|
||||
for (RoomXmlVO roomXmlVO : roomXmlVOS.getRoomXmlVOList()) {
|
||||
basePositions.put(roomXmlVO.getCode(), BasePosition.builder()
|
||||
.basePointX(Double.valueOf(roomXmlVO.getBasePointX()))
|
||||
.basePointY(Double.valueOf(roomXmlVO.getBasePointY()))
|
||||
.basePointZ(Double.valueOf(roomXmlVO.getBasePointZ()))
|
||||
.axisXrotate(Double.valueOf(roomXmlVO.getAxisXrotate()))
|
||||
.axisYrotate(Double.valueOf(roomXmlVO.getAxisYrotate()))
|
||||
.axisZrotate(Double.valueOf(roomXmlVO.getAxisZrotate()))
|
||||
.build());
|
||||
}
|
||||
}
|
||||
return basePositions;
|
||||
}
|
||||
|
||||
// 房间柜体信息转换
|
||||
public Map<String, Map<String, OrderBodyDO>> bodyInfoChange(RoomXmlVOS roomXmlVOS, Long orderId, Long organId) {
|
||||
|
||||
@@ -84,29 +125,6 @@ public class XmlTypeRealize {
|
||||
return roomInfos;
|
||||
}
|
||||
|
||||
// 柜体基点坐标转换
|
||||
public Map<String, Map<String, BasePosition>> basePositionChange(RoomXmlVOS roomXmlVOS) {
|
||||
Map<String, Map<String, BasePosition>> roomInfos = new HashMap<>();
|
||||
if (roomXmlVOS != null && roomXmlVOS.getRoomXmlVOList() != null && roomXmlVOS.getRoomXmlVOList().size() > 0) {
|
||||
Map<String, BasePosition> basePositions = new HashMap<>();
|
||||
for (RoomXmlVO roomXmlVO : roomXmlVOS.getRoomXmlVOList()) {
|
||||
for (BoxXmlVO boxXmlVO : roomXmlVO.getBoxXmlVOList()) {
|
||||
BasePosition basePosition = BasePosition.builder()
|
||||
.basePointX(Double.valueOf(boxXmlVO.getBasePointX()))
|
||||
.basePointY(Double.valueOf(boxXmlVO.getBasePointY()))
|
||||
.basePointZ(Double.valueOf(boxXmlVO.getBasePointZ()))
|
||||
.axisXrotate(Double.valueOf(boxXmlVO.getAxisXrotate()))
|
||||
.axisYrotate(Double.valueOf(boxXmlVO.getAxisYrotate()))
|
||||
.axisZrotate(Double.valueOf(boxXmlVO.getAxisZrotate()))
|
||||
.build();
|
||||
basePositions.put(boxXmlVO.getCode(), basePosition);
|
||||
}
|
||||
roomInfos.put(roomXmlVO.getCode(), basePositions);
|
||||
}
|
||||
}
|
||||
return roomInfos;
|
||||
}
|
||||
|
||||
// 加工组信息转换
|
||||
public Map<String, OrderGroupDO> groupInfoChange(GroupXmlVOS groupXmlVOS, Long orderId, Long organId) {
|
||||
Map<String, OrderGroupDO> groupInfos = new HashMap<>();
|
||||
@@ -143,8 +161,10 @@ public class XmlTypeRealize {
|
||||
|
||||
// 房间柜体
|
||||
Map<String, Map<String, OrderBodyDO>> roomInfos = bodyInfoChange(orderXmlVO.getRoomXmlVOS(), orderId, organId); // roomInfos 这个在跟着一起变
|
||||
// 房间柜体基点
|
||||
Map<String, Map<String, BasePosition>> boxBasePositions = basePositionChange(orderXmlVO.getRoomXmlVOS());
|
||||
// 房间基点
|
||||
Map<String, BasePosition> roomBasePositions = roomBasePositionChange(orderXmlVO.getRoomXmlVOS());
|
||||
// 柜体基点
|
||||
Map<String, Map<String, BasePosition>> boxBasePositions = bodyBasePositionChange(orderXmlVO.getRoomXmlVOS());
|
||||
// 加工组
|
||||
Map<String, OrderGroupDO> groupInfos = groupInfoChange(orderXmlVO.getGroupXmlVOS(), orderId, organId); // groupInfos 这个在跟着一起变
|
||||
|
||||
@@ -154,7 +174,7 @@ public class XmlTypeRealize {
|
||||
Map<String, Object> partsDOInfos = new HashMap<>();
|
||||
|
||||
|
||||
if (orderXmlVO.getMaterialXmlVO() != null ){
|
||||
if (orderXmlVO.getMaterialXmlVO() != null) {
|
||||
MaterialXmlVO materialXmlVO = orderXmlVO.getMaterialXmlVO();
|
||||
if (materialXmlVO.getAccessoryXmlVO() != null && materialXmlVO.getAssemblieXmlVOS() != null && materialXmlVO.getPlateXmlVOS() != null) {
|
||||
PlateXmlVOS plateXmlVOS = materialXmlVO.getPlateXmlVOS();
|
||||
@@ -214,7 +234,7 @@ public class XmlTypeRealize {
|
||||
goodsDOs.add(goodsDO);
|
||||
|
||||
// 小板信息
|
||||
plateDetail = plateInfoChange(plateXmlVO.getBlockXmlVOS(), orderId, goodsDO.getId(), organId, roomInfos, groupInfos, partsInfos, itemInfos, plateDOs, boxBasePositions);
|
||||
plateDetail = plateInfoChange(plateXmlVO.getBlockXmlVOS(), orderId, goodsDO.getId(), organId, roomInfos, groupInfos, partsInfos, itemInfos, plateDOs, boxBasePositions, roomBasePositions);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -246,17 +266,17 @@ public class XmlTypeRealize {
|
||||
}
|
||||
|
||||
// id得到
|
||||
private Map<String,Long> getId(String roomNo, String BoxNo, Map<String, Map<String, OrderBodyDO>> roomInfos,
|
||||
String groupNo, Map<String, OrderGroupDO> groupInfos, Double plateNum,
|
||||
Double unregularNum, Long orderId, Long organId) {
|
||||
Map<String,Long> map = new HashMap<>();
|
||||
private Map<String, Long> getId(String roomNo, String BoxNo, Map<String, Map<String, OrderBodyDO>> roomInfos,
|
||||
String groupNo, Map<String, OrderGroupDO> groupInfos, Double plateNum,
|
||||
Double unregularNum, Long orderId, Long organId) {
|
||||
Map<String, Long> map = new HashMap<>();
|
||||
Map<String, OrderBodyDO> bodyMap = roomInfos.get(roomNo);
|
||||
OrderBodyDO bodyDO;
|
||||
if (bodyMap == null){
|
||||
if (bodyMap == null) {
|
||||
bodyMap = new HashMap<>();
|
||||
roomInfos.put(roomNo, bodyMap);
|
||||
}
|
||||
if ( bodyMap.containsKey(BoxNo)) {
|
||||
if (bodyMap.containsKey(BoxNo)) {
|
||||
bodyDO = bodyMap.get(BoxNo);
|
||||
bodyDO.setPlateNum((int) (bodyDO.getPlateNum() + plateNum + unregularNum))
|
||||
.setUnregularNum((int) (bodyDO.getUnregularNum() + unregularNum));
|
||||
@@ -281,7 +301,7 @@ public class XmlTypeRealize {
|
||||
Long roomId = bodyDO.getRoomId();
|
||||
Long bodyId = bodyDO.getId();
|
||||
// 加工组
|
||||
OrderGroupDO orderGroupDO = groupInfos.get(groupNo);
|
||||
OrderGroupDO orderGroupDO = groupInfos.get(groupNo);
|
||||
Long groupId = 0L;
|
||||
if (orderGroupDO != null) {
|
||||
groupId = orderGroupDO.getId();
|
||||
@@ -293,6 +313,7 @@ public class XmlTypeRealize {
|
||||
map.put("groupId", groupId);
|
||||
return map;
|
||||
}
|
||||
|
||||
// 配件信息转换
|
||||
public Map<String, Map<String, Object>> goodsInfoChange(AccessoryXmlVO accessoryXmlVO, AssemblieXmlVOS assemblieXmlVOS, Long orderId, Long organId,
|
||||
Map<String, Map<String, OrderBodyDO>> roomInfos, Map<String, OrderGroupDO> groupInfos) {
|
||||
@@ -305,9 +326,24 @@ public class XmlTypeRealize {
|
||||
if (accessoryXmlVO != null) {
|
||||
if (accessoryXmlVO.getEdgingXmlVOS() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList().size() > 0) {
|
||||
EdgingXmlVOS edgingXmlVOS = accessoryXmlVO.getEdgingXmlVOS();
|
||||
// 以itemCode为条件进行分组,成map
|
||||
Map<String, List<EdgingXmlVO>> edgingMap = edgingXmlVOS.getEdgingXmlVOList().stream().collect(Collectors.groupingBy(EdgingXmlVO::getItemCode));
|
||||
// 遍历map
|
||||
edgingMap.forEach((key, value) -> {
|
||||
if (key == null) { // 没有itemCode
|
||||
Map<String, List<EdgingXmlVO>> edgingMapWithNull = value.stream().collect(Collectors.groupingBy(edgingXmlVO ->
|
||||
edgingXmlVO.getManufacturer() + edgingXmlVO.getBrand() + edgingXmlVO.getName() + edgingXmlVO.getMaterial() +
|
||||
edgingXmlVO.getSpecs() + edgingXmlVO.getColor() + edgingXmlVO.getWidth() + edgingXmlVO.getThickness())) ;
|
||||
|
||||
edgingMapWithNull.forEach((term, list) -> {
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
for (EdgingXmlVO edgingXmlVO : edgingXmlVOS.getEdgingXmlVOList()) {
|
||||
|
||||
Map<String,Long> idMap = getId(edgingXmlVO.getRoomCode(), edgingXmlVO.getBoxCode(), roomInfos, edgingXmlVO.getGroupCode(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||
Map<String, Long> idMap = getId(edgingXmlVO.getRoomCode(), edgingXmlVO.getBoxCode(), roomInfos, edgingXmlVO.getGroupCode(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||
|
||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||
orderPartsMap.put(edgingXmlVO.getItemCode(), OrderPartsAddVO.builder()
|
||||
@@ -368,7 +404,7 @@ public class XmlTypeRealize {
|
||||
HardwareXmlVOS hardwareXmlVOS = accessoryXmlVO.getHardwareXmlVOS();
|
||||
for (HardwareXmlVO hardwareXmlVO : hardwareXmlVOS.getHardwareXmlVOList()) {
|
||||
|
||||
Map<String,Long> idMap = getId(hardwareXmlVO.getRoomCode(), hardwareXmlVO.getBoxCode(), roomInfos, hardwareXmlVO.getGroupCode(), groupInfos, 0.0, 0.0,orderId, organId);
|
||||
Map<String, Long> idMap = getId(hardwareXmlVO.getRoomCode(), hardwareXmlVO.getBoxCode(), roomInfos, hardwareXmlVO.getGroupCode(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||
|
||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||
orderPartsMap.put(hardwareXmlVO.getItemCode(), OrderPartsAddVO.builder()
|
||||
@@ -432,7 +468,7 @@ public class XmlTypeRealize {
|
||||
for (AssemblyXmlVO assemblyXmlVO : assemblieXmlVOS.getAssemblyXmlVOList()) {
|
||||
|
||||
if (assemblyXmlVO != null && assemblyXmlVO.toString().length() > 0) {
|
||||
Map<String,Long> idMap = getId(assemblyXmlVO.getRoomCode(), assemblyXmlVO.getBoxCode(), roomInfos, assemblyXmlVO.getGroupCode(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||
Map<String, Long> idMap = getId(assemblyXmlVO.getRoomCode(), assemblyXmlVO.getBoxCode(), roomInfos, assemblyXmlVO.getGroupCode(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||
|
||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||
orderPartsMap.put(assemblyXmlVO.getItemCode(), OrderPartsAddVO.builder()
|
||||
@@ -499,9 +535,9 @@ public class XmlTypeRealize {
|
||||
}
|
||||
|
||||
public List<Object> plateInfoChange(BlockXmlVOS blockXmlVOS, Long orderId, Long goodsId, Long organId,
|
||||
Map<String, Map<String, OrderBodyDO>> roomInfos, Map<String, OrderGroupDO> groupInfos,
|
||||
Map<String, Map<String, OrderBodyDO>> roomInfos, Map<String, OrderGroupDO> groupInfos,
|
||||
Map<String, Object> partsMap, Map<String, Object> orderItemMap, List<Object> plateDOs,
|
||||
Map<String, Map<String, BasePosition>> boxBasePositionMap) {
|
||||
Map<String, Map<String, BasePosition>> boxBasePositionMap, Map<String, BasePosition> roomBasePositions) {
|
||||
List<Object> plateDetails = new ArrayList<>();
|
||||
|
||||
if (blockXmlVOS != null && blockXmlVOS.getBlockXmlVOList() != null && blockXmlVOS.getBlockXmlVOList().size() > 0) {
|
||||
@@ -510,23 +546,35 @@ public class XmlTypeRealize {
|
||||
long plateNo = idWorker.nextId();
|
||||
long obtainingTime = idWorker.obtainingTime();
|
||||
Long plateId = (Long) identifierGenerator.nextId(null);
|
||||
BigDecimal area = BigDecimal.valueOf((Double.parseDouble(blockXmlVO.getWidth()) / 1000) * (Double.parseDouble(blockXmlVO.getLength()) / 1000) );
|
||||
BigDecimal area = BigDecimal.valueOf((Double.parseDouble(blockXmlVO.getWidth()) / 1000) * (Double.parseDouble(blockXmlVO.getLength()) / 1000));
|
||||
// 开料面积
|
||||
BigDecimal sealAcreage = BigDecimal.valueOf( (Double.parseDouble(blockXmlVO.getCuttingWidth()) / 1000) * ( Double.parseDouble(blockXmlVO.getCuttingLength()) / 1000));
|
||||
BigDecimal sealAcreage = BigDecimal.valueOf((Double.parseDouble(blockXmlVO.getCuttingWidth()) / 1000) * (Double.parseDouble(blockXmlVO.getCuttingLength()) / 1000));
|
||||
// 开门类型获取
|
||||
Integer doorType = Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.DOOR_OPENING_DIRECTIONS, blockXmlVO.getOpenDirection()).getData().getValue());
|
||||
int doorType = Integer.parseInt(dictDataApi.parseDictData(DictTypeConstants.DOOR_OPENING_DIRECTIONS, blockXmlVO.getOpenDirection()).getData().getValue());
|
||||
|
||||
// 板材获取
|
||||
Double plateNum = 0.0;
|
||||
Double unregularNum = 0.0;
|
||||
if (convertToBoolean(blockXmlVO.getUnregular())){
|
||||
double plateNum = 0.0;
|
||||
double unregularNum = 0.0;
|
||||
if (convertToBoolean(blockXmlVO.getUnregular())) {
|
||||
unregularNum = 1.0;
|
||||
}else {
|
||||
} else {
|
||||
plateNum = 1.0;
|
||||
}
|
||||
Map<String,Long> idMap = getId(blockXmlVO.getRoomCode(), blockXmlVO.getBoxCode(), roomInfos, blockXmlVO.getGroupCode(), groupInfos, plateNum, unregularNum, orderId, organId);
|
||||
BasePosition boxBasePoint = boxBasePositionMap.get(blockXmlVO.getRoomCode()).get(blockXmlVO.getBoxCode()).setBasePoint(String.valueOf(idMap.get("bodyId")));
|
||||
Map<String, Long> idMap = getId(blockXmlVO.getRoomCode(), blockXmlVO.getBoxCode(), roomInfos, blockXmlVO.getGroupCode(), groupInfos, plateNum, unregularNum, orderId, organId);
|
||||
// 出错 null
|
||||
// 柜体基点坐标
|
||||
BasePosition boxBasePoint = null;
|
||||
if (boxBasePositionMap.get(blockXmlVO.getRoomCode()) != null){
|
||||
if (boxBasePositionMap.get(blockXmlVO.getRoomCode()).get(blockXmlVO.getBoxCode()) != null){
|
||||
boxBasePoint = boxBasePositionMap.get(blockXmlVO.getRoomCode()).get(blockXmlVO.getBoxCode()).setBasePoint(String.valueOf(idMap.get("bodyId")));
|
||||
}
|
||||
}
|
||||
|
||||
// 房间基点坐标
|
||||
BasePosition roomBasePoint = null;
|
||||
if (roomBasePositions.get(blockXmlVO.getRoomCode()) != null){
|
||||
roomBasePoint = roomBasePositions.get(blockXmlVO.getRoomCode());
|
||||
}
|
||||
PlateDO plateDO = PlateDO.builder()
|
||||
.id(plateId)
|
||||
.organId(organId)
|
||||
@@ -585,6 +633,7 @@ public class XmlTypeRealize {
|
||||
.plateWidth(plateDO.getWidth())
|
||||
.plateLength(plateDO.getHeight())
|
||||
.acreage(plateDO.getArea())
|
||||
.roomBasePosition(roomBasePoint)
|
||||
.bodyBasePosition(boxBasePoint)
|
||||
.plateBasePosition(plateBasePosition)
|
||||
.splitLength(BigDecimal.valueOf(Long.parseLong(blockXmlVO.getCuttingLength())))
|
||||
@@ -662,7 +711,7 @@ public class XmlTypeRealize {
|
||||
Double x = Double.parseDouble(pointXmlVO.getPointX());
|
||||
Double y = Double.parseDouble(pointXmlVO.getPointY());
|
||||
OrderPartsAddVO edging = (OrderPartsAddVO) edgIng.get(pointXmlVO.getItemCode());
|
||||
if (edging != null){
|
||||
if (edging != null) {
|
||||
size = edging.getThickness();
|
||||
}
|
||||
|
||||
|
||||
+1
-4
@@ -73,9 +73,6 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
PlateDO selectOneById(@Param("id") Long id, @Param("organId") Long organId);
|
||||
|
||||
default Boolean isByGoodID(String goodId , Long organId) {
|
||||
if (selectOne(PlateDO::getGoodsId, goodId, PlateDO::getOrganId, organId) != null) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
return selectList(PlateDO::getGoodsId, goodId, PlateDO::getOrganId, organId).size() > 0;
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ public class PlateServiceImpl implements PlateService {
|
||||
getOrganId(BASE_PLATE_UPDATE_PERMISSION, getLoginUser().getId(), updateReqVO.getOrganId()));
|
||||
PlateDO updateObj = BeanUtils.toBean(updateReqVO, PlateDO.class);
|
||||
// 校验板材goods_id是否相同
|
||||
if (!plateMapper.isByGoodID(updateReqVO.getGoodsId(), getLoginUser().getId())) {
|
||||
if (plateMapper.isByGoodID(updateReqVO.getGoodsId(), getLoginUser().getId())) {
|
||||
throw exception(PLATE_GOODS_ID_NOT_SAME);
|
||||
}
|
||||
plateMapper.updateById(updateObj);
|
||||
|
||||
+10
-10
@@ -14,16 +14,16 @@ class MachineServiceImplTest {
|
||||
|
||||
@Resource
|
||||
private MachineService machineService;
|
||||
@Test
|
||||
void create() {
|
||||
OrganContextHolder.setOrganId(1L);
|
||||
for (int i = 0; i < 20; i++) {
|
||||
CuttingSaveReqVO saveReqVO = randomPojo(CuttingSaveReqVO.class);
|
||||
saveReqVO.setId(null);
|
||||
Long aLong = machineService.createCutting(saveReqVO);
|
||||
}
|
||||
|
||||
}
|
||||
// @Test
|
||||
// void create() {
|
||||
// OrganContextHolder.setOrganId(1L);
|
||||
// for (int i = 0; i < 20; i++) {
|
||||
// CuttingSaveReqVO saveReqVO = randomPojo(CuttingSaveReqVO.class);
|
||||
// saveReqVO.setId(null);
|
||||
// Long aLong = machineService.createCutting(saveReqVO);
|
||||
// }
|
||||
//
|
||||
// }
|
||||
|
||||
@Test
|
||||
void update() {
|
||||
|
||||
Reference in New Issue
Block a user