|
|
@@ -3,7 +3,10 @@
|
|
3
|
3
|
* */
|
|
4
|
4
|
var state = ''; // state tab页的 data-index(工单状态参数);
|
|
5
|
5
|
var stateVal = ''; //默认为所有,”day”今天,”week”本周,”month”本月,”year”本年
|
|
|
6
|
+var showdatas = [];
|
|
6
|
7
|
$(document).ready(function() {
|
|
|
8
|
+ stateVal = 'week';
|
|
|
9
|
+ initTable1();
|
|
7
|
10
|
$('.tool_bars').authorizeButton();
|
|
8
|
11
|
//搜索
|
|
9
|
12
|
$('#sc_btns').click(function() {
|
|
|
@@ -22,40 +25,41 @@ $(document).ready(function() {
|
|
22
|
25
|
range: '~',
|
|
23
|
26
|
theme: '#249fea'
|
|
24
|
27
|
});
|
|
25
|
|
-// function getPreDatetime(pdate = 3600 * 1000 * 24 * 30) {
|
|
26
|
|
-// const start = new Date()
|
|
27
|
|
-// start.setTime(start.getTime() - pdate)
|
|
28
|
|
-// start.getYear() // 获取当前年份(2位)
|
|
29
|
|
-// const YY = start.getFullYear() // 获取完整的年份(4位,1970-????)
|
|
30
|
|
-// let MM = start.getMonth() + 1 // 获取当前月份(0-11,0代表1月)
|
|
31
|
|
-// MM = MM > 9 ? MM : ('0' + MM)
|
|
32
|
|
-// let DD = start.getDate() // 获取当前日(1-31)
|
|
33
|
|
-// DD = DD > 9 ? DD : ('0' + DD)
|
|
34
|
|
-// var lastmonth=YY + '-' + MM + '-' + DD
|
|
35
|
|
-// return lastmonth
|
|
36
|
|
-// }
|
|
37
|
|
- if ($('#startTime').val()=="") {
|
|
38
|
|
- // function p(s) {
|
|
39
|
|
- // return s < 10 ? '0' + s: s;
|
|
40
|
|
- // }
|
|
41
|
|
- // var currentYear=new Date().getFullYear();
|
|
42
|
|
- // var currentMonth=new Date().getMonth()+1;
|
|
43
|
|
- // var currentDate=new Date().getDate();
|
|
44
|
|
- // var prevCurrentYear=0;
|
|
45
|
|
- // var prevCurrentMonth=0;
|
|
46
|
|
- // if(currentMonth==1){
|
|
47
|
|
- // prevCurrentYear=currentYear-1;
|
|
48
|
|
- // prevCurrentMonth=12;
|
|
49
|
|
- // }else{
|
|
50
|
|
- // prevCurrentYear=currentYear;
|
|
51
|
|
- // prevCurrentMonth=currentMonth-1;
|
|
52
|
|
- // }
|
|
53
|
|
- // var current =currentYear+"-"+p(currentMonth)+"-"+p(currentDate);
|
|
54
|
|
- // // var lastmonth=prevCurrentYear+"-"+p(prevCurrentMonth)+"-"+p(currentDate)
|
|
55
|
|
- // $('#startTime').val(getPreDatetime()+" ~ "+current)
|
|
56
|
|
- initTable1() ;
|
|
|
28
|
+ if($('#startTime').val() == "") {
|
|
|
29
|
+ function p(s) {
|
|
|
30
|
+ return s < 10 ? '0' + s : s;
|
|
57
|
31
|
}
|
|
|
32
|
+ var currentYear = new Date().getFullYear();
|
|
|
33
|
+ var currentMonth = new Date().getMonth() + 1;
|
|
|
34
|
+ var currentDate = new Date().getDate();
|
|
|
35
|
+ var prevCurrentYear = 0;
|
|
|
36
|
+ var prevCurrentMonth = 0;
|
|
|
37
|
+ if(currentMonth == 1) {
|
|
|
38
|
+ prevCurrentYear = currentYear - 1;
|
|
|
39
|
+ prevCurrentMonth = 12;
|
|
|
40
|
+ } else {
|
|
|
41
|
+ prevCurrentYear = currentYear;
|
|
|
42
|
+ prevCurrentMonth = currentMonth - 1;
|
|
|
43
|
+ }
|
|
|
44
|
+ var current = currentYear + "-" + p(currentMonth) + "-" + p(currentDate);
|
|
|
45
|
+ // var lastmonth=prevCurrentYear+"-"+p(prevCurrentMonth)+"-"+p(currentDate)
|
|
|
46
|
+ $('#startTime').val(getPreDatetime(3600 * 1000 * 24 * 6) + " ~ " + current)
|
|
|
47
|
+ initTable1();
|
|
|
48
|
+ }
|
|
58
|
49
|
});
|
|
|
50
|
+//前一周
|
|
|
51
|
+function getPreDatetime(pdate) {
|
|
|
52
|
+ var start = new Date()
|
|
|
53
|
+ start.setTime(start.getTime() - pdate)
|
|
|
54
|
+ start.getYear(); // 获取当前年份(2位)
|
|
|
55
|
+ var YY = start.getFullYear() // 获取完整的年份(4位,1970-????)
|
|
|
56
|
+ var MM = start.getMonth() + 1 // 获取当前月份(0-11,0代表1月)
|
|
|
57
|
+ MM = MM > 9 ? MM : ('0' + MM);
|
|
|
58
|
+ var DD = start.getDate() // 获取当前日(1-31)
|
|
|
59
|
+ DD = DD > 9 ? DD : ('0' + DD)
|
|
|
60
|
+ var lastmonth = YY + '-' + MM + '-' + DD;
|
|
|
61
|
+ return lastmonth;
|
|
|
62
|
+}
|
|
59
|
63
|
|
|
60
|
64
|
function initTable1() {
|
|
61
|
65
|
//先销毁表格
|
|
|
@@ -64,9 +68,9 @@ function initTable1() {
|
|
64
|
68
|
$('#table1').bootstrapTable({
|
|
65
|
69
|
method: "get", //使用get请求到服务器获取数据
|
|
66
|
70
|
url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/gettjlist", //获取数据的Servlet地址
|
|
67
|
|
- contentType: "application/x-www-form-urlencoded",
|
|
|
71
|
+ contentType: "application/x-www-form-urlencoded",
|
|
68
|
72
|
striped: true, //表格显示条纹
|
|
69
|
|
- smartDisplay:false,
|
|
|
73
|
+ smartDisplay: false,
|
|
70
|
74
|
pagination: false, //启动分页
|
|
71
|
75
|
pageSize: 10, //每页显示的记录数
|
|
72
|
76
|
pageNumber: 1, //当前第几页
|
|
|
@@ -81,8 +85,8 @@ function initTable1() {
|
|
81
|
85
|
queryParams: function queryParams(params) { //设置查询参数
|
|
82
|
86
|
var param = {
|
|
83
|
87
|
daytype: stateVal,
|
|
84
|
|
- isdjtype:$("#isdjtype").val(),
|
|
85
|
|
- Jwocode: $('#teamName').val(), //班组名称
|
|
|
88
|
+ isdjtype: $("#isdjtype").val(),
|
|
|
89
|
+ Jwocode: $('#teamName').val(), //班组名称
|
|
86
|
90
|
stime: $('#startTime').val() && $('#startTime').val().split(' ~ ')[0], //开始时间
|
|
87
|
91
|
etime: $('#startTime').val() && $('#startTime').val().split(' ~ ')[1], //结束时间
|
|
88
|
92
|
};
|
|
|
@@ -90,9 +94,53 @@ function initTable1() {
|
|
90
|
94
|
},
|
|
91
|
95
|
responseHandler: function(res) {
|
|
92
|
96
|
//格式化数据
|
|
|
97
|
+ let len = res.data.lists.length
|
|
|
98
|
+ let newData = res.data.lists
|
|
|
99
|
+ var changecount = newData.reduce((sum, e) => sum + parseInt(e.changecount), 0) //改派量
|
|
|
100
|
+ var comfrom = newData.reduce((sum, e) => sum + parseInt(e.comfrom), 0) //本院量
|
|
|
101
|
+ var daycounts = newData.reduce((sum, e) => sum + parseInt(e.daycounts), 0) //总接单量
|
|
|
102
|
+ var finishcount = newData.reduce((sum, e) => sum + parseInt(e.finishcount), 0) //已完结量
|
|
|
103
|
+ var jsfinishcount = newData.reduce((sum, e) => sum + parseInt(e.jsfinishcount), 0) //及时完成
|
|
|
104
|
+ var csfinishcount = newData.reduce((sum, e) => sum + parseInt(e.csfinishcount), 0) //超时完成
|
|
|
105
|
+ var nfinishcount = newData.reduce((sum, e) => sum + parseInt(e.nfinishcount), 0) //未完结单量
|
|
|
106
|
+ var finishlv = newData.reduce((sum, e) => sum + parseInt(e.finishlv), 0) //完成率
|
|
|
107
|
+ var nofinnishlv = newData.reduce((sum, e) => sum + parseInt(e.nofinnishlv), 0) //未完成率
|
|
|
108
|
+ var mywocode = newData.reduce((sum, e) => sum + parseInt(e.mywocode), 0) //满意
|
|
|
109
|
+ var cwocode = newData.reduce((sum, e) => sum + parseInt(e.cwocode), 0) //差
|
|
|
110
|
+ var mydinfo = newData.reduce((sum, e) => sum + parseFloat(e.mydinfo), 0) //满意度
|
|
|
111
|
+ var comfrombl = newData.reduce((sum, e) => sum + parseInt(e.comfrombl), 0) //本院量率
|
|
|
112
|
+ var comfroms = newData.reduce((sum, e) => sum + parseInt(e.comfroms), 0) //第三方量
|
|
|
113
|
+ var comfromsbl = newData.reduce((sum, e) => sum + parseInt(e.comfromsbl), 0) //第三方量率
|
|
|
114
|
+ console.log(finishlv,nofinnishlv);
|
|
|
115
|
+ var newhzdata = [{
|
|
|
116
|
+ deptname: '合计',
|
|
|
117
|
+ daycounts: daycounts, //随访总数
|
|
|
118
|
+ finishcount: finishcount,
|
|
|
119
|
+ jsfinishcount: jsfinishcount,
|
|
|
120
|
+ csfinishcount: csfinishcount,
|
|
|
121
|
+ nfinishcount: nfinishcount, //满意数
|
|
|
122
|
+// finishlv: (finishlv / len).toFixed(2) + '%',
|
|
|
123
|
+// nofinnishlv: (nofinnishlv / len).toFixed(2) + '%',
|
|
|
124
|
+ mywocode: mywocode,
|
|
|
125
|
+ cwocode: cwocode,
|
|
|
126
|
+// mydinfo: (mydinfo / len).toFixed(2) + '%',
|
|
|
127
|
+ comfrom: comfrom,
|
|
|
128
|
+// comfrombl: (comfrombl / len).toFixed(2) + '%',
|
|
|
129
|
+ comfroms: comfroms,
|
|
|
130
|
+// comfromsbl: (comfromsbl / len).toFixed(2) + '%',
|
|
|
131
|
+ changecount: changecount
|
|
|
132
|
+ }]
|
|
|
133
|
+ if(newData.length > 0) {
|
|
|
134
|
+ showdatas = newData.concat(newhzdata)
|
|
|
135
|
+ } else {
|
|
|
136
|
+ showdatas = []
|
|
|
137
|
+ }
|
|
93
|
138
|
return {
|
|
94
|
|
- "rows": res.data && res.data.lists, //数据
|
|
|
139
|
+ "rows": showdatas //数据
|
|
95
|
140
|
};
|
|
|
141
|
+ // return {
|
|
|
142
|
+ // "rows": res.data && res.data.lists, //数据
|
|
|
143
|
+ // };
|
|
96
|
144
|
},
|
|
97
|
145
|
onLoadSuccess: function(res) { //加载成功时执行
|
|
98
|
146
|
},
|
|
|
@@ -114,7 +162,7 @@ function initTable1() {
|
|
114
|
162
|
function btn_add() {
|
|
115
|
163
|
layer.open({
|
|
116
|
164
|
type: 2,
|
|
117
|
|
- content: "template/addEquipmentRepair.html",
|
|
|
165
|
+ content: "template/addEquipmentRepair.html",
|
|
118
|
166
|
title: '添加设备维修',
|
|
119
|
167
|
area: ['70%', '80%'], //宽高
|
|
120
|
168
|
});
|
|
|
@@ -152,19 +200,41 @@ function btn_assign(proId, wocode) {
|
|
152
|
200
|
|
|
153
|
201
|
//导出
|
|
154
|
202
|
function btn_export() {
|
|
155
|
|
- var Jwocode = $('#teamName').val() //班组名称
|
|
156
|
|
- var isdjtype=$("#isdjtype").val()
|
|
157
|
|
- var stime = $('#startTime').val() && $('#startTime').val().split(' ~ ')[0] //开始时间
|
|
158
|
|
- var etime = $('#startTime').val() && $('#startTime').val().split(' ~ ')[1] //结束时间
|
|
159
|
|
- window.location.href = huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/exportexcel?Jwocode=" + Jwocode + "&stime=" + stime + "&etime=" + etime+"&isdjtype=" + isdjtype
|
|
|
203
|
+ // var Jwocode = $('#teamName').val() //班组名称
|
|
|
204
|
+ // var isdjtype=$("#isdjtype").val()
|
|
|
205
|
+ // var stime = $('#startTime').val() && $('#startTime').val().split(' ~ ')[0] //开始时间
|
|
|
206
|
+ // var etime = $('#startTime').val() && $('#startTime').val().split(' ~ ')[1] //结束时间
|
|
|
207
|
+ // window.location.href = huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/exportexcel?Jwocode=" + Jwocode + "&stime=" + stime + "&etime=" + etime+"&isdjtype=" + isdjtype
|
|
|
208
|
+ //要导出的json数据
|
|
|
209
|
+ const jsonData = showdatas
|
|
|
210
|
+ //列标题,逗号隔开,每一个逗号就是隔开一个单元格
|
|
|
211
|
+ var str = `班组名称,总接单量,已完结量,及时完成,超时完成,未完结单量,完成率,未完成率,满意,差,满意度,本院量,本院量率,第三方量,第三方量率,改派量\n`;
|
|
|
212
|
+ //增加\t为了不让表格显示科学计数法或者其他格式
|
|
|
213
|
+ for(let i = 0; i < jsonData.length; i++) {
|
|
|
214
|
+
|
|
|
215
|
+ for(let item in jsonData[i]) {
|
|
|
216
|
+ str += `${jsonData[i][item] + '\t'},`;
|
|
|
217
|
+ }
|
|
|
218
|
+ str += '\n';
|
|
|
219
|
+ }
|
|
|
220
|
+ //encodeURIComponent解决中文乱码
|
|
|
221
|
+ let uri = 'data:text/csv/xls;charset=utf-8,\ufeff' + encodeURIComponent(str);
|
|
|
222
|
+ //通过创建a标签实现
|
|
|
223
|
+ let link = document.createElement("a");
|
|
|
224
|
+ link.href = uri;
|
|
|
225
|
+ //对下载的文件命名
|
|
|
226
|
+ link.download = "报修工单统计表.xls";
|
|
|
227
|
+ document.body.appendChild(link);
|
|
|
228
|
+ link.click();
|
|
|
229
|
+ document.body.removeChild(link);
|
|
160
|
230
|
}
|
|
161
|
231
|
|
|
162
|
232
|
//详情
|
|
163
|
233
|
function btn_detail(deptname) {
|
|
164
|
234
|
layer.open({
|
|
165
|
235
|
type: 2,
|
|
166
|
|
- content: "template/warrantyWorkOrderDetail.html?deptname=" + encodeURIComponent(deptname),
|
|
|
236
|
+ content: "template/warrantyWorkOrderDetail.html?deptname=" + encodeURIComponent(deptname),
|
|
167
|
237
|
title: '报修工单详情',
|
|
168
|
238
|
area: ['70%', '80%'], //宽高
|
|
169
|
239
|
});
|
|
170
|
|
-}
|
|
|
240
|
+}
|