fix: 修复清理重复文件功能会把非当前管理员的文件数据库记录全部删除的问题

fix: 修复清理重复文件功能会把非当前管理员的文件数据库记录全部删除的问题
This commit is contained in:
邹景立 2025-03-11 19:43:25 +08:00 committed by GitHub
commit 71c66ca7fe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -108,10 +108,10 @@ class File extends Controller
*/
public function distinct()
{
$map = ['uuid' => AdminService::getUserId()];
$map = ['issafe' => 0, 'uuid' => AdminService::getUserId()];
$db1 = SystemFile::mk()->fieldRaw('max(id) id')->where($map)->group('type,xkey');
$db2 = $this->app->db->table($db1->buildSql())->alias('dt')->field('id');
SystemFile::mk()->whereRaw("id not in {$db2->buildSql()}")->delete();
SystemFile::mk()->where($map)->whereRaw("id not in {$db2->buildSql()}")->delete();
SystemFile::mk()->where($map)->where(['status' => 1])->delete();
$this->success('清理重复文件成功!');
}