pdi导入逻辑修改
This commit is contained in:
parent
7892b6e8b6
commit
5eff7ea7b9
|
|
@ -90,25 +90,13 @@ public class QmsPdiStatusItemControllerService {
|
|||
// 部件已存在,直接使用
|
||||
componentsId = existingComponent.getId();
|
||||
} else {
|
||||
// 新部件,插入到部件表(sort按检测规则ID + 状态独立计算)
|
||||
Integer maxComponentSort = componentAnagementService.lambdaQuery()
|
||||
.eq(QmsPdiComponentAnagement::getDetectionRulesId, request.getDetectionRulesId())
|
||||
.eq(QmsPdiComponentAnagement::getStatus, request.getStatus())
|
||||
.orderByDesc(QmsPdiComponentAnagement::getSort)
|
||||
.last("LIMIT 1")
|
||||
.oneOpt()
|
||||
.map(QmsPdiComponentAnagement::getSort)
|
||||
.orElse(0);
|
||||
|
||||
QmsPdiComponentAnagement component = new QmsPdiComponentAnagement();
|
||||
component.setComponentName(request.getComponentsDes());
|
||||
component.setDetectionRulesId(request.getDetectionRulesId());
|
||||
component.setStatus(request.getStatus() != null ? request.getStatus().shortValue() : null);
|
||||
component.setSort(maxComponentSort + 1);
|
||||
component.setCreateBy(operator);
|
||||
component.setCreateTime(now);
|
||||
componentAnagementService.save(component);
|
||||
|
||||
QmsPdiComponentAnagement component = createComponent(
|
||||
request.getDetectionRulesId(),
|
||||
request.getStatus(),
|
||||
request.getComponentsDes(),
|
||||
operator,
|
||||
now
|
||||
);
|
||||
componentsId = component.getId();
|
||||
}
|
||||
}
|
||||
|
|
@ -382,7 +370,7 @@ public class QmsPdiStatusItemControllerService {
|
|||
.eq(QmsPdiComponentAnagement::getComponentName, dto.getComponentsDes())
|
||||
.one();
|
||||
if (component == null) {
|
||||
throw new NflgException(STATE.BusinessError, "部件名称不存在,无法导入:" + dto.getComponentsDes());
|
||||
component = createComponent(detectionRulesId, status, dto.getComponentsDes(), operator, now);
|
||||
}
|
||||
componentsId = component.getId();
|
||||
componentNameToIdMap.put(dto.getComponentsDes(), componentsId);
|
||||
|
|
@ -619,6 +607,31 @@ public class QmsPdiStatusItemControllerService {
|
|||
.orElse(0);
|
||||
}
|
||||
|
||||
private QmsPdiComponentAnagement createComponent(Long detectionRulesId,
|
||||
Integer status,
|
||||
String componentName,
|
||||
String operator,
|
||||
LocalDateTime now) {
|
||||
Integer maxComponentSort = componentAnagementService.lambdaQuery()
|
||||
.eq(QmsPdiComponentAnagement::getDetectionRulesId, detectionRulesId)
|
||||
.eq(QmsPdiComponentAnagement::getStatus, status)
|
||||
.orderByDesc(QmsPdiComponentAnagement::getSort)
|
||||
.last("LIMIT 1")
|
||||
.oneOpt()
|
||||
.map(QmsPdiComponentAnagement::getSort)
|
||||
.orElse(0);
|
||||
|
||||
QmsPdiComponentAnagement component = new QmsPdiComponentAnagement();
|
||||
component.setComponentName(componentName);
|
||||
component.setDetectionRulesId(detectionRulesId);
|
||||
component.setStatus(status != null ? status.shortValue() : null);
|
||||
component.setSort(maxComponentSort + 1);
|
||||
component.setCreateBy(operator);
|
||||
component.setCreateTime(now);
|
||||
componentAnagementService.save(component);
|
||||
return component;
|
||||
}
|
||||
|
||||
/**
|
||||
* 若主表维护状态为未维护,则更新为已维护
|
||||
*/
|
||||
|
|
|
|||
Loading…
Reference in New Issue