mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2026-10-26 16:00:14 +00:00
50 lines
1.4 KiB
Go
50 lines
1.4 KiB
Go
package service
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"github.com/1Panel-dev/1Panel/agent/app/dto"
|
|
"github.com/1Panel-dev/1Panel/agent/app/model"
|
|
"github.com/1Panel-dev/1Panel/agent/buserr"
|
|
)
|
|
|
|
func (u *DashboardService) ListQuickDirectories() ([]model.QuickDirectory, error) {
|
|
return launcherRepo.ListQuickDirectories()
|
|
}
|
|
|
|
func quickDirectoryValues(req dto.QuickDirectoryCreate) (model.QuickDirectory, error) {
|
|
item := model.QuickDirectory{Path: req.Path, Alias: strings.TrimSpace(req.Alias)}
|
|
if strings.TrimSpace(item.Path) == "" {
|
|
return item, buserr.WithDetail("ErrInvalidParams", "path is required", nil)
|
|
}
|
|
return item, nil
|
|
}
|
|
|
|
func (u *DashboardService) CreateQuickDirectory(req dto.QuickDirectoryCreate) (*model.QuickDirectory, error) {
|
|
item, err := quickDirectoryValues(req)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
if err := launcherRepo.CreateQuickDirectory(&item); err != nil {
|
|
return nil, err
|
|
}
|
|
return &item, nil
|
|
}
|
|
|
|
func (u *DashboardService) UpdateQuickDirectory(req dto.QuickDirectoryUpdate) (*model.QuickDirectory, error) {
|
|
item, err := quickDirectoryValues(req.QuickDirectoryCreate)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
item.ID = req.ID
|
|
item.Legacy = req.Legacy
|
|
if err := launcherRepo.UpdateQuickDirectory(&item); err != nil {
|
|
return nil, err
|
|
}
|
|
return &item, nil
|
|
}
|
|
|
|
func (u *DashboardService) DeleteQuickDirectory(req dto.QuickDirectoryDelete) error {
|
|
return launcherRepo.DeleteQuickDirectory(req.ID, req.Legacy)
|
|
}
|