mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
xml导入
This commit is contained in:
+19
@@ -0,0 +1,19 @@
|
|||||||
|
package com.cf.imes.module.executor.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* executor 字典类型的枚举类
|
||||||
|
*/
|
||||||
|
public interface DictTypeConstants {
|
||||||
|
|
||||||
|
// ========== PLATE 模块 ==========
|
||||||
|
String TYPOGRAPHY_TYPE = "typographyType"; // 排版面
|
||||||
|
String GRAIN_TYPE = "grainType";// 小板纹路类型
|
||||||
|
String DOOR_OPENING_DIRECTIONS = "doorOpeningDirections";//开门方向
|
||||||
|
String PLATE_TYPE = "order_plate_type"; // 板类型
|
||||||
|
|
||||||
|
|
||||||
|
// ========== HOLE 模块 ==========
|
||||||
|
String HOLE_FACE = "hole_face";//孔加工面
|
||||||
|
String HOLE_DIR = "hole_direction";// 孔方向
|
||||||
|
String HOLE_TYPE = "hole_type";//孔类型
|
||||||
|
}
|
||||||
+42
-28
@@ -21,6 +21,7 @@ import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.ExcelRe
|
|||||||
import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.OrderPlateImportExcelVO;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.OrderPlateImportExcelVO;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XMLReadUtil;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XMLReadUtil;
|
||||||
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XmlTypeRealize;
|
||||||
import io.swagger.v3.oas.annotations.Parameters;
|
import io.swagger.v3.oas.annotations.Parameters;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springdoc.webmvc.core.RequestService;
|
import org.springdoc.webmvc.core.RequestService;
|
||||||
@@ -92,7 +93,7 @@ public class OrderController {
|
|||||||
private IdentifierGenerator identifierGenerator;
|
private IdentifierGenerator identifierGenerator;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private ThreadPoolTaskExecutor asyncExecutor;
|
private XmlTypeRealize xmlTypeRealize;
|
||||||
|
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@@ -295,6 +296,10 @@ public class OrderController {
|
|||||||
try {
|
try {
|
||||||
List<?> list = null;
|
List<?> list = null;
|
||||||
OrderDO orderDO = new OrderDO();
|
OrderDO orderDO = new OrderDO();
|
||||||
|
OrderXmlVO orderXmlVO = null;
|
||||||
|
|
||||||
|
Map<String, Object> mapOrder = null;
|
||||||
|
String err = "";
|
||||||
|
|
||||||
if (type == 0) { //excel
|
if (type == 0) { //excel
|
||||||
excelReadUtil.setErr(0);
|
excelReadUtil.setErr(0);
|
||||||
@@ -305,42 +310,51 @@ public class OrderController {
|
|||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
list = (List<?>) map.get("plate");
|
list = (List<?>) map.get("plate");
|
||||||
|
mapOrder = (Map<String, Object>) map.get("order");
|
||||||
if (index == null || index == 0) { // 整单导入
|
if (list.size() == 0) {
|
||||||
Map<String, Object> mapOrder = (Map<String, Object>) map.get("order");
|
orderDO.setStatus(OrderStatusEnum.EMPTY.getStatus());
|
||||||
|
} else {
|
||||||
orderDO = ((OrderDO) mapOrder.get("order")).setOrderType(OrderTypeEnum.MAIN_ORDER.getStatus());
|
orderDO.setStatus(OrderStatusEnum.NEW_ORDER.getStatus());
|
||||||
String err = ((String) mapOrder.get("error"));
|
|
||||||
|
|
||||||
if (!orderService.customOrderNoIsExists(orderDO.getCustomOrderNo())) {
|
|
||||||
err += orderDO.getCustomOrderNo() + "-自定义生产单号已存在;";
|
|
||||||
}
|
|
||||||
if (!err.equals("")) {
|
|
||||||
ExcelWriterUtil.writeErr(response, err, orderService.getSavePath() + File.separator + "order_err.xlsx");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (list.size() == 0) {
|
|
||||||
orderDO.setStatus(OrderStatusEnum.EMPTY.getStatus());
|
|
||||||
} else {
|
|
||||||
orderDO.setStatus(OrderStatusEnum.NEW_ORDER.getStatus());
|
|
||||||
}
|
|
||||||
} else { // 板材导入
|
|
||||||
orderDO = orderService.getOrder(orderId);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (type == 1) { // json
|
} else if (type == 1) { // json
|
||||||
|
|
||||||
} else if (type == 2) { // xml
|
} else if (type == 2) { // xml
|
||||||
|
orderXmlVO = (OrderXmlVO) XMLReadUtil.read(file, OrderXmlVO.class);
|
||||||
OrderXmlVO orderXmlVO = (OrderXmlVO) XMLReadUtil.read(file, OrderXmlVO.class);
|
// 数据内容正确判断
|
||||||
|
// if(){
|
||||||
System.out.println("orderXmlVO = " + orderXmlVO);
|
//
|
||||||
|
// }
|
||||||
|
assert orderXmlVO != null;
|
||||||
|
mapOrder = xmlTypeRealize.changeOrder(orderXmlVO, getUserOrganId());
|
||||||
|
if (orderXmlVO.getMaterialXmlVO().getPlateXmlVOS().getPlateXmlVOList().size() == 0) {
|
||||||
|
orderDO.setStatus(OrderStatusEnum.EMPTY.getStatus());
|
||||||
|
} else {
|
||||||
|
orderDO.setStatus(OrderStatusEnum.NEW_ORDER.getStatus());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
orderService.importExcelData(orderDO, list, index);
|
|
||||||
|
|
||||||
|
if (index == null || index == 0) { // 整单导入
|
||||||
|
assert mapOrder != null;
|
||||||
|
orderDO = (OrderDO) mapOrder.get("order");
|
||||||
|
err = ((String) mapOrder.get("error"));
|
||||||
|
orderDO.setOrderType(OrderTypeEnum.MAIN_ORDER.getStatus());
|
||||||
|
if (!orderService.customOrderNoIsExists(orderDO.getCustomOrderNo())) {
|
||||||
|
err += orderDO.getCustomOrderNo() + "-自定义生产单号已存在;";
|
||||||
|
}
|
||||||
|
if (!err.equals("")) {
|
||||||
|
ExcelWriterUtil.writeErr(response, err, orderService.getSavePath() + File.separator + "order_err.xlsx");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else { // 板材导入
|
||||||
|
orderDO = orderService.getOrder(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
|
orderService.importExcelData(orderDO, list, index, orderXmlVO);
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
ExcelWriterUtil.writeErr(response, "系统出现未知错误,请下载模板,按照模板重新上传文件", orderService.getSavePath() + File.separator + "order_err.xlsx");
|
ExcelWriterUtil.writeErr(response, "系统出现未知错误,请下载模板,按照模板重新上传文件,注意编码格式", orderService.getSavePath() + File.separator + "order_err.xlsx");
|
||||||
log.error("导入文件出现异常", e);
|
log.error("导入文件出现异常", e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-5
@@ -1,11 +1,10 @@
|
|||||||
package com.cf.imes.module.executor.dal.dataobject.ordermodel;
|
package com.cf.imes.module.executor.dal.dataobject.ordermodel;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.cf.imes.framework.common.util.json.JsonUtils;
|
|
||||||
import com.cf.imes.framework.es.core.dal.ESDocument;
|
import com.cf.imes.framework.es.core.dal.ESDocument;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.HoleDetail;
|
import com.cf.imes.module.executor.util.deviseData.structure.BasePosition;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.ModelDetail;
|
import com.cf.imes.module.executor.util.deviseData.structure.HoleDetail;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.PointDetail;
|
import com.cf.imes.module.executor.util.deviseData.structure.ModelDetail;
|
||||||
|
import com.cf.imes.module.executor.util.deviseData.structure.PointDetail;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
@@ -32,6 +31,11 @@ public class OrderModelDO extends ESDocument {
|
|||||||
@Schema(description = "小板id")
|
@Schema(description = "小板id")
|
||||||
private Long plateId;
|
private Long plateId;
|
||||||
|
|
||||||
|
@Schema(description = "柜体的基点坐标")
|
||||||
|
private BasePosition bodyBasePosition; // 板件基准点坐标
|
||||||
|
@Schema(description = "板件的基点坐标")
|
||||||
|
private BasePosition plateBasePosition; // 板件基准点坐标
|
||||||
|
|
||||||
@Schema(description = "纹路 纹路(0正纹1可翻转2反纹)")
|
@Schema(description = "纹路 纹路(0正纹1可翻转2反纹)")
|
||||||
private Integer texture;
|
private Integer texture;
|
||||||
@Schema(description = "排版面 排钻类型(0正面1反面2随意面)")
|
@Schema(description = "排版面 排钻类型(0正面1反面2随意面)")
|
||||||
|
|||||||
+2
-8
@@ -9,21 +9,15 @@ import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
|
|||||||
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
|
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
|
||||||
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO;
|
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO;
|
||||||
import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO;
|
import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO;
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
||||||
import com.cf.imes.framework.common.pojo.PageResult;
|
import com.cf.imes.framework.common.pojo.PageResult;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO;
|
||||||
import org.springframework.boot.system.ApplicationHome;
|
import org.springframework.boot.system.ApplicationHome;
|
||||||
import org.springframework.web.context.request.RequestAttributes;
|
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.Collection;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.concurrent.CountDownLatch;
|
|
||||||
import java.util.concurrent.ExecutionException;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生产单表 order_{N} Service 接口
|
* 生产单表 order_{N} Service 接口
|
||||||
@@ -113,7 +107,7 @@ public interface OrderService {
|
|||||||
/**
|
/**
|
||||||
* 文件数据导入
|
* 文件数据导入
|
||||||
*/
|
*/
|
||||||
void importExcelData(OrderDO orderDO, List<?> list, Integer index);
|
void importExcelData(OrderDO orderDO, List<?> list, Integer index, OrderXmlVO orderXmlVO);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生产导入文件模板下载
|
* 生产导入文件模板下载
|
||||||
|
|||||||
+24
-14
@@ -1,7 +1,5 @@
|
|||||||
package com.cf.imes.module.executor.service.order;
|
package com.cf.imes.module.executor.service.order;
|
||||||
|
|
||||||
import cn.smallbun.screw.core.util.CollectionUtils;
|
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
@@ -13,7 +11,6 @@ import com.cf.imes.framework.common.pojo.PageParam;
|
|||||||
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
|
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
||||||
import com.cf.imes.framework.web.core.util.WebFrameworkUtils;
|
|
||||||
import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
|
import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
|
||||||
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
|
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
|
||||||
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO;
|
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO;
|
||||||
@@ -43,11 +40,12 @@ import com.cf.imes.module.executor.dal.mysql.rawgoods.RawGoodsMapper;
|
|||||||
import com.cf.imes.module.executor.enums.OrderDeletedEnum;
|
import com.cf.imes.module.executor.enums.OrderDeletedEnum;
|
||||||
import com.cf.imes.module.executor.enums.OrderStatusEnum;
|
import com.cf.imes.module.executor.enums.OrderStatusEnum;
|
||||||
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.PlateDetail;
|
import com.cf.imes.module.executor.util.deviseData.structure.PlateDetail;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiDataAchieve;
|
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiDataAchieve;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiTypeRealize;
|
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiTypeRealize;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.ExcelTypeRealize;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.ExcelTypeRealize;
|
||||||
import org.springframework.scheduling.annotation.Async;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO;
|
||||||
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XmlTypeRealize;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -68,7 +66,6 @@ import java.time.*;
|
|||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.time.temporal.ChronoUnit;
|
import java.time.temporal.ChronoUnit;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.ExecutionException;
|
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -78,8 +75,6 @@ import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.ge
|
|||||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*;
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
|
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
|
||||||
import org.springframework.web.context.request.RequestAttributes;
|
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生产单表 order_{N} Service 实现类
|
* 生产单表 order_{N} Service 实现类
|
||||||
@@ -144,6 +139,9 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
|
|
||||||
public static final String ORDER_PARTS_REMARK_MODEL = "imes_order_parts_remark_model";
|
public static final String ORDER_PARTS_REMARK_MODEL = "imes_order_parts_remark_model";
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private XmlTypeRealize xmlTypeRealize;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateOrder(OrderSaveReqVO updateReqVO) {
|
public void updateOrder(OrderSaveReqVO updateReqVO) {
|
||||||
// 校验存在, 生产单未删除
|
// 校验存在, 生产单未删除
|
||||||
@@ -425,14 +423,18 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void importExcelData(OrderDO orderDO, List<?> list, Integer index) {
|
public void importExcelData(OrderDO orderDO, List<?> list, Integer index, OrderXmlVO orderXmlVO) {
|
||||||
if (index == null || index == 0) {
|
if (index == null || index == 0) {
|
||||||
orderDO.setId((Long) snowFlakeGenerator.nextId(null));
|
orderDO.setId((Long) snowFlakeGenerator.nextId(null));
|
||||||
orderMapper.insert(orderDO);
|
orderMapper.insert(orderDO);
|
||||||
}
|
}
|
||||||
|
Map<String, List<?>> listMap = null;
|
||||||
|
|
||||||
if (list.size() > 0) {
|
if (list != null && list.size() > 0) {
|
||||||
Map<String, List<?>> listMap = excelTypeRealize.changeDate(list, orderDO.getId());
|
listMap = excelTypeRealize.changeDate(list, orderDO.getId());
|
||||||
|
} else if (orderXmlVO != null) {
|
||||||
|
listMap = xmlTypeRealize.goodsInfoChange(orderXmlVO, orderDO.getId(), getUserOrganId());
|
||||||
|
}
|
||||||
List<RawGoodsDO> rawGoodsDO = (List<RawGoodsDO>) listMap.get("rawGoodsDOS");
|
List<RawGoodsDO> rawGoodsDO = (List<RawGoodsDO>) listMap.get("rawGoodsDOS");
|
||||||
List<GoodsDO> goodsDO = (List<GoodsDO>) listMap.get("goodsDOS");
|
List<GoodsDO> goodsDO = (List<GoodsDO>) listMap.get("goodsDOS");
|
||||||
|
|
||||||
@@ -443,6 +445,7 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
List<OrderItemDO> itemDO = (List<OrderItemDO>) listMap.get("orderItemDOS");
|
List<OrderItemDO> itemDO = (List<OrderItemDO>) listMap.get("orderItemDOS");
|
||||||
List<OrderModelDO> orderModelDOS = (List<OrderModelDO>) listMap.get("orderModelDOS");
|
List<OrderModelDO> orderModelDOS = (List<OrderModelDO>) listMap.get("orderModelDOS");
|
||||||
List<OrderPartsRemark> orderPartsRemarks = (List<OrderPartsRemark>) listMap.get("orderPartsRemarks");
|
List<OrderPartsRemark> orderPartsRemarks = (List<OrderPartsRemark>) listMap.get("orderPartsRemarks");
|
||||||
|
List<PlateDetail> plateDetail = (List<PlateDetail>) listMap.get("plateDetail");
|
||||||
// 板材库匹配
|
// 板材库匹配
|
||||||
Map<String, List<?>> map = getPlateGoods(goodsDO);// 检验商品板材信息是否存在 excel
|
Map<String, List<?>> map = getPlateGoods(goodsDO);// 检验商品板材信息是否存在 excel
|
||||||
goodsDO = (List<GoodsDO>) map.get("goodsDO");
|
goodsDO = (List<GoodsDO>) map.get("goodsDO");
|
||||||
@@ -465,13 +468,20 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS);
|
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS);
|
||||||
if (orderModelDOS.size() > 0) {
|
if (orderModelDOS != null && orderModelDOS.size() > 0) {
|
||||||
orderInputProcessor.batchSaveModel(orderModelDOS);
|
orderInputProcessor.batchSaveModel(orderModelDOS);
|
||||||
}
|
}
|
||||||
if (orderPartsRemarks.size() > 0) {
|
if (plateDetail != null){
|
||||||
|
List<OrderModelDO> orderModelDOs = BeanUtils.toBean(plateDetail, OrderModelDO.class);
|
||||||
|
if (orderModelDOs.size() > 0) {
|
||||||
|
orderModelDOs.forEach(orderModelDO -> orderModelDO.setOrderId(orderDO.getId()));
|
||||||
|
orderInputProcessor.batchSaveModel(orderModelDOs);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (orderPartsRemarks != null && orderPartsRemarks.size() > 0) {
|
||||||
orderInputProcessor.batchSaveOrderPartsModel(orderPartsRemarks);
|
orderInputProcessor.batchSaveOrderPartsModel(orderPartsRemarks);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+7
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
@@ -21,4 +21,10 @@ public class BasePosition {
|
|||||||
|
|
||||||
private String basePointZ;// 基准点Z坐标
|
private String basePointZ;// 基准点Z坐标
|
||||||
|
|
||||||
|
private String axisXrotate;// 绕X轴旋转角度
|
||||||
|
|
||||||
|
private String axisYrotate;// 绕Y轴旋转角度
|
||||||
|
|
||||||
|
private String axisZrotate;// 绕Z轴旋转角度
|
||||||
|
|
||||||
}
|
}
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import com.cf.imes.module.executor.controller.admin.plan.dto.Point;
|
import com.cf.imes.module.executor.controller.admin.plan.dto.Point;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
+1
-2
@@ -1,11 +1,10 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import lombok.experimental.Accessors;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
+3
-4
@@ -1,7 +1,5 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.cf.imes.framework.es.core.dal.ESDocument;
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -90,7 +88,8 @@ public class PlateDetail{
|
|||||||
private Boolean has3DModel; // 是否有三维刀路
|
private Boolean has3DModel; // 是否有三维刀路
|
||||||
|
|
||||||
// 轮廓数据、造型数据
|
// 轮廓数据、造型数据
|
||||||
|
private BasePosition bodyBasePosition; // 柜体基准点坐标
|
||||||
|
private BasePosition plateBasePosition; // 板件基准点坐标
|
||||||
private List<PointDetail> pointDetail ; //点明细,表示小板外围轮廓的几个转折点(不含封边)
|
private List<PointDetail> pointDetail ; //点明细,表示小板外围轮廓的几个转折点(不含封边)
|
||||||
private List<PointDetail> rawPointDetail ; //原始点明细(含封边)
|
private List<PointDetail> rawPointDetail ; //原始点明细(含封边)
|
||||||
|
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.cf.imes.module.executor.util.deviseData.dataTwo;
|
package com.cf.imes.module.executor.util.deviseData.structure;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
+2
-4
@@ -1,6 +1,5 @@
|
|||||||
package com.cf.imes.module.executor.util.fileConversion.admin.api.webcad;
|
package com.cf.imes.module.executor.util.fileConversion.admin.api.webcad;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
|
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
|
||||||
@@ -15,7 +14,7 @@ import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
|||||||
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
|
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
|
||||||
import com.cf.imes.module.executor.enums.*;
|
import com.cf.imes.module.executor.enums.*;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.*;
|
import com.cf.imes.module.executor.util.deviseData.structure.*;
|
||||||
import com.cf.imes.module.system.api.dict.DictDataApi;
|
import com.cf.imes.module.system.api.dict.DictDataApi;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
@@ -24,7 +23,6 @@ import javax.annotation.Resource;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.time.temporal.ChronoUnit;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -560,7 +558,7 @@ public class ApiTypeRealize {
|
|||||||
|
|
||||||
JSONObject plate = plateLists.getJSONObject(i);
|
JSONObject plate = plateLists.getJSONObject(i);
|
||||||
|
|
||||||
Integer type = Integer.valueOf(dictDataApi.parseDictData("order_plate_type",
|
Integer type = Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.PLATE_TYPE,
|
||||||
plate.getString("BoardType"))
|
plate.getString("BoardType"))
|
||||||
.getData().getValue());
|
.getData().getValue());
|
||||||
Long plateId = (Long) identifierGenerator.nextId(null);
|
Long plateId = (Long) identifierGenerator.nextId(null);
|
||||||
|
|||||||
+3
-2
@@ -7,10 +7,11 @@ import com.alibaba.fastjson.JSONArray;
|
|||||||
import com.alibaba.nacos.common.utils.StringUtils;
|
import com.alibaba.nacos.common.utils.StringUtils;
|
||||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
||||||
|
import com.cf.imes.module.executor.enums.DataTypeEnum;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.ToolUtil;
|
import com.cf.imes.module.executor.util.fileConversion.admin.ToolUtil;
|
||||||
import com.cf.imes.module.system.api.dict.DictDataApi;
|
import com.cf.imes.module.system.api.dict.DictDataApi;
|
||||||
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
|
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
|
||||||
import com.cf.imes.module.system.enums.DictTypeConstants;
|
import com.cf.imes.module.executor.enums.DictTypeConstants;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
@@ -111,7 +112,7 @@ public class ExcelReadUtil { // 文件读取
|
|||||||
}
|
}
|
||||||
OrderDO orderDO = OrderDO.builder()
|
OrderDO orderDO = OrderDO.builder()
|
||||||
.organId(OrganContextHolder.getOrganId())
|
.organId(OrganContextHolder.getOrganId())
|
||||||
.dataType(0)
|
.dataType(DataTypeEnum.FILE_IMPORT.getStatus())
|
||||||
.orderDate(LocalDateTime.now())
|
.orderDate(LocalDateTime.now())
|
||||||
.customer((String) orderMap.get("客户")) //
|
.customer((String) orderMap.get("客户")) //
|
||||||
.customOrderNo((String) orderMap.get("自定义单号"))
|
.customOrderNo((String) orderMap.get("自定义单号"))
|
||||||
|
|||||||
+1
-2
@@ -19,8 +19,7 @@ import com.cf.imes.module.executor.enums.OrderItemTypeEnum;
|
|||||||
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
||||||
import com.cf.imes.module.system.api.dict.DictDataApi;
|
import com.cf.imes.module.system.api.dict.DictDataApi;
|
||||||
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
|
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
|
||||||
import com.cf.imes.module.system.enums.DictTypeConstants;
|
import com.cf.imes.module.executor.enums.DictTypeConstants;
|
||||||
import io.swagger.v3.oas.models.security.SecurityScheme;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
|||||||
+13
-4
@@ -4,10 +4,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import javax.xml.bind.annotation.*;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlAttribute;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@@ -74,6 +71,10 @@ public class AssemblyXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "unit")
|
@XmlAttribute(name = "unit")
|
||||||
private String unit;
|
private String unit;
|
||||||
|
|
||||||
|
// 数量单位
|
||||||
|
@XmlAttribute(name = "unitCount")
|
||||||
|
private String unitCount;
|
||||||
|
|
||||||
// 仓库
|
// 仓库
|
||||||
@XmlAttribute(name = "warehouse")
|
@XmlAttribute(name = "warehouse")
|
||||||
private String warehouse;
|
private String warehouse;
|
||||||
@@ -97,4 +98,12 @@ public class AssemblyXmlVO implements Serializable {
|
|||||||
// 模块ID
|
// 模块ID
|
||||||
@XmlAttribute(name = "moduleId")
|
@XmlAttribute(name = "moduleId")
|
||||||
private String moduleId;
|
private String moduleId;
|
||||||
|
|
||||||
|
// 父ID
|
||||||
|
@XmlAttribute(name = "parentId")
|
||||||
|
private String parentId;
|
||||||
|
|
||||||
|
// 备注
|
||||||
|
@XmlElement(name = "Remarks")
|
||||||
|
private RemarkXmlVOS remarkXmlVOS;
|
||||||
}
|
}
|
||||||
|
|||||||
+24
@@ -127,6 +127,30 @@ public class BlockXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "moduleId")
|
@XmlAttribute(name = "moduleId")
|
||||||
private String moduleId;
|
private String moduleId;
|
||||||
|
|
||||||
|
// 基点X坐标
|
||||||
|
@XmlAttribute(name = "basePointX")
|
||||||
|
private String basePointX;
|
||||||
|
|
||||||
|
// 基点Y坐标
|
||||||
|
@XmlAttribute(name = "basePointY")
|
||||||
|
private String basePointY;
|
||||||
|
|
||||||
|
// 基点Z坐标
|
||||||
|
@XmlAttribute(name = "basePointZ")
|
||||||
|
private String basePointZ;
|
||||||
|
|
||||||
|
// 绕X轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisXrotate")
|
||||||
|
private String axisXrotate;
|
||||||
|
|
||||||
|
// 绕Y轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisYrotate")
|
||||||
|
private String axisYrotate;
|
||||||
|
|
||||||
|
// 绕Z轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisZrotate")
|
||||||
|
private String axisZrotate;
|
||||||
|
|
||||||
// 成品(设计成型/已封边/贴皮或涂装的板件)轮廓信息
|
// 成品(设计成型/已封边/贴皮或涂装的板件)轮廓信息
|
||||||
@XmlElement(name = "Outline")
|
@XmlElement(name = "Outline")
|
||||||
private OutlineXmlVO outlineXmlVO ;
|
private OutlineXmlVO outlineXmlVO ;
|
||||||
|
|||||||
+24
@@ -41,4 +41,28 @@ public class BoxXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "length")
|
@XmlAttribute(name = "length")
|
||||||
private String length;
|
private String length;
|
||||||
|
|
||||||
|
// 基点X坐标
|
||||||
|
@XmlAttribute(name = "basePointX")
|
||||||
|
private String basePointX;
|
||||||
|
|
||||||
|
// 基点Y坐标
|
||||||
|
@XmlAttribute(name = "basePointY")
|
||||||
|
private String basePointY;
|
||||||
|
|
||||||
|
// 基点Z坐标
|
||||||
|
@XmlAttribute(name = "basePointZ")
|
||||||
|
private String basePointZ;
|
||||||
|
|
||||||
|
// 绕X轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisXrotate")
|
||||||
|
private String axisXrotate;
|
||||||
|
|
||||||
|
// 绕Y轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisYrotate")
|
||||||
|
private String axisYrotate;
|
||||||
|
|
||||||
|
// 绕Z轴旋转角度
|
||||||
|
@XmlAttribute(name = "axisZrotate")
|
||||||
|
private String axisZrotate;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+13
-4
@@ -4,10 +4,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import javax.xml.bind.annotation.*;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlAttribute;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@@ -78,6 +75,10 @@ public class EdgingXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "count")
|
@XmlAttribute(name = "count")
|
||||||
private String count;
|
private String count;
|
||||||
|
|
||||||
|
// 数量单位(默认m米)
|
||||||
|
@XmlAttribute(name = "unitCount")
|
||||||
|
private String unitCount;
|
||||||
|
|
||||||
// 房间ID
|
// 房间ID
|
||||||
@XmlAttribute(name = "roomId")
|
@XmlAttribute(name = "roomId")
|
||||||
private String roomId;
|
private String roomId;
|
||||||
@@ -93,4 +94,12 @@ public class EdgingXmlVO implements Serializable {
|
|||||||
// 模块ID
|
// 模块ID
|
||||||
@XmlAttribute(name = "moduleId")
|
@XmlAttribute(name = "moduleId")
|
||||||
private String moduleId;
|
private String moduleId;
|
||||||
|
|
||||||
|
// 父ID
|
||||||
|
@XmlAttribute(name = "parentId")
|
||||||
|
private String parentId;
|
||||||
|
|
||||||
|
// 备注
|
||||||
|
@XmlElement(name = "Remarks")
|
||||||
|
private RemarkXmlVOS remarkXmlVOS;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-4
@@ -13,7 +13,7 @@ import java.io.Serializable;
|
|||||||
@Data
|
@Data
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@XmlRootElement(name = "Box")
|
@XmlRootElement(name = "Group")
|
||||||
@XmlAccessorType(XmlAccessType.FIELD)
|
@XmlAccessorType(XmlAccessType.FIELD)
|
||||||
public class GroupXmlVO implements Serializable {
|
public class GroupXmlVO implements Serializable {
|
||||||
|
|
||||||
@@ -41,7 +41,4 @@ public class GroupXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "length")
|
@XmlAttribute(name = "length")
|
||||||
private String length;
|
private String length;
|
||||||
|
|
||||||
// 加工组数量
|
|
||||||
@XmlAttribute(name = "count")
|
|
||||||
private String count;
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -21,6 +21,6 @@ public class GroupXmlVOS implements Serializable {
|
|||||||
private String count;
|
private String count;
|
||||||
|
|
||||||
// 房间
|
// 房间
|
||||||
@XmlElement(name = "Room")
|
@XmlElement(name = "Group")
|
||||||
private List<GroupXmlVO> groupXmlVOList;
|
private List<GroupXmlVO> groupXmlVOList;
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-4
@@ -4,10 +4,7 @@ import lombok.AllArgsConstructor;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import javax.xml.bind.annotation.*;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
|
||||||
import javax.xml.bind.annotation.XmlAttribute;
|
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@@ -74,6 +71,10 @@ public class HardwareXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "unit")
|
@XmlAttribute(name = "unit")
|
||||||
private String unit;
|
private String unit;
|
||||||
|
|
||||||
|
// 数量单位
|
||||||
|
@XmlAttribute(name = "unitCount")
|
||||||
|
private String unitCount;
|
||||||
|
|
||||||
// 仓库
|
// 仓库
|
||||||
@XmlAttribute(name = "warehouse")
|
@XmlAttribute(name = "warehouse")
|
||||||
private String warehouse;
|
private String warehouse;
|
||||||
@@ -98,4 +99,11 @@ public class HardwareXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "moduleId")
|
@XmlAttribute(name = "moduleId")
|
||||||
private String moduleId;
|
private String moduleId;
|
||||||
|
|
||||||
|
// 父ID
|
||||||
|
@XmlAttribute(name = "parentId")
|
||||||
|
private String parentId;
|
||||||
|
|
||||||
|
// 备注
|
||||||
|
@XmlElement(name = "Remarks")
|
||||||
|
private RemarkXmlVOS remarkXmlVOS;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -30,7 +30,7 @@ public class HoleXmlVO implements Serializable {
|
|||||||
@XmlAttribute(name = "face")
|
@XmlAttribute(name = "face")
|
||||||
private String face;
|
private String face;
|
||||||
|
|
||||||
// 方向——向后Z-、向前Z+、向右X+、向左X-、向下Y-、向上Y+、斜O
|
// 方向——向后Z-、向前Z+、向右X+、向左X-、向下Y-、向上Y+、斜O 孔加工面
|
||||||
@XmlAttribute(name = "direction")
|
@XmlAttribute(name = "direction")
|
||||||
private String direction;
|
private String direction;
|
||||||
|
|
||||||
|
|||||||
+6
-10
@@ -14,32 +14,28 @@ import java.io.Serializable;
|
|||||||
@XmlAccessorType(XmlAccessType.FIELD)
|
@XmlAccessorType(XmlAccessType.FIELD)
|
||||||
public class ModuleXmlVO implements Serializable {
|
public class ModuleXmlVO implements Serializable {
|
||||||
|
|
||||||
// 房间ID
|
// 模块ID
|
||||||
@XmlAttribute(name = "id")
|
@XmlAttribute(name = "id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
// 房间名称
|
// 模块名称
|
||||||
@XmlAttribute(name = "name")
|
@XmlAttribute(name = "name")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
// 房间编号
|
// 模块编号
|
||||||
@XmlAttribute(name = "code")
|
@XmlAttribute(name = "code")
|
||||||
private String code;
|
private String code;
|
||||||
|
|
||||||
// 房间高度
|
// 模块高度
|
||||||
@XmlAttribute(name = "height")
|
@XmlAttribute(name = "height")
|
||||||
private String height;
|
private String height;
|
||||||
|
|
||||||
// 房间宽度
|
// 模块宽度
|
||||||
@XmlAttribute(name = "width")
|
@XmlAttribute(name = "width")
|
||||||
private String width;
|
private String width;
|
||||||
|
|
||||||
// 房间长度
|
// 模块长度
|
||||||
@XmlAttribute(name = "length")
|
@XmlAttribute(name = "length")
|
||||||
private String length;
|
private String length;
|
||||||
|
|
||||||
// 房间数量
|
|
||||||
@XmlAttribute(name = "count")
|
|
||||||
private String count;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -20,6 +20,6 @@ public class ModuleXmlVOS implements Serializable {
|
|||||||
private String count;
|
private String count;
|
||||||
|
|
||||||
// 房间
|
// 房间
|
||||||
@XmlElement(name = "Room")
|
@XmlElement(name = "Module")
|
||||||
private List<ModuleXmlVO> moduleXmlVOList;
|
private List<ModuleXmlVO> moduleXmlVOList;
|
||||||
}
|
}
|
||||||
|
|||||||
+83
-1
@@ -1,6 +1,8 @@
|
|||||||
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml;
|
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.cf.imes.module.executor.util.fileConversion.admin.ToolUtil;
|
||||||
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.*;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
@@ -11,6 +13,9 @@ import java.nio.charset.StandardCharsets;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
public class XMLReadUtil {
|
public class XMLReadUtil {
|
||||||
|
|
||||||
|
final String TYPE_ERR = "数据类型错误";
|
||||||
|
|
||||||
public static Object read(MultipartFile file, Class<?> clazz) throws IOException {
|
public static Object read(MultipartFile file, Class<?> clazz) throws IOException {
|
||||||
|
|
||||||
|
|
||||||
@@ -33,7 +38,6 @@ public class XMLReadUtil {
|
|||||||
|
|
||||||
// XML转为JAVA对象
|
// XML转为JAVA对象
|
||||||
Object odfBody = XmlBuilder.xmlStrToOject(clazz, builder.toString());
|
Object odfBody = XmlBuilder.xmlStrToOject(clazz, builder.toString());
|
||||||
System.out.println(" odfBody " + JSON.toJSONString(odfBody));
|
|
||||||
|
|
||||||
return odfBody;
|
return odfBody;
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -44,4 +48,82 @@ public class XMLReadUtil {
|
|||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 数据格式转换
|
||||||
|
public Boolean checkVO(OrderXmlVO orderXmlVO) {
|
||||||
|
Boolean flag = true;
|
||||||
|
|
||||||
|
RoomXmlVOS roomXmlVOS = orderXmlVO.getRoomXmlVOS();
|
||||||
|
if ( roomXmlVOS != null ) {
|
||||||
|
for ( RoomXmlVO room : roomXmlVOS.getRoomXmlVOList() ) {
|
||||||
|
if (room != null){
|
||||||
|
if (!ToolUtil.convertToType(room.getHeight(), Double.class)){
|
||||||
|
room.setHeight(room.getHeight() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(room.getLength(), Double.class)){
|
||||||
|
room.setLength(room.getLength() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(room.getWidth(), Double.class)){
|
||||||
|
room.setWidth(room.getWidth() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(room.getCount(), Integer.class)){
|
||||||
|
room.setCount(room.getCount() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (room.getBoxXmlVOList() != null){
|
||||||
|
for (BoxXmlVO box : room.getBoxXmlVOList()) {
|
||||||
|
if (box != null){
|
||||||
|
if (!ToolUtil.convertToType(box.getHeight(), Double.class)){
|
||||||
|
box.setHeight(box.getHeight() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(box.getLength(), Double.class)){
|
||||||
|
box.setLength(box.getLength() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(box.getWidth(), Double.class)){
|
||||||
|
box.setWidth(box.getWidth() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ModuleXmlVOS moduleXmlVOS = orderXmlVO.getModuleXmlVOS();
|
||||||
|
if ( moduleXmlVOS != null ) {
|
||||||
|
for ( ModuleXmlVO module : moduleXmlVOS.getModuleXmlVOList() ) {
|
||||||
|
if (module != null){
|
||||||
|
if (!ToolUtil.convertToType(module.getHeight(), Double.class)){
|
||||||
|
module.setHeight(module.getHeight() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(module.getLength(), Double.class)){
|
||||||
|
module.setLength(module.getLength() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(module.getWidth(), Double.class)){
|
||||||
|
module.setWidth(module.getWidth() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
GroupXmlVOS grooveXmlVOS = orderXmlVO.getGroupXmlVOS();
|
||||||
|
if ( grooveXmlVOS != null ) {
|
||||||
|
for ( GroupXmlVO groove : grooveXmlVOS.getGroupXmlVOList() ) {
|
||||||
|
if (groove != null){
|
||||||
|
if (!ToolUtil.convertToType(groove.getHeight(), Double.class)){
|
||||||
|
groove.setHeight(groove.getHeight() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(groove.getLength(), Double.class)){
|
||||||
|
groove.setLength(groove.getLength() + "-"+ TYPE_ERR);
|
||||||
|
}
|
||||||
|
if (!ToolUtil.convertToType(groove.getWidth(), Double.class)){
|
||||||
|
groove.setWidth(groove.getWidth() + "-" + TYPE_ERR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+270
-117
@@ -3,7 +3,7 @@ package com.cf.imes.module.executor.util.fileConversion.admin.files.xml;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
|
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
|
||||||
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
|
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
|
||||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRemark;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO;
|
import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO;
|
||||||
@@ -12,27 +12,28 @@ import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
|
|||||||
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
||||||
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
|
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
|
||||||
import com.cf.imes.module.executor.util.deviseData.dataTwo.*;
|
import com.cf.imes.module.executor.enums.DataTypeEnum;
|
||||||
|
import com.cf.imes.module.executor.util.deviseData.structure.*;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
import com.cf.imes.module.executor.util.fileConversion.admin.SnowflakeIdWorker3rd;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.ToolUtil;
|
import com.cf.imes.module.executor.util.fileConversion.admin.ToolUtil;
|
||||||
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.*;
|
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.*;
|
||||||
import com.cf.imes.module.system.api.dict.DictDataApi;
|
import com.cf.imes.module.system.api.dict.DictDataApi;
|
||||||
|
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
|
||||||
|
import com.cf.imes.module.executor.enums.DictTypeConstants;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.time.format.DateTimeParseException;
|
|
||||||
import java.time.temporal.ChronoUnit;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static com.cf.imes.module.system.enums.DictTypeConstants.*;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 实现数据格式转换
|
* 实现数据格式转换
|
||||||
@@ -42,9 +43,6 @@ import static com.cf.imes.module.system.enums.DictTypeConstants.*;
|
|||||||
@Component
|
@Component
|
||||||
public class XmlTypeRealize {
|
public class XmlTypeRealize {
|
||||||
|
|
||||||
@Resource
|
|
||||||
private SnowFlakeGenerator snowFlakeGenerator;
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
SnowflakeIdWorker3rd idWorker;
|
SnowflakeIdWorker3rd idWorker;
|
||||||
|
|
||||||
@@ -53,10 +51,6 @@ public class XmlTypeRealize {
|
|||||||
|
|
||||||
final String NOT_ASSIGNED = "未命名";
|
final String NOT_ASSIGNED = "未命名";
|
||||||
|
|
||||||
final String NOT_ROOM = "无房间";
|
|
||||||
|
|
||||||
final String NOT_BODY = "无柜体";
|
|
||||||
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private IdentifierGenerator identifierGenerator;
|
private IdentifierGenerator identifierGenerator;
|
||||||
@@ -72,7 +66,7 @@ public class XmlTypeRealize {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 生产单转换
|
// 生产单转换
|
||||||
public Map<String, Object> changeOrder(OrderXmlVO orderXmlVO, Long orderId, Long organId) {
|
public Map<String, Object> changeOrder(OrderXmlVO orderXmlVO, Long organId) {
|
||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
String error = "";
|
String error = "";
|
||||||
|
|
||||||
@@ -98,15 +92,14 @@ public class XmlTypeRealize {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
OrderDO orderDO = OrderDO.builder()
|
OrderDO orderDO = OrderDO.builder()
|
||||||
.id(orderId)
|
|
||||||
.organId(organId)
|
.organId(organId)
|
||||||
.dataType(0)
|
.dataType(DataTypeEnum.FILE_IMPORT.getStatus())
|
||||||
.customer(orderXmlVO.getCustomer()) //
|
.customer(orderXmlVO.getCustomer())
|
||||||
.customOrderNo(orderXmlVO.getCustomOrderNo())
|
.customOrderNo(orderXmlVO.getCustomOrderNo())
|
||||||
.dealer(orderXmlVO.getDealer()) //
|
.dealer(orderXmlVO.getDealer())
|
||||||
.dealerPhoneNumber(orderXmlVO.getDealerPhone())
|
.dealerPhoneNumber(orderXmlVO.getDealerPhone())
|
||||||
.address(orderXmlVO.getCustomerAddress()) //
|
.address(orderXmlVO.getCustomerAddress())
|
||||||
.phoneNumber(orderXmlVO.getCustomerPhone()) //
|
.phoneNumber(orderXmlVO.getCustomerPhone())
|
||||||
.salesman(orderXmlVO.getSeller())
|
.salesman(orderXmlVO.getSeller())
|
||||||
.splitter(orderXmlVO.getAnalyst())
|
.splitter(orderXmlVO.getAnalyst())
|
||||||
.remark(orderXmlVO.getMemo())
|
.remark(orderXmlVO.getMemo())
|
||||||
@@ -143,11 +136,12 @@ public class XmlTypeRealize {
|
|||||||
|
|
||||||
Map<String, Map<String, OrderBodyDO>> roomInfos = new HashMap<>();
|
Map<String, Map<String, OrderBodyDO>> roomInfos = new HashMap<>();
|
||||||
if (roomXmlVOS != null && roomXmlVOS.getRoomXmlVOList() != null && roomXmlVOS.getRoomXmlVOList().size() > 0) {
|
if (roomXmlVOS != null && roomXmlVOS.getRoomXmlVOList() != null && roomXmlVOS.getRoomXmlVOList().size() > 0) {
|
||||||
Map<String, OrderBodyDO> bodyInfos = new HashMap<>();
|
|
||||||
for (RoomXmlVO roomXmlVO : roomXmlVOS.getRoomXmlVOList()) {
|
for (RoomXmlVO roomXmlVO : roomXmlVOS.getRoomXmlVOList()) {
|
||||||
|
Map<String, OrderBodyDO> bodyInfos = new HashMap<>();
|
||||||
Long roomId = Long.valueOf(roomXmlVO.getId());
|
Long roomId = Long.valueOf(roomXmlVO.getId());
|
||||||
for (BoxXmlVO boxXmlVO : roomXmlVO.getBoxXmlVOList()) {
|
for (BoxXmlVO boxXmlVO : roomXmlVO.getBoxXmlVOList()) {
|
||||||
bodyInfos.put(boxXmlVO.getId(), OrderBodyDO.builder()
|
OrderBodyDO orderBodyDO = OrderBodyDO.builder()
|
||||||
.id((Long) identifierGenerator.nextId(null))
|
.id((Long) identifierGenerator.nextId(null))
|
||||||
.organId(organId)
|
.organId(organId)
|
||||||
.orderId(orderId)
|
.orderId(orderId)
|
||||||
@@ -157,7 +151,10 @@ public class XmlTypeRealize {
|
|||||||
.width(Double.parseDouble(boxXmlVO.getWidth()))
|
.width(Double.parseDouble(boxXmlVO.getWidth()))
|
||||||
.height(Double.parseDouble(boxXmlVO.getHeight()))
|
.height(Double.parseDouble(boxXmlVO.getHeight()))
|
||||||
.depth(Double.parseDouble(boxXmlVO.getLength()))
|
.depth(Double.parseDouble(boxXmlVO.getLength()))
|
||||||
.build());
|
.plateNum(0)
|
||||||
|
.unregularNum(0)
|
||||||
|
.build();
|
||||||
|
bodyInfos.put(boxXmlVO.getId(), orderBodyDO);
|
||||||
}
|
}
|
||||||
roomInfos.put(roomXmlVO.getId(), bodyInfos);
|
roomInfos.put(roomXmlVO.getId(), bodyInfos);
|
||||||
}
|
}
|
||||||
@@ -165,44 +162,75 @@ public class XmlTypeRealize {
|
|||||||
return roomInfos;
|
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(boxXmlVO.getBasePointX())
|
||||||
|
.basePointY(boxXmlVO.getBasePointY())
|
||||||
|
.basePointZ(boxXmlVO.getBasePointZ())
|
||||||
|
.axisXrotate(boxXmlVO.getAxisXrotate())
|
||||||
|
.axisYrotate(boxXmlVO.getAxisYrotate())
|
||||||
|
.axisZrotate(boxXmlVO.getAxisZrotate())
|
||||||
|
.build();
|
||||||
|
basePositions.put(boxXmlVO.getId(), basePosition);
|
||||||
|
}
|
||||||
|
roomInfos.put(roomXmlVO.getId(), basePositions);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return roomInfos;
|
||||||
|
}
|
||||||
|
|
||||||
// 加工组信息转换
|
// 加工组信息转换
|
||||||
public Map<String, OrderGroupDO> groupInfoChange(GroupXmlVOS groupXmlVOS, Long orderId, Long organId) {
|
public Map<String, OrderGroupDO> groupInfoChange(GroupXmlVOS groupXmlVOS, Long orderId, Long organId) {
|
||||||
Map<String, OrderGroupDO> groupInfos = new HashMap<>();
|
Map<String, OrderGroupDO> groupInfos = new HashMap<>();
|
||||||
if (groupXmlVOS != null && groupXmlVOS.getGroupXmlVOList() != null && groupXmlVOS.getGroupXmlVOList().size() > 0) {
|
if (groupXmlVOS != null && groupXmlVOS.getGroupXmlVOList() != null && groupXmlVOS.getGroupXmlVOList().size() > 0) {
|
||||||
for (GroupXmlVO groupXmlVO : groupXmlVOS.getGroupXmlVOList()) {
|
for (GroupXmlVO groupXmlVO : groupXmlVOS.getGroupXmlVOList()) {
|
||||||
groupInfos.put(groupXmlVO.getId(), OrderGroupDO.builder()
|
OrderGroupDO groupDO = OrderGroupDO.builder()
|
||||||
.id((Long) identifierGenerator.nextId(null))
|
.id((Long) identifierGenerator.nextId(null))
|
||||||
.organId(organId)
|
.organId(organId)
|
||||||
.orderId(orderId)
|
.orderId(orderId)
|
||||||
|
.bodyId(0L)
|
||||||
|
.groupTypeId(0L)
|
||||||
.name(groupXmlVO.getName())
|
.name(groupXmlVO.getName())
|
||||||
.height(Double.parseDouble(groupXmlVO.getHeight()))
|
.height(Double.parseDouble(groupXmlVO.getHeight()))
|
||||||
.width(Double.parseDouble(groupXmlVO.getWidth()))
|
.width(Double.parseDouble(groupXmlVO.getWidth()))
|
||||||
.depth(Double.parseDouble(groupXmlVO.getLength()))
|
.depth(Double.parseDouble(groupXmlVO.getLength()))
|
||||||
.build());
|
.plateNum(0)
|
||||||
|
.unregularNum(0)
|
||||||
|
.build();
|
||||||
|
groupInfos.put(groupXmlVO.getId(), groupDO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return groupInfos;
|
return groupInfos;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 板材信息转换
|
// 板材信息转换
|
||||||
public Map<String, List<Object>> goodsInfoChange(OrderXmlVO orderXmlVO, Long orderId, Long organId) {
|
public Map<String, List<?>> goodsInfoChange(OrderXmlVO orderXmlVO, Long orderId, Long organId) {
|
||||||
Map<String, List<Object>> map = new HashMap<>();
|
Map<String, List<?>> map = new HashMap<>();
|
||||||
|
|
||||||
List<RawGoodsDO> rawGoodsDOs = new ArrayList<>();
|
List<Object> rawGoodsDOs = new ArrayList<>();
|
||||||
List<GoodsDO> goodsDOs = new ArrayList<>();
|
List<Object> goodsDOs = new ArrayList<>();
|
||||||
List<OrderBodyDO> bodyBOs = new ArrayList<>();
|
|
||||||
List<OrderGroupDO> groupDOs = new ArrayList<>();
|
|
||||||
List<PlateDO> plateDOs = new ArrayList<>();
|
|
||||||
List<OrderItemDO> itemDOs = new ArrayList<>();
|
|
||||||
List<OrderPartsDO> partsDOs = new ArrayList<>();
|
|
||||||
|
|
||||||
Map<String, OrderGroupDO> groupInfos = groupInfoChange(orderXmlVO.getGroupXmlVOS(), orderId, organId); // 加工组
|
|
||||||
Map<String, Object> itemInfos = new HashMap<>();
|
|
||||||
Map<String, Object> partsInfos = new HashMap<>();
|
|
||||||
|
|
||||||
|
List<Object> plateDOs = new ArrayList<>();
|
||||||
|
List<Object> plateDetail = null;
|
||||||
|
|
||||||
// 房间柜体
|
// 房间柜体
|
||||||
Map<String, Map<String, OrderBodyDO>> roomInfos = bodyInfoChange(orderXmlVO.getRoomXmlVOS(), orderId, organId);
|
Map<String, Map<String, OrderBodyDO>> roomInfos = bodyInfoChange(orderXmlVO.getRoomXmlVOS(), orderId, organId); // roomInfos 这个在跟着一起变
|
||||||
|
// 房间柜体基点
|
||||||
|
Map<String, Map<String, BasePosition>> boxBasePositions = basePositionChange(orderXmlVO.getRoomXmlVOS());
|
||||||
|
// 加工组
|
||||||
|
Map<String, OrderGroupDO> groupInfos = groupInfoChange(orderXmlVO.getGroupXmlVOS(), orderId, organId); // groupInfos 这个在跟着一起变
|
||||||
|
|
||||||
|
Map<String, Object> itemInfos = new HashMap<>();
|
||||||
|
Map<String, Object> partsInfos = new HashMap<>();
|
||||||
|
Map<String, Object> orderPartsRemarks = new HashMap<>();
|
||||||
|
Map<String, Object> partsDOInfos = new HashMap<>();
|
||||||
|
|
||||||
|
|
||||||
if (orderXmlVO.getMaterialXmlVO() != null ){
|
if (orderXmlVO.getMaterialXmlVO() != null ){
|
||||||
MaterialXmlVO materialXmlVO = orderXmlVO.getMaterialXmlVO();
|
MaterialXmlVO materialXmlVO = orderXmlVO.getMaterialXmlVO();
|
||||||
@@ -214,6 +242,8 @@ public class XmlTypeRealize {
|
|||||||
Map<String, Map<String, Object>> partAllInfo = goodsInfoChange(accessoryXmlVO, assemblieXmlVOS, orderId, organId, roomInfos, groupInfos);
|
Map<String, Map<String, Object>> partAllInfo = goodsInfoChange(accessoryXmlVO, assemblieXmlVOS, orderId, organId, roomInfos, groupInfos);
|
||||||
itemInfos.putAll(partAllInfo.get("orderItemMap"));
|
itemInfos.putAll(partAllInfo.get("orderItemMap"));
|
||||||
partsInfos.putAll(partAllInfo.get("orderPartsMap"));
|
partsInfos.putAll(partAllInfo.get("orderPartsMap"));
|
||||||
|
orderPartsRemarks.putAll(partAllInfo.get("orderPartsRemarks"));
|
||||||
|
partsDOInfos.putAll(partAllInfo.get("orderPartsDOMap"));
|
||||||
|
|
||||||
// 板材 小板
|
// 板材 小板
|
||||||
if (plateXmlVOS.getPlateXmlVOList() != null && plateXmlVOS.getPlateXmlVOList().size() > 0) {
|
if (plateXmlVOS.getPlateXmlVOList() != null && plateXmlVOS.getPlateXmlVOList().size() > 0) {
|
||||||
@@ -256,25 +286,52 @@ public class XmlTypeRealize {
|
|||||||
goodsDOs.add(goodsDO);
|
goodsDOs.add(goodsDO);
|
||||||
|
|
||||||
// 小板信息
|
// 小板信息
|
||||||
plateInfoChange(plateXmlVO.getBlockXmlVOS(), orderId, goodsDO.getId(), organId, roomInfos, groupInfos, partsInfos, itemInfos, plateDOs);
|
plateDetail = plateInfoChange(plateXmlVO.getBlockXmlVOS(), orderId, goodsDO.getId(), organId, roomInfos, groupInfos, partsInfos, itemInfos, plateDOs, boxBasePositions);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 取map中的值
|
||||||
|
System.out.println(" roomInfos " + roomInfos);
|
||||||
|
List<Object> orderBodyDOList = roomInfos.values().stream()
|
||||||
|
.flatMap(innerMap -> innerMap.values().stream())
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
List<Object> groupDOList = new ArrayList<>(groupInfos.values());
|
||||||
|
List<Object> itemDOList = new ArrayList<>(itemInfos.values());
|
||||||
|
List<Object> partDOList = new ArrayList<>(partsDOInfos.values());
|
||||||
|
List<Object> partRemarks = new ArrayList<>(orderPartsRemarks.values());
|
||||||
|
|
||||||
|
map.put("rawGoodsDOS", rawGoodsDOs);
|
||||||
|
map.put("goodsDOS", goodsDOs);
|
||||||
|
map.put("orderBodyDOS", orderBodyDOList);
|
||||||
|
map.put("orderGroupDOS", groupDOList);
|
||||||
|
map.put("plateDOS", plateDOs);
|
||||||
|
map.put("orderPartsDOS", partDOList);
|
||||||
|
map.put("orderItemDOS", itemDOList);
|
||||||
|
map.put("plateDetail", plateDetail);
|
||||||
|
map.put("orderPartsRemarks", partRemarks);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
// id得到
|
// id得到
|
||||||
private Map<String,Long> getId(String roomNo, String BoxNo, Map<String, Map<String, OrderBodyDO>> roomInfos,
|
private Map<String,Long> getId(String roomNo, String BoxNo, Map<String, Map<String, OrderBodyDO>> roomInfos,
|
||||||
String groupNo, Map<String, OrderGroupDO> groupInfos,
|
String groupNo, Map<String, OrderGroupDO> groupInfos, Double plateNum,
|
||||||
Long orderId, Long organId) {
|
Double unregularNum, Long orderId, Long organId) {
|
||||||
Map<String,Long> map = new HashMap<>();
|
Map<String,Long> map = new HashMap<>();
|
||||||
Map<String, OrderBodyDO> bodyMap = roomInfos.get(roomNo);
|
Map<String, OrderBodyDO> bodyMap = roomInfos.get(roomNo);
|
||||||
OrderBodyDO bodyDO;
|
OrderBodyDO bodyDO;
|
||||||
if (bodyMap.containsKey(BoxNo)) {
|
if (bodyMap == null){
|
||||||
bodyDO = (OrderBodyDO) bodyMap.get(BoxNo);
|
bodyMap = new HashMap<>();
|
||||||
|
roomInfos.put(roomNo, bodyMap);
|
||||||
|
}
|
||||||
|
if ( bodyMap.containsKey(BoxNo)) {
|
||||||
|
bodyDO = bodyMap.get(BoxNo);
|
||||||
|
bodyDO.setPlateNum((int) (bodyDO.getPlateNum() + plateNum + unregularNum))
|
||||||
|
.setUnregularNum((int) (bodyDO.getUnregularNum() + unregularNum));
|
||||||
} else {
|
} else {
|
||||||
Long roomId = (Long) identifierGenerator.nextId(null);
|
Long roomId = (Long) identifierGenerator.nextId(null);
|
||||||
bodyDO = OrderBodyDO.builder()
|
bodyDO = OrderBodyDO.builder()
|
||||||
@@ -287,9 +344,10 @@ public class XmlTypeRealize {
|
|||||||
.width(0.0)
|
.width(0.0)
|
||||||
.height(0.0)
|
.height(0.0)
|
||||||
.depth(0.0)
|
.depth(0.0)
|
||||||
|
.plateNum((int) Math.round(plateNum))
|
||||||
|
.unregularNum((int) Math.round(unregularNum))
|
||||||
.build();
|
.build();
|
||||||
bodyMap.put(NOT_ASSIGNED, bodyDO);
|
bodyMap.put(BoxNo, bodyDO);
|
||||||
roomInfos.put(NOT_ASSIGNED, bodyMap);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Long roomId = bodyDO.getRoomId();
|
Long roomId = bodyDO.getRoomId();
|
||||||
@@ -299,6 +357,8 @@ public class XmlTypeRealize {
|
|||||||
Long groupId = 0L;
|
Long groupId = 0L;
|
||||||
if (orderGroupDO != null) {
|
if (orderGroupDO != null) {
|
||||||
groupId = orderGroupDO.getId();
|
groupId = orderGroupDO.getId();
|
||||||
|
orderGroupDO.setBodyId(bodyId).setPlateNum((int) (orderGroupDO.getPlateNum() + plateNum))
|
||||||
|
.setUnregularNum((int) (orderGroupDO.getUnregularNum() + unregularNum));
|
||||||
}
|
}
|
||||||
map.put("roomId", roomId);
|
map.put("roomId", roomId);
|
||||||
map.put("bodyId", bodyId);
|
map.put("bodyId", bodyId);
|
||||||
@@ -311,13 +371,15 @@ public class XmlTypeRealize {
|
|||||||
Map<String, Map<String, Object>> map = new HashMap<>();
|
Map<String, Map<String, Object>> map = new HashMap<>();
|
||||||
Map<String, Object> orderPartsMap = new HashMap<>();
|
Map<String, Object> orderPartsMap = new HashMap<>();
|
||||||
Map<String, Object> orderItemMap = new HashMap<>();
|
Map<String, Object> orderItemMap = new HashMap<>();
|
||||||
|
Map<String, Object> orderPartsDOMap = new HashMap<>();
|
||||||
|
Map<String, Object> orderPartsRemarks = new HashMap<>();
|
||||||
|
|
||||||
if (accessoryXmlVO != null) {
|
if (accessoryXmlVO != null) {
|
||||||
if (accessoryXmlVO.getEdgingXmlVOS() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList().size() > 0) {
|
if (accessoryXmlVO.getEdgingXmlVOS() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList() != null && accessoryXmlVO.getEdgingXmlVOS().getEdgingXmlVOList().size() > 0) {
|
||||||
EdgingXmlVOS edgingXmlVOS = accessoryXmlVO.getEdgingXmlVOS();
|
EdgingXmlVOS edgingXmlVOS = accessoryXmlVO.getEdgingXmlVOS();
|
||||||
for (EdgingXmlVO edgingXmlVO : edgingXmlVOS.getEdgingXmlVOList()) {
|
for (EdgingXmlVO edgingXmlVO : edgingXmlVOS.getEdgingXmlVOList()) {
|
||||||
|
|
||||||
Map<String,Long> idMap = getId(edgingXmlVO.getRoomId(), edgingXmlVO.getBoxId(), roomInfos, edgingXmlVO.getGroupId(), groupInfos, orderId, organId);
|
Map<String,Long> idMap = getId(edgingXmlVO.getRoomId(), edgingXmlVO.getBoxId(), roomInfos, edgingXmlVO.getGroupId(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||||
|
|
||||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||||
orderPartsMap.put(edgingXmlVO.getId(), OrderPartsAddVO.builder()
|
orderPartsMap.put(edgingXmlVO.getId(), OrderPartsAddVO.builder()
|
||||||
@@ -352,13 +414,33 @@ public class XmlTypeRealize {
|
|||||||
.bodyId(idMap.get("bodyId"))
|
.bodyId(idMap.get("bodyId"))
|
||||||
.num(Double.valueOf(edgingXmlVO.getCount()))
|
.num(Double.valueOf(edgingXmlVO.getCount()))
|
||||||
.build());
|
.build());
|
||||||
|
orderPartsDOMap.put(edgingXmlVO.getId(), OrderPartsDO.builder()
|
||||||
|
.id(partsId)
|
||||||
|
.organId(organId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.name(edgingXmlVO.getName())
|
||||||
|
.material(edgingXmlVO.getMaterial())
|
||||||
|
.type("封边条")
|
||||||
|
.brand(edgingXmlVO.getBrand())
|
||||||
|
.spec(edgingXmlVO.getSpecs())
|
||||||
|
.unit(edgingXmlVO.getUnit())
|
||||||
|
.isComposite(false)
|
||||||
|
.build());
|
||||||
|
|
||||||
|
if (edgingXmlVO.getRemarkXmlVOS() != null && edgingXmlVO.getRemarkXmlVOS().getRemarkXmlVOList() != null && edgingXmlVO.getRemarkXmlVOS().getRemarkXmlVOList().size() > 0) {
|
||||||
|
orderPartsRemarks.put(edgingXmlVO.getId(), OrderPartsRemark.builder()
|
||||||
|
.partsId(partsId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.remark(edgingXmlVO.getRemarkXmlVOS().toString())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (accessoryXmlVO.getHardwareXmlVOS() != null && accessoryXmlVO.getHardwareXmlVOS().getHardwareXmlVOList() != null && accessoryXmlVO.getHardwareXmlVOS().getHardwareXmlVOList().size() > 0) {
|
if (accessoryXmlVO.getHardwareXmlVOS() != null && accessoryXmlVO.getHardwareXmlVOS().getHardwareXmlVOList() != null && accessoryXmlVO.getHardwareXmlVOS().getHardwareXmlVOList().size() > 0) {
|
||||||
HardwareXmlVOS hardwareXmlVOS = accessoryXmlVO.getHardwareXmlVOS();
|
HardwareXmlVOS hardwareXmlVOS = accessoryXmlVO.getHardwareXmlVOS();
|
||||||
for (HardwareXmlVO hardwareXmlVO : hardwareXmlVOS.getHardwareXmlVOList()) {
|
for (HardwareXmlVO hardwareXmlVO : hardwareXmlVOS.getHardwareXmlVOList()) {
|
||||||
|
|
||||||
Map<String,Long> idMap = getId(hardwareXmlVO.getRoomId(), hardwareXmlVO.getBoxId(), roomInfos, hardwareXmlVO.getGroupId(), groupInfos, orderId, organId);
|
Map<String,Long> idMap = getId(hardwareXmlVO.getRoomId(), hardwareXmlVO.getBoxId(), roomInfos, hardwareXmlVO.getGroupId(), groupInfos, 0.0, 0.0,orderId, organId);
|
||||||
|
|
||||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||||
orderPartsMap.put(hardwareXmlVO.getId(), OrderPartsAddVO.builder()
|
orderPartsMap.put(hardwareXmlVO.getId(), OrderPartsAddVO.builder()
|
||||||
@@ -395,6 +477,25 @@ public class XmlTypeRealize {
|
|||||||
.bodyId(idMap.get("bodyId"))
|
.bodyId(idMap.get("bodyId"))
|
||||||
.num(Double.valueOf(hardwareXmlVO.getCount()))
|
.num(Double.valueOf(hardwareXmlVO.getCount()))
|
||||||
.build());
|
.build());
|
||||||
|
orderPartsDOMap.put(hardwareXmlVO.getId(), OrderPartsDO.builder()
|
||||||
|
.id(partsId)
|
||||||
|
.organId(organId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.name(hardwareXmlVO.getName())
|
||||||
|
.material(hardwareXmlVO.getMaterial())
|
||||||
|
.type(hardwareXmlVO.getType())
|
||||||
|
.brand(hardwareXmlVO.getBrand())
|
||||||
|
.spec(hardwareXmlVO.getSpecs())
|
||||||
|
.unit(hardwareXmlVO.getUnit())
|
||||||
|
.isComposite(false)
|
||||||
|
.build());
|
||||||
|
if (hardwareXmlVO.getRemarkXmlVOS() != null && hardwareXmlVO.getRemarkXmlVOS().getRemarkXmlVOList() != null && hardwareXmlVO.getRemarkXmlVOS().getRemarkXmlVOList().size() > 0) {
|
||||||
|
orderPartsRemarks.put(hardwareXmlVO.getId(), OrderPartsRemark.builder()
|
||||||
|
.partsId(partsId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.remark(hardwareXmlVO.getRemarkXmlVOS().toString())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -402,73 +503,101 @@ public class XmlTypeRealize {
|
|||||||
if (assemblieXmlVOS != null && assemblieXmlVOS.getAssemblyXmlVOList() != null && assemblieXmlVOS.getAssemblyXmlVOList().size() > 0) {
|
if (assemblieXmlVOS != null && assemblieXmlVOS.getAssemblyXmlVOList() != null && assemblieXmlVOS.getAssemblyXmlVOList().size() > 0) {
|
||||||
for (AssemblyXmlVO assemblyXmlVO : assemblieXmlVOS.getAssemblyXmlVOList()) {
|
for (AssemblyXmlVO assemblyXmlVO : assemblieXmlVOS.getAssemblyXmlVOList()) {
|
||||||
|
|
||||||
Map<String,Long> idMap = getId(assemblyXmlVO.getRoomId(), assemblyXmlVO.getBoxId(), roomInfos, assemblyXmlVO.getGroupId(), groupInfos, orderId, organId);
|
if (assemblyXmlVO != null && assemblyXmlVO.toString().length() > 0) {
|
||||||
|
Map<String,Long> idMap = getId(assemblyXmlVO.getRoomId(), assemblyXmlVO.getBoxId(), roomInfos, assemblyXmlVO.getGroupId(), groupInfos, 0.0, 0.0, orderId, organId);
|
||||||
|
|
||||||
Long partsId = (Long) identifierGenerator.nextId(null);
|
Long partsId = (Long) identifierGenerator.nextId(null);
|
||||||
orderPartsMap.put(assemblyXmlVO.getId(), OrderPartsAddVO.builder()
|
orderPartsMap.put(assemblyXmlVO.getId(), OrderPartsAddVO.builder()
|
||||||
.id(partsId)
|
.id(partsId)
|
||||||
.organId(organId)
|
.organId(organId)
|
||||||
.orderId(orderId)
|
.orderId(orderId)
|
||||||
.type(assemblyXmlVO.getType())
|
.type(assemblyXmlVO.getType())
|
||||||
.goodsId(assemblyXmlVO.getItemNo())
|
.goodsId(assemblyXmlVO.getItemNo())
|
||||||
.factory(assemblyXmlVO.getManufacturer())
|
.factory(assemblyXmlVO.getManufacturer())
|
||||||
.brand(assemblyXmlVO.getBrand())
|
.brand(assemblyXmlVO.getBrand())
|
||||||
.name(assemblyXmlVO.getName())
|
.name(assemblyXmlVO.getName())
|
||||||
.material(assemblyXmlVO.getMaterial())
|
.material(assemblyXmlVO.getMaterial())
|
||||||
.spec(assemblyXmlVO.getSpecs())
|
.spec(assemblyXmlVO.getSpecs())
|
||||||
.color(assemblyXmlVO.getColor())
|
.color(assemblyXmlVO.getColor())
|
||||||
.length(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getLength())))
|
.length(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getLength())))
|
||||||
.width(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getWidth())))
|
.width(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getWidth())))
|
||||||
.thickness(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getHeight())))
|
.thickness(BigDecimal.valueOf(Double.parseDouble(assemblyXmlVO.getHeight())))
|
||||||
.num(Double.valueOf(assemblyXmlVO.getCount()))
|
.num(Double.valueOf(assemblyXmlVO.getCount()))
|
||||||
.unit((assemblyXmlVO.getUnit()))
|
.unit((assemblyXmlVO.getUnit()))
|
||||||
.warehouse(assemblyXmlVO.getWarehouse())
|
.warehouse(assemblyXmlVO.getWarehouse())
|
||||||
.shelf(assemblyXmlVO.getShelf())
|
.shelf(assemblyXmlVO.getShelf())
|
||||||
.roomId(assemblyXmlVO.getRoomId())
|
.roomId(assemblyXmlVO.getRoomId())
|
||||||
.bodyId(assemblyXmlVO.getBoxId())
|
.bodyId(assemblyXmlVO.getBoxId())
|
||||||
.isComposite(true)
|
.isComposite(true)
|
||||||
.build());
|
.build());
|
||||||
orderItemMap.put(assemblyXmlVO.getId(), OrderItemDO.builder()
|
orderItemMap.put(assemblyXmlVO.getId(), OrderItemDO.builder()
|
||||||
.id((Long) identifierGenerator.nextId(null))
|
.id((Long) identifierGenerator.nextId(null))
|
||||||
.organId(organId)
|
.organId(organId)
|
||||||
.orderId(orderId)
|
.orderId(orderId)
|
||||||
.type(2)
|
.type(2)
|
||||||
.partsId(partsId)
|
.partsId(partsId)
|
||||||
.groupId(idMap.get("groupId"))
|
.groupId(idMap.get("groupId"))
|
||||||
.roomId(idMap.get("roomId"))
|
.roomId(idMap.get("roomId"))
|
||||||
.bodyId(idMap.get("bodyId"))
|
.bodyId(idMap.get("bodyId"))
|
||||||
.num(Double.valueOf(assemblyXmlVO.getCount()))
|
.num(Double.valueOf(assemblyXmlVO.getCount()))
|
||||||
.build());
|
.build());
|
||||||
|
orderPartsDOMap.put(assemblyXmlVO.getId(), OrderPartsDO.builder()
|
||||||
|
.id(partsId)
|
||||||
|
.organId(organId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.name(assemblyXmlVO.getName())
|
||||||
|
.material(assemblyXmlVO.getMaterial())
|
||||||
|
.type(assemblyXmlVO.getType())
|
||||||
|
.brand(assemblyXmlVO.getBrand())
|
||||||
|
.spec(assemblyXmlVO.getSpecs())
|
||||||
|
.unit(assemblyXmlVO.getUnit())
|
||||||
|
.isComposite(true)
|
||||||
|
.build());
|
||||||
|
if (assemblyXmlVO.getRemarkXmlVOS() != null && assemblyXmlVO.getRemarkXmlVOS().getRemarkXmlVOList() != null && assemblyXmlVO.getRemarkXmlVOS().getRemarkXmlVOList().size() > 0) {
|
||||||
|
orderPartsRemarks.put(assemblyXmlVO.getId(), OrderPartsRemark.builder()
|
||||||
|
.partsId(partsId)
|
||||||
|
.orderId(orderId)
|
||||||
|
.remark(assemblyXmlVO.getRemarkXmlVOS().toString())
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
map.put("orderItemMap", orderItemMap);
|
map.put("orderItemMap", orderItemMap);
|
||||||
map.put("orderPartsMap", orderPartsMap);
|
map.put("orderPartsMap", orderPartsMap);
|
||||||
|
map.put("orderPartsDOMap", orderPartsDOMap);
|
||||||
|
map.put("orderPartsRemarks", orderPartsRemarks);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<PlateDetail> plateInfoChange(BlockXmlVOS blockXmlVOS, Long orderId, Long goodsId, Long organId,
|
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<PlateDO> plateDOs) {
|
Map<String, Object> partsMap, Map<String, Object> orderItemMap, List<Object> plateDOs,
|
||||||
List<PlateDetail> plateDetails = new ArrayList<>();
|
Map<String, Map<String, BasePosition>> boxBasePositionMap) {
|
||||||
|
List<Object> plateDetails = new ArrayList<>();
|
||||||
|
|
||||||
if (blockXmlVOS != null && blockXmlVOS.getBlockXmlVOList() != null && blockXmlVOS.getBlockXmlVOList().size() > 0) {
|
if (blockXmlVOS != null && blockXmlVOS.getBlockXmlVOList() != null && blockXmlVOS.getBlockXmlVOList().size() > 0) {
|
||||||
for (BlockXmlVO blockXmlVO : blockXmlVOS.getBlockXmlVOList()) {
|
for (BlockXmlVO blockXmlVO : blockXmlVOS.getBlockXmlVOList()) {
|
||||||
String roomId = blockXmlVO.getRoomId();
|
|
||||||
String bodyId = blockXmlVO.getBoxId();
|
|
||||||
String groupId = blockXmlVO.getGroupId();
|
|
||||||
|
|
||||||
long plateNo = idWorker.nextId();
|
long plateNo = idWorker.nextId();
|
||||||
long obtainingTime = idWorker.obtainingTime();
|
long obtainingTime = idWorker.obtainingTime();
|
||||||
Long plateId = (Long) identifierGenerator.nextId(null);
|
Long plateId = (Long) identifierGenerator.nextId(null);
|
||||||
BigDecimal area = BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getWidth()) * Double.parseDouble(blockXmlVO.getLength()));
|
BigDecimal area = BigDecimal.valueOf((Double.parseDouble(blockXmlVO.getWidth()) / 1000) * (Double.parseDouble(blockXmlVO.getLength())) );
|
||||||
// 开料面积
|
// 开料面积
|
||||||
BigDecimal sealAcreage = BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getCuttingWidth()) * Double.parseDouble(blockXmlVO.getCuttingLength()));
|
BigDecimal sealAcreage = BigDecimal.valueOf( (Double.parseDouble(blockXmlVO.getCuttingWidth()) / 1000) * ( Double.parseDouble(blockXmlVO.getCuttingLength()) / 1000));
|
||||||
// 开门类型获取
|
// 开门类型获取
|
||||||
Integer doorType = Integer.valueOf(dictDataApi.parseDictData(DOOR_OPEN_DIR, blockXmlVO.getOpenDirection()).getData().getValue());
|
Integer doorType = Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.DOOR_OPENING_DIRECTIONS, blockXmlVO.getOpenDirection()).getData().getValue());
|
||||||
|
|
||||||
// 板材获取
|
// 板材获取
|
||||||
|
Double plateNum = 0.0;
|
||||||
Map<String,Long> idMap = getId(blockXmlVO.getRoomId(), blockXmlVO.getBoxId(), roomInfos, blockXmlVO.getGroupId(), groupInfos, orderId, organId);
|
Double unregularNum = 0.0;
|
||||||
|
if (convertToBoolean(blockXmlVO.getUnregular())){
|
||||||
|
unregularNum = 1.0;
|
||||||
|
}else {
|
||||||
|
plateNum = 1.0;
|
||||||
|
}
|
||||||
|
Map<String,Long> idMap = getId(blockXmlVO.getRoomId(), blockXmlVO.getBoxId(), roomInfos, blockXmlVO.getGroupId(), groupInfos, plateNum, unregularNum, orderId, organId);
|
||||||
|
BasePosition boxBasePoint = boxBasePositionMap.get(blockXmlVO.getRoomId()).get(blockXmlVO.getBoxId()).setBasePoint(String.valueOf(idMap.get("bodyId")));
|
||||||
|
|
||||||
PlateDO plateDO = PlateDO.builder()
|
PlateDO plateDO = PlateDO.builder()
|
||||||
.id(plateId)
|
.id(plateId)
|
||||||
@@ -476,7 +605,8 @@ public class XmlTypeRealize {
|
|||||||
.orderId(orderId)
|
.orderId(orderId)
|
||||||
.name(blockXmlVO.getName())
|
.name(blockXmlVO.getName())
|
||||||
.plateNo((obtainingTime) + Long.toString(plateNo).substring(2))
|
.plateNo((obtainingTime) + Long.toString(plateNo).substring(2))
|
||||||
.type(Integer.valueOf(blockXmlVO.getType()))
|
.type(dictDataApi.parseDictData(DictTypeConstants.PLATE_TYPE,
|
||||||
|
blockXmlVO.getType()).getData() == null ? 2 : Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.PLATE_TYPE, blockXmlVO.getType()).getData().getValue()))
|
||||||
.goodsId(goodsId)
|
.goodsId(goodsId)
|
||||||
.width(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getWidth())))
|
.width(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getWidth())))
|
||||||
.height(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getLength())))
|
.height(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getLength())))
|
||||||
@@ -485,8 +615,8 @@ public class XmlTypeRealize {
|
|||||||
.splitThickness(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getThickness())))
|
.splitThickness(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getThickness())))
|
||||||
.splitWidth(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getWidth())))
|
.splitWidth(BigDecimal.valueOf(Double.parseDouble(blockXmlVO.getWidth())))
|
||||||
.area(area)
|
.area(area)
|
||||||
.texture(Integer.valueOf(blockXmlVO.getTexture()))
|
.texture(Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.GRAIN_TYPE, blockXmlVO.getTexture()).getData().getValue()))
|
||||||
.holeFace(Integer.valueOf(blockXmlVO.getLayoutFace()))
|
.holeFace(Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.TYPOGRAPHY_TYPE, blockXmlVO.getLayoutFace()).getData().getValue()))
|
||||||
.isDoor(doorType == 0)
|
.isDoor(doorType == 0)
|
||||||
.openDoorType(doorType)
|
.openDoorType(doorType)
|
||||||
.isSpecialShaped(convertToBoolean(blockXmlVO.getUnregular()))
|
.isSpecialShaped(convertToBoolean(blockXmlVO.getUnregular()))
|
||||||
@@ -504,6 +634,16 @@ public class XmlTypeRealize {
|
|||||||
.num(1.0)
|
.num(1.0)
|
||||||
.build());
|
.build());
|
||||||
|
|
||||||
|
// 基点坐标获取
|
||||||
|
BasePosition plateBasePosition = BasePosition.builder()
|
||||||
|
.basePoint(blockXmlVO.getId())
|
||||||
|
.basePointX(blockXmlVO.getBasePointX())
|
||||||
|
.basePointY(blockXmlVO.getBasePointY())
|
||||||
|
.basePointZ(blockXmlVO.getBasePointZ())
|
||||||
|
.axisXrotate(blockXmlVO.getAxisXrotate())
|
||||||
|
.axisYrotate(blockXmlVO.getAxisYrotate())
|
||||||
|
.axisZrotate(blockXmlVO.getAxisZrotate())
|
||||||
|
.build();
|
||||||
PlateDetail plateDetail = PlateDetail.builder()
|
PlateDetail plateDetail = PlateDetail.builder()
|
||||||
.plateId(plateId)
|
.plateId(plateId)
|
||||||
.plateNo(plateDO.getPlateNo())
|
.plateNo(plateDO.getPlateNo())
|
||||||
@@ -517,9 +657,18 @@ public class XmlTypeRealize {
|
|||||||
.plateWidth(plateDO.getWidth())
|
.plateWidth(plateDO.getWidth())
|
||||||
.plateLength(plateDO.getHeight())
|
.plateLength(plateDO.getHeight())
|
||||||
.acreage(plateDO.getArea())
|
.acreage(plateDO.getArea())
|
||||||
|
.bodyBasePosition(boxBasePoint)
|
||||||
|
.plateBasePosition(plateBasePosition)
|
||||||
.splitLength(BigDecimal.valueOf(Long.parseLong(blockXmlVO.getCuttingLength())))
|
.splitLength(BigDecimal.valueOf(Long.parseLong(blockXmlVO.getCuttingLength())))
|
||||||
.splitWidth(BigDecimal.valueOf(Long.parseLong(blockXmlVO.getCuttingWidth())))
|
.splitWidth(BigDecimal.valueOf(Long.parseLong(blockXmlVO.getCuttingWidth())))
|
||||||
.sealAcreage(sealAcreage)
|
.sealAcreage(sealAcreage)
|
||||||
|
.pointDetail(new ArrayList<>())
|
||||||
|
.rawPointDetail(new ArrayList<>())
|
||||||
|
.holeDetail(new ArrayList<>())
|
||||||
|
.contourDetail(new ArrayList<>())
|
||||||
|
.sideHoleDetail(new ArrayList<>())
|
||||||
|
.remark(new HashMap<>())
|
||||||
|
.sideRemark(new HashMap<>())
|
||||||
.isUnRegular(plateDO.getIsSpecialShaped())
|
.isUnRegular(plateDO.getIsSpecialShaped())
|
||||||
.build();
|
.build();
|
||||||
// 小板、es 封边值
|
// 小板、es 封边值
|
||||||
@@ -533,7 +682,7 @@ public class XmlTypeRealize {
|
|||||||
// 小板备注信息
|
// 小板备注信息
|
||||||
addRemark(plateDO, plateDetail, blockXmlVO);
|
addRemark(plateDO, plateDetail, blockXmlVO);
|
||||||
|
|
||||||
//
|
|
||||||
plateDOs.add(plateDO);
|
plateDOs.add(plateDO);
|
||||||
plateDetails.add(plateDetail);
|
plateDetails.add(plateDetail);
|
||||||
}
|
}
|
||||||
@@ -562,24 +711,29 @@ public class XmlTypeRealize {
|
|||||||
BigDecimal sealRight = BigDecimal.valueOf(0);
|
BigDecimal sealRight = BigDecimal.valueOf(0);
|
||||||
BigDecimal sealUp = BigDecimal.valueOf(0);
|
BigDecimal sealUp = BigDecimal.valueOf(0);
|
||||||
BigDecimal sealDown = BigDecimal.valueOf(0);
|
BigDecimal sealDown = BigDecimal.valueOf(0);
|
||||||
|
BigDecimal size = BigDecimal.valueOf(0);
|
||||||
|
|
||||||
if (outlineXmlVO != null && outlineXmlVO.getPointXmlVOList() != null && outlineXmlVO.getPointXmlVOList().size() > 0) {
|
if (outlineXmlVO != null && outlineXmlVO.getPointXmlVOList() != null && outlineXmlVO.getPointXmlVOList().size() > 0) {
|
||||||
for (PointXmlVO pointXmlVO : outlineXmlVO.getPointXmlVOList()) {
|
for (PointXmlVO pointXmlVO : outlineXmlVO.getPointXmlVOList()) {
|
||||||
Double x = Double.parseDouble(pointXmlVO.getPointX());
|
Double x = Double.parseDouble(pointXmlVO.getPointX());
|
||||||
Double y = Double.parseDouble(pointXmlVO.getPointY());
|
Double y = Double.parseDouble(pointXmlVO.getPointY());
|
||||||
OrderPartsAddVO edging = (OrderPartsAddVO) edgIng.get(pointXmlVO.getEdgingId());
|
OrderPartsAddVO edging = (OrderPartsAddVO) edgIng.get(pointXmlVO.getEdgingId());
|
||||||
|
if (edging != null){
|
||||||
|
size = edging.getThickness();
|
||||||
|
}
|
||||||
|
|
||||||
if (!plateDO.getIsSpecialShaped()) {
|
if (!plateDO.getIsSpecialShaped()) {
|
||||||
if (x == 0 && y == 0) {
|
if (x == 0 && y == 0) {
|
||||||
sealDown = edging.getThickness();
|
sealDown = size;
|
||||||
}
|
}
|
||||||
if (x != 0 && y == 0) {
|
if (x != 0 && y == 0) {
|
||||||
sealRight = edging.getThickness();
|
sealRight = size;
|
||||||
}
|
}
|
||||||
if (x != 0 && y != 0) {
|
if (x != 0 && y != 0) {
|
||||||
sealUp = edging.getThickness();
|
sealUp = size;
|
||||||
}
|
}
|
||||||
if (x == 0 && y != 0) {
|
if (x == 0 && y != 0) {
|
||||||
sealLeft = edging.getThickness();
|
sealLeft = size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -589,7 +743,7 @@ public class XmlTypeRealize {
|
|||||||
.pointY(y)
|
.pointY(y)
|
||||||
.curve(Double.parseDouble(pointXmlVO.getCurvature()))
|
.curve(Double.parseDouble(pointXmlVO.getCurvature()))
|
||||||
.radius(Double.parseDouble(pointXmlVO.getRadius()))
|
.radius(Double.parseDouble(pointXmlVO.getRadius()))
|
||||||
.sealSize(edging.getThickness())
|
.sealSize(size)
|
||||||
.build());
|
.build());
|
||||||
plateDetail.getSideRemark().put(pointXmlVO.getId(), pointXmlVO.getRemark());
|
plateDetail.getSideRemark().put(pointXmlVO.getId(), pointXmlVO.getRemark());
|
||||||
}
|
}
|
||||||
@@ -601,8 +755,8 @@ public class XmlTypeRealize {
|
|||||||
// 点明细(不含封边)
|
// 点明细(不含封边)
|
||||||
private void addPointDetail(PlateDO plateDO, PlateDetail plateDetail, CuttingOutlineXmlVO cuttingOutlineXmlVO) {
|
private void addPointDetail(PlateDO plateDO, PlateDetail plateDetail, CuttingOutlineXmlVO cuttingOutlineXmlVO) {
|
||||||
if (cuttingOutlineXmlVO != null) {
|
if (cuttingOutlineXmlVO != null) {
|
||||||
plateDO.setOffsetX(BigDecimal.valueOf(Long.parseLong(cuttingOutlineXmlVO.getReferenceOffsetX()))).
|
plateDO.setOffsetX(BigDecimal.valueOf(Double.parseDouble(cuttingOutlineXmlVO.getReferenceOffsetX()))).
|
||||||
setOffsetY(BigDecimal.valueOf(Long.parseLong(cuttingOutlineXmlVO.getReferenceOffsetY())));
|
setOffsetY(BigDecimal.valueOf(Double.parseDouble(cuttingOutlineXmlVO.getReferenceOffsetY())));
|
||||||
plateDetail.setOffsetX(plateDO.getOffsetX()).setOffsetY(plateDO.getOffsetY());
|
plateDetail.setOffsetX(plateDO.getOffsetX()).setOffsetY(plateDO.getOffsetY());
|
||||||
if (cuttingOutlineXmlVO.getPointXmlVOList() != null && cuttingOutlineXmlVO.getPointXmlVOList().size() > 0) {
|
if (cuttingOutlineXmlVO.getPointXmlVOList() != null && cuttingOutlineXmlVO.getPointXmlVOList().size() > 0) {
|
||||||
for (PointXmlVO pointXmlVO : cuttingOutlineXmlVO.getPointXmlVOList()) {
|
for (PointXmlVO pointXmlVO : cuttingOutlineXmlVO.getPointXmlVOList()) {
|
||||||
@@ -620,7 +774,7 @@ public class XmlTypeRealize {
|
|||||||
|
|
||||||
// 孔
|
// 孔
|
||||||
private void addHole(PlateDO plateDO, PlateDetail plateDetail, HoleXmlVOS holeXmlVOS) {
|
private void addHole(PlateDO plateDO, PlateDetail plateDetail, HoleXmlVOS holeXmlVOS) {
|
||||||
if (holeXmlVOS != null) {
|
if (holeXmlVOS != null && holeXmlVOS.getHoleXmlVOList() != null && holeXmlVOS.getHoleXmlVOList().size() > 0) {
|
||||||
plateDO.setFrontHoleCount(Integer.valueOf(holeXmlVOS.getCountFaceA())).
|
plateDO.setFrontHoleCount(Integer.valueOf(holeXmlVOS.getCountFaceA())).
|
||||||
setBackHoleCount(Integer.valueOf(holeXmlVOS.getCountFaceB())).
|
setBackHoleCount(Integer.valueOf(holeXmlVOS.getCountFaceB())).
|
||||||
setSideHoleCount(Integer.valueOf(holeXmlVOS.getCountSide()));
|
setSideHoleCount(Integer.valueOf(holeXmlVOS.getCountSide()));
|
||||||
@@ -629,18 +783,17 @@ public class XmlTypeRealize {
|
|||||||
}
|
}
|
||||||
if (holeXmlVOS.getHoleXmlVOList() != null && holeXmlVOS.getHoleXmlVOList().size() > 0) {
|
if (holeXmlVOS.getHoleXmlVOList() != null && holeXmlVOS.getHoleXmlVOList().size() > 0) {
|
||||||
for (HoleXmlVO holeXmlVO : holeXmlVOS.getHoleXmlVOList()) {
|
for (HoleXmlVO holeXmlVO : holeXmlVOS.getHoleXmlVOList()) {
|
||||||
Integer faceType = Integer.valueOf(dictDataApi.parseDictData(HOLE_FACE, holeXmlVO.getFace()).getData().getValue());
|
DictDataRespDTO faceType = dictDataApi.parseDictData(DictTypeConstants.HOLE_FACE, holeXmlVO.getFace()).getData();
|
||||||
faceType = faceType == 0 || faceType == 1 ? faceType : 2;
|
Integer faceTypeValue = faceType != null ? Integer.valueOf(faceType.getValue()) : 2;
|
||||||
Integer direction = Integer.valueOf(dictDataApi.parseDictData(HOLE_DIR, holeXmlVO.getDirection()).getData().getValue());
|
Integer direction = Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.HOLE_DIR, holeXmlVO.getDirection()).getData().getValue());
|
||||||
Integer holeType = Integer.valueOf(dictDataApi.parseDictData(HOLE_TYPE, holeXmlVO.getType()).getData().getValue());
|
DictDataRespDTO holeType = holeXmlVO.getType() == null ? null : dictDataApi.parseDictData(DictTypeConstants.HOLE_TYPE, holeXmlVO.getType()).getData();
|
||||||
Double radius = holeXmlVO.getDiameter() != null ? Double.parseDouble(holeXmlVO.getDiameter()) / 2 : 0;
|
Double radius = holeXmlVO.getDiameter() != null ? Double.parseDouble(holeXmlVO.getDiameter()) / 2 : 0;
|
||||||
Double depth = holeXmlVO.getDepth() != null ? Double.parseDouble(holeXmlVO.getDepth()) : 0;
|
Double depth = holeXmlVO.getDepth() != null ? Double.parseDouble(holeXmlVO.getDepth()) : 0;
|
||||||
HoleDetail holeDetail = HoleDetail.builder()
|
HoleDetail holeDetail = HoleDetail.builder()
|
||||||
.holeName(holeXmlVO.getName())
|
.holeName(holeXmlVO.getName())
|
||||||
.faceType(faceType)
|
.faceType(faceTypeValue)
|
||||||
.holeType(Integer.valueOf(holeXmlVO.getType()))
|
|
||||||
.direction(direction)
|
.direction(direction)
|
||||||
.holeType(holeType)
|
.holeType(holeType != null ? Integer.valueOf(holeType.getValue()) : null)
|
||||||
.radius(radius)
|
.radius(radius)
|
||||||
.depth(depth)
|
.depth(depth)
|
||||||
.build();
|
.build();
|
||||||
@@ -662,7 +815,7 @@ public class XmlTypeRealize {
|
|||||||
|
|
||||||
// 造型
|
// 造型
|
||||||
private void addContourDetail(PlateDO plateDO, PlateDetail plateDetail, GrooveXmlVOS grooveXmlVOS) {
|
private void addContourDetail(PlateDO plateDO, PlateDetail plateDetail, GrooveXmlVOS grooveXmlVOS) {
|
||||||
if (grooveXmlVOS != null) {
|
if (grooveXmlVOS != null && ObjectUtils.allNull(grooveXmlVOS)) {
|
||||||
plateDO.setFrontModelCount(Integer.valueOf(grooveXmlVOS.getCountFaceA())).
|
plateDO.setFrontModelCount(Integer.valueOf(grooveXmlVOS.getCountFaceA())).
|
||||||
setBackModelCount(Integer.valueOf(grooveXmlVOS.getCountFaceB()));
|
setBackModelCount(Integer.valueOf(grooveXmlVOS.getCountFaceB()));
|
||||||
if (grooveXmlVOS.getCountThrough() != null && Integer.parseInt(grooveXmlVOS.getCountThrough()) > 0) {
|
if (grooveXmlVOS.getCountThrough() != null && Integer.parseInt(grooveXmlVOS.getCountThrough()) > 0) {
|
||||||
@@ -670,7 +823,7 @@ public class XmlTypeRealize {
|
|||||||
}
|
}
|
||||||
if (grooveXmlVOS.getGrooveXmlVOList() != null && grooveXmlVOS.getGrooveXmlVOList().size() > 0) {
|
if (grooveXmlVOS.getGrooveXmlVOList() != null && grooveXmlVOS.getGrooveXmlVOList().size() > 0) {
|
||||||
for (GrooveXmlVO grooveXmlVO : grooveXmlVOS.getGrooveXmlVOList()) {
|
for (GrooveXmlVO grooveXmlVO : grooveXmlVOS.getGrooveXmlVOList()) {
|
||||||
Integer faceType = Integer.valueOf(dictDataApi.parseDictData(HOLE_FACE, grooveXmlVO.getFace()).getData().getValue());
|
Integer faceType = Integer.valueOf(dictDataApi.parseDictData(DictTypeConstants.HOLE_FACE, grooveXmlVO.getFace()).getData().getValue());
|
||||||
faceType = faceType == 0 || faceType == 1 ? faceType : 2;
|
faceType = faceType == 0 || faceType == 1 ? faceType : 2;
|
||||||
ModelDetail modelDetail = ModelDetail.builder()
|
ModelDetail modelDetail = ModelDetail.builder()
|
||||||
.type(grooveXmlVO.getType())
|
.type(grooveXmlVO.getType())
|
||||||
|
|||||||
-24
@@ -1,24 +0,0 @@
|
|||||||
package com.cf.imes.module.executor.util.fileConversion.admin.files.xml;
|
|
||||||
|
|
||||||
import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO;
|
|
||||||
|
|
||||||
import java.lang.reflect.Method;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @projectName: cf_imes_server
|
|
||||||
* @author: 晨丰科技
|
|
||||||
* @date: 2024/8/23 16:59
|
|
||||||
*/
|
|
||||||
public class test {
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
// 给定的圆的直径
|
|
||||||
double diameter = 5;
|
|
||||||
|
|
||||||
// 计算半径
|
|
||||||
double radius = diameter / 3;
|
|
||||||
|
|
||||||
// 输出结果
|
|
||||||
System.out.println("圆的半径是: " + radius);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
BIN
Binary file not shown.
+1
-1
@@ -7,5 +7,5 @@ package com.cf.imes.module.manage.enums;
|
|||||||
*/
|
*/
|
||||||
public interface DictTypeConstants {
|
public interface DictTypeConstants {
|
||||||
|
|
||||||
String PLATE_TEXTURE = "plate_texture_type";// 板件纹路
|
String PLATE_TEXTURE = "plate_texture_type";// 板件纹里
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-4
@@ -117,10 +117,10 @@ public class PlateController {
|
|||||||
public void importTemplate(HttpServletResponse response) throws IOException {
|
public void importTemplate(HttpServletResponse response) throws IOException {
|
||||||
// 手动创建导出 demo
|
// 手动创建导出 demo
|
||||||
List<PlateImportExcelVO> list = Arrays.asList(
|
List<PlateImportExcelVO> list = Arrays.asList(
|
||||||
PlateImportExcelVO.builder().goodsId("SP1123456").goodsName("尼龙板").material("PVC").width(String.valueOf(1200.000)).height(String.valueOf(2400.000))
|
PlateImportExcelVO.builder().goodsId("SP1123456").goodsName("5mm-多层板-高级灰").material("多层板").width(String.valueOf(1220)).height(String.valueOf(2440))
|
||||||
.thickness(String.valueOf(18)).brand("黑天鹅").spec("1200*2400*18").remark("板材样本").color("黑色").texture("无").build(),
|
.thickness(String.valueOf(5)).brand("AAA").spec("2440*1220*5").remark("板材样本").color("高级灰").texture("无").build(),
|
||||||
PlateImportExcelVO.builder().goodsId("SP1123457").goodsName("电木板").material("塑料").width(String.valueOf(1800.000)).height(String.valueOf(2800.000))
|
PlateImportExcelVO.builder().goodsId("SP1123457").goodsName("白玉木兰-欧松板").material("欧松板").width(String.valueOf(1220)).height(String.valueOf(2750))
|
||||||
.thickness(String.valueOf(24)).brand("东粤橡塑厂").spec("1800*2800*24").remark("测试").color("黑色").texture("无").build()
|
.thickness(String.valueOf(18)).brand("鸿达树").spec("2750*1220*18").remark("测试").color("白玉木兰").texture("无").build()
|
||||||
);
|
);
|
||||||
// 输出
|
// 输出
|
||||||
ExcelUtils.write(response, "板材导入模板.xlsx", "板材列表", PlateImportExcelVO.class, list);
|
ExcelUtils.write(response, "板材导入模板.xlsx", "板材列表", PlateImportExcelVO.class, list);
|
||||||
|
|||||||
+2
-2
@@ -66,7 +66,7 @@ public class RemainPlateController {
|
|||||||
@Operation(summary = "余料板批量核销")
|
@Operation(summary = "余料板批量核销")
|
||||||
@PreAuthorize("@ss.hasPermission('placeorder:remain')")
|
@PreAuthorize("@ss.hasPermission('placeorder:remain')")
|
||||||
public CommonResult<Boolean> updateRemainPlate(@RequestBody RemainPlateUptReqVO updateReqVO) {
|
public CommonResult<Boolean> updateRemainPlate(@RequestBody RemainPlateUptReqVO updateReqVO) {
|
||||||
remainPlateService.updateRemainPlateStatus(updateReqVO.getId(),
|
remainPlateService.updateRemainPlateStatus(updateReqVO.getIds(),
|
||||||
updateReqVO.getStatus(),
|
updateReqVO.getStatus(),
|
||||||
updateReqVO.getUseType(),
|
updateReqVO.getUseType(),
|
||||||
updateReqVO.getPlanId());
|
updateReqVO.getPlanId());
|
||||||
@@ -77,7 +77,7 @@ public class RemainPlateController {
|
|||||||
@Operation(summary = "余料板批量释放")
|
@Operation(summary = "余料板批量释放")
|
||||||
@PreAuthorize("@ss.hasPermission('placeorder:remain')")
|
@PreAuthorize("@ss.hasPermission('placeorder:remain')")
|
||||||
public CommonResult<Boolean> revertRemainPlate(@RequestBody RemainPlateUptReqVO updateReqVO) {
|
public CommonResult<Boolean> revertRemainPlate(@RequestBody RemainPlateUptReqVO updateReqVO) {
|
||||||
remainPlateService.revertRemainPlateStatus(updateReqVO.getId(),updateReqVO.getStatus());
|
remainPlateService.revertRemainPlateStatus(updateReqVO.getIds(),updateReqVO.getStatus());
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -10,7 +10,7 @@ import java.util.Set;
|
|||||||
public class RemainPlateUptReqVO {
|
public class RemainPlateUptReqVO {
|
||||||
|
|
||||||
@Schema(description = "余料板集", example = "16470")
|
@Schema(description = "余料板集", example = "16470")
|
||||||
private Set<Long> id;
|
private Set<Long> ids;
|
||||||
|
|
||||||
@Schema(description = "余料板状态,0未使用,1使用中", example = "1")
|
@Schema(description = "余料板状态,0未使用,1使用中", example = "1")
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|||||||
+5
-7
@@ -26,17 +26,15 @@ public interface DictTypeConstants {
|
|||||||
String SMS_SEND_STATUS = "system_sms_send_status"; // 短信发送状态
|
String SMS_SEND_STATUS = "system_sms_send_status"; // 短信发送状态
|
||||||
String SMS_RECEIVE_STATUS = "system_sms_receive_status"; // 短信接收状态
|
String SMS_RECEIVE_STATUS = "system_sms_receive_status"; // 短信接收状态
|
||||||
|
|
||||||
String TYPOGRAPHY_TYPE = "typographyType"; // 排版面
|
|
||||||
String PLATE_TEXTURE_TYPE = "plate_texture_type";// 板材纹路:0有 1无
|
String PLATE_TEXTURE_TYPE = "plate_texture_type";// 板材纹路:0有 1无
|
||||||
String GRAIN_TYPE = "grainType";//纹路类型
|
|
||||||
String DOOR_OPENING_DIRECTIONS = "doorOpeningDirections";//开门方向
|
|
||||||
String PRODUCT_TYPE = "productType";//产品类型
|
String PRODUCT_TYPE = "productType";//产品类型
|
||||||
String SYNTHESIS_TYPE = "synthesisType";//加工组类型
|
String SYNTHESIS_TYPE = "synthesisType";//加工组类型
|
||||||
String DOOR_OPEN_DIR = "doorOpeningDirections";// 开门方向
|
|
||||||
|
|
||||||
String HOLE_FACE = "hole_face";//孔加工面
|
|
||||||
String HOLE_DIR = "hole_direction";// 孔方向
|
|
||||||
String HOLE_TYPE = "hole_type";//孔类型
|
|
||||||
String PLATE_TEXTURE_TYPE_STATUS = "plateTextureTypeStatus";//板件纹路状态
|
String PLATE_TEXTURE_TYPE_STATUS = "plateTextureTypeStatus";//板件纹路状态
|
||||||
String PLATE_TEXTURE_TYPE_STATUS_TYPE = "plateTextureTypeStatusType";//板件纹路状态类型
|
String PLATE_TEXTURE_TYPE_STATUS_TYPE = "plateTextureTypeStatusType";//板件纹路状态类型
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user