(req dto.SearchWithPage)
| 46 | } |
| 47 | |
| 48 | func (u *AIToolService) Search(req dto.SearchWithPage) (int64, []dto.OllamaModelInfo, error) { |
| 49 | var options []repo.DBOption |
| 50 | if len(req.Info) != 0 { |
| 51 | options = append(options, repo.WithByLikeName(req.Info)) |
| 52 | } |
| 53 | total, list, err := aiRepo.Page(req.Page, req.PageSize, options...) |
| 54 | if err != nil { |
| 55 | return 0, nil, err |
| 56 | } |
| 57 | var dtoLists []dto.OllamaModelInfo |
| 58 | for _, itemModel := range list { |
| 59 | var item dto.OllamaModelInfo |
| 60 | if err := copier.Copy(&item, &itemModel); err != nil { |
| 61 | return 0, nil, buserr.WithDetail("ErrStructTransform", err.Error(), nil) |
| 62 | } |
| 63 | taskModel, _ := taskRepo.GetFirst(taskRepo.WithResourceID(item.ID), repo.WithByType(task.TaskScopeAI)) |
| 64 | if len(taskModel.ID) != 0 { |
| 65 | item.LogFileExist = true |
| 66 | } |
| 67 | dtoLists = append(dtoLists, item) |
| 68 | } |
| 69 | return total, dtoLists, err |
| 70 | } |
| 71 | |
| 72 | func (u *AIToolService) LoadDetail(name string) (string, error) { |
| 73 | if cmd.CheckIllegal(name) { |
nothing calls this directly
no test coverage detected