diff --git a/groups.zip b/groups.zip
deleted file mode 100644
index 59b0273d..00000000
Binary files a/groups.zip and /dev/null differ
diff --git a/safesite/migrations/0286_auto_20191030_1632.py b/safesite/migrations/0286_auto_20191030_1632.py
new file mode 100644
index 00000000..a75b4dab
--- /dev/null
+++ b/safesite/migrations/0286_auto_20191030_1632.py
@@ -0,0 +1,23 @@
+# Generated by Django 2.1.5 on 2019-10-30 16:32
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0285_remove_companyinfo_liaison_fax'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ migrations.AddField(
+ model_name='equipment',
+ name='riskact',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='safesite.RiskAct'),
+ ),
+ ]
diff --git a/safesite/models.py b/safesite/models.py
index 7885bff6..9a8edf16 100644
--- a/safesite/models.py
+++ b/safesite/models.py
@@ -660,6 +660,24 @@ class Relation(models.Model):#各模块关系表,没用到
remark = models.CharField(max_length=1000,null=True,blank=True)
+class RiskAct(models.Model):#风险点表
+ id = models.AutoField(primary_key=True)
+ area = models.ForeignKey(Area,on_delete=models.CASCADE,null=True,blank=True,related_name='riskactarea')
+ place = models.CharField(max_length=50,null=True,blank=True)
+ type = models.ForeignKey(Dickey,on_delete=models.CASCADE,null=True,blank=True)
+ name = models.CharField(max_length=200,null=True,blank=True)
+ createtime = models.DateTimeField(default = timezone.now)
+ level = models.CharField(max_length=50,null=True,blank=True)
+ usecomp = models.ForeignKey(Partment,on_delete=models.CASCADE,null=True,blank=True)
+ qrcode = models.CharField(max_length=200,blank=True,null=True)
+ gkcj = models.CharField(max_length=50,null=True,blank=True)#从此往下以风险点来管控
+ zrbm = models.ForeignKey(Partment,related_name='riskzrbm2',on_delete=models.CASCADE,null=True,blank=True)
+ zrr = models.ForeignKey(User,related_name='riskzrr2',on_delete=models.CASCADE,null=True,blank=True)
+ group = models.ForeignKey(Group,on_delete=models.CASCADE,null=True,blank=True)
+ modifytime = models.DateTimeField(auto_now = True)
+ tasktype = models.IntegerField(default=0)
+ tasktime = models.DateTimeField(null=True,blank=True) #最后任务开始时间
+
class Equipment(models.Model):#设备表
id = models.AutoField(primary_key=True)
num = models.CharField(max_length=30,null=True,blank=True)
@@ -686,6 +704,7 @@ class Equipment(models.Model):#设备表
zrr = models.ForeignKey(User,on_delete=models.CASCADE,null=True,blank=True)
img = models.CharField(max_length=1000,blank=True,null=True)
qrcode = models.CharField(max_length=200,blank=True,null=True)
+ riskact = models.ForeignKey(RiskAct,null=True,blank=True,on_delete=models.CASCADE)
class Inspect(models.Model):#设备巡检记录
id = models.AutoField(primary_key=True)
@@ -697,24 +716,6 @@ class Inspect(models.Model):#设备巡检记录
user = models.ForeignKey(User,blank=True,null=True,on_delete=models.CASCADE)
usecomp = models.ForeignKey(Partment,on_delete=models.CASCADE,null=True,blank=True)
trouble = models.ForeignKey(Trouble,on_delete=models.CASCADE,null=True,blank=True)
-
-class RiskAct(models.Model):#风险点表
- id = models.AutoField(primary_key=True)
- area = models.ForeignKey(Area,on_delete=models.CASCADE,null=True,blank=True,related_name='riskactarea')
- place = models.CharField(max_length=50,null=True,blank=True)
- type = models.ForeignKey(Dickey,on_delete=models.CASCADE,null=True,blank=True)
- name = models.CharField(max_length=200,null=True,blank=True)
- createtime = models.DateTimeField(default = timezone.now)
- level = models.CharField(max_length=50,null=True,blank=True)
- usecomp = models.ForeignKey(Partment,on_delete=models.CASCADE,null=True,blank=True)
- qrcode = models.CharField(max_length=200,blank=True,null=True)
- gkcj = models.CharField(max_length=50,null=True,blank=True)#从此往下以风险点来管控
- zrbm = models.ForeignKey(Partment,related_name='riskzrbm2',on_delete=models.CASCADE,null=True,blank=True)
- zrr = models.ForeignKey(User,related_name='riskzrr2',on_delete=models.CASCADE,null=True,blank=True)
- group = models.ForeignKey(Group,on_delete=models.CASCADE,null=True,blank=True)
- modifytime = models.DateTimeField(auto_now = True)
- tasktype = models.IntegerField(default=0)
- tasktime = models.DateTimeField(null=True,blank=True) #最后任务开始时间
class Risk(models.Model):#风险表
tasktype_choices = (
diff --git a/safesite/templates/equipment.html b/safesite/templates/equipment.html
index 1b16082f..bdf61857 100644
--- a/safesite/templates/equipment.html
+++ b/safesite/templates/equipment.html
@@ -64,11 +64,15 @@
|
- |
+ |
+ 选择
+
+
+ |
- |
+ |
保存 |
@@ -192,6 +196,13 @@
$('#cate').combobox('setValue', res.cate__dickeyid)
$('#area').combotree('setValue', res.area__id)
$('#zrbm').combotree('setValue', res.zrbm__partid)
+ $('#fxdinput').val(res.riskact__id)
+ $('#fxdspan').css('color','blue')
+ $('#fxdspan').html(' '+res.riskact__name)
+ if(res.riskact__name==undefined){
+ $('#fxdspan').css('color','red')
+ $('#fxdspan').html(' 未绑定')
+ }
$('#zrr').combobox({ url: 'getuser?partid=' + res.zrbm__partid + '&a=combobox', }).combobox('setValue', res.zrr__userid)
if (res.iskey == 1) {
$('#iskey').prop("checked", true);
@@ -320,4 +331,9 @@
}; //请求完成
xhr.onerror = function (evt) { $.messager.alert('提示', '失败!文件内容有误'); document.getElementById('drfile').value = ''; }; //请求失败
}
+ function choosefxd(){
+ var myh = screen.availHeight * 0.8;
+ var area = $('#area').combotree('getValue')
+ opendg('选择风险点','html/riskact/chose?area='+area,myh)
+ }
\ No newline at end of file
diff --git a/safesite/templates/rights.html b/safesite/templates/rights.html
index 0edf1d27..21637d71 100644
--- a/safesite/templates/rights.html
+++ b/safesite/templates/rights.html
@@ -14,14 +14,15 @@
animate: true,
checkbox: true,
lines: true,
- loadFilter: function (rows) {
- return convertmenu(rows);
+ loadFilter: function (rows) {
+ var rows = convertmenu(rows)
+ return rows;
},
onClick: function (node) {
},
onCheck:function(node){
- console.log($('#rightstree').tree('getChecked', ['checked','indeterminate']))
+ //console.log($('#rightstree').tree('getChecked', ['checked','indeterminate']))
},
onBeforeLoad: function (node, param) {
diff --git a/safesite/templates/riskactchose.html b/safesite/templates/riskactchose.html
new file mode 100644
index 00000000..ca1c8212
--- /dev/null
+++ b/safesite/templates/riskactchose.html
@@ -0,0 +1,68 @@
+
+
\ No newline at end of file
diff --git a/safesite/urls.py b/safesite/urls.py
index e8ae3b25..09d764b9 100644
--- a/safesite/urls.py
+++ b/safesite/urls.py
@@ -88,6 +88,7 @@ urlpatterns = [
path('html/bhr',views.bhrhtml),
path('riskas',views.riskas),
path('html/examhistory//',views.examhistory),
+ path('html/riskact/chose',views.riskactchose),
#html页面
diff --git a/safesite/views.py b/safesite/views.py
index 4a3b9167..427cffab 100644
--- a/safesite/views.py
+++ b/safesite/views.py
@@ -95,6 +95,11 @@ def taskdo(req):
return render(req,'taskdo.html')
def task(req):
return render(req,'task.html')
+def riskactchose(req):
+ area = 0
+ if req.GET.get('area',None):
+ area = req.GET.get('area')
+ return render(req,'riskactchose.html',locals())
def riskactedit(req,id):
return render(req,'riskactedit.html',{'id':id})
def riskactadd(req):
@@ -566,7 +571,7 @@ def apirights(req):
allrights = Group.objects.get(usecomp__partid=companyid,grouptype=0).menulink.split(',')
menus = Menu.objects.exclude(menuid__in=[11,9]).filter(menuid__in = allrights,deletemark=1).order_by('menuid').values('menuid','menucode','parentid','url','menuname','icon').distinct()
for i in menus:
- if str(i['menuid']) in haverights:
+ if str(i['menuid']) in haverights and i['url'] != None:
i['checked']=True
else:
i['checked']=False
@@ -578,6 +583,10 @@ def apirights(req):
rlist = ['11','9']
for i in data:
rlist.append(str(i['id']))
+ # x = i['id']
+ # while Menu.objects.get(menuid=x).parentid != None:
+ # x = Menu.objects.get(menuid=x).parentid.menuid
+ # rlist.append(str(x))
Group.objects.filter(groupid=groupid).update(menulink=','.join(list(set(rlist))))
return JsonResponse({"code":1})
elif a=='have':
@@ -4036,6 +4045,12 @@ def apitool(req):
x['id']=i.partid
m.append(x)
return JsonResponse({'wxgs':m})
+ elif a == 'correct_spjd':
+ for i in Operationspjd.objects.all():
+ if i.spr:
+ i.sprs = [i.spr.userid]
+ i.save()
+ return JsonResponse({"code":1})
@@ -5353,6 +5368,8 @@ def apiequipment(req):
obj.zrbm = Partment.objects.get(partid=data['zrbm'])
if data['zrr']:
obj.zrr = User.objects.get(userid=data['zrr'] )
+ if data['riskact']:
+ obj.riskact = RiskAct.objects.get(id=data['riskact'])
obj.parameter = data['parameter']
obj.usecomp=Partment.objects.get(partid=companyid)
obj.save()
@@ -5370,7 +5387,7 @@ def apiequipment(req):
return JsonResponse({"code":0})
elif a == 'detail':
id = req.GET.get('id')
- a = Equipment.objects.filter(id=id).values('id','num','name','type','oem','udate','fdate','fnum','place','istz','iskey','state','cate__dickeyname','cate__dickeyid','parameter','img','area__name','area__id','zrbm__partid','zrr__userid','zrbm__partname','zrr__name','qrcode')
+ a = Equipment.objects.filter(id=id).values('id','num','name','type','oem','udate','fdate','fnum','place','istz','iskey','state','cate__dickeyname','cate__dickeyid','parameter','img','area__name','area__id','zrbm__partid','zrr__userid','zrbm__partname','zrr__name','qrcode','riskact__name','riskact__id')
return JsonResponse(a[0])
@@ -5475,9 +5492,9 @@ def apiriskact(req):
companyid = getcompany(userid)
if a=='listall':
a = RiskAct.objects.filter(usecomp__partid=companyid)
- if req.GET.get('area'):
+ if int(req.GET.get('area',0)):
a = a.filter(area__id = req.GET.get('area'))
- if req.GET.get('type'):
+ if int(req.GET.get('type',0)):
a = a.filter(type__dickeyid=req.GET.get('type'))
total = a.count()
startnum,endnum=fenye(req)
@@ -5613,8 +5630,14 @@ def apirisk(req):
data = json.loads(req.body.decode('utf-8'))
if req.GET.get('type') == 'equipment':
areaid = data['areaid']
+ equipmentid = data['id']
equipmentname = data['name']
- objs = Risk.objects.filter(usecomp__partid=companyid,riskact__area__id=areaid,riskact__name__contains=equipmentname)
+ objs = Risk.objects.filter(usecomp__partid=companyid)
+ equipment = Equipment.objects.get(id=equipmentid)
+ if equipment.riskact:#如果该设备存在绑定的风险
+ objs = objs.filter(riskact=equipment.riskact)
+ else:
+ objs = objs.filter(riskact__area__id=areaid,riskact__name__contains=equipmentname)
if objs.exists():
return JsonResponse({'code':1,'steps':list(objs.values('id','step','hazard','result','level','riskact__group__groupname','riskact__zrbm__partname','riskact__zrr__name'))})
else: