安全清单model
This commit is contained in:
parent
c9c7ce6067
commit
ad2ff3bdda
|
@ -1384,3 +1384,36 @@ class Checkjob(models.Model):
|
||||||
content=models.TextField(null=True)#处罚内容
|
content=models.TextField(null=True)#处罚内容
|
||||||
yhtp = models.TextField(null=True, blank=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)
|
||||||
|
|
|
@ -8934,3 +8934,39 @@ def apioffence(req):
|
||||||
obj.delete()
|
obj.delete()
|
||||||
return JsonResponse({"code":1})
|
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