Merge branch 'qms/yf' into qms/develop
This commit is contained in:
commit
d30414d655
|
|
@ -57,6 +57,15 @@ public class QmsIssueTicketControllerService {
|
||||||
@Resource
|
@Resource
|
||||||
private QmsIssueTicketProcessControllerService issueTicketProcessControllerService;
|
private QmsIssueTicketProcessControllerService issueTicketProcessControllerService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IQmsPdiTaskRecordService pdiTaskRecordService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IQmsPdiDetectionRulesService pdiDetectionRulesService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IQmsPdiInspectionResultsService pdiInspectionResultsService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private WmsIncomingInspectionTaskCallbackService wmsIncomingInspectionTaskCallbackService;
|
private WmsIncomingInspectionTaskCallbackService wmsIncomingInspectionTaskCallbackService;
|
||||||
|
|
||||||
|
|
@ -146,6 +155,36 @@ public class QmsIssueTicketControllerService {
|
||||||
String userName = UserUtil.getUserName();
|
String userName = UserUtil.getUserName();
|
||||||
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime now = LocalDateTime.now();
|
||||||
|
|
||||||
|
// 查询任务记录
|
||||||
|
QmsPdiTaskRecord taskRecord = pdiTaskRecordService.getById(request.getTaskRecordId());
|
||||||
|
if (Objects.isNull(taskRecord)) {
|
||||||
|
throw new NflgException(STATE.BusinessError, "PDI检测任务记录不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询检测规则
|
||||||
|
QmsPdiDetectionRules rules = pdiDetectionRulesService.getById(taskRecord.getDetectionRulesId());
|
||||||
|
if (Objects.isNull(rules)) {
|
||||||
|
throw new NflgException(STATE.BusinessError, "PDI检测规则不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 根据 inspectionType 生成工单标题
|
||||||
|
String ticketTitle;
|
||||||
|
if (Objects.equals(rules.getInspectionType(), 0)) {
|
||||||
|
// 新品:机型编号-机台号-订单编号-出厂检验-检测版本号
|
||||||
|
ticketTitle = StrUtil.join("-", rules.getMachineNo(), taskRecord.getDeviceNo(),
|
||||||
|
taskRecord.getOrderNo(), "出厂检验", rules.getInspectionVersion());
|
||||||
|
} else {
|
||||||
|
// 库存:机型编号-订单编号-库存检验-检测版本号
|
||||||
|
ticketTitle = StrUtil.join("-", rules.getMachineNo(),
|
||||||
|
taskRecord.getOrderNo(), "库存检验", rules.getInspectionVersion());
|
||||||
|
}
|
||||||
|
|
||||||
|
// 统计不合格检测项数量
|
||||||
|
long unqualifiedCount = pdiInspectionResultsService.lambdaQuery()
|
||||||
|
.eq(QmsPdiInspectionResults::getTaskId, request.getTaskRecordId())
|
||||||
|
.eq(QmsPdiInspectionResults::getInspectionItemResults, false)
|
||||||
|
.count();
|
||||||
|
|
||||||
// 自动生成工单编号
|
// 自动生成工单编号
|
||||||
String ticketNo = basdeSerialNumberControllerService.generateSerialNumber(38);
|
String ticketNo = basdeSerialNumberControllerService.generateSerialNumber(38);
|
||||||
|
|
||||||
|
|
@ -153,6 +192,12 @@ public class QmsIssueTicketControllerService {
|
||||||
.setSourceType((short) 1)
|
.setSourceType((short) 1)
|
||||||
.setSourceId(request.getTaskRecordId())
|
.setSourceId(request.getTaskRecordId())
|
||||||
.setTicketNo(ticketNo)
|
.setTicketNo(ticketNo)
|
||||||
|
.setTicketTitle(ticketTitle)
|
||||||
|
.setProjectNo(taskRecord.getTaskNo())
|
||||||
|
.setIncidentType(request.getIncidentType())
|
||||||
|
.setIncidentDescription(request.getIncidentDescription())
|
||||||
|
.setUnqualifiedQty((int) unqualifiedCount)
|
||||||
|
.setApprovalStatus((short) 0)
|
||||||
.setStatus((short) 0)
|
.setStatus((short) 0)
|
||||||
.setCreateUserId(userId)
|
.setCreateUserId(userId)
|
||||||
.setCreateUserName(userName)
|
.setCreateUserName(userName)
|
||||||
|
|
@ -169,6 +214,20 @@ public class QmsIssueTicketControllerService {
|
||||||
request.getHandlerUserId(),
|
request.getHandlerUserId(),
|
||||||
request.getInspectionResultIds()
|
request.getInspectionResultIds()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// 推送待办消息
|
||||||
|
Long sourceTypeId = dictionaryItemService.getIdByCode("MessageType", "PDIDefectiveProductHandling");
|
||||||
|
VUtil.trueThrowBusinessError(Objects.isNull(sourceTypeId)).throwMessage("消息类型不存在");
|
||||||
|
User handlerUser = userService.getById(request.getHandlerUserId());
|
||||||
|
QmsTodoItem todoItem = new QmsTodoItem()
|
||||||
|
.setCode(ticketNo)
|
||||||
|
.setIsRead(false)
|
||||||
|
.setSourceTypeId(sourceTypeId)
|
||||||
|
.setSourceId(entity.getId())
|
||||||
|
.setCreateUserId(request.getHandlerUserId())
|
||||||
|
.setCreateUserName(handlerUser != null ? handlerUser.getUserName() : userName)
|
||||||
|
.setCreateTime(now);
|
||||||
|
todoItemService.save(todoItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -228,8 +228,8 @@ public class QmsPdiDetectionRulesControllerService {
|
||||||
.setInspectionImage(item.getInspectionImage())
|
.setInspectionImage(item.getInspectionImage())
|
||||||
.setStatus(item.getStatus())
|
.setStatus(item.getStatus())
|
||||||
.setSort(item.getSort())
|
.setSort(item.getSort())
|
||||||
.setSetBy(operator)
|
.setCreateBy(operator)
|
||||||
.setSetTime(now))
|
.setCreateTime(now))
|
||||||
.collect(java.util.stream.Collectors.toList());
|
.collect(java.util.stream.Collectors.toList());
|
||||||
statusItemService.saveBatch(newStatusItems);
|
statusItemService.saveBatch(newStatusItems);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,8 +84,8 @@ public class QmsPdiStatusItemControllerService {
|
||||||
.setInspectionImage(request.getInspectionImage())
|
.setInspectionImage(request.getInspectionImage())
|
||||||
.setStatus(request.getStatus())
|
.setStatus(request.getStatus())
|
||||||
.setSort(1) // 新数据sort=1
|
.setSort(1) // 新数据sort=1
|
||||||
.setSetBy(operator)
|
.setCreateBy(operator)
|
||||||
.setSetTime(now);
|
.setCreateTime(now);
|
||||||
statusItemService.save(entity);
|
statusItemService.save(entity);
|
||||||
markMaintained(request.getDetectionRulesId());
|
markMaintained(request.getDetectionRulesId());
|
||||||
}
|
}
|
||||||
|
|
@ -104,8 +104,8 @@ public class QmsPdiStatusItemControllerService {
|
||||||
String operator = UserUtil.getUserName();
|
String operator = UserUtil.getUserName();
|
||||||
var updateChain = statusItemService.lambdaUpdate()
|
var updateChain = statusItemService.lambdaUpdate()
|
||||||
.eq(QmsPdiDetectionRulesStatusItem::getId, request.getId())
|
.eq(QmsPdiDetectionRulesStatusItem::getId, request.getId())
|
||||||
.set(QmsPdiDetectionRulesStatusItem::getSetBy, operator)
|
.set(QmsPdiDetectionRulesStatusItem::getCreateBy, operator)
|
||||||
.set(QmsPdiDetectionRulesStatusItem::getSetTime, LocalDateTime.now());
|
.set(QmsPdiDetectionRulesStatusItem::getCreateTime, LocalDateTime.now());
|
||||||
if (StrUtil.isNotBlank(request.getComponentsDes())) {
|
if (StrUtil.isNotBlank(request.getComponentsDes())) {
|
||||||
updateChain.set(QmsPdiDetectionRulesStatusItem::getComponentsDes, request.getComponentsDes());
|
updateChain.set(QmsPdiDetectionRulesStatusItem::getComponentsDes, request.getComponentsDes());
|
||||||
}
|
}
|
||||||
|
|
@ -201,8 +201,8 @@ public class QmsPdiStatusItemControllerService {
|
||||||
.setInspectionImage(dto.getInspectionImage())
|
.setInspectionImage(dto.getInspectionImage())
|
||||||
.setSort(dto.getSort())
|
.setSort(dto.getSort())
|
||||||
.setStatus(status)
|
.setStatus(status)
|
||||||
.setSetBy(operator)
|
.setCreateBy(operator)
|
||||||
.setSetTime(now);
|
.setCreateTime(now);
|
||||||
})
|
})
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
if (CollectionUtil.isEmpty(entities)) {
|
if (CollectionUtil.isEmpty(entities)) {
|
||||||
|
|
@ -254,8 +254,8 @@ public class QmsPdiStatusItemControllerService {
|
||||||
vo.setInspectionImage(item.getInspectionImage());
|
vo.setInspectionImage(item.getInspectionImage());
|
||||||
vo.setStatus(item.getStatus());
|
vo.setStatus(item.getStatus());
|
||||||
vo.setSort(item.getSort());
|
vo.setSort(item.getSort());
|
||||||
vo.setSetBy(item.getSetBy());
|
vo.setCreateBy(item.getCreateBy());
|
||||||
vo.setSetTime(item.getSetTime());
|
vo.setCreateTime(item.getCreateTime());
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -25,9 +25,9 @@ public class QmsPdiStatusItemExportDTO {
|
||||||
@ExcelColumn("状态")
|
@ExcelColumn("状态")
|
||||||
private String statusName;
|
private String statusName;
|
||||||
|
|
||||||
@ExcelColumn("设置人")
|
@ExcelColumn("创建人")
|
||||||
private String setBy;
|
private String createBy;
|
||||||
|
|
||||||
@ExcelColumn("设置时间")
|
@ExcelColumn("创建时间")
|
||||||
private LocalDateTime setTime;
|
private LocalDateTime createTime;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.nflg.wms.common.pojo.qo;
|
package com.nflg.wms.common.pojo.qo;
|
||||||
|
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import jakarta.validation.constraints.NotEmpty;
|
import jakarta.validation.constraints.NotEmpty;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
@ -29,4 +30,16 @@ public class QmsIssueTicketPdiAddQO {
|
||||||
*/
|
*/
|
||||||
@NotEmpty(message = "检测结果ID列表不能为空")
|
@NotEmpty(message = "检测结果ID列表不能为空")
|
||||||
private List<Long> inspectionResultIds;
|
private List<Long> inspectionResultIds;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 事故类型:0=一般,1=较严重,2=严重
|
||||||
|
*/
|
||||||
|
@NotNull(message = "事故类型不能为空")
|
||||||
|
private Short incidentType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 事件描述(对不合格项的内容整合)
|
||||||
|
*/
|
||||||
|
@NotBlank(message = "事件描述不能为空")
|
||||||
|
private String incidentDescription;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -63,13 +63,13 @@ public class QmsPdiStatusItemGroupVO {
|
||||||
private Integer sort;
|
private Integer sort;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置人
|
* 创建人
|
||||||
*/
|
*/
|
||||||
private String setBy;
|
private String createBy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置时间
|
* 创建时间
|
||||||
*/
|
*/
|
||||||
private LocalDateTime setTime;
|
private LocalDateTime createTime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -57,12 +57,12 @@ public class QmsPdiDetectionRulesStatusItem implements Serializable {
|
||||||
private Integer sort;
|
private Integer sort;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置人
|
* 创建人
|
||||||
*/
|
*/
|
||||||
private String setBy;
|
private String createBy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置时间
|
* 创建时间
|
||||||
*/
|
*/
|
||||||
private LocalDateTime setTime;
|
private LocalDateTime createTime;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,8 @@
|
||||||
s.inspection_content,
|
s.inspection_content,
|
||||||
s.inspection_image,
|
s.inspection_image,
|
||||||
CASE s.status WHEN 0 THEN '静态' WHEN 1 THEN '动态' WHEN 2 THEN '特殊' ELSE '' END AS status_name,
|
CASE s.status WHEN 0 THEN '静态' WHEN 1 THEN '动态' WHEN 2 THEN '特殊' ELSE '' END AS status_name,
|
||||||
s.set_by,
|
s.create_by,
|
||||||
s.set_time
|
s.create_time
|
||||||
FROM qms_pdi_detection_rules_status_item s
|
FROM qms_pdi_detection_rules_status_item s
|
||||||
WHERE s.detection_rules_id = #{detectionRulesId}
|
WHERE s.detection_rules_id = #{detectionRulesId}
|
||||||
AND s.status IN
|
AND s.status IN
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue