|
@@ -3,6 +3,8 @@ package models
|
|
|
import (
|
|
|
"time"
|
|
|
|
|
|
+ operationPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/operation"
|
|
|
+
|
|
|
pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/pasture"
|
|
|
)
|
|
|
|
|
@@ -34,34 +36,55 @@ type FeedTemplate struct {
|
|
|
Backup2 string `xorm:"backup2" json:"backup2"`
|
|
|
IsModify int32 `xorm:"is_modify" json:"is_modify"`
|
|
|
GroupDataId int64 `xorm:"group_data_id" json:"group_data_id"`
|
|
|
+
|
|
|
+ FeedFormulaDetail []*FeedTemplateDetail `xorm:"-" json:"feed_formula_detail"`
|
|
|
}
|
|
|
|
|
|
func (f *FeedTemplate) TableName() string {
|
|
|
return "feedtemplet"
|
|
|
}
|
|
|
|
|
|
-func NewFeedTemplateByGroup(req *FeedFormula) *FeedTemplate {
|
|
|
- return &FeedTemplate{
|
|
|
- PastureId: req.PastureId,
|
|
|
+func NewFeedTemplateByGroup(req *operationPb.DistributeFeedRequest) *FeedTemplate {
|
|
|
+ res := &FeedTemplate{
|
|
|
+ PastureId: int64(req.PastureId),
|
|
|
TCode: req.EncodeNumber,
|
|
|
TName: req.Name,
|
|
|
TColor: req.Colour,
|
|
|
CCid: int64(req.CattleCategoryId),
|
|
|
CCName: req.CattleCategoryName,
|
|
|
FTType: req.FormulaTypeName,
|
|
|
- FTTypeId: req.FormulaTypeId,
|
|
|
+ FTTypeId: int32(req.FormulaTypeId),
|
|
|
Source: "集团下发",
|
|
|
Remark: req.Remarks,
|
|
|
Enable: 1,
|
|
|
- Version: req.Version,
|
|
|
+ Version: int64(req.Version),
|
|
|
SaveTime: time.Now().Format("2006-01-02 15:04:05"),
|
|
|
IsIssue: 0,
|
|
|
IssueVersion: 0,
|
|
|
IssueId: 0,
|
|
|
- IsModify: req.IsModify,
|
|
|
- GroupDataId: req.Id,
|
|
|
- GroupVersion: req.Version,
|
|
|
+ IsModify: int32(req.IsModify),
|
|
|
+ GroupDataId: int64(req.Id),
|
|
|
+ GroupVersion: int64(req.Version),
|
|
|
}
|
|
|
+ res.FeedFormulaDetail = make([]*FeedTemplateDetail, 0)
|
|
|
+ for _, v := range req.FeedFormulaDetail {
|
|
|
+ res.FeedFormulaDetail = append(res.FeedFormulaDetail, &FeedTemplateDetail{
|
|
|
+ PastureId: int64(req.PastureId),
|
|
|
+ FId: int64(v.ForageId),
|
|
|
+ FName: v.ForageName,
|
|
|
+ FWeight: float64(v.Weight / 100),
|
|
|
+ IsLockCount: v.IsLockCowCountRatio,
|
|
|
+ Sort: v.Sort,
|
|
|
+ FeedGroup: v.ForageGroupName,
|
|
|
+ PreFtId: int64(v.PreFit),
|
|
|
+ AutoSecond: v.StirDelay,
|
|
|
+ AutoSecondName: "",
|
|
|
+ SplitFtPreId: 0,
|
|
|
+ Deviation: v.AllowError,
|
|
|
+ IsModify: int32(v.IsModify),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ return res
|
|
|
}
|
|
|
|
|
|
type FeedTemplateSlice []*FeedTemplate
|