sdf04 fix

This commit is contained in:
ialbert 2023-06-09 10:58:58 +03:00
parent e6b32c4943
commit f21e7dea88

View file

@ -16,6 +16,7 @@ import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
import ru.spcex.platform.utils.log.ExceptionUtils;
import java.math.BigDecimal;
import java.time.Instant;
@ -55,7 +56,7 @@ public class Sdf04Executor extends AbstractExecutor<SDf04> {
//обычно мы ищем по группу sdf04, здесь как будто всегда только одна запись, todo нужно прочекать этот момент
log.debug("Process sdf04 record; sdf04.id: {}", sdf04.getId());
Collection<Registry> registries = selectRegistryForSDF04(sdf04.getC_acc_deb());
registries.forEach(registry -> unlockRegistry(registry, new BigDecimal(sdf04.getSum_deb())));
registries.forEach(registry -> unlockRegistry(registry, parseString(sdf04.getSum_deb())));
}
return result;
}
@ -83,4 +84,13 @@ public class Sdf04Executor extends AbstractExecutor<SDf04> {
registryImdg.update(registry);
return true;
}
private BigDecimal parseString(String str) {
try {
return new BigDecimal(str);
} catch (Throwable e) {
log.warn(ExceptionUtils.getStackTrace(e));
return BigDecimal.ZERO;
}
}
}