巡检任务查看修改

This commit is contained in:
yf001217 2026-06-14 16:41:15 +08:00
parent e711478212
commit 5f60cba0c6
1 changed files with 50 additions and 11 deletions

View File

@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nflg.wms.common.constant.Constant; import com.nflg.wms.common.constant.Constant;
import com.nflg.wms.common.constant.STATE; import com.nflg.wms.common.constant.STATE;
import com.nflg.wms.common.exception.NflgException; import com.nflg.wms.common.exception.NflgException;
import com.nflg.wms.common.pojo.qo.PdiInspectionTaskCallbackQO;
import com.nflg.wms.common.pojo.qo.*; import com.nflg.wms.common.pojo.qo.*;
import com.nflg.wms.common.pojo.vo.*; import com.nflg.wms.common.pojo.vo.*;
import com.nflg.wms.common.util.UserUtil; import com.nflg.wms.common.util.UserUtil;
@ -15,6 +16,7 @@ import com.nflg.wms.common.util.VUtil;
import com.nflg.wms.repository.entity.*; import com.nflg.wms.repository.entity.*;
import com.nflg.wms.repository.service.*; import com.nflg.wms.repository.service.*;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -59,9 +61,6 @@ public class QmsIssueTicketControllerService {
@Resource @Resource
private IDictionaryItemService dictionaryItemService; private IDictionaryItemService dictionaryItemService;
@Resource
private QmsIssueTicketProcessControllerService issueTicketProcessControllerService;
@Resource @Resource
private IQmsPdiTaskRecordService pdiTaskRecordService; private IQmsPdiTaskRecordService pdiTaskRecordService;
@ -80,8 +79,11 @@ public class QmsIssueTicketControllerService {
@Resource @Resource
private WmsIncomingInspectionTaskCallbackService wmsIncomingInspectionTaskCallbackService; private WmsIncomingInspectionTaskCallbackService wmsIncomingInspectionTaskCallbackService;
@Value("${wms.pdi.callback.url}")
private String pdiUrl;
@Resource @Resource
private WmsPdiInspectionTaskCallbackService wmsPdiInspectionTaskCallbackService; private WmsApiService wmsApiService;
@Resource @Resource
private IRoleService roleService; private IRoleService roleService;
@ -1296,11 +1298,11 @@ public class QmsIssueTicketControllerService {
)); ));
for (Map.Entry<Long, List<Long>> entry : handlerToResultsMap.entrySet()) { for (Map.Entry<Long, List<Long>> entry : handlerToResultsMap.entrySet()) {
issueTicketProcessControllerService.addAsync(
addIssueTicketProcessAndTodo(
entity.getId(), entity.getId(),
entry.getKey(), entry.getKey(),
entry.getValue(), entry.getValue()
ticketNo
); );
} }
} }
@ -1408,15 +1410,35 @@ public class QmsIssueTicketControllerService {
if (filteredTaskResultIds.isEmpty()) { if (filteredTaskResultIds.isEmpty()) {
continue; continue;
} }
issueTicketProcessControllerService.addAsync( addIssueTicketProcessAndTodo(
entity.getId(), entity.getId(),
entry.getKey(), entry.getKey(),
filteredTaskResultIds, filteredTaskResultIds
ticketNo
); );
} }
} }
private void addIssueTicketProcessAndTodo(Long issueTicketId, Long handlerUserId, List<Long> taskResultIds) {
User user = userService.getById(handlerUserId);
if (user == null) {
throw new NflgException(STATE.BusinessError, "处理人用户不存在");
}
QmsIssueTicketProcess process = new QmsIssueTicketProcess()
.setIssueTicketId(issueTicketId)
.setHandlerUserId(handlerUserId)
.setHandlerUserName(user.getUserName())
.setTaskResultIds(taskResultIds.stream()
.map(String::valueOf)
.collect(Collectors.joining(",")));
issueTicketProcessService.save(process);
QmsIssueTicketToDo todoItem = new QmsIssueTicketToDo()
.setTicketId(issueTicketId)
.setHandlerUserId(handlerUserId);
issueTicketToDoService.save(todoItem);
}
/** /**
* 通过来料检测任务ID发起IQC检测任务类型质量问题工单 * 通过来料检测任务ID发起IQC检测任务类型质量问题工单
* 工单编号自动生成来源类型固定为0IQC检测任务状态默认为0待流转 * 工单编号自动生成来源类型固定为0IQC检测任务状态默认为0待流转
@ -1507,6 +1529,23 @@ public class QmsIssueTicketControllerService {
return StrUtil.join("-", args); return StrUtil.join("-", args);
} }
private void callbackPdiInspectionTask(QmsPdiTaskRecord taskRecord, Boolean pass) {
PdiInspectionTaskCallbackQO qo = new PdiInspectionTaskCallbackQO()
.setOrderNo(taskRecord.getOrderNo())
.setModelNo(getPdiModelNo(taskRecord))
.setDeviceNo(taskRecord.getDeviceNo())
.setPass(Boolean.TRUE.equals(pass));
wmsApiService.post(pdiUrl, qo, "PDI任务回调WMS");
}
private String getPdiModelNo(QmsPdiTaskRecord taskRecord) {
if (taskRecord.getDetectionRulesId() == null) {
return null;
}
QmsPdiDetectionRules rules = pdiDetectionRulesService.getById(taskRecord.getDetectionRulesId());
return rules == null ? null : rules.getModelNo();
}
private String buildPqcIncidentDescription(List<QmsPqcTaskRecordDetails> detailList) { private String buildPqcIncidentDescription(List<QmsPqcTaskRecordDetails> detailList) {
if (CollectionUtil.isEmpty(detailList)) { if (CollectionUtil.isEmpty(detailList)) {
return ""; return "";
@ -3221,7 +3260,7 @@ public class QmsIssueTicketControllerService {
if (ticket.getSourceType() != null && ticket.getSourceType() == 1 && ticket.getSourceId() != null) { if (ticket.getSourceType() != null && ticket.getSourceType() == 1 && ticket.getSourceId() != null) {
QmsPdiTaskRecord originalTask = createPdiRepairTask(ticket.getSourceId(), now); QmsPdiTaskRecord originalTask = createPdiRepairTask(ticket.getSourceId(), now);
if (originalTask != null) { if (originalTask != null) {
wmsPdiInspectionTaskCallbackService.callBack(originalTask, true); callbackPdiInspectionTask(originalTask, true);
} }
} }