Adaugă program + entități OrgProgramOverride (catalog + suprataxă per-org)
Restaurează "feat(los): introduce markerul pachetului LOS entity"
Acest reverts comite Nu-ţi face griji
Adaugă tipuri de LOS enum (status, rol, persona, program, model creditor)
Contoare micrometru/timper pentru tranziții, condiții, proteze web
LoanPipelineCreșteri de servicii los tranziții total {de la, la} per succes Tranziţie. Creșteri ale serviciului de împrumut Nu-ţi face griji. pentru șters/ștear...
Rânduri Hash-chain LoanPipelineMilestone pentru detectarea modificărilor
LoanPipelineMilestone a câștigat anterior MILESTONE SHA256. Pe fiecare tranziție, Serviciul LoanPipeline calculează SHA-256 din etapa anterioară formă canonică ...
Validarea înainte de export a HMDA LAR
New HmdaLarValidationIsue DTO (ERROR/WARN gravity, field name, message). HmdaLarService annotează acum fiecare rând în buildLar() cu o listă de probleme care ac...
Consultanta PretransitionLint pentru Aplicare TAKEN
Noua metodă @Transactional (readOnly) pe LoanPipelineService returnează o listă al avertismentelor care pot fi citite de om pentru obiectivul de aplicare TAKEN:...
Conducta de colaps kanban N+1 la o singură interogare grupată
listăForOrganization() used to emite o condition-fetch per împrumut (201 interogări la 200 de credite). Acum, un singur grup grupat JPQL agregat tastat de împru...
Consumator Durabil JetStream, izolare executor, semnături în timp
Trei schimbări grupate pentru că toate trăiesc în WebhookDeliveryWorker și face sens împreună: 1. Treceți de la dispecer NATS de bază la un consumator de împin...
Optimist-lock LoanFile.status pentru a preveni tranzițiile de curse
Clicurile simultane "Advance" ar putea scrie ambele repere. Adaugă @Versiune la LoanFile și o culoare explicită în LoanPipelineService.tranziție astfel încât Su...
Rezolutia numelui, REO liens, sarbatori TRID, livrare webhook, link-ul ESignTemplate
Lac de tăiere transversală trece peste toate subproiectele LOS: Rezoluţia numelui afişat de membru (MemberNameRezolvator): - Serviciu unic de soluționare comun...
Preturi instantanee, rate de blocare, constatările AUS, dezvăluiri, cronometre TRID, HMDA LAR
Subproiectele 5, 6 și 7 trimise împreună: Subproiectul 5 (preturi și încuietori): - LoanPrecingSnapshot APR, puncte, zile de blocare) - RateLock - AusFinding...
Masina de stat conducta, conditii, modele, evenimente NATS
Subproiectul 4 (LOS conductle & workflow) suport: - Noul enum LoanConditionStatus (OPEN/CLEARED/WAIVED) - entităţi noi: LoanPipelineMilestone (audit de tranziţ...
Strat de service URLA (repos, DTO, servicii, cautari)
Adaugă întregul strat de servicii suport pentru pachetul URLA introdus în angajamentul anterior: repos/aplicații/ 20 JpaRepositorii vizate pe entitate dtos/app...
Fundaţia de scheme URLA 2021 pentru ipoteca rezidenţială
Refactor AppMortgage într-un pachet complet URLA rădăcină suport multiplu 1003 pe împrumut cu până la doi debitori pe pereche (căsătorit/comun sau necăsătorit)....
Admin drepturi esențiale + roluri de reînsămânțare la editare șablon
Acum refuză. să persevereze o setare NUKE sau FORCE NUKE pe oricare dintre ADMINITRATOR drepturile administrative esențiale ale modelului (CONFIGURE SISTEM, MAN...
Restaurează "feat (membru): *********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
Acest reverts comite Nu-ţi face griji
*************** pentru promovarea rolului idepotent
Adaugă o asigurare publică, tranzacționalăRoleAsignate (membruId, rolId) care: - Nu, dacă rolul este deja pe membru. - Se uită în sus OrgRole și salvează un nou...
Recalculat în bucăți + ventilator model transversal + tipTemplate non-forță
Adaugă trei lucruri necesare pentru editarea șablonului pentru a ajunge la membrii existenți fără a forța un ciclu de logare/ logare: 1. ******************* se...
Drop CountryTypeConverter din EmbAddress. country
Convertorul scrie numele enum (de exemplu, "UNITED STATES") ca un String, dar fiecare masă înglobând EmbAddress (orguri, utilizatori, membri, user adreses, acco...
Add attachments and event fields to ChatMessageDto; ignore unknown fields
ChatMessageDto was missing `attachments`, `readMemberId`, `msgIdLastViewed`, `dateLastViewed`, `addedMemberId`, `objImgId`, `transitMemberId`, and `isJoin` fiel...
Split findChatSessionsForMemberPaged into First/After to fix empty Chats tab
HAVING CAST(null AS TIMESTAMP) IS NULL did not evaluate as expected in CockroachDB,
Comută MediaObjTransit la @MapsId derivat-identitate model
@IdClass combinat cu @Id @OneToOne nu este susținut în mod fiabil în Hibernate 6 JpaRepository<MediaObjTransit, UUID> inițializarea nu funcționează cu "nu defi...
Adăugați @IdClass pentru MediaObjTransit astfel încât datele de primăvară JPA pot expune ID-ul său derivat
Metamodelul datelor de primăvară necesită @IdClass pentru entitățile a căror cheie principală este a @Id @OneToOne identificator derivat. Fără ea, JpaRepository...
Add countUnreadAfter(guid, memberId, since) to MediaObjRepository
Needed by paged chat-list endpoint to compute per-session unread counts when ownLastViewedAt is a LocalDateTime pointer rather than a message UUID.
Add @PrePersist to MediaObjImgDownload.dateCreated to satisfy NOT NULL on insert
Add MediaObjImgDownloadRepository with existsByObjImgIdAndMemberId
Required by ImagingProxyService (Task 10) to deduplicate per-member download tracking without a full table scan.
Add CHAT_ATTACHMENT assoc type with imaging-chat-attachments bucket
Skip creator in findOrCreateExactChatSession member loop (createChatSession already adds them)
Service methods for exact-match find/create, member add, mute, revoke, read
Interogatorie depozit pentru găsirea exact-meci, lista paged, chitanțe
Adaugă dataUltimaVizualizare la MediaMembrie pentru timbrul de primire
Translation cache for chat messages
Adds the MediaObjMsgTranslation entity (one row per (message, language) pair) and an optional sourceLanguageId column on MediaObjMsg so chat messages can be tra...
Eliminați @PostConstruct Comp provider
aprobOrder() se ocupă deja de noile comenzi ale COMP. Decalajul de date unic pentru comenzile existente sunt corectate direct în baza de date.
Comenzi COMP nepreluate la pornire
Pe @PostConstruct, scanează toate comenzile APROBAT COMP și furnizează orice lipsa unui AccountSubscription. Idempotent Alerga în mod repetat.
Utilizați CommerceMarket.getId() în loc de getuid() în furnizareaCompSubscription
CommerceMarket folosește @Id UID id (nu uid), deci Lombok generează getId().
Comanda COMP auto-provizionare Cont Abonaţi şi atribuie licenţă
- SubscriptionOrder: add targetOrganization (nullable FK to orgs) - *************** adaugati tintaOrganizationId string - AccountRepository: add findByPrimaryMe...
Serializeaza customerMemberId as string to conserve Long precizie
- ContSummaryDTO: annotează uid cu *************** și adaugă câmpul principal de coarde al UEId populat din primar membru id - CreateSubscriptionOrderRequest: c...
Add MemberUiPreference entity for per-member UI prefs
Generic per-member UI preference store (memberId, prefKey, JSONB value) for small persisted UI settings. First consumer is the hex-head popover size selector.
Înlocuirea booleanului este realizabilă cu Vailabilitatea Membrului Stare enum
AtributeConverter
Rândurile DB aveau țara ca număr întreg ordinar (de exemplu, "186" pentru UNITED STATES) în loc de nume enum, care cauzează Argument ilegal Excepție pe găsiToat...
Add CDR caller-ID fields to Recording entity
Adds callerIdNum, callerIdName, callDirection, and callResult columns to the Recording entity so kamo-asterisk-support can store Asterisk CDR metadata alongside...
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.