package Ġme . zhi y ao . wat ere ver . ui . record . create Ċ Ċ import Ġandroidx . h ilt . lifecycle . ViewModel Inject Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . live Data Ċ import Ġme . zhi y ao . wat ere ver . constants . Grow th Record Type Ċ import Ġme . zhi y ao . wat ere ver . data . db . model . Grow th Record Ċ import Ġme . zhi y ao . wat ere ver . data . db . model . Image Ċ import Ġme . zhi y ao . wat ere ver . data . db . model . Plant Ċ import Ġme . zhi y ao . wat ere ver . data . db . model . relations . Plant Grow th Record Relation Ċ import Ġme . zhi y ao . wat ere ver . data . repo . Grow th Record Repository Ċ import Ġme . zhi y ao . wat ere ver . data . repo . Image Repository Ċ import Ġme . zhi y ao . wat ere ver . data . repo . Plant Grow th Record Relation Repository Ċ Ċ /** Ċ Ġ* Ċ Ġ* Ġ@ author ĠWang Z hi Y ao Ċ Ġ* Ġ@ date Ġ 2 0 2 0 / 9 / 1 1 Ċ Ġ*/ Ċ class ĠNew Grow th Record ViewModel Ġ@ ViewModel Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġgrowth Record Repository : ĠGrow th Record Repository , ĊĠĠĠ Ġprivate Ġval Ġplant Grow th Record Relation Repository : ĠPl ant Grow th Record Relation Repository , ĊĠĠĠ Ġprivate Ġval Ġimage Repository : ĠImage Repository Ċ ) Ġ: ĠViewModel () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcomplete Ġ= ĠMutable LiveData < Boolean >() ĊĊĠĠĠ Ġvar Ġplant : ĠPl ant ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġgrowth Record Type : ĠGrow th Record Type ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġphoto Paths : ĠList < String >? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġdescription : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġadd Grow th Record ( plant : ĠPl ant , Ġgrowth Record : ĠGrow th Record , Ġphoto Paths : ĠList < String > ?) Ġ= ĊĠĠĠĠĠĠĠ Ġlive Data Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgrowth Record Id Ġ= Ġgrowth Record Repository . add Grow th Record ( growth Record ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( growth Record Id Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplant Grow th Record Relation Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPl ant Grow th Record Relation ( plant . id , Ġgrowth Record Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplant Grow th Record Relation Repository . add Plant Grow th Record Relation ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplant Grow th Record Relation ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġphoto Paths ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġimages Ġ= ĠArrayList < Image >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( photo Path Ġin Ġit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimages . add ( Image ( growth Record Id , Ġphoto Path , ĠSystem . currentTimeMillis ())) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Repository . add Images ( images ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( growth Record Id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Complete ( complete : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . complete . value Ġ= Ġcomplete ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġis Completed () Ġ= Ġcomplete Ċ }