隐患整改部门筛选导出
This commit is contained in:
parent
b885045f55
commit
e4abd4f05f
|
@ -0,0 +1,32 @@
|
|||
# Generated by Django 2.2.8 on 2020-09-29 14:23
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('safesite', '0360_auto_20200927_2235'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
# migrations.RemoveField(
|
||||
# model_name='companyinfo',
|
||||
# name='liaison_fax',
|
||||
# ),
|
||||
migrations.AlterField(
|
||||
model_name='filemanage',
|
||||
name='accessorytype',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='filemanage',
|
||||
name='maragename',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='filemanage',
|
||||
name='versionnum',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,142 @@
|
|||
# Generated by Django 2.2.8 on 2020-10-12 08:43
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('safesite', '0361_auto_20200929_1423'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
# migrations.RemoveField(
|
||||
# model_name='companyinfo',
|
||||
# name='liaison_fax',
|
||||
# ),
|
||||
migrations.AlterField(
|
||||
model_name='checkjob',
|
||||
name='yhtp',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='checkjob',
|
||||
name='zghtp',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='checkproject',
|
||||
name='checktitle',
|
||||
field=models.TextField(),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='checktable',
|
||||
name='checktitle',
|
||||
field=models.TextField(),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='dickey',
|
||||
name='detail',
|
||||
field=models.TextField(default=''),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='drill',
|
||||
name='material',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='drill',
|
||||
name='otherparticipant',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='map',
|
||||
name='pic',
|
||||
field=models.TextField(blank=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='miss',
|
||||
name='missimg',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='myschedule',
|
||||
name='name',
|
||||
field=models.CharField(max_length=200, verbose_name='名称'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='notice',
|
||||
name='material',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='observe',
|
||||
name='lookimg',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='operation',
|
||||
name='zyimg',
|
||||
field=models.TextField(default=''),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='operation',
|
||||
name='zyimg2',
|
||||
field=models.TextField(default=''),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='question',
|
||||
name='mark',
|
||||
field=models.TextField(blank=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='relation',
|
||||
name='remark',
|
||||
field=models.CharField(blank=True, max_length=200, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='safecert',
|
||||
name='url',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='socertificate',
|
||||
name='url',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='suggest',
|
||||
name='jyimg',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='suggest',
|
||||
name='shyj',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='train',
|
||||
name='material',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='trainuser',
|
||||
name='opinion',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='trouble',
|
||||
name='material',
|
||||
field=models.TextField(blank=True, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='trouble',
|
||||
name='yhtp',
|
||||
field=models.TextField(blank=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='trouble',
|
||||
name='zghtp',
|
||||
field=models.TextField(blank=True),
|
||||
),
|
||||
]
|
|
@ -64,7 +64,7 @@ class Map(models.Model):
|
|||
# )
|
||||
id = models.AutoField(primary_key=True)
|
||||
name = models.CharField(max_length=50)
|
||||
pic = models.CharField(max_length=1000, blank=True)
|
||||
pic = models.TextField(blank=True)
|
||||
parent = models.ForeignKey(
|
||||
'self', blank=True, null=True, on_delete=models.CASCADE)
|
||||
link = models.TextField(null=True, blank=True)
|
||||
|
@ -158,7 +158,7 @@ class Dickey(models.Model): # 字典
|
|||
'self', blank=True, null=True, on_delete=models.CASCADE)
|
||||
usecomps = models.TextField(default=',1,') # 所用公司
|
||||
nousecomps = models.TextField(default='') # 不用公司
|
||||
detail = models.CharField(max_length=1000, default='')
|
||||
detail = models.TextField(default='')
|
||||
deletemark = models.IntegerField(default='1')
|
||||
creattime = models.DateTimeField(default=timezone.now)
|
||||
modifytime = models.DateTimeField(auto_now=True)
|
||||
|
@ -210,8 +210,8 @@ class Trouble(models.Model): # 隐患排查
|
|||
zgms = models.TextField(blank=True)
|
||||
yyfx = models.TextField(blank=True)
|
||||
zgcs = models.TextField(blank=True)
|
||||
yhtp = models.CharField(max_length=1000, blank=True)
|
||||
zghtp = models.CharField(max_length=1000, blank=True)
|
||||
yhtp = models.TextField(blank=True)
|
||||
zghtp = models.TextField(blank=True)
|
||||
yhzt = models.IntegerField(choices=ZT_CHOICES, null=True, blank=True)
|
||||
tbsj = models.DateTimeField(default=timezone.now)
|
||||
zgbm = models.ForeignKey(
|
||||
|
@ -223,7 +223,7 @@ class Trouble(models.Model): # 隐患排查
|
|||
zgsj = models.DateTimeField(null=True, blank=True)
|
||||
pgsh = models.ManyToManyField(
|
||||
User, related_name='pgsh', through='TroubleAccess') # 评估审核
|
||||
material = models.CharField(max_length=1000, null=True, blank=True)
|
||||
material = models.TextField(null=True, blank=True)
|
||||
todouser = models.ForeignKey(
|
||||
User, related_name='todor', null=True, blank=True, on_delete=models.CASCADE)
|
||||
usecomp = models.ForeignKey(
|
||||
|
@ -286,13 +286,13 @@ class Drill(models.Model): # 应急演练
|
|||
commander = models.CharField(max_length=200, null=True, blank=True)
|
||||
chief = models.ForeignKey(
|
||||
User, on_delete=models.CASCADE, null=True, blank=True)
|
||||
otherparticipant = models.CharField(max_length=1000, null=True, blank=True)
|
||||
otherparticipant = models.TextField(null=True, blank=True)
|
||||
deletemark = models.IntegerField(default='1')
|
||||
state = models.IntegerField(default='0') # 默认未评估
|
||||
participantnum = models.IntegerField(default='1', null=True, blank=True)
|
||||
knownum = models.IntegerField(default='1', null=True, blank=True)
|
||||
plan = models.TextField(null=True, blank=True)
|
||||
material = models.CharField(max_length=1000, null=True, blank=True)
|
||||
material = models.TextField(null=True, blank=True)
|
||||
|
||||
|
||||
class Drilluser(models.Model): # 演练参加人表
|
||||
|
@ -322,7 +322,7 @@ class Observe(models.Model): # 行为观察
|
|||
makeresult = models.TextField(null=True, blank=True) # 整改情况
|
||||
safecontent = models.TextField(null=True, blank=True)
|
||||
deletemark = models.IntegerField(default='1')
|
||||
lookimg = models.CharField(max_length=1000, null=True, blank=True)
|
||||
lookimg = models.TextField(null=True, blank=True)
|
||||
unsafe = models.ManyToManyField(
|
||||
Dickey, related_name='baqxw', through='Unsafes')
|
||||
record1 = models.TextField(null=True, blank=True) # 交流情况
|
||||
|
@ -364,7 +364,7 @@ class Miss(models.Model): # 未遂事件
|
|||
usecomp = models.ForeignKey(
|
||||
Partment, default='1', on_delete=models.CASCADE)
|
||||
deletemark = models.IntegerField(default='1')
|
||||
missimg = models.CharField(max_length=1000, null=True, blank=True)
|
||||
missimg = models.TextField(null=True, blank=True)
|
||||
prevent = models.TextField(null=True, blank=True) # 防范措施
|
||||
lesson = models.TextField(null=True, blank=True) # 经验教训
|
||||
reads = models.ManyToManyField(
|
||||
|
@ -471,7 +471,7 @@ class Socertificate(models.Model): # 特种作业证书
|
|||
yxqjssj = models.DateField(null=True, blank=True)
|
||||
sjfssj = models.DateField(null=True, blank=True)
|
||||
zszt = models.IntegerField(choices=type_choices, null=True, blank=True)
|
||||
url = models.CharField(max_length=1000, null=True, blank=True)
|
||||
url = models.TextField(null=True, blank=True)
|
||||
|
||||
|
||||
class Safecert(models.Model): # 安全资格证书
|
||||
|
@ -495,7 +495,7 @@ class Safecert(models.Model): # 安全资格证书
|
|||
yxqkssj = models.DateField(null=True, blank=True)
|
||||
yxqjssj = models.DateField(null=True, blank=True)
|
||||
zszt = models.IntegerField(choices=type_choices, null=True, blank=True)
|
||||
url = models.CharField(max_length=1000, null=True, blank=True)
|
||||
url = models.TextField(null=True, blank=True)
|
||||
|
||||
|
||||
class Suggest(models.Model): # 合理化建议
|
||||
|
@ -514,7 +514,7 @@ class Suggest(models.Model): # 合理化建议
|
|||
Partment, related_name='jybm', on_delete=models.CASCADE) # 建议部门
|
||||
jyr = models.ForeignKey(User, related_name='jyr',
|
||||
on_delete=models.CASCADE) # 建议人
|
||||
jyimg = models.CharField(max_length=1000, null=True, blank=True)
|
||||
jyimg = models.TextField(null=True, blank=True)
|
||||
submittime = models.DateTimeField(default=timezone.now)
|
||||
modifytime = models.DateTimeField(auto_now=True)
|
||||
usecomp = models.ForeignKey(
|
||||
|
@ -540,7 +540,7 @@ class Suggest(models.Model): # 合理化建议
|
|||
jydd = models.CharField(max_length=200, null=True, blank=True)
|
||||
yjwcsj = models.DateTimeField(null=True, blank=True) # 预计完成时间
|
||||
sjwcsj = models.DateTimeField(null=True, blank=True) # 实际完成时间
|
||||
shyj = models.CharField(max_length=1000, null=True, blank=True) # 审核意见
|
||||
shyj = models.TextField(null=True, blank=True) # 审核意见
|
||||
accept = models.IntegerField(default=1)
|
||||
|
||||
|
||||
|
@ -566,7 +566,7 @@ class Notice(models.Model): # 资料/公告/通知
|
|||
modifytime = models.DateTimeField(u'更新时间', default=timezone.now)
|
||||
tousers = models.ManyToManyField(
|
||||
User, related_name='tzry', through='Noticeto')
|
||||
material = models.CharField(max_length=1000, null=True, blank=True)
|
||||
material = models.TextField(null=True, blank=True)
|
||||
deletemark = models.IntegerField(default='1')
|
||||
reads = models.IntegerField(default=0)
|
||||
isgg = models.IntegerField(default='1') #1是公告,0是通知,2是资料文件
|
||||
|
@ -610,8 +610,8 @@ class Operation(models.Model): # 作业表
|
|||
kssj = models.DateTimeField(default=timezone.now)
|
||||
jssj = models.DateTimeField(default=timezone.now)
|
||||
submittime = models.DateTimeField(u'创建时间', default=timezone.now)
|
||||
zyimg = models.CharField(max_length=1000, default='')
|
||||
zyimg2 = models.CharField(max_length=1000, default='')
|
||||
zyimg = models.TextField(default='')
|
||||
zyimg2 = models.TextField(default='')
|
||||
deletemark = models.IntegerField(default='1')
|
||||
zyzt = JSONField()
|
||||
fxcs = models.TextField()
|
||||
|
@ -706,7 +706,7 @@ class Question(models.Model): # 题库
|
|||
Questioncat, blank=True, null=True, on_delete=models.CASCADE)
|
||||
station = models.ForeignKey(
|
||||
Group, blank=True, null=True, on_delete=models.CASCADE) # 岗位
|
||||
mark = models.CharField(max_length=1000, blank=True)
|
||||
mark = models.TextField(blank=True)
|
||||
answer = JSONField()
|
||||
right = JSONField()
|
||||
resolution = models.TextField()
|
||||
|
@ -817,7 +817,7 @@ class Train(models.Model): # 培训表
|
|||
participantnum = models.IntegerField(default='1', null=True, blank=True)
|
||||
knownum = models.IntegerField(default='1', null=True, blank=True)
|
||||
pxxg = models.TextField(null=True, blank=True)
|
||||
material = models.CharField(max_length=1000, null=True, blank=True)
|
||||
material = models.TextField(null=True, blank=True)
|
||||
checkqr = models.CharField(max_length=200, blank=True, null=True)
|
||||
examtest = models.ForeignKey(
|
||||
ExamTest, on_delete=models.CASCADE, null=True, blank=True)
|
||||
|
@ -832,7 +832,7 @@ class Trainuser(models.Model): # 培训人员记录
|
|||
qdsj = models.DateTimeField(null=True, blank=True)
|
||||
jsqd = models.DateTimeField(verbose_name='结束签到时间',null=True,blank=True)
|
||||
isnew = models.IntegerField(default=0)
|
||||
opinion = models.CharField(max_length=1000, null=True, blank=True)
|
||||
opinion = models.TextField(null=True, blank=True)
|
||||
|
||||
|
||||
class Relation(models.Model): # 各模块关系表,没用到
|
||||
|
@ -846,7 +846,7 @@ class Relation(models.Model): # 各模块关系表,没用到
|
|||
Observe, on_delete=models.CASCADE, null=True, blank=True)
|
||||
miss = models.ForeignKey(
|
||||
Miss, on_delete=models.CASCADE, null=True, blank=True)
|
||||
remark = models.CharField(max_length=1000, null=True, blank=True)
|
||||
remark = models.CharField(max_length=200, null=True, blank=True)
|
||||
|
||||
|
||||
class RiskAct(models.Model): # 风险点表
|
||||
|
@ -1042,7 +1042,7 @@ class EdulessonWatch(models.Model): # 在线视频观看情况表
|
|||
from django_celery_beat.models import PeriodicTask, IntervalSchedule, CrontabSchedule
|
||||
|
||||
class MySchedule(models.Model):
|
||||
name = models.CharField('名称', max_length=1000)
|
||||
name = models.CharField('名称', max_length=200)
|
||||
typeset = models.CharField('类型', default=1,max_length=10)
|
||||
interval = models.ForeignKey(IntervalSchedule, null=True, blank=True, on_delete=models.SET_NULL)
|
||||
crontab = models.ForeignKey(CrontabSchedule, null=True, blank=True, on_delete=models.SET_NULL)
|
||||
|
@ -1263,7 +1263,7 @@ class ReaderOperproce(models.Model):
|
|||
#检查项目
|
||||
class Checkproject(models.Model):
|
||||
id =models.AutoField(primary_key=True)#主键
|
||||
checktitle=models.CharField(max_length=1000)#检查项目标题
|
||||
checktitle=models.TextField()#检查项目标题
|
||||
checkcontent=models.TextField()#检查内容
|
||||
requirements=models.TextField()#检查要求
|
||||
createuser = models.ForeignKey(User,on_delete=models.CASCADE)#创建人
|
||||
|
@ -1273,7 +1273,7 @@ class Checkproject(models.Model):
|
|||
#检查表
|
||||
class Checktable(models.Model):
|
||||
id =models.AutoField(primary_key=True)#主键
|
||||
checktitle=models.CharField(max_length=1000)#检查表名
|
||||
checktitle=models.TextField()#检查表名
|
||||
checkprjtype=models.ManyToManyField(Checkproject)#检查项目多选
|
||||
checkcontent=models.TextField()#检查内容
|
||||
createuser = models.ForeignKey(User,on_delete=models.CASCADE)#创建人
|
||||
|
@ -1320,5 +1320,5 @@ class Checkjob(models.Model):
|
|||
yanshouren=models.ForeignKey(User,related_name='yanshouren',on_delete=models.CASCADE,null=True)#验收人员
|
||||
pmpeople=models.ManyToManyField(User,related_name='bcfr')#被处罚人员
|
||||
content=models.TextField(null=True)#处罚内容
|
||||
yhtp = models.CharField(max_length=1000,null=True, blank=True)
|
||||
zghtp = models.CharField(max_length=1000,null=True, blank=True)
|
||||
yhtp = models.TextField(null=True, blank=True)
|
||||
zghtp = models.TextField(null=True, blank=True)
|
|
@ -1919,6 +1919,8 @@ def troublehandle(req):
|
|||
fxr = req.GET.get('fxr')
|
||||
qssj = req.GET.get('qssj')
|
||||
jssj = req.GET.get('jssj')
|
||||
zgbm = req.GET.get('zgbm')
|
||||
fxrname = req.GET.get('fxrname',None)
|
||||
if yhzt != '' and yhzt != None:
|
||||
a = a.filter(yhzt=yhzt)
|
||||
if yhlx:
|
||||
|
@ -1940,6 +1942,12 @@ def troublehandle(req):
|
|||
a = a.filter(fxsj__gte=qssj)
|
||||
if jssj:
|
||||
a = a.filter(fxsj__lte=jssj)
|
||||
if zgbm:
|
||||
parts = Partment.objects.filter(
|
||||
partlink__contains=','+str(zgbm)+',') | Partment.objects.filter(partid=zgbm)
|
||||
a = a.filter(Q(zgbm__in=parts) | Q(fxbm__in=parts, zgbm=None))
|
||||
if fxrname:
|
||||
a = a.filter(fxr__name=fxrname)
|
||||
res = exportxlsx('yh', a)
|
||||
return res
|
||||
elif a == 'del':
|
||||
|
|
Loading…
Reference in New Issue