pdi、pqc驳回修改
This commit is contained in:
parent
8df7d080f1
commit
21b4e5b094
|
|
@ -100,6 +100,9 @@ public class QmsIssueTicketControllerService {
|
||||||
@Resource
|
@Resource
|
||||||
private IQmsPqcInspectionPointItemsService pqcInspectionPointItemsService;
|
private IQmsPqcInspectionPointItemsService pqcInspectionPointItemsService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private QmsIssueTicketProcessControllerService issueTicketProcessControllerService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除质量问题工单
|
* 批量删除质量问题工单
|
||||||
* 仅允许删除来源类型为PQC(sourceType=3)且状态为待流转(status=0)的工单,
|
* 仅允许删除来源类型为PQC(sourceType=3)且状态为待流转(status=0)的工单,
|
||||||
|
|
@ -363,15 +366,33 @@ public class QmsIssueTicketControllerService {
|
||||||
QmsIssueTicket ticket = issueTicketService.getById(request.getId());
|
QmsIssueTicket ticket = issueTicketService.getById(request.getId());
|
||||||
VUtil.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
|
VUtil.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
|
||||||
|
|
||||||
// 2. 校验工单来源类型为巡检
|
|
||||||
if (!Objects.equals(ticket.getSourceType(), (short) 2)) {
|
if (!Objects.equals(ticket.getSourceType(), (short) 2)) {
|
||||||
|
if (CollectionUtil.isNotEmpty(request.getHandlers())) {
|
||||||
|
QmsIssueTicketProcessAddQO addRequest = new QmsIssueTicketProcessAddQO();
|
||||||
|
addRequest.setIssueTicketId(request.getId());
|
||||||
|
addRequest.setHandlers(request.getHandlers().stream().map(item -> {
|
||||||
|
QmsIssueTicketProcessAddQO.HandlerItem handlerItem = new QmsIssueTicketProcessAddQO.HandlerItem();
|
||||||
|
handlerItem.setTaskResultId(item.getTaskResultId());
|
||||||
|
handlerItem.setHandlerUserId(item.getHandlerUserId());
|
||||||
|
return handlerItem;
|
||||||
|
}).collect(Collectors.toList()));
|
||||||
|
issueTicketProcessControllerService.add(addRequest);
|
||||||
|
return;
|
||||||
|
}
|
||||||
throw new NflgException(STATE.BusinessError, "只能分派巡检工单");
|
throw new NflgException(STATE.BusinessError, "只能分派巡检工单");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Short approvalStatus = request.getApprovalStatus();
|
||||||
|
if (approvalStatus == null) {
|
||||||
|
VUtil.trueThrowBusinessError(!Objects.equals(ticket.getStatus(), (short) 0))
|
||||||
|
.throwMessage("审批状态不能为空");
|
||||||
|
approvalStatus = 0;
|
||||||
|
}
|
||||||
|
|
||||||
issueTicketToDoService.processed(ticket.getId());
|
issueTicketToDoService.processed(ticket.getId());
|
||||||
|
|
||||||
// 3. 根据审批状态分支处理
|
// 3. 根据审批状态分支处理
|
||||||
if (request.getApprovalStatus() == 1) {
|
if (approvalStatus == 1) {
|
||||||
// 驳回:不创建处理记录,工单改为待流转,推送消息给创建人
|
// 驳回:不创建处理记录,工单改为待流转,推送消息给创建人
|
||||||
issueTicketService.lambdaUpdate()
|
issueTicketService.lambdaUpdate()
|
||||||
.eq(QmsIssueTicket::getId, ticket.getId())
|
.eq(QmsIssueTicket::getId, ticket.getId())
|
||||||
|
|
@ -404,7 +425,7 @@ public class QmsIssueTicketControllerService {
|
||||||
// 更新工单审批状态和意见
|
// 更新工单审批状态和意见
|
||||||
issueTicketService.lambdaUpdate()
|
issueTicketService.lambdaUpdate()
|
||||||
.eq(QmsIssueTicket::getId, ticket.getId())
|
.eq(QmsIssueTicket::getId, ticket.getId())
|
||||||
.set(QmsIssueTicket::getApprovalStatus, request.getApprovalStatus())
|
.set(QmsIssueTicket::getApprovalStatus, approvalStatus)
|
||||||
.set(request.getApprovalOpinion() != null,
|
.set(request.getApprovalOpinion() != null,
|
||||||
QmsIssueTicket::getApprovalOpinion, request.getApprovalOpinion())
|
QmsIssueTicket::getApprovalOpinion, request.getApprovalOpinion())
|
||||||
.set(QmsIssueTicket::getUpdateUserId, currentUserId)
|
.set(QmsIssueTicket::getUpdateUserId, currentUserId)
|
||||||
|
|
|
||||||
|
|
@ -95,7 +95,28 @@ public class QmsIssueTicketProcessControllerService {
|
||||||
handlerUserIds.add(entry.getKey());
|
handlerUserIds.add(entry.getKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Objects.equals(ticket.getSourceType(), (short) 3)) {
|
if (Objects.equals(ticket.getSourceType(), (short) 1)) {
|
||||||
|
issueTicketToDoService.processed(ticket.getId());
|
||||||
|
|
||||||
|
for (Long handlerUserId : handlerUserIds) {
|
||||||
|
QmsIssueTicketToDo todoItem = new QmsIssueTicketToDo()
|
||||||
|
.setTicketId(ticket.getId())
|
||||||
|
.setHandlerUserId(handlerUserId)
|
||||||
|
.setHasProcessed(false)
|
||||||
|
.setIsRead(false);
|
||||||
|
issueTicketToDoService.save(todoItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!Objects.equals(ticket.getStatus(), (short) 1)) {
|
||||||
|
issueTicketService.lambdaUpdate()
|
||||||
|
.eq(QmsIssueTicket::getId, ticket.getId())
|
||||||
|
.set(QmsIssueTicket::getStatus, (short) 1)
|
||||||
|
.set(QmsIssueTicket::getUpdateUserId, currentUserId)
|
||||||
|
.set(QmsIssueTicket::getUpdateUserName, currentUserName)
|
||||||
|
.set(QmsIssueTicket::getUpdateTime, now)
|
||||||
|
.update();
|
||||||
|
}
|
||||||
|
} else if (Objects.equals(ticket.getSourceType(), (short) 3)) {
|
||||||
issueTicketToDoService.lambdaUpdate()
|
issueTicketToDoService.lambdaUpdate()
|
||||||
.eq(QmsIssueTicketToDo::getTicketId, ticket.getId())
|
.eq(QmsIssueTicketToDo::getTicketId, ticket.getId())
|
||||||
.eq(QmsIssueTicketToDo::getHasProcessed, false)
|
.eq(QmsIssueTicketToDo::getHasProcessed, false)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
package com.nflg.wms.common.pojo.qo;
|
package com.nflg.wms.common.pojo.qo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonAlias;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
@ -15,6 +17,7 @@ public class QmsIssueTicketDispatchMultipleQO {
|
||||||
* 工单ID(qms_issue_ticket.id)
|
* 工单ID(qms_issue_ticket.id)
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "工单ID不能为空")
|
@NotNull(message = "工单ID不能为空")
|
||||||
|
@JsonAlias({"ticketId", "issueTicketId"})
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -22,14 +25,38 @@ public class QmsIssueTicketDispatchMultipleQO {
|
||||||
*/
|
*/
|
||||||
private List<Long> handlerUserIds;
|
private List<Long> handlerUserIds;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按不合格项分派处理人
|
||||||
|
*/
|
||||||
|
@Valid
|
||||||
|
private List<HandlerItem> handlers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审批状态(0=通过,1=驳回)
|
* 审批状态(0=通过,1=驳回)
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "审批状态不能为空")
|
|
||||||
private Short approvalStatus;
|
private Short approvalStatus;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审批意见
|
* 审批意见
|
||||||
*/
|
*/
|
||||||
private String approvalOpinion;
|
private String approvalOpinion;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理人项
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public static class HandlerItem {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务结果ID
|
||||||
|
*/
|
||||||
|
@NotNull(message = "任务结果ID不能为空")
|
||||||
|
private Long taskResultId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 处理人用户ID
|
||||||
|
*/
|
||||||
|
@NotNull(message = "处理人用户ID不能为空")
|
||||||
|
private Long handlerUserId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.nflg.wms.common.pojo.qo;
|
package com.nflg.wms.common.pojo.qo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonAlias;
|
||||||
import jakarta.validation.Valid;
|
import jakarta.validation.Valid;
|
||||||
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotEmpty;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
|
|
@ -17,6 +18,7 @@ public class QmsPqcTicketDispatchQO {
|
||||||
* 工单ID(必传)
|
* 工单ID(必传)
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "工单ID不能为空")
|
@NotNull(message = "工单ID不能为空")
|
||||||
|
@JsonAlias({"id", "issueTicketId"})
|
||||||
private Long ticketId;
|
private Long ticketId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -34,6 +36,7 @@ public class QmsPqcTicketDispatchQO {
|
||||||
*/
|
*/
|
||||||
@NotEmpty(message = "处理人列表不能为空")
|
@NotEmpty(message = "处理人列表不能为空")
|
||||||
@Valid
|
@Valid
|
||||||
|
@JsonAlias("handlers")
|
||||||
private List<AssigneeItem> assignees;
|
private List<AssigneeItem> assignees;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -45,12 +48,14 @@ public class QmsPqcTicketDispatchQO {
|
||||||
* 不合格项ID(多个用逗号拼接)
|
* 不合格项ID(多个用逗号拼接)
|
||||||
*/
|
*/
|
||||||
@NotEmpty(message = "不合格项ID不能为空")
|
@NotEmpty(message = "不合格项ID不能为空")
|
||||||
|
@JsonAlias("taskResultId")
|
||||||
private String taskResultIds;
|
private String taskResultIds;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 处理人ID
|
* 处理人ID
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "处理人ID不能为空")
|
@NotNull(message = "处理人ID不能为空")
|
||||||
|
@JsonAlias("handlerUserId")
|
||||||
private Long userId;
|
private Long userId;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue