/** Ċ Ġ* ĠCopyright ĠÂ© Ġair back Ċ Ġ* Ċ Ġ* ĠThis Ġprogram Ġis Ġfree Ġsoftware : Ġyou Ġcan Ġredistribute Ġit Ġand / or Ġmodify Ċ Ġ* Ġit Ġunder Ġthe Ġterms Ġof Ġthe ĠGNU ĠAffero ĠGeneral ĠPublic ĠLicense Ġas Ġpublished Ġby Ċ Ġ* Ġthe ĠFree ĠSoftware ĠFoundation , Ġeither Ġversion Ġ 3 Ġof Ġthe ĠLicense , Ġor Ċ Ġ* Ġ( at Ġyour Ġoption ) Ġany Ġlater Ġversion . Ċ Ġ* Ċ Ġ* ĠThis Ġprogram Ġis Ġdistributed Ġin Ġthe Ġhope Ġthat Ġit Ġwill Ġbe Ġuseful , Ċ Ġ* Ġbut ĠWITHOUT ĠANY ĠWARRANTY ; Ġwithout Ġeven Ġthe Ġimplied Ġwarranty Ġof Ċ Ġ* ĠMERCHANTABILITY Ġor ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE . Ġ ĠSee Ġthe Ċ Ġ* ĠGNU ĠAffero ĠGeneral ĠPublic ĠLicense Ġfor Ġmore Ġdetails . Ċ Ġ* Ċ Ġ* ĠYou Ġshould Ġhave Ġreceived Ġa Ġcopy Ġof Ġthe ĠGNU ĠAffero ĠGeneral ĠPublic ĠLicense Ċ Ġ* Ġalong Ġwith Ġthis Ġprogram . Ġ ĠIf Ġnot , Ġsee Ġ< http : ></ http : >// www . gnu . org / licenses />. Ċ Ġ*/ Ċ package Ġcom . air back . module . project . domain Ċ Ċ import Ġcom . air back . core . utils . DateTime Utils Ċ import Ġcom . air back . core . utils . StringUtils Ċ import Ġcom . air back . module . project . i 1 8 n . Option I 1 8 n Enum . M ilestone Status Ċ import Ġjava . time . LocalDate Ċ Ċ /** Ċ Ġ* Ġ@ author Ġair back ĠLtd . Ċ Ġ* Ġ@ since Ġ 1 . 0 Ċ Ġ*/ Ċ class ĠSimple M ilestone Ġ: ĠM ilestone () Ġ{ ĊĊĠĠĠ Ġvar Ġowner Avatar Id : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġowner FullName : ĠString Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( StringUtils . isBlank ( field )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStringUtils . extract Name From Email ( assign user ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġfield ĊĊĠĠĠ Ġvar Ġcreated User Avatar Id : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġcreated User FullName : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( StringUtils . isBlank ( field )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStringUtils . extract Name From Email ( created user ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġfield ĊĊĠĠĠ Ġvar Ġnum Open Tasks : ĠInt ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġnum Tasks : ĠInt ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġnum Open Bugs : ĠInt ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġnum Bugs : ĠInt ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġnum Open R is ks : ĠInt ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġnum R is ks : ĠInt ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġtotal Task Bill able Hours : ĠDouble ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġtotal Task Non Bill able Hours : ĠDouble ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġtotal Bug Bill able Hours : ĠDouble ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġtotal Bug Non Bill able Hours : ĠDouble ? Ġ= Ġnull ĊĊĠĠĠ Ġlateinit Ġvar Ġproject ShortName : ĠString ĊĠĠĠ Ġvar ĠprojectName : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġval Ġis Over due : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( M ilestone Status . Closed . name Ġ!= Ġstatus ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġend date Ġ!= Ġnull Ġ&& Ġend date . is Before ( LocalDate . now ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġis Completed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠM ilestone Status . Closed . name Ġ== Ġstatus ĊĊĠĠĠ Ġenum Ġclass ĠField Ġ{ ĊĠĠĠĠĠĠĠ Ġnum Open Tasks , Ġnum Tasks , Ġnum Open Bugs , Ġnum Bugs , Ġowner FullName , Ġtotal Task Bill able Hours , ĊĠĠĠĠĠĠĠ Ġtotal Task Non Bill able Hours , Ġtotal Bug Bill able Hours , Ġtotal Bug Non Bill able Hours , Ġtotal Bill able Hours , Ġtotal Non Bill able Hours ; ĊĊĠĠĠĠĠĠĠ Ġfun ĠequalTo ( value : ĠAny ): ĠBoolean Ġ= Ġname Ġ== Ġvalue ĊĠĠĠ Ġ} Ċ } Ċ