From 680ceeba29b983fe9a84ab4ce668e76b4dc670a3 Mon Sep 17 00:00:00 2001 From: gaoqr <13665037151@163.com> Date: Thu, 15 May 2025 18:11:25 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81cad=E6=8B=86=E5=8D=95=E9=80=A0?= =?UTF-8?q?=E5=9E=8B/=E4=BE=A7=E9=9D=A2=E9=80=A0=E5=9E=8B/=E4=BA=8C?= =?UTF-8?q?=E7=BB=B4=E5=88=80=E8=B7=AF=E4=BF=AE=E6=AD=A3=E5=88=A4=E5=AE=9A?= =?UTF-8?q?=E8=A7=84=E5=88=99=EF=BC=9B2=E3=80=81=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3=E5=A2=9E=E5=8A=A0=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=EF=BC=9B3=E3=80=81=E6=96=B0=E5=A2=9Ecad=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=E3=80=81=E4=BF=AE?= =?UTF-8?q?=E5=A4=8Dcad=E5=BC=82=E6=AD=A5=E6=8B=86=E5=8D=95=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=92=8C=E7=94=9F=E4=BA=A7=E5=8D=95=E7=9A=84=E5=85=B3?= =?UTF-8?q?=E8=81=94=E7=BC=BA=E5=A4=B1=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/order/OrderPlatesDetailReqVO.java | 9 ++ .../OrderImportTaskController.java | 34 ++++++ .../vo/OrderImportTaskPageReqVO.java | 37 ++++++ .../vo/OrderImportTaskRespVO.java | 35 ++++++ .../admin/plate/vo/PlateRespVO.java | 9 ++ .../orderImport/OrderImportTaskDO.java | 5 + .../orderImport/OrderImportTaskMapper.java | 4 +- .../orderImport/OrderImportTaskService.java | 20 ++++ .../OrderImportTaskServiceImpl.java | 36 ++++++ .../mapper/orderItem/OrderItemMapper.xml | 2 +- .../orderImport/OrderImportController.java | 4 - .../webcad/vo/WebCadDataBlockReqVO.java | 17 ++- .../orderImport/OrderImportTaskDO.java | 4 +- .../plan/dal/dataobject/plate/PlateDO.java | 15 +++ .../orderImport/OrderImportTaskMapper.java | 4 +- .../WebCadOrderImportServiceImpl.java | 79 ++++++++---- .../WebCadOrderImportAsyncFactory.java | 19 ++- .../factory/WebCadOrderImportFactory.java | 113 ++++++++---------- 18 files changed, 340 insertions(+), 106 deletions(-) create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/OrderImportTaskController.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskPageReqVO.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskRespVO.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskService.java create mode 100644 cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskServiceImpl.java diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderPlatesDetailReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderPlatesDetailReqVO.java index e3378c66a..61f25c8a5 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderPlatesDetailReqVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/vo/order/OrderPlatesDetailReqVO.java @@ -63,6 +63,15 @@ public class OrderPlatesDetailReqVO { @Schema(description = "是否造型", requiredMode = Schema.RequiredMode.REQUIRED) private Boolean isSculpt; + @Schema(description = "是否侧面造型") + private boolean isSideSculpt; + + @Schema(description = "是否二维刀路") + private boolean has2DModel; + + @Schema(description = "是否侧面二维刀路") + private boolean hasSide2DModel; + @Schema(description = "是否排孔", requiredMode = Schema.RequiredMode.REQUIRED) private Boolean isRowHole; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/OrderImportTaskController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/OrderImportTaskController.java new file mode 100644 index 000000000..786bc3bcc --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/OrderImportTaskController.java @@ -0,0 +1,34 @@ +package com.cf.imes.module.executor.controller.admin.orderImportTask; + +import com.cf.imes.framework.common.pojo.CommonResult; +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskPageReqVO; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskRespVO; +import com.cf.imes.module.executor.service.orderImport.OrderImportTaskService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + * @author Gqr + * @since 2025/5/15 9:19 + */ +@Tag(name = "管理后台 - 生产单导入任务管理") +@RestController +@RequestMapping("/executor/order/task") +public class OrderImportTaskController { + + @Resource + private OrderImportTaskService orderImportTaskService; + + @GetMapping("") + @Operation(summary = "生产单导入任务查询") + public CommonResult> webCadOrderImport(@Valid OrderImportTaskPageReqVO reqVO) { + return CommonResult.success(orderImportTaskService.getPage(reqVO)); + } +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskPageReqVO.java new file mode 100644 index 000000000..6b382123b --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskPageReqVO.java @@ -0,0 +1,37 @@ +package com.cf.imes.module.executor.controller.admin.orderImportTask.vo; + +import com.cf.imes.framework.common.pojo.PageParam; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDateTime; + +import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +/** + * @author Gqr + * @since 2025/5/15 9:33 + */ +@Schema(description = "管理后台 - 生产单导入任务分页 Request VO") +@Data +@ToString(callSuper = true) +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class OrderImportTaskPageReqVO extends PageParam { + + @Schema(description = "生产单号") + private Long orderId; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + + @Schema(description = "导入文件名") + private String fileName; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskRespVO.java new file mode 100644 index 000000000..ec52d66f7 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/orderImportTask/vo/OrderImportTaskRespVO.java @@ -0,0 +1,35 @@ +package com.cf.imes.module.executor.controller.admin.orderImportTask.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author Gqr + * @since 2025/5/15 10:15 + */ +@Schema(description = "管理后台 - 生产单导入任务 Response VO") +@Data +public class OrderImportTaskRespVO { + @Schema(description = "任务号") + private Long id; + + @Schema(description = "关联生产单号") + private Long orderId; + + @Schema(description = "导入文件名") + private String fileName; + + @Schema(description = "导入状态:0:创建未消费、10:创建已接收、20:消费成功、30:消费失败、40:消费超时") + private Integer importStatus; + + @Schema(description = "任务状态:0:未导入、10:导入成功、20:导入失败") + private Integer status; + + @Schema(description = "导入类型:0:EXCEL、1:JSON、2:XML、3:API") + private Integer type; + + @Schema(description = "创建时间") + private LocalDateTime createTime; +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java index c9706907c..8aefdfda6 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plate/vo/PlateRespVO.java @@ -160,6 +160,15 @@ public class PlateRespVO extends PageParam { @ExcelProperty("是否造型") private Boolean isSculpt; + @Schema(description = "是否侧面造型") + private boolean isSideSculpt; + + @Schema(description = "是否二维刀路") + private boolean has2DModel; + + @Schema(description = "是否侧面二维刀路") + private boolean hasSide2DModel; + @Schema(description = "备注", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对") @ExcelProperty("备注") private String remark; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderImport/OrderImportTaskDO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderImport/OrderImportTaskDO.java index 640ae11bd..34af5d980 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderImport/OrderImportTaskDO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/dataobject/orderImport/OrderImportTaskDO.java @@ -40,6 +40,11 @@ public class OrderImportTaskDO extends BaseDO { @TableField(fill = FieldFill.INSERT_UPDATE) private Long organId; + /** + * 生产单id + */ + private Long orderId; + /** * 导入类型,参考OrderImportTypeEnum */ diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderImport/OrderImportTaskMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderImport/OrderImportTaskMapper.java index 7c18d78bf..5acbfd3f1 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderImport/OrderImportTaskMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/orderImport/OrderImportTaskMapper.java @@ -1,6 +1,6 @@ package com.cf.imes.module.executor.dal.mysql.orderImport; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.module.executor.dal.dataobject.orderImport.OrderImportTaskDO; import org.apache.ibatis.annotations.Mapper; @@ -11,5 +11,5 @@ import org.apache.ibatis.annotations.Mapper; * @since 2025/1/9 11:42 */ @Mapper -public interface OrderImportTaskMapper extends BaseMapper { +public interface OrderImportTaskMapper extends BaseMapperX { } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskService.java new file mode 100644 index 000000000..24f92fb56 --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskService.java @@ -0,0 +1,20 @@ +package com.cf.imes.module.executor.service.orderImport; + + +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskPageReqVO; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskRespVO; + +/** + * @author Gqr + * @since 2025/5/13 16:41 + */ +public interface OrderImportTaskService { + /** + * 分页查询 + * + * @param pageReqVO + * @return + */ + PageResult getPage(OrderImportTaskPageReqVO pageReqVO); +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskServiceImpl.java new file mode 100644 index 000000000..9c70528bf --- /dev/null +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/orderImport/OrderImportTaskServiceImpl.java @@ -0,0 +1,36 @@ +package com.cf.imes.module.executor.service.orderImport; + +import com.cf.imes.framework.common.pojo.PageResult; +import com.cf.imes.framework.common.util.object.BeanUtils; +import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.cf.imes.framework.organ.core.context.OrganContextHolder; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskPageReqVO; +import com.cf.imes.module.executor.controller.admin.orderImportTask.vo.OrderImportTaskRespVO; +import com.cf.imes.module.executor.dal.dataobject.orderImport.OrderImportTaskDO; +import com.cf.imes.module.executor.dal.mysql.orderImport.OrderImportTaskMapper; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * @author Gqr + * @since 2025/5/13 16:41 + */ +@Service +public class OrderImportTaskServiceImpl implements OrderImportTaskService { + @Resource + private OrderImportTaskMapper orderImportTaskMapper; + + @Override + public PageResult getPage(OrderImportTaskPageReqVO pageReqVO) { + LambdaQueryWrapperX queryWrapper = new LambdaQueryWrapperX() + .eq(OrderImportTaskDO::getOrganId, OrganContextHolder.getOrganId()) + .eqIfPresent(OrderImportTaskDO::getOrderId, pageReqVO.getOrderId()) + .betweenIfPresent(OrderImportTaskDO::getCreateTime, pageReqVO.getCreateTime()) + .eqIfPresent(OrderImportTaskDO::getFileName, pageReqVO.getFileName()) + .orderByDesc(OrderImportTaskDO::getCreateTime); + return BeanUtils.toBean(orderImportTaskMapper.selectPage(pageReqVO, queryWrapper), OrderImportTaskRespVO.class); + } + + +} diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml index 3176838d3..c17a864c5 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/resources/mapper/orderItem/OrderItemMapper.xml @@ -5,7 +5,7 @@