From 7c2ce48bd18269e8f541820794fd7bad4ba345af Mon Sep 17 00:00:00 2001 From: ialbert Date: Mon, 29 Jan 2024 13:54:12 +0300 Subject: [PATCH] DM_X search: statuses PROC/MNG --- .../service/registry/RegistryManager.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/registry/RegistryManager.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/registry/RegistryManager.java index 69c6ecba4..cc1d402a0 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/registry/RegistryManager.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/registry/RegistryManager.java @@ -38,11 +38,17 @@ public class RegistryManager { public Optional searchDmxByCounterParty(Registry rgs) { if (TextUtil.isEmpty(rgs.getContract())) return Optional.empty(); - String sqlCondition = String.format("(%s) and companyId = %d and contract = '%s'", - RegistryCodeSqlBuilder.getInstance(DM_X).build(), - rgs.getCounterPartyId(), - rgs.getContract()); - Registry dmx = rgsImdg.getFirstObjectBySQL(sqlCondition); + ImdgPredicateBuilder pb = rgsImdg.predicateBuilder(); + ImdgPredicate prdct = pb.and( + pb.sql(RegistryCodeSqlBuilder.getInstance(DM_X).build()), + pb.equals("companyId", rgs.getCounterPartyId()), + pb.equals("contract", rgs.getContract()), + pb.or( + pb.equals("registryStatus", RegistryStatus.PROC.getKey()), + pb.equals("registryStatus", RegistryStatus.MNG.getKey()) + ) + ); + Registry dmx = rgsImdg.getFirstObjectByPredicate(prdct); return Optional.ofNullable(dmx); }