package graph import ( "context" "strconv" "forge.cadoles.com/Cadoles/guesstimate/internal/model" "github.com/pkg/errors" ) func handleEstimations(ctx context.Context, task *model.Task) (*model.Estimations, error) { estimations := &model.Estimations{} if task.Estimations == nil { return estimations, nil } rawOptimistic, exists := task.Estimations[model.EstimationOptimistic] if exists && rawOptimistic != nil { optimistic, err := strconv.ParseFloat(*rawOptimistic, 64) if err != nil { return nil, errors.WithStack(err) } estimations.Optimistic = optimistic } rawLikely, exists := task.Estimations[model.EstimationLikely] if exists && rawLikely != nil { likely, err := strconv.ParseFloat(*rawLikely, 64) if err != nil { return nil, errors.WithStack(err) } estimations.Likely = likely } rawPessimistic, exists := task.Estimations[model.EstimationPessimistic] if exists && rawPessimistic != nil { pessimistic, err := strconv.ParseFloat(*rawPessimistic, 64) if err != nil { return nil, errors.WithStack(err) } estimations.Pessimistic = pessimistic } return estimations, nil }