package Ġcom . ax el _ stein . glu co se _ tracker . data . room . dao Ċ Ċ import Ġandroidx . room . Dao Ċ import Ġandroidx . room . Query Ċ import Ġcom . ax el _ stein . glu co se _ tracker . data . room . model . G lu co se Statistics Ċ import Ġio . reactivex . Single Ċ Ċ @ Dao Ċ interface ĠStats Dao Ġ{ ĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ= Ġdate (' now ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġtoday (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 7 Ġday ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġweek (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 1 4 Ġday ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġtwo Week s (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĠĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĠĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 1 Ġmonth ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġmonth (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĠĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĠĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 3 Ġmonth ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġthree Months (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĠĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĠĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 6 Ġmonth ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġsix Months (): ĠSingle < G lu co se Statistics > ĊĊĠĠĠ Ġ@ Query (""" ĊĠĠĠĠĠĠĠ Ġselect Ġmin ( value _ mm ol ) Ġas Ġmin _ mm ol , Ġmax ( value _ mm ol ) Ġas Ġmax _ mm ol , Ġavg ( value _ mm ol ) Ġas Ġavg _ mm ol , ĠĊĠĠĠĠĠĠĠ Ġmin ( value _ mg ) Ġas Ġmin _ mg , Ġmax ( value _ mg ) Ġas Ġmax _ mg , Ġavg ( value _ mg ) Ġas Ġavg _ mg ĠĊĠĠĠĠĠĠĠ Ġfrom Ġgl u co se _ log Ġwhere Ġdate ( date _ time ) Ġ> Ġdate (' now ', Ġ'- 1 Ġyear ') ĊĠĠĠ Ġ"" ") ĊĠĠĠ Ġfun Ġyear (): ĠSingle < G lu co se Statistics > Ċ }