1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-05-12 09:55:53 +00:00

code optimize

This commit is contained in:
r350178982 2025-04-19 11:29:49 +08:00
parent fa700307a4
commit 4834edb703
3 changed files with 12 additions and 10 deletions
seahub
api2/endpoints/admin
utils

View File

@ -312,11 +312,11 @@ class AdminOrgUser(APIView):
orgs = ccnet_api.get_orgs_by_user(email)
if orgs:
org_id = orgs[0].org_id
seafile_db.delete_all_received_shares(email, org_id)
seafile_db.delete_all_my_shares(email, org_id)
seafile_db.delete_received_share_by_user(email, org_id)
seafile_db.delete_share_by_user(email, org_id)
else:
seafile_db.delete_all_received_shares(email)
seafile_db.delete_all_my_shares(email)
seafile_db.delete_received_share_by_user(email)
seafile_db.delete_share_by_user(email)
ExtraSharePermission.objects.filter(share_to=username).delete()
try:

View File

@ -1270,11 +1270,11 @@ class AdminUser(APIView):
orgs = ccnet_api.get_orgs_by_user(email)
if orgs:
org_id = orgs[0].org_id
seafile_db.delete_all_received_shares(email, org_id)
seafile_db.delete_all_my_shares(email, org_id)
seafile_db.delete_received_share_by_user(email, org_id)
seafile_db.delete_share_by_user(email, org_id)
else:
seafile_db.delete_all_received_shares(email)
seafile_db.delete_all_my_shares(email)
seafile_db.delete_received_share_by_user(email)
seafile_db.delete_share_by_user(email)
ExtraSharePermission.objects.filter(share_to=username).delete()
try:
is_active = to_python_boolean(is_active)

View File

@ -619,7 +619,8 @@ class SeafileDB:
wikis.append(wiki_info)
return wikis
def delete_all_received_shares(self, username, org_id=''):
def delete_received_share_by_user(self, username, org_id=''):
# Delete the share content shared to <username>
if org_id:
delete_share_sql = f"""
DELETE FROM `{self.db_name}`.`OrgSharedRepo` WHERE to_email=%s AND org_id=%s
@ -632,7 +633,8 @@ class SeafileDB:
with connection.cursor() as cursor:
cursor.execute(delete_share_sql, [username, org_id] if org_id else [username])
def delete_all_my_shares(self, username, org_id=''):
def delete_share_by_user(self, username, org_id=''):
# Delete the share content shared from <username>
if org_id:
delete_share_sql = f"""
DELETE FROM `{self.db_name}`.`OrgSharedRepo` WHERE from_email=%s AND org_id=%s