package Ġcom . github . pool _ party . pull _ party _ bot . database Ċ Ċ import Ġorg . jetbrains . ex posed . dao . Int Entity Ċ import Ġorg . jetbrains . ex posed . dao . Int Entity Class Ċ import Ġorg . jetbrains . ex posed . dao . Long Entity Ċ import Ġorg . jetbrains . ex posed . dao . Long Entity Class Ċ import Ġorg . jetbrains . ex posed . dao . id . Entity ID Ċ import Ġorg . jetbrains . ex posed . sql . SortOrder Ċ import Ġorg . jetbrains . ex posed . sql . and Ċ import Ġorg . jetbrains . ex posed . sql . transactions . transaction Ċ Ċ class ĠParty ( id : ĠEntity ID < Int >) Ġ: ĠInt Entity ( id ) Ġ{ ĊĊĠĠĠ Ġvar Ġusers Ġby ĠPart ies . users ĊĊĠĠĠ Ġval Ġaliases ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠParty Aliases Cache [ id . value ] ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠInt Entity Class < Party >( Part ies ) Ċ } Ċ Ċ class ĠAlias ( id : ĠEntity ID < Int >) Ġ: ĠInt Entity ( id ) Ġ{ ĊĊĠĠĠ Ġvar Ġchat Ġby ĠChat Ġreferenced On ĠAli ases . chat Id ĊĠĠĠ Ġvar Ġname Ġby ĠAli ases . name ĊĠĠĠ Ġvar Ġlast Use Ġby ĠAli ases . last Use ĊĊĠĠĠ Ġprivate Ġvar Ġprivate Party Ġby ĠParty Ġreferenced On ĠAli ases . party Id ĊĊĠĠĠ Ġval Ġparty Id Ġby ĠAli ases . party Id ĊĊĠĠĠ Ġvar Ġparty ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠParty Cache [ party Id . value ] !! ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ= Ġtransaction Ġ{ Ġprivate Party Ġ= Ġvalue Ġ} ĊĊĠĠĠ Ġvar Ġusers ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġparty . users ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ Ġparty . run Ġ{ Ġtransaction Ġ{ Ġusers Ġ= Ġvalue Ġ} Ġ} Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠInt Entity Class < Alias >( Aliases ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġfind ( chat Id : ĠLong , Ġparty Name : ĠString ): ĠAlias ? Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfind Ġ{ ĠAli ases . chat Id . eq ( chat Id ) Ġand ĠAli ases . name . eq ( party Name ) Ġ}. first OrNull () ĊĊĠĠĠĠĠĠĠ Ġfun Ġtop Lost ( chat Id : ĠLong ): ĠAlias ? Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfind Ġ{ ĠAli ases . chat Id . eq ( chat Id ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. orderBy ( Aliases . last Use Ġto ĠSort Order . ASC ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. limit ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. toList () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. single OrNull () ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠChat ( id : ĠEntity ID < Long >) Ġ: ĠLong Entity ( id ) Ġ{ ĊĊĠĠĠ Ġvar Ġis R ude Ġby ĠCh ats . is R ude ĊĠĠĠ Ġval Ġaliases Ġby ĠAlias Ġref err ers On ĠAli ases . chat Id ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠLong Entity Class < Chat >( Ch ats ) Ċ } Ċ