From f6035de54819946d2b6f269ac62d5498f8732d38 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Sat, 11 Dec 2021 23:30:37 +0800 Subject: [PATCH] fix file share empty user --- app/Http/Controllers/Api/FileController.php | 54 +++++++++++---------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/app/Http/Controllers/Api/FileController.php b/app/Http/Controllers/Api/FileController.php index eeccfc86..9a59f5f8 100755 --- a/app/Http/Controllers/Api/FileController.php +++ b/app/Http/Controllers/Api/FileController.php @@ -542,34 +542,36 @@ class FileController extends AbstractController $message = '取消成功'; } else { // 设置共享 - if (!in_array($share, [1, 2])) { - return Base::retError('请选择共享对象'); - } - if ($share == 1) { - $user->isAdmin(); + switch ($share) { + case 1: + $user->isAdmin(); + break; + + case 2: + $array = []; + if (is_array($userids)) { + foreach ($userids as $userid) { + if (!intval($userid)) continue; + if (!User::whereUserid($userid)->exists()) continue; + FileUser::updateInsert([ + 'file_id' => $file->id, + 'userid' => $userid, + ]); + $array[] = $userid; + } + } + if (empty($array)) { + return Base::retError('请选择共享成员'); + } + $builder = FileUser::whereFileId($file->id)->whereNotIn('userid', $array); + $uids = (clone $builder)->pluck('userid')->toArray(); + $builder->delete(); + break; + + default: + return Base::retError('请选择共享对象'); } $file->setShare($share); - if ($share == 2) { - $array = []; - if (is_array($userids)) { - foreach ($userids as $userid) { - if (!intval($userid)) continue; - if (!User::whereUserid($userid)->exists()) continue; - FileUser::updateInsert([ - 'file_id' => $file->id, - 'userid' => $userid, - ]); - $array[] = $userid; - } - } - if (empty($array)) { - $builder = FileUser::whereFileId($file->id); - } else { - $builder = FileUser::whereFileId($file->id)->whereNotIn('userid', $array); - } - $uids = (clone $builder)->pluck('userid')->toArray(); - $builder->delete(); - } $message = '设置成功'; } //