安全清单model
This commit is contained in:
parent
c9c7ce6067
commit
ad2ff3bdda
|
@ -1383,4 +1383,37 @@ class Checkjob(models.Model):
|
|||
pmpeople=models.ManyToManyField(User,related_name='bcfr')#被处罚人员
|
||||
content=models.TextField(null=True)#处罚内容
|
||||
yhtp = models.TextField(null=True, blank=True)
|
||||
zghtp = models.TextField(null=True, blank=True)
|
||||
zghtp = models.TextField(null=True, blank=True)
|
||||
|
||||
|
||||
class WorkList(models.Model):
|
||||
"""
|
||||
安全清单
|
||||
"""
|
||||
user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="责任人")
|
||||
usecomp = models.ForeignKey(Partment, on_delete=models.CASCADE, verbose_name="所属公司")
|
||||
name = models.CharField('清单名称')
|
||||
createtime = models.DateTimeField(default=timezone.now, verbose_name="创建时间")
|
||||
updatetime = models.DateTimeField(auto_now=True)
|
||||
|
||||
|
||||
class WorkItem(models.Model):
|
||||
"""
|
||||
清单项目
|
||||
"""
|
||||
worklist = models.ForeignKey(WorkList, on_delete=models.CASCADE, verbose_name="所属清单")
|
||||
name = models.TextField('清单项目名称')
|
||||
type = models.IntegerField(default=1) # 默认是责任,2是指标 ,需反馈
|
||||
createtime = models.DateTimeField(default=timezone.now, verbose_name="创建时间")
|
||||
updatetime = models.DateTimeField(auto_now=True)
|
||||
|
||||
class WorkFeedBack(models.Model):
|
||||
"""
|
||||
清单反馈记录
|
||||
"""
|
||||
user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="反馈人")
|
||||
workitem = models.ForeignKey(WorkItem, on_delete=models.SET_NULL, null=True, blank=True)
|
||||
isdone = models.IntegerField(default=1) # 默认是完成,0是未完成
|
||||
content = models.TextField('反馈内容')
|
||||
createtime = models.DateTimeField(default=timezone.now, verbose_name="创建时间")
|
||||
updatetime = models.DateTimeField(auto_now=True)
|
||||
|
|
|
@ -8933,4 +8933,40 @@ def apioffence(req):
|
|||
obj = Offence.objects.get(id=data['id'])
|
||||
obj.delete()
|
||||
return JsonResponse({"code":1})
|
||||
|
||||
|
||||
|
||||
@apicheck_login
|
||||
def apiworklist(req):
|
||||
a = req.GET.get('a')
|
||||
userid = req.session['userid']
|
||||
companyid = getcompany(userid)
|
||||
if a == 'listall':
|
||||
objs = WorkList.objects.filter(usecomp__partid=companyid)
|
||||
if req.GET.get('search', None):
|
||||
objs = objs.filter(Q(user__name__contains=req.GET.get('search'))|Q(name__contains=req.GET.get('search')))
|
||||
total = objs.count()
|
||||
startnum, endnum = fenye(req)
|
||||
objs = objs.order_by('-createtime')[startnum:endnum].values('id', 'name', 'user__name', 'createtime', 'updatetime')
|
||||
return HttpResponse(transjson(total, objs), content_type="application/json")
|
||||
elif a == 'add':
|
||||
data = json.loads(req.body.decode('utf-8'))
|
||||
user = User.objects.get(userid=userid)
|
||||
data['user'] = user
|
||||
data['usecomp'] = user.usecomp
|
||||
instance = WorkList(**data)
|
||||
instance.save()
|
||||
return JsonResponse({"code":1})
|
||||
elif a == 'detail':
|
||||
id = req.GET.get('id')
|
||||
obj = Offence.objects.filter(id=id)
|
||||
res = obj.values('id', 'type', 'dept', 'area', 'parter', 'reporter', 'reporter__name', 'createtime', 'area__name', 'happentime', 'description', 'imgs', 'post', 'place')[0]
|
||||
if res['imgs']:
|
||||
res['imgs'] = res['imgs'].split('?')
|
||||
return HttpResponse(json.dumps(res, cls=MyEncoder), content_type="application/json")
|
||||
elif a == 'del':
|
||||
data = json.loads(req.body.decode('utf-8'))
|
||||
obj = Offence.objects.get(id=data['id'])
|
||||
obj.delete()
|
||||
return JsonResponse({"code":1})
|
||||
|
||||
|
Loading…
Reference in New Issue