miaofuhao лет назад: 2
Родитель
Сommit
553e4d32ae

+ 3 - 1
Script/Common/huayi.config.js

@@ -3,7 +3,9 @@ if(huayi == undefined) {
3 3
 }
4 4
 huayi.config = {
5 5
 	//测试环境
6
-	callcenter_url: "http://39.164.159.192:28000/", // 后端API站IP和端口
6
+	callcenter_url: "http://192.168.5.46:28000/", // 后端API站IP和端口  http://117.158.3.104:28000/
7
+//	callcenter_url: "http://39.164.159.226:28000/", // 后端API站IP和端口  http://117.158.3.104:28000/
8
+//	callcenter_url: "http://117.158.3.104:28000/", //
7 9
 	call_url:"http://192.168.1.26:8082/",  //话务IP和端口
8 10
 	img_url:"http://192.168.5.46/",
9 11
 	//callcenter_url: "http://localhost:63651/",

+ 4 - 4
SystemManager/js/addOrEditUserManage.js

@@ -29,14 +29,14 @@ $(function() {
29 29
 
30 30
 	imgEditor(); //头像裁剪
31 31
 
32
-//	if(Ids) {
32
+	if(Ids) {
33 33
 //
34
-//		$('.editPwd').show();
35
-//		$('.addPwd').hide();
34
+		$('.editPwd').show();
35
+		$('.addPwd').hide();
36 36
 //		$.when(helper.getDropList.getProlistDrop($('#projectid')), getRoleName($('#role_id')), getSeatGroup($('#seat_group'))).then(function() {
37 37
 //			getUserDetails(Ids); //详情
38 38
 //		});
39
-//	}
39
+	}
40 40
 
41 41
 	//添加编辑保存按钮点击
42 42
 	$('#pro_save').on('click', saveUsers);

+ 1 - 1
equipmentMaintenance/js/equipmentRepair.js

@@ -682,7 +682,7 @@ function btn_handle(code, floorId, sysId) {
682 682
 	layer.open({
683 683
 		type: 2,
684 684
 		content: "template/HandleEquipmentRepair.html?code=" + code + "&floorId=" + floorId,
685
-		title: '设备维修处理',
685
+		title: '故障维修处理',
686 686
 		area: ['70%', '80%'], //宽高
687 687
 	});
688 688
 }

+ 64 - 0
equipmentOperationManage/js/addEquipmentRepair.js

@@ -189,3 +189,67 @@ function getProvinceCity(ele1, isasync) {
189 189
 		}
190 190
 	})
191 191
 }
192
+
193
+//菜单下拉
194
+function getMenuLists() {
195
+	$.getJSON(huayi.config.callcenter_url + '/equipmentapi/api/WoRepairBase/getwxwpstimetree', {
196
+	}, function(result) {
197
+		if(result.state.toLowerCase() == "success") {
198
+			var defaultDatas = getTreeData(result.data)
199
+			console.log(defaultDatas)
200
+			var $sTree = $('#menusTreeView').treeview({
201
+				color: "#428bca",
202
+				expandIcon: 'glyphicon glyphicon-chevron-right',
203
+				collapseIcon: 'glyphicon glyphicon-chevron-down',
204
+				nodeIcon: 'fa fa-folder-o',
205
+				//selectedIcon: "glyphicon glyphicon-stop",
206
+				//icon: "glyphicon glyphicon-stop",
207
+				//emptyIcon: 'glyphicon',
208
+				//showCheckbox: true,
209
+				selectable: true,
210
+				state: {
211
+					selected: true
212
+				},
213
+				data: defaultDatas,
214
+				onNodeSelected: function(event, node) {
215
+					$sTree.treeview('clearSearch');
216
+					console.log(event, node)
217
+					$('#menus').val(node.text);
218
+					$('#menus').attr('data-id', node.id);
219
+					$('#menusTreeView').removeClass('show').addClass('hidden');
220
+				},
221
+				onNodeUnselected: function(event, node) {
222
+					$('#menus').val('顶级分类');
223
+					$('#menus').attr('data-id', '000000000000000000000000');
224
+				}
225
+			});
226
+			$('#menusTreeView').treeview('collapseAll', {
227
+				silent: true
228
+			});
229
+			var findSNodes = function() {
230
+				return $sTree.treeview('search', [$('#menus').val(), {
231
+					ignoreCase: false,
232
+					exactMatch: false
233
+				}]);
234
+			};
235
+			$('#menus').on('keyup', function(e) {
236
+				var selectableNodes = findSNodes();
237
+				//				var m = $('#menusTreeView').treeview('getParent', selectableNodes);
238
+				//				$('#menusTreeView').treeview('selectNode', [ m, { silent: true } ]);
239
+			});
240
+		}
241
+	})
242
+}
243
+function getTreeData (data) {
244
+	var newData=[]
245
+	data.forEach(function (ele) {
246
+		newData.push({
247
+            id: ele.id,
248
+            parentid: ele.pid,
249
+            text: ele.wxcenter +'-'+ ele.name,
250
+            children: (ele.child && ele.child.length > 0) ? getTreeData(ele.child) : []
251
+       })
252
+	})
253
+	return newData
254
+}
255
+

+ 179 - 34
equipmentOperationManage/js/addmaintainProject.js

@@ -1,62 +1,98 @@
1
+/**
2
+ * 添加或修改菜单
3
+ * */
1 4
 $(function() {
5
+	autosize($('textarea'));
6
+	var isEdit = helper.request.queryString("isEdit");
7
+	var mid = helper.request.queryString("mid");
8
+	var txt = helper.request.queryString("txt");
9
+	txt = decodeURIComponent(txt);
10
+	var pid = helper.request.queryString("pid");
11
+	var pTxt = helper.request.queryString("pTxt");
12
+	pTxt = decodeURIComponent(pTxt);
13
+	//菜单下拉数据
14
+	getMenuLists();
2 15
 	getbz()
3
-	var ajaxUrl;
4
-	var ids = helper.request.queryString("edit_id");
5
-	if (ids) {
6
-		ajaxUrl = "equipmentapi/api/WoRepairBase/upwxwptimestabs";
7
-		getValue(ids);
16
+	if(isEdit) {
17
+		//修改
18
+		if(pid == "000000000000000000000000" || pid == "undefined") {
19
+			$('#menus').val("顶级分类");
20
+			$('#menus').attr('data-id', '000000000000000000000000');
21
+		} else {
22
+			$('#menus').val(pTxt);
23
+			$('#menus').attr('data-id', pid);
24
+		}
25
+		getMenusInfo();
26
+		$('#save_btns').on('click', saveAccount);
8 27
 	} else {
9
-		ajaxUrl = "equipmentapi/api/WoRepairBase/addwxwptimes";
28
+		//添加
29
+		if(mid == "undefined") {
30
+			$('#menus').val("顶级分类");
31
+			$('#menus').attr('data-id', '000000000000000000000000');
32
+		} else {
33
+			$('#menus').val(txt);
34
+			$('#menus').attr('data-id', mid);
35
+		}
36
+
37
+		$('#save_btns').on('click', saveAccount);
10 38
 	}
11 39
 
12
-	//保存
13
-	$("#HY_save").click(function() {
14
-		// if(!$("#bzid").val()) {
15
-		// 	layer.confirm('请选择班组!', {
16
-		// 		icon: 2,
17
-		// 		btn: ['确定'] //按钮
18
-		// 	});
19
-		// 	return;
20
-		// }
40
+	$('#menus').on('focus click', function() {
41
+		$('#menusTreeView').removeClass('hidden').addClass('show');
42
+	});
43
+	$('#menus').on('keyup', function() {
44
+		if($(this).val() == '') {
45
+			$('menusTreeView').treeview('uncheckAll', {
46
+				silent: true
47
+			});
48
+			$(this).attr('data-id', '000000000000000000000000');
49
+		}
50
+	});
51
+	$('#menus + .caret').on('click', function() {
52
+		$('#menusTreeView').removeClass('hidden').addClass('show');
53
+	});
54
+	$('#menusTreeView').mouseleave(function() {
55
+		$(this).removeClass('show').addClass('hidden');
56
+	});
21 57
 
22
-		addValue(ajaxUrl, ids);
23
-	})
24
-	
25
-})
26
-//添加
27
-function addValue(ajaxUrl, ids) {
28
-	var $storages = window.localStorage;
58
+});
59
+
60
+//获取菜单信息
61
+function getMenusInfo() {
62
+	var mid = helper.request.queryString("mid");
29 63
 	$.ajax({
30 64
 		type: "get",
31
-		url: huayi.config.callcenter_url + ajaxUrl,
65
+		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwptimesbyid",
32 66
 		async: true,
33 67
 		dataType: 'json',
34 68
 		data: {
35
-			id: ids,
36
-			wxcenter: $("#wxcenter").val(), //维修项目
37
-			timecount: $('#timecount').val(), //	是时长)
38
-			bzid:  $("#bzid option:selected").val() //班组
39
-
69
+			id: mid
40 70
 		},
41 71
 		success: function(data) {
42 72
 			if (data.state.toLowerCase() == 'success') {
43
-				var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
44
-				parent.layer.close(index); //再执行关闭  
45
-				layer.msg(data.message);
46
-				parent.initTable();
73
+				console.log(data.data[0].bzid)
74
+				
75
+				// $('#bzid').selectpicker('val', data.data[0].bzid).trigger('change');
76
+				// $("#bzid option:selected").val(data.data[0].bzid)//班组
77
+				$("#bzid").val(data.data[0].bzid); //排查部门
78
+				$('#bzid').selectpicker('refresh');
79
+				$('#bzid').selectpicker('render');
80
+				$('#wxcenter').val(data.data[0].wxcenter); //维修项目
81
+				$('#timecount').val(data.data[0].timecount); //	时长
47 82
 			}
83
+
48 84
 		}
49 85
 	});
50 86
 }
51 87
 //获取详情
52
-function getValue(ids) {
88
+function getValue() {
53 89
 	$.ajax({
54 90
 		type: "get",
55 91
 		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwptimesbyid",
56 92
 		async: true,
57 93
 		dataType: 'json',
58 94
 		data: {
59
-			id: ids
95
+			id: mid
60 96
 		},
61 97
 		success: function(data) {
62 98
 			if (data.state.toLowerCase() == 'success') {
@@ -75,6 +111,41 @@ function getValue(ids) {
75 111
 	});
76 112
 
77 113
 }
114
+//添加保存菜单信息
115
+function saveAccount() {
116
+	var mid = helper.request.queryString("mid");
117
+	var apiUrl ="equipmentapi/api/WoRepairBase/addwxwptimes"
118
+	if (mid) {
119
+		apiUrl ="equipmentapi/api/WoRepairBase/upwxwptimestabs"
120
+	}
121
+	if(!$.trim($('#wxcenter').val())) {
122
+		layer.confirm('维修项目不能为空!', {
123
+			icon: 2,
124
+			btn: ['确定'] //按钮
125
+		});
126
+		return;
127
+	}
128
+	$.ajax({
129
+		type: "get",
130
+		url: huayi.config.callcenter_url + apiUrl,
131
+		async: true,
132
+		dataType: 'json',
133
+		data: {
134
+			id: mid,
135
+			parentid: $('#menus').attr('data-id'), //当前选择节点ID父级ID,无父级ID为'000000000000000000000000'
136
+			wxcenter: $('#wxcenter').val(), //菜单名称
137
+			bzid:  $("#bzid option:selected").val(), //班组
138
+		},
139
+		success: function(data) {
140
+			if (data.state.toLowerCase() == 'success') {
141
+				var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
142
+				parent.layer.close(index); //再执行关闭  
143
+				layer.msg(data.message);
144
+				parent.location.reload();
145
+			}
146
+		}
147
+	});
148
+}
78 149
 // 获取班组
79 150
 function getbz() {
80 151
 	$("#bzid").html('');
@@ -93,3 +164,77 @@ function getbz() {
93 164
 		}
94 165
 	})
95 166
 }
167
+//菜单下拉
168
+function getMenuLists() {
169
+	var pid = helper.request.queryString("pid"); 
170
+	$.getJSON(huayi.config.callcenter_url + '/equipmentapi/api/WoRepairBase/getwxwpstimetree', {
171
+	}, function(result) {
172
+		if(result.state.toLowerCase() == "success") {
173
+			var defaultDatas = getTreeData(result.data)
174
+			console.log(defaultDatas)
175
+			var $sTree = $('#menusTreeView').treeview({
176
+				color: "#428bca",
177
+				expandIcon: 'glyphicon glyphicon-chevron-right',
178
+				collapseIcon: 'glyphicon glyphicon-chevron-down',
179
+				nodeIcon: 'fa fa-folder-o',
180
+				//selectedIcon: "glyphicon glyphicon-stop",
181
+				//icon: "glyphicon glyphicon-stop",
182
+				//emptyIcon: 'glyphicon',
183
+				//showCheckbox: true,
184
+				selectable: true,
185
+				state: {
186
+					selected: true
187
+				},
188
+				data: defaultDatas,
189
+				onNodeSelected: function(event, node) {
190
+					$sTree.treeview('clearSearch');
191
+					console.log(event, node)
192
+					$('#menus').val(node.text);
193
+					$('#menus').attr('data-id', node.id);
194
+					$('#menusTreeView').removeClass('show').addClass('hidden');
195
+				},
196
+				onNodeUnselected: function(event, node) {
197
+					$('#menus').val('顶级分类');
198
+					$('#menus').attr('data-id', '000000000000000000000000');
199
+				}
200
+			});
201
+			$('#menusTreeView').treeview('collapseAll', {
202
+				silent: true
203
+			});
204
+			var findSNodes = function() {
205
+				return $sTree.treeview('search', [$('#menus').val(), {
206
+					ignoreCase: false,
207
+					exactMatch: false
208
+				}]);
209
+			};
210
+			$('#menus').on('keyup', function(e) {
211
+				var selectableNodes = findSNodes();
212
+				//				var m = $('#menusTreeView').treeview('getParent', selectableNodes);
213
+				//				$('#menusTreeView').treeview('selectNode', [ m, { silent: true } ]);
214
+			});
215
+		}
216
+	})
217
+}
218
+
219
+function getTreeData (data) {
220
+	var newData=[]
221
+	data.forEach(function (ele) {
222
+		newData.push({
223
+            id: ele.id,
224
+            parentid: ele.pid,
225
+            text: ele.wxcenter +'-'+ ele.name,
226
+            children: (ele.child && ele.child.length > 0) ? getTreeData(ele.child) : []
227
+       })
228
+	})
229
+	return newData
230
+}
231
+//格式化图标下拉
232
+function formatState(state) {
233
+	if(!state.id) {
234
+		return state.text;
235
+	}
236
+	var $state = $(
237
+		'<span><i class="icon-color iconfont">' + state.id + '</i>' + state.text + '</span>'
238
+	);
239
+	return $state;
240
+};

+ 95 - 0
equipmentOperationManage/js/addmaintainProjectBF.js

@@ -0,0 +1,95 @@
1
+$(function() {
2
+	getbz()
3
+	var ajaxUrl;
4
+	var ids = helper.request.queryString("edit_id");
5
+	if (ids) {
6
+		ajaxUrl = "equipmentapi/api/WoRepairBase/upwxwptimestabs";
7
+		getValue(ids);
8
+	} else {
9
+		ajaxUrl = "equipmentapi/api/WoRepairBase/addwxwptimes";
10
+	}
11
+
12
+	//保存
13
+	$("#HY_save").click(function() {
14
+		// if(!$("#bzid").val()) {
15
+		// 	layer.confirm('请选择班组!', {
16
+		// 		icon: 2,
17
+		// 		btn: ['确定'] //按钮
18
+		// 	});
19
+		// 	return;
20
+		// }
21
+
22
+		addValue(ajaxUrl, ids);
23
+	})
24
+	
25
+})
26
+//添加
27
+function addValue(ajaxUrl, ids) {
28
+	var $storages = window.localStorage;
29
+	$.ajax({
30
+		type: "get",
31
+		url: huayi.config.callcenter_url + ajaxUrl,
32
+		async: true,
33
+		dataType: 'json',
34
+		data: {
35
+			id: ids,
36
+			wxcenter: $("#wxcenter").val(), //维修项目
37
+			timecount: $('#timecount').val(), //	是时长)
38
+			bzid:  $("#bzid option:selected").val() //班组
39
+
40
+		},
41
+		success: function(data) {
42
+			if (data.state.toLowerCase() == 'success') {
43
+				var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
44
+				parent.layer.close(index); //再执行关闭  
45
+				layer.msg(data.message);
46
+				parent.initTable();
47
+			}
48
+		}
49
+	});
50
+}
51
+//获取详情
52
+function getValue(ids) {
53
+	$.ajax({
54
+		type: "get",
55
+		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwptimesbyid",
56
+		async: true,
57
+		dataType: 'json',
58
+		data: {
59
+			id: ids
60
+		},
61
+		success: function(data) {
62
+			if (data.state.toLowerCase() == 'success') {
63
+				console.log(data.data[0].bzid)
64
+				
65
+				// $('#bzid').selectpicker('val', data.data[0].bzid).trigger('change');
66
+				// $("#bzid option:selected").val(data.data[0].bzid)//班组
67
+				$("#bzid").val(data.data[0].bzid); //排查部门
68
+				$('#bzid').selectpicker('refresh');
69
+				$('#bzid').selectpicker('render');
70
+				$('#wxcenter').val(data.data[0].wxcenter); //维修项目
71
+				$('#timecount').val(data.data[0].timecount); //	时长
72
+			}
73
+
74
+		}
75
+	});
76
+
77
+}
78
+// 获取班组
79
+function getbz() {
80
+	$("#bzid").html('');
81
+	$("#bzid").append('<option selected="selected" value="">请选择班组</option>');
82
+	$.getJSON(huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getallbzcount", function(data) {
83
+		if (data.state.toLowerCase() == "success") {
84
+			var province = data.data;
85
+
86
+			for (var i = 0; i < province.length; i++) {
87
+				$("<option value='" + province[i].id + "'>" + province[i].role_name + "</option>").appendTo("#bzid");
88
+				$('#bzid').selectpicker('refresh');
89
+			}
90
+		}else{
91
+			$("#bzid").empty();
92
+			$("#bzid").selectpicker('refresh');
93
+		}
94
+	})
95
+}

+ 12 - 2
equipmentOperationManage/js/equipmentRepair.js

@@ -398,6 +398,8 @@ function formatterOperate(val, row) {
398 398
 		case '2':
399 399
 			str += '<li><a class="aBtn" authorize="yes" id="HY_evaluate_' + row.id + '" onclick="btn_evaluate(\'' + row.wocode +
400 400
 				'\',\'' + row.id + '\')"><i class="fa icon-zan tub"></i>评价</a><li>' +
401
+				'<li><a class="aBtn" authorize="yes" id="HY_deal' + row.id + '" onclick="btn_Return(\'' + row.wocode + '\',\'' +
402
+				row.floorid + '\')"><i class="fa icon-msnui-audit tub"></i>返修</a><li>' +
401 403
 				'<li><a class="aBtn" authorize="yes" id="HY_details_' + row.id + '" onclick="btn_details(\'' + row.id +
402 404
 				'\')"><i class="fa icon-detail tub"></i>详情</a><li>' +
403 405
 
@@ -837,7 +839,7 @@ function btn_add() {
837 839
 	layer.open({
838 840
 		type: 2,
839 841
 		content: "template/addEquipmentRepair.html",
840
-		title: '添加设备维修',
842
+		title: '添加故障维修',
841 843
 		area: ['70%', '80%'], //宽高
842 844
 	});
843 845
 }
@@ -860,7 +862,15 @@ function btn_handle(code, floorId, sysId) {
860 862
 		area: ['70%', '80%'], //宽高
861 863
 	});
862 864
 }
863
-
865
+//返修
866
+function btn_Return(code, floorId, sysId) {
867
+	layer.open({
868
+		type: 2,
869
+		content: "template/HandleReturnRepair.html?code=" + code + "&floorId=" + floorId,
870
+		title: '设备维修处理',
871
+		area: ['70%', '80%'], //宽高
872
+	});
873
+}
864 874
 //详情
865 875
 function btn_details(ids) {
866 876
 	layer.open({

+ 134 - 123
equipmentOperationManage/js/maintainProject.js

@@ -1,163 +1,174 @@
1 1
 /**
2
- * 维系项目时效维护
2
+ * 菜单设置
3 3
  * */
4
+var rowData = {}
5
+var pidText = ''
6
+var treeGrid
7
+var config = {
8
+	id: "tg1",
9
+	width: "800",
10
+	renderTo: "gridList",
11
+	headerAlign: "left",
12
+	headerHeight: "30",
13
+	dataAlign: "left",
14
+	indentation: "20",
15
+	folderOpenIcon: "../public/treeGrid/images/folderOpen.gif",
16
+	folderCloseIcon: "../public/treeGrid/images/folderClose.gif",
17
+	defaultLeafIcon: "../public/treeGrid/images/defaultLeaf.gif",
18
+	hoverRowBackground: "false",
19
+	folderColumnIndex: "0",
20
+	itemClick: "itemClickEvent",
21
+	columns: [
22
+		{
23
+			headerText: "维修项目名称",
24
+			dataField: "wxcenter",
25
+			headerAlign: "center",
26
+			handler: "customOrgName"
27
+		},
28
+		{
29
+			headerText: "项目科室",
30
+			dataField: "name",
31
+			headerAlign: "center",
32
+			handler: "customOrgName"
33
+		},
34
+		{
35
+			headerText: "操作",
36
+			headerAlign: "center",
37
+			dataAlign: "center",
38
+			width: "100",
39
+			handler: "customLook"
40
+		}
41
+	],
42
+	data: []
43
+};
44
+$("#sc_btns").click(function() {
45
+	gridList();
46
+});
4 47
 $(function() {
5
-	getbz()
6 48
 	$('.tool_bars').authorizeButton();
7
-
8
-	laydate.render({
9
-		elem: '#sc_times',
10
-		range: '~',
11
-		theme: '#249fea',
12
-	});
13
-	initTable();
14
-	//搜索
15
-	$("#sc_btns").click(function() {
16
-		initTable();
17
-	});
49
+	treeGrid = new TreeGrid(config);
50
+	gridList();
18 51
 });
19
-// 获取班组
20
-function getbz() {
21
-	$("#bzid").html('');
22
-	$("#bzid").append('<option selected="selected" value="">请选择班组</option>');
23
-	$.getJSON(huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getallbzcount", function(data) {
24
-		if (data.state.toLowerCase() == "success") {
25
-			var province = data.data;
26
-
27
-			for (var i = 0; i < province.length; i++) {
28
-				$("<option value='" + province[i].id + "'>" + province[i].role_name + "</option>").appendTo("#bzid");
29
-				$('#bzid').selectpicker('refresh');
30
-			}
31
-		}else{
32
-			$("#bzid").empty();
33
-			$("#bzid").selectpicker('refresh');
34
-		}
35
-	})
52
+function itemClickEvent(id, index, data){
53
+	jQuery("#currentRow").val(id + ", " + index + ", " + TreeGrid.json2str(data));
36 54
 }
37
-// 列表
38
-function initTable() {
39
-	//先销毁表格
40
-	$('#table_all').bootstrapTable('destroy');
41
-	//初始化表格,动态从服务器加载数据
42
-	$('#table_all').bootstrapTable({
43
-		method: "get", //使用get请求到服务器获取数据
44
-		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwptimestabs", //获取数据的Servlet地址
45
-		contentType: "application/x-www-form-urlencoded",
46
-		striped: true, //表格显示条纹
47
-		pagination: true, //启动分页
48
-		pageSize: 10, //每页显示的记录数
49
-		pageNumber: 1, //当前第几页
50
-		pageList: [10, 20, 50, 100], //记录数可选列表
51
-		search: false, //是否启用查询
52
-		showColumns: false, //显示下拉框勾选要显示的列
53
-		showRefresh: false, //显示刷新按钮
54
-		sidePagination: "server", //表示服务端请求
55
-		//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
56
-		//设置为limit可以获取limit, offset, search, sort, order
57
-		queryParamsType: "undefined",
58
-		queryParams: function queryParams(params) { //设置查询参数
59
-			var param = {
60
-				pageindex: params.pageNumber, //否	string	当前页
61
-				pagesize: params.pageSize, //否	string	每页记录数
62
-				bzid:$("#bzid").val()
63
-				// key: $('#sc_key').val(), //否	string	模糊查询(姓名,手机号码,固话)
64
-				// //typeid	否	string	类型id
65
-				// stime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[0], //开始时间
66
-				// etime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[1], //结束时间
67
-			};
68
-			return param;
69
-		},
70
-		responseHandler: function(res) {
71
-			return {
72
-				"total": res.data && res.data.total, //总页数
73
-				"rows": res.data && res.data.rows //数据
74
-			};
75
-		},
76
-		onLoadSuccess: function(res) { //加载成功时执行
77
-			//layer.msg("加载成功");
78
-			$('.tool_downs').authorizeOperateButton();
79
-		},
80
-		onLoadError: function() { //加载失败时执行
81
-			//layer.msg("加载数据失败", { time: 1500, icon: 2 });
82
-		}
83
-	});
55
+
56
+/*
57
+	通过指定的方法来自定义栏数据
58
+*/
59
+function customOrgName(row, col){
60
+	var name = row[col.dataField] || "";
61
+	return name;
84 62
 }
85 63
 
86
-//格式化操作
87
-function formatterOperate(val, row) {
64
+function customLook(row, col){
88 65
 	return '<ul class="tool_downs">' +
89
-		
90
-		'<li><a class="aBtn" authorize="yes" id="HY_edit_' + row.id + '" onclick="btn_edit(\'' + row.id + '\')">编辑</a></li>' +
91
-		'<li><a class="aBtn" authorize="yes" id="HY_delete_' + row.id + '" onclick="btn_delete(\'' + row.id + '\')">删除</a></li>' +
92
-		'</ul>';
66
+		'<li><a class="aBtn" onclick="btn_edit(\''+row.id+'\',\''+row.P_ID+'\')">编辑</a></li>' +
67
+		'<li><a class="aBtn" onclick="btn_delete(\'' + row.id + '\')">删除</a></li>' +
68
+		'</ul>'
69
+}
70
+function gridList() {
71
+	$.ajax({
72
+		type: "get",
73
+		url: huayi.config.callcenter_url + "/equipmentapi/api/WoRepairBase/getwxwpstimetree",
74
+		async: true,
75
+		dataType: 'json',
76
+		data: {},
77
+		success: function(data) {
78
+			if (data.state.toLowerCase() == 'success') {
79
+				var defaultDatas = getTreeData(data.data)
80
+				config.data = getTreeData(data.data)
81
+				treeGrid.show();
82
+			}
83
+		}
84
+	});
85
+	
93 86
 }
94 87
 
95
-//查看客户详情
96
-// function btn_details(rcode) {
97
-// 	layer.open({
98
-// 		type: 2,
99
-// 		content: "template/seeCustomerDetails.html?edit_id=" + rcode, //iframe的url,no代表不显示滚动条
100
-// 		title: '查看客户信息详情',
101
-// 		resize: false,
102
-// 		area: ['80%', '90%'], //宽高
103
-// 	});
104
-// }
105
-
106
-//添加
107 88
 function btn_add() {
108 89
 	layer.open({
109 90
 		type: 2,
110
-		content: "template/addmaintainProject.html?", //iframe的url,no代表不显示滚动条
111
-		title: '添加维系项目时效维护',
91
+		content: "template/addmaintainProject.html", //iframe的url,no代表不显示滚动条
92
+		title: '新增维修项目时效',
112 93
 		resize: false,
113 94
 		area: ['80%', '90%'], //宽高
114 95
 	});
96
+
115 97
 }
116 98
 
117
-//编辑
118
-function btn_edit(edit_id) {
99
+function btn_edit(mid,pid) {
100
+	if (pid!=="null") {
101
+		pTxt = getTreePidText(pid,config.data)
102
+	}else{
103
+		pid = ''
104
+		pTxt = ''
105
+	}
106
+	
107
+	if(!mid) {
108
+		layer.confirm('您还没有选择菜单', {
109
+			icon: 7,
110
+			btn: ['确定', '取消'],
111
+		});
112
+		return;
113
+	}
119 114
 	layer.open({
120 115
 		type: 2,
121
-		content: "template/addmaintainProject.html?edit_id=" + edit_id, //iframe的url,no代表不显示滚动条
122
-		title: '编辑维系项目时效维护',
116
+		content: "template/addmaintainProject.html?isEdit=true&mid=" + mid + "&pid=" + pid + "&pTxt=" + pTxt, //iframe的url,no代表不显示滚动条
117
+		title: '修改维修项目时效',
123 118
 		resize: false,
124 119
 		area: ['80%', '90%'], //宽高
125 120
 	});
126 121
 }
127 122
 
128
-//批量删除
129
-// function btn_deletes() {
130
-// 	var ids = $.map($('#table_all').bootstrapTable('getSelections'),
131
-// 		function(row) {
132
-// 			return row.id;
133
-// 		});
134
-// 	/*判断长度*/
135
-// 	if(ids.length <= 0) {
136
-// 		layer.confirm('请选择要删除的选项', {
137
-// 			icon: 7,
138
-// 			btn: ['确定'] //按钮
139
-// 		});
140
-// 		return;
141
-// 	}
142
-// 	btn_delete(ids);
143
-// }
123
+function btn_delete(mid) {
124
+	if(!mid) {
125
+		layer.confirm('您还没有选择菜单', {
126
+			icon: 7,
127
+			btn: ['确定', '取消'],
128
+		});
129
+		return;
130
+	}
144 131
 
145
-//删除
146
-function btn_delete(del_id) {
147
-	/*发送请求*/
148
-	layer.confirm('您确定要删除当前维系项目时效维护信息吗?', {
132
+	layer.confirm('您确定要删除当前选项吗?', {
149 133
 		icon: 7,
150 134
 		btn: ['确定', '取消'],
151 135
 		yes: function(index, layero) {
152 136
 			$.get(huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/delewxwptimestabs", {
153
-				id: del_id,
137
+				id: mid,
154 138
 			}, function(result) {
155 139
 				result = JSON.parse(result);
156 140
 				if(result.state.toLowerCase() == "success") {
157 141
 					layer.msg("删除成功");
158
-					$('#table_all').bootstrapTable('refresh');
142
+					location.reload()
159 143
 				}
160 144
 			})
161 145
 		},
162 146
 	});
147
+}
148
+
149
+function getTreeData (data) {
150
+	var newData=[]
151
+	data.forEach(function (ele) {
152
+		newData.push({
153
+            id: ele.id,
154
+            P_ID: ele.pid,
155
+            wxcenter: ele.wxcenter,
156
+            name: ele.name,
157
+            children: (ele.child && ele.child.length > 0) ? getTreeData(ele.child) : []
158
+       })
159
+	})
160
+	return newData
161
+}
162
+function getTreePidText (pid,data) {
163
+	var newData=[]
164
+	var pidText
165
+	for (var i=0;i<data.length;i++){ 
166
+	    if (data[i].id === pid) {
167
+			pidText = data[i].wxcenter
168
+			return pidText
169
+		} else{
170
+			getTreePidText(pid,data[i].children)
171
+		}
172
+	}
173
+	
163 174
 }

+ 164 - 0
equipmentOperationManage/js/maintainProjectBF.js

@@ -0,0 +1,164 @@
1
+/**
2
+ * 维系项目时效维护
3
+ * */
4
+$(function() {
5
+	getbz()
6
+	$('.tool_bars').authorizeButton();
7
+
8
+	laydate.render({
9
+		elem: '#sc_times',
10
+		range: '~',
11
+		theme: '#249fea',
12
+	});
13
+	initTable();
14
+	//搜索
15
+	$("#sc_btns").click(function() {
16
+		initTable();
17
+	});
18
+});
19
+// 获取班组
20
+function getbz() {
21
+	$("#bzid").html('');
22
+	$("#bzid").append('<option selected="selected" value="">请选择班组</option>');
23
+	$.getJSON(huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getallbzcount", function(data) {
24
+		if (data.state.toLowerCase() == "success") {
25
+			var province = data.data;
26
+
27
+			for (var i = 0; i < province.length; i++) {
28
+				$("<option value='" + province[i].id + "'>" + province[i].role_name + "</option>").appendTo("#bzid");
29
+				$('#bzid').selectpicker('refresh');
30
+			}
31
+		}else{
32
+			$("#bzid").empty();
33
+			$("#bzid").selectpicker('refresh');
34
+		}
35
+	})
36
+}
37
+// 列表
38
+function initTable() {
39
+	//先销毁表格
40
+	$('#table_all').bootstrapTable('destroy');
41
+	//初始化表格,动态从服务器加载数据
42
+	$('#table_all').bootstrapTable({
43
+		method: "get", //使用get请求到服务器获取数据 equipmentapi/api/WoRepairBase/getwxwpstimetree
44
+//		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwptimestabs", //获取数据的Servlet地址
45
+		url: huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/getwxwpstimetree", //获取数据的Servlet地
46
+		contentType: "application/x-www-form-urlencoded",
47
+		striped: true, //表格显示条纹
48
+		pagination: true, //启动分页
49
+		pageSize: 10, //每页显示的记录数
50
+		pageNumber: 1, //当前第几页
51
+		pageList: [10, 20, 50, 100], //记录数可选列表
52
+		search: false, //是否启用查询
53
+		showColumns: false, //显示下拉框勾选要显示的列
54
+		showRefresh: false, //显示刷新按钮
55
+		sidePagination: "server", //表示服务端请求
56
+		//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
57
+		//设置为limit可以获取limit, offset, search, sort, order
58
+		queryParamsType: "undefined",
59
+		queryParams: function queryParams(params) { //设置查询参数
60
+			var param = {
61
+				pageindex: params.pageNumber, //否	string	当前页
62
+				pagesize: params.pageSize, //否	string	每页记录数
63
+				bzid:$("#bzid").val()
64
+				// key: $('#sc_key').val(), //否	string	模糊查询(姓名,手机号码,固话)
65
+				// //typeid	否	string	类型id
66
+				// stime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[0], //开始时间
67
+				// etime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[1], //结束时间
68
+			};
69
+			return param;
70
+		},
71
+		responseHandler: function(res) {
72
+			return {
73
+				"total": res.data && res.data.total, //总页数
74
+				"rows": res.data && res.data.rows //数据
75
+			};
76
+		},
77
+		onLoadSuccess: function(res) { //加载成功时执行
78
+			//layer.msg("加载成功");
79
+			$('.tool_downs').authorizeOperateButton();
80
+		},
81
+		onLoadError: function() { //加载失败时执行
82
+			//layer.msg("加载数据失败", { time: 1500, icon: 2 });
83
+		}
84
+	});
85
+}
86
+
87
+//格式化操作
88
+function formatterOperate(val, row) {
89
+	return '<ul class="tool_downs">' +
90
+		
91
+		'<li><a class="aBtn" authorize="yes" id="HY_edit_' + row.id + '" onclick="btn_edit(\'' + row.id + '\')">编辑</a></li>' +
92
+		'<li><a class="aBtn" authorize="yes" id="HY_delete_' + row.id + '" onclick="btn_delete(\'' + row.id + '\')">删除</a></li>' +
93
+		'</ul>';
94
+}
95
+
96
+//查看客户详情
97
+// function btn_details(rcode) {
98
+// 	layer.open({
99
+// 		type: 2,
100
+// 		content: "template/seeCustomerDetails.html?edit_id=" + rcode, //iframe的url,no代表不显示滚动条
101
+// 		title: '查看客户信息详情',
102
+// 		resize: false,
103
+// 		area: ['80%', '90%'], //宽高
104
+// 	});
105
+// }
106
+
107
+//添加
108
+function btn_add() {
109
+	layer.open({
110
+		type: 2,
111
+		content: "template/addmaintainProject.html?", //iframe的url,no代表不显示滚动条
112
+		title: '添加维系项目时效维护',
113
+		resize: false,
114
+		area: ['80%', '90%'], //宽高
115
+	});
116
+}
117
+
118
+//编辑
119
+function btn_edit(edit_id) {
120
+	layer.open({
121
+		type: 2,
122
+		content: "template/addmaintainProject.html?edit_id=" + edit_id, //iframe的url,no代表不显示滚动条
123
+		title: '编辑维系项目时效维护',
124
+		resize: false,
125
+		area: ['80%', '90%'], //宽高
126
+	});
127
+}
128
+
129
+//批量删除
130
+// function btn_deletes() {
131
+// 	var ids = $.map($('#table_all').bootstrapTable('getSelections'),
132
+// 		function(row) {
133
+// 			return row.id;
134
+// 		});
135
+// 	/*判断长度*/
136
+// 	if(ids.length <= 0) {
137
+// 		layer.confirm('请选择要删除的选项', {
138
+// 			icon: 7,
139
+// 			btn: ['确定'] //按钮
140
+// 		});
141
+// 		return;
142
+// 	}
143
+// 	btn_delete(ids);
144
+// }
145
+
146
+//删除
147
+function btn_delete(del_id) {
148
+	/*发送请求*/
149
+	layer.confirm('您确定要删除当前维系项目时效维护信息吗?', {
150
+		icon: 7,
151
+		btn: ['确定', '取消'],
152
+		yes: function(index, layero) {
153
+			$.get(huayi.config.callcenter_url + "equipmentapi/api/WoRepairBase/delewxwptimestabs", {
154
+				id: del_id,
155
+			}, function(result) {
156
+				result = JSON.parse(result);
157
+				if(result.state.toLowerCase() == "success") {
158
+					layer.msg("删除成功");
159
+					$('#table_all').bootstrapTable('refresh');
160
+				}
161
+			})
162
+		},
163
+	});
164
+}

+ 8 - 10
equipmentOperationManage/js/notSingleRepair.js

@@ -196,16 +196,16 @@ function initTable1() {
196 196
 
197 197
 //操作
198 198
 function formatterOperate(val, row) {
199
-	console.log(val)
199
+	console.log(val+'-1')
200 200
 	var str = '';
201 201
 	str = '<div class="task_tools" onclick = helper.methods.taskTools(this)>' +
202 202
 		'<a title="操作"><i class="fa fa-cogs" aria-hidden="true"></i></a>' +
203 203
 		'<ul class="tool_down">'
204 204
 	switch (val + '') {
205 205
 		case '0':
206
-			str += '<li><a class="aBtn" authorize="yes" id="HY_assign_' + row.id + '" onclick="btn_assign(\'' + row.projectid +
207
-				'\',\'' + row.wocode + '\')"><i class="fa icon-paidan tub"></i>派单</a><li>' +
208
-				// '<li><a class="aBtn" authorize="yes" id="HY_handle_' + row.id + '" onclick="btn_robbing(\'' + row.wocode + '\')"><i class="fa icon-qiangdan tub"></i>抢单</a><li>' +
206
+//			'<li><a class="aBtn" authorize="yes" id="HY_assign_' + row.id + '" onclick="btn_assign(\'' + row.projectid +
207
+//				'\',\'' + row.wocode + '\')"><i class="fa icon-paidan tub"></i>派单</a><li>' +
208
+			str += 	'<li><a class="aBtn" authorize="yes" id="HY_handle_' + row.id + '" onclick="btn_robbing(\'' + row.wocode + '\')"><i class="fa icon-qiangdan tub"></i>抢单</a><li>' +
209 209
 				'<li><a class="aBtn detail" authorize="yes" id="HY_details_' + row.id + '" onclick="btn_details(\'' + row.id +
210 210
 				'\')"><i class="fa icon-detail tub"></i>详情</a><li>'
211 211
 
@@ -222,9 +222,9 @@ function formatterOperate(val, row) {
222 222
 				'\')"><i class="fa icon-detail tub"></i>详情</a><li>'
223 223
 			break;
224 224
 		case '2':
225
-			str += '<li><a class="aBtn" authorize="yes" id="HY_evaluate_' + row.id + '" onclick="btn_evaluate(\'' + row.wocode +
226
-				'\')"><i class="fa icon-zan tub"></i>评价</a><li>' +
227
-				'<li><a class="aBtn detail" authorize="yes" id="HY_details_' + row.id + '" onclick="btn_details(\'' + row.id +
225
+//			 '<li><a class="aBtn" authorize="yes" id="HY_evaluate_' + row.id + '" onclick="btn_evaluate(\'' + row.wocode +
226
+//				'\')"><i class="fa icon-zan tub"></i>评价</a><li>' +
227
+			str +=	'<li><a class="aBtn detail" authorize="yes" id="HY_details_' + row.id + '" onclick="btn_details(\'' + row.id +
228 228
 				'\')"><i class="fa icon-detail tub"></i>详情</a><li>'
229 229
 			break;
230 230
 		case '3':
@@ -308,8 +308,6 @@ function formatterChannel(val, row) {
308 308
 // }
309 309
 // 格式化超时时长
310 310
 function formatterdate(val, row) {
311
-
312
-	console.log(row.tobztimes)
313 311
 	var dateval = ''
314 312
 	var dealdate = ''
315 313
 	var lasttime = ''
@@ -670,7 +668,7 @@ function btn_retutn(wocode) {
670 668
 			}, function(result) {
671 669
 				result = JSON.parse(result);
672 670
 				if (result.state.toLowerCase() == "success") {
673
-					layer.msg("删除成功");
671
+					layer.msg("退回成功");
674 672
 					$('#table1').bootstrapTable('refresh');
675 673
 				}
676 674
 			})

+ 25 - 50
equipmentOperationManage/maintainProject.html

@@ -3,70 +3,45 @@
3 3
 
4 4
 	<head>
5 5
 		<meta charset="UTF-8">
6
-		<title>维系项目时效维护</title>
7
-		<meta name="viewport" content="width=device-width, initial-scale=1.0">
8 6
 		<script src="../Script/Common/huayi.load.js"></script>
9 7
 		<script src="../Script/Common/huayi.config.js"></script>
10
-		<link href="../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
11
-		<link href="../css/Table/table1.css" rel="stylesheet" />
12
-		<link href="../css/init.css" rel="stylesheet" />
13
-		<link href="../css/projectManagement.css" rel="stylesheet" />
8
+		<link rel="stylesheet" href="../css/init.css" />
9
+		<link rel="stylesheet" href="../css/Table/table1.css" />
10
+		<link rel="stylesheet" href="../js/select2/css/select2.min.css" />
11
+		<link rel="stylesheet" href="../public/treeGrid/TreeGrid.css" />
12
+		<title>系统管理-->菜单设置</title>
14 13
 	</head>
15 14
 
16
-	<body class="gray-bg">
15
+	<body class="gray-bg menu_manage">
17 16
 		<div class="daoHang clearfix">
18 17
 			<div class="dhLeft">
19 18
 				<sapn><i class="syIcon"></i>位置:
20
-					<a id="ReIndex" href="javaScript:;" class="indexreturn">首页</a>&gt;
21
-					<a href="javaScript:;">智慧后勤</a>&gt;
22
-					<a href="javascript:location.reload()" class="now_position">维系项目时效维护</a>
19
+					<a id="ReIndex" href="javaScript:;">首页</a>&gt;
20
+					<a href="javaScript:;">故障报修</a>&gt;
21
+					<a href="javascript:location.reload()" class="now_position">维修项目时效</a>
23 22
 				</sapn>
24 23
 			</div>
25 24
 		</div>
26
-		<div class="wrapper wrapper-content animated fadeInRight equp_management">
27
-			<div class="th-box">
28
-				<div class="form-inline th-bar clearfix">
29
-					<div class="form-group">
30
-						<select class="form-control selectpicker" id="bzid">
31
-							<option value="">请选择班组</option>
32
-						</select>
33
-					</div>
34
-					<!-- <div class="form-group time-box">
35
-						<i class="tub fa fa-calendar"></i>
36
-						<input class="form-control search_time" type="text" id="sc_times" placeholder="请选择查询时间范围">
37
-					</div>
38
-					<div class="form-group time-box">
39
-						<i class="tub fa fa-search"></i>
40
-						<input type="text" class="form-control" id="sc_key" placeholder="请输入姓名,手机号码,固话" style="width: 260px;">
41
-					</div> -->
42
-					<div class="form-group tool_bars pull-right">
43
-						<input type="button" class="btn_gray" id="sc_btns" value="搜索" />
44
-						<input type="button" class="btn_gray" authorize="yes" id="HY_add" onclick="btn_add()" value="添加" />
45
-						<!-- <input type="button" class="btn_gray" authorize="yes" id="HY_deletes" onclick="btn_deletes()" value="批量删除" /> -->
46
-					</div>
25
+		<div class="th-box th-bar">
26
+			<div class="form-inline clearfix">
27
+				<!--<div class="form-group time-box">
28
+					<i class="tub fa fa-search"></i>
29
+					<input type="text" class="form-control" id="sc_keyWords" placeholder="请输入菜单名称">
30
+				</div>-->
31
+				<div class="form-group tool_bars pull-right">
32
+					<!--<input type="button" class="btn_gray" id="sc_btns" value="搜索" />-->
33
+					<input type="button" class="btn_gray" authorize="yes" id="HY_add" onclick="btn_add()" value="添加" />
47 34
 				</div>
48 35
 			</div>
49
-			<div class="tab_contents" id="tab_contents">
50
-				<div class="tabs_details showtabs">
51
-					<table id="table_all" data-row-style="rowStyle" data-query-params="queryParams">
52
-						<thead>
53
-							<tr>
54
-								<!-- <th data-checkbox="true"></th> -->
55
-								<th data-field="wxcenter" data-width="100" data-align="center">维修项目</th>
56
-								<th data-field="timecount" data-width="8%" data-align="center">时长</th>
57
-								<th data-field="bzname" data-width="8%" data-align="center">班组名称</th>
58
-								
59
-								<th data-width="8%" data-align="center" data-formatter="formatterOperate">操作</th>
60
-							</tr>
61
-						</thead>
62
-					</table>
63
-				</div>
36
+		</div>
37
+		<div class="wrapper wrapper-content animated fadeInRight">
38
+			<div class="gridPanel">
39
+				<div id="gridList"></div>
40
+				<!--<table id="gridList"></table>-->
64 41
 			</div>
65 42
 		</div>
66
-		<script src="../Script/Common/regexs.js"></script>
67
-		<script src="../js/laydate/laydate.js"></script>
68
-		<script src="../js/bootstrap-select/js/bootstrap-select.js"></script>
69
-		<script src="../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
43
+		<script src="../js/select2/js/select2.min.js"></script>
44
+		<script src="../public/treeGrid/TreeGrid.js"></script>
70 45
 		<script src="js/maintainProject.js"></script>
71 46
 	</body>
72 47
 

+ 71 - 0
equipmentOperationManage/maintainProjectBF.html

@@ -0,0 +1,71 @@
1
+<!DOCTYPE html>
2
+<html>
3
+
4
+	<head>
5
+		<meta charset="UTF-8">
6
+		<title>维系项目时效维护</title>
7
+		<meta name="viewport" content="width=device-width, initial-scale=1.0">
8
+		<script src="../Script/Common/huayi.load.js"></script>
9
+		<script src="../Script/Common/huayi.config.js"></script>
10
+		<link href="../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
11
+		<link href="../css/Table/table1.css" rel="stylesheet" />
12
+		<link href="../css/init.css" rel="stylesheet" />
13
+		<link href="../css/projectManagement.css" rel="stylesheet" />
14
+	</head>
15
+
16
+	<body class="gray-bg">
17
+		<div class="daoHang clearfix">
18
+			<div class="dhLeft">
19
+				<sapn><i class="syIcon"></i>位置:
20
+					<a id="ReIndex" href="javaScript:;" class="indexreturn">首页</a>&gt;
21
+					<a href="javaScript:;">智慧后勤</a>&gt;
22
+					<a href="javascript:location.reload()" class="now_position">维系项目时效维护</a>
23
+				</sapn>
24
+			</div>
25
+		</div>
26
+		<div class="wrapper wrapper-content animated fadeInRight equp_management">
27
+			<div class="th-box">
28
+				<div class="form-inline th-bar clearfix">
29
+					<div class="form-group">
30
+						<select class="form-control selectpicker" id="bzid">
31
+							<option value="">请选择班组</option>
32
+						</select>
33
+					</div>
34
+					<!-- <div class="form-group time-box">
35
+						<i class="tub fa fa-calendar"></i>
36
+						<input class="form-control search_time" type="text" id="sc_times" placeholder="请选择查询时间范围">
37
+					</div>
38
+					<div class="form-group time-box">
39
+						<i class="tub fa fa-search"></i>
40
+						<input type="text" class="form-control" id="sc_key" placeholder="请输入姓名,手机号码,固话" style="width: 260px;">
41
+					</div> -->
42
+					<div class="form-group tool_bars pull-right">
43
+						<input type="button" class="btn_gray" id="sc_btns" value="搜索" />
44
+						<input type="button" class="btn_gray" authorize="yes" id="HY_add" onclick="btn_add()" value="添加" />
45
+						<!-- <input type="button" class="btn_gray" authorize="yes" id="HY_deletes" onclick="btn_deletes()" value="批量删除" /> -->
46
+					</div>
47
+				</div>
48
+			</div>
49
+			<div class="tab_contents" id="tab_contents">
50
+				<div class="tabs_details showtabs">
51
+					<table id="table_all" data-row-style="rowStyle" data-query-params="queryParams">
52
+						<thead>
53
+							<tr>
54
+								<th data-field="wxcenter" data-width="100" data-align="center">维修项目</th>
55
+								<th data-field="timecount" data-width="8%" data-align="center">时长</th>
56
+								<th data-field="bzname" data-width="8%" data-align="center">班组名称</th>
57
+								<th data-width="8%" data-align="center" data-formatter="formatterOperate">操作</th>
58
+							</tr>
59
+						</thead>
60
+					</table>
61
+				</div>
62
+			</div>
63
+		</div>
64
+		<script src="../Script/Common/regexs.js"></script>
65
+		<script src="../js/laydate/laydate.js"></script>
66
+		<script src="../js/bootstrap-select/js/bootstrap-select.js"></script>
67
+		<script src="../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
68
+		<script src="js/maintainProject.js"></script>
69
+	</body>
70
+
71
+</html>

+ 11 - 11
equipmentOperationManage/template/HandleEquipmentRepair.html

@@ -291,14 +291,14 @@
291 291
                 </div>
292 292
             </div>
293 293
 
294
-            <div class="form-group">
294
+            <!--<div class="form-group">
295 295
                 <label for="bzid" class="col-sm-3 control-label text-right"><b class="text_require">*</b>维修项目内容</label>
296 296
                 <div class="col-sm-9">
297 297
                     <select class="form-control selectpicker" id="bzid" data-live-search="true">
298 298
                         <option value="">请选择维修项目内容</option>
299 299
                     </select>
300 300
                 </div>
301
-            </div>
301
+            </div>-->
302 302
             <div class="form-group">
303 303
                 <div class="col-sm-12" style="text-align: center;">
304 304
                     <input type="button" id="HY_save" class="btn_gray btn" onclick="btn_save()" value="处理" />
@@ -682,13 +682,13 @@
682 682
                 });
683 683
                 return;
684 684
             }
685
-            if ($("#bzid").val() == '') {
686
-                layer.confirm('请选择维修项目内容!', {
687
-                    icon: 2,
688
-                    btn: ['确定'] //按钮
689
-                });
690
-                return;
691
-            }
685
+//          if ($("#bzid").val() == '') {
686
+//              layer.confirm('请选择维修项目内容!', {
687
+//                  icon: 2,
688
+//                  btn: ['确定'] //按钮
689
+//              });
690
+//              return;
691
+//          }
692 692
 
693 693
 
694 694
 
@@ -713,7 +713,7 @@
713 713
                     detail: $('#exceptiondes').val(), //	异常说明
714 714
                     CLpeoplefrom: $('#origins').val(), //来源
715 715
                     state: $('#states').val(), //	工单状态:3已完成,6挂起
716
-                    wxtimeid: $('#bzid').val(), //维修内容
716
+//                  wxtimeid: $('#bzid').val(), //维修内容
717 717
                     gqbecause: $('#gqbecause').val(),
718 718
                     dealusers: userCodes //协同人
719 719
                 },
@@ -809,7 +809,7 @@
809 809
             })
810 810
         }
811 811
         $(function () {
812
-            getwxcontent()
812
+//          getwxcontent()
813 813
         })
814 814
         // 获取维修内容
815 815
         function getwxcontent() {

+ 165 - 0
equipmentOperationManage/template/HandleReturnRepair.html

@@ -0,0 +1,165 @@
1
+<!DOCTYPE html>
2
+<html>
3
+
4
+<head>
5
+    <meta charset="UTF-8">
6
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+    <link href="../../css/plugins/cropper/cropper.min.css" rel="stylesheet">
8
+    <script src="../../Script/Common/huayi.load.js"></script>
9
+    <script src="../../Script/Common/huayi.config.js"></script>
10
+    <script src="../../js/bootstrap-select/js/bootstrap-select.js"></script>
11
+    <script src="../../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
12
+    <script src="../../js/laydate/laydate.js"></script>
13
+    <link href="../../css/init.css" rel="stylesheet" />
14
+    <link rel="stylesheet" type="text/css" href="../../css/Table/table1.css" />
15
+    <link href="../../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
16
+    <link rel="stylesheet" href="../../css/webuploader.css" />
17
+    <title>设备维修处理</title>
18
+    <style>
19
+        .btnn {
20
+            background: #2f4050;
21
+            color: #fff;
22
+            padding: 3px 10px;
23
+            border: 0;
24
+            border-radius: 3px;
25
+            cursor: pointer;
26
+        }
27
+
28
+        .crop_left {
29
+            width: 40%;
30
+            float: left;
31
+        }
32
+
33
+        .crop_right {
34
+            width: 30%;
35
+            float: right;
36
+            margin-right: 25px;
37
+        }
38
+
39
+        i.tub {
40
+            right: 25px !important;
41
+        }
42
+
43
+        b.text_require {
44
+            color: red;
45
+        }
46
+
47
+        .loader_icon {
48
+            display: block;
49
+            height: 36px;
50
+            width: 36px;
51
+            background: url(../../img/upLod.png) no-repeat;
52
+        }
53
+
54
+        .table_extension tr td:last-child {
55
+            text-align: right !important;
56
+        }
57
+
58
+        .togetherbox {
59
+            display: none;
60
+        }
61
+
62
+        .gqbecausewrap {
63
+            display: none;
64
+        }
65
+
66
+        select.bs-select-hidden,
67
+        select.selectpicker {
68
+            display: block !important;
69
+        }
70
+    </style>
71
+</head>
72
+
73
+<body class="gray-bg">
74
+    <div class="container wrapper-content animated fadeInRight">
75
+        <div class="form-horizontal">
76
+
77
+            <div class="form-group">
78
+                <label for="woCode" class="col-sm-3 control-label text-right"><b class="text_require">*</b>工单编号</label>
79
+                <div class="col-sm-9">
80
+                    <input id="woCode" class="form-control" type="text" autocomplete="off" readonly="readonly" />
81
+                </div>
82
+            </div>
83
+
84
+            <div class="form-group">
85
+                <label for="repairnotes" class="col-sm-3 control-label text-right"><b
86
+                        class="text_require">*</b>返修意见</label>
87
+                <div class="col-sm-9">
88
+                    <textarea id="repairnotes" class="form-control" name="" rows="" autocomplete="off" cols=""
89
+                        style="resize: none;"></textarea>
90
+                </div>
91
+            </div>
92
+            <div class="form-group">
93
+                <label for="origins" class="col-sm-3 control-label text-right"><b class="text_require">*</b>来源</label>
94
+                <div class="col-sm-9">
95
+                    <select class="form-control selectpicker" id="channel">
96
+                        <option value=""></option>
97
+                        <option value="本院">本院</option>
98
+                        <option value="第三方">第三方</option>
99
+                    </select>
100
+                </div>
101
+            </div>
102
+            <div class="form-group">
103
+                <div class="col-sm-12" style="text-align: center;">
104
+                    <input type="button" id="HY_save" class="btn_gray btn" onclick="btn_save()" value="处理" />
105
+                </div>
106
+            </div>
107
+
108
+        </div>
109
+    </div>
110
+    <script src="../js/equipmentCommon.js"></script>
111
+    <script src="../../js/webuploader.min.js"></script>
112
+    <script>
113
+        var code = helper.request.queryString("code");
114
+        var floorId = helper.request.queryString("floorId");
115
+        var serveMan = window.localStorage.getItem('userCode');
116
+        $(document).ready(function () {
117
+            $('#woCode').val(code);
118
+        })
119
+        //保存	
120
+        function btn_save() {
121
+            addValue();
122
+        }
123
+        //处理
124
+        function addValue() {
125
+
126
+            if ($("#repairnotes").val() == '') {
127
+                layer.confirm('请输入返修意见!', {
128
+                    icon: 2,
129
+                    btn: ['确定'] //按钮
130
+                });
131
+                return;
132
+            }
133
+            if ($("#channel").val() == '') {
134
+                layer.confirm('请选择来源!', {
135
+                    icon: 2,
136
+                    btn: ['确定'] //按钮
137
+                });
138
+                return;
139
+            }
140
+
141
+            // 提交
142
+            $.ajax({
143
+                type: "post",
144
+                url: huayi.config.callcenter_url + "/equipmentapi/api/WoRepairBase/repair",
145
+                async: true,
146
+                dataType: 'json',
147
+                data: {
148
+                    wocode: code, //工单编号
149
+                    repairnotes: $('#repairnotes').val(), //异常说明
150
+                    channel: $('#channel').val(), //来源
151
+                },
152
+                success: function (data) {
153
+                    if (data.state.toLowerCase() == 'success') {
154
+                        var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
155
+                        parent.layer.close(index); //再执行关闭  
156
+                        layer.msg(data.message);
157
+                        parent.$('#table1').bootstrapTable('refresh');
158
+                    }
159
+                }
160
+            });
161
+       }
162
+    </script>
163
+</body>
164
+
165
+</html>

+ 62 - 6
equipmentOperationManage/template/addEquipmentRepair.html

@@ -17,6 +17,7 @@
17 17
 		<link href="../../css/init.css" rel="stylesheet" />
18 18
 		<link rel="stylesheet" type="text/css" href="../../css/Table/table1.css" />
19 19
 		<link rel="stylesheet" href="../../css/webuploader.css" />
20
+		<link rel="stylesheet" type="text/css" href="../../js/bootstrap-treeview/bootstrap-treeview.min.css" />
20 21
 		<!-- <link rel="stylesheet" type="text/css" href="../css/call.css"/> -->
21 22
 		<title>新增设备维修</title>
22 23
 		<style>
@@ -161,6 +162,14 @@
161 162
 			.thumbnail:hover .info {
162 163
 				display: block;
163 164
 			}
165
+			#menusTreeView {
166
+				position: absolute;
167
+				background-color: #fff;
168
+				z-index: 2;
169
+				width: 94%;
170
+				max-height: 256px;
171
+				overflow-y: auto;
172
+			}
164 173
     </style>
165 174
 	</head>
166 175
 
@@ -225,13 +234,36 @@
225 234
 
226 235
 					</div>
227 236
 				</div>
228
-				<div class="form-group" id="eqmargin">
237
+				<div class="form-group">
238
+					<label for="floor" class="col-sm-3 control-label text-right"><b class="text_require">*</b>报修类型</label>
239
+					<div class="col-sm-9" style="position: relative;">
240
+
241
+						<input type="text" autocomplete="off" class="form-control" id="menus" data-id="0" placeholder="请选择报修类型默认是顶级分类" />
242
+						<span class="caret" style="position: absolute; right: 27px; top:15px;"></span>
243
+						<div id="menusTreeView" class="hidden"></div>
244
+
245
+					</div>
246
+				</div>
247
+				<div class="form-group">
248
+					<label for="floor" class="col-sm-3 control-label text-right"><b class="text_require">*</b>是否派单</label>
249
+					<div id="ispd" class="r_order_type col-col-sm-9" style="margin-left: 15px;">
250
+						<label class="radio-inline">
251
+							<input type="radio" name="isoverOptions" value="1" checked="checked">是
252
+						</label>
253
+						<label class="radio-inline">
254
+							<input type="radio" name="isoverOptions" value="0">否
255
+						</label>
256
+					</div>
257
+				</div>
258
+				
259
+				<!--<div class="form-group" id="eqmargin">
229 260
 					<div class="col-sm-9 " id="selecteqname">
230
-						<b class="text_require">*</b>设备名称<input list="equipname" type="text" class="selequipname form-control" />
261
+						<b class="text_require">*</b>报修类型<input list="equipname" type="text" class="selequipname form-control" />
231 262
 					</div>
232 263
 					<datalist id="equipname">
233 264
 					</datalist>
234
-				</div>
265
+				</div>-->
266
+				
235 267
 				<div class="form-group hidden">
236 268
 					<label for="protype_addText" class="col-sm-3 control-label text-right"><b class="text_require">*</b>项目类型</label>
237 269
 					<div class="col-sm-9">
@@ -330,6 +362,7 @@
330 362
 			</div>
331 363
 		</div>
332 364
 		<script src="../../js/webuploader/webuploader.min.js"></script>
365
+		<script src="../../js/bootstrap-treeview/bootstrap-treeview.min.js"></script>
333 366
 		<!--<script src="../js/equipmentCommon.js"></script>-->
334 367
 		<script src="../js/addEquipmentRepair.js"></script>
335 368
 		<script>
@@ -373,9 +406,29 @@
373 406
 					$("#filePicker0").show()
374 407
 					ajaxUrl = "equipmentapi/api/worepairbase/add";
375 408
 				}
409
+				window.localStorage.getItem('userName') && $("#formComplainedUnit").val(window.localStorage.getItem('userName'))
410
+				window.localStorage.getItem('mobile') && $("#contactway").val(window.localStorage.getItem('mobile'))
376 411
 				//省市
377 412
 				getProvinceCity($('#province'));
378 413
 				getequipment()
414
+				getMenuLists()
415
+				$('#menus').on('focus click', function() {
416
+					$('#menusTreeView').removeClass('hidden').addClass('show');
417
+				});
418
+				$('#menus').on('keyup', function() {
419
+					if($(this).val() == '') {
420
+						$('menusTreeView').treeview('uncheckAll', {
421
+							silent: true
422
+						});
423
+						$(this).attr('data-id', '000000000000000000000000');
424
+					}
425
+				});
426
+				$('#menus + .caret').on('click', function() {
427
+					$('#menusTreeView').removeClass('hidden').addClass('show');
428
+				});
429
+				$('#menusTreeView').mouseleave(function() {
430
+					$(this).removeClass('show').addClass('hidden');
431
+				});
379 432
 			})
380 433
 			//获取详情
381 434
 			function getValue(ids) {
@@ -397,7 +450,7 @@
397 450
 							$('#repairoom').val(modelList.repairoom) // 报修地点
398 451
 							$('#floor').selectpicker('val', modelList.floorid.toString()).trigger('change') //科室
399 452
 							$(".selequipname").val(modelList.faultdescripe) //设备名称
400
-
453
+							$("#menus").val(modelList.faultdescripe+'-'+modelList.Jwocode)
401 454
 
402 455
 							if (modelList.faultpic) {
403 456
 								$(modelList.faultpic).each(function(g, h) {
@@ -663,7 +716,7 @@
663 716
 					return;
664 717
 				}
665 718
 
666
-				if (!$(".selequipname").val()) {
719
+				if (!$("#menus").val()) {
667 720
 					layer.confirm('请选择或输入设备名称!', {
668 721
 						icon: 2,
669 722
 						btn: ['确定'] //按钮
@@ -690,7 +743,10 @@
690 743
 						repairtime: getFormatDate(), //	报修时间
691 744
 						repairman: $("#formComplainedUnit").val(), // 是	string	报修人
692 745
 						contactway: $('#contactway').val(), //		是	string	联系方式
693
-						faultdescripe: $(".selequipname").val(), // $('#faultdescripe').val(), //	否	string	故障说明
746
+						faultdescripe:  $("#menus").val() && $("#menus").val().split('-')[0], // $('#faultdescripe').val(), //	否	string	故障说明
747
+						assignman:  $("#menus").val() && $("#menus").val().split('-')[1], // $('#faultdescripe').val(), //	否	string	故障说明
748
+						ispd: $('#ispd').find('input[type="radio"]:checked').val(), //  $(".ispd").val()
749
+//						assignman: $(".assignman").val(),
694 750
 						faultpic: imageArr0 //		故障图片,上传的json
695 751
 						//callid: $('#callid').val(), //否	string	通话标志ID
696 752
 					},

+ 120 - 106
equipmentOperationManage/template/addmaintainProject.html

@@ -1,107 +1,121 @@
1
-<!DOCTYPE html>
2
-<html>
3
-
4
-<head>
5
-    <meta charset="UTF-8">
6
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
-    <link href="../../css/plugins/cropper/cropper.min.css" rel="stylesheet">
8
-    <script src="../../Script/Common/huayi.load.js"></script>
9
-    <script src="../../Script/Common/huayi.config.js"></script>
10
-    <script src="../../js/bootstrap-select/js/bootstrap-select.js"></script>
11
-    <script src="../../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
12
-    <script src="../../Script/Common/regexs.js"></script>
13
-    <link href="../../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
14
-    <script src="../../js/laydate/laydate.js"></script>
15
-    <link href="../../css/init.css" rel="stylesheet" />
16
-    <link rel="stylesheet" type="text/css" href="../../css/Table/table1.css" />
17
-    <link rel="stylesheet" href="../../css/webuploader.css" />
18
-    <title>维系项目时效维护</title>
19
-    <style>
20
-        .btnn {
21
-            background: #2f4050;
22
-            color: #fff;
23
-            padding: 3px 10px;
24
-            border: 0;
25
-            border-radius: 3px;
26
-            cursor: pointer;
27
-        }
28
-
29
-        .crop_left {
30
-            width: 40%;
31
-            float: left;
32
-        }
33
-
34
-        .crop_right {
35
-            width: 30%;
36
-            float: right;
37
-            margin-right: 25px;
38
-        }
39
-
40
-        .time-box .dates {
41
-            width: 100% !important;
42
-        }
43
-
44
-        i.tub {
45
-            right: 25px !important;
46
-        }
47
-
48
-        b.text_require {
49
-            color: red;
50
-        }
51
-
52
-        .loader_icon {
53
-            display: block;
54
-            height: 36px;
55
-            width: 36px;
56
-            background: url(../../img/upLod.png) no-repeat;
57
-        }
58
-
59
-        .proCity {
60
-            display: inline-block;
61
-            width: 49%;
62
-        }
63
-        /*#city{
64
-                width: 50%;
65
-            }*/
66
-        .addBtn {
67
-            margin-left: 5px;
68
-        }
69
-
70
-        .table_extension tr td:last-child {
71
-            text-align: right !important;
72
-        }
73
-    </style>
74
-</head>
75
-
76
-<body class="gray-bg">
77
-    <div class="container wrapper-content animated fadeInRight">
78
-        <div class="form-horizontal">
79
-           <div class="form-group">
					<label for="bzid" class="col-sm-3 control-label text-right">班组</label>
					<div class="col-sm-9">
						<select class="form-control selectpicker" id="bzid" data-live-search="true">
						<option value="">请选择班组</option> 
						</select>
					</div>
				</div>
80
-				<div class="form-group">
81
-				    <label for="equipname" class="col-sm-3 control-label text-right">时长</label>
82
-				    <div class="col-sm-9">
83
-				        <input id="timecount" type="text" class="form-control" onkeyup='this.value=this.value.replace(/\D/gi,"")'/ placeholder="请输入时长">
84
-				    </div>
85
-				</div>
86
-				<div class="form-group">
87
-				    <label for="equipname" class="col-sm-3 control-label text-right">维修项目</label>
88
-				    <div class="col-sm-9">
89
-				        <input id="wxcenter" type="text" class="form-control" placeholder="请输入维修项目">
90
-				    </div>
91
-				</div>
92
-            <div class="form-group">
93
-                <div class="col-sm-12" style="text-align: center;">
94
-                    <input type="button" id="HY_save" class="btn_gray btn" value="保存" />
95
-                </div>
96
-            </div>
97
-
98
-        </div>
99
-
100
-    </div>
101
-    <script src="../js/equipmentCommon.js"></script>
102
-    <script src="../../Script/Common/regexs.js"></script>
103
-    <script src="../../js/webuploader.min.js"></script>
104
-    <script src="../js/addmaintainProject.js"></script>
105
-</body>
106
-
1
+<!DOCTYPE html>
2
+<html>
3
+
4
+	<head>
5
+		<meta charset="UTF-8">
6
+		<title>添加或修改菜单</title>
7
+		<meta name="viewport" content="width=device-width, initial-scale=1.0">
8
+		<link rel="stylesheet" href="../../js/laydate/theme/default/laydate.css" />
9
+		<script src="../../Script/Common/huayi.load.js"></script>
10
+		<script src="../../Script/Common/huayi.config.js"></script>
11
+		<link rel="stylesheet" href="../../js/select2/css/select2.min.css" />
12
+		<link href="../../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
13
+		<link rel="stylesheet" type="text/css" href="../../js/bootstrap-treeview/bootstrap-treeview.min.css" />
14
+		<link rel="stylesheet" href="../../css/templateHtmlCss/uerManagement.css" />
15
+		<style>
16
+			@font-face {
17
+				font-family: "iconfont";
18
+				src: url('../../fonts/iconfont.eot');
19
+				/* IE9*/
20
+				src: url('../../fonts/iconfont.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
21
+				url('../../fonts/iconfont.woff') format('woff'), /* chrome, firefox */
22
+				url('../../fonts/iconfont.ttf') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
23
+				url('../../fonts/iconfont.svg#iconfont') format('svg');
24
+				/* iOS 4.1- */
25
+			}
26
+			
27
+			.iconfont {
28
+				font-family: "iconfont" !important;
29
+				font-size: 16px;
30
+				font-style: normal;
31
+				-webkit-font-smoothing: antialiased;
32
+				-webkit-text-stroke-width: 0.2px;
33
+				-moz-osx-font-smoothing: grayscale;
34
+			}
35
+			
36
+			.icon-color {
37
+				color: #1aaad0;
38
+				padding-right: 5px;
39
+				vertical-align: middle;
40
+				font-size: 30px;
41
+			}
42
+			
43
+			.select2-container--default .select2-results__option--highlighted[aria-selected] {
44
+				background-color: rgba(0, 0, 0, .5)!important;
45
+			}
46
+			
47
+			.drop_down {
48
+				position: relative;
49
+			}
50
+			
51
+			.drop_down .caret {
52
+				position: absolute;
53
+				right: 24px;
54
+				top: 15px;
55
+			}
56
+			
57
+			.form-group {
58
+				margin-bottom: 5px;
59
+			}
60
+			
61
+			#menusTreeView {
62
+				position: absolute;
63
+				background-color: #fff;
64
+				z-index: 2;
65
+				width: 94%;
66
+				max-height: 256px;
67
+				overflow-y: auto;
68
+			}
69
+		</style>
70
+	</head>
71
+
72
+	<body>
73
+		<div class="container">
74
+			<ul class="project_items form-horizontal showtabs">
75
+				<li class="form-group drop_down">
76
+					<label for="menus" class="col-md-3">父级分类:</label>
77
+					<div class="col-md-5">
78
+						<input type="text" autocomplete="off" class="form-control" id="menus" data-id="0" placeholder="请选择菜单默认是顶级分类" />
79
+						<span class="caret"></span>
80
+						<div id="menusTreeView" class="hidden"></div>
81
+					</div>
82
+				</li>
83
+				<li class="form-group">
84
+					<label for="bzid" class="col-md-3">班组</label>
85
+					<div class="col-md-5">
86
+						<select class="form-control selectpicker" id="bzid" data-live-search="true">
87
+							<option value="">请选择班组</option> 
88
+						</select>
89
+					</div>
90
+				</li>
91
+				<li class="form-group">
92
+					<label for="wxcenter" class="col-md-3">维修项目:</label>
93
+					<div class="col-md-5">
94
+						<input id="wxcenter" class="form-control" type="text" autocomplete="off" />
95
+					</div>
96
+				</li>
97
+				<li class="form-group">
98
+					<label for="timecount" class="col-md-3">时长:</label>
99
+					<div class="col-md-5">
100
+						<input id="timecount" onkeyup='this.value=this.value.replace(/\D/gi,"")'/ class="form-control" type="text" autocomplete="off" />
101
+					</div>
102
+				</li>
103
+
104
+			</ul>
105
+			<div class="form-group clearfix">
106
+				<div class="text-center">
107
+					<button class="project_save btn btn-primary" id="save_btns" type="button">保存</button>
108
+				</div>
109
+			</div>
110
+
111
+		</div>
112
+		<script src="../../js/bootstrap-select/js/bootstrap-select.js"></script>
113
+		<script src="../../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
114
+		<script src="../../js/select2/js/select2.min.js"></script>
115
+		<script src="../../js/bootstrap-treeview/bootstrap-treeview.min.js"></script>
116
+		<script src="../../Script/Common/regexs.js"></script>
117
+		<script src="../../js/autosize/autosize.min.js"></script>
118
+		<script src="../js/addmaintainProject.js"></script>
119
+	</body>
120
+
107 121
 </html>

+ 107 - 0
equipmentOperationManage/template/addmaintainProjectBF.html

@@ -0,0 +1,107 @@
1
+<!DOCTYPE html>
2
+<html>
3
+
4
+<head>
5
+    <meta charset="UTF-8">
6
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+    <link href="../../css/plugins/cropper/cropper.min.css" rel="stylesheet">
8
+    <script src="../../Script/Common/huayi.load.js"></script>
9
+    <script src="../../Script/Common/huayi.config.js"></script>
10
+    <script src="../../js/bootstrap-select/js/bootstrap-select.js"></script>
11
+    <script src="../../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
12
+    <script src="../../Script/Common/regexs.js"></script>
13
+    <link href="../../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
14
+    <script src="../../js/laydate/laydate.js"></script>
15
+    <link href="../../css/init.css" rel="stylesheet" />
16
+    <link rel="stylesheet" type="text/css" href="../../css/Table/table1.css" />
17
+    <link rel="stylesheet" href="../../css/webuploader.css" />
18
+    <title>维系项目时效维护</title>
19
+    <style>
20
+        .btnn {
21
+            background: #2f4050;
22
+            color: #fff;
23
+            padding: 3px 10px;
24
+            border: 0;
25
+            border-radius: 3px;
26
+            cursor: pointer;
27
+        }
28
+
29
+        .crop_left {
30
+            width: 40%;
31
+            float: left;
32
+        }
33
+
34
+        .crop_right {
35
+            width: 30%;
36
+            float: right;
37
+            margin-right: 25px;
38
+        }
39
+
40
+        .time-box .dates {
41
+            width: 100% !important;
42
+        }
43
+
44
+        i.tub {
45
+            right: 25px !important;
46
+        }
47
+
48
+        b.text_require {
49
+            color: red;
50
+        }
51
+
52
+        .loader_icon {
53
+            display: block;
54
+            height: 36px;
55
+            width: 36px;
56
+            background: url(../../img/upLod.png) no-repeat;
57
+        }
58
+
59
+        .proCity {
60
+            display: inline-block;
61
+            width: 49%;
62
+        }
63
+        /*#city{
64
+                width: 50%;
65
+            }*/
66
+        .addBtn {
67
+            margin-left: 5px;
68
+        }
69
+
70
+        .table_extension tr td:last-child {
71
+            text-align: right !important;
72
+        }
73
+    </style>
74
+</head>
75
+
76
+<body class="gray-bg">
77
+    <div class="container wrapper-content animated fadeInRight">
78
+        <div class="form-horizontal">
79
+           <div class="form-group">
					<label for="bzid" class="col-sm-3 control-label text-right">班组</label>
					<div class="col-sm-9">
						<select class="form-control selectpicker" id="bzid" data-live-search="true">
						<option value="">请选择班组</option> 
						</select>
					</div>
				</div>
80
+				<div class="form-group">
81
+				    <label for="equipname" class="col-sm-3 control-label text-right">时长</label>
82
+				    <div class="col-sm-9">
83
+				        <input id="timecount" type="text" class="form-control" onkeyup='this.value=this.value.replace(/\D/gi,"")'/ placeholder="请输入时长">
84
+				    </div>
85
+				</div>
86
+				<div class="form-group">
87
+				    <label for="equipname" class="col-sm-3 control-label text-right">维修项目</label>
88
+				    <div class="col-sm-9">
89
+				        <input id="wxcenter" type="text" class="form-control" placeholder="请输入维修项目">
90
+				    </div>
91
+				</div>
92
+            <div class="form-group">
93
+                <div class="col-sm-12" style="text-align: center;">
94
+                    <input type="button" id="HY_save" class="btn_gray btn" value="保存" />
95
+                </div>
96
+            </div>
97
+
98
+        </div>
99
+
100
+    </div>
101
+    <script src="../js/equipmentCommon.js"></script>
102
+    <script src="../../Script/Common/regexs.js"></script>
103
+    <script src="../../js/webuploader.min.js"></script>
104
+    <script src="../js/addmaintainProject.js"></script>
105
+</body>
106
+
107
+</html>

+ 1 - 0
login.html

@@ -174,6 +174,7 @@
174 174
 						layer.close(loadIndex);
175 175
 						/*验证请求*/
176 176
 						if (data.state == "success") {
177
+							debugger
177 178
 							$storages.setItem('token', data.data.token);
178 179
 							$storages.setItem('headImg', data.data.head_img);
179 180
 							$storages.setItem('userName', data.data.username);

+ 47 - 0
public/treeGrid/TreeGrid.css

@@ -0,0 +1,47 @@
1
+body{
2
+	font-size:11px;
3
+}
4
+.TreeGrid{
5
+	border-collapse: collapse; 
6
+	font-size: 11px;
7
+	border: 1px solid #778899;
8
+}
9
+
10
+.TreeGrid .header{
11
+	background-color: #87CEEB;
12
+	font-size: 11px;
13
+	font-weight: 600;
14
+}
15
+
16
+.TreeGrid td{
17
+	border: 1px solid #E6E6FA;
18
+	padding: 4px 3px 2px 3px;
19
+}
20
+
21
+.TreeGrid a{
22
+	text-decoration: underline;
23
+	color: black;
24
+}
25
+
26
+.TreeGrid a:hover{
27
+	color: blue;
28
+}
29
+
30
+.TreeGrid .image_hand{
31
+	border: 0;
32
+	cursor:hand;
33
+	align:absmiddle;
34
+}
35
+
36
+.TreeGrid .image_nohand{
37
+	border: 0;
38
+	align:absmiddle;
39
+}
40
+
41
+.TreeGrid .row_hover{
42
+	background-color: #E6E6FA;
43
+}
44
+
45
+.TreeGrid .row_active{
46
+	background-color: #E0FFFF;
47
+}

+ 258 - 0
public/treeGrid/TreeGrid.js

@@ -0,0 +1,258 @@
1
+TreeGrid = function (_config) {
2
+    _config = _config || {};
3
+
4
+    var s = "";
5
+    var rownum = 0;
6
+    var __root;
7
+
8
+    var __selectedData = null;
9
+    var __selectedId = null;
10
+    var __selectedIndex = null;
11
+
12
+    var folderOpenIcon = (_config.folderOpenIcon || TreeGrid.FOLDER_OPEN_ICON);
13
+    var folderCloseIcon = (_config.folderCloseIcon || TreeGrid.FOLDER_CLOSE_ICON);
14
+    var defaultLeafIcon = (_config.defaultLeafIcon || TreeGrid.DEFAULT_LEAF_ICON);
15
+
16
+    //显示表头行
17
+    drowHeader = function () {
18
+        s += "<thead><tr class='header'id='header' height='" + (_config.headerHeight || "25") + "'>";
19
+        var cols = _config.columns;
20
+        for (i = 0; i < cols.length; i++) {
21
+            var col = cols[i];
22
+            s += "<th align='" + (col.headerAlign || _config.headerAlign || "center") + "' width='" + (col.width || "") + "'><div class='th-inner '>" + (col.headerText || "") + "</div></th>";
23
+        }
24
+        s += "</tr></thead>";
25
+    }
26
+
27
+    //递归显示数据行
28
+    drowData = function () {
29
+        var rows = _config.data;
30
+        var cols = _config.columns;
31
+        drowRowData(rows, cols, 1, "");
32
+    }
33
+
34
+    //局部变量i、j必须要用 var 来声明,否则,后续的数据无法正常显示
35
+    drowRowData = function (_rows, _cols, _level, _pid) {
36
+        var op = "Y"
37
+        var folderColumnIndex = (_config.folderColumnIndex || 0);
38
+
39
+        for (var i = 0; i < _rows.length; i++) {
40
+            var id = _pid + "_" + i; //行id
41
+            var row = _rows[i];
42
+
43
+            s += "<tr id='TR" + id + "' pid='" + ((_pid == "") ? "" : ("TR" + _pid)) + "' open='Y' data=\"" + TreeGrid.json2str(row) + "\" rowIndex='" + rownum++ + "'>";
44
+            for (var j = 0; j < _cols.length; j++) {
45
+                var col = _cols[j];
46
+                s += "<td align='" + (col.dataAlign || _config.dataAlign || "left") + "'";
47
+
48
+                //层次缩进
49
+                if (j == folderColumnIndex) {
50
+                    s += " style='text-indent:" + (parseInt((_config.indentation || "20")) * (_level - 1)) + "px;'> ";
51
+                } else {
52
+                    s += ">";
53
+                }
54
+
55
+                //节点图标
56
+                if (j == folderColumnIndex) {
57
+                    if (row.children != "") { //有下级数据
58
+
59
+                        s += "<img folder='Y' op='" + op + "' name='imgid' id='" + row.P_ID + "' trid='TR" + id + "' src='" + folderOpenIcon + "' class='image_hand'><i></i>";
60
+                    } else {
61
+
62
+                        s += "<img src='" + defaultLeafIcon + "' class='image_nohand'><i></i>";
63
+                    }
64
+                }
65
+
66
+                //单元格内容
67
+                if (col.handler) {
68
+                    s += (eval(col.handler + ".call(new Object(), row, col)") || "") + "</td>";
69
+                } else {
70
+                    s += (row[col.dataField] || "") + "</td>";
71
+                }
72
+            }
73
+            s += "</tr>";
74
+
75
+            //递归显示下级数据
76
+            if (row.children) {
77
+                drowRowData(row.children, _cols, _level + 1, id);
78
+            }
79
+        }
80
+    }
81
+
82
+    //主函数
83
+    this.show = function () {
84
+        this.id = _config.id || ("TreeGrid" + TreeGrid.COUNT++);
85
+
86
+        s += "<table id='" + this.id + "' cellspacing=0 cellpadding=0 width='" + (_config.width || "100%") + "' class='TreeGrid table table-hover table-striped'>";
87
+        drowHeader();
88
+        drowData();
89
+        s += "</table>";
90
+
91
+        __root = jQuery("#" + _config.renderTo);
92
+        __root.append(s);
93
+
94
+        //初始化动作
95
+        init();
96
+    }
97
+
98
+    init = function () {
99
+        //以新背景色标识鼠标所指行
100
+        if ((_config.hoverRowBackground || "false") == "true") {
101
+            __root.find("tr").hover(
102
+				function () {
103
+				    if (jQuery(this).attr("class") && jQuery(this).attr("class") == "header") return;
104
+				    jQuery(this).addClass("row_hover");
105
+				},
106
+				function () {
107
+				    jQuery(this).removeClass("row_hover");
108
+				}
109
+			);
110
+        }
111
+
112
+        //将单击事件绑定到tr标签
113
+        __root.find("tr").bind("click", function () {
114
+
115
+            __root.find("tr").removeClass("row_active");
116
+            jQuery(this).addClass("row_active");
117
+
118
+            //获取当前行的数据
119
+            __selectedData = this.data || this.getAttribute("data");
120
+            __selectedId = this.id || this.getAttribute("id");
121
+            __selectedIndex = this.rownum || this.getAttribute("rowIndex");
122
+
123
+            //行记录单击后触发的事件
124
+            if (_config.itemClick) {
125
+                eval(_config.itemClick + "(__selectedId, __selectedIndex, TreeGrid.str2json(__selectedData))");
126
+            }
127
+        });
128
+
129
+        //展开、关闭下级节点
130
+        __root.find("img[folder='Y']").bind("click", function () {
131
+            var trid = this.trid || this.getAttribute("trid");
132
+            var id = this.id || this.getAttribute("id");
133
+            var isOpen = __root.find("#" + trid).get(0).getAttribute("open");
134
+            isOpen = (isOpen == "Y") ? "N" : "Y";
135
+            __root.find("#" + trid).get(0).setAttribute("open", isOpen);
136
+            __root.find("#" + id).get(0).setAttribute("op", isOpen);
137
+
138
+            //__root.find("#" + trid).attr("open", isOpen);
139
+            showHiddenNode(trid, isOpen);
140
+        });
141
+    }
142
+
143
+    //显示或隐藏子节点数据
144
+    showHiddenNode = function (_trid, _open) {
145
+        if (_open == "N") { //隐藏子节点
146
+            __root.find("#" + _trid).find("img[folder='Y']").attr("src", folderCloseIcon);
147
+            __root.find("tr[id^=" + _trid + "_]").css("display", "none");
148
+        } else { //显示子节点
149
+            __root.find("#" + _trid).find("img[folder='Y']").attr("src", folderOpenIcon);
150
+            showSubs(_trid);
151
+        }
152
+    }
153
+
154
+    //递归检查下一级节点是否需要显示
155
+    showSubs = function (_trid) {
156
+        var isOpen = __root.find("#" + _trid).get(0).getAttribute("open");
157
+        if (isOpen != "N") {
158
+            var trs = __root.find("tr[pid=" + _trid + "]");
159
+            trs.css("display", "");
160
+            for (var i = 0; i < trs.length; i++) {
161
+                showSubs(trs[i].id);
162
+            }
163
+        }
164
+    }
165
+
166
+    //展开或收起所有节点
167
+    this.expandAll = function (isOpen) {
168
+
169
+        var trs = __root.find("tr[pid='']");
170
+
171
+
172
+        for (var i = 0; i < trs.length; i++) {
173
+
174
+            var trid = trs[i].id || trs[i].getAttribute("id");
175
+            showHiddenNode(trid, isOpen);
176
+        }
177
+    }
178
+
179
+    //取得当前选中的行记录
180
+    this.getSelectedItem = function () {
181
+
182
+        return new TreeGridItem(__root, __selectedId, __selectedIndex, TreeGrid.str2json(__selectedData));
183
+    }
184
+
185
+};
186
+//公共静态变量
187
+TreeGrid.FOLDER_OPEN_ICON = "../Images/folderOpen.gif";
188
+TreeGrid.FOLDER_CLOSE_ICON = "../Images/folderClose.gif";
189
+TreeGrid.DEFAULT_LEAF_ICON = "../Images/defaultLeaf.gif";
190
+TreeGrid.COUNT = 1;
191
+
192
+//将json对象转换成字符串
193
+TreeGrid.json2str = function (obj) {
194
+    var arr = [];
195
+
196
+    var fmt = function (s) {
197
+        if (typeof s == 'object' && s != null) {
198
+            if (s.length) {
199
+                var _substr = "";
200
+                for (var x = 0; x < s.length; x++) {
201
+                    if (x > 0) _substr += ", ";
202
+                    _substr += TreeGrid.json2str(s[x]);
203
+                }
204
+                return "[" + _substr + "]";
205
+            } else {
206
+                return TreeGrid.json2str(s);
207
+            }
208
+        }
209
+        return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
210
+    }
211
+
212
+    for (var i in obj) {
213
+        if (typeof obj[i] != 'object') { //暂时不包括子数据
214
+            arr.push(i + ":" + fmt(obj[i]));
215
+        }
216
+    }
217
+
218
+    return '{' + arr.join(', ') + '}';
219
+}
220
+
221
+TreeGrid.str2json = function (s) {
222
+    var json = null;
223
+    if (jQuery.support.msie) {
224
+        json = eval("(" + s + ")");
225
+    } else {
226
+        json = new Function("return " + s)();
227
+    }
228
+    return json;
229
+}
230
+
231
+//数据行对象
232
+function TreeGridItem(_root, _rowId, _rowIndex, _rowData) {
233
+    var __root = _root;
234
+
235
+    this.id = _rowId;
236
+    this.index = _rowIndex;
237
+    this.data = _rowData;
238
+
239
+    this.getParent = function () {
240
+        var pid = jQuery("#" + this.id).attr("pid");
241
+        if (pid != "") {
242
+            var rowIndex = jQuery("#" + pid).attr("rowIndex");
243
+            var data = jQuery("#" + pid).attr("data");
244
+            return new TreeGridItem(_root, pid, rowIndex, TreeGrid.str2json(data));
245
+        }
246
+        return null;
247
+    }
248
+
249
+    this.getChildren = function () {
250
+        var arr = [];
251
+        var trs = jQuery(__root).find("tr[pid='" + this.id + "']");
252
+        for (var i = 0; i < trs.length; i++) {
253
+            var tr = trs[i];
254
+            arr.push(new TreeGridItem(__root, tr.id, tr.rowIndex, TreeGrid.str2json(tr.data)));
255
+        }
256
+        return arr;
257
+    }
258
+};

BIN
public/treeGrid/images/defaultLeaf.gif


BIN
public/treeGrid/images/folderClose.gif


BIN
public/treeGrid/images/folderOpen.gif