@@ -57,7 +57,7 @@ class Command(CompatibilityBaseCommand): |
||
57 | 57 |
with transaction.atomic(): |
58 | 58 |
subscribe, unionid, openid = userinfo.get('subscribe', ''), userinfo.get('unionid', ''), userinfo.get('openid', '') |
59 | 59 |
if subscribe: |
60 |
- SubscribeUserInfo.objects.update_or_create(openid=openid, defaults={ |
|
60 |
+ SubscribeUserInfo.objects.update_or_create(extraid=brand_id, openid=openid, defaults={ |
|
61 | 61 |
'unionid': unionid, |
62 | 62 |
'nickname': userinfo.get('nickname', ''), |
63 | 63 |
'sex': userinfo.get('sex', ''), |
@@ -77,6 +77,6 @@ class Command(CompatibilityBaseCommand): |
||
77 | 77 |
}) |
78 | 78 |
UserInfo.objects.filter(unionid=unionid).update(openid=openid) |
79 | 79 |
else: |
80 |
- SubscribeUserInfo.objects.filter(openid=openid).update(subscribe=subscribe) |
|
80 |
+ SubscribeUserInfo.objects.filter(extraid=brand_id, openid=openid).update(subscribe=subscribe) |
|
81 | 81 |
|
82 | 82 |
close_old_connections() |
@@ -5,6 +5,7 @@ from django.db import transaction |
||
5 | 5 |
from django_curtail_uuid import CurtailUUID |
6 | 6 |
from django_logit import logit |
7 | 7 |
from django_response import response |
8 |
+from django_we.models import SubscribeUserInfo |
|
8 | 9 |
from ipaddr import client_ip |
9 | 10 |
from pywe_membercard import get_miniapp_extraData |
10 | 11 |
from pywe_miniapp import get_session_info, get_session_key, get_userinfo, store_session_key |
@@ -141,6 +142,12 @@ def mini_login_api(request): |
||
141 | 142 |
user.user_from = UserInfo.MINIAPP_USER |
142 | 143 |
if unionid: |
143 | 144 |
user.unionid = unionid |
145 |
+ try: |
|
146 |
+ subuser = SubscribeUserInfo.objects.get(brand_id=brand_id, unionid=unionid) |
|
147 |
+ except SubscribeUserInfo.DoesNotExist: |
|
148 |
+ subuser = None |
|
149 |
+ if subuser: |
|
150 |
+ user.openid = subuser.openid |
|
144 | 151 |
user.user_status = UserInfo.ACTIVATED |
145 | 152 |
user.signup_ip = client_ip(request) |
146 | 153 |
user.signup_at = tc.utc_datetime() |