diff --git a/1772553077321105408.zlib b/1772553077321105408.zlib
deleted file mode 100644
index ec24bc462..000000000
Binary files a/1772553077321105408.zlib and /dev/null differ
diff --git a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java
index 5bd09683c..355d9c1b9 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-api/src/main/java/com/cf/imes/module/executor/enums/ErrorCodeConstants.java
@@ -19,7 +19,7 @@ public interface ErrorCodeConstants {
ErrorCode GOODS_NOT_EXISTS = new ErrorCode(1_001_108_000, "生产单商品不存在");
// ========== 生产单 TODO 补充编号 ==========
- ErrorCode ORDER_NOT_EXISTS = new ErrorCode(1_001_109_000, "生产单不存在");
+ ErrorCode ORDER_NOT_EXISTS = new ErrorCode(1_001_109_000, "存在生产单不存在");
// ========== 生产单 TODO 补充编号 ==========
ErrorCode MODULE_NOT_EXISTS = new ErrorCode(1_001_110_000, "模块不存在");
@@ -45,4 +45,8 @@ public interface ErrorCodeConstants {
ErrorCode SALESMAN_ORDER_NOT_EXISTS = new ErrorCode(1_001_118_000, "业务员不存在");
ErrorCode SPLITTER_ORDER_NOT_EXISTS = new ErrorCode(1_001_119_000, "拆单员不存在");
ErrorCode ORDER_PROCESS_NOT_EXISTS = new ErrorCode(1_001_119_000, "工序组不存在");
+ ErrorCode ORDER_PROCESS_EXISTS = new ErrorCode(1_001_119_000, "该生产单工序组已经存在");
+ ErrorCode PROCESS_GROUP_NOT_EXISTS = new ErrorCode(1_002_029_000, "工序组不存在");
+ ErrorCode ORDER_BODY_NOT_EXISTS = new ErrorCode(1_002_029_000, "此生产单中柜体并不存在不存在");
+ ErrorCode RAW_GOODS_NOT_EXISTS = new ErrorCode(1_002_029_000, "生产单中未用到此板材");
}
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/pom.xml b/cf-module-prod-executor/cf-module-prod-executor-biz/pom.xml
index 5af245e72..487363bfc 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/pom.xml
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/pom.xml
@@ -125,6 +125,10 @@
com.cf.imes
cf-spring-boot-starter-biz-data-permission
+
+ jakarta.servlet
+ jakarta.servlet-api
+
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/GoodsController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/GoodsController.java
index 6a6d3e96f..774470cba 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/GoodsController.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/GoodsController.java
@@ -1,5 +1,7 @@
package com.cf.imes.module.executor.controller.admin.goods;
+import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsImportRespVO;
+import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsSaveReqVO;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@@ -29,7 +31,7 @@ import com.cf.imes.module.executor.controller.admin.goods.vo.*;
import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO;
import com.cf.imes.module.executor.service.goods.GoodsService;
-@Tag(name = "管理后台 - 生产单商品")
+@Tag(name = "管理后台 - 生产单商品对应")
@RestController
@RequestMapping("/executor/goods")
@Validated
@@ -38,15 +40,16 @@ public class GoodsController {
@Resource
private GoodsService goodsService;
+// 新建生产单新板材商品对应
@PostMapping("/create")
- @Operation(summary = "创建生产单商品")
+ @Operation(summary = "对应生产单商品")
@PreAuthorize("@ss.hasPermission('executor:goods:create')")
- public CommonResult createGoods(@Valid @RequestBody GoodsSaveReqVO createReqVO) {
- return success(goodsService.createGoods(createReqVO));
+ public CommonResult> createGoods(@Valid @RequestBody Set createReqVOS) {
+ return success(goodsService.createCorrespondsGoods(createReqVOS));
}
@PutMapping("/update")
- @Operation(summary = "更新生产单商品")
+ @Operation(summary = "修改对应生产单商品")
@PreAuthorize("@ss.hasPermission('executor:goods:update')")
public CommonResult updateGoods(@Valid @RequestBody GoodsSaveReqVO updateReqVO) {
goodsService.updateGoods(updateReqVO);
@@ -54,7 +57,7 @@ public class GoodsController {
}
@DeleteMapping("/delete")
- @Operation(summary = "删除生产单商品")
+ @Operation(summary = "删除对应生产单商品")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('executor:goods:delete')")
public CommonResult deleteGoods(@RequestParam("id") Long id) {
@@ -63,7 +66,7 @@ public class GoodsController {
}
@GetMapping("/get")
- @Operation(summary = "获得生产单商品")
+ @Operation(summary = "获得对应生产单商品")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('executor:goods:query')")
public CommonResult getGoods(@RequestParam("id") Long id) {
@@ -72,24 +75,10 @@ public class GoodsController {
}
@GetMapping("/page")
- @Operation(summary = "获得生产单商品分页")
+ @Operation(summary = "获得对应生产单商品分页")
@PreAuthorize("@ss.hasPermission('executor:goods:query')")
public CommonResult> getGoodsPage(@Valid GoodsPageReqVO pageReqVO) {
PageResult pageResult = goodsService.getGoodsPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, GoodsRespVO.class));
}
-
- @GetMapping("/export-excel")
- @Operation(summary = "导出生产单商品 Excel")
- @PreAuthorize("@ss.hasPermission('executor:goods:export')")
- @OperateLog(type = EXPORT)
- public void exportGoodsExcel(@Valid GoodsPageReqVO pageReqVO,
- HttpServletResponse response) throws IOException {
- pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
- List list = goodsService.getGoodsPage(pageReqVO).getList();
- // 导出 Excel
- ExcelUtils.write(response, "生产单商品.xls", "数据", GoodsRespVO.class,
- BeanUtils.toBean(list, GoodsRespVO.class));
- }
-
}
\ No newline at end of file
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java
index 29d41d0ce..287a221de 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsPageReqVO.java
@@ -1,6 +1,8 @@
package com.cf.imes.module.executor.controller.admin.goods.vo;
import lombok.*;
+
+import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.cf.imes.framework.common.pojo.PageParam;
@@ -15,13 +17,16 @@ import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH
@ToString(callSuper = true)
public class GoodsPageReqVO extends PageParam {
- @Schema(description = "生产单号")
+ @Schema(description = "生产单号", example = "12114")
private Long orderId;
- @Schema(description = "商品 ID", example = "18975")
- private String goodsId;
+ @Schema(description = "设计端商品ID", example = "832")
+ private Long rawGoodsId;
- @Schema(description = "商品 ID", example = "王五")
+ @Schema(description = "商品 ID", example = "243")
+ private Long goodsId;
+
+ @Schema(description = "商品名称", example = "晨丰")
private String goodsName;
@Schema(description = "材质:颗粒板、欧松板、多层板、生态板、禾香板、密度板、实木、铝蜂窝板、铝塑板")
@@ -31,16 +36,16 @@ public class GoodsPageReqVO extends PageParam {
private String color;
@Schema(description = "宽度")
- private Double width;
+ private BigDecimal width;
@Schema(description = "高度")
- private Double height;
+ private BigDecimal height;
@Schema(description = "厚度")
- private Double thickness;
+ private BigDecimal thickness;
- @Schema(description = "价格", example = "21231")
- private Double price;
+ @Schema(description = "价格", example = "7305")
+ private BigDecimal price;
@Schema(description = "品牌")
private String brand;
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java
index bbbbab3ae..05196514e 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsRespVO.java
@@ -2,6 +2,8 @@ package com.cf.imes.module.executor.controller.admin.goods.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
+
+import java.math.BigDecimal;
import java.util.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
@@ -13,19 +15,23 @@ import com.alibaba.excel.annotation.*;
@ExcelIgnoreUnannotated
public class GoodsRespVO {
- @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26190")
+ @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "4109")
@ExcelProperty("主键")
private Long id;
- @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
+ @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "12114")
@ExcelProperty("生产单号")
- private Long orderNo;
+ private Long orderId;
- @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18975")
+ @Schema(description = "设计端商品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "832")
+ @ExcelProperty("设计端商品ID")
+ private Long rawGoodsId;
+
+ @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "243")
@ExcelProperty("商品 ID")
- private String goodsId;
+ private Long goodsId;
- @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
+ @Schema(description = "商品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰")
@ExcelProperty("商品名称")
private String goodsName;
@@ -39,19 +45,19 @@ public class GoodsRespVO {
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("宽度")
- private Double width;
+ private BigDecimal width;
@Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("高度")
- private Double height;
+ private BigDecimal height;
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("厚度")
- private Double thickness;
+ private BigDecimal thickness;
- @Schema(description = "价格", requiredMode = Schema.RequiredMode.REQUIRED, example = "21231")
+ @Schema(description = "价格", requiredMode = Schema.RequiredMode.REQUIRED, example = "7305")
@ExcelProperty("价格")
- private Double price;
+ private BigDecimal price;
@Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("品牌")
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java
index a6fcb0a64..2ba0405cf 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/goods/vo/GoodsSaveReqVO.java
@@ -2,6 +2,8 @@ package com.cf.imes.module.executor.controller.admin.goods.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
+
+import java.math.BigDecimal;
import java.util.*;
import javax.validation.constraints.*;
@@ -9,18 +11,22 @@ import javax.validation.constraints.*;
@Data
public class GoodsSaveReqVO {
- @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26190")
+ @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "4109")
private Long id;
- @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
+ @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "12114")
@NotNull(message = "生产单号不能为空")
- private Long orderNo;
+ private Long orderId;
- @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "18975")
- @NotNull(message = "商品 ID不能为空")
- private String goodsId;
+ @Schema(description = "设计端商品ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "832")
+ @NotEmpty(message = "设计端商品ID不能为空")
+ private Long rawGoodsId;
- @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
+ @Schema(description = "商品 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "243")
+ @NotEmpty(message = "商品 ID不能为空")
+ private Long goodsId;
+
+ @Schema(description = "商品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰")
@NotEmpty(message = "商品名称不能为空")
private String goodsName;
@@ -34,19 +40,19 @@ public class GoodsSaveReqVO {
@Schema(description = "宽度", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "宽度不能为空")
- private Double width;
+ private BigDecimal width;
@Schema(description = "高度", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "高度不能为空")
- private Double height;
+ private BigDecimal height;
@Schema(description = "厚度", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "厚度不能为空")
- private Double thickness;
+ private BigDecimal thickness;
- @Schema(description = "价格", requiredMode = Schema.RequiredMode.REQUIRED, example = "21231")
+ @Schema(description = "价格", requiredMode = Schema.RequiredMode.REQUIRED, example = "7305")
@NotNull(message = "价格不能为空")
- private Double price;
+ private BigDecimal price;
@Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "品牌不能为空")
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/ModuleItemController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/ModuleItemController.java
deleted file mode 100644
index 031793f27..000000000
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/ModuleItemController.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package com.cf.imes.module.executor.controller.admin.moduleitem;
-
-import org.springframework.web.bind.annotation.*;
-import javax.annotation.Resource;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.security.access.prepost.PreAuthorize;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Operation;
-
-import javax.validation.constraints.*;
-import javax.validation.*;
-import javax.servlet.http.*;
-import java.util.*;
-import java.io.IOException;
-
-import com.cf.imes.framework.common.pojo.PageParam;
-import com.cf.imes.framework.common.pojo.PageResult;
-import com.cf.imes.framework.common.pojo.CommonResult;
-import com.cf.imes.framework.common.util.object.BeanUtils;
-import static com.cf.imes.framework.common.pojo.CommonResult.success;
-
-import com.cf.imes.framework.excel.core.util.ExcelUtils;
-
-import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
-import static com.cf.imes.framework.operatelog.core.enums.OperateTypeEnum.*;
-
-import com.cf.imes.module.executor.controller.admin.moduleitem.vo.*;
-import com.cf.imes.module.executor.dal.dataobject.moduleitem.ModuleItemDO;
-import com.cf.imes.module.executor.service.moduleitem.ModuleItemService;
-
-@Tag(name = "管理后台 - 生产单模块明细")
-@RestController
-@RequestMapping("/executor/module-item")
-@Validated
-public class ModuleItemController {
-
- @Resource
- private ModuleItemService moduleItemService;
-
- @PostMapping("/create")
- @Operation(summary = "创建生产单模块明细")
- @PreAuthorize("@ss.hasPermission('executor:module-item:create')")
- public CommonResult createModuleItem(@Valid @RequestBody ModuleItemSaveReqVO createReqVO) {
- return success(moduleItemService.createModuleItem(createReqVO));
- }
-
- @PutMapping("/update")
- @Operation(summary = "更新生产单模块明细")
- @PreAuthorize("@ss.hasPermission('executor:module-item:update')")
- public CommonResult updateModuleItem(@Valid @RequestBody ModuleItemSaveReqVO updateReqVO) {
- moduleItemService.updateModuleItem(updateReqVO);
- return success(true);
- }
-
- @DeleteMapping("/delete")
- @Operation(summary = "删除生产单模块明细")
- @Parameter(name = "id", description = "编号", required = true)
- @PreAuthorize("@ss.hasPermission('executor:module-item:delete')")
- public CommonResult deleteModuleItem(@RequestParam("id") Long id) {
- moduleItemService.deleteModuleItem(id);
- return success(true);
- }
-
- @GetMapping("/get")
- @Operation(summary = "获得生产单模块明细")
- @Parameter(name = "id", description = "编号", required = true, example = "1024")
- @PreAuthorize("@ss.hasPermission('executor:module-item:query')")
- public CommonResult getModuleItem(@RequestParam("id") Long id) {
- ModuleItemDO moduleItem = moduleItemService.getModuleItem(id);
- return success(BeanUtils.toBean(moduleItem, ModuleItemRespVO.class));
- }
-
- @GetMapping("/page")
- @Operation(summary = "获得生产单模块明细分页")
- @PreAuthorize("@ss.hasPermission('executor:module-item:query')")
- public CommonResult> getModuleItemPage(@Valid ModuleItemPageReqVO pageReqVO) {
- PageResult pageResult = moduleItemService.getModuleItemPage(pageReqVO);
- return success(BeanUtils.toBean(pageResult, ModuleItemRespVO.class));
- }
-
- @GetMapping("/export-excel")
- @Operation(summary = "导出生产单模块明细 Excel")
- @PreAuthorize("@ss.hasPermission('executor:module-item:export')")
- @OperateLog(type = EXPORT)
- public void exportModuleItemExcel(@Valid ModuleItemPageReqVO pageReqVO,
- HttpServletResponse response) throws IOException {
- pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
- List list = moduleItemService.getModuleItemPage(pageReqVO).getList();
- // 导出 Excel
- ExcelUtils.write(response, "生产单模块明细.xls", "数据", ModuleItemRespVO.class,
- BeanUtils.toBean(list, ModuleItemRespVO.class));
- }
-
-}
\ No newline at end of file
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemPageReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemPageReqVO.java
deleted file mode 100644
index 6a88154e5..000000000
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemPageReqVO.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.cf.imes.module.executor.controller.admin.moduleitem.vo;
-
-import lombok.*;
-import java.util.*;
-import io.swagger.v3.oas.annotations.media.Schema;
-import com.cf.imes.framework.common.pojo.PageParam;
-
-@Schema(description = "管理后台 - 生产单模块明细分页 Request VO")
-@Data
-@EqualsAndHashCode(callSuper = true)
-@ToString(callSuper = true)
-public class ModuleItemPageReqVO extends PageParam {
-
- @Schema(description = "生产单号")
- private Long orderNo;
-
- @Schema(description = "房间 ID", example = "1469")
- private Long roomId;
-
- @Schema(description = "柜体 ID", example = "3460")
- private Long bodyId;
-
- @Schema(description = "模块类型 ID", example = "15993")
- private Long typeId;
-
- @Schema(description = "模块 ID", example = "13998")
- private Long moduleId;
-
- @Schema(description = "明细 ID", example = "11426")
- private Long itemId;
-
-}
\ No newline at end of file
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemRespVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemRespVO.java
deleted file mode 100644
index bd5b6ec9b..000000000
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemRespVO.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.cf.imes.module.executor.controller.admin.moduleitem.vo;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.*;
-import java.util.*;
-import java.util.*;
-import com.alibaba.excel.annotation.*;
-
-@Schema(description = "管理后台 - 生产单模块明细 Response VO")
-@Data
-@ExcelIgnoreUnannotated
-public class ModuleItemRespVO {
-
- @Schema(description = "记录 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15563")
- @ExcelProperty("记录 ID")
- private Long id;
-
- @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
- @ExcelProperty("生产单号")
- private Long orderNo;
-
- @Schema(description = "房间 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1469")
- @ExcelProperty("房间 ID")
- private Long roomId;
-
- @Schema(description = "柜体 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3460")
- @ExcelProperty("柜体 ID")
- private Long bodyId;
-
- @Schema(description = "模块类型 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15993")
- @ExcelProperty("模块类型 ID")
- private Long typeId;
-
- @Schema(description = "模块 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13998")
- @ExcelProperty("模块 ID")
- private Long moduleId;
-
- @Schema(description = "明细 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11426")
- @ExcelProperty("明细 ID")
- private Long itemId;
-
-}
\ No newline at end of file
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemSaveReqVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemSaveReqVO.java
deleted file mode 100644
index 7e83e62c2..000000000
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/moduleitem/vo/ModuleItemSaveReqVO.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.cf.imes.module.executor.controller.admin.moduleitem.vo;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.*;
-import java.util.*;
-import javax.validation.constraints.*;
-
-@Schema(description = "管理后台 - 生产单模块明细新增/修改 Request VO")
-@Data
-public class ModuleItemSaveReqVO {
-
- @Schema(description = "记录 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15563")
- private Long id;
-
- @Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
- @NotNull(message = "生产单号不能为空")
- private Long orderNo;
-
- @Schema(description = "房间 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1469")
- @NotNull(message = "房间 ID不能为空")
- private Long roomId;
-
- @Schema(description = "柜体 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3460")
- @NotNull(message = "柜体 ID不能为空")
- private Long bodyId;
-
- @Schema(description = "模块类型 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "15993")
- @NotNull(message = "模块类型 ID不能为空")
- private Long typeId;
-
- @Schema(description = "模块 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13998")
- @NotNull(message = "模块 ID不能为空")
- private Long moduleId;
-
- @Schema(description = "明细 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11426")
- @NotNull(message = "明细 ID不能为空")
- private Long itemId;
-
-}
\ No newline at end of file
diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java
index c8993bf24..fdbca0234 100644
--- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java
+++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/order/OrderController.java
@@ -1,8 +1,10 @@
package com.cf.imes.module.executor.controller.admin.order;
import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
-import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO;
-import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
+import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
+import com.cf.imes.module.executor.dal.dataobject.orderModuleExtra.OrderModuleExtraDO;
+import com.cf.imes.module.executor.util.FileTypeChangeUtil;
+import com.cf.imes.module.executor.util.deviseData.Detail;
import io.swagger.v3.oas.annotations.Parameters;
import org.springframework.util.ResourceUtils;
import org.springframework.web.bind.annotation.*;
@@ -48,7 +50,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
-@Tag(name = "管理后台 - 生产单表 order_{N}")
+@Tag(name = "管理后台 - 生产单表")
@RestController
@RequestMapping("/executor/order")
@Validated
@@ -57,17 +59,20 @@ public class OrderController {
@Resource
private OrderService orderService;
+ @Resource
+ private FileTypeChangeUtil fileTypeChangeUtil;
+
private static final Logger log = LoggerFactory.getLogger(OrderController.class);
@PostMapping("/create")
- @Operation(summary = "创建生产单表 order_{N}")
+ @Operation(summary = "创建生产单")
@PreAuthorize("@ss.hasPermission('executor:order:create')")
public CommonResult createOrder(@Valid @RequestBody OrderSaveReqVO createReqVO) {
return success(orderService.createOrder(createReqVO));
}
@PutMapping("/update")
- @Operation(summary = "更新生产单表 order_{N}")
+ @Operation(summary = "更新生产单")
@PreAuthorize("@ss.hasPermission('executor:order:update')")
public CommonResult updateOrder(@Valid @RequestBody OrderSaveReqVO updateReqVO) {
orderService.updateOrder(updateReqVO);
@@ -75,16 +80,16 @@ public class OrderController {
}
@DeleteMapping("/delete")
- @Operation(summary = "删除生产单表 order_{N}")
+ @Operation(summary = "删除生产单")
@Parameter(name = "orderIds", description = "生产单id组", required = true, example = "1,2")
@PreAuthorize("@ss.hasPermission('executor:order:delete')")
- public CommonResult deleteOrder(@RequestParam("postIds") Collection orderIds) {
+ public CommonResult deleteOrder(@RequestParam("orderIds") Collection orderIds) {
orderService.deleteOrder(orderIds);
return success(true);
}
@GetMapping("/get")
- @Operation(summary = "获得生产单表 order_{N}")
+ @Operation(summary = "获得生产单")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('executor:order:query')")
public CommonResult getOrder(@RequestParam("id") Long id) {
@@ -93,7 +98,7 @@ public class OrderController {
}
@GetMapping("/page")
- @Operation(summary = "获得生产单表 order_{N}分页")
+ @Operation(summary = "获得生产单分页")
@PreAuthorize("@ss.hasPermission('executor:order:query')")
public CommonResult> getOrderPage(@Valid OrderPageReqVO pageReqVO) {
PageResult pageResult = orderService.getOrderPage(pageReqVO);
@@ -101,7 +106,7 @@ public class OrderController {
}
@GetMapping("/export-excel")
- @Operation(summary = "导出生产单表 order_{N} Excel")
+ @Operation(summary = "导出生产单Excel")
@PreAuthorize("@ss.hasPermission('executor:order:export')")
@OperateLog(type = EXPORT)
public void exportOrderExcel(@Valid OrderPageReqVO pageReqVO,
@@ -157,19 +162,56 @@ public class OrderController {
@Parameters({
@Parameter(name = "file", description = "Excel 文件", required = true),
@Parameter(name = "isAddPlate", description = "是否为生产单新增板材", example = "false"),
- @Parameter(name = "upload", description = "是否只上传表头,默认为只上传表头", example = "false")
+ @Parameter(name = "upload", description = "是 更新、否 新建", example = "false"),
+ @Parameter(name = "orderSaveReqVO", description = "生产单新增参数", required = true)
})
@PreAuthorize("@ss.hasPermission('executor:order:import')")
public CommonResult importExcel(@RequestPart("file") MultipartFile file,
@RequestParam(value = "isAddPlate", required = false, defaultValue = "false") Boolean isAddPlate,
@RequestParam(value = "upload", required = false, defaultValue = "false") Boolean upload,
@RequestPart("orderSaveReqVO") OrderSaveReqVO createReqVO) throws IOException {
+ OrderImportRespVO orderImportRespVO = OrderImportRespVO.builder().createOrder(new ArrayList<>())
+ .updateOrder(new ArrayList<>()).failureOrder(new LinkedHashMap<>()).build();
- OrderImportRespVO orderImportRespVO = orderService.importOrderList(upload, file, createReqVO, isAddPlate);
- return success(orderImportRespVO);
+// 判断是否更新板材
+ if(!isAddPlate){//不需要添加板材
+ if(upload){
+ orderService.updateOrder(createReqVO);//更新
+ orderImportRespVO.getUpdateOrder().add(createReqVO.getId()+"单独更新生产单成功");
+ }else {
+ Long id = orderService.createOrder(createReqVO);//新建
+ orderImportRespVO.getCreateOrder().add(id + "单独新增生产单成功");
+ }
+ return success(orderImportRespVO);
+ }else {
+ Long id = 0L;
+ if (upload) {
+ orderService.updateOrder(createReqVO);//更新
+ id = createReqVO.getId();
+ orderImportRespVO.getUpdateOrder().add(id + "新增生产单成功");
+ } else {
+ id = orderService.createOrder(createReqVO);//新建
+ orderImportRespVO.getCreateOrder().add(id + "新增生产单成功");
+ }
+// 解析导入文件,生成统一格式
+ List list = new ArrayList<>();
+ if (createReqVO.getDataType() == 1) {//CAD
+
+ } else if (createReqVO.getDataType() == 2) {//WebCAD
+
+ } else if (createReqVO.getDataType() == 3) {//Excel
+// 文件数据读取
+ list = fileTypeChangeUtil.fileDataChange(file);
+ if (list == null || list.size() == 0) {
+ orderImportRespVO.getFailureOrder().put("生产单导入错误", String.valueOf(fileTypeChangeUtil.getValue()));
+ }
+ }
+ OrderImportRespVO respVO = orderService.importOrderList(list , id , orderImportRespVO);
+ return success(respVO);
+ }
}
- // 清理生产单
+// 清理生产单
@DeleteMapping("/clean")
@Operation(summary = "清理生产单")
@Parameter(name = "orderId", description = "生产单编号", required = true, example = "1024")
@@ -179,7 +221,7 @@ public class OrderController {
return success(true);
}
- // 获取当前条件下所有生产单信息
+// 获取当前条件下所有生产单信息
@GetMapping("/allOrder")
@Operation(summary = "获得所有生产单")
@PreAuthorize("@ss.hasPermission('executor:order:query')")
@@ -187,25 +229,67 @@ public class OrderController {
List pageResult = orderService.getAllOrderCheck(pageReqVO);
return success(BeanUtils.toBean(pageResult, OrderRespVO.class));
}
-// 生产单增加工序
- @PostMapping("/addOrderProcess")
- @Operation(summary = "生产单增加工序")
+
+// 获得 房间和柜体 信息
+ @GetMapping("/get-room")
+ @Operation(summary = "获得房间——柜体 基本信息")
+ @Parameter(name = "orderId", description = "生产单编号", required = true, example = "1024")
+ @PreAuthorize("@ss.hasPermission('executor:order:query')")
+ public CommonResult