package backend import ( "kpt-pasture/model" pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow" "gitee.com/xuyiping_admin/pkg/logger/zaplog" "go.uber.org/zap" ) func (s *StoreEntry) LactEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { configLactList := make([]*model.ConfigLact, 0) pref := s.DB.Model(new(model.ConfigLact)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", 0) } else { pref = pref.Where("kind > ?", 0) } if err := pref.Order("kind ASC"). Find(&configLactList).Error; err != nil { zaplog.Error("LactEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigLactSlice(configLactList).ToPB(userModel) } func (s *StoreEntry) DiseaseAnalysisMethodEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigDiseaseAnalysisMethod, 0) pref := s.DB.Model(new(model.ConfigDiseaseAnalysisMethod)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.DiseaseAnalysisMethod_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.DiseaseAnalysisMethod_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("DiseaseAnalysisMethodEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigDiseaseAnalysisMethodSlice(dataList).ToPB(userModel) } func (s *StoreEntry) diseaseTypeEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigDiseaseType, 0) pref := s.DB.Model(new(model.ConfigDiseaseType)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", 0) } else { pref = pref.Where("kind > ?", 0) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("DiseaseAnalysisMethodEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigDiseaseTypeSlice(dataList).ToPB3(userModel) } func (s *StoreEntry) SingleFactorAnalysisMethodEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigSingleFactorAnalysisMethod, 0) pref := s.DB.Model(new(model.ConfigSingleFactorAnalysisMethod)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.DiseaseAnalysisMethod_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.DiseaseAnalysisMethod_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("SingleFactorAnalysisMethodEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigSingleFactorAnalysisMethodSlice(dataList).ToPB(userModel) } func (s *StoreEntry) LactIntervalSymbolEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigLactIntervalSymbol, 0) pref := s.DB.Model(new(model.ConfigLactIntervalSymbol)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.CompareSymbol_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.CompareSymbol_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("LactIntervalSymbolEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigLactIntervalSymbolSlice(dataList).ToPB(userModel) } func (s *StoreEntry) MultiFactorAnalysisMethodEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigMultiFactorAnalysisMethod, 0) pref := s.DB.Model(new(model.ConfigMultiFactorAnalysisMethod)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.CompareSymbol_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.CompareSymbol_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("LactIntervalSymbolEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigMultiFactorAnalysisMethodSlice(dataList).ToPB(userModel) } func (s *StoreEntry) SaleCowAnalysisMethodEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigSaleCowAnalysisMethod, 0) pref := s.DB.Model(new(model.ConfigSaleCowAnalysisMethod)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.CompareSymbol_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.CompareSymbol_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("LactIntervalSymbolEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigSaleCowAnalysisMethodSlice(dataList).ToPB(userModel) } func (s *StoreEntry) NeckRingIsBindEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigNeckRingIsBind, 0) pref := s.DB.Model(new(model.ConfigNeckRingStatus)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.NeckRingIsBind_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.NeckRingIsBind_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("NeckRingIsBindEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigNeckRingIsBindSlice(dataList).ToPB(userModel) } func (s *StoreEntry) NeckRingStatusEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigNeckRingStatus, 0) pref := s.DB.Model(new(model.ConfigNeckRingStatus)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.NeckRingStatus_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.NeckRingStatus_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("NeckRingStatusEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigNeckRingStatusSlice(dataList).ToPB(userModel) } func (s *StoreEntry) CalendarTypeEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigCalendarType, 0) pref := s.DB.Model(new(model.ConfigCalendarType)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.CalendarType_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.CalendarType_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("CalendarTypeEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigCalendarTypeSlice(dataList).ToPB(userModel) } func CalendarTypeEnumList(isAll string) []*pasturePb.ConfigOptionsList { configOptions := make([]*pasturePb.ConfigOptionsList, 0) if isAll == model.IsAllYes { configOptions = append(configOptions, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Invalid), Label: "全部", Disabled: true, }) } configOptions = append(configOptions, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Immunisation), Label: "免疫", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_PG), Label: "同期PG", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_RnGH), Label: "同期RnGH", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Pregnancy_Check), Label: "孕检", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Weaning), Label: "断奶", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Disease), Label: "疾病", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Mating), Label: "配种", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_Calving), Label: "产犊", Disabled: true, }, &pasturePb.ConfigOptionsList{ Value: int32(pasturePb.CalendarType_DryMilk), Label: "干奶", Disabled: true, }) return configOptions } func (s *StoreEntry) AbortionReasonsEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigAbortionReasons, 0) pref := s.DB.Model(new(model.ConfigAbortionReasons)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.AbortionReasons_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.AbortionReasons_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("AbortionReasonsEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigAbortionReasonsSlice(dataList).ToPB(userModel) } func (s *StoreEntry) CalvingAnalysisMethodEnumList(userModel *model.UserModel, isAll string) []*pasturePb.ConfigOptionsList { dataList := make([]*model.ConfigCalvingAnalysisMethod, 0) pref := s.DB.Model(new(model.ConfigCalvingAnalysisMethod)). Where("is_show =? ", pasturePb.IsShow_Ok). Where("pasture_id =? ", userModel.AppPasture.Id) if isAll == model.IsAllYes { pref = pref.Where("kind >= ?", pasturePb.CalvingAnalysisMethod_Invalid) } else { pref = pref.Where("kind > ?", pasturePb.CalvingAnalysisMethod_Invalid) } if err := pref.Order("kind ASC"). Find(&dataList).Error; err != nil { zaplog.Error("CalvingAnalysisMethodEnumList", zap.Any("err", err)) return make([]*pasturePb.ConfigOptionsList, 0) } return model.ConfigCalvingAnalysisMethodSlice(dataList).ToPB(userModel) }