linhaohong 1 жил өмнө
parent
commit
bbde7b2d3a

+ 84 - 6
AdminController/CloudServiceManage/AgentCustomerController.py

@@ -61,15 +61,23 @@ class AgentCustomerView(View):
                 return response.json(tko.code)
                 return response.json(tko.code)
             response.lang = tko.lang
             response.lang = tko.lang
             userID = tko.userID
             userID = tko.userID
-            if operation == 'getAgentServicePackage':
             # 代理用户界面(代理顾客个人信息)
             # 代理用户界面(代理顾客个人信息)
             if operation == 'getAgentInfo':
             if operation == 'getAgentInfo':
                 return self.get_agent_info(userID, response)
                 return self.get_agent_info(userID, response)
+
+            # 代理云存套餐
+            elif operation == 'getAgentServicePackage':
                 return self.get_agent_service_package(request_dict, response)
                 return self.get_agent_service_package(request_dict, response)
             elif operation == 'addAgentServicePackage':
             elif operation == 'addAgentServicePackage':
                 return self.add_agent_service_package(request_dict, response)
                 return self.add_agent_service_package(request_dict, response)
             elif operation == 'getAgentInfo':
             elif operation == 'getAgentInfo':
                 return self.get_agent_info(userID, response)
                 return self.get_agent_info(userID, response)
+                return self.add_agent_service_package(userID, request_dict, response)
+            elif operation == 'updateAgentServicePackage':
+                return self.update_agent_service_package(userID, request_dict, response)
+            elif operation == 'delAgentServicePackage':
+                return self.del_agent_service_package(request_dict, response)
+
             else:
             else:
                 return response.json(444, 'operation')
                 return response.json(444, 'operation')
 
 
@@ -152,7 +160,6 @@ class AgentCustomerView(View):
         @param request_dict: 请求参数
         @param request_dict: 请求参数
         @request_dict page: 页码
         @request_dict page: 页码
         @request_dict page_size: 查询分页数
         @request_dict page_size: 查询分页数
-        @param userID: userID
         @param response: 响应对象
         @param response: 响应对象
         @return:
         @return:
         """
         """
@@ -177,13 +184,13 @@ class AgentCustomerView(View):
                 'page_size': page_size,
                 'page_size': page_size,
                 'total': paginator.count,
                 'total': paginator.count,
                 'num_pages': paginator.num_pages,
                 'num_pages': paginator.num_pages,
-                'packages': packages_list
+                'list': packages_list
             })
             })
         except Exception as e:
         except Exception as e:
             # 出错时返回错误信息
             # 出错时返回错误信息
             return response.json({'error': str(e)}, status=500)
             return response.json({'error': str(e)}, status=500)
 
 
-    def add_agent_service_package(self, request_dict, response):
+    def add_agent_service_package(self, userID, request_dict, response):
         """
         """
         添加代理云服务套餐
         添加代理云服务套餐
         @param request_dict: 请求参数
         @param request_dict: 请求参数
@@ -205,7 +212,17 @@ class AgentCustomerView(View):
 
 
         try:
         try:
             # 创建AgentCloudServicePackage实例并保存
             # 创建AgentCloudServicePackage实例并保存
-            agent_service_package = AgentCloudServicePackage(
+            if not all([package_id, service_name]):
+                return response.json(444)
+            if package_type == 1:
+                query_set = Store_Meal.objects.filter(is_show=1, id=package_id)
+            elif package_type == 2:
+                query_set = UnicomCombo.objects.filter(is_show=1, is_del=False, id=package_id)
+            else:
+                return response.json(444, 'error package_type')
+            if not query_set.exists():
+                return response.json(173)
+            AgentCloudServicePackage.objects.create(
                 service_name=service_name,
                 service_name=service_name,
                 package_id=package_id,
                 package_id=package_id,
                 type=package_type,
                 type=package_type,
@@ -213,10 +230,71 @@ class AgentCustomerView(View):
                 profit=profit,
                 profit=profit,
                 status=1,
                 status=1,
                 cost=cost,
                 cost=cost,
+                created_by=userID,
                 created_time=int(time.time()),
                 created_time=int(time.time()),
+                updated_by=userID,
                 updated_time=int(time.time())
                 updated_time=int(time.time())
             )
             )
-            agent_service_package.save()
             return response.json(0)
             return response.json(0)
         except Exception as e:
         except Exception as e:
             return response.json({'error': str(e)}, status=500)
             return response.json({'error': str(e)}, status=500)
+
+    def update_agent_service_package(self, userID, request_dict, response):
+        """
+        更新代理云服务套餐
+        @param request_dict: 请求参数
+        @request_dict package_id: 代理服务id
+        @request_dict service_name: 代理服务名称
+        @response_dict profit_type: 利润分配类型 1:固定值,2:百分比
+        @response_dict cost: 成本
+        @response_dict profit: 利润值
+        @param response: 响应对象
+        @return:
+        """
+        id = request_dict.get('id', None)
+        service_name = request_dict.get('service_name', None)
+        profit_type = request_dict.get('profit_type', None)
+        cost = request_dict.get('cost', None)
+        profit = request_dict.get('profit', None)
+
+        if not all([id, service_name, profit_type, cost, profit]):
+            return response.json(444)
+
+        try:
+            ac_service_package = AgentCloudServicePackage.objects.get(pk=id)
+            ac_service_package.service_name = service_name
+            ac_service_package.profit_type = profit_type
+            ac_service_package.cost = cost
+            ac_service_package.profit = profit
+            ac_service_package.updated_time = int(time.time())
+            ac_service_package.updated_by = userID
+            ac_service_package.save()
+            return response.json(0)
+
+        except AgentCloudServicePackage.DoesNotExist:
+            return response.json(173)
+        except Exception as e:
+            return response.json({'error': str(e)}, status=500)
+
+    def del_agent_service_package(self, request_dict, response):
+        """
+        删除代理云服务套餐
+        @param userID: 用户ID(执行删除操作的用户)
+        @param request_dict: 请求参数
+        @request_dict package_id: 代理服务id
+        @param response: 响应对象
+        @return:
+        """
+        id = request_dict.get('id', None)
+        if not id:
+            return response.json(444, 'Missing package_id')
+        try:
+            ac_service_package = AgentCloudServicePackage.objects.get(pk=id)
+            ac_service_package.delete()
+            return response.json(0)
+
+        except AgentCloudServicePackage.DoesNotExist:
+            return response.json(173, 'Package does not exist.')
+
+        except Exception as e:
+            return response.json(500, {'error': str(e)})