package Ġcom . mini warehouse . logic . repository Ċ Ċ import Ġorg . lite pal . Lite Pal Ċ import Ġorg . lite pal . Lite Pal . findBy SQL Ċ Ċ class ĠMaterial Type Repository Ġ: ĠRepository Interface Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtype List Ġ= Ġarray ListOf < String >() ĊĊĠĠĠ Ġoverride Ġfun Ġprepare Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcursor Ġ= ĠfindBy SQL (" SELECT ĠDISTINCT Ġtype ĠFROM Ġmaterial ") ĊĠĠĠĠĠĠĠ Ġif Ġ( cursor Ġ!= Ġnull Ġ&& Ġcursor . moveTo First ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdo Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype Item Ġ= Ġcursor . getString ( cursor . getColumnIndex (" type ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype List . add ( type Item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġwhile Ġ( cursor . moveTo Next ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetData List (): ĠList < String > Ġ= Ġtype List ĊĊĠĠĠ Ġoverride Ġfun ĠgetData Name List (): ĠArrayList < String > Ġ= Ġtype List ĊĊĠĠĠ Ġoverride Ġfun Ġfind Data ByName ( name : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( item Ġin Ġtype List ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Ġ== Ġname ) Ġreturn Ġitem ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} Ċ Ċ }