|
@@ -1,6 +1,8 @@
|
|
package model
|
|
package model
|
|
|
|
|
|
import (
|
|
import (
|
|
|
|
+ "fmt"
|
|
|
|
+
|
|
pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
|
|
pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
|
|
)
|
|
)
|
|
|
|
|
|
@@ -23,6 +25,117 @@ func (d *DataWarningItems) TableName() string {
|
|
return "data_warning_items"
|
|
return "data_warning_items"
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+var DefaultDataWarningItemsMap = map[pasturePb.DataWarningType_Kind][]*pasturePb.WarningDataSet{
|
|
|
|
+ pasturePb.DataWarningType_Sale_Standard: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "admission_age",
|
|
|
|
+ FieldDesc: "在群天数",
|
|
|
|
+ Operator: ">=",
|
|
|
|
+ Value: "100",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "current_weight",
|
|
|
|
+ FieldDesc: "体重",
|
|
|
|
+ Operator: ">=",
|
|
|
|
+ Value: "700",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ pasturePb.DataWarningType_UnPregnant_Mating_Time: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "mating_times",
|
|
|
|
+ FieldDesc: "配次",
|
|
|
|
+ Operator: ">",
|
|
|
|
+ Value: "2",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ pasturePb.DataWarningType_Abortion_Time: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "abortion_times",
|
|
|
|
+ FieldDesc: "流产次数",
|
|
|
|
+ Operator: ">",
|
|
|
|
+ Value: "3",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ pasturePb.DataWarningType_Over_Age_UnPaired_Young: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "day_age",
|
|
|
|
+ FieldDesc: "月龄",
|
|
|
|
+ Operator: ">=",
|
|
|
|
+ Value: "150",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ pasturePb.DataWarningType_Over_Age_UnPregnant_Young: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "day_age",
|
|
|
|
+ FieldDesc: "月龄",
|
|
|
|
+ Operator: ">=",
|
|
|
|
+ Value: "660",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ GroupId: 2,
|
|
|
|
+ FieldName: "cow_type",
|
|
|
|
+ FieldDesc: "牛只类型",
|
|
|
|
+ Operator: "=",
|
|
|
|
+ Value: fmt.Sprintf("%d", pasturePb.CowType_Fattening_Calf),
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ GroupId: 2,
|
|
|
|
+ FieldName: "cow_type",
|
|
|
|
+ FieldDesc: "牛只类型",
|
|
|
|
+ Operator: "=",
|
|
|
|
+ Value: fmt.Sprintf("%d", pasturePb.CowType_Reserve_Calf),
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ GroupId: 3,
|
|
|
|
+ FieldName: "is_pregnant",
|
|
|
|
+ FieldDesc: "是否怀孕",
|
|
|
|
+ Operator: "=",
|
|
|
|
+ Value: fmt.Sprintf("%d", pasturePb.IsShow_No),
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ pasturePb.DataWarningType_Over_Month_UnSale: {
|
|
|
|
+ {
|
|
|
|
+ GroupId: 1,
|
|
|
|
+ FieldName: "day_age",
|
|
|
|
+ FieldDesc: "月龄",
|
|
|
|
+ Operator: ">=",
|
|
|
|
+ Value: "540",
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ GroupId: 2,
|
|
|
|
+ FieldName: "purpose_kind",
|
|
|
|
+ FieldDesc: "用途",
|
|
|
|
+ Operator: "=",
|
|
|
|
+ Value: fmt.Sprintf("%d", pasturePb.Purpose_Fatten),
|
|
|
|
+ IsShow: pasturePb.IsShow_Ok,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func DataWarningItemsInitData(pastureId int64, dataWarning *DataWarning) []*DataWarningItems {
|
|
|
|
+ dataWarningItems := make([]*DataWarningItems, 0)
|
|
|
|
+ for _, v := range DefaultDataWarningItemsMap[dataWarning.Kind] {
|
|
|
|
+ dataWarningItems = append(dataWarningItems, NewDataWarningItems(pastureId, DefaultUserId, dataWarning, v))
|
|
|
|
+ }
|
|
|
|
+ return dataWarningItems
|
|
|
|
+}
|
|
|
|
+
|
|
func NewDataWarningItems(pastureId, userId int64, dataWarning *DataWarning, req *pasturePb.WarningDataSet) *DataWarningItems {
|
|
func NewDataWarningItems(pastureId, userId int64, dataWarning *DataWarning, req *pasturePb.WarningDataSet) *DataWarningItems {
|
|
return &DataWarningItems{
|
|
return &DataWarningItems{
|
|
PastureId: pastureId,
|
|
PastureId: pastureId,
|