fix:物料盘点

This commit is contained in:
shusir
2026-03-23 18:03:22 +08:00
parent 007a60d437
commit 26486fb1d6
27 changed files with 401 additions and 54 deletions

View File

@@ -31,7 +31,7 @@ import static com.zt.plat.framework.common.pojo.CommonResult.success;
@Tag(name = "管理后台 - 库存盘点明细") @Tag(name = "管理后台 - 库存盘点明细")
@RestController @RestController
@RequestMapping("/qms/material-inventory-check-detail") @RequestMapping("/qms/resource/material-inventory-check-detail")
@Validated @Validated
public class MaterialInventoryCheckDetailController implements BusinessControllerMarker { public class MaterialInventoryCheckDetailController implements BusinessControllerMarker {
@@ -39,14 +39,14 @@ public class MaterialInventoryCheckDetailController implements BusinessControlle
@Resource @Resource
private MaterialInventoryCheckDetailService materialInventoryCheckDetailService; private MaterialInventoryCheckDetailService materialInventoryCheckDetailService;
@PostMapping("/create") @PostMapping("/add")
@Operation(summary = "创建库存盘点明细") @Operation(summary = "新增库存盘点明细")
@PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:create')") // @PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:create')")
public CommonResult<MaterialInventoryCheckDetailRespVO> createMaterialInventoryCheckDetail(@Valid @RequestBody MaterialInventoryCheckDetailSaveReqVO createReqVO) { public CommonResult<MaterialInventoryCheckDetailRespVO> createMaterialInventoryCheckDetail(@Valid @RequestBody MaterialInventoryCheckDetailSaveReqVO createReqVO) {
return success(materialInventoryCheckDetailService.createMaterialInventoryCheckDetail(createReqVO)); return success(materialInventoryCheckDetailService.createMaterialInventoryCheckDetail(createReqVO));
} }
@PutMapping("/update") // @PutMapping("/update")
@Operation(summary = "更新库存盘点明细") @Operation(summary = "更新库存盘点明细")
@PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:update')") @PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:update')")
public CommonResult<Boolean> updateMaterialInventoryCheckDetail(@Valid @RequestBody MaterialInventoryCheckDetailSaveReqVO updateReqVO) { public CommonResult<Boolean> updateMaterialInventoryCheckDetail(@Valid @RequestBody MaterialInventoryCheckDetailSaveReqVO updateReqVO) {
@@ -54,7 +54,7 @@ public class MaterialInventoryCheckDetailController implements BusinessControlle
return success(true); return success(true);
} }
@DeleteMapping("/delete") // @DeleteMapping("/delete")
@Operation(summary = "删除库存盘点明细") @Operation(summary = "删除库存盘点明细")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:delete')") @PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:delete')")
@@ -63,7 +63,7 @@ public class MaterialInventoryCheckDetailController implements BusinessControlle
return success(true); return success(true);
} }
@DeleteMapping("/delete-list") // @DeleteMapping("/delete-list")
@Parameter(name = "ids", description = "编号", required = true) @Parameter(name = "ids", description = "编号", required = true)
@Operation(summary = "批量删除库存盘点明细") @Operation(summary = "批量删除库存盘点明细")
@PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:delete')") @PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:delete')")
@@ -83,7 +83,7 @@ public class MaterialInventoryCheckDetailController implements BusinessControlle
@GetMapping("/page") @GetMapping("/page")
@Operation(summary = "获得库存盘点明细分页") @Operation(summary = "获得库存盘点明细分页")
@PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:query')") // @PreAuthorize("@ss.hasPermission('qms:material-inventory-check-detail:query')")
public CommonResult<PageResult<MaterialInventoryCheckDetailRespVO>> getMaterialInventoryCheckDetailPage(@Valid MaterialInventoryCheckDetailPageReqVO pageReqVO) { public CommonResult<PageResult<MaterialInventoryCheckDetailRespVO>> getMaterialInventoryCheckDetailPage(@Valid MaterialInventoryCheckDetailPageReqVO pageReqVO) {
PageResult<MaterialInventoryCheckDetailDO> pageResult = materialInventoryCheckDetailService.getMaterialInventoryCheckDetailPage(pageReqVO); PageResult<MaterialInventoryCheckDetailDO> pageResult = materialInventoryCheckDetailService.getMaterialInventoryCheckDetailPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, MaterialInventoryCheckDetailRespVO.class)); return success(BeanUtils.toBean(pageResult, MaterialInventoryCheckDetailRespVO.class));

View File

@@ -108,6 +108,14 @@ public class MaterialLifecycleController extends AbstractFileUploadController im
return success(materialLifecycleService.submitLifecycle(id)); return success(materialLifecycleService.submitLifecycle(id));
} }
@PutMapping("/operator-submit")
@Operation(summary = "执行人提交(验收等流程)")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
public CommonResult<Boolean> operatorSubmitLifecycle(@RequestParam("id") Long id) {
return success(materialLifecycleService.operatorSubmitLifecycle(id));
}
@GetMapping("/export-excel") @GetMapping("/export-excel")
@Operation(summary = "导出物料通用流程,物料验收、退换货 Excel") @Operation(summary = "导出物料通用流程,物料验收、退换货 Excel")
@PreAuthorize("@ss.hasPermission('qms:material-lifecycle:export')") @PreAuthorize("@ss.hasPermission('qms:material-lifecycle:export')")

View File

@@ -1,6 +1,7 @@
package com.zt.plat.module.qms.resource.material.controller.vo; package com.zt.plat.module.qms.resource.material.controller.vo;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.zt.plat.module.qms.resource.material.enums.MaterialInfomationPageBusinessType;
import lombok.*; import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import com.zt.plat.framework.common.pojo.PageParam; import com.zt.plat.framework.common.pojo.PageParam;
@@ -15,6 +16,12 @@ import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH
@Data @Data
public class MaterialInfomationPageReqVO extends PageParam { public class MaterialInfomationPageReqVO extends PageParam {
@Schema(description = "业务类型 inventory_check_detail-盘点明细")
private MaterialInfomationPageBusinessType businessType;
@Schema(description = "盘点项id")
private Long checkItemId;
@Schema(description = "物料大类id", example = "2691") @Schema(description = "物料大类id", example = "2691")
private Long productId; private Long productId;

View File

@@ -188,6 +188,12 @@ public class MaterialInfomationRespVO {
@ExcelProperty("剩余量") @ExcelProperty("剩余量")
private BigDecimal remainingVolume; private BigDecimal remainingVolume;
@Schema(description = "盘点数量")
private BigDecimal checkQuantity;
@Schema(description = "盘点明细id")
private Long checkDetailId;
@Schema(description = "初始总量") @Schema(description = "初始总量")
@ExcelProperty("初始总量") @ExcelProperty("初始总量")
private BigDecimal initialVolume; private BigDecimal initialVolume;
@@ -207,5 +213,4 @@ public class MaterialInfomationRespVO {
@Schema(description = "创建时间") @Schema(description = "创建时间")
@ExcelProperty("创建时间") @ExcelProperty("创建时间")
private LocalDateTime createTime; private LocalDateTime createTime;
} }

View File

@@ -16,9 +16,11 @@ public class MaterialInventoryCheckDetailRespVO {
@ExcelProperty("主键") @ExcelProperty("主键")
private Long id; private Long id;
@Schema(description = "盘点id", example = "1655") @Schema(description = "盘点id")
@ExcelProperty("盘点项id") private Long checkId;
private Long parentId;
@Schema(description = "盘点项id")
private Long itemId;
@Schema(description = "物料实例id", example = "6754") @Schema(description = "物料实例id", example = "6754")
@ExcelProperty("物料实例id") @ExcelProperty("物料实例id")

View File

@@ -1,5 +1,6 @@
package com.zt.plat.module.qms.resource.material.controller.vo; package com.zt.plat.module.qms.resource.material.controller.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@@ -10,8 +11,11 @@ public class MaterialInventoryCheckDetailSaveReqVO {
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "24954") @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "24954")
private Long id; private Long id;
@Schema(description = "盘点id", example = "1655") @Schema(description = "盘点id")
private Long parentId; private Long checkId;
@Schema(description = "盘点项id")
private Long itemId;
@Schema(description = "物料实例id", example = "6754") @Schema(description = "物料实例id", example = "6754")
private Long infomationId; private Long infomationId;

View File

@@ -21,14 +21,26 @@ public class MaterialInventoryCheckItemRespVO {
@ExcelProperty("父id") @ExcelProperty("父id")
private Long parentId; private Long parentId;
@Schema(description = "盘点物料大类ID", example = "15446") @Schema(description = "大类ID", example = "15446")
@ExcelProperty("盘点物料大类ID") @ExcelProperty("大类ID")
private Long productId; private Long productId;
@Schema(description = "盘点物料大类名称") @Schema(description = "大类名称")
@ExcelProperty("盘点物料大类名称") @ExcelProperty("大类名称")
private String productName; private String productName;
@Schema(description = "大类编码")
private String productCode;
@Schema(description = "大类规格")
private String productSpecification;
@Schema(description = "大类型号")
private String productModelNo;
@Schema(description = "单位")
private String unit;
@Schema(description = "应有量") @Schema(description = "应有量")
@ExcelProperty("应有量") @ExcelProperty("应有量")
private BigDecimal expected; private BigDecimal expected;

View File

@@ -1,6 +1,7 @@
package com.zt.plat.module.qms.resource.material.controller.vo; package com.zt.plat.module.qms.resource.material.controller.vo;
import com.zt.plat.framework.common.pojo.PageParam; import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.module.qms.core.aspect.annotation.Dict;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -50,6 +51,15 @@ public class MaterialLifecyclePageReqVO extends PageParam {
@Schema(description = "流程审批状态", example = "1") @Schema(description = "流程审批状态", example = "1")
private String flowStatus; private String flowStatus;
@Schema(description = "执行人id")
private Long operatorId;
@Schema(description = "执行人")
private String operatorName;
@Schema(description = "执行进度")
private String progress;
@Schema(description = "所属部门") @Schema(description = "所属部门")
private String systemDepartmentCode; private String systemDepartmentCode;

View File

@@ -85,8 +85,12 @@ public class MaterialLifecycleRespVO {
private String operatorName; private String operatorName;
@Schema(description = "执行进度") @Schema(description = "执行进度")
@Dict(dicCode = "material_inventory_check_progress")
private String progress; private String progress;
@Schema(description = "事由/说明")
private String reason;
@Schema(description = "所属部门") @Schema(description = "所属部门")
@ExcelProperty("所属部门") @ExcelProperty("所属部门")
private String systemDepartmentCode; private String systemDepartmentCode;

View File

@@ -1,6 +1,7 @@
package com.zt.plat.module.qms.resource.material.controller.vo; package com.zt.plat.module.qms.resource.material.controller.vo;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.zt.plat.module.qms.resource.material.dal.dataobject.MaterialInventoryCheckItemDO;
import com.zt.plat.module.qms.resource.material.valid.AddGroup; import com.zt.plat.module.qms.resource.material.valid.AddGroup;
import com.zt.plat.module.qms.resource.material.valid.UpdateGroup; import com.zt.plat.module.qms.resource.material.valid.UpdateGroup;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
@@ -52,9 +53,6 @@ public class MaterialLifecycleSaveReqVO {
@Schema(description = "库房ids") @Schema(description = "库房ids")
private List<Long> warehouseIds; private List<Long> warehouseIds;
@Schema(description = "盘点物料大类ids")
private List<Long> productIds;
@Schema(description = "执行人id") @Schema(description = "执行人id")
private Long operatorId; private Long operatorId;
@@ -67,12 +65,18 @@ public class MaterialLifecycleSaveReqVO {
@Schema(description = "表单数据,表单数据") @Schema(description = "表单数据,表单数据")
private String formData; private String formData;
@Schema(description = "事由/说明")
private String reason;
@Schema(description = "所属部门") @Schema(description = "所属部门")
private String systemDepartmentCode; private String systemDepartmentCode;
@Schema(description = "备注") @Schema(description = "备注")
private String remark; private String remark;
@Schema(description = "盘点项")
private List<MaterialInventoryCheckItemSaveReqVO> checkItems;
@Schema(description = "工段列表") @Schema(description = "工段列表")
private List<MaterialLifecycleDetailSaveReqVO> detailList; private List<MaterialLifecycleDetailSaveReqVO> detailList;

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