Files
sixGuoDjango/wechat_wecom_企业微信管理/客户管理/客户管理接口.py
T

45 lines
2.7 KiB
Python
Raw Normal View History

2026-08-02 14:07:04 +08:00
import requests
from rest_framework import status
from rest_framework.decorators import action
from rest_framework.request import Request
from rest_framework.response import Response
from rest_framework.viewsets import ViewSet
from sixGuoDjango import BaseResponse, ResData
from wechat_token.token工具包 import sixToken
from wechat_项目工具包.企业微信工具包.客户管理 import wecom客户好友管理
class 客户管理接口ViewSets(ViewSet):
@action(detail=False, methods=["post"], url_path="获取当前企微员工所有添加的客户列表")
def 获取当前企微员工所有添加的客户列表(self, request: Request):
""""""
get_data = wecom客户好友管理().获取客户列表(userid="YuanBao1975")
httpResData = BaseResponse(resData=ResData(listData=[""], dictData=get_data), ).model_dump()
return Response(data=httpResData, status=status.HTTP_200_OK)
@action(detail=False, methods=["post"], url_path="获取客户详情")
def 获取客户详情(self, request: Request):
"""通过 external_userid 获取用户的详情,最主要的就是拿到用户的 unionid """
self_user_unionid = request.data.get("self_user_unionid", None)
self_mini_openid = request.data.get("self_mini_openid", None)
external_userid = request.data.get("external_userid", "wmj4zANAAAGlCZ2zNRhu1qzEMSBF0a9g")
wecom_token = sixToken.get_wecom_token()
uri = "https://qyapi.weixin.qq.com/cgi-bin/externalcontact/get"
data = requests.get(url=uri, params={"access_token": wecom_token, "external_userid": external_userid})
print("\n🍎 🍏 🍊 🍎 🍏 🍊 🍎 🍏 🍊 🍎 🍏 🍊 🍎 🍏 \n", data.json())
httpResData = BaseResponse(resData=ResData(listData=[""], dictData=data.json()), ).model_dump()
return Response(data=httpResData, status=status.HTTP_200_OK)
@action(detail=False, methods=["post"], url_path="批量获取客户详情并存储到数据库")
def 批量获取客户详情并存储到数据库(self, request: Request):
""""""
state企微员工创建时添加的唯一值 = request.data.get("state企微员工创建时添加的唯一值", None)
userid企微员工账号ID = request.data.get("userid企微员工账号ID", None)
wecom客户好友管理().批量获取客户详情并存储到数据库(state企微员工创建时添加的唯一值=state企微员工创建时添加的唯一值, userid企微员工账号ID=userid企微员工账号ID)
httpResData = BaseResponse(resData=ResData(listData=[""], dictData={"demo": "xiaozizi"}), ).model_dump()
return Response(data=httpResData, status=status.HTTP_200_OK)