/* Ċ Ġ* Ċ Ġ* Ġ Ġ* ĠCopyright Ġ 2 0 2 0 ĠN ECT EC Ċ Ġ* Ġ Ġ* ĠĠ ĠNational ĠElectron ics Ġand ĠComputer ĠTechnology ĠCenter , ĠTh ail and Ċ Ġ* Ġ Ġ* Ċ Ġ* Ġ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* Ġ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ġ Ġ* Ċ Ġ* Ġ Ġ* ĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ġ Ġ* Ċ Ġ* Ġ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* Ġ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* Ġ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ* Ċ Ġ*/ Ċ Ċ package Ġf fc . air sync . dis ability Ċ Ċ import Ġf fc . air sync . Dao Ċ import Ġf fc . air sync . MySql J db i Ċ import Ġf fc . air sync . getLogger Ċ import Ġf fc . entity . health care . Dis ability Ċ import Ġf fc . entity . health care . I cd 1 0 Ċ import Ġf fc . entity . health care . Severity Ċ import Ġf fc . entity . util . generate Temp Id Ċ import Ġorg . joda . time . DateTime Ċ import Ġorg . joda . time . LocalDate Ċ Ċ class ĠDis ability J db i ( ĊĠĠĠ Ġprivate Ġval Ġj db i Dao : ĠDao Ġ= ĠMySql J db i ( null ) Ċ ) Ġ: ĠDis ability Dao Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= Ġget Logger ( this ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . debug Ġ{ Ġ" S 0 " Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( pc u Code : ĠString , Ġpid : ĠString , Ġlookup D isease : Ġ( ic d 1 0 : ĠString ) Ġ-> ĠI cd 1 0 ?): ĠList < Dis ability > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġj db i Dao . instant . with Handle < List < Dis ability >, ĠException > Ġ{ Ġhandle Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle . createQuery ( query ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. bind (" pc u code ", Ġp cu Code ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. bind (" pid ", Ġpid ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġrs , Ġ_ Ġ-> ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 1 Ġ à¸ģà¸²à¸£ à¸¡ à¸Ńà¸ĩ à¹Ģ à¸« à¹ĩ à¸Ļ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 2 Ġ à¸ģà¸²à¸£ à¹Ħ à¸Ķ à¹ī à¸¢ à¸´ à¸Ļ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 3 Ġ à¸£ à¹Ī à¸²à¸ĩ à¸ģ à¸²à¸¢ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 4 Ġ à¸Ĺ à¸²à¸ĩ à¸Ī à¸´ à¸ķ Ġ à¸ŀ à¸ ¤ à¸ķ à¸´ à¸ģ à¸£ à¸£ à¸¡ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 5 Ġ à¸ª à¸ķ à¸´ à¸Ľ à¸± à¸ į à¸ į à¸² ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 6 Ġ à¸Ĺ à¸²à¸ĩ à¸ģà¸²à¸£ à¹Ģ à¸£ à¸µ à¸¢ à¸Ļ à¸£ à¸¹ à¹ī ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ 7 Ġ à¸Ń à¸Ń à¸Ĺ à¸´ à¸ª à¸ķ à¸´ à¸ģ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgroup Ġ= Ġrs . getString (" in comp let etype ") ?. pre Group () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 1 - 9 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġseverity Ġ= Ġrs . getString (" unable level "). pre Severity () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ à¸§ à¸± à¸Ļ à¸Ĺ à¸µà¹Ī à¸ŀ à¸ļ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdetect Date Ġ= ĠDateTime ( rs . getDate (" date found ")). to LocalDate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ à¸ª à¸² à¹Ģ à¸« à¸ķ à¸¸ à¸Ħ à¸§ à¸²à¸¡ à¸ŀ à¸´ à¸ģà¸²à¸£ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcause Ġ= Ġrs . getString (" dis ab cause "). pre Cause () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdisease Ġ= Ġrs . getString (" diag code ") ?. pre D isease () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstart Ġ= ĠDateTime ( rs . getDate (" date start unable ")). to LocalDate () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdis ability Run Ġ= Ġkotlin . run Catch ing Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDis ability ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgroup !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdetect Date Ġ?: ĠLocalDate . now (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Ġ?: Ġdetect Date Ġ?: ĠLocalDate . now (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcause , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdisease , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseverity ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( dis ability Run . is Success ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdis ability Run . get OrNull () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. list (). map NotNull Ġ{ Ġit Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġquery Ġ= Ġ""" Ċ SELECT Ċ ĉ person unable . pc u code person , Ċ ĉ person unable . pid , Ċ ĉ c person in complete . in comp let ename , Ċ ĉ c person in complete . in comp let etype , Ċ ĉ person unable 1 type . unable level , Ċ ĉ person unable 1 type . date found , Ċ ĉ person unable 1 type . dis ab cause , Ċ ĉ person unable 1 type . diag code , Ċ ĉ person unable 1 type . date start unable , Ċ ĉ person unable 1 type . date update Ċ FROM Ġperson unable Ċ INNER ĠJOIN Ġperson unable 1 type ĠON Ċ ĉ person unable . pc u code person = person unable 1 type . pc u code person Ċ ĉ AND Ċ ĉ person unable . pid = person unable 1 type . pid Ċ INNER ĠJOIN Ġc person in complete ĠON Ċ ĉ c person in complete . in complete code = person unable 1 type . type code Ċ WHERE ĊĠĠĠ Ġperson unable . pc u code person = Ġ: pc u code ĠAND Ġperson unable . pid Ġ= Ġ: pid ĊĠĠĠ Ġ""" ĊĊĠĠĠ Ġprivate Ġfun ĠString ?. pre Cause (): ĠDis ability . Cause Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( this ?. trim ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 " Ġ-> ĠDis ability . Cause . IN B OR N ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 2 " Ġ-> ĠDis ability . Cause . IN J URE D ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 3 " Ġ-> ĠDis ability . Cause . DI SE ASE D ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠDis ability . Cause . UNKNOWN ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠString . pre D isease (): ĠI cd 1 0 Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠI cd 1 0 ( generate Temp Id (), Ġthis . trim ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠString ?. pre Severity (): ĠSeverity Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( this ?. trim ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 0 ", Ġ" 1 " Ġ-> ĠSeverity . OK ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 2 ", Ġ" 3 " Ġ-> ĠSeverity . LOW ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 4 ", Ġ" 5 " Ġ-> ĠSeverity . MID ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 6 ", Ġ" 7 " Ġ-> ĠSeverity . HI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 8 ", Ġ" 9 " Ġ-> ĠSeverity . VERY _ HI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠSeverity . UNDEFINED ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠString . pre Group (): ĠDis ability . Group ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( trim ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 " Ġ-> ĠDis ability . Group . BL IND NESS ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 2 " Ġ-> ĠDis ability . Group . DE AF NESS ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 3 " Ġ-> ĠDis ability . Group . MOB ILITY ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 4 " Ġ-> ĠDis ability . Group . MENT AL ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 5 " Ġ-> ĠDis ability . Group . INTEL LECT UAL ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 6 " Ġ-> ĠDis ability . Group . LEAR NING ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 7 " Ġ-> ĠDis ability . Group . AUT IS M ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ