:art: Opt cmds

huangqimin001 4 anos atrás
pai
commit
a96dd35151

+ 8 - 6
commands/management/commands/cmd_bak.py

@@ -19,13 +19,15 @@ class Command(CompatibilityBaseCommand):
19 19
         while True:
20 20
             # r.rpushjson('TEMPLET_CMD_KEY', {})
21 21
             k, v = r.blpopjson('TEMPLET_CMD_KEY', 60)
22
-            if v:
23 22
 
24
-                close_old_connections()
23
+            if not v:
24
+                continue
25 25
 
26
-                logger.info(v)
26
+            close_old_connections()
27 27
 
28
-                with transaction.atomic():
29
-                    pass
28
+            logger.info(v)
30 29
 
31
-                close_old_connections()
30
+            with transaction.atomic():
31
+                pass
32
+
33
+            close_old_connections()

+ 73 - 71
commands/management/commands/cpon.py

@@ -27,87 +27,89 @@ class Command(CompatibilityBaseCommand):
27 27
             #     'user_id': 'user_id',
28 28
             # })
29 29
             k, v = r.blpopjson(MEMBER_SEND_COUPON_LIST, 60)
30
-            if v:
31 30
 
32
-                close_old_connections()
31
+            if not v:
32
+                continue
33 33
 
34
-                logger.info(v)
34
+            close_old_connections()
35 35
 
36
-                brand_id = v.get('brand_id', '')
37
-                user_id = v.get('user_id', '')
38
-                coupon_id = v.get('coupon_id', '')
36
+            logger.info(v)
39 37
 
40
-                # TODO: Opt by delay execute
41
-                time.sleep(5)
38
+            brand_id = v.get('brand_id', '')
39
+            user_id = v.get('user_id', '')
40
+            coupon_id = v.get('coupon_id', '')
42 41
 
42
+            # TODO: Opt by delay execute
43
+            time.sleep(5)
44
+
45
+            try:
46
+                user = UserInfo.objects.get(user_id=user_id)
47
+            except UserInfo.DoesNotExist:
48
+                continue
49
+
50
+            if coupon_id:
51
+                # 发放商城兑换券
43 52
                 try:
44
-                    user = UserInfo.objects.get(user_id=user_id)
45
-                except UserInfo.DoesNotExist:
53
+                    coupon = CouponInfo.objects.get(coupon_id=coupon_id)
54
+                except CouponInfo.DoesNotExist:
46 55
                     continue
47 56
 
48
-                if coupon_id:
49
-                    # 发放商城兑换券
57
+                UserCouponInfo.objects.create(
58
+                    brand_id=coupon.brand_id,
59
+                    brand_name=coupon.brand_name,
60
+                    coupon_id=coupon_id,
61
+                    user_id=user_id,
62
+                    coupon_title=coupon.coupon_title,
63
+                    coupon_detail=coupon.coupon_detail,
64
+                    coupon_value=coupon.coupon_value,
65
+                    coupon_image=coupon.coupon_image,
66
+                    coupon_from='INTEGRAL_MALL',
67
+                    active_at=tc.utc_datetime(),
68
+                    expire_at=tc.utc_datetime(days=365),
69
+                    coupon_valid_period=coupon.coupon_valid_period,
70
+                    coupon_limit_model_ids=coupon.coupon_limit_model_ids,
71
+                    is_coupon_admin_writeoff=coupon.is_coupon_admin_writeoff,
72
+                )
73
+
74
+            else:
75
+                # 发放会员权益
76
+                rights = RightInfo.objects.filter(is_send_coupon=True, status=True)
77
+                for right in rights:
78
+                    if user.level == UserInfo.MEMBER_LRC:
79
+                        coupon_id = right.coupon_level1_id
80
+                        coupon_num = right.coupon_level1_num
81
+                    elif user.level == UserInfo.MEMBER_SILVER:
82
+                        coupon_id = right.coupon_level2_id
83
+                        coupon_num = right.coupon_level2_num
84
+                    elif user.level == UserInfo.MEMBER_GOLD:
85
+                        coupon_id = right.coupon_level3_id
86
+                        coupon_num = right.coupon_level3_num
87
+                    elif user.level == UserInfo.MEMBER_WHITE_GOLD:
88
+                        coupon_id = right.coupon_level4_id
89
+                        coupon_num = right.coupon_level4_num
90
+                    elif user.level == UserInfo.MEMBER_BLACK_GOLD:
91
+                        coupon_id = right.coupon_level5_id
92
+                        coupon_num = right.coupon_level5_num
93
+
50 94
                     try:
51 95
                         coupon = CouponInfo.objects.get(coupon_id=coupon_id)
52 96
                     except CouponInfo.DoesNotExist:
53 97
                         continue
54 98
 
55
-                    UserCouponInfo.objects.create(
56
-                        brand_id=coupon.brand_id,
57
-                        brand_name=coupon.brand_name,
58
-                        coupon_id=coupon_id,
59
-                        user_id=user_id,
60
-                        coupon_title=coupon.coupon_title,
61
-                        coupon_detail=coupon.coupon_detail,
62
-                        coupon_value=coupon.coupon_value,
63
-                        coupon_image=coupon.coupon_image,
64
-                        coupon_from='INTEGRAL_MALL',
65
-                        active_at=tc.utc_datetime(),
66
-                        expire_at=tc.utc_datetime(days=365),
67
-                        coupon_valid_period=coupon.coupon_valid_period,
68
-                        coupon_limit_model_ids=coupon.coupon_limit_model_ids,
69
-                        is_coupon_admin_writeoff=coupon.is_coupon_admin_writeoff,
70
-                    )
71
-
72
-                else:
73
-                    # 发放会员权益
74
-                    rights = RightInfo.objects.filter(is_send_coupon=True, status=True)
75
-                    for right in rights:
76
-                        if user.level == UserInfo.MEMBER_LRC:
77
-                            coupon_id = right.coupon_level1_id
78
-                            coupon_num = right.coupon_level1_num
79
-                        elif user.level == UserInfo.MEMBER_SILVER:
80
-                            coupon_id = right.coupon_level2_id
81
-                            coupon_num = right.coupon_level2_num
82
-                        elif user.level == UserInfo.MEMBER_GOLD:
83
-                            coupon_id = right.coupon_level3_id
84
-                            coupon_num = right.coupon_level3_num
85
-                        elif user.level == UserInfo.MEMBER_WHITE_GOLD:
86
-                            coupon_id = right.coupon_level4_id
87
-                            coupon_num = right.coupon_level4_num
88
-                        elif user.level == UserInfo.MEMBER_BLACK_GOLD:
89
-                            coupon_id = right.coupon_level5_id
90
-                            coupon_num = right.coupon_level5_num
91
-
92
-                        try:
93
-                            coupon = CouponInfo.objects.get(coupon_id=coupon_id)
94
-                        except CouponInfo.DoesNotExist:
95
-                            continue
96
-
97
-                        for _ in range(right.coupon_num or coupon_num):
98
-                            UserCouponInfo.objects.create(
99
-                                brand_id=coupon.brand_id,
100
-                                brand_name=coupon.brand_name,
101
-                                coupon_id=coupon_id,
102
-                                user_id=user_id,
103
-                                coupon_title=coupon.coupon_title,
104
-                                coupon_detail=coupon.coupon_detail,
105
-                                coupon_value=coupon.coupon_value,
106
-                                coupon_image=coupon.coupon_image,
107
-                                active_at=tc.utc_datetime(),
108
-                                expire_at=tc.utc_datetime(days=365),
109
-                                coupon_valid_period=coupon.coupon_valid_period,
110
-                                coupon_limit_model_ids=coupon.coupon_limit_model_ids,
111
-                            )
112
-
113
-                close_old_connections()
99
+                    for _ in range(right.coupon_num or coupon_num):
100
+                        UserCouponInfo.objects.create(
101
+                            brand_id=coupon.brand_id,
102
+                            brand_name=coupon.brand_name,
103
+                            coupon_id=coupon_id,
104
+                            user_id=user_id,
105
+                            coupon_title=coupon.coupon_title,
106
+                            coupon_detail=coupon.coupon_detail,
107
+                            coupon_value=coupon.coupon_value,
108
+                            coupon_image=coupon.coupon_image,
109
+                            active_at=tc.utc_datetime(),
110
+                            expire_at=tc.utc_datetime(days=365),
111
+                            coupon_valid_period=coupon.coupon_valid_period,
112
+                            coupon_limit_model_ids=coupon.coupon_limit_model_ids,
113
+                        )
114
+
115
+            close_old_connections()

+ 74 - 73
commands/management/commands/gis.py

@@ -1,6 +1,5 @@
1 1
 # -*- coding: utf-8 -*-
2 2
 
3
-import json
4 3
 import logging
5 4
 
6 5
 import requests
@@ -33,75 +32,77 @@ class Command(CompatibilityBaseCommand):
33 32
             #     'ymd': '20121212',
34 33
             # })
35 34
             k, v = r.blpopjson(MINI_PROGRAM_GIS_LIST, 60)
36
-            if v:
37
-
38
-                close_old_connections()
39
-
40
-                logger.info(v)
41
-
42
-                with transaction.atomic():
43
-                    try:
44
-                        gisinfo = requests.get(settings.GIS_2_ADMINISTRATIVE_DIVISION.format(v.get('lat', 0), v.get('lon', 0)), verify=False).json()
45
-                    except Exception as e:
46
-                        logger.info(e.message)
47
-
48
-                    zh1 = gisinfo.get('result', {}).get('address_component', {}).get('province', '')
49
-
50
-                    province_code = ProvinceModelMixin.PROVINCE_NAME_CODE_DICT.get(zh1) if zh1 else ''
51
-
52
-                    if not province_code:
53
-                        continue
54
-
55
-                    brand_id = v.get('brand_id', '')
56
-                    user_id = v.get('user_id', '')
57
-                    ymd = str(v.get('ymd', ''))
58
-
59
-                    # 更新用户表
60
-                    user = UserInfo.objects.select_for_update().get(user_id=user_id, status=True)
61
-                    user.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
62
-                    user.save()
63
-
64
-                    if v.get('pk'):
65
-                        log = ConsumeInfoSubmitLogInfo.objects.get(pk=v.get('pk', -1), status=True)
66
-                        log.province = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
67
-                        log.save()
68
-
69
-                    # [消费者维度]省份销量统计
70
-                    # 日
71
-                    cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
72
-                        brand_id=brand_id,
73
-                        province_code=province_code,
74
-                        ymd=ymd,
75
-                    )
76
-                    if not cpssi.province_name:
77
-                        cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
78
-                    cpssi.users = list(set(cpssi.users + [user_id]))
79
-                    cpssi.num = len(cpssi.users)
80
-                    cpssi.num2 += 1
81
-                    cpssi.save()
82
-                    # 月
83
-                    cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
84
-                        brand_id=brand_id,
85
-                        province_code=province_code,
86
-                        ymd=ymd[:6],
87
-                    )
88
-                    if not cpssi.province_name:
89
-                        cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
90
-                    cpssi.users = list(set(cpssi.users + [user_id]))
91
-                    cpssi.num = len(cpssi.users)
92
-                    cpssi.num2 += 1
93
-                    cpssi.save()
94
-                    # 年
95
-                    cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
96
-                        brand_id=brand_id,
97
-                        province_code=province_code,
98
-                        ymd=ymd[:4],
99
-                    )
100
-                    if not cpssi.province_name:
101
-                        cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
102
-                    cpssi.users = list(set(cpssi.users + [user_id]))
103
-                    cpssi.num = len(cpssi.users)
104
-                    cpssi.num2 += 1
105
-                    cpssi.save()
106
-
107
-                close_old_connections()
35
+
36
+            if not v:
37
+                continue
38
+
39
+            close_old_connections()
40
+
41
+            logger.info(v)
42
+
43
+            with transaction.atomic():
44
+                try:
45
+                    gisinfo = requests.get(settings.GIS_2_ADMINISTRATIVE_DIVISION.format(v.get('lat', 0), v.get('lon', 0)), verify=False).json()
46
+                except Exception as e:
47
+                    logger.info(e.message)
48
+
49
+                zh1 = gisinfo.get('result', {}).get('address_component', {}).get('province', '')
50
+
51
+                province_code = ProvinceModelMixin.PROVINCE_NAME_CODE_DICT.get(zh1) if zh1 else ''
52
+
53
+                if not province_code:
54
+                    continue
55
+
56
+                brand_id = v.get('brand_id', '')
57
+                user_id = v.get('user_id', '')
58
+                ymd = str(v.get('ymd', ''))
59
+
60
+                # 更新用户表
61
+                user = UserInfo.objects.select_for_update().get(user_id=user_id, status=True)
62
+                user.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
63
+                user.save()
64
+
65
+                if v.get('pk'):
66
+                    log = ConsumeInfoSubmitLogInfo.objects.get(pk=v.get('pk', -1), status=True)
67
+                    log.province = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
68
+                    log.save()
69
+
70
+                # [消费者维度]省份销量统计
71
+                # 日
72
+                cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
73
+                    brand_id=brand_id,
74
+                    province_code=province_code,
75
+                    ymd=ymd,
76
+                )
77
+                if not cpssi.province_name:
78
+                    cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
79
+                cpssi.users = list(set(cpssi.users + [user_id]))
80
+                cpssi.num = len(cpssi.users)
81
+                cpssi.num2 += 1
82
+                cpssi.save()
83
+                # 月
84
+                cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
85
+                    brand_id=brand_id,
86
+                    province_code=province_code,
87
+                    ymd=ymd[:6],
88
+                )
89
+                if not cpssi.province_name:
90
+                    cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
91
+                cpssi.users = list(set(cpssi.users + [user_id]))
92
+                cpssi.num = len(cpssi.users)
93
+                cpssi.num2 += 1
94
+                cpssi.save()
95
+                # 年
96
+                cpssi, _ = ConsumeProvinceSaleStatisticInfo.objects.select_for_update().get_or_create(
97
+                    brand_id=brand_id,
98
+                    province_code=province_code,
99
+                    ymd=ymd[:4],
100
+                )
101
+                if not cpssi.province_name:
102
+                    cpssi.province_name = ProvinceShortModelMixin.PROVINCE_CODE_NAME_DICT.get(province_code)
103
+                cpssi.users = list(set(cpssi.users + [user_id]))
104
+                cpssi.num = len(cpssi.users)
105
+                cpssi.num2 += 1
106
+                cpssi.save()
107
+
108
+            close_old_connections()

+ 1 - 0
commands/management/commands/membercard.py

@@ -43,6 +43,7 @@ class Command(CompatibilityBaseCommand):
43 43
             #    'code': 'code',
44 44
             # })
45 45
             k, v = r.blpopjson(MEMBERCARD_USERINFO_LIST, 60)
46
+
46 47
             if not v:
47 48
                 continue
48 49
 

+ 1 - 0
commands/management/commands/qiniu.py

@@ -25,6 +25,7 @@ class Command(CompatibilityBaseCommand):
25 25
             #    'pk': 'pk',
26 26
             # })
27 27
             k, v = r.blpopjson(QINIU_UPLOAD_LIST, 60)
28
+
28 29
             if not v:
29 30
                 continue
30 31