-
Notifications
You must be signed in to change notification settings - Fork 0
/
bodycomposition.go
45 lines (41 loc) · 1.34 KB
/
bodycomposition.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package bodycompositionwebapi
import (
"fmt"
"github.com/davidkroell/bodycomposition"
)
type BodyCompositionRequest struct {
TimeStamp int64 `json:"timeStamp"`
Weight float64 `json:"weight"`
PercentFat float64 `json:"percentFat"`
PercentHydration float64 `json:"percentHydration"`
BoneMass float64 `json:"boneMass"`
MuscleMass float64 `json:"muscleMass"`
VisceralFatRating float64 `json:"visceralFatRating"`
PhysiqueRating float64 `json:"physiqueRating"`
MetabolicAge float64 `json:"metabolicAge"`
CaloriesActiveMet float64 `json:"caloriesActiveMet"`
BodyMassIndex float64 `json:"bodyMassIndex"`
Email string `json:"email"`
Password string `json:"password"`
}
func UploadBodyComposition(request BodyCompositionRequest) string {
bc := bodycomposition.NewBodyComposition(
request.Weight,
request.PercentFat,
request.PercentHydration,
request.BoneMass,
request.MuscleMass,
request.VisceralFatRating,
request.PhysiqueRating,
request.MetabolicAge,
request.CaloriesActiveMet,
request.BodyMassIndex,
request.TimeStamp)
var result string
if err := bodycomposition.Upload(request.Email, request.Password, bc); err != nil {
result = fmt.Sprintf("%s%s","Error uploading weight to Garmin Connect: ", err.Error())
} else {
result = ""
}
return result
}