Browse Source

优化跟踪记录

wushaodong 4 năm trước cách đây
mục cha
commit
6865761949
3 tập tin đã thay đổi với 22 bổ sung9 xóa
  1. 2 1
      apps/customer/urls.py
  2. 19 7
      apps/customer/views.py
  3. 1 1
      uis/views/customer/detail.html

+ 2 - 1
apps/customer/urls.py

@@ -7,7 +7,7 @@ from .views import *
 urlpatterns = [
     url(r'^dict/$', ReportCustomerDictView.as_view()),
     url(r'^get_user/$', UserDictView.as_view()),
-    url(r'^stage_count/$', StageCountView.as_view()),
+    url(r'^stage_count/$', StageCountView.as_view()), # 客户阶段提醒
 
 ]
 
@@ -15,4 +15,5 @@ router = SimpleRouter()
 router.register(r'report_customer', ReportCustomerViewSet) # 客户报备
 router.register(r'new_customer', NewCustomerViewSet) # 潜客跟踪
 router.register(r'review', ReviewViewSet) # 潜客审核
+router.register(r'get_review', GetReviewViewSet) # 潜客跟踪记录
 urlpatterns += router.urls

+ 19 - 7
apps/customer/views.py

@@ -155,10 +155,12 @@ class NewCustomerViewSet(CustomModelViewSet):
     queryset = NewCustomer.objects.filter()
     serializer_class = NewCustomerSerializer
 
+    @permission_required('customer.view_new_customer')
     def filter_queryset(self, queryset):
         queryset = queryset.filter(
             Q(store_id__in=self.request.user.get_manager_range()) |
-            Q(create_user=self.request.user)
+            Q(create_user=self.request.user) |
+            Q(track_user=self.request.user)
         )
         f = NewCustomerFilter(self.request.GET, queryset=queryset)
         return f.qs
@@ -185,7 +187,7 @@ class NewCustomerViewSet(CustomModelViewSet):
                 raise CustomError('当前客户信息有误,请刷新重试!')
             data = {
                 'customer':instance.id,
-                'store':request.user.store.id,
+                'store':instance.store.id,
                 'create_user':request.user.id,
                 'description':description,
                 'instruction':instruction or None,
@@ -292,6 +294,7 @@ class NewCustomerViewSet(CustomModelViewSet):
 class StageCountView(APIView):
     permission_classes = [isLogin]
 
+    @permission_required('customer.view_new_customer')
     def get(self,request):
         data = []
         stage_progress = Option.objects.filter(type=Option.STAGE_PROGRESS, enable=True).order_by('sort')
@@ -312,16 +315,25 @@ class StageCountView(APIView):
         return response_ok(data)
 
 
+class GetReviewViewSet(CustomModelViewSet):
+    permission_classes = [isLogin]
+    queryset = Review.objects.filter()
+    serializer_class = ReviewSerializer
+
+    @permission_required('customer.view_new_customer')
+    def filter_queryset(self, queryset):
+        queryset = queryset.filter()
+        f = ReviewFilter(self.request.GET, queryset=queryset)
+        return f.qs
+
 class ReviewViewSet(CustomModelViewSet):
     permission_classes = [isLogin]
-    queryset = Review.objects.filter(Q(instruction__isnull=False) | Q(is_giveup=True))
+    queryset = Review.objects.filter()
     serializer_class = ReviewSerializer
 
+    @permission_required('customer.check_review')
     def filter_queryset(self, queryset):
-        queryset = queryset.filter(
-            Q(store_id__in=self.request.user.get_manager_range()) |
-            Q(create_user=self.request.user)
-        )
+        queryset = queryset.filter(store_id__in=self.request.user.get_manager_range(), instruction__isnull=False)
         f = ReviewFilter(self.request.GET, queryset=queryset)
         return f.qs
 

+ 1 - 1
uis/views/customer/detail.html

@@ -96,7 +96,7 @@
         var id = layui.view.getParameterByName('customer');
         table.render({
             elem: '#customer_datagrid'
-            , url: '/customer/review/?customer=' + id
+            , url: '/customer/get_review/?customer=' + id
             , cols: [[
                 {field: 'create_user_text', title: '跟踪人', width: 100}
                 , {field: 'create_time_f', title: "跟踪时间", width: 150}