Prechádzať zdrojové kódy

Merge branch 'dev' into lang

lang 4 rokov pred
rodič
commit
d8a3b64834

+ 15 - 14
Controller/CloudTest.py

@@ -5,9 +5,11 @@
 @File :CloudTest.py
 @IDE :PyCharm
 """
+import time
+
 from django.views.generic.base import View
 
-from Model.models import Device_Info
+from Model.models import Device_User, Device_Info
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
 
@@ -26,8 +28,6 @@ class cloudTestView(View):
 
     def validation(self, request_dict, request, operation):
         response = ResponseObject()
-        # if operation == 'deviceTransfer':
-        #     return self.deviceTransfer(request_dict, response)
         if operation is None:
             return response.json(444, 'error path')
         else:
@@ -43,20 +43,21 @@ class cloudTestView(View):
 
     def deviceTransfer(self, request_dict, response):
         # 设备转移
-        userID = request_dict.get("userID", None)
-        oldUID = request_dict.get('oldUID', None)
-        newUID = request_dict.get('newUID', None)
+        oldUserID = request_dict.get("oldUserID", None)
+        username = request_dict.get("username", None)
+        uid = request_dict.get('uid', None)
 
-        # 查询设备是否存在且支持云存功能
-        oldUIDdevice_qs = Device_Info.objects.filter(userID_id=userID, UID=oldUID, isVod=1, isExist=1)
-        newUIDdevice_qs = Device_Info.objects.filter(userID_id=userID, UID=newUID, isVod=1, isExist=1)
         try:
-            if oldUIDdevice_qs[0] and newUIDdevice_qs[0]:
-                # 更新UID
-                oldUIDdevice_qs.update(UID=newUID)
+            # 查询设备是否存在
+            deviceInfo_qs = Device_Info.objects.filter(userID_id=oldUserID, UID=uid, isExist=1)
+            if deviceInfo_qs[0]:
+                # 更新设备信息
+                deviceUser_qs = Device_User.objects.filter(username=username, isExist=1).values('userID')
+                userID = deviceUser_qs['userID']
+                nowTime = int(time.time())
+                deviceInfo_qs.update(userID=userID, update_time=nowTime)
         except Exception as e:
-            print('更新失败')
+            print(e)
             return response.json(500, repr(e))
         else:
             return response.json(0)
-

+ 20 - 3
Controller/DeviceTypeController.py

@@ -9,6 +9,7 @@ from Ansjer.config import OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET
 from Model.models import DeviceTypeModel
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
+from Service.CommonService import CommonService
 from Service.ModelService import ModelService
 
 
@@ -41,13 +42,29 @@ class DeviceTypeView(View):
             return self.do_query(request_dict, response)
         elif operation == 'delete':
             return self.do_admin_delete(token.userID, request_dict, response)
+        elif operation == 'getUploadUrl':
+            return self.get_upload_url(request_dict, response)
         else:
             return response.json(404)
 
+    def get_upload_url(self, request_dict, response):
+        upload_type = request_dict.get('upload_type', None)
+
+        if upload_type:
+            auth = oss2.Auth(OSS_STS_ACCESS_KEY, OSS_STS_ACCESS_SECRET)
+            bucket = oss2.Bucket(auth, 'oss-cn-shenzhen.aliyuncs.com', 'ansjer-static-resources')
+            name = CommonService.createOrderID()
+            filename = str(name) + '.' + upload_type
+            obj = 'device_type/' + filename
+            url = bucket.sign_url('PUT', obj, 7200)
+            return response.json(0, {'put_url': url, 'filename': filename})
+        else:
+            return response.json(444)
+
     def do_admin_add(self, userID, request_dict, response):
-        # own_perm = ModelService.check_perm(userID, 10)
-        # if not own_perm:
-        #     return response.json(404)
+        own_perm = ModelService.check_perm(userID, 10)
+        if not own_perm:
+            return response.json(404)
 
         name = request_dict.get('name', None)
         model = request_dict.get('model', None)

+ 16 - 2
Controller/MealManage.py

@@ -81,6 +81,11 @@ class MealManage(View):
         bucketID = request_dict.get('bucketID', None)
         paytype = request_dict.get('paytype', None)
         virtual_price = request_dict.get('virtual_price', None)
+        is_discounts = request_dict.get('is_discounts', None)
+        discount_price = request_dict.get('discount_price', None)
+        discount_content = request_dict.get('discount_content', None)
+        expire = request_dict.get('expire', None)
+
         if not title or not id or not price or not day or not content:
             return response.json(444, 'title,id,price,content,day,bucketID')
         own_perm = ModelService.check_perm(userID=userID, permID=40)
@@ -91,7 +96,8 @@ class MealManage(View):
             if Store_Meal.objects.filter(id=id):
                 return response.json(10, '已存在')
             store_meal = Store_Meal(id=id, title=title, price=price, content=content, day=day, bucket_id=bucketID,
-                                    currency=currency, virtual_price=virtual_price)
+                                    currency=currency, virtual_price=virtual_price, is_discounts=is_discounts,
+                                    discount_price=discount_price, discount_content=discount_content, expire=expire)
             store_meal.save()
             paytype = paytype.split(',')
             if len(paytype) > 0:
@@ -122,7 +128,7 @@ class MealManage(View):
             return response.json(444)
         qs = Store_Meal.objects.values("id", "title", "price", "content", "day", "add_time", "update_time", "currency"
                                        , "bucket_id", "bucket__bucket", "bucket__area", "commodity_type", "commodity_code",
-                                       "bucket__storeDay", "virtual_price")
+                                       "bucket__storeDay", "virtual_price", "is_discounts", "discount_price", "discount_content", "expire")
         res = {}
         if qs.exists():
             ql = list(qs)
@@ -153,6 +159,10 @@ class MealManage(View):
         commodity_type = request_dict.get('commodity_type', None)
         commodity_code = request_dict.get('commodity_code', None)
         virtual_price = request_dict.get('virtual_price', None)
+        is_discounts = request_dict.get('is_discounts', None)
+        discount_price = request_dict.get('discount_price', None)
+        discount_content = request_dict.get('discount_content', None)
+        expire = request_dict.get('expire', None)
         type = request_dict.get('type', None)
         if not id or not title or not price or not content or not day or not type:
             return response.json(444, 'id, title, price, content, day,type')
@@ -169,6 +179,10 @@ class MealManage(View):
             store_meal.commodity_type = commodity_type
             store_meal.commodity_code = commodity_code
             store_meal.virtual_price = virtual_price
+            store_meal.is_discounts = is_discounts
+            store_meal.discount_price = discount_price
+            store_meal.discount_content = discount_content
+            store_meal.expire = expire
             store_meal.day = day
             if bucketID:
                 store_meal.bucket_id = bucketID