package service import ( "xps/datamodels" "xps/datasource" "xps/repositories" "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 *repositories.ModelRepo } func NewModelService() ModelService { return &modelService{ repo: repositories.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(m *datamodels.Model) error { m.ModelId = NewID() return s.repo.Create(m) } func (s *modelService) Update(m *datamodels.Model) error { return s.repo.Update(m) } func (s *modelService) Delete(m map[string]interface{}) error { return s.repo.Delete(m) }