package group import ( "context" "net/http" "tmr-watch/models" "tmr-watch/module" feedPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/pasture" ) func SearchFeedTemplateList(ctx context.Context, req *feedPb.SearchFeedTemplateRequest) (*feedPb.SearchFeedTemplateResponse, error) { feedTemplateList, total, err := module.NewSearchFeedTemplateList(ctx, req) if err != nil { return nil, err } feedDetailVersionLogList, err := module.FeedDetailVersionLogList(ctx) if err != nil { return nil, err } res := &feedPb.SearchFeedTemplateResponse{ Code: http.StatusOK, Msg: "ok", Data: &feedPb.FeedTemplateData{ Page: req.Pagination.Page, PageSize: req.Pagination.PageSize, Total: int32(total), List: models.FeedTemplateSlice(feedTemplateList).ToPB(feedDetailVersionLogList), }, } return res, nil } func GetFeetTemplateVersion(ctx context.Context, pastureId, feedTemplateId int) (*feedPb.GetFeetTemplateVersionResponse, error) { historyFeedTemplateDetailList, err := module.SearchFeedTemplateDetailListByFeedTemplateId(ctx, int64(pastureId), int64(feedTemplateId)) if err != nil { return nil, err } newFeedTemplateDetailVersion, err := module.GetFeedDetailVersionByDesc(ctx, int64(pastureId), int64(feedTemplateId)) if err != nil { return nil, err } newFeedTemplateDetailVersionLogList, err := module.SearchFeedDetailVersionLogById(ctx, int64(pastureId), int64(feedTemplateId), newFeedTemplateDetailVersion.Id) if err != nil { return nil, err } res := &feedPb.GetFeetTemplateVersionResponse{ Code: http.StatusOK, Msg: "ok", Data: make([]*feedPb.FeetTemplateVersionData, 0), } // 比例两个配方饲料的不同 for _, n := range newFeedTemplateDetailVersionLogList { for _, v := range historyFeedTemplateDetailList { if v.FName == n.ForageName { res.Data = append(res.Data, &feedPb.FeetTemplateVersionData{ ForageName: v.FName, ForageGroupName: v.FeedGroup, Weight: float32(v.LWeight / 100), StirDelay: v.AutoSecond, AllowError: v.Deviation, Sort: v.Sort, IsLockCowCountRatio: v.IsLockCount, IsModify: v.IsModify, Status: feedPb.VersionStatus_UPDATE, }) } } } return res, nil } func FeetTemplateUpgradeNewVersion(ctx context.Context, pastureId, feedTemplateId int) error { return module.FeetTemplateUpgradeNewVersion(ctx, int64(pastureId), int64(feedTemplateId)) }