1. 新增工序信息管理、工艺信息管理、组织工艺工序信息管理功能

This commit is contained in:
chenbowen
2025-11-12 15:23:12 +08:00
parent 33bea2cad0
commit 75382dfbeb
26 changed files with 839 additions and 111 deletions

View File

@@ -23,7 +23,7 @@ public class ProcessingInfomationPageReqVO extends PageParam {
private String name; private String name;
@Schema(description = "工艺类型值") @Schema(description = "工艺类型值")
private Long typeValue; private String typeValue;
@Schema(description = "状态值-工艺状态") @Schema(description = "状态值-工艺状态")
private String statusValue; private String statusValue;

View File

@@ -30,7 +30,7 @@ public class ProcessingInfomationRespVO {
@Schema(description = "工艺类型值") @Schema(description = "工艺类型值")
@ExcelProperty("工艺类型值") @ExcelProperty("工艺类型值")
private Long typeValue; private String typeValue;
@Schema(description = "状态值-工艺状态", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "状态值-工艺状态", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("状态值-工艺状态") @ExcelProperty("状态值-工艺状态")

View File

@@ -26,7 +26,7 @@ public class ProcessingInfomationSaveReqVO {
private String name; private String name;
@Schema(description = "工艺类型值") @Schema(description = "工艺类型值")
private Long typeValue; private String typeValue;
@Schema(description = "状态值-工艺状态", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "状态值-工艺状态", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "状态值-工艺状态不能为空") @NotEmpty(message = "状态值-工艺状态不能为空")

View File

@@ -23,7 +23,7 @@ public class ProcessingInfomationTreeRespVO {
private String name; private String name;
@Schema(description = "工艺类型值") @Schema(description = "工艺类型值")
private Long typeValue; private String typeValue;
@Schema(description = "状态值-工艺状态") @Schema(description = "状态值-工艺状态")
private String statusValue; private String statusValue;

View File

@@ -9,8 +9,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import jakarta.validation.constraints.*; import jakarta.validation.Valid;
import jakarta.validation.*;
import jakarta.servlet.http.*; import jakarta.servlet.http.*;
import java.util.*; import java.util.*;
import java.io.IOException; import java.io.IOException;
@@ -19,7 +18,6 @@ import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO;
import com.zt.plat.framework.common.pojo.PageParam; import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.util.object.BeanUtils;
import static com.zt.plat.framework.common.pojo.CommonResult.success; import static com.zt.plat.framework.common.pojo.CommonResult.success;
import com.zt.plat.framework.excel.core.util.ExcelUtils; import com.zt.plat.framework.excel.core.util.ExcelUtils;
@@ -28,7 +26,6 @@ import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
import com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo.*; import com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo.*;
import com.zt.plat.module.base.dal.dataobject.processinginfomationoperation.ProcessingInfomationOperationDO;
import com.zt.plat.module.base.service.processinginfomationoperation.ProcessingInfomationOperationService; import com.zt.plat.module.base.service.processinginfomationoperation.ProcessingInfomationOperationService;
@Tag(name = "管理后台 - 工艺工序") @Tag(name = "管理后台 - 工艺工序")
@@ -44,7 +41,7 @@ public class ProcessingInfomationOperationController {
@PostMapping("/create") @PostMapping("/create")
@Operation(summary = "创建工艺工序") @Operation(summary = "创建工艺工序")
@PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:create')") @PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:create')")
public CommonResult<ProcessingInfomationOperationRespVO> createProcessingInfomationOperation(@Valid @RequestBody ProcessingInfomationOperationSaveReqVO createReqVO) { public CommonResult<ProcessingInfomationOperationDetailRespVO> createProcessingInfomationOperation(@Valid @RequestBody ProcessingInfomationOperationSaveReqVO createReqVO) {
return success(processingInfomationOperationService.createProcessingInfomationOperation(createReqVO)); return success(processingInfomationOperationService.createProcessingInfomationOperation(createReqVO));
} }
@@ -78,9 +75,8 @@ public class ProcessingInfomationOperationController {
@Operation(summary = "获得工艺工序") @Operation(summary = "获得工艺工序")
@Parameter(name = "id", description = "编号", required = true, example = "1024") @Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:query')") @PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:query')")
public CommonResult<ProcessingInfomationOperationRespVO> getProcessingInfomationOperation(@RequestParam("id") Long id) { public CommonResult<ProcessingInfomationOperationDetailRespVO> getProcessingInfomationOperation(@RequestParam("id") Long id) {
ProcessingInfomationOperationDO processingInfomationOperation = processingInfomationOperationService.getProcessingInfomationOperation(id); return success(processingInfomationOperationService.getProcessingInfomationOperation(id));
return success(BeanUtils.toBean(processingInfomationOperation, ProcessingInfomationOperationRespVO.class));
} }
@GetMapping("/page") @GetMapping("/page")
@@ -91,6 +87,13 @@ public class ProcessingInfomationOperationController {
return success(pageResult); return success(pageResult);
} }
@GetMapping("/organization/page")
@Operation(summary = "获得组织工艺工序分页")
@PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:query')")
public CommonResult<PageResult<ProcessingInfomationOperationOrganizationRespVO>> getOrganizationOperationPage(@Valid ProcessingInfomationOperationOrganizationPageReqVO pageReqVO) {
return success(processingInfomationOperationService.getOrganizationOperationPage(pageReqVO));
}
@GetMapping("/export-excel") @GetMapping("/export-excel")
@Operation(summary = "导出工艺工序 Excel") @Operation(summary = "导出工艺工序 Excel")
@PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:export')") @PreAuthorize("@ss.hasPermission('base:processing-infomation-operation:export')")

View File

@@ -0,0 +1,20 @@
package com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Collections;
import java.util.List;
/**
* 工艺工序详情 Response VO
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class ProcessingInfomationOperationDetailRespVO extends ProcessingInfomationOperationRespVO {
@Schema(description = "工艺工序关联的物料信息")
private List<ProcessingInfomationOperationMaterialRespVO> materials = Collections.emptyList();
}

View File

@@ -0,0 +1,54 @@
package com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Collections;
import java.util.List;
/**
* 工艺工序物料 Response VO包含扩展信息
*/
@Data
public class ProcessingInfomationOperationMaterialRespVO {
@Schema(description = "主键ID", example = "10086")
private Long id;
@Schema(description = "工艺工序ID", example = "20001")
private Long processingOperationId;
@Schema(description = "物料ID", example = "30001")
private Long materialId;
@Schema(description = "物料编码")
private String materialCode;
@Schema(description = "物料名称")
private String materialName;
@Schema(description = "物料类型值", example = "input")
private String typeValue;
@Schema(description = "备注")
private String remark;
@Schema(description = "关联组织ID列表")
private List<Long> departmentIds = Collections.emptyList();
@Schema(description = "关联组织信息")
private List<ProcessingInfomationOperationMaterialDeptRespVO> departments = Collections.emptyList();
@Schema(description = "创建时间")
private LocalDateTime createTime;
@Data
public static class ProcessingInfomationOperationMaterialDeptRespVO {
@Schema(description = "组织ID", example = "50001")
private Long id;
@Schema(description = "组织名称")
private String name;
}
}

View File

@@ -0,0 +1,32 @@
package com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.util.List;
/**
* 工艺工序物料保存 Request VO
*/
@Data
public class ProcessingInfomationOperationMaterialSaveReqVO {
@Schema(description = "主键ID", example = "10086")
private Long id;
@Schema(description = "物料ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "20001")
@NotNull(message = "物料不能为空")
private Long materialId;
@Schema(description = "物料类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "input")
@NotEmpty(message = "物料类型不能为空")
private String typeValue;
@Schema(description = "备注")
private String remark;
@Schema(description = "组织ID集合")
private List<Long> departmentIds;
}

View File

@@ -0,0 +1,33 @@
package com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo;
import com.zt.plat.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 组织工艺工序分页 Request VO
*/
@Data
public class ProcessingInfomationOperationOrganizationPageReqVO extends PageParam {
@Schema(description = "组织ID", example = "1001")
private Long deptId;
@Schema(description = "工艺ID", example = "2001")
private Long processingId;
@Schema(description = "工序ID", example = "3001")
private Long operationId;
@Schema(description = "是否关键工序")
private Integer isKey;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@@ -0,0 +1,52 @@
package com.zt.plat.module.base.controller.admin.processinginfomationoperation.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 组织工艺工序 Response VO
*/
@Data
public class ProcessingInfomationOperationOrganizationRespVO {
@Schema(description = "工艺工序关联ID")
private Long id;
@Schema(description = "组织ID")
private Long deptId;
@Schema(description = "组织名称")
private String deptName;
@Schema(description = "工艺ID")
private Long processingId;
@Schema(description = "工艺编码")
private String processingCode;
@Schema(description = "工艺名称")
private String processingName;
@Schema(description = "工序ID")
private Long operationId;
@Schema(description = "工序编码")
private String operationCode;
@Schema(description = "工序名称")
private String operationName;
@Schema(description = "工序是否关键")
private Integer isKey;
@Schema(description = "工艺状态")
private String processingStatus;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
private LocalDateTime createTime;
}

Some files were not shown because too many files have changed in this diff Show More