package Ġse an p ai . din ners ystem Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . os . Handler Ċ import Ġandroid . view . View Ċ import Ġkotlinx . android . synt hetic . main . activity _ random _ order .* Ċ import Ġkotlin . math . round Ċ import Ġkotlin . random . Random Ċ Ċ class ĠRandom Order Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġrandom ming Ġ= Ġfalse ĊĠĠĠ Ġprivate Ġvar Ġtotal D ish Count Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġtotal Po ss ibilities Ġ= Ġ 0 . toDouble () ĊĠĠĠ Ġprivate Ġvar Ġtask Handler Ġ= ĠHandler () ĊĠĠĠ Ġprivate Ġvar Ġcurrent Random Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġrandom Upper Ġ= Ġ 0 ĊĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ random _ order ) ĊĠĠĠĠĠĠĠ Ġrandom ming Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġtotal D ish Count Ġ= Ġrandom Menu Arr . length () ĊĠĠĠĠĠĠĠ Ġtotal Po ss ibilities Ġ= Ġ 1 . 0 / total D ish Count . toDouble () ĊĠĠĠĠĠĠĠ Ġtotal Po ss ibilities Ġ= Ġround ( total Po ss ibilities * 1 0 0 0 0 )/ 1 0 0 ĊĠĠĠĠĠĠĠ Ġinfo Text . text Ġ= Ġ" ä»Ĭ æĹ¥ åħ± ${ total D ish Count } ï¼Į æ¯ı åĢĭ é¤ Ĳ é» ŀ ä¸Ń ç į İ æ©Ł çİĩ å¹³åĿĩ ï¼Į åĲĦ çĤº $ total Po ss ibilities % ãĢĤ " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġstart Random ( view : ĠView ){ ĊĠĠĠĠĠĠĠ Ġif (! random ming ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrandom ming Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrandom Upper Ġ= ĠRandom . nextInt ( 1 8 , 2 7 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Random Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtask Handler . post ( object Ġ: ĠRunnable { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġrun () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtask Handler . post Delayed ( this , Ġ 2 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġro u lette () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġprivate Ġfun Ġro u lette (){ ĊĠĠĠĠĠĠĠ Ġif ( random Upper Ġ< Ġcurrent Random ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtask Handler . remove Callbacks And Messages ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrandom ming Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrandom Index Ġ= ĠRandom . nextInt ( 0 , total D ish Count - 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġrandom Menu Arr . getJSONObject ( random Index ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Text . text Ġ= Ġitem . getString (" dish _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdis h Name Ġ= Ġitem . getString (" dish _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdis h ID Ġ= Ġitem . getString (" dish _ id ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdis h Cost Ġ= Ġitem . getString (" dish _ cost ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfactory Name Ġ= Ġitem . getJSONObject (" department "). getJSONObject (" factory "). getString (" name ") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHandler (). post Delayed ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsel Order 1 Ġ= ĠSel Order ( dish ID , dish Name , dish Cost ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm Data Ġ= ĠConfirm Struct ( dish Name , factory Name , dish Cost ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , Main Order Activity :: class . java )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ 2 0 0 0 ) ĊĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrandom Index Ġ= ĠRandom . nextInt ( 0 , total D ish Count - 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġrandom Menu Arr . getJSONObject ( random Index ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Text . text Ġ= Ġitem . getString (" dish _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Random Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ