package model import ( "xps/datamodels" "xps/datasource" "xps/repositories/model" "xps/viewmodels" ) type ModelService interface { GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, error) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) GetById(modelId int64) (*viewmodels.ModelInfo, error) Create(d *datamodels.Model) error Update(d *datamodels.Model) error Delete(m map[string]interface{}) error } type modelService struct { repo *model.ModelRepo } func NewModelService() ModelService { return &modelService{ repo: model.NewModelRepo(datasource.InstanceMaster()), } } func (s *modelService) GetList(m map[string]interface{}) ([]viewmodels.ModelInfo, error) { return s.repo.GetList(m) } func (s *modelService) GetPage(m map[string]interface{}) (*viewmodels.PageResult, error) { return s.repo.GetPage(m) } func (s *modelService) GetById(modelId int64) (*viewmodels.ModelInfo, error) { return s.repo.GetById(modelId) } func (s *modelService) Create(Model *datamodels.Model) error { Model.ModelId = NewID() return s.repo.Create(Model) } func (s *modelService) Update(Model *datamodels.Model) error { return s.repo.Update(Model) } func (s *modelService) Delete(m map[string]interface{}) error { return s.repo.Delete(m) }