Merge remote-tracking branch '惠信/qms/develop' into qms/develop
This commit is contained in:
commit
6dd52fb135
|
|
@ -10,6 +10,7 @@ import com.nflg.wms.common.pojo.qo.QmsIssueTicketSearchQO;
|
|||
import com.nflg.wms.common.pojo.vo.QmsIssueTicketDetailVO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsIssueTicketVO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsPdiTicketDetailVO;
|
||||
import com.nflg.wms.common.pojo.vo.QmsPdiTicketMyDetailVO;
|
||||
import com.nflg.wms.repository.service.IQmsIssueTicketService;
|
||||
import com.nflg.wms.starter.BaseController;
|
||||
import jakarta.annotation.Resource;
|
||||
|
|
@ -74,6 +75,15 @@ public class QmsIssueTicketController extends BaseController {
|
|||
return ApiResult.success(issueTicketControllerService.getPdiTicketDetail(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询本人的PDI工单详情
|
||||
* 校验当前登录人在处理记录中为处理人/审批人/上级领导,仅返回相关的处理记录及措施
|
||||
*/
|
||||
@GetMapping("detail/my-pdi-ticket")
|
||||
public ApiResult<QmsPdiTicketMyDetailVO> myPdiTicketDetail(@NotNull(message = "ID不能为空") Long id) {
|
||||
return ApiResult.success(issueTicketControllerService.getMyPdiTicketDetail(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询来料检测任务质量问题工单详情
|
||||
* 含来料检测任务详情及来料检验任务检验记录子项样本列表
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package com.nflg.qms.admin.controller;
|
|||
import com.nflg.qms.admin.service.QmsPdiInspectionResultsControllerService;
|
||||
import com.nflg.wms.common.pojo.ApiResult;
|
||||
import com.nflg.wms.common.pojo.PageData;
|
||||
import com.nflg.wms.common.pojo.qo.QmsPdiInspectionResultItemQO;
|
||||
import com.nflg.wms.common.pojo.qo.QmsPdiInspectionResultsSearchQO;
|
||||
import com.nflg.wms.common.pojo.qo.QmsPdiInspectionResultsSubmitQO;
|
||||
import com.nflg.wms.common.pojo.qo.QmsPdiStatusItemsFillQO;
|
||||
|
|
|
|||
|
|
@ -505,4 +505,53 @@ public class QmsIssueTicketControllerService {
|
|||
vo.setUnqualifiedItems(unqualifiedItems);
|
||||
return vo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询本人的PDI工单详情
|
||||
* 校验当前登录人在 qms_issue_ticket_process 中为处理人/审批人/上级领导
|
||||
* 仅返回当前登录人相关的处理记录及其措施
|
||||
*/
|
||||
public QmsPdiTicketMyDetailVO getMyPdiTicketDetail(Long id) {
|
||||
Long currentUserId = UserUtil.getUserId();
|
||||
|
||||
// 查询工单基本信息
|
||||
QmsIssueTicket ticket = issueTicketService.getById(id);
|
||||
|
||||
// 查询当前登录人相关的处理记录(处理人ID/审批人ID/上级领导ID = 当前用户)
|
||||
List<QmsIssueTicketProcess> processes = issueTicketProcessService.lambdaQuery()
|
||||
.eq(QmsIssueTicketProcess::getIssueTicketId, id)
|
||||
.and(w -> w
|
||||
.eq(QmsIssueTicketProcess::getHandlerUserId, currentUserId)
|
||||
.or().eq(QmsIssueTicketProcess::getApprovalUserId, currentUserId)
|
||||
.or().eq(QmsIssueTicketProcess::getLeaderUserId, currentUserId)
|
||||
)
|
||||
.list();
|
||||
|
||||
// 构建返回VO
|
||||
QmsPdiTicketMyDetailVO vo = new QmsPdiTicketMyDetailVO();
|
||||
BeanUtil.copyProperties(ticket, vo);
|
||||
|
||||
// 构建处理记录列表
|
||||
List<QmsPdiTicketMyDetailVO.ProcessVO> processVOList = processes.stream().map(process -> {
|
||||
QmsPdiTicketMyDetailVO.ProcessVO processVO = new QmsPdiTicketMyDetailVO.ProcessVO();
|
||||
BeanUtil.copyProperties(process, processVO);
|
||||
|
||||
// 查询该处理记录下的措施列表
|
||||
List<QmsIssueTicketProcessMeasure> measures = issueTicketProcessMeasureService.lambdaQuery()
|
||||
.eq(QmsIssueTicketProcessMeasure::getIssueTicketProcessId, process.getId())
|
||||
.list();
|
||||
|
||||
List<QmsPdiTicketMyDetailVO.MeasureVO> measureVOList = measures.stream().map(measure -> {
|
||||
QmsPdiTicketMyDetailVO.MeasureVO measureVO = new QmsPdiTicketMyDetailVO.MeasureVO();
|
||||
BeanUtil.copyProperties(measure, measureVO);
|
||||
return measureVO;
|
||||
}).toList();
|
||||
|
||||
processVO.setMeasures(measureVOList);
|
||||
return processVO;
|
||||
}).toList();
|
||||
|
||||
vo.setProcesses(processVOList);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,257 @@
|
|||
package com.nflg.wms.common.pojo.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 本人PDI工单详情VO(含工单全部字段 + 当前登录人相关的处理记录及措施)
|
||||
*/
|
||||
@Data
|
||||
public class QmsPdiTicketMyDetailVO {
|
||||
|
||||
// ===== qms_issue_ticket 全部字段 =====
|
||||
|
||||
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;
|
||||
|
||||
// ===== 当前登录人相关的处理记录列表 =====
|
||||
|
||||
/**
|
||||
* 处理记录列表(仅当前登录人相关)
|
||||
*/
|
||||
private List<ProcessVO> processes;
|
||||
|
||||
@Data
|
||||
public static class ProcessVO {
|
||||
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 处理人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;
|
||||
|
||||
/**
|
||||
* 措施列表
|
||||
*/
|
||||
private List<MeasureVO> measures;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class MeasureVO {
|
||||
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 措施类型ID
|
||||
*/
|
||||
private Long measureTypeId;
|
||||
|
||||
/**
|
||||
* 措施内容
|
||||
*/
|
||||
private String measureContent;
|
||||
|
||||
/**
|
||||
* 负责人
|
||||
*/
|
||||
private String chargeUser;
|
||||
|
||||
/**
|
||||
* 计划日期
|
||||
*/
|
||||
private LocalDate planDate;
|
||||
|
||||
/**
|
||||
* 确认日期
|
||||
*/
|
||||
private LocalDate confirmDate;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
}
|
||||
}
|
||||
|
|
@ -12,7 +12,8 @@
|
|||
t.task_no AS taskNo,
|
||||
r.inspection_version AS inspectionVersion,
|
||||
t.submission_time AS submissionTime,
|
||||
t.required_completion_time AS requiredCompletionTime
|
||||
t.required_completion_time AS requiredCompletionTime,
|
||||
t.inspection_enable AS inspectionEnable
|
||||
FROM qms_pdi_task_record t
|
||||
LEFT JOIN qms_pdi_detection_rules r ON r.id = t.detection_rules_id
|
||||
<where>
|
||||
|
|
|
|||
Loading…
Reference in New Issue