feat(repository): 新增质量问题工单相关实体及服务接口实现

- 添加质量问题工单(QmsIssueTicket)实体类,包含工单详细属性
- 添加质量问题工单处理(QmsIssueTicketProcess)实体类及处理信息字段
- 添加质量问题工单处理解决措施(QmsIssueTicketProcessMeasure)实体类及相关字段
- 新增对应Mapper接口,提供数据库操作支持
- 新增服务接口和实现类,支持业务逻辑处理和数据持久化
- 服务实现均继承MyBatis-Plus的ServiceImpl简化代码编写
This commit is contained in:
曹鹏飞 2026-04-27 11:16:40 +08:00
parent b41fbee362
commit 8dd71d0e2c
12 changed files with 439 additions and 0 deletions

View File

@ -0,0 +1,160 @@
package com.nflg.wms.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 质量问题工单表
*
* @since 2026
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("qms_issue_ticket")
public class QmsIssueTicket implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.ASSIGN_ID)
private Long id;
/**
* 来源类型0=IQC检测任务1=PDI检测任务2=巡检
*/
private Short sourceType;
/**
* 来源ID关联对应检测任务表
*/
private Long sourceId;
/**
* 工单编号
*/
private String ticketNo;
/**
* 工单标题
*/
private String ticketTitle;
/**
* 工程编号
*/
private String projectNo;
/**
* 事故类型0=一般1=较严重2=严重
*/
private Short incidentType;
/**
* 异常代码
*/
private String exceptionCode;
/**
* 不合格数量
*/
private Integer unqualifiedQty;
/**
* 事件地点
*/
private String incidentLocation;
/**
* 事件描述
*/
private String incidentDescription;
/**
* 事件原因
*/
private String incidentReason;
/**
* 事件后果
*/
private String incidentConsequence;
/**
* 图片列表存储图片上传记录ID多个用逗号分隔
*/
private String imageIds;
/**
* 备注
*/
private String remark;
/**
* 状态0=待流转1=处理中2=已完成
*/
private Short status;
/**
* 审批状态0=通过1=驳回2=重检3=报废4=维修5=挑选使用6=让渡使用
*/
private Short approvalStatus;
/**
* 审批意见
*/
private String approvalOpinion;
/**
* 审批人ID
*/
private Long approvalUserId;
/**
* 审批人姓名
*/
private String approvalUserName;
/**
* 审批时间
*/
private LocalDateTime approvalTime;
/**
* 创建人ID
*/
private Long createUserId;
/**
* 创建人姓名
*/
private String createUserName;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 更新人ID
*/
private Long updateUserId;
/**
* 更新人姓名
*/
private String updateUserName;
/**
* 更新时间
*/
private LocalDateTime updateTime;
}

View File

@ -0,0 +1,106 @@
package com.nflg.wms.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 质量问题工单处理表
*
* @since 2026
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("qms_issue_ticket_process")
public class QmsIssueTicketProcess implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.ASSIGN_ID)
private Long id;
/**
* 问题工单ID关联 qms_issue_ticket
*/
private Long issueTicketId;
/**
* 处理人ID
*/
private Long handlerUserId;
/**
* 处理人姓名
*/
private String handlerUserName;
/**
* 根本原因
*/
private String rootCause;
/**
* 任务结果ID多个用逗号分隔
*/
private String taskResultIds;
/**
* 审批状态0=通过1=驳回
*/
private Short approvalStatus;
/**
* 审批意见
*/
private String approvalOpinion;
/**
* 审批人ID
*/
private Long approvalUserId;
/**
* 审批人姓名
*/
private String approvalUserName;
/**
* 审批时间
*/
private LocalDateTime approvalTime;
/**
* 上级领导审批结果0=驳回1=同意
*/
private Short leaderApprovalResult;
/**
* 上级领导审批意见
*/
private String leaderApprovalOpinion;
/**
* 上级领导ID
*/
private Long leaderUserId;
/**
* 上级领导姓名
*/
private String leaderUserName;
/**
* 上级领导审批时间
*/
private LocalDateTime leaderApprovalTime;
}

View File

@ -0,0 +1,65 @@
package com.nflg.wms.repository.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDate;
/**
* 质量问题工单处理解决措施表
*
* @since 2026
*/
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("qms_issue_ticket_process_measure")
public class QmsIssueTicketProcessMeasure implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.ASSIGN_ID)
private Long id;
/**
* 质量问题工单处理表ID关联 qms_issue_ticket_process
*/
private Long issueTicketProcessId;
/**
* 措施类型ID关联字典项表
*/
private Long measureTypeId;
/**
* 措施内容
*/
private String measureContent;
/**
* 负责人
*/
private String chargeUser;
/**
* 计划日期
*/
private LocalDate planDate;
/**
* 确认日期
*/
private LocalDate confirmDate;
/**
* 备注
*/
private String remark;
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nflg.wms.repository.entity.QmsIssueTicket;
/**
* 质量问题工单 Mapper 接口
*/
public interface QmsIssueTicketMapper extends BaseMapper<QmsIssueTicket> {
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nflg.wms.repository.entity.QmsIssueTicketProcess;
/**
* 质量问题工单处理 Mapper 接口
*/
public interface QmsIssueTicketProcessMapper extends BaseMapper<QmsIssueTicketProcess> {
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.nflg.wms.repository.entity.QmsIssueTicketProcessMeasure;
/**
* 质量问题工单处理解决措施 Mapper 接口
*/
public interface QmsIssueTicketProcessMeasureMapper extends BaseMapper<QmsIssueTicketProcessMeasure> {
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.wms.repository.entity.QmsIssueTicketProcessMeasure;
/**
* 质量问题工单处理解决措施 Service
*/
public interface IQmsIssueTicketProcessMeasureService extends IService<QmsIssueTicketProcessMeasure> {
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.wms.repository.entity.QmsIssueTicketProcess;
/**
* 质量问题工单处理 Service
*/
public interface IQmsIssueTicketProcessService extends IService<QmsIssueTicketProcess> {
}

View File

@ -0,0 +1,10 @@
package com.nflg.wms.repository.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nflg.wms.repository.entity.QmsIssueTicket;
/**
* 质量问题工单 Service
*/
public interface IQmsIssueTicketService extends IService<QmsIssueTicket> {
}

View File

@ -0,0 +1,16 @@
package com.nflg.wms.repository.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.repository.entity.QmsIssueTicketProcessMeasure;
import com.nflg.wms.repository.mapper.QmsIssueTicketProcessMeasureMapper;
import com.nflg.wms.repository.service.IQmsIssueTicketProcessMeasureService;
import org.springframework.stereotype.Service;
/**
* 质量问题工单处理解决措施 ServiceImpl
*/
@Service
public class QmsIssueTicketProcessMeasureServiceImpl
extends ServiceImpl<QmsIssueTicketProcessMeasureMapper, QmsIssueTicketProcessMeasure>
implements IQmsIssueTicketProcessMeasureService {
}

View File

@ -0,0 +1,16 @@
package com.nflg.wms.repository.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.repository.entity.QmsIssueTicketProcess;
import com.nflg.wms.repository.mapper.QmsIssueTicketProcessMapper;
import com.nflg.wms.repository.service.IQmsIssueTicketProcessService;
import org.springframework.stereotype.Service;
/**
* 质量问题工单处理 ServiceImpl
*/
@Service
public class QmsIssueTicketProcessServiceImpl
extends ServiceImpl<QmsIssueTicketProcessMapper, QmsIssueTicketProcess>
implements IQmsIssueTicketProcessService {
}

View File

@ -0,0 +1,16 @@
package com.nflg.wms.repository.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nflg.wms.repository.entity.QmsIssueTicket;
import com.nflg.wms.repository.mapper.QmsIssueTicketMapper;
import com.nflg.wms.repository.service.IQmsIssueTicketService;
import org.springframework.stereotype.Service;
/**
* 质量问题工单 ServiceImpl
*/
@Service
public class QmsIssueTicketServiceImpl
extends ServiceImpl<QmsIssueTicketMapper, QmsIssueTicket>
implements IQmsIssueTicketService {
}