正在显示
1 个修改的文件
包含
13 行增加
和
5 行删除
@@ -32,10 +32,10 @@ class WxPushHelper: | @@ -32,10 +32,10 @@ class WxPushHelper: | ||
32 | self.api = CorpApi(Conf['CORP_ID'], Conf['APP_SECRET']) | 32 | self.api = CorpApi(Conf['CORP_ID'], Conf['APP_SECRET']) |
33 | 33 | ||
34 | def get_corp_user_id_by_code(self, code): | 34 | def get_corp_user_id_by_code(self, code): |
35 | - return self.api.httpCall(CORP_API_TYPE['GET_USER_INFO_BY_CODE'], code) | 35 | + return self.api.httpCall(CORP_API_TYPE['GET_USER_INFO_BY_CODE'], {"CODE": code}) |
36 | 36 | ||
37 | def get_user_info_by_corp_user_id(self, corp_user_id): | 37 | def get_user_info_by_corp_user_id(self, corp_user_id): |
38 | - return self.api.httpCall(CORP_API_TYPE['USER_GET'], corp_user_id) | 38 | + return self.api.httpCall(CORP_API_TYPE['USER_GET'], {'userid': corp_user_id}) |
39 | 39 | ||
40 | def push_text(self, user_wx_id, content): | 40 | def push_text(self, user_wx_id, content): |
41 | data = { | 41 | data = { |
@@ -75,7 +75,7 @@ class WxUserlogin(APIView): | @@ -75,7 +75,7 @@ class WxUserlogin(APIView): | ||
75 | def _get_user_info(code): | 75 | def _get_user_info(code): |
76 | client = WxPushHelper() | 76 | client = WxPushHelper() |
77 | corp_user = client.get_corp_user_id_by_code(code) | 77 | corp_user = client.get_corp_user_id_by_code(code) |
78 | - if "errcode" not in corp_user and "UserId" in corp_user: | 78 | + if "errcode" in corp_user and corp_user['errcode'] == 0 and "UserId" in corp_user: |
79 | return client.get_user_info_by_corp_user_id(corp_user['UserId']) | 79 | return client.get_user_info_by_corp_user_id(corp_user['UserId']) |
80 | else: | 80 | else: |
81 | raise RuntimeError(u"获取企业微信用户信息错误") | 81 | raise RuntimeError(u"获取企业微信用户信息错误") |
@@ -85,11 +85,19 @@ class WxUserlogin(APIView): | @@ -85,11 +85,19 @@ class WxUserlogin(APIView): | ||
85 | if not code: | 85 | if not code: |
86 | raise PermissionDenied | 86 | raise PermissionDenied |
87 | else: | 87 | else: |
88 | + # um = UserManager() | ||
88 | user = User.objects.filter(wx_token=code).first() | 89 | user = User.objects.filter(wx_token=code).first() |
89 | if not user: | 90 | if not user: |
90 | info = self._get_user_info(code) | 91 | info = self._get_user_info(code) |
91 | - user = UserManager.create_user( | ||
92 | - info['name'], "123456", info['email'], {"wx_token": info['userid']}) | 92 | + print(info) |
93 | + user = User.objects.create( | ||
94 | + username=info['name'], | ||
95 | + email=info['email'], | ||
96 | + wx_token=info['userid'], | ||
97 | + is_active=True | ||
98 | + ) | ||
99 | + user.set_password("123456") | ||
100 | + user.save() | ||
93 | # 获取token | 101 | # 获取token |
94 | token_obj = TokenObtainPairSerializer.get_token(user) | 102 | token_obj = TokenObtainPairSerializer.get_token(user) |
95 | return response({"access_token": str(token_obj.access_token)}) | 103 | return response({"access_token": str(token_obj.access_token)}) |
-
请 注册 或 登录 后发表评论