Browse Source

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	apps/account/views.py
#	apps/agent/views.py
hujingpei 4 years ago
parent
commit
cdca21e80a
3 changed files with 14 additions and 8 deletions
  1. 1 1
      apps/account/views.py
  2. 6 5
      apps/agent/views.py
  3. 7 2
      uis/views/agent/index.html

+ 1 - 1
apps/account/views.py

@@ -247,7 +247,7 @@ class StoreTreeView(APIView):
                 'field': 'agent',
                 'field': 'agent',
                 'children': [],
                 'children': [],
             }
             }
-            stores = Store.objects.filter(agent_id=agent['id'], check_user__isnull=False, enable=True).values('id', 'name')
+            stores = Store.objects.filter(agent_id=agent['id'],id__in=request.user.get_manager_range(),check_user__isnull=False, enable=True).values('id', 'name')
             for store in stores:
             for store in stores:
                 manage_store = ManageStoreUser.objects.filter(manage_user_id=id, store_id=store['id']).first()
                 manage_store = ManageStoreUser.objects.filter(manage_user_id=id, store_id=store['id']).first()
                 checked = manage_store and True or False
                 checked = manage_store and True or False

+ 6 - 5
apps/agent/views.py

@@ -13,10 +13,9 @@ from apps.log.models import BizLog
 from .models import GeneralAgent, Agent, Store
 from .models import GeneralAgent, Agent, Store
 from .serializers import GeneralAgentSerializer, AgentSerializer, StoreSerializer
 from .serializers import GeneralAgentSerializer, AgentSerializer, StoreSerializer
 from .filters import GeneralAgentFilter, AgentFilter, StoreFilter
 from .filters import GeneralAgentFilter, AgentFilter, StoreFilter
-from utils.permission import isLogin, permission_required
+from utils.permission import isLogin, check_permission, permission_required
 from apps.agent.serializers import AgentComboboxSerializer, StoreComboboxSerializer, GeneralAgentComboboxSerializer
 from apps.agent.serializers import AgentComboboxSerializer, StoreComboboxSerializer, GeneralAgentComboboxSerializer
 
 
-
 class GeneralAgentViewSet(CustomModelViewSet):
 class GeneralAgentViewSet(CustomModelViewSet):
     permission_classes = [isLogin, ]
     permission_classes = [isLogin, ]
     queryset = GeneralAgent.objects.filter()
     queryset = GeneralAgent.objects.filter()
@@ -24,7 +23,9 @@ class GeneralAgentViewSet(CustomModelViewSet):
 
 
     @permission_required('agent.view_agent')
     @permission_required('agent.view_agent')
     def filter_queryset(self, queryset):
     def filter_queryset(self, queryset):
-        queryset = queryset.filter(Q(id=self.request.user.general_agent_id) | Q(create_user=self.request.user))
+        queryset = queryset.filter(create_user=self.request.user)
+        if self.request.user.general_agent:
+            queryset = queryset.filter(id=self.request.user.general_agent.id)
         f = GeneralAgentFilter(self.request.GET, queryset=queryset)
         f = GeneralAgentFilter(self.request.GET, queryset=queryset)
         return f.qs
         return f.qs
 
 
@@ -101,10 +102,10 @@ class StoreViewSet(CustomModelViewSet):
         super(StoreViewSet, self).perform_destroy(instance)
         super(StoreViewSet, self).perform_destroy(instance)
         return response_ok()
         return response_ok()
 
 
-    @permission_required('agent.check_store')
     @action(methods=['post'], detail=True)
     @action(methods=['post'], detail=True)
     def check(self, request, pk):
     def check(self, request, pk):
         # 审核
         # 审核
+        check_permission(request, 'agent.check_store')
         status = request.POST.get('status')
         status = request.POST.get('status')
         try:
         try:
             with transaction.atomic():
             with transaction.atomic():
@@ -119,7 +120,7 @@ class StoreViewSet(CustomModelViewSet):
                 instance.check_time = timezone.now()
                 instance.check_time = timezone.now()
                 instance.save()
                 instance.save()
                 BizLog.objects.addnew(request.user, BizLog.INSERT,
                 BizLog.objects.addnew(request.user, BizLog.INSERT,
-                                  u'审核门店[%s]状态为[%s],id=%d' % (instance.name, status, instance.id))
+                                      u'审核门店[%s]状态为[%s],id=%d' % (instance.name, status, instance.id))
         except CustomError as e:
         except CustomError as e:
             return response_error(e.get_error_msg())
             return response_error(e.get_error_msg())
         except Exception as e:
         except Exception as e:

+ 7 - 2
uis/views/agent/index.html

@@ -152,6 +152,8 @@
             , upload = layui.upload
             , upload = layui.upload
             , admin = layui.admin;
             , admin = layui.admin;
 
 
+        var general_name = "";
+
         table.render({
         table.render({
             elem: '#total_agent_datagrid'
             elem: '#total_agent_datagrid'
             , url: '/agent/general_agent/'
             , url: '/agent/general_agent/'
@@ -226,6 +228,7 @@
                     content: 'general_edit.html?id=' + data.id
                     content: 'general_edit.html?id=' + data.id
                 });
                 });
             }else if(obj.event === 'showAgent'){
             }else if(obj.event === 'showAgent'){
+                general_name = data.name;
                 table.reload('agent_datagrid', {
                 table.reload('agent_datagrid', {
                     where: {general_agent: data.id}
                     where: {general_agent: data.id}
                     , page: {curr: 1}
                     , page: {curr: 1}
@@ -254,10 +257,11 @@
                     });
                     });
                 });
                 });
             } else if (obj.event === 'agent_edit') {
             } else if (obj.event === 'agent_edit') {
+                let title = general_name ? '修改' + `  ${general_name}代理商` : "修改";
                 table.editdata = data;
                 table.editdata = data;
                 layer.open({
                 layer.open({
                     type: 2,
                     type: 2,
-                    title: '修改',
+                    title,
                     shadeClose: false,
                     shadeClose: false,
                     area: ['40%', '50%'],
                     area: ['40%', '50%'],
                     btn: ['保存', '取消'],
                     btn: ['保存', '取消'],
@@ -299,9 +303,10 @@
         });
         });
 
 
         $('#agent_add').on('click', function () {
         $('#agent_add').on('click', function () {
+            let title = general_name ? '添加' + `  ${general_name}代理商` : "添加";
             layer.open({
             layer.open({
                 type: 2,
                 type: 2,
-                title: '添加',
+                title,
                 area: ['40%', '50%'],
                 area: ['40%', '50%'],
                 btn: ['保存', '取消'],
                 btn: ['保存', '取消'],
                 yes: function (index, dom) {
                 yes: function (index, dom) {