feat(REQ-3300): 编辑状态下调用选择器需要返回不可选数据

This commit is contained in:
chenwenjian 2025-02-21 15:06:14 +08:00
parent 5a6129880e
commit 77e1151ce2
2 changed files with 8 additions and 3 deletions

View File

@ -131,7 +131,7 @@ public class VisaChangePageSearchReq {
/**
* 主单据类型
* <p>
* 仅当{@code from}{@link FromEnum#SELECT}该字段才有效
* 仅当{@code from}{@link FromEnum#SELECT}{@code needRelatedBill}{@code true}该字段才有效且不能为空
* </p>
*/
private VisaTypeEnum visaType;

View File

@ -1148,7 +1148,6 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
private LambdaQueryChainWrapper<ChangeRecord> getFilter(VisaChangePageSearchReq filter) {
LambdaQueryChainWrapper<ChangeRecord> queryChainWrapper = lambdaQuery()
.in(CollectionUtils.isNotEmpty(filter.getVisaIds()), ChangeRecord::getId, filter.getVisaIds())
.eq(Objects.nonNull(filter.getVisaId()), ChangeRecord::getId, filter.getVisaId())
.eq(NumberUtil.isPositiveNumber(filter.getWorkspaceId()), ChangeRecord::getRelationWorkspaceId, filter.getWorkspaceId())
.eq(Objects.nonNull(filter.getType()), ChangeRecord::getType, filter.getType())
@ -1181,7 +1180,13 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
"WHEN STATUS = 'FORBIDED' THEN FALSE " +
"ELSE TRUE " +
"END");
// 编辑状态下调用单据选择器需要将已选的可能作废的单据返回
if (Objects.nonNull(filter.getVisaType())) {
queryChainWrapper.or().in(CollectionUtils.isNotEmpty(filter.getVisaIds()), ChangeRecord::getId, filter.getVisaIds());
return queryChainWrapper;
}
}
queryChainWrapper.in(CollectionUtils.isNotEmpty(filter.getVisaIds()), ChangeRecord::getId, filter.getVisaIds());
return queryChainWrapper;
}
@ -1422,7 +1427,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
.peek(r -> {
AssertUtil.notNull(r.getType(), "相关单位类型错误");
AssertUtil.isTrue(NumberUtil.isPositiveNumber(r.getOuId()), "请选择" + r.getType().getDesc());
AssertUtil.isTrue(NumberUtil.isPositiveNumber(r.getNodeId()), "请选择" + r.getType().getDesc());
AssertUtil.isTrue(NumberUtil.isPositiveNumber(r.getNodeId()), "请选择" + r.getType().getDesc() + "确认人所属部门");
AssertUtil.isTrue(NumberUtil.isPositiveNumber(r.getPersonId()), "请选择" + r.getType().getDesc() + "确认人");
})
.collect(Collectors.groupingBy(VisaChangeTempCreateReq.RelationUnitAndPerson::getType));