优化工单模块,增加企微模块

This commit is contained in:
mgw
2024-07-10 15:58:47 +08:00
parent e8512b23e4
commit 6b140fe6dd
134 changed files with 12830 additions and 2 deletions

View File

@@ -0,0 +1,160 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import, unicode_literals
from optionaldict import optionaldict
from wechatpy.client.api.base import BaseWeChatAPI
class WeChatUser(BaseWeChatAPI):
def create(self, user_id, name, department=None, position=None,
mobile=None, gender=0, tel=None, email=None,
weixin_id=None, extattr=None, avatar_mediaid=None, to_invite=True):
"""
创建成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
user_data = optionaldict()
user_data['userid'] = user_id
user_data['name'] = name
user_data['gender'] = gender
user_data['department'] = department
user_data['position'] = position
user_data['mobile'] = mobile
user_data['tel'] = tel
user_data['email'] = email
user_data['weixinid'] = weixin_id
user_data['extattr'] = extattr
user_data['avatar_mediaid'] = avatar_mediaid
user_data['to_invite'] = to_invite
return self._post(
'user/create',
data=user_data
)
def update(self, user_id, name=None, department=None, position=None,
mobile=None, gender=None, tel=None, email=None,
weixin_id=None, enable=None, extattr=None, avatar_mediaid=None):
"""
更新成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
user_data = optionaldict()
user_data['userid'] = user_id
user_data['name'] = name
user_data['gender'] = gender
user_data['department'] = department
user_data['position'] = position
user_data['mobile'] = mobile
user_data['tel'] = tel
user_data['email'] = email
user_data['weixinid'] = weixin_id
user_data['extattr'] = extattr
user_data['enable'] = enable
user_data['avatar_mediaid'] = avatar_mediaid
return self._post(
'user/update',
data=user_data
)
def delete(self, user_id):
"""
删除成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
return self._get(
'user/delete',
params={
'userid': user_id
}
)
def get(self, user_id):
"""
获取成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
return self._get(
'user/get',
params={
'userid': user_id
}
)
def verify(self, user_id):
return self._get(
'user/authsucc',
params={
'userid': user_id
}
)
def get_info(self, agent_id, code):
return self._get(
'user/getuserinfo',
params={
'agentid': agent_id,
'code': code
}
)
def batch_delete(self, user_ids):
"""
批量删除成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
return self._post(
'user/batchdelete',
data={
'useridlist': user_ids
}
)
def list(self, department_id, fetch_child=False, status=0):
"""
批量获取部门成员
详情请参考 http://qydev.weixin.qq.com/wiki/index.php?title=管理成员
"""
res = self._get(
'user/list',
params={
'department_id': department_id,
'fetch_child': 1 if fetch_child else 0,
'status': status
}
)
return res['userlist']
def convert_to_openid(self, user_id, agent_id=None):
"""
user_id 转成 openid
详情请参考
http://qydev.weixin.qq.com/wiki/index.php?title=Userid%E4%B8%8Eopenid%E4%BA%92%E6%8D%A2%E6%8E%A5%E5%8F%A3
:param user_id: 企业号内的成员 ID
:param agent_id: 可选需要发送红包的应用ID若只是使用微信支付和企业转账则无需该参数
:return: 返回的 JSON 数据包
"""
data = optionaldict()
data['userid'] = user_id
data['agentid'] = agent_id
return self._post('user/convert_to_openid', data=data)
def convert_to_user_id(self, openid):
"""
openid 转成 user_id
详情请参考
http://qydev.weixin.qq.com/wiki/index.php?title=Userid%E4%B8%8Eopenid%E4%BA%92%E6%8D%A2%E6%8E%A5%E5%8F%A3
:param openid: 在使用微信支付、微信红包和企业转账之后返回结果的openid
:return: 该 openid 在企业号中对应的成员 user_id
"""
res = self._post(
'user/convert_to_userid',
data={'openid': openid}
)
return res['userid']