| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | package modelimport (	pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"	"github.com/nicksnyder/go-i18n/v2/i18n")type ConfigDiseaseType struct {	Id           int64                 `json:"id"`	PastureId    int64                 `json:"pastureId"`	Kind         int32                 `json:"kind"`	I18nFieldTag string                `json:"i18nFieldTag"`	Remarks      string                `json:"remarks"`	IsShow       pasturePb.IsShow_Kind `json:"is_show"`	CreatedAt    int64                 `json:"created_at"`	UpdatedAt    int64                 `json:"updated_at"`}func (c *ConfigDiseaseType) TableName() string {	return "config_disease_type"}type ConfigDiseaseTypeSlice []*ConfigDiseaseTypefunc (c ConfigDiseaseTypeSlice) ToPB(userModel *UserModel) []*pasturePb.SearchBaseConfigList {	res := make([]*pasturePb.SearchBaseConfigList, len(c))	for i, d := range c {		name, _ := userModel.LanguageContent.Localize(&i18n.LocalizeConfig{			MessageID: d.I18nFieldTag,		})		res[i] = &pasturePb.SearchBaseConfigList{			Id:        int32(d.Id),			Name:      name,			Remarks:   d.Remarks,			IsShow:    d.IsShow,			CreatedAt: int32(d.CreatedAt),			UpdatedAt: int32(d.UpdatedAt),		}	}	return res}func (c ConfigDiseaseTypeSlice) ToPB2(userModel *UserModel, diseaseList []*Disease) []*pasturePb.ConfigOptionsList {	res := make([]*pasturePb.ConfigOptionsList, len(c))	for i, d := range c {		children := make([]*pasturePb.ConfigOptionsList, 0)		if len(diseaseList) > 0 {			for _, v := range diseaseList {				if int64(v.DiseaseType) != d.Id {					continue				}				children = append(children, &pasturePb.ConfigOptionsList{					Value:    int32(v.Id),					Label:    v.Name,					Disabled: true,				})			}		}		label, _ := userModel.LanguageContent.Localize(&i18n.LocalizeConfig{			MessageID: d.I18nFieldTag,		})		res[i] = &pasturePb.ConfigOptionsList{			Value:    int32(d.Id),			Label:    label,			Disabled: true,			Children: children,		}	}	return res}func (c ConfigDiseaseTypeSlice) ToPB3(userModel *UserModel) []*pasturePb.ConfigOptionsList {	res := make([]*pasturePb.ConfigOptionsList, 0)	for _, v := range c {		label, _ := userModel.LanguageContent.Localize(&i18n.LocalizeConfig{			MessageID: v.I18nFieldTag,		})		res = append(res, &pasturePb.ConfigOptionsList{			Value:    int32(v.Kind),			Label:    label,			Disabled: true,		})	}	return res}
 |