:art: Support member_activity_contribute_audit / member_activity_contribute_selected

huangqimin001 2 anni fa
parent
commit
ffff9d77ff
4 ha cambiato i file con 64 aggiunte e 5 eliminazioni
  1. 57 3
      api/admin_views.py
  2. 4 0
      api/urls.py
  3. 1 0
      member/migrations/0037_auto_20221023_2010.py
  4. 2 2
      member/models.py

+ 57 - 3
api/admin_views.py

@@ -11,6 +11,7 @@ from django.contrib.auth.hashers import make_password
11 11
 from django.db import transaction
12 12
 from django.db.models import Count, Q, Sum
13 13
 from django_logit import logit
14
+from django_query import get_query_value
14 15
 from django_response import response
15 16
 from paginator import pagination
16 17
 from pysnippets.strsnippets import strip
@@ -22,11 +23,12 @@ from coupon.models import CouponInfo, UserCouponInfo
22 23
 from integral.models import SaleclerkSubmitLogInfo
23 24
 from logs.models import AdministratorLoginLogInfo, ComplementCodeLogInfo, MchInfoEncryptLogInfo
24 25
 from mch.models import AdministratorInfo, BrandInfo, ConsumeInfoSubmitLogInfo, DistributorInfo, ModelInfo
25
-from member.models import (GoodsInfo, GoodsOrderInfo, MemberActivityGroupShareInfo, MemberActivityInfo,
26
-                           MemberActivitySignupInfo)
26
+from member.models import (GoodsInfo, GoodsOrderInfo, MemberActivityContributionInfo, MemberActivityGroupShareInfo,
27
+                           MemberActivityInfo, MemberActivitySignupInfo)
27 28
 from pre.custom_message import sendtemplatemessage, sendwxasubscribemessage
28 29
 from statistic.models import ConsumeModelSaleStatisticInfo, ConsumeSaleStatisticInfo, ConsumeUserStatisticInfo
29
-from utils.error.errno_utils import (AdministratorStatusCode, ComplementCodeStatusCode, ProductBrandStatusCode,
30
+from utils.error.errno_utils import (AdministratorStatusCode, ComplementCodeStatusCode,
31
+                                     MemberActivityContributionStatusCode, ProductBrandStatusCode,
30 32
                                      ProductCouponStatusCode, ProductMachineStatusCode, UserStatusCode)
31 33
 
32 34
 
@@ -1204,6 +1206,58 @@ def member_activity_register_list(request):
1204 1206
     })
1205 1207
 
1206 1208
 
1209
+@transaction.atomic
1210
+def member_activity_contribute_audit(request):
1211
+    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
1212
+    admin_id = request.POST.get('admin_id', '')
1213
+    contribution_id = request.POST.get('contribution_id', '')
1214
+    audit = get_query_value(request, 'audit', val_cast_type='int')
1215
+
1216
+    if brand_id != settings.KODO_DEFAULT_BRAND_ID:
1217
+        return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
1218
+
1219
+    try:
1220
+        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
1221
+    except AdministratorInfo.DoesNotExist:
1222
+        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
1223
+
1224
+    try:
1225
+        contribution = MemberActivityContributionInfo.objects.select_for_update().get(contribution_id=contribution_id, status=True)
1226
+    except MemberActivityContributionInfo.DoesNotExist:
1227
+        return response(MemberActivityContributionStatusCode.ACTIVITY_CONTRIBUTION_NOT_FOUND)
1228
+
1229
+    contribution.is_audit_pass = audit
1230
+    contribution.save()
1231
+
1232
+    return response(200, 'Member Activity Contribution Audit Success', u'会员活动投稿审批成功')
1233
+
1234
+
1235
+@transaction.atomic
1236
+def member_activity_contribute_selected(request):
1237
+    brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
1238
+    admin_id = request.POST.get('admin_id', '')
1239
+    contribution_id = request.POST.get('contribution_id', '')
1240
+    selected = get_query_value(request, 'selected', val_cast_type='int')
1241
+
1242
+    if brand_id != settings.KODO_DEFAULT_BRAND_ID:
1243
+        return response(ProductBrandStatusCode.BRAND_NOT_MATCH)
1244
+
1245
+    try:
1246
+        administrator = AdministratorInfo.objects.get(admin_id=admin_id, user_status=AdministratorInfo.ACTIVATED, status=True)
1247
+    except AdministratorInfo.DoesNotExist:
1248
+        return response(AdministratorStatusCode.ADMINISTRATOR_NOT_FOUND)
1249
+
1250
+    try:
1251
+        contribution = MemberActivityContributionInfo.objects.select_for_update().get(contribution_id=contribution_id, status=True)
1252
+    except MemberActivityContributionInfo.DoesNotExist:
1253
+        return response(MemberActivityContributionStatusCode.ACTIVITY_CONTRIBUTION_NOT_FOUND)
1254
+
1255
+    contribution.is_selected = selected
1256
+    contribution.save()
1257
+
1258
+    return response(200, 'Member Activity Contribution Selected Success', u'会员活动投稿入围成功')
1259
+
1260
+
1207 1261
 def coupon_list(request):
1208 1262
     brand_id = request.POST.get('brand_id', settings.KODO_DEFAULT_BRAND_ID)
1209 1263
     admin_id = request.POST.get('admin_id', '')

+ 4 - 0
api/urls.py

@@ -171,6 +171,10 @@ urlpatterns += [
171 171
     url(r'^admin/member/activity/share/list$', admin_views.member_activity_share_list, name='member_activity_share_list'),
172 172
     url(r'^admin/member/activity/register/list$', admin_views.member_activity_register_list, name='member_activity_register_list'),
173 173
 
174
+    url(r'^admin/member/activity/contribute/list$', member_views.activity_contribute_list, name='admin_member_activity_contribute_list'),
175
+    url(r'^admin/member/activity/contribute/audit$', admin_views.member_activity_contribute_audit, name='admin_member_activity_contribute_audit'),
176
+    url(r'^admin/member/activity/contribute/selected$', admin_views.member_activity_contribute_selected, name='admin_member_activity_contribute_selected'),
177
+
174 178
     url(r'^admin/coupon/list$', admin_views.coupon_list, name='coupon_list'),
175 179
     url(r'^admin/coupon/details$', admin_views.coupon_details, name='coupon_update'),
176 180
     url(r'^admin/coupon/create$', admin_views.coupon_create, name='coupon_create'),

+ 1 - 0
member/migrations/0037_auto_20221023_2010.py

@@ -1,3 +1,4 @@
1
+# -*- coding: utf-8 -*-
1 2
 # Generated by Django 3.2.16 on 2022-10-23 12:10
2 3
 
3 4
 from django.db import migrations, models

+ 2 - 2
member/models.py

@@ -667,8 +667,8 @@ class MemberActivityGroupShareInfo(BaseModelMixin):
667 667
 class MemberActivityContributionInfo(BaseModelMixin):
668 668
     CONTENT_TYPE = (
669 669
         (0, u'投稿'),
670
-        (1, u'入围'),
671
-        (2, u'创作日记'),
670
+        (1, u'创作日记'),
671
+        # (2, u'入围'),
672 672
     )
673 673
 
674 674
     brand_id = models.CharField(_(u'brand_id'), max_length=32, blank=True, null=True, help_text=u'品牌唯一标识', db_index=True)