-
-
+
@@ -24,9 +22,8 @@
-
-
-
+
+
@@ -35,37 +32,30 @@
$(function () {
-
- $('.datepicker').datepicker({
- language: 'zh-CN',
- format: 'yyyy-mm-dd hh:00:00',//日期格式。可以将日期格式,定成年月日时,分秒为0。
- weekStart: 1,
- todayBtn: 1,
- autoclose: 1,
- todayHighlight: 1,
- startView: 2,
- forceParse: 0,
- showMeridian: 1
- });
- var times = $('#time').value;
- alert(times)
+
+ laydate.render({
+ elem: '#test'
+ , format: 'yyyy-MM-dd' //可任意组合
+ });
+ laydate.render({
+ elem: '#test2'
+ , format: 'yyyy-MM-dd' //可任意组合
+ });
troub();
});
-
-
function funTypeChange() {
- var times = $('#time').value;
- alert(times)
troub();
}
function troub() {
+ var start = $("#test").val();
+ var end = $("#test2").val();
$.ajax({
type: "get",
async: true, //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)
- url: "/groups/api/troubleChart?code=tbpic&starttime=" + starttime + "&endtime=" + endtime, //请求发送
+ url: "/groups/api/troubleChart?code=tbpic&start=" + start + "&end=" + end, //请求发送
dataType: "json", //返回数据形式为json
success: function (data) {
console.log(data.data.troublelist);
@@ -87,7 +77,7 @@
yhChart.setOption(
option = {
- color: ['#3398DB'],
+ color: ['#f39c12'],
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
@@ -96,15 +86,23 @@
},
title: {
- text: '本集团' + y + '年' + m + '月各公司隐患统计图'
+ text: '本集团各公司隐患统计图'
},
tooltip: {},
legend: {
data: ['公司隐患总数']
},
+ grid: {
+ y2: 140
+ },
xAxis: {
type: 'category',
- data: companyName
+ data: companyName,
+ boundaryGap: [0, 0.01],
+ axisLabel: {
+ interval: 0,//横轴信息全部显示
+ rotate: -30,//-30度角倾斜显示
+ }
},
yAxis: {},
series: [{
diff --git a/groups/urls.py b/groups/urls.py
index 6361e26a..de3bfd0c 100644
--- a/groups/urls.py
+++ b/groups/urls.py
@@ -11,13 +11,18 @@ urlpatterns = [
path('company/', views.company, name='groups_company'),
path('trouble/', views.trouble, name='groups_trouble'),#隐患排查统计图
path('observe/', views.observe, name='groups_observe'),#行为观察统计图
- path('miss/', views.job, name='groups_miss'),#未遂事件统计图
- path('risk/', views.job, name='groups_risk'),#风险管控统计图
- path('tain/', views.job, name='groups_train'),#教育培训统计图
- path('test/', views.job, name='groups_test'),#在线考试统计图
+ path('miss/', views.miss, name='groups_miss'),#未遂事件统计图
+ path('risk/', views.risk, name='groups_risk'),#风险管控统计图
+ path('tain/', views.train, name='groups_train'),#教育培训统计图
+ path('test/', views.exam, name='groups_test'),#在线考试统计图
path('refresh_captcha/', views.refresh_captcha),
path('updateposition/',views.updateposition),
path('api/positions',views.apipositions),
path('api/troubleChart',views.troubleChart),
- path('api/observeChart',views.observeChart)
+ path('api/observeChart',views.observeChart),
+ path('api/missChart',views.missChart),
+ path('api/riskChart',views.riskChart),
+ path('api/trainChart',views.trainChart),
+ path('api/examChart',views.examChart)
+
]
diff --git a/groups/views.py b/groups/views.py
index 767ca28c..78a5b6fd 100644
--- a/groups/views.py
+++ b/groups/views.py
@@ -118,34 +118,93 @@ def trouble(request):#隐患排查
return render(request, 'groups/troublepic.html', locals())
def observe(request):#行为观察
return render(request, 'groups/observe.html', locals())
+def miss(request):#未遂事件
+ return render(request, 'groups/miss.html', locals())
+def risk(request):#风险管控
+ return render(request, 'groups/risk.html', locals())
+def train(request):#教育培训
+ return render(request, 'groups/train.html', locals())
+def exam(request):#在线考试
+ return render(request, 'groups/exam.html', locals())
def troubleChart(request):#隐患统计图
code = request.GET.get('code')
-
+ start = request.GET.get('start')
+ end = request.GET.get('end')
if code=='tbpic':
- yhcompanys=[]
- yhcompanyscount=[]
-
companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
troublelist = s_models.Trouble.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname').annotate(number = Count('troubleid'))
- if request.GET.get('starttime'):#开始时间
- a = troublelist.filter(fxsj__gte=request.GET.get('qssj'))
- if request.GET.get('endtime'):#结束时间
- a = troublelist.filter(fxsj__lte=request.GET.get('jssj'))
- return HttpResponse(json.dumps({'code':1,'data':{'troublelist':list(a)}}), content_type='application/json')
+ if start:
+ troublelist = troublelist.filter(fxsj__gte=start)
+ if end:
+ troublelist = troublelist.filter(fxsj__lte=end)
+ return HttpResponse(json.dumps({'code':1,'data':{'troublelist':list(troublelist)}}), content_type='application/json')
def observeChart(request):#行为观察
code = request.GET.get('code')
- year = int(request.GET.get('year'))
- month =int( request.GET.get('month'))
- if code=='tbpic':
- userfy=[]#人员反映
- userwz=[]#员工的位置
- grfh=[]#个人防护装备
- gjhsb=[]#工具和设备
- cxhbz=[]#程序和标准
- rtgcx=[]#人体工程学
- hjzj=[]#环境整洁
- first_day,first_day_of_next_month = gettime(datetime(year,month,1))
- companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all().values('partname')
-
- return HttpResponse(json.dumps({'code':1,'data':{'list':list(Observe)},'userfy':userfy,'userwz':userwz,'grfh':grfh,'gjhsb':gjhsb,'cxhbz':cxhbz,'rtgcx':rtgcx,'hjzj':hjzj,}), content_type='application/json')
-
+ start = request.GET.get('start')
+ end = request.GET.get('end')
+ if code=='obv':
+ companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
+ observelist = s_models.Observe.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname').annotate(number = Count('lookid'))
+ if start:
+ observelist = observelist.filter(looktime__gte=start)
+ if end:
+ observelist = observelist.filter(looktime__lte=end)
+ return HttpResponse(json.dumps({'code':1,'data':{'observelist':list(observelist)}}), content_type='application/json')
+
+def missChart(request):#未遂事件
+ code = request.GET.get('code')
+ start = request.GET.get('start')
+ end = request.GET.get('end')
+ if code=='miss':
+
+ companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
+ misslist = s_models.Miss.objects.filter(deletemark=1,usecomp__in=companys).values('usecomp__partid','usecomp__partname').annotate(number = Count('missid'))
+ if start:
+ misslist = misslist.filter(misstime__gte=start)
+ if end:
+ misslist = misslist.filter(misstime__lte=end)
+ return HttpResponse(json.dumps({'code':1,'data':{'misslist':list(misslist)}}), content_type='application/json')
+
+def riskChart(request):#风险管控
+ code = request.GET.get('code')
+ start = request.GET.get('start')
+ end = request.GET.get('end')
+ if code=='risk':
+
+ companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
+ risklist = s_models.Risk.objects.filter(usecomp__in=companys).values('usecomp__partid','usecomp__partname').annotate(number = Count('id'))
+ if start:
+ risklist = risklist.filter(createtime__gte=start)
+ if end:
+ risklist = risklist.filter(createtime__lte=end)
+ return HttpResponse(json.dumps({'code':1,'data':{'risklist':list(risklist)}}), content_type='application/json')
+def trainChart(request):#教育培训
+ code = request.GET.get('code')
+ start = request.GET.get('start')
+ end = request.GET.get('end')
+ if code=='train':
+ companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
+ trainlist = s_models.Train.objects.filter(usecomp__in=companys).values('usecomp__partid','usecomp__partname').annotate(number = Count('trainid'))
+ if start:
+ trainlist = trainlist.filter(starttime__gte=start)
+ if end:
+ trainlist = trainlist.filter(starttime__lte=end)
+ return HttpResponse(json.dumps({'code':1,'data':{'trainlist':list(trainlist)}}), content_type='application/json')
+
+def examChart(request):#在线考试
+ code = request.GET.get('code')
+ start = request.GET.get('start')
+ end = request.GET.get('end')
+ examjson = []
+ if code=='exam':
+ companys = GroupUser.objects.get(id = request.session['user_id']).group.members.all()
+
+ for i in companys:
+ examlist = s_models.ExamTest.objects.filter(usecomps__contains=','+i+',').annotate(number = Count('id'))
+ if start:
+ examlist = examlist.filter(starttime__gte=start)
+ if end:
+ examlist = examlist.filter(starttime__lte=end)
+ examjson.append({'companyName':i,'number':examlist.number})
+ return HttpResponse(json.dumps({'code':1,'data':examjson}), content_type='application/json')
+
diff --git a/safesite/migrations/0281_remove_companyinfo_liaison_fax.py b/safesite/migrations/0281_remove_companyinfo_liaison_fax.py
new file mode 100644
index 00000000..a32fe6fe
--- /dev/null
+++ b/safesite/migrations/0281_remove_companyinfo_liaison_fax.py
@@ -0,0 +1,17 @@
+# Generated by Django 2.1.5 on 2019-10-24 10:56
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0280_auto_20191023_1711'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ ]
diff --git a/safesite/migrations/0282_remove_companyinfo_liaison_fax.py b/safesite/migrations/0282_remove_companyinfo_liaison_fax.py
new file mode 100644
index 00000000..8829e0ca
--- /dev/null
+++ b/safesite/migrations/0282_remove_companyinfo_liaison_fax.py
@@ -0,0 +1,17 @@
+# Generated by Django 2.1.5 on 2019-10-24 11:09
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0281_remove_companyinfo_liaison_fax'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ ]
diff --git a/safesite/migrations/0283_remove_companyinfo_liaison_fax.py b/safesite/migrations/0283_remove_companyinfo_liaison_fax.py
new file mode 100644
index 00000000..95023475
--- /dev/null
+++ b/safesite/migrations/0283_remove_companyinfo_liaison_fax.py
@@ -0,0 +1,17 @@
+# Generated by Django 2.1.5 on 2019-10-24 11:11
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0282_remove_companyinfo_liaison_fax'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ ]
diff --git a/safesite/migrations/0284_remove_companyinfo_liaison_fax.py b/safesite/migrations/0284_remove_companyinfo_liaison_fax.py
new file mode 100644
index 00000000..317341e6
--- /dev/null
+++ b/safesite/migrations/0284_remove_companyinfo_liaison_fax.py
@@ -0,0 +1,17 @@
+# Generated by Django 2.1.5 on 2019-10-24 11:13
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0283_remove_companyinfo_liaison_fax'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ ]
diff --git a/safesite/migrations/0285_remove_companyinfo_liaison_fax.py b/safesite/migrations/0285_remove_companyinfo_liaison_fax.py
new file mode 100644
index 00000000..9d7b4a7e
--- /dev/null
+++ b/safesite/migrations/0285_remove_companyinfo_liaison_fax.py
@@ -0,0 +1,17 @@
+# Generated by Django 2.1.5 on 2019-10-24 11:20
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('safesite', '0284_remove_companyinfo_liaison_fax'),
+ ]
+
+ operations = [
+ # migrations.RemoveField(
+ # model_name='companyinfo',
+ # name='liaison_fax',
+ # ),
+ ]