feat(wms): 增加多级审批功能和审批任务管理
- 在WmsApproval实体类中增加审批类型、需要审批人数、已审批人数、最终状态字段 - 实现审批任务通过和驳回功能,支持单人和多级审批流程 - 创建WmsApprovalTask相关实体类、业务对象、数据访问层和控制器 - 集成部门领导查询机制,实现多级审批链路构建 - 更新审批控制器,添加审批任务相关的API接口 - 优化审批列表查询,集成审批任务信息展示 - 配置MyBatis映射文件,支持新的审批任务数据表结构
This commit is contained in:
@@ -42,6 +42,22 @@ public class WmsApproval extends BaseEntity {
|
||||
* 审批状态(待审批/已同意/已驳回/已撤销)
|
||||
*/
|
||||
private String approvalStatus;
|
||||
/**
|
||||
* 审批类型(single=单人审批,multi=多级审批)
|
||||
*/
|
||||
private String approvalType;
|
||||
/**
|
||||
* 需要审批的人数
|
||||
*/
|
||||
private Integer requiredApprovers;
|
||||
/**
|
||||
* 已审批的人数
|
||||
*/
|
||||
private Integer currentApprovers;
|
||||
/**
|
||||
* 最终状态(pending=审批中,all_approved=全部通过,rejected=已驳回)
|
||||
*/
|
||||
private String finalStatus;
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
|
||||
69
klp-wms/src/main/java/com/klp/domain/WmsApprovalTask.java
Normal file
69
klp-wms/src/main/java/com/klp/domain/WmsApprovalTask.java
Normal file
@@ -0,0 +1,69 @@
|
||||
package com.klp.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.klp.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 审批任务对象 wms_approval_task
|
||||
*
|
||||
* @author klp
|
||||
* @date 2026-01-20
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("wms_approval_task")
|
||||
public class WmsApprovalTask extends BaseEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 任务ID,主键
|
||||
*/
|
||||
@TableId(value = "task_id")
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 审批流程ID
|
||||
*/
|
||||
private Long approvalId;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
private Long approverId;
|
||||
|
||||
/**
|
||||
* 审批人姓名
|
||||
*/
|
||||
private String approverName;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
private String taskStatus;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
private String approvalOpinion;
|
||||
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
private Date approvalTime;
|
||||
|
||||
/**
|
||||
* 删除标志(0代表存在 1代表删除)
|
||||
*/
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
}
|
||||
@@ -44,6 +44,26 @@ public class WmsApprovalBo extends BaseEntity {
|
||||
*/
|
||||
private String approvalStatus;
|
||||
|
||||
/**
|
||||
* 审批类型(single=单人审批,multi=多级审批)
|
||||
*/
|
||||
private String approvalType;
|
||||
|
||||
/**
|
||||
* 需要审批的人数
|
||||
*/
|
||||
private Integer requiredApprovers;
|
||||
|
||||
/**
|
||||
* 已审批的人数
|
||||
*/
|
||||
private Integer currentApprovers;
|
||||
|
||||
/**
|
||||
* 最终状态(pending=审批中,all_approved=全部通过,rejected=已驳回)
|
||||
*/
|
||||
private String finalStatus;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.klp.domain.bo;
|
||||
|
||||
import com.klp.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 审批任务业务对象 wms_approval_task
|
||||
*
|
||||
* @author klp
|
||||
* @date 2026-01-20
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class WmsApprovalTaskBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 任务ID
|
||||
*/
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 审批ID
|
||||
*/
|
||||
private Long approvalId;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
private Long approverId;
|
||||
|
||||
/**
|
||||
* 审批人姓名
|
||||
*/
|
||||
private String approverName;
|
||||
|
||||
/**
|
||||
* 任务状态
|
||||
*/
|
||||
private String taskStatus;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
private String approvalOpinion;
|
||||
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
private Date approvalTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
package com.klp.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.klp.common.convert.ExcelDictConvert;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 审批任务视图对象 wms_approval_task
|
||||
*
|
||||
* @author klp
|
||||
* @date 2026-01-20
|
||||
*/
|
||||
@Data
|
||||
public class WmsApprovalTaskVo {
|
||||
|
||||
private Long taskId;
|
||||
|
||||
/**
|
||||
* 审批ID
|
||||
*/
|
||||
@ExcelProperty(value = "审批ID")
|
||||
private Long approvalId;
|
||||
|
||||
/**
|
||||
* 审批人ID
|
||||
*/
|
||||
@ExcelProperty(value = "审批人ID")
|
||||
private Long approverId;
|
||||
|
||||
/**
|
||||
* 审批人姓名
|
||||
*/
|
||||
@ExcelProperty(value = "审批人姓名")
|
||||
private String approverName;
|
||||
|
||||
/**
|
||||
* 任务状态(pending=待审批,approved=已通过,rejected=已驳回)
|
||||
*/
|
||||
@ExcelProperty(value = "任务状态", converter = ExcelDictConvert.class)
|
||||
private String taskStatus;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
@ExcelProperty(value = "审批意见")
|
||||
private String approvalOpinion;
|
||||
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
@ExcelProperty(value = "审批时间")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date approvalTime;
|
||||
|
||||
private String remark;
|
||||
|
||||
private Date createTime;
|
||||
|
||||
private String createBy;
|
||||
|
||||
private Date updateTime;
|
||||
|
||||
private String updateBy;
|
||||
}
|
||||
@@ -54,6 +54,32 @@ public class WmsApprovalVo {
|
||||
@ExcelDictFormat(readConverterExp = "待=审批/已同意/已驳回/已撤销")
|
||||
private String approvalStatus;
|
||||
|
||||
/**
|
||||
* 审批类型(single=单人审批,multi=多级审批)
|
||||
*/
|
||||
@ExcelProperty(value = "审批类型", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "single=单人审批,multi=多级审批")
|
||||
private String approvalType;
|
||||
|
||||
/**
|
||||
* 需要审批的人数
|
||||
*/
|
||||
@ExcelProperty(value = "需要审批的人数")
|
||||
private Integer requiredApprovers;
|
||||
|
||||
/**
|
||||
* 已审批的人数
|
||||
*/
|
||||
@ExcelProperty(value = "已审批的人数")
|
||||
private Integer currentApprovers;
|
||||
|
||||
/**
|
||||
* 最终状态(pending=审批中,all_approved=全部通过,rejected=已驳回)
|
||||
*/
|
||||
@ExcelProperty(value = "最终状态", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "pending=审批中,all_approved=全部通过,rejected=已驳回")
|
||||
private String finalStatus;
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user