From 8fbb764f78c730e4ec6bb81d1551f72a4a641d8b Mon Sep 17 00:00:00 2001 From: caoqianming Date: Tue, 13 Apr 2021 21:57:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=94=A8=E6=88=B7=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E5=B7=A5=E4=BD=9C=E7=B1=BB=E5=88=AB=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test_mini/app.js | 11 +++++----- test_server/crm/models.py | 2 +- test_server/crm/permission.py | 40 +++++++++++++++++------------------ 3 files changed, 27 insertions(+), 26 deletions(-) diff --git a/test_mini/app.js b/test_mini/app.js index 4e9ce27..05eae33 100644 --- a/test_mini/app.js +++ b/test_mini/app.js @@ -9,8 +9,9 @@ App({ // 登录 wx.showLoading({ - title: '', - mask:true + title: '加载中...', + mask:true, + icon:'none' }) wx.login({ success: res => { @@ -19,7 +20,7 @@ App({ if(res.code==200){ this.globalData.token = res.data.token this.globalData.userinfo = res.data.userinfo - + //console.log(res.data.userinfo.perms) // var pages = getCurrentPages() //获取加载的页面 // var currentPage = pages[pages.length - 1] //获取当前页面的对象 // currentPage.showExp() @@ -69,9 +70,9 @@ App({ globalData: { userInfo: {}, userinfo: {}, // 服务器传回的消费者信息 - host: 'https://apitest.ahctc.cn', + //host: 'https://apitest.ahctc.cn', mediahost: 'https://apitest.ahctc.cn', - //host: 'http://127.0.0.1:8000', + host: 'http://127.0.0.1:8000', //mediahost: 'http://127.0.0.1:8000', token : '', } diff --git a/test_server/crm/models.py b/test_server/crm/models.py index 4dc675d..37f8623 100644 --- a/test_server/crm/models.py +++ b/test_server/crm/models.py @@ -17,7 +17,7 @@ class Company(CommonModel): class Meta: verbose_name = '客户企业' verbose_name_plural = verbose_name - unique_together=("name","create_admin") + def __str__(self): return self.name diff --git a/test_server/crm/permission.py b/test_server/crm/permission.py index 089b5c0..eac661e 100644 --- a/test_server/crm/permission.py +++ b/test_server/crm/permission.py @@ -25,21 +25,22 @@ VistorPerms = [ from .spider import getZs def get_consumerperm_list(consumer): perms = list(consumer.role.perms.values_list('code', flat=True)) - if consumer.workscope.can_exam: # 如果是三类考试工作类别不做过期检测 - pass - elif consumer.exceed_date and (consumer.exceed_date < datetime.date(timezone.now())): - if consumer.name and consumer.ID_number1: - candidates = getZs(consumer.name, consumer.ID_number1) - if candidates: - perms.append('account_exceed') + if consumer.workscope: + if consumer.workscope.can_exam: # 如果是三类考试工作类别不做过期检测 + pass + elif consumer.exceed_date and (consumer.exceed_date < datetime.date(timezone.now())): + if consumer.name and consumer.ID_number1: + candidates = getZs(consumer.name, consumer.ID_number1) + if candidates: + perms.append('account_exceed') + else: + # 未通过考试增加30天期限 + newdate = datetime.date(timezone.now() + timedelta(days=30)) + consumer.exceed_date = newdate + consumer.save() else: - # 未通过考试增加30天期限 - newdate = datetime.date(timezone.now() + timedelta(days=30)) - consumer.exceed_date = newdate - consumer.save() - else: - perms.append('account_exceed') - cache.get_or_set('cperms_'+str(consumer.id), perms) + perms.append('account_exceed') + cache.set('cperms_'+str(consumer.id), perms, 60*60) return perms class MyPermission(RbacPermission): @@ -54,16 +55,15 @@ class MyPermission(RbacPermission): perms = [] # if 'perms' in request.session: # perms = request.session['perms'] - if isinstance(request.user,UserProfile): # 如果是管理员表 + if isinstance(request.user, UserProfile): # 如果是管理员表 # perms = get_permission_list(request.user) return True - elif isinstance(request.user,Consumer): - if cache.get('cperms_'+str(request.user.id)): - perms = cache.get('cperms_'+str(request.user.id)) - else: + elif isinstance(request.user, Consumer): # 如果是客户 + perms = cache.get('cperms_'+str(request.user.id), None) + if not perms: perms = get_consumerperm_list(request.user) if perms: - if 'account_exceed' in perms: #账户过期 + if 'account_exceed' in perms: # 账户过期 if request.user.exceed_date and (request.user.exceed_date >= datetime.date(timezone.now())): pass else: