diff --git a/safesite/migrations/0274_merge_20191011_1415.py b/safesite/migrations/0274_merge_20191011_1415.py new file mode 100644 index 00000000..09c8d344 --- /dev/null +++ b/safesite/migrations/0274_merge_20191011_1415.py @@ -0,0 +1,15 @@ +# Generated by Django 2.1.5 on 2019-10-11 14:15 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('safesite', '0272_auto_20190923_1026'), + ('safesite', '0266_auto_20190917_2314'), + ('safesite', '0273_auto_20191008_1604'), + ] + + operations = [ + ] diff --git a/safesite/migrations/0275_auto_20191011_1415.py b/safesite/migrations/0275_auto_20191011_1415.py new file mode 100644 index 00000000..6786032c --- /dev/null +++ b/safesite/migrations/0275_auto_20191011_1415.py @@ -0,0 +1,33 @@ +# Generated by Django 2.1.5 on 2019-10-11 14:15 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('safesite', '0274_merge_20191011_1415'), + ] + + operations = [ + migrations.AlterField( + model_name='user', + name='headimgurl', + field=models.CharField(blank=True, max_length=200, null=True), + ), + migrations.AlterField( + model_name='user', + name='mpopenid', + field=models.CharField(blank=True, max_length=200, null=True), + ), + migrations.AlterField( + model_name='user', + name='nickname', + field=models.CharField(blank=True, max_length=200, null=True), + ), + migrations.AlterField( + model_name='user', + name='openid', + field=models.CharField(blank=True, max_length=200, null=True), + ), + ] diff --git a/safesite/models.py b/safesite/models.py index 1553234a..ca51d125 100644 --- a/safesite/models.py +++ b/safesite/models.py @@ -51,12 +51,12 @@ class User(models.Model): name = models.CharField(max_length=20) password = models.CharField(max_length=30) ubelongpart = models.ForeignKey(Partment,related_name='upart', on_delete=models.CASCADE) - openid=models.CharField(max_length=200,default='0')#公众号openid - nickname=models.CharField(max_length=200,default='wechartname')#昵称 - headimgurl=models.CharField(max_length=200,default='0')#头像 + openid=models.CharField(max_length=200,null=True,blank=True)#公众号openid + nickname=models.CharField(max_length=200,null=True,blank=True)#昵称 + headimgurl=models.CharField(max_length=200,null=True,blank=True)#头像 issuper=models.IntegerField(default='0')#超管 deletemark=models.IntegerField(default='1') - mpopenid=models.CharField(max_length=200,default='0') #小程序openid + mpopenid=models.CharField(max_length=200,null=True,blank=True) #小程序openid usecomp = models.ForeignKey(Partment,on_delete=models.CASCADE,null=True,blank=True)#所属公司 def __str__(self): return self.username @@ -577,8 +577,8 @@ class ExamTest(models.Model):#考试表 state = models.IntegerField(default=1) #1进行中 exampaper = models.ForeignKey(ExamPaper,on_delete=models.CASCADE) user = models.ManyToManyField(User,through='ExamTestDetail') #考试人员 - starttime = models.DateTimeField(null=True,blank=True) - endtime = models.DateTimeField(null=True,blank=True) + starttime = models.DateTimeField(null=True,blank=True)#最早参加 + endtime = models.DateTimeField(null=True,blank=True)#最迟参加 createtime = models.DateTimeField(default = timezone.now) modifytime = models.DateTimeField(auto_now = True) totalscore=models.IntegerField(default=100) diff --git a/safesite/static/safesite/muban/tm.xlsx b/safesite/static/safesite/muban/tm.xlsx new file mode 100644 index 00000000..842959e5 Binary files /dev/null and b/safesite/static/safesite/muban/tm.xlsx differ diff --git a/safesite/tasks.py b/safesite/tasks.py index 04ca08d8..95f4ecb0 100644 --- a/safesite/tasks.py +++ b/safesite/tasks.py @@ -15,6 +15,7 @@ from .safespider import getTzzs dirname = settings.BASE_DIR +'/safesite/' def getcs(companyid):#获取公司相关参数设置 + print(companyid) return Yjsetup.objects.filter(usecomp__partid=companyid).values()[0] def gettime(x=datetime.datetime.now()): @@ -55,7 +56,10 @@ def yjjs(companyid): else: sbjs = 0 #隐患整改率 - zgjs = a.filter(yhzt__in=[4,5,6]).count()/a.count() + if a.count() != 0: + zgjs = a.filter(yhzt__in=[4,5,6]).count()/a.count() + else: + zgjs = 4 if zgjs == 1: zgjs = 0 elif zgjs>=0.8 and zgjs <1: @@ -92,7 +96,10 @@ def yjjs_px(companyid): #计算培训效果 participantnum = Trainuser.objects.filter(train__in=a).count() knownum = a.aggregate(knownum = Sum('knownum'))['knownum'] - x = knownum/participantnum + if participantnum != 0: + x = knownum/participantnum + else: + x = 0 if x == 1: pxxg = 1 elif 1>x>= 0.9: @@ -149,7 +156,10 @@ def yjjs_yl(companyid): #计算演练效果 participantnum = Drill.objects.filter(drillid__in=a).count() knownum = a.aggregate(knownum = Sum('knownum'))['knownum'] - x = knownum/participantnum + if participantnum != 0: + x = knownum/participantnum + else: + x = 0 if x == 1: ylxg = 1 elif 1>x>= 0.9: diff --git a/safesite/templates/abtrain.html b/safesite/templates/abtrain.html index 27c68d1f..cc5dd2df 100644 --- a/safesite/templates/abtrain.html +++ b/safesite/templates/abtrain.html @@ -69,7 +69,7 @@ -