Commit aa5e1618dcc08f3920c985ec656f362681528a52

Authored by YunaiV
1 parent 9c0bc5b2

✨ feat(mes): 添加盘点任务和任务行的 DO 及相关字段

新增盘点任务和任务行的数据对象,包含开始时间、结束时间等字段,以支持更全面的盘点功能。
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/stocktaking/task/vo/MesWmStockTakingTaskRespVO.java
... ... @@ -58,10 +58,6 @@ public class MesWmStockTakingTaskRespVO {
58 58 @ExcelProperty("是否冻结库存")
59 59 private Boolean frozenFlag;
60 60  
61   - @Schema(description = "快照时间")
62   - @ExcelProperty("快照时间")
63   - private LocalDateTime snapshotTime;
64   -
65 61 @Schema(description = "开始时间")
66 62 @ExcelProperty("开始时间")
67 63 private LocalDateTime startTime;
... ... @@ -74,10 +70,6 @@ public class MesWmStockTakingTaskRespVO {
74 70 @ExcelProperty("状态")
75 71 private Integer status;
76 72  
77   - @Schema(description = "是否已调账", requiredMode = Schema.RequiredMode.REQUIRED, example = "false")
78   - @ExcelProperty("是否已调账")
79   - private Boolean adjustedFlag;
80   -
81 73 @Schema(description = "备注", example = "备注")
82 74 @ExcelProperty("备注")
83 75 private String remark;
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/controller/admin/wm/stocktaking/task/vo/MesWmStockTakingTaskSaveReqVO.java
... ... @@ -36,6 +36,12 @@ public class MesWmStockTakingTaskSaveReqVO {
36 36 @Schema(description = "来源方案 ID", example = "1")
37 37 private Long planId;
38 38  
  39 + @Schema(description = "开始时间")
  40 + private LocalDateTime startTime;
  41 +
  42 + @Schema(description = "结束时间")
  43 + private LocalDateTime endTime;
  44 +
39 45 @Schema(description = "是否盲盘", example = "false")
40 46 @NotNull(message = "是否盲盘不能为空")
41 47 private Boolean blindFlag;
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/stocktaking/task/MesWmStockTakingTaskDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.mes.dal.dataobject.wm.stocktaking.task;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.stocktaking.plan.MesWmStockTakingPlanDO;
  5 +import cn.iocoder.yudao.module.mes.enums.wm.MesWmStockTakingTaskStatusEnum;
  6 +import cn.iocoder.yudao.module.mes.enums.wm.MesWmStockTakingTypeEnum;
  7 +import com.baomidou.mybatisplus.annotation.KeySequence;
  8 +import com.baomidou.mybatisplus.annotation.TableId;
  9 +import com.baomidou.mybatisplus.annotation.TableName;
  10 +import lombok.*;
  11 +
  12 +import java.time.LocalDateTime;
  13 +
  14 +/**
  15 + * MES 盘点任务 DO
  16 + *
  17 + * @author 芋道源码
  18 + */
  19 +@TableName("mes_wm_stock_taking_task")
  20 +@KeySequence("mes_wm_stock_taking_task_seq")
  21 +@Data
  22 +@EqualsAndHashCode(callSuper = true)
  23 +@ToString(callSuper = true)
  24 +@Builder
  25 +@NoArgsConstructor
  26 +@AllArgsConstructor
  27 +public class MesWmStockTakingTaskDO extends BaseDO {
  28 +
  29 + /**
  30 + * 编号
  31 + */
  32 + @TableId
  33 + private Long id;
  34 + /**
  35 + * 任务编码
  36 + */
  37 + private String code;
  38 + /**
  39 + * 任务名称
  40 + */
  41 + private String name;
  42 + /**
  43 + * 盘点日期
  44 + */
  45 + private LocalDateTime takingDate;
  46 +
  47 + /**
  48 + * 盘点类型
  49 + *
  50 + * 枚举 {@link MesWmStockTakingTypeEnum}
  51 + */
  52 + private Integer type;
  53 + /**
  54 + * 盘点人编号
  55 + *
  56 + * 关联 AdminUserDO 的 id 字段
  57 + */
  58 + private Long userId;
  59 +
  60 + /**
  61 + * 盘点计划编号
  62 + *
  63 + * 关联 {@link MesWmStockTakingPlanDO#getId()}
  64 + */
  65 + private Long planId;
  66 +
  67 + /**
  68 + * 是否盲盘
  69 + */
  70 + private Boolean blindFlag;
  71 + /**
  72 + * 是否冻结库存
  73 + */
  74 + private Boolean frozenFlag;
  75 +
  76 + /**
  77 + * 开始时间
  78 + */
  79 + private LocalDateTime startTime;
  80 + /**
  81 + * 结束时间
  82 + */
  83 + private LocalDateTime endTime;
  84 +
  85 + /**
  86 + * 任务状态
  87 + *
  88 + * 枚举 {@link MesWmStockTakingTaskStatusEnum}
  89 + */
  90 + private Integer status;
  91 +
  92 + /**
  93 + * 备注
  94 + */
  95 + private String remark;
  96 +
  97 +}
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/stocktaking/task/MesWmStockTakingTaskLineDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.mes.dal.dataobject.wm.stocktaking.task;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO;
  5 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseAreaDO;
  6 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseDO;
  7 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseLocationDO;
  8 +import cn.iocoder.yudao.module.mes.enums.wm.MesWmStockTakingTaskLineStatusEnum;
  9 +import com.baomidou.mybatisplus.annotation.KeySequence;
  10 +import com.baomidou.mybatisplus.annotation.TableId;
  11 +import com.baomidou.mybatisplus.annotation.TableName;
  12 +import lombok.*;
  13 +
  14 +import java.math.BigDecimal;
  15 +
  16 +/**
  17 + * MES 盘点任务行 DO
  18 + *
  19 + * @author 芋道源码
  20 + */
  21 +@TableName("mes_wm_stock_taking_task_line")
  22 +@KeySequence("mes_wm_stock_taking_task_line_seq")
  23 +@Data
  24 +@EqualsAndHashCode(callSuper = true)
  25 +@ToString(callSuper = true)
  26 +@Builder
  27 +@NoArgsConstructor
  28 +@AllArgsConstructor
  29 +public class MesWmStockTakingTaskLineDO extends BaseDO {
  30 +
  31 + /**
  32 + * 编号
  33 + */
  34 + @TableId
  35 + private Long id;
  36 + /**
  37 + * 盘点任务编号
  38 + *
  39 + * 关联 {@link MesWmStockTakingTaskDO#getId()}
  40 + */
  41 + private Long taskId;
  42 +
  43 + /**
  44 + * 库存编号
  45 + */
  46 + private Long materialStockId;
  47 + /**
  48 + * 物料编号
  49 + *
  50 + * 关联 {@link MesMdItemDO#getId()}
  51 + */
  52 + private Long itemId;
  53 +
  54 + /**
  55 + * 批次编号
  56 + */
  57 + private Long batchId;
  58 + /**
  59 + * 批次编码
  60 + */
  61 + private String batchCode;
  62 +
  63 + /**
  64 + * 账面数量
  65 + */
  66 + private BigDecimal quantity;
  67 + /**
  68 + * 盘点数量
  69 + */
  70 + private BigDecimal takingQuantity;
  71 +
  72 + /**
  73 + * 仓库编号
  74 + *
  75 + * 关联 {@link MesWmWarehouseDO#getId()}
  76 + */
  77 + private Long warehouseId;
  78 + /**
  79 + * 库位编号
  80 + *
  81 + * 关联 {@link MesWmWarehouseLocationDO#getId()}
  82 + */
  83 + private Long locationId;
  84 + /**
  85 + * 库区编号
  86 + *
  87 + * 关联 {@link MesWmWarehouseAreaDO#getId()} ()}
  88 + */
  89 + private Long areaId;
  90 +
  91 + /**
  92 + * 盘点状态
  93 + *
  94 + * 枚举 {@link MesWmStockTakingTaskLineStatusEnum}
  95 + */
  96 + private Integer status;
  97 +
  98 + /**
  99 + * 备注
  100 + */
  101 + private String remark;
  102 +
  103 +}
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/dal/dataobject/wm/stocktaking/task/MesWmStockTakingTaskResultDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.mes.dal.dataobject.wm.stocktaking.task;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.mes.dal.dataobject.md.item.MesMdItemDO;
  5 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseAreaDO;
  6 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseDO;
  7 +import cn.iocoder.yudao.module.mes.dal.dataobject.wm.warehouse.MesWmWarehouseLocationDO;
  8 +import com.baomidou.mybatisplus.annotation.KeySequence;
  9 +import com.baomidou.mybatisplus.annotation.TableId;
  10 +import com.baomidou.mybatisplus.annotation.TableName;
  11 +import lombok.*;
  12 +
  13 +import java.math.BigDecimal;
  14 +
  15 +/**
  16 + * MES 盘点结果 DO
  17 + *
  18 + * @author 芋道源码
  19 + */
  20 +@TableName("mes_wm_stock_taking_task_result")
  21 +@KeySequence("mes_wm_stock_taking_task_result_seq")
  22 +@Data
  23 +@EqualsAndHashCode(callSuper = true)
  24 +@ToString(callSuper = true)
  25 +@Builder
  26 +@NoArgsConstructor
  27 +@AllArgsConstructor
  28 +public class MesWmStockTakingTaskResultDO extends BaseDO {
  29 +
  30 + /**
  31 + * 编号
  32 + */
  33 + @TableId
  34 + private Long id;
  35 + /**
  36 + * 盘点任务编号
  37 + *
  38 + * 关联 {@link MesWmStockTakingTaskDO#getId()}
  39 + */
  40 + private Long taskId;
  41 + /**
  42 + * 盘点任务行编号
  43 + *
  44 + * 关联 {@link MesWmStockTakingTaskLineDO#getId()}
  45 + */
  46 + private Long lineId;
  47 +
  48 + /**
  49 + * 库存编号
  50 + */
  51 + private Long materialStockId;
  52 + /**
  53 + * 物料编号
  54 + *
  55 + * 关联 {@link MesMdItemDO#getId()}
  56 + */
  57 + private Long itemId;
  58 +
  59 + /**
  60 + * 批次编号
  61 + */
  62 + private Long batchId;
  63 + /**
  64 + * 批次编码
  65 + */
  66 + private String batchCode;
  67 +
  68 + /**
  69 + * 仓库编号
  70 + *
  71 + * 关联 {@link MesWmWarehouseDO#getId()}
  72 + */
  73 + private Long warehouseId;
  74 + /**
  75 + * 库位编号
  76 + *
  77 + * 关联 {@link MesWmWarehouseLocationDO#getId()}
  78 + */
  79 + private Long locationId;
  80 + /**
  81 + * 库区编号
  82 + *
  83 + * 关联 {@link MesWmWarehouseAreaDO#getId()}
  84 + */
  85 + private Long areaId;
  86 +
  87 + /**
  88 + * 差异数量
  89 + */
  90 + private BigDecimal quantity;
  91 +
  92 + /**
  93 + * 备注
  94 + */
  95 + private String remark;
  96 +
  97 +}
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/ErrorCodeConstants.java
... ... @@ -479,7 +479,7 @@ public interface ErrorCodeConstants {
479 479 ErrorCode WM_STOCK_TAKING_TASK_NOT_EXISTS = new ErrorCode(1_040_714_110, "盘点任务不存在");
480 480 ErrorCode WM_STOCK_TAKING_TASK_CODE_DUPLICATE = new ErrorCode(1_040_714_111, "盘点任务编码已存在");
481 481 ErrorCode WM_STOCK_TAKING_TASK_NOT_PREPARE = new ErrorCode(1_040_714_112, "只有草稿状态的盘点任务才允许此操作");
482   - ErrorCode WM_STOCK_TAKING_TASK_NOT_IN_PROGRESS = new ErrorCode(1_040_714_113, "只有盘点中状态的任务才允许此操作");
  482 + ErrorCode WM_STOCK_TAKING_TASK_NOT_APPROVING = new ErrorCode(1_040_714_113, "只有盘点中状态的任务才允许此操作");
483 483 ErrorCode WM_STOCK_TAKING_TASK_CANNOT_CANCEL = new ErrorCode(1_040_714_114, "已完成或已取消的盘点任务不允许取消");
484 484 ErrorCode WM_STOCK_TAKING_TASK_NO_STOCK = new ErrorCode(1_040_714_115, "未找到符合条件的库存数据");
485 485 ErrorCode WM_STOCK_TAKING_TASK_NO_LINE = new ErrorCode(1_040_714_116, "盘点任务至少需要一条任务行");
... ...
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/enums/wm/MesWmStockTakingTaskStatusEnum.java
... ... @@ -16,7 +16,7 @@ import java.util.Arrays;
16 16 public enum MesWmStockTakingTaskStatusEnum implements ArrayValuable<Integer> {
17 17  
18 18 PREPARE(MesOrderStatusConstants.PREPARE, "草稿"),
19   - IN_PROGRESS(MesOrderStatusConstants.CONFIRMED, "盘点中"),
  19 + APPROVING(MesOrderStatusConstants.APPROVING, "审批中"),
20 20 FINISHED(MesOrderStatusConstants.FINISHED, "已完成"),
21 21 CANCELED(MesOrderStatusConstants.CANCELLED, "已取消");
22 22  
... ...