fix:物料使用记录

This commit is contained in:
shusir
2026-02-25 18:11:37 +08:00
parent ffd4b2cac4
commit 4312630da6
25 changed files with 414 additions and 51 deletions

View File

@@ -3,6 +3,7 @@ package com.zt.plat.module.qms.resource.material.controller.admin;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInfomationPageReqVO;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInfomationRespVO;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialInfomationSaveReqVO;
import com.zt.plat.module.qms.resource.material.controller.vo.query.MaterialInfomationQueryVO;
import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialInfomationDO;
import com.zt.plat.module.qms.resource.material.service.MaterialInfomationService;
import org.springframework.web.bind.annotation.*;
@@ -44,14 +45,14 @@ public class MaterialInfomationController implements BusinessControllerMarker {
@Resource
private MaterialInfomationService materialInfomationService;
@PostMapping("/create")
// @PostMapping("/create")
@Operation(summary = "创建物料实例")
@PreAuthorize("@ss.hasPermission('qms:material-infomation:create')")
public CommonResult<MaterialInfomationRespVO> createMaterialInfomation(@Valid @RequestBody MaterialInfomationSaveReqVO createReqVO) {
return success(materialInfomationService.createMaterialInfomation(createReqVO));
}
@PutMapping("/update")
// @PutMapping("/update")
@Operation(summary = "更新物料实例")
@PreAuthorize("@ss.hasPermission('qms:material-infomation:update')")
public CommonResult<Boolean> updateMaterialInfomation(@Valid @RequestBody MaterialInfomationSaveReqVO updateReqVO) {
@@ -59,7 +60,7 @@ public class MaterialInfomationController implements BusinessControllerMarker {
return success(true);
}
@DeleteMapping("/delete")
// @DeleteMapping("/delete")
@Operation(summary = "删除物料实例")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('qms:material-infomation:delete')")
@@ -68,7 +69,7 @@ public class MaterialInfomationController implements BusinessControllerMarker {
return success(true);
}
@DeleteMapping("/delete-list")
// @DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除物料实例")
@PreAuthorize("@ss.hasPermission('qms:material-infomation:delete')")
@@ -82,16 +83,15 @@ public class MaterialInfomationController implements BusinessControllerMarker {
@Parameter(name = "id", description = "编号", required = true, example = "1024")
// @PreAuthorize("@ss.hasPermission('qms:material-infomation:query')")
public CommonResult<MaterialInfomationRespVO> getMaterialInfomation(@RequestParam("id") Long id) {
MaterialInfomationDO materialInfomation = materialInfomationService.getMaterialInfomation(id);
return success(BeanUtils.toBean(materialInfomation, MaterialInfomationRespVO.class));
MaterialInfomationRespVO infomationRespVO = materialInfomationService.getMaterialInfomationWithPdtInfoByInfId(id);
return success(infomationRespVO);
}
@GetMapping("/get-by-code")
@Operation(summary = "根据物料编码获取物料")
@Parameter(name = "code", description = "编码", required = true, example = "SN001")
// @PreAuthorize("@ss.hasPermission('qms:material-infomation:query')")
public CommonResult<MaterialInfomationRespVO> getMaterialInfomationWithPdtInfoByInfCode(@RequestParam("code") String code) {
MaterialInfomationRespVO materialInfomation = materialInfomationService.getMaterialInfomationWithPdtInfoByInfCode(code);
public CommonResult<MaterialInfomationRespVO> getMaterialInfomationWithPdtInfoByInfCode(@Valid MaterialInfomationQueryVO queryVO) {
MaterialInfomationRespVO materialInfomation = materialInfomationService.getMaterialInfomationWithPdtInfoByInfCode(queryVO);
return success(materialInfomation);
}

View File

@@ -90,8 +90,8 @@ public class MaterialUseRecordController implements BusinessControllerMarker {
@Operation(summary = "获得使用记录分页")
// @PreAuthorize("@ss.hasPermission('qms:material-use-record:query')")
public CommonResult<PageResult<MaterialUseRecordRespVO>> getMaterialUseRecordPage(@Valid MaterialUseRecordPageReqVO pageReqVO) {
PageResult<MaterialUseRecordDO> pageResult = materialUseRecordService.getMaterialUseRecordPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, MaterialUseRecordRespVO.class));
PageResult<MaterialUseRecordRespVO> pageResult = materialUseRecordService.getMaterialUseRecordPageWithInf(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")

View File

@@ -11,6 +11,8 @@ import com.zt.plat.framework.excel.core.util.ExcelUtils;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialUseRecordDetailPageReqVO;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialUseRecordDetailRespVO;
import com.zt.plat.module.qms.resource.material.controller.vo.MaterialUseRecordDetailSaveReqVO;
import com.zt.plat.module.qms.resource.material.controller.vo.query.MaterialUseRecordWithMakeInfoQueryVO;
import com.zt.plat.module.qms.resource.material.controller.vo.resp.MaterialUseRecordWithMakeInfoRespVO;
import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialUseRecordDetailDO;
import com.zt.plat.module.qms.resource.material.service.MaterialUseRecordDetailService;
import io.swagger.v3.oas.annotations.Operation;
@@ -29,9 +31,9 @@ import java.util.List;
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
import static com.zt.plat.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 使用记录配置关系,用于处理危险品溶液配置关系")
@Tag(name = "管理后台 - 物料使用记录配置关系,用于处理危险品溶液配置关系")
@RestController
@RequestMapping("/qms/material-use-record-detail")
@RequestMapping("/qms/resource/material-use-record-detail")
@Validated
public class MaterialUseRecordDetailController implements BusinessControllerMarker {
@@ -39,14 +41,14 @@ public class MaterialUseRecordDetailController implements BusinessControllerMark
@Resource
private MaterialUseRecordDetailService materialUseRecordDetailService;
@PostMapping("/create")
// @PostMapping("/create")
@Operation(summary = "创建使用记录配置关系,用于处理危险品溶液配置关系")
@PreAuthorize("@ss.hasPermission('qms:material-use-record-detail:create')")
public CommonResult<MaterialUseRecordDetailRespVO> createMaterialUseRecordDetail(@Valid @RequestBody MaterialUseRecordDetailSaveReqVO createReqVO) {
return success(materialUseRecordDetailService.createMaterialUseRecordDetail(createReqVO));
}
@PutMapping("/update")
// @PutMapping("/update")
@Operation(summary = "更新使用记录配置关系,用于处理危险品溶液配置关系")
@PreAuthorize("@ss.hasPermission('qms:material-use-record-detail:update')")
public CommonResult<Boolean> updateMaterialUseRecordDetail(@Valid @RequestBody MaterialUseRecordDetailSaveReqVO updateReqVO) {
@@ -54,7 +56,7 @@ public class MaterialUseRecordDetailController implements BusinessControllerMark
return success(true);
}
@DeleteMapping("/delete")
// @DeleteMapping("/delete")
@Operation(summary = "删除使用记录配置关系,用于处理危险品溶液配置关系")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('qms:material-use-record-detail:delete')")
@@ -63,7 +65,7 @@ public class MaterialUseRecordDetailController implements BusinessControllerMark
return success(true);
}
@DeleteMapping("/delete-list")
// @DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除使用记录配置关系,用于处理危险品溶液配置关系")
@PreAuthorize("@ss.hasPermission('qms:material-use-record-detail:delete')")
@@ -81,6 +83,13 @@ public class MaterialUseRecordDetailController implements BusinessControllerMark
return success(BeanUtils.toBean(materialUseRecordDetail, MaterialUseRecordDetailRespVO.class));
}
@GetMapping("/get-makeinfo")
@Operation(summary = "获取危化品配置信息")
public CommonResult<List<MaterialUseRecordWithMakeInfoRespVO>> getMaterialMakeInfoUseRecordDetail(@Valid MaterialUseRecordWithMakeInfoQueryVO queryVO) {
List<MaterialUseRecordWithMakeInfoRespVO> makeInfoRespVOList = materialUseRecordDetailService.getMaterialMakeInfoUseRecordDetail(queryVO);
return success(makeInfoRespVOList);
}
@GetMapping("/page")
@Operation(summary = "获得使用记录配置关系,用于处理危险品溶液配置关系分页")
@PreAuthorize("@ss.hasPermission('qms:material-use-record-detail:query')")

View File

@@ -5,7 +5,6 @@ import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 使用记录新增/修改 Request VO")
@@ -13,8 +12,8 @@ import java.util.List;
public class MaterialHazardousMakeSaveReqVO {
@Schema(description = "使用记录ids")
@NotNull
private List<Long> recordIds;
@NotEmpty
private List<MaterialUseRecordSaveReqVO> records;
@Schema(description = "配置的大类")
@NotNull

View File

@@ -27,6 +27,9 @@ public class MaterialInfomationPageReqVO extends PageParam {
@Schema(description = "编码")
private String code;
@Schema(description = "来源,批次入库,标液配置、危化品配置等")
private String origin;
@Schema(description = "名称")
private String name;

View File

@@ -1,10 +1,12 @@
package com.zt.plat.module.qms.resource.material.controller.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.zt.plat.module.qms.core.aspect.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@@ -56,10 +58,19 @@ public class MaterialInfomationRespVO {
@ExcelProperty("编码")
private String code;
@Schema(description = "来源,批次入库,标液配置、危化品配置等")
@ExcelProperty("来源,批次入库,标液配置、危化品配置等")
@Dict(dicCode = "material_infomation_origin")
private String origin;
@Schema(description = "名称")
@ExcelProperty("名称")
private String name;
@Schema(description = "额定容量")
@ExcelProperty("额定容量")
private BigDecimal standardCapacity;
@Schema(description = "型号")
@ExcelProperty("型号")
private String modelNo;

View File

@@ -77,7 +77,7 @@ public class MaterialProductRespVO {
private String parameter;
@Schema(description = "额定容量")
@ExcelProperty("技术参数")
@ExcelProperty("额定容量")
private BigDecimal standardCapacity;
@Schema(description = "制造商")

View File

@@ -2,6 +2,7 @@ package com.zt.plat.module.qms.resource.material.controller.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.zt.plat.module.qms.core.aspect.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -20,9 +21,14 @@ public class MaterialUseRecordRespVO {
@ExcelProperty("物料实例id,1-是0-否")
private Long infomationId;
@Schema(description = "物料实例编号")
@ExcelProperty("物料实例编号")
private String infomationCode;
@Schema(description = "是否配置危险品", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否配置危险品")
private String hazardousMakeFlag;
@Dict(dicCode = "yes_or_no")
private Integer hazardousMakeFlag;
@Schema(description = "本次数量", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("本次数量")

View File

@@ -16,13 +16,12 @@ public class MaterialUseRecordSaveReqVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "15790")
private Long id;
@Schema(description = "物料实例id,1-是0-否", requiredMode = Schema.RequiredMode.REQUIRED, example = "16550")
@NotNull(message = "物料实例id,1-是0-否不能为空")
@Schema(description = "物料实例id,", requiredMode = Schema.RequiredMode.REQUIRED, example = "16550")
@NotNull(message = "物料实例id不能为空")
private Long infomationId;
@Schema(description = "是否配置危险品", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "是否配置危险品不能为空")
private String hazardousMakeFlag;
private Integer hazardousMakeFlag;
@Schema(description = "本次数量", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "本次数量不能为空")

View File

@@ -0,0 +1,83 @@
package com.zt.plat.module.qms.resource.material.controller.vo.query;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 物料实例 Request VO")
@Data
public class MaterialInfomationQueryVO {
@Schema(description = "物料大类id", example = "2691")
private Long productId;
@Schema(description = "批次id", example = "2703")
private Long batchId;
@Schema(description = "存放位置", example = "13603")
private String locationId;
@Schema(description = "编码")
private String code;
@Schema(description = "名称")
private String name;
@Schema(description = "是否危险品,1-是0-否")
private Integer hazardous;
@Schema(description = "是否标准溶液,1-是0-否")
private Integer standardSolutionFlag;
@Schema(description = "是否标准物质,1-是0-否")
private Integer standardMaterialFlag;
@Schema(description = "上架状态,0-未上架1-已上架", example = "2")
private Integer publishStatus;
@Schema(description = "领用状态,0-未领用1-已领用", example = "1")
private Integer usageStatus;
@Schema(description = "所属部门ID", example = "16158")
private Integer managerDepartmentId;
@Schema(description = "领用人部门", example = "王五")
private String managerDepartmentName;
@Schema(description = "负责人id", example = "7209")
private Long managerUserId;
@Schema(description = "负责人", example = "张三")
private String managerUserName;
@Schema(description = "开封状态,0-未开封1-已开封", example = "2")
private Integer openStatus;
@Schema(description = "开封人id", example = "8280")
private Long openUserId;
@Schema(description = "开封人", example = "王五")
private String openUserName;
@Schema(description = "过期状态")
private String expirationFlag;
@Schema(description = "剩余量")
private BigDecimal remainingVolume;
@Schema(description = "用完标记,0-未标记1-已用完标记")
private Integer useEndFlag;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

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