pdi导入逻辑修改
This commit is contained in:
parent
7892b6e8b6
commit
5eff7ea7b9
|
|
@ -90,25 +90,13 @@ public class QmsPdiStatusItemControllerService {
|
||||||
// 部件已存在,直接使用
|
// 部件已存在,直接使用
|
||||||
componentsId = existingComponent.getId();
|
componentsId = existingComponent.getId();
|
||||||
} else {
|
} else {
|
||||||
// 新部件,插入到部件表(sort按检测规则ID + 状态独立计算)
|
QmsPdiComponentAnagement component = createComponent(
|
||||||
Integer maxComponentSort = componentAnagementService.lambdaQuery()
|
request.getDetectionRulesId(),
|
||||||
.eq(QmsPdiComponentAnagement::getDetectionRulesId, request.getDetectionRulesId())
|
request.getStatus(),
|
||||||
.eq(QmsPdiComponentAnagement::getStatus, request.getStatus())
|
request.getComponentsDes(),
|
||||||
.orderByDesc(QmsPdiComponentAnagement::getSort)
|
operator,
|
||||||
.last("LIMIT 1")
|
now
|
||||||
.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);
|
|
||||||
|
|
||||||
componentsId = component.getId();
|
componentsId = component.getId();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -382,7 +370,7 @@ public class QmsPdiStatusItemControllerService {
|
||||||
.eq(QmsPdiComponentAnagement::getComponentName, dto.getComponentsDes())
|
.eq(QmsPdiComponentAnagement::getComponentName, dto.getComponentsDes())
|
||||||
.one();
|
.one();
|
||||||
if (component == null) {
|
if (component == null) {
|
||||||
throw new NflgException(STATE.BusinessError, "部件名称不存在,无法导入:" + dto.getComponentsDes());
|
component = createComponent(detectionRulesId, status, dto.getComponentsDes(), operator, now);
|
||||||
}
|
}
|
||||||
componentsId = component.getId();
|
componentsId = component.getId();
|
||||||
componentNameToIdMap.put(dto.getComponentsDes(), componentsId);
|
componentNameToIdMap.put(dto.getComponentsDes(), componentsId);
|
||||||
|
|
@ -619,6 +607,31 @@ public class QmsPdiStatusItemControllerService {
|
||||||
.orElse(0);
|
.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