@ file : Suppress (" Spell Checking Inspection ") Ċ Ċ package Ġcom . l hw dev . self Test Macro . api Ċ Ċ import Ġcom . l hw dev . fetch . B odies Ċ import Ġcom . l hw dev . fetch . get Ċ import Ġcom . l hw dev . fetch . http . HttpMethod Ċ import Ġcom . l hw dev . fetch . http . Session Ċ import Ġcom . l hw dev . fetch . json Ċ import Ġcom . l hw dev . fetch . s Default Fake Header Ċ import Ġcom . l hw dev . self Test Macro . toJson L oose Ċ import Ġkotlinx . serialization . Serial Name Ċ import Ġkotlinx . serialization . Serializable ĊĊ Ċ /** Ċ Ġ* Ġ@ param Ġquestion Sus pic ious Ġ` íķĻ ìĥĿ Ġë³ ¸ ìĿ¸ ìĿ´ Ġì ½Ķ ë¡ľ ëĤĺ 1 9 Ġê° Ĳ ìĹ ¼ ìĹĲ ĠìĿĺ ìĭ¬ ëĲĺëĬĶ ĠìķĦëŀĺ ìĿĺ Ġìŀ Ħ ìĥģ ì¦ Ŀ ìĥģ ( ë°ľ ìĹ´ ( 3 7 . 5 âĦ ĥ ), Ġê¸° ì¹ ¨ , Ġíĺ¸ í Ŀ ¡ ê³ ¤ ëŀ Ģ , Ġìĺ¤ íķľ , Ġê · ¼ ìľ ¡ í Ĩµ , ĠëĳĲ í Ĩµ , ĠìĿ¸ í ĽĦ í Ĩµ , ĠíĽĦ ê°ģ Â· ë¯¸ ê°ģ ìĨĮ ìĭ¤ ) ìĿ´ ĠìŀĪ ëĤĺ ìļĶ ?` Ċ Ġ* Ġ@ param Ġquestion Quick TestResult Ġ` íķĻ ìĥĿ ìĿĢ Ġìĺ¤ ëĬ ĺ ( ìĸ´ ìłľ ĠìłĢ ëħ ģ Ġíı¬ íķ¨ ) Ġìĭ ł ìĨį íķ Ń ìĽĲ ê² Ģ ìĤ¬ ( ìŀĲ ê°Ģ ì§Ħ ëĭ¨ ) ë¥¼ Ġìĭ¤ ìĭľ íĸĪ ëĤĺ ìļĶ ?` Ċ Ġ* Ġ@ param Ġquestion Waiting Result Ġ` íķĻ ìĥĿ Ġë³ ¸ ìĿ¸ ĠëĺĲëĬĶ ĠëıĻ ê±° ìĿ¸ ìĿ´ ĠP CR Ġê²Ģ ìĤ¬ ë¥¼ Ġë°Ľ ê³ł Ġê·¸ Ġê²°ê³¼ ë¥¼ Ġê¸° ëĭ¤ ë¦¬ ê³ł ĠìŀĪ ëĤĺ ìļĶ ?` Ċ Ġ*/ Ċ public Ġdata Ġclass ĠSurvey Data ( Ċ ĉ val Ġquestion Sus pic ious : ĠBoolean , Ċ ĉ val Ġquestion Quick TestResult : ĠQuick TestResult , Ċ ĉ val Ġquestion Waiting Result : ĠBoolean , Ċ ĉ val Ġclient Version : ĠString , Ċ ĉ val Ġdevice Uuid : ĠString Ġ= Ġ"", Ċ ĉ val Ġupper User Token : ĠUser Token ? Ġ= Ġnull , Ġ// Ġnull Ġfor Ġdefault Ċ ĉ val Ġupper UserName : ĠString ? Ġ= Ġnull Ġ// Ġnull Ġfor Ġdefault Ċ ) Ġ{ Ċ ĉ public Ġfun Ġto Api Survey Data ( user : ĠUser , Ġname : ĠString ): ĠApi Survey Data Ġ= ĠApi Survey Data ( Ċĉ ĉ upper User Token Ġ= Ġuser . token , Ċĉ ĉ upper UserName Ġ= Ġname , Ċĉ ĉ client Version Ġ= Ġclient Version , Ċĉ ĉ rsp ns 0 0 Ġ= Ġ! question Sus pic ious Ġ&& Ġquestion Quick TestResult Ġ!= ĠQuick TestResult . positive Ġ&& Ċĉĉ ĉ ! question Waiting Result , Ċĉ ĉ rsp ns 0 1 Ġ= Ġif ( question Sus pic ious ) Ġ" 2 " Ġelse Ġ" 1 ", Ċĉ ĉ rsp ns 0 3 Ġ= Ġif ( question Quick TestResult Ġ== ĠQuick TestResult . did Not Con duct ) Ġ" 1 " Ġelse Ġnull , Ċĉ ĉ rsp ns 0 7 Ġ= Ġwhen ( question Quick TestResult ) Ġ{ Ċĉĉ ĉ Quick TestResult . did Not Con duct Ġ-> Ġnull Ċĉĉ ĉ Quick TestResult . negative Ġ-> Ġ" 0 " Ċĉĉ ĉ Quick TestResult . positive Ġ-> Ġ" 1 " Ċĉ ĉ }, Ċĉ ĉ rsp ns 0 2 Ġ= Ġif ( question Waiting Result ) Ġ" 0 " Ġelse Ġ" 1 " Ċ ĉ ) Ċ } Ċ Ċ @ Serializable Ġ// ĠJson Encode Defaults Ġshould Ġbe Ġused Ċ public Ġdata Ġclass ĠApi Survey Data ( Ċ ĉ val Ġdevice Uuid : ĠString Ġ= Ġ"", Ċ ĉ val Ġclient Version : ĠString , Ċ ĉ @ Serializable ( with Ġ= ĠYes No Serializer :: class ) Ġval Ġrsp ns 0 0 : ĠBoolean Ġ= Ġtrue , Ċ ĉ val Ġrsp ns 0 1 : ĠString Ġ= Ġ" 1 ", Ċ ĉ val Ġrsp ns 0 2 : ĠString Ġ= Ġ" 1 ", Ċ ĉ val Ġrsp ns 0 3 : ĠString ? Ġ= Ġ" 1 ", Ċ ĉ val Ġrsp ns 0 4 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 0 5 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 0 6 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 0 7 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 0 8 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 0 9 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 0 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 1 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 2 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 3 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 4 : ĠString ? Ġ= Ġnull , Ċ ĉ val Ġrsp ns 1 5 : ĠString ? Ġ= Ġnull , Ċ ĉ @ Serial Name (" upper Token ") Ġval Ġupper User Token : ĠUser Token , Ċ ĉ @ Serial Name (" upper UserName Enc pt ") Ġval Ġupper UserName : ĠString Ċ ) Ċ Ċ @ Serializable Ċ public Ġdata Ġclass ĠSurvey Result ( Ċ ĉ @ Serial Name (" register D tm ") Ġval Ġregister At : ĠString Ċ ĉ // Ġwhat Ġis Ġ' in ve Y md ' ? Ċ ) ĊĊ Ċ @ D angerous H cs Api Ċ public Ġsuspend Ġfun ĠSession . register Survey ( Ċ ĉ institute : ĠInstitute Info , Ċ ĉ user : ĠUser , Ċ ĉ name : ĠString , Ċ ĉ survey Data : ĠSurvey Data Ċ ): ĠSurvey Result Ġ= Ġfetch ( Ċ ĉ institute . request Url [" register Ser vey "], Ċ ĉ method Ġ= ĠHttpMethod . post , Ċ ĉ headers Ġ= Ġs Default Fake Header Ġ+ Ġmap Of ( Ċĉ ĉ " Authorization " Ġto Ġuser . token . token Ċ ĉ ), Ċ ĉ body Ġ= ĠB odies . json ( Api Survey Data . serializer (), Ġsurvey Data . to Api Survey Data ( user , Ġname ), Ġjson Ġ= ĠJson Encode Defaults ) Ċ ). toJson L oose ( Survey Result . serializer ()) Ċ