From 077528aa47b02b339df8390988c83f007eef62b4 Mon Sep 17 00:00:00 2001 From: WeidiDeng Date: Thu, 18 Nov 2021 15:31:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dwebdav=E4=B8=8D=E8=83=BD?= =?UTF-8?q?=E5=90=8C=E6=97=B6=E7=A7=BB=E5=8A=A8=E4=BD=8D=E7=BD=AE=E5=92=8C?= =?UTF-8?q?=E9=87=8D=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/webdav/file.go | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/pkg/webdav/file.go b/pkg/webdav/file.go index 2858776..9957f65 100644 --- a/pkg/webdav/file.go +++ b/pkg/webdav/file.go @@ -38,23 +38,26 @@ func moveFiles(ctx context.Context, fs *filesystem.FileSystem, src FileInfo, dst fileIDs = []uint{src.(*model.File).ID} } - // 判断是否为重命名 - if src.GetPosition() == path.Dir(dst) { - err = fs.Rename( - ctx, - folderIDs, - fileIDs, - path.Base(dst), - ) - } else { - err = fs.Move( - ctx, - folderIDs, - fileIDs, - src.GetPosition(), - path.Dir(dst), - ) - } + // 判断是否需要移动 + if src.GetPosition() != path.Dir(dst) { + err = fs.Move( + ctx, + folderIDs, + fileIDs, + src.GetPosition(), + path.Dir(dst), + ) + } + + // 判断是否需要重命名 + if err == nil && src.GetName() != path.Base(dst) { + err = fs.Rename( + ctx, + folderIDs, + fileIDs, + path.Base(dst), + ) + } if err != nil { return http.StatusInternalServerError, err