增加定时同步组织架构

This commit is contained in:
2026-01-15 19:24:52 +08:00
parent 4a51ec89cc
commit 723c7817b6
17 changed files with 240 additions and 132 deletions

View File

@@ -1,8 +1,8 @@
from datetime import datetime, timedelta
from wecom.exceptions.general import SDKException
from wecom.schemas.token import AccessTokenInfo, AccessTokenParams
from wecom.utils.requests import HttpxRequest
from service.wecom.exceptions.general import SDKException
from service.wecom.schemas.token import AccessTokenInfo, AccessTokenParams
from service.wecom.utils.requests import HttpxRequest
BASE_URL: str = "https://qyapi.weixin.qq.com/cgi-bin"

View File

@@ -1,13 +1,14 @@
from wecom.exceptions.general import SDKException
from wecom.modules.base import WecomBaseClient
from wecom.schemas.departments import (
from service.wecom.exceptions.general import SDKException
from service.wecom.modules.base import WecomBaseClient
from service.wecom.schemas.departments import (
CreateDepartmentInfo,
CreateDepartmentParams,
DepartmentInfo,
DepartmentInfoItem,
UpdateDepartmentInfo,
UpdateDepartmentParams,
)
from wecom.utils.requests import HttpxRequest
from service.wecom.utils.requests import HttpxRequest
class WecomDepartmentClient(WecomBaseClient):
@@ -63,7 +64,7 @@ class WecomDepartmentClient(WecomBaseClient):
else:
raise SDKException(resp.errcode, resp.errmsg)
async def get_departments(self, id: int = None) -> list[DepartmentInfo]:
async def get_departments(self, id: int = None) -> list[DepartmentInfoItem]:
"""
获取部门列表
@param id: 部门id。获取指定部门及其下的子部门。

View File

@@ -1,14 +1,14 @@
from typing import Literal
from wecom.exceptions.general import SDKException
from wecom.modules.base import WecomBaseClient
from wecom.schemas.message import (
from service.wecom.exceptions.general import SDKException
from service.wecom.modules.base import WecomBaseClient
from service.wecom.schemas.message import (
MessageParams,
RecallMessageInfo,
RecallMessageParams,
SendMessageInfo,
)
from wecom.utils.requests import HttpxRequest
from service.wecom.utils.requests import HttpxRequest
class WecomMessageClient(WecomBaseClient):

View File

@@ -1,7 +1,7 @@
from wecom.modules.base import WecomBaseClient
from wecom.modules.department import WecomDepartmentClient
from wecom.modules.message import WecomMessageClient
from wecom.modules.users import WecomUsersClient
from service.wecom.modules.base import WecomBaseClient
from service.wecom.modules.department import WecomDepartmentClient
from service.wecom.modules.message import WecomMessageClient
from service.wecom.modules.users import WecomUsersClient
class Wecom(

View File

@@ -1,8 +1,13 @@
from wecom.exceptions.general import SDKException
from wecom.modules.base import WecomBaseClient
from wecom.schemas.departments import DepartmentInfo
from wecom.schemas.users import DepartmentUserDetailInfo, DepartmentUserInfo, UserInfo
from wecom.utils.requests import HttpxRequest
from service.wecom.exceptions.general import SDKException
from service.wecom.modules.base import WecomBaseClient
from service.wecom.schemas.departments import DepartmentInfo
from service.wecom.schemas.users import (
DepartmentUserDetailInfo,
DepartmentUserInfo,
UserInfo,
UserSimpleInfo,
)
from service.wecom.utils.requests import HttpxRequest
class WecomUsersClient(WecomBaseClient):
@@ -45,7 +50,7 @@ class WecomUsersClient(WecomBaseClient):
else:
raise SDKException(resp.errcode, resp.errmsg)
async def get_user_in_department(self, department_id: int) -> dict:
async def get_user_in_department(self, department_id: int) -> list[UserSimpleInfo]:
"""
读取部门成员简要信息
@param department_id: 获取的部门id
@@ -61,7 +66,7 @@ class WecomUsersClient(WecomBaseClient):
resp = DepartmentUserInfo(**await HttpxRequest.get(url=url, params=params))
if resp.errcode == 0:
return resp.model_dump(exclude={"errcode", "errmsg"})
return resp.userlist
else:
raise SDKException(resp.errcode, resp.errmsg)