回调状态修改

This commit is contained in:
AKW 2023-12-22 10:28:32 +08:00
parent 3434d60929
commit abc18e8add
2 changed files with 4 additions and 5 deletions

View File

@ -1,4 +1,5 @@
import base64
from datetime import datetime
from rest_framework import serializers
@ -6,6 +7,7 @@ from apps.jqr.models import JqrHookUser
from apps.jqr.tasks import save_add_contact, delete_add_contact, edit_add_contact
from apps.msg.models import TbMessage
from apps.msg.utils import JQRMSGPubSubUtils
from apps.qc.choices import QcCorpInfoCallbackStatusChoices
from libs.weworkapi.callback.WXBizMsgCrypt3 import WXBizMsgCrypt, Prpcrypt
from utils.tools import sha1_encoder, get_attribute, camel_to_snake
from utils.base_serializer import BaseSerializer, CurrentIpDefault
@ -38,6 +40,8 @@ class WechatPublicTokenSerializer(serializers.Serializer):
ret, echostr = wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr)
if ret != 0:
return {}
corp.callbackstatus = QcCorpInfoCallbackStatusChoices.VALIDATED
corp.callback_validate_time = datetime.now()
attrs['echostr'] = echostr.decode()
return attrs

View File

@ -1,17 +1,14 @@
from datetime import datetime
import requests
from rest_framework import viewsets
from rest_framework.decorators import action
from rest_framework.response import Response
from django.conf import settings
from apps.jqr.models import JqrHookUser, JqrExternalQun, JqrSendnewusermsgrecord, JqrSendmsgrecordinfo, JqrExternalUser
from apps.jqr.parsers import WechatContentParser
from apps.jqr.renderers import WechatPublicContentRenderer
from apps.jqr.serializers import WechatPublicTokenSerializer, WechatEncryptSerializer, HeartBeatSerializer, \
TbMessageModelSerializer
from apps.qc.choices import QcCorpInfoCallbackStatusChoices
from apps.qc.models import QcCorpinfo
from utils.base_viewsets import BaseViewSet
from utils.response import ApiResponse
@ -37,8 +34,6 @@ class WechatWorkerViewSet(viewsets.GenericViewSet):
serializer = self.get_serializer(data=request.query_params, context=context)
serializer.is_valid(raise_exception=True)
enchostr = serializer.data.get('echostr')
corp.callbackstatus = QcCorpInfoCallbackStatusChoices.VALIDATED
corp.callback_validate_time = datetime.now()
return Response(data=int(enchostr))
# return Response(data=enchostr)