pdi功能修改

This commit is contained in:
funny 2026-04-27 13:46:27 +08:00
parent d9c01921f7
commit 69dd1c665b
4 changed files with 31 additions and 30 deletions

View File

@ -45,16 +45,21 @@ public class QmsPdiDeliveryItemControllerService {
*/
@Transactional
public void add(QmsPdiDeliveryItemAddQO request) {
// 如果传入了sort校验同一检测规则ID下sort是否已存在
if (request.getSort() != null) {
long count = deliveryItemService.lambdaQuery()
// 查询同一检测规则ID下的最大sort值
Integer maxSort = deliveryItemService.lambdaQuery()
.eq(QmsPdiDetectionRulesDeliveryItem::getDetectionRulesId, request.getDetectionRulesId())
.eq(QmsPdiDetectionRulesDeliveryItem::getSort, request.getSort())
.count();
if (count > 0) {
throw new NflgException(STATE.BusinessError,
"该检测规则下排序值" + request.getSort() + "已存在,不允许新增");
}
.orderByDesc(QmsPdiDetectionRulesDeliveryItem::getSort)
.last("LIMIT 1")
.oneOpt()
.map(QmsPdiDetectionRulesDeliveryItem::getSort)
.orElse(0);
// 将已有数据的sort全部+1
if (maxSort > 0) {
deliveryItemService.lambdaUpdate()
.eq(QmsPdiDetectionRulesDeliveryItem::getDetectionRulesId, request.getDetectionRulesId())
.setSql("sort = sort + 1")
.update();
}
String operator = UserUtil.getUserName();
@ -62,7 +67,7 @@ public class QmsPdiDeliveryItemControllerService {
QmsPdiDetectionRulesDeliveryItem entity = new QmsPdiDetectionRulesDeliveryItem()
.setDetectionRulesId(request.getDetectionRulesId())
.setChecklist(request.getChecklist())
.setSort(request.getSort())
.setSort(1) // 新数据sort=1
.setCreateBy(operator)
.setCreateTime(now);
deliveryItemService.save(entity);

View File

@ -53,17 +53,23 @@ public class QmsPdiStatusItemControllerService {
throw new NflgException(STATE.BusinessError, "静态/动态检测项的部件描述不能为空");
}
// 如果传入了sort校验同一检测规则ID+同一状态下sort是否已存在
if (request.getSort() != null) {
long count = statusItemService.lambdaQuery()
// 查询同一检测规则ID+同一状态下的最大sort值
Integer maxSort = statusItemService.lambdaQuery()
.eq(QmsPdiDetectionRulesStatusItem::getDetectionRulesId, request.getDetectionRulesId())
.eq(QmsPdiDetectionRulesStatusItem::getStatus, request.getStatus())
.eq(QmsPdiDetectionRulesStatusItem::getSort, request.getSort())
.count();
if (count > 0) {
throw new NflgException(STATE.BusinessError,
"该检测规则下状态" + request.getStatus() + "的排序值" + request.getSort() + "已存在,不允许新增");
}
.orderByDesc(QmsPdiDetectionRulesStatusItem::getSort)
.last("LIMIT 1")
.oneOpt()
.map(QmsPdiDetectionRulesStatusItem::getSort)
.orElse(0);
// 将已有数据的sort全部+1
if (maxSort > 0) {
statusItemService.lambdaUpdate()
.eq(QmsPdiDetectionRulesStatusItem::getDetectionRulesId, request.getDetectionRulesId())
.eq(QmsPdiDetectionRulesStatusItem::getStatus, request.getStatus())
.setSql("sort = sort + 1")
.update();
}
String operator = UserUtil.getUserName();
@ -74,7 +80,7 @@ public class QmsPdiStatusItemControllerService {
.setInspectionContent(request.getInspectionContent())
.setInspectionImage(request.getInspectionImage())
.setStatus(request.getStatus())
.setSort(request.getSort())
.setSort(1) // 新数据sort=1
.setSetBy(operator)
.setSetTime(now);
statusItemService.save(entity);

View File

@ -21,9 +21,4 @@ public class QmsPdiDeliveryItemAddQO {
*/
@NotBlank(message = "检查项不能为空")
private String checklist;
/**
* 排序
*/
private Integer sort;
}

View File

@ -38,9 +38,4 @@ public class QmsPdiStatusItemAddQO {
*/
@NotNull(message = "状态不能为空")
private Integer status;
/**
* 排序
*/
private Integer sort;
}