1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- package backend
- import (
- "context"
- "encoding/json"
- "fmt"
- "kpt-pasture/model"
- feedingPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
- "gitee.com/xuyiping_admin/pkg/xerr"
- )
- func (s *StoreEntry) GetFeedingHomepage(ctx context.Context, req *feedingPb.FeedingHomepageRequest) (*feedingPb.FeedingHomepageResponse, error) {
- userModel, err := s.GetUserModel(ctx)
- if err != nil {
- return nil, xerr.WithStack(err)
- }
- pasture := userModel.AppPasture
- if pasture.FeedPastureId == 0 {
- return nil, xerr.Customf("饲喂数据未配置")
- }
- url := fmt.Sprintf("%d/feeding/tmrdata", pasture.FeedPastureId)
- response := &model.FeedingHomepageResponse{Data: []*model.FeedingHomepageData{}}
- result, err := s.HttpClient.DoGet(url, model.FeedingHeaders)
- if err != nil {
- return nil, xerr.WithStack(err)
- }
- if err = json.Unmarshal(result, response); err != nil {
- return nil, xerr.WithStack(err)
- }
- res := &feedingPb.FeedingHomepageResponse{
- Code: response.Code,
- Msg: response.Msg,
- Data: &feedingPb.FeedingHomepageData{},
- }
- for _, v := range response.Data {
- res.Data = &feedingPb.FeedingHomepageData{
- Cost: v.Cost,
- DoneTimes: v.DoneTimes,
- DoneWeight: v.DoneWeight,
- MonRateHL: v.MonRateHL,
- MonRateSL: v.MonRateSL,
- MonRateSLR: v.MonRateSLR,
- Montime: v.Montime,
- PlanTimes: v.PlanTimes,
- PlanWeight: v.PlanWeight,
- Temtime: v.Temtime,
- TotalCost: v.TotalCost,
- YesRateHL: v.YesRateHL,
- YesRateSL: v.YesRateSL,
- YesRateSLR: v.YesRateSLR,
- }
- }
- return res, nil
- }
- func (s *StoreEntry) GetFeedingManagement(ctx context.Context, req *feedingPb.FeedingManagementRequest) (*feedingPb.FeedingManagementResponse, error) {
- userModel, err := s.GetUserModel(ctx)
- if err != nil {
- return nil, xerr.WithStack(err)
- }
- pasture := userModel.AppPasture
- if pasture.FeedPastureId == 0 {
- return nil, xerr.Customf("饲喂数据未配置")
- }
- url := fmt.Sprintf("%d/feeding/management?typea=%s&startdate=%s&enddate=%s", pasture.FeedPastureId, req.Typea, req.Startdate, req.Enddate)
- response := &model.FeedingManagementResponse{Data: []*model.FeedingManagementData{}}
- result, err := s.HttpClient.DoGet(url, model.FeedingHeaders)
- if err != nil {
- return nil, xerr.WithStack(err)
- }
- if err = json.Unmarshal(result, response); err != nil {
- return nil, xerr.WithStack(err)
- }
- res := &feedingPb.FeedingManagementResponse{
- Code: response.Code,
- Msg: response.Msg,
- Data: []*feedingPb.FeedingManagementData{},
- }
- for _, v := range response.Data {
- res.Data = append(res.Data, &feedingPb.FeedingManagementData{
- Actualweightminus: v.ActualWeightMinus,
- Ccount: v.CCount,
- Cost: v.Cost,
- Dryweight: v.DryWeight,
- Totalcost: v.TotalCost,
- Typea: v.TypeA,
- })
- }
- return res, nil
- }
|