peng 2 жил өмнө
parent
commit
ec34951924

+ 45 - 46
Controller/IcloudService/IcloudMeal.py

@@ -4,7 +4,7 @@
 @Time : 2023-6-7 18:26:35
 @File :IcloudMeal.py
 """
-import logging
+from Ansjer.config import LOGGER
 import time
 from urllib.parse import quote, parse_qs, unquote
 
@@ -24,8 +24,6 @@ from Object.WechatPayObject import WechatPayObject
 from Service.CommonService import CommonService
 from Controller.AiController import AiView
 
-logger = logging.getLogger('info')
-
 
 class IcloudMeal(View):
     def get(self, request, *args, **kwargs):
@@ -182,7 +180,7 @@ class IcloudMeal(View):
             Order_Model.objects.create(**order_dict)
             return response.json(0, res_data)
         except Exception as e:
-            logger.info('云盘生成订单异常:{}'.format(repr(e)))
+            LOGGER.info('云盘生成订单异常:{}'.format(repr(e)))
             return response.json(500)
 
     @classmethod
@@ -197,7 +195,7 @@ class IcloudMeal(View):
         @param response: 响应
         @return: response
         """
-        logger.info('云盘订单---paypal支付回调')
+        LOGGER.info('云盘订单---paypal支付回调')
         payment_id = request_dict.get('paymentId', None)
         payer_id = request_dict.get('PayerID', None)
         order_id = request_dict.get('orderID', None)
@@ -228,7 +226,7 @@ class IcloudMeal(View):
                 return HttpResponseRedirect(pay_failed_url)
             return cls.payment_success(order_id, lang, order_qs, redis_obj)
         except Exception as e:
-            logger.info('云盘订单paypal支付回调异常:{}'.format(repr(e)))
+            LOGGER.info('云盘订单paypal支付回调异常:{}'.format(repr(e)))
             order_qs.update(status=10)
             pay_failed_url = CommonService.get_payment_status_url(lang, 'fail')
             redis_obj.del_data(key=order_id + 'creating_icloud_order')
@@ -242,7 +240,7 @@ class IcloudMeal(View):
         @param response: 响应
         @return: response
         """
-        logger.info('云盘订单---支付宝支付回调')
+        LOGGER.info('云盘订单---支付宝支付回调')
 
         data = request_dict.dict()
         passback_params = data['passback_params']
@@ -271,7 +269,7 @@ class IcloudMeal(View):
                 return response.json(0, signature)
             return cls.payment_success(order_id, lang, order_qs, redis_obj)
         except Exception as e:
-            logger.info('AI订单支付宝支付回调异常:{}'.format(repr(e)))
+            LOGGER.info('AI订单支付宝支付回调异常:{}'.format(repr(e)))
             order_qs.update(status=10)
             redis_obj.del_data(key=order_id + 'creating_icloud_order')
             pay_failed_url = CommonService.get_payment_status_url(lang, 'fail')
@@ -286,7 +284,7 @@ class IcloudMeal(View):
         @param response: 响应
         @return: response
         """
-        logger.info('云盘订单---微信支付回调')
+        LOGGER.info('云盘订单---微信支付回调')
 
         pay = WechatPayObject()
         data = pay.weixinpay_call_back(request.body)
@@ -532,7 +530,7 @@ class IcloudMeal(View):
                 cloud_service_list.append(data)
             return response.json(0, {'data': cloud_service_list, 'count': count})
         except Exception as e:
-            logging.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
+            LOGGER.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
             return response.json(500, e)
 
     @staticmethod
@@ -558,7 +556,7 @@ class IcloudMeal(View):
             }
             return response.json(0, data)
         except Exception as e:
-            logging.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
+            LOGGER.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
             return response.json(500, e)
 
     @staticmethod
@@ -570,42 +568,43 @@ class IcloudMeal(View):
         @param response: 响应
         @return: response
         """
-        is_cloudDrive = request_dict.get('isCloudDrive', 0)
-        if not is_cloudDrive:
-            return response.json(444)
-        is_cloudDrive = int(is_cloudDrive)
-        if is_cloudDrive != 1:
-            return response.json(10063)
-        # 过滤已激活的用户
-        device_user_qs = Device_User.objects.filter(userID=user_id, is_cloudDrive=1)
-        if device_user_qs.exists():
-            return response.json(174)
-        nowTime = int(time.time())
+        lang = request_dict.get('lang', 'en')
+        now_time = int(time.time())
         try:
-            # 云盘使用
-            cloud_Use_data = {
-                'use_size': 0,
-                'add_time': nowTime,
-                'upd_time': nowTime,
-                'detect_status': 1,
-                'user_id': user_id,
-                'bucket_id': 29
-            }
-            cloud_use_qs = IcloudUseDetails.objects.create(**cloud_Use_data)
-            # 云盘服务
-            cloud_service_data = {
-                'size': 1,
-                'end_time': 0,
-                'add_time': nowTime,
-                'upd_time': nowTime,
-                'use_status': 0,
-                'use_details_id': cloud_use_qs.id,
-                'type': 0,
-                'order_id': 0
-            }
-            IcloudService.objects.create(**cloud_service_data)
-            Device_User.objects.filter(userID=user_id).update(is_cloudDrive=1)
+            icloud_meal_qs = ICloudStoreMeal.objects.filter(price=0, expire=0, is_show=0, size=1, pay_type=10,
+                                                            lang__lang=lang).values('bucket_id')
+            if not icloud_meal_qs.exists():
+                return response.json(173)
+            cloud_use_qs = IcloudUseDetails.objects.filter(user_id=user_id).values('id')
+            if not cloud_use_qs.exists():
+                # 云盘使用
+                cloud_use_data = {
+                    'use_size': 0,
+                    'add_time': now_time,
+                    'upd_time': now_time,
+                    'detect_status': 1,
+                    'user_id': user_id,
+                    'bucket_id': icloud_meal_qs[0]['bucket_id']
+                }
+                cloud_use_qs = IcloudUseDetails.objects.create(**cloud_use_data)
+                use_details_id = cloud_use_qs.id
+            else:
+                use_details_id = cloud_use_qs[0]['id']
+            icloud_service_qs = IcloudService.objects.filter(use_details_id=use_details_id, size=1, end_time=0, type=0)
+            if not icloud_service_qs.exists():
+                # 云盘服务
+                cloud_service_data = {
+                    'size': 1,
+                    'end_time': 0,
+                    'add_time': now_time,
+                    'upd_time': now_time,
+                    'use_status': 0,
+                    'use_details_id': use_details_id,
+                    'type': 0,
+                    'order_id': 0
+                }
+                IcloudService.objects.create(**cloud_service_data)
             return response.json(0)
         except Exception as e:
-            logging.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
+            LOGGER.info('异常错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
             return response.json(500, e)