1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-04 16:31:13 +00:00

BigIntegerField

This commit is contained in:
skywalker
2021-04-07 12:00:33 +08:00
parent 7e3067643c
commit 1ab06f85db
6 changed files with 14 additions and 16 deletions

View File

@@ -33,10 +33,9 @@ from seahub.dingtalk.settings import ENABLE_DINGTALK, \
DINGTALK_DEPARTMENT_LIST_DEPARTMENT_URL, \
DINGTALK_DEPARTMENT_GET_DEPARTMENT_URL, \
DINGTALK_DEPARTMENT_GET_DEPARTMENT_USER_LIST_URL, \
DINGTALK_DEPARTMENT_USER_SIZE
DINGTALK_DEPARTMENT_USER_SIZE, DINGTALK_PROVIDER
DEPARTMENT_OWNER = 'system admin'
DINGTALK_PROVIDER = 'dingtalk'
logger = logging.getLogger(__name__)
@@ -301,7 +300,7 @@ class AdminDingtalkDepartmentsImport(APIView):
sub_department_resp_json = requests.get(DINGTALK_DEPARTMENT_LIST_DEPARTMENT_URL, params=data).json()
sub_department_list = sub_department_resp_json.get('department', [])
department_list = current_department_list + sub_department_list
department_list = sorted(department_list, key=lambda x:x['dept_id'])
department_list = sorted(department_list, key=lambda x:x['id'])
# get department user list
data = {
@@ -322,7 +321,7 @@ class AdminDingtalkDepartmentsImport(APIView):
# check department argument
new_group_name = department_obj.get('name')
department_obj_id = department_obj.get('id')
parent_department_id = department_obj.get('parentid')
parent_department_id = department_obj.get('parentid', 0)
if department_obj_id is None or not new_group_name or not validate_group_name(new_group_name):
failed_msg = self._api_department_failed_msg(
department_obj_id, new_group_name, '部门参数错误')
@@ -360,10 +359,9 @@ class AdminDingtalkDepartmentsImport(APIView):
ExternalDepartment.objects.create(
group_id=group_id,
parent_group_id=parent_group_id,
provider=DINGTALK_PROVIDER,
outer_id=department_obj_id,
outer_parent_id=parent_department_id,
provider=DINGTALK_PROVIDER,
)
department_map_to_group_dict[department_obj_id] = group_id

View File

@@ -351,7 +351,7 @@ class AdminWorkWeixinDepartmentsImport(APIView):
# check department argument
new_group_name = department_obj.get('name')
department_obj_id = department_obj.get('id')
parent_department_id = department_obj.get('parentid')
parent_department_id = department_obj.get('parentid', 0)
if department_obj_id is None or not new_group_name or not validate_group_name(new_group_name):
failed_msg = self._api_department_failed_msg(
department_obj_id, new_group_name, '部门参数错误')
@@ -389,10 +389,9 @@ class AdminWorkWeixinDepartmentsImport(APIView):
ExternalDepartment.objects.create(
group_id=group_id,
parent_group_id=parent_group_id,
provider=WORK_WEIXIN_PROVIDER,
outer_id=department_obj_id,
outer_parent_id=parent_department_id,
provider=WORK_WEIXIN_PROVIDER,
)
department_map_to_group_dict[department_obj_id] = group_id

View File

@@ -1,7 +1,6 @@
# Copyright (c) 2012-2016 Seafile Ltd.
import datetime
import hashlib
from seahub.group.utils import group_id_to_name
import urllib.request, urllib.parse, urllib.error
import logging
@@ -173,10 +172,9 @@ class ExternalDepartmentManager(models.Manager):
class ExternalDepartment(models.Model):
group_id = models.IntegerField(unique=True)
parent_group_id = models.IntegerField()
outer_id = models.IntegerField()
outer_parent_id = models.IntegerField()
provider = models.CharField(max_length=32)
outer_id = models.BigIntegerField()
outer_parent_id = models.BigIntegerField()
objects = ExternalDepartmentManager()

View File

@@ -28,3 +28,6 @@ DINGTALK_DEPARTMENT_USER_SIZE = 100
DINGTALK_MESSAGE_SEND_TO_CONVERSATION_URL = getattr(settings, 'DINGTALK_MESSAGE_SEND_TO_CONVERSATION_URL', 'https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2')
DINGTALK_GET_DETAILED_USER_INFO_URL = getattr(settings, 'DINGTALK_GET_DETAILED_USER_INFO_URL', 'https://oapi.dingtalk.com/user/get')
# constants
DINGTALK_PROVIDER = 'dingtalk'

View File

@@ -248,6 +248,7 @@ INSTALLED_APPS = [
'seahub.file_tags',
'seahub.related_files',
'seahub.work_weixin',
'seahub.dingtalk',
'seahub.file_participants',
'seahub.repo_api_tokens',
'seahub.abuse_reports',

View File

@@ -1286,10 +1286,9 @@ CREATE TABLE `repo_auto_delete` (
CREATE TABLE `external_department` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`group_id` int(11) NOT NULL,
`parent_group_id` int(11) NOT NULL,
`outer_id` int(11) NOT NULL,
`outer_parent_id` int(11) NOT NULL,
`provider` varchar(32) NOT NULL,
`outer_id` bigint(20) NOT NULL,
`outer_parent_id` bigint(20) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `group_id` (`group_id`),
UNIQUE KEY `external_department_provider_outer_id_8dns6vkw_uniq` (`provider`,`outer_id`)