renwuxiugaiwancheng
This commit is contained in:
parent
6353966737
commit
7c1986b206
|
@ -0,0 +1,49 @@
|
||||||
|
# Generated by Django 2.2.8 on 2020-04-14 10:09
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('safesite', '0330_auto_20200409_1530'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='checkquestion',
|
||||||
|
field=models.CharField(max_length=1000, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='content',
|
||||||
|
field=models.CharField(max_length=500, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='yhtp',
|
||||||
|
field=models.CharField(blank=True, max_length=1000, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='zghtp',
|
||||||
|
field=models.CharField(blank=True, max_length=1000, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='zgjg',
|
||||||
|
field=models.CharField(max_length=500, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checkjob',
|
||||||
|
name='zgyq',
|
||||||
|
field=models.CharField(max_length=500, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='checktable',
|
||||||
|
name='checkcontent',
|
||||||
|
field=models.CharField(max_length=10000),
|
||||||
|
),
|
||||||
|
]
|
|
@ -1227,7 +1227,7 @@ class Checktable(models.Model):
|
||||||
id =models.AutoField(primary_key=True)#主键
|
id =models.AutoField(primary_key=True)#主键
|
||||||
checktitle=models.CharField(max_length=1000)#检查表名
|
checktitle=models.CharField(max_length=1000)#检查表名
|
||||||
checkprjtype=models.ManyToManyField(Checkproject)#检查项目多选
|
checkprjtype=models.ManyToManyField(Checkproject)#检查项目多选
|
||||||
checkcontent=models.CharField(max_length=1000)#检查内容
|
checkcontent=models.CharField(max_length=10000)#检查内容
|
||||||
createuser = models.ForeignKey(User,on_delete=models.CASCADE)#创建人
|
createuser = models.ForeignKey(User,on_delete=models.CASCADE)#创建人
|
||||||
createdate = models.DateTimeField(default = timezone.now)#创建时间
|
createdate = models.DateTimeField(default = timezone.now)#创建时间
|
||||||
usecomp = models.ForeignKey(Partment,related_name='checktabcomp',on_delete=models.CASCADE,null=True,blank=True)#创建公司
|
usecomp = models.ForeignKey(Partment,related_name='checktabcomp',on_delete=models.CASCADE,null=True,blank=True)#创建公司
|
||||||
|
@ -1253,7 +1253,7 @@ class Checkjob(models.Model):
|
||||||
id=models.AutoField(primary_key=True)#主键
|
id=models.AutoField(primary_key=True)#主键
|
||||||
checktask=models.ForeignKey(Checktask,on_delete=models.CASCADE)#关联任务表
|
checktask=models.ForeignKey(Checktask,on_delete=models.CASCADE)#关联任务表
|
||||||
checkname=models.ForeignKey(User,related_name='jianchas',on_delete=models.CASCADE)#检查人员
|
checkname=models.ForeignKey(User,related_name='jianchas',on_delete=models.CASCADE)#检查人员
|
||||||
checkquestion=models.CharField(max_length=200,null=True)#检查发现的问题
|
checkquestion=models.CharField(max_length=1000,null=True)#检查发现的问题
|
||||||
zgtime=models.DateTimeField(default = timezone.now)#整改期限
|
zgtime=models.DateTimeField(default = timezone.now)#整改期限
|
||||||
zguser=models.ForeignKey(User,on_delete=models.CASCADE,null=True,)#整改人
|
zguser=models.ForeignKey(User,on_delete=models.CASCADE,null=True,)#整改人
|
||||||
createuser = models.ForeignKey(User,related_name='chuangjian',on_delete=models.CASCADE,null=True)#创建人
|
createuser = models.ForeignKey(User,related_name='chuangjian',on_delete=models.CASCADE,null=True)#创建人
|
||||||
|
@ -1264,11 +1264,11 @@ class Checkjob(models.Model):
|
||||||
starttime=models.DateTimeField(null=True, blank=True)#任务开始时间
|
starttime=models.DateTimeField(null=True, blank=True)#任务开始时间
|
||||||
endtime=models.DateTimeField(null=True, blank=True)#任务结束时间
|
endtime=models.DateTimeField(null=True, blank=True)#任务结束时间
|
||||||
jobstate = models.IntegerField(default=1)#检查任务状态,1可执行,2过期
|
jobstate = models.IntegerField(default=1)#检查任务状态,1可执行,2过期
|
||||||
zgyq=models.CharField(max_length=200,null=True)#整改要求
|
zgyq=models.CharField(max_length=500,null=True)#整改要求
|
||||||
zgjg=models.CharField(max_length=200,null=True)#整改结果
|
zgjg=models.CharField(max_length=500,null=True)#整改结果
|
||||||
yanshou=models.DateTimeField(null=True, blank=True)#验收时间
|
yanshou=models.DateTimeField(null=True, blank=True)#验收时间
|
||||||
yanshouren=models.ForeignKey(User,related_name='yanshouren',on_delete=models.CASCADE,null=True)#验收人员
|
yanshouren=models.ForeignKey(User,related_name='yanshouren',on_delete=models.CASCADE,null=True)#验收人员
|
||||||
pmpeople=models.ManyToManyField(User,related_name='bcfr',null=True)#被处罚人员
|
pmpeople=models.ManyToManyField(User,related_name='bcfr',null=True)#被处罚人员
|
||||||
content=models.CharField(max_length=400,null=True)#处罚内容
|
content=models.CharField(max_length=500,null=True)#处罚内容
|
||||||
yhtp = models.CharField(max_length=1000, blank=True)
|
yhtp = models.CharField(max_length=1000,null=True, blank=True)
|
||||||
zghtp = models.CharField(max_length=1000, blank=True)
|
zghtp = models.CharField(max_length=1000,null=True, blank=True)
|
||||||
|
|
|
@ -117,6 +117,9 @@
|
||||||
else if (data.taskstate ==3) {
|
else if (data.taskstate ==3) {
|
||||||
$.messager.alert('提示', '该任务已关闭不能执行!');
|
$.messager.alert('提示', '该任务已关闭不能执行!');
|
||||||
}
|
}
|
||||||
|
else if (data.taskstate ==2) {
|
||||||
|
$.messager.alert('提示', '该任务已执行完成!');
|
||||||
|
}
|
||||||
else
|
else
|
||||||
opendg('查看检查任务','html/addcheckjob/'+row.id.toString())
|
opendg('查看检查任务','html/addcheckjob/'+row.id.toString())
|
||||||
});
|
});
|
||||||
|
@ -128,13 +131,24 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
function detailtask() {
|
function detailtask() {
|
||||||
var row = $('#jobtab').datagrid('getSelected');
|
var row = $('#jobtab').datagrid('getSelected');
|
||||||
if (row) {
|
if (row) {
|
||||||
opendg('任务详情','html/detailjob/'+row.id.toString())
|
$.get('api/checkproject?a=jobdetail&id=' + row.id, function (res) {
|
||||||
|
var data = res.data
|
||||||
|
console.log(data)
|
||||||
|
if (data.taskstate == 1) {
|
||||||
|
$.messager.alert('提示', '该任务还没有执行完,请去执行任务!');
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
opendg('任务详情','html/detailjob/'+row.id.toString())
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$.messager.alert('提示', '请先选择一条数据!');
|
$.messager.alert('提示', '请先选择一条数据!');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
|
@ -122,13 +122,13 @@
|
||||||
</table>
|
</table>
|
||||||
<div id="chufa" style="margin-top:10px;margin-bottom:5px;">
|
<div id="chufa" style="margin-top:10px;margin-bottom:5px;">
|
||||||
<input class="easyui-textbox" id="participantname" style="width:480px;height:60px" editable="false"
|
<input class="easyui-textbox" id="participantname" style="width:480px;height:60px" editable="false"
|
||||||
data-options="label:'接受处理意见人员:',multiline:true,prompt:'没有接受处理意见人员可以不选'" >
|
data-options="label:'涉及人员:',multiline:true,prompt:'没有涉及人员可以不选'" >
|
||||||
<input type="hidden" id="participant" name="participant" />
|
<input type="hidden" id="participant" name="participant" />
|
||||||
<a id="chooserys" class='easyui-linkbutton' onclick="choseusers()" style="width:auto">选择</a>
|
<a id="chooserys" class='easyui-linkbutton' onclick="choseusers()" style="width:auto">选择</a>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<input class="easyui-textbox" id="content" name="content" style="width:480px;height:60px"
|
<input class="easyui-textbox" id="content" name="content" style="width:480px;height:60px"
|
||||||
data-options="label:'处理意见:',multiline:true">
|
data-options="label:'经验教训:',multiline:true">
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -153,7 +153,7 @@
|
||||||
var data = res.data
|
var data = res.data
|
||||||
console.log(data)
|
console.log(data)
|
||||||
$('#checktaskname').textbox('setValue', data.checktask__checktaskname)
|
$('#checktaskname').textbox('setValue', data.checktask__checktaskname)
|
||||||
$('#checktabtitle').textbox('setValue', data.checkname__username)
|
$('#checktabtitle').textbox('setValue', data.checkname__name)
|
||||||
$('#starttime').datetimebox('setValue', data.checktask__checktime)
|
$('#starttime').datetimebox('setValue', data.checktask__checktime)
|
||||||
$('#checkcontent').textbox('setValue', data.checktask__checktype__checkcontent)
|
$('#checkcontent').textbox('setValue', data.checktask__checktype__checkcontent)
|
||||||
$('#checkplace').textbox('setValue', data.checktask__checkplace)
|
$('#checkplace').textbox('setValue', data.checktask__checkplace)
|
||||||
|
@ -349,7 +349,7 @@
|
||||||
$(".yhtpimg").each(function () {
|
$(".yhtpimg").each(function () {
|
||||||
yhtp.push($(this).attr("filepath"));
|
yhtp.push($(this).attr("filepath"));
|
||||||
});
|
});
|
||||||
wsdata['yhtp'] = yhtp
|
wsdata['yhtp1'] = yhtp
|
||||||
var zghtp = new Array();
|
var zghtp = new Array();
|
||||||
$(".zghtpimg").each(function () {
|
$(".zghtpimg").each(function () {
|
||||||
zghtp.push($(this).attr("filepath"));
|
zghtp.push($(this).attr("filepath"));
|
||||||
|
|
|
@ -83,11 +83,11 @@
|
||||||
|
|
||||||
</tr>-->
|
</tr>-->
|
||||||
<tr>
|
<tr>
|
||||||
<td style="font-weight: bold;">处理意见:</td>
|
<td style="font-weight: bold;">经验教训:</td>
|
||||||
<td colspan="3">{{content}}</td>
|
<td colspan="3">{{content}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td style="font-weight: bold;">接受处理意见人员:</td>
|
<td style="font-weight: bold;">涉及人员:</td>
|
||||||
<td colspan="3">{{bcfr==[]?'kkl':bcfr}}</td>
|
<td colspan="3">{{bcfr==[]?'kkl':bcfr}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -7785,6 +7785,13 @@ def checkprojects(req):
|
||||||
startnum, endnum = fenye(req)
|
startnum, endnum = fenye(req)
|
||||||
a = a.order_by('-starttime')[startnum:endnum].values('id','checkname__name','checktask__checktaskname','jobstate','starttime','endtime','yanshou','checkquestion','zguser__username','zgtime','checktask__checktype__checktitle','checkname__username', 'taskstate','checktask__checktime','createuser__username','createdate')
|
a = a.order_by('-starttime')[startnum:endnum].values('id','checkname__name','checktask__checktaskname','jobstate','starttime','endtime','yanshou','checkquestion','zguser__username','zgtime','checktask__checktype__checktitle','checkname__username', 'taskstate','checktask__checktime','createuser__username','createdate')
|
||||||
|
|
||||||
|
return HttpResponse(transjson(total, a), content_type="application/json")
|
||||||
|
elif a == 'wxlistall':
|
||||||
|
a = Checkjob.objects.filter(usecomp=Partment.objects.get(partid=companyid),taskstate=2).exclude(deletemark=0)
|
||||||
|
total = a.count()
|
||||||
|
startnum, endnum = fenye(req)
|
||||||
|
a = a.order_by('-starttime')[startnum:endnum].values('id','checkname__name','checktask__checktaskname','jobstate','starttime','endtime','yanshou','checkquestion','zguser__username','zgtime','checktask__checktype__checktitle','checkname__username', 'taskstate','checktask__checktime','createuser__username','createdate')
|
||||||
|
|
||||||
return HttpResponse(transjson(total, a), content_type="application/json")
|
return HttpResponse(transjson(total, a), content_type="application/json")
|
||||||
elif a == 'listself':
|
elif a == 'listself':
|
||||||
a = Checkjob.objects.filter(usecomp=Partment.objects.get(partid=companyid),taskstate=1,checkname__userid=userid,deletemark=1)
|
a = Checkjob.objects.filter(usecomp=Partment.objects.get(partid=companyid),taskstate=1,checkname__userid=userid,deletemark=1)
|
||||||
|
@ -7805,12 +7812,12 @@ def checkprojects(req):
|
||||||
|
|
||||||
elif a == 'jobdetail':
|
elif a == 'jobdetail':
|
||||||
obj = Checkjob.objects.filter(id=req.GET.get('id'))
|
obj = Checkjob.objects.filter(id=req.GET.get('id'))
|
||||||
obj = obj.values('checktask__checktaskname','zguser','zgjg','jobstate','taskstate','checkquestion','checktask__checkplace','checktask__checktype__checkcontent','checkname__username','checktask__checktime')[0]
|
obj = obj.values('checktask__checktaskname','zguser','checkname__name','zgjg','jobstate','taskstate','checkquestion','checktask__checkplace','checktask__checktype__checkcontent','checkname__username','checktask__checktime')[0]
|
||||||
|
|
||||||
return JsonResponse({'code': 1, 'data': obj})
|
return JsonResponse({'code': 1, 'data': obj})
|
||||||
elif a == 'addjob':
|
elif a == 'addjob':
|
||||||
data = json.loads(req.body.decode('utf-8'))
|
data = json.loads(req.body.decode('utf-8'))
|
||||||
yhtp = '?'.join(data['yhtp']) if 'yhtp' in data else []
|
yhtp = '?'.join(data['yhtp1']) if 'yhtp1' in data else []
|
||||||
zghtp = '?'.join(data['zghtp']) if 'zghtp' in data else []
|
zghtp = '?'.join(data['zghtp']) if 'zghtp' in data else []
|
||||||
obj = Checkjob.objects.get(id=req.GET.get('jobid'))
|
obj = Checkjob.objects.get(id=req.GET.get('jobid'))
|
||||||
obj.checkquestion = data['checkquestion']
|
obj.checkquestion = data['checkquestion']
|
||||||
|
@ -7836,7 +7843,7 @@ def checkprojects(req):
|
||||||
'value': '处罚通知:'
|
'value': '处罚通知:'
|
||||||
},
|
},
|
||||||
'keyword1': {
|
'keyword1': {
|
||||||
'value':'处理意见:'+ obj.content
|
'value':'经验教训:'+ obj.content
|
||||||
},
|
},
|
||||||
'keyword2': {
|
'keyword2': {
|
||||||
'value': '通知时间:'+str(obj.createdate)
|
'value': '通知时间:'+str(obj.createdate)
|
||||||
|
@ -7861,58 +7868,6 @@ def checkprojects(req):
|
||||||
jobss.save()
|
jobss.save()
|
||||||
|
|
||||||
|
|
||||||
return JsonResponse({'code': 1})
|
|
||||||
elif a == 'addjobwx':
|
|
||||||
obj = Checkjob.objects.get(id=req.GET.get('jobid'))
|
|
||||||
obj.checkquestion = req.POST.get('checkquestion')
|
|
||||||
obj.zgjg = req.POST.get('zgjg')
|
|
||||||
obj.taskstate = req.POST.get('taskstate')
|
|
||||||
obj.createuser = User.objects.get(userid=userid)
|
|
||||||
if req.POST.get('content')!="":
|
|
||||||
obj.content=req.POST.get('content')
|
|
||||||
|
|
||||||
s=[]
|
|
||||||
if req.POST.get('participant')!="":
|
|
||||||
list = req.POST.get('participant').split(',')
|
|
||||||
for i in list:
|
|
||||||
x = User.objects.get(userid=i)
|
|
||||||
obj.pmpeople.add(x)
|
|
||||||
s.append(x.openid)
|
|
||||||
postdict = {
|
|
||||||
'touser': '',
|
|
||||||
'template_id': 'lOuwSE67vZC3ZVFYPZvz2eb7JdFxqx7ysMFkXrYmYh0',
|
|
||||||
"miniprogram": {"appid": "wx5c39b569f01c27db"},
|
|
||||||
'data': {
|
|
||||||
'first': {
|
|
||||||
'value': '处罚通知:'
|
|
||||||
},
|
|
||||||
'keyword1': {
|
|
||||||
'value':'处理意见:'+ obj.content
|
|
||||||
},
|
|
||||||
'keyword2': {
|
|
||||||
'value': '通知时间:'+str(obj.createdate)
|
|
||||||
},
|
|
||||||
'keyword3': {
|
|
||||||
'value': '涉及人员:'+obj.createuser.name
|
|
||||||
},
|
|
||||||
'remark': {
|
|
||||||
'value': '请及时查看阅读'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
send_wechatmsgs.delay(postdict, s)
|
|
||||||
obj.save()
|
|
||||||
objs = Checktask.objects.get(id=obj.checktask.id)
|
|
||||||
if objs.zxstate==2:
|
|
||||||
for i in objs.checkname.all():
|
|
||||||
user = User.objects.get(userid=i.userid)
|
|
||||||
if user!=User.objects.get(userid=userid):
|
|
||||||
jobss = Checkjob.objects.get(checkname=user,checktask=objs)
|
|
||||||
jobss.taskstate=3
|
|
||||||
jobss.save()
|
|
||||||
|
|
||||||
|
|
||||||
return JsonResponse({'code': 1})
|
return JsonResponse({'code': 1})
|
||||||
|
|
||||||
elif a == 'yanshou':
|
elif a == 'yanshou':
|
||||||
|
@ -8036,7 +7991,7 @@ def checkprojects(req):
|
||||||
for item in list1:
|
for item in list1:
|
||||||
uselist.append(item.name)
|
uselist.append(item.name)
|
||||||
|
|
||||||
x = a.values('checktask__checktaskname','starttime','zgjg','checktask__tasktype','endtime','jobstate','zguser__username','checktask__checktype__checkcontent','checktask__checkplace','checktask__checktime' ,'checkname__username', 'checkquestion', 'zgtime', 'zguser__username', 'createuser__username',
|
x = a.values('checktask__checktaskname','starttime','zgjg','checktask__tasktype','endtime','jobstate','zguser__username','checktask__checktype__checkcontent','checktask__checkplace','checktask__checktime' ,'checkname__username','checkname__name', 'checkquestion', 'zgtime', 'zguser__username', 'createuser__username',
|
||||||
'createdate', 'taskstate','zghtp','content','yhtp','pmpeople', 'zgyq','zgjg', 'yanshou', 'yanshouren__name')[0]
|
'createdate', 'taskstate','zghtp','content','yhtp','pmpeople', 'zgyq','zgjg', 'yanshou', 'yanshouren__name')[0]
|
||||||
x['bcfr'] = uselist
|
x['bcfr'] = uselist
|
||||||
if x['yhtp'] != '':
|
if x['yhtp'] != '':
|
||||||
|
|
Loading…
Reference in New Issue