fix: fix staticcheck errors - errors.Is parameter order and deprecated ioutil

This commit is contained in:
2026-04-19 23:43:33 +08:00
parent 35e37a8142
commit 1685aa4428
11 changed files with 40 additions and 40 deletions
+1 -1
View File
@@ -385,7 +385,7 @@ func (api AccountApi) AccessTokenGetEndpoint(c echo.Context) error {
account, _ := GetCurrentAccount(c) account, _ := GetCurrentAccount(c)
accessTokens, err := repository.AccessTokenRepository.FindByUserId(context.TODO(), account.ID) accessTokens, err := repository.AccessTokenRepository.FindByUserId(context.TODO(), account.ID)
if err != nil { if err != nil {
if errors.Is(gorm.ErrRecordNotFound, err) { if errors.Is(err, gorm.ErrRecordNotFound) {
accessTokens = []model.AccessToken{} accessTokens = []model.AccessToken{}
} else { } else {
return err return err
+1 -1
View File
@@ -16,7 +16,7 @@ import (
type BackupApi struct{} type BackupApi struct{}
func (api BackupApi) BackupExportEndpoint(c echo.Context) error { func (api BackupApi) BackupExportEndpoint(c echo.Context) error {
err, backup := service.BackupService.Export() backup, err := service.BackupService.Export()
if err != nil { if err != nil {
return err return err
} }
+1 -1
View File
@@ -429,7 +429,7 @@ func (api SessionApi) SessionLsEndpoint(c echo.Context) error {
return Success(c, files) return Success(c, files)
} else if "rdp" == s.Protocol { } else if "rdp" == s.Protocol {
storageId := s.StorageId storageId := s.StorageId
err, files := service.StorageService.StorageLs(remoteDir, storageId) files, err := service.StorageService.StorageLs(remoteDir, storageId)
if err != nil { if err != nil {
return err return err
} }
+1 -1
View File
@@ -163,7 +163,7 @@ func (api StorageApi) StorageLsEndpoint(c echo.Context) error {
return err return err
} }
remoteDir := c.FormValue("dir") remoteDir := c.FormValue("dir")
err, files := service.StorageService.StorageLs(remoteDir, storageId) files, err := service.StorageService.StorageLs(remoteDir, storageId)
if err != nil { if err != nil {
return err return err
} }
+1 -4
View File
@@ -120,10 +120,7 @@ func (api WorkCommandApi) CommandGetEndpoint(c echo.Context) (err error) {
func (api WorkCommandApi) checkPermission(c echo.Context, commandId string) bool { func (api WorkCommandApi) checkPermission(c echo.Context, commandId string) bool {
command, err := repository.CommandRepository.FindById(context.Background(), commandId) command, err := repository.CommandRepository.FindById(context.Background(), commandId)
if err != nil { if err != nil {
if errors.Is(gorm.ErrRecordNotFound, err) { return errors.Is(err, gorm.ErrRecordNotFound)
return true
}
return false
} }
account, _ := api.GetCurrentAccount(c) account, _ := api.GetCurrentAccount(c)
userId := account.ID userId := account.ID
+1 -1
View File
@@ -107,7 +107,7 @@ func (s authorisedService) GetAuthorised(userId, assetId string) (item *model.Au
id := utils.Sign([]string{assetId, userId, ""}) id := utils.Sign([]string{assetId, userId, ""})
authorised, err := repository.AuthorisedRepository.FindById(context.Background(), id) authorised, err := repository.AuthorisedRepository.FindById(context.Background(), id)
if err != nil { if err != nil {
if errors.Is(gorm.ErrRecordNotFound, err) { if errors.Is(err, gorm.ErrRecordNotFound) {
groupIds, err := repository.UserGroupMemberRepository.FindUserGroupIdsByUserId(context.Background(), userId) groupIds, err := repository.UserGroupMemberRepository.FindUserGroupIdsByUserId(context.Background(), userId)
if err != nil { if err != nil {
return nil, err return nil, err
+17 -17
View File
@@ -25,24 +25,24 @@ type backupService struct {
baseService baseService
} }
func (service backupService) Export() (error, *dto.Backup) { func (service backupService) Export() (*dto.Backup, error) {
ctx := context.TODO() ctx := context.TODO()
users, err := repository.UserRepository.FindAll(ctx) users, err := repository.UserRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
for i := range users { for i := range users {
users[i].Password = "" users[i].Password = ""
} }
userGroups, err := repository.UserGroupRepository.FindAll(ctx) userGroups, err := repository.UserGroupRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
if len(userGroups) > 0 { if len(userGroups) > 0 {
for i := range userGroups { for i := range userGroups {
members, err := repository.UserGroupMemberRepository.FindUserIdsByUserGroupId(ctx, userGroups[i].ID) members, err := repository.UserGroupMemberRepository.FindUserIdsByUserGroupId(ctx, userGroups[i].ID)
if err != nil { if err != nil {
return err, nil return nil, err
} }
userGroups[i].Members = members userGroups[i].Members = members
} }
@@ -50,54 +50,54 @@ func (service backupService) Export() (error, *dto.Backup) {
storages, err := repository.StorageRepository.FindAll(ctx) storages, err := repository.StorageRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
strategies, err := repository.StrategyRepository.FindAll(ctx) strategies, err := repository.StrategyRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
jobs, err := repository.JobRepository.FindAll(ctx) jobs, err := repository.JobRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
accessSecurities, err := repository.SecurityRepository.FindAll(ctx) accessSecurities, err := repository.SecurityRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
accessGateways, err := repository.GatewayRepository.FindAll(ctx) accessGateways, err := repository.GatewayRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
commands, err := repository.CommandRepository.FindAll(ctx) commands, err := repository.CommandRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
credentials, err := repository.CredentialRepository.FindAll(ctx) credentials, err := repository.CredentialRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
if len(credentials) > 0 { if len(credentials) > 0 {
for i := range credentials { for i := range credentials {
if err := CredentialService.Decrypt(&credentials[i], config.GlobalCfg.EncryptionPassword); err != nil { if err := CredentialService.Decrypt(&credentials[i], config.GlobalCfg.EncryptionPassword); err != nil {
return err, nil return nil, err
} }
} }
} }
assets, err := repository.AssetRepository.FindAll(ctx) assets, err := repository.AssetRepository.FindAll(ctx)
if err != nil { if err != nil {
return err, nil return nil, err
} }
var assetMaps = make([]map[string]interface{}, 0) var assetMaps = make([]map[string]interface{}, 0)
if len(assets) > 0 { if len(assets) > 0 {
for i := range assets { for i := range assets {
asset := assets[i] asset := assets[i]
if err := AssetService.Decrypt(&asset, config.GlobalCfg.EncryptionPassword); err != nil { if err := AssetService.Decrypt(&asset, config.GlobalCfg.EncryptionPassword); err != nil {
return err, nil return nil, err
} }
attributeMap, err := repository.AssetRepository.FindAssetAttrMapByAssetId(ctx, asset.ID) attributeMap, err := repository.AssetRepository.FindAssetAttrMapByAssetId(ctx, asset.ID)
if err != nil { if err != nil {
return err, nil return nil, err
} }
itemMap := utils.StructToMap(asset) itemMap := utils.StructToMap(asset)
for key := range attributeMap { for key := range attributeMap {
@@ -120,7 +120,7 @@ func (service backupService) Export() (error, *dto.Backup) {
Credentials: credentials, Credentials: credentials,
Assets: assetMaps, Assets: assetMaps,
} }
return nil, &backup return &backup, nil
} }
func (service backupService) Import(backup *dto.Backup) error { func (service backupService) Import(backup *dto.Backup) error {
@@ -162,7 +162,7 @@ func (service backupService) Import(backup *dto.Backup) error {
userGroup, err := UserGroupService.Create(ctx, item.Name, members) userGroup, err := UserGroupService.Create(ctx, item.Name, members)
if err != nil { if err != nil {
if errors.Is(nt.ErrNameAlreadyUsed, err) { if errors.Is(err, nt.ErrNameAlreadyUsed) {
// 删除名称重复的用户组 // 删除名称重复的用户组
delete(userGroupIdMapping, oldId) delete(userGroupIdMapping, oldId)
continue continue
+1 -1
View File
@@ -134,7 +134,7 @@ func (r ShellJob) executeShellByAssets(assets []model.Asset) {
var msg string var msg string
var execRes ExecScriptResult var execRes ExecScriptResult
if err != nil { if err != nil {
if errors.Is(gorm.ErrRecordNotFound, err) { if errors.Is(err, gorm.ErrRecordNotFound) {
msg = fmt.Sprintf("资产「%v」Shell执行失败,请检查资产所关联接入网关是否存在,耗时「%v」", asset.Name, elapsed) msg = fmt.Sprintf("资产「%v」Shell执行失败,请检查资产所关联接入网关是否存在,耗时「%v」", asset.Name, elapsed)
} else { } else {
msg = fmt.Sprintf("资产「%v」Shell执行失败,错误内容为:「%v」,耗时「%v」", asset.Name, err.Error(), elapsed) msg = fmt.Sprintf("资产「%v」Shell执行失败,错误内容为:「%v」,耗时「%v」", asset.Name, err.Error(), elapsed)
+1 -1
View File
@@ -262,7 +262,7 @@ func (service sessionService) Create(clientIp, assetId, mode string, user *model
if strategyId != "" { if strategyId != "" {
strategy, err := repository.StrategyRepository.FindById(context.TODO(), strategyId) strategy, err := repository.StrategyRepository.FindById(context.TODO(), strategyId)
if err != nil { if err != nil {
if !errors.Is(gorm.ErrRecordNotFound, err) { if !errors.Is(err, gorm.ErrRecordNotFound) {
return nil, err return nil, err
} }
} else { } else {
+13 -10
View File
@@ -6,7 +6,6 @@ import (
"errors" "errors"
"fmt" "fmt"
"io" "io"
"io/ioutil"
"mime/multipart" "mime/multipart"
"net/http" "net/http"
"os" "os"
@@ -128,21 +127,25 @@ type File struct {
} }
func (service storageService) Ls(drivePath, remoteDir string) ([]File, error) { func (service storageService) Ls(drivePath, remoteDir string) ([]File, error) {
fileInfos, err := ioutil.ReadDir(path.Join(drivePath, remoteDir)) fileInfos, err := os.ReadDir(path.Join(drivePath, remoteDir))
if err != nil { if err != nil {
return nil, err return nil, err
} }
var files = make([]File, 0) var files = make([]File, 0)
for i := range fileInfos { for i := range fileInfos {
info, err := fileInfos[i].Info()
if err != nil {
continue
}
file := File{ file := File{
Name: fileInfos[i].Name(), Name: fileInfos[i].Name(),
Path: path.Join(remoteDir, fileInfos[i].Name()), Path: path.Join(remoteDir, fileInfos[i].Name()),
IsDir: fileInfos[i].IsDir(), IsDir: fileInfos[i].IsDir(),
Mode: fileInfos[i].Mode().String(), Mode: info.Mode().String(),
IsLink: fileInfos[i].Mode()&os.ModeSymlink == os.ModeSymlink, IsLink: info.Mode()&os.ModeSymlink == os.ModeSymlink,
ModTime: common.NewJsonTime(fileInfos[i].ModTime()), ModTime: common.NewJsonTime(info.ModTime()),
Size: fileInfos[i].Size(), Size: info.Size(),
} }
files = append(files, file) files = append(files, file)
@@ -264,16 +267,16 @@ func (service storageService) StorageDownload(c echo.Context, file, storageId st
return nil return nil
} }
func (service storageService) StorageLs(remoteDir, storageId string) (error, []File) { func (service storageService) StorageLs(remoteDir, storageId string) ([]File, error) {
drivePath := service.GetBaseDrivePath() drivePath := service.GetBaseDrivePath()
if strings.Contains(remoteDir, "../") { if strings.Contains(remoteDir, "../") {
return errors.New("非法请求 :("), nil return nil, errors.New("非法请求 :(")
} }
files, err := service.Ls(path.Join(drivePath, storageId), remoteDir) files, err := service.Ls(path.Join(drivePath, storageId), remoteDir)
if err != nil { if err != nil {
return err, nil return nil, err
} }
return nil, files return files, nil
} }
func (service storageService) StorageMkDir(remoteDir, storageId string) error { func (service storageService) StorageMkDir(remoteDir, storageId string) error {
+2 -2
View File
@@ -176,7 +176,7 @@ func (service userService) OnEvicted(token string, value interface{}) {
if strings.HasPrefix(token, "forever") { if strings.HasPrefix(token, "forever") {
} else { } else {
err := service.LogoutByToken(token) err := service.LogoutByToken(token)
if err != nil && !errors.Is(gorm.ErrRecordNotFound, err) { if err != nil && !errors.Is(err, gorm.ErrRecordNotFound) {
} }
} }
} }
@@ -207,7 +207,7 @@ func (service userService) ReloadToken() error {
token := loginLog.ID token := loginLog.ID
user, err := repository.UserRepository.FindByUsername(context.TODO(), loginLog.Username) user, err := repository.UserRepository.FindByUsername(context.TODO(), loginLog.Username)
if err != nil { if err != nil {
if errors.Is(gorm.ErrRecordNotFound, err) { if errors.Is(err, gorm.ErrRecordNotFound) {
_ = repository.LoginLogRepository.DeleteById(context.TODO(), token) _ = repository.LoginLogRepository.DeleteById(context.TODO(), token)
} }
continue continue