新增webcad生产单导入

This commit is contained in:
gaoqr
2025-03-10 11:57:14 +08:00
parent 4d31aad2e7
commit aaf95a9c03
20 changed files with 2277 additions and 2 deletions
@@ -9,7 +9,8 @@ public enum DataTypeEnum {
FILE_IMPORT(0, "文件导入"),
API_IMPORT(1, "API导入"),
SOURCE_IMPORT(2, "数据源导入");
SOURCE_IMPORT(2, "数据源导入"),
WEBCAD_IMPORT(3, "webcad导入");
private final Integer status;
private String description;
@@ -112,6 +112,16 @@ public class OrderController {
public static final String ORDER_PLATE_MODEL = "imes_order_plate_model";
// public static final String ORDER_PLATE_MODEL_COMPRESS = "imes_order_plate_model_compress";
public static final String ORDER_PARTS_REMARK_MODEL = "imes_order_parts_remark_model";
@PostMapping("/create")
@Operation(summary = "创建生产单")
@PreAuthorize("@ss.hasPermission('production:manager-list:create')")
public CommonResult<Long> createOrder(@Valid @RequestBody OrderSaveReqVO createReqVO) {
return success(orderService.createOrder(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新生产单")
@PreAuthorize("@ss.hasPermission('production:manager-list:edit')")
@@ -114,4 +114,7 @@ public class OrderModelDO extends ESDocument {
private String remarkJson; // 普通备注(板材数据中)
@Schema(description = "特殊备注(板材数据中)")
private String specialRemark; // 特殊备注(板材数据中)
@Schema(description = "webcad板材数据")
private String boardData;
}
@@ -26,6 +26,13 @@ import java.util.Set;
*/
public interface OrderService {
/**
* 创建生产单表 order_{N}
*
* @param createReqVO 创建信息
* @return 编号
*/
Long createOrder(@Valid OrderSaveReqVO createReqVO);
/**
* 更新生产单表 order_{N}
@@ -81,7 +81,11 @@ import java.io.*;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.function.Function;
@@ -172,6 +176,28 @@ public class OrderServiceImpl implements OrderService {
@Autowired
private OrderImportHandlerFactory orderImportHandlerFactory;
@Override
public Long createOrder(OrderSaveReqVO createReqVO) {
//校验手机号是否合法
validatePhoneNumber(createReqVO.getPhoneNumber());
//验证自定义单号是否存在,业务员、拆单员是否存在
validateCustomOrderNoExists(createReqVO.getCustomOrderNo());
LocalDate orderDate = LocalDate.from(createReqVO.getOrderDate());
LocalDate deliveryDate = LocalDate.from(createReqVO.getDeliveryDate());
if (deliveryDate.isBefore(orderDate)) {
// 将 deliveryDate 设置为 orderDate 后的第 30 天
deliveryDate = orderDate.plusMonths(1);
}
createReqVO.setDeliveryDate(deliveryDate.atStartOfDay());
// 插入
OrderDO order = BeanUtils.toBean(createReqVO, OrderDO.class);
order.setId((Long)identifierGenerator.nextId(null));
orderMapper.insert(order);
// 返回
return order.getId();
}
@Override
public void updateOrder(OrderSaveReqVO updateReqVO) {
// 校验存在, 生产单未删除