From 31653cab119ac27d35c4d6cfdfdc87b2537329e3 Mon Sep 17 00:00:00 2001 From: feng <1304903146@qq.com> Date: Fri, 14 Apr 2023 15:34:56 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E5=8D=95=E7=8B=AC=E6=8E=A8=E9=80=81?= =?UTF-8?q?=E8=B4=A6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/accounts/api/account/task.py | 3 ++- apps/accounts/serializers/account/account.py | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/accounts/api/account/task.py b/apps/accounts/api/account/task.py index 2f3f11dae..697824806 100644 --- a/apps/accounts/api/account/task.py +++ b/apps/accounts/api/account/task.py @@ -24,10 +24,11 @@ class AccountsTaskCreateAPI(CreateAPIView): def perform_create(self, serializer): data = serializer.validated_data accounts = data.get('accounts', []) + params = data.get('params') account_ids = [str(a.id) for a in accounts] if data['action'] == 'push': - task = push_accounts_to_assets_task.delay(account_ids) + task = push_accounts_to_assets_task.delay(account_ids, params) else: account = accounts[0] asset = account.asset diff --git a/apps/accounts/serializers/account/account.py b/apps/accounts/serializers/account/account.py index 7a4d90919..de9931a62 100644 --- a/apps/accounts/serializers/account/account.py +++ b/apps/accounts/serializers/account/account.py @@ -97,7 +97,7 @@ class AccountCreateUpdateSerializerMixin(serializers.Serializer): @staticmethod def push_account_if_need(instance, push_now, params, stat): - if not push_now or stat != 'created': + if not push_now or stat not in ['created', 'updated']: return push_accounts_to_assets_task.delay([str(instance.id)], params) @@ -404,3 +404,7 @@ class AccountTaskSerializer(serializers.Serializer): queryset=Account.objects, required=False, allow_empty=True, many=True ) task = serializers.CharField(read_only=True) + params = serializers.JSONField( + decoder=None, encoder=None, required=False, + style={'base_template': 'textarea.html'} + )