package service import ( "context" "github.com/caixw/lib.go/conv" "github.com/sirupsen/logrus" "youngee_m_api/db" "youngee_m_api/model/http_model" ) var Pay *pay type pay struct { } func (*pay) GetPaysum(ctx context.Context, project http_model.PaySumRequest) (*http_model.PaySumResponce, error) { projectId := conv.MustInt64(project.ProjectId,0) tasks, err := db.GetTaskList(ctx, projectId) if err != nil { logrus.Infof("[GetPayTasklist] fail,err:%+v", err) return nil, err } payMap := make(map[int]float64) PaySum := http_model.PaySumResponce{} if tasks != nil { for _, task := range tasks { payMap[task.StrategyId] += task.AllPayment } for k, v := range payMap { ps := http_model.PaySum{k, v} PaySum.PaySum = append(PaySum.PaySum, ps) } } return &PaySum, nil }