package service import ( "aps_crm/model" "aps_crm/model/request" "aps_crm/pkg/ecode" ) type RepositoryService struct{} func (RepositoryService) AddRepository(repository *model.Repository) int { err := model.NewRepositorySearch().Create(repository) if err != nil { return ecode.RepositoryExist } return ecode.OK } func (RepositoryService) DeleteRepository(id int) int { _, err := model.NewRepositorySearch().SetId(id).Find() if err != nil { return ecode.RepositoryNotExist } err = model.NewRepositorySearch().SetId(id).Delete() if err != nil { return ecode.RepositoryNotExist } return ecode.OK } func (RepositoryService) GetRepositoryList() ([]*model.Repository, int) { list, err := model.NewRepositorySearch().FindAll() if err != nil { return nil, ecode.RepositoryListErr } return list, ecode.OK } func (RepositoryService) UpdateRepository(repositorys []*request.UpdateRepository) int { for _, v := range repositorys { // check repository exist _, err := model.NewRepositorySearch().SetId(v.Id).Find() if err != nil { return ecode.RepositoryNotExist } err = model.NewRepositorySearch().SetId(v.Id).Updates(map[string]interface{}{ "name": v.Name, }) if err != nil { return ecode.RepositorySetErr } } return ecode.OK } func (RepositoryService) GetRepositoryDetail(id int) (*model.Repository, int) { repository, err := model.NewRepositorySearch().SetId(id).Find() if err != nil { return nil, ecode.RepositoryNotExist } return repository, ecode.OK }