From 00e9198004beca41db5fff0da96f6c7ce0d85d84 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Thu, 9 Jan 2020 09:34:52 +0800 Subject: [PATCH] companys make role,issuper can do add and update something --- groups/templates/groups/base.html | 2 + groups/templates/groups/company.html | 5 ++- groups/templates/groups/company_form.html | 2 +- groups/templates/groups/company_update.html | 6 ++- groups/views.py | 41 +++++++++++++++++---- safesite/views.py | 7 +++- 6 files changed, 51 insertions(+), 12 deletions(-) diff --git a/groups/templates/groups/base.html b/groups/templates/groups/base.html index eb92dbc7..c3929372 100644 --- a/groups/templates/groups/base.html +++ b/groups/templates/groups/base.html @@ -168,6 +168,7 @@ desired effect + {% if request.session.issuper %}
  • 客户类型 @@ -176,6 +177,7 @@ desired effect
  • + {% endif %}
  • diff --git a/groups/templates/groups/company.html b/groups/templates/groups/company.html index 45b34e9d..604bd9d6 100644 --- a/groups/templates/groups/company.html +++ b/groups/templates/groups/company.html @@ -23,9 +23,11 @@
    + {% if request.session.issuper %} + {% endif %}
    @@ -129,7 +131,7 @@ pageSize: 10, //每页的记录行数(*) pageList: [10, 25, 50, 100], //可供选择的每页的行数(*) search: true, //是否显示表格搜索 - strictSearch: true, + strictSearch: false, showColumns: true, //是否显示所有的列(选择显示的列) showRefresh: true, //是否显示刷新按钮 minimumCountColumns: 2, //最少允许的列数 @@ -170,6 +172,7 @@ title: '地址', sortable: true, align: 'center', + searchable: false, }, { field: 'creattime', diff --git a/groups/templates/groups/company_form.html b/groups/templates/groups/company_form.html index 022e8624..0a57e25f 100644 --- a/groups/templates/groups/company_form.html +++ b/groups/templates/groups/company_form.html @@ -28,7 +28,7 @@ {% endfor %} - + diff --git a/groups/templates/groups/company_update.html b/groups/templates/groups/company_update.html index 91986256..3db094af 100644 --- a/groups/templates/groups/company_update.html +++ b/groups/templates/groups/company_update.html @@ -20,6 +20,7 @@ + {% if request.session.issuper %}
    @@ -29,7 +30,10 @@ {% endfor %}
    -
    + + {% else %} + + {% endif %} diff --git a/groups/views.py b/groups/views.py index cf8fdcc7..ea034340 100644 --- a/groups/views.py +++ b/groups/views.py @@ -74,6 +74,8 @@ def login(request): request.session['is_login'] = True request.session['user_id'] = user.id request.session['user_name'] = user.username + if user.issuper==1: + request.session['issuper'] = True #是否是超级管理员 return redirect('/groups/index/') else: return render(request, 'groups/login.html', locals()) @@ -154,6 +156,17 @@ class CompanyCreateView(CreateView): obj.partlink = ',' obj.iscompany = 1 obj.role = role + try: + positiondata = getPosition(companyname) + if positiondata['status'] == '1' and int(positiondata['count']) > 0: + obj.position = positiondata['geocodes'][0] + else: + companyname = companyname.replace('公司', '').replace('责任', '').replace('有限', '') + positiondata = getPosition(companyname) + if positiondata['status'] == '1' and int(positiondata['count']) > 0: + obj.position = positiondata['geocodes'][0] + except: + pass obj.save() adminuser = s_models.User() adminuser.username = admin @@ -341,21 +354,25 @@ def troubleChart(request):#隐患统计图 start = request.GET.get('start') end = request.GET.get('end') if code=='tbpic': - companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() - troublelist = s_models.Trouble.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname') - if start: - troublelist = troublelist.filter(fxsj__gte=start) - if end: - troublelist = troublelist.filter(fxsj__lte=end) - troublelist=troublelist.annotate(number = Count('usecomp')).order_by('-number') + companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) + troublelist = s_models.Trouble.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname') + if start: + troublelist = troublelist.filter(fxsj__gte=start) + if end: + troublelist = troublelist.filter(fxsj__lte=end) + troublelist=troublelist.annotate(number = Count('usecomp')).order_by('-number') - return HttpResponse(json.dumps({'code':1,'data':{'troublelist':list(troublelist)}}), content_type='application/json') + return HttpResponse(json.dumps({'code':1,'data':{'troublelist':list(troublelist)}}), content_type='application/json') def observeChart(request):#行为观察 code = request.GET.get('code') start = request.GET.get('start') end = request.GET.get('end') if code=='obv': companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) observelist = s_models.Observe.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname') if start: observelist = observelist.filter(looktime__gte=start) @@ -371,6 +388,8 @@ def missChart(request):#未遂事件 if code=='miss': companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) misslist = s_models.Miss.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname') if start: misslist = misslist.filter(misstime__gte=start) @@ -387,6 +406,8 @@ def riskChart(request):#风险管控 risks = [] if code=='risk': companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) for i in companys: risk= s_models.RiskAct.objects.filter(usecomp__partid=i.partid) if start: @@ -407,6 +428,8 @@ def trainChart(request):#教育培训 end = request.GET.get('end') if code=='train': companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) trainlist = s_models.Train.objects.filter(usecomp__in=companys,deletemark=1).values('usecomp__partid','usecomp__partname') if start: trainlist = trainlist.filter(starttime__gte=start) @@ -423,6 +446,8 @@ def examChart(request):#在线考试 examjson = [] if code=='exam': companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all() + if request.session.get('issuper'): + companys = s_models.Partment.objects.get(iscompany=1,deletemark=1) examobjs = s_models.ExamTest.objects.all() if start: examobjs = examobjs.filter(starttime__gte=start) diff --git a/safesite/views.py b/safesite/views.py index ef9f2a2b..d8fa9122 100644 --- a/safesite/views.py +++ b/safesite/views.py @@ -3,7 +3,7 @@ from captcha.helpers import captcha_image_url from captcha.models import CaptchaStore from django.shortcuts import render, redirect, render_to_response from django.http import HttpResponse, HttpResponseRedirect, JsonResponse -from .models import User, Trouble, Dickey, Partment, Dicclass, Train, Drill, TroubleAccess, Group, Yjyc, Trainuser, Drilluser, Yjsetup, Menu, Observe, Observeto, Unsafes, Miss, Socertificate, Userprofile, Suggest, Notice, Noticeto, Operation, Operzyry, Fxcs, Operationspjd, Operspxq, Question, ExamPaper, ExamTest, ExamPaperDetail, ExamTestDetail, Questioncat, Safecert, Map, Area, Missto, Suggestflow, Equipment, Inspect, Risk, RiskAct, Risktask, Riskcheck, Report, RiskActTask, Riskcheck2,Resbility,Operproce,Readerblility,ReaderOperproce +from .models import User, Trouble, Dickey, Partment, Dicclass, Train, Drill, TroubleAccess, Group, Yjyc, Trainuser, Drilluser, Yjsetup, Menu, Observe, Observeto, Unsafes, Miss, Socertificate, Userprofile, Suggest, Notice, Noticeto, Operation, Operzyry, Fxcs, Operationspjd, Operspxq, Question, ExamPaper, ExamTest, ExamPaperDetail, ExamTestDetail, Questioncat, Safecert, Map, Area, Missto, Suggestflow, Equipment, Inspect, Risk, RiskAct, Risktask, Riskcheck, Report, RiskActTask, Riskcheck2,Resbility,Operproce,Readerblility,ReaderOperproce,Role from django.template import RequestContext from django.views.decorators.csrf import csrf_exempt from django.core import serializers @@ -4762,6 +4762,11 @@ def apitool(req): i.bsq = i.bsq.replace(','+str(user.userid)+',',',') i.save() return JsonResponse({"code": 1}) + elif a == 'correct_company_role': + for i in Partment.objects.filter(iscompany=1): + i.role=Role.objects.get(id=1) + i.save() + return JsonResponse({"code": 1}) def apinotice(req): a = req.GET.get('a')