Przeglądaj źródła

外呼号码导入

d123 8 lat temu
rodzic
commit
5d708bebfd

+ 179 - 0
CallCenterWeb.UI/OutboundMessage/Dr.html

@@ -0,0 +1,179 @@
1
+<!DOCTYPE html>
2
+<html>
3
+
4
+	<head>
5
+		<meta charset="UTF-8">
6
+		<script src="../Script/Common/huayi.load.js"></script>
7
+		<script src="../Script/Common/huayi.config.js"></script>
8
+			<script src="../js/visit/ajaxfileupload.js"></script>
9
+		<link href="../css/Table/table1.css" rel="stylesheet" />
10
+		<link href="../css/init.css" rel="stylesheet" />
11
+		<link rel="stylesheet" href="../css/QutboundMessage/QutboundComm.css" />
12
+		<title>导入号码</title>
13
+	</head>
14
+
15
+	<body>
16
+		<div>
17
+			<div style="padding: 10px; margin-bottom: 20px;">
18
+				<table class="form_table">
19
+				 <tr>
20
+                                <td><input class="fl" type="file" id="upFile" name="upFile" /></td>
21
+                                <td>
22
+                                    <a class="btns fr" id="aa">导入</a>
23
+                                </td>
24
+                            </tr>
25
+                            <tr>
26
+                                <td><a href="drmb/导入模板.xlsx" download="导入模板.xlsx" title="点击下载导入模板">导入模板</a></td>
27
+                            </tr>
28
+
29
+				</table>
30
+				<div class="Table_box">
31
+					<table id="tb1">
32
+						<thead>
33
+							<tr>
34
+								<th data-field="checkbox" data-align="center" data-formatter="setCode"></th>
35
+								<th data-align="center" data-field="F_Title">问卷名称</th>
36
+								<th data-align="center" data-field="F_CreateOn">生成时间</th>
37
+							</tr>
38
+						</thead>
39
+						<tbody>
40
+						</tbody>
41
+					</table>
42
+				</div>
43
+				<div class="Btn_box">
44
+					<button class="btns Add">保存</button>
45
+				</div>
46
+			</div>
47
+
48
+		</div>
49
+		<script>
50
+			var $tableLeft = $('#tb1');
51
+			var token = $.cookie("token");
52
+			var pagerid;
53
+			var wid = helper.request.queryString("Str");
54
+			console.log(wid);
55
+			$(document).ready(function() {
56
+
57
+				$("#Search").click(function() {
58
+					IndexCategoryGe();
59
+					$(".Table_box").show();
60
+					$('.Btn_box').hide();
61
+				})
62
+				$(".Add").click(function() {
63
+					pagerid = $(".Qubound").attr("index")
64
+					console.log(pagerid);
65
+					if(!$(".Planname").val()) {
66
+						layer.msg("名称不能为空");
67
+					} else if(!$(".remark").val()) {
68
+						layer.msg("备注不能为空");
69
+					} else if(!$(".Qubound").val()) {
70
+						ayer.msg("问卷不能为空");
71
+					} else {
72
+						//增加分类
73
+						$.ajax({
74
+							type: "post",
75
+							url: huayi.config.callcenter_url + "CallOutPlan/CreateOrUpdateTask",
76
+							dataType: 'json',
77
+							data: {
78
+								pagerid: pagerid,
79
+								remark: $(".remark").val(),
80
+								name: $(".Planname").val(),
81
+								token: $.cookie("token")
82
+							},
83
+							async: true,
84
+							success: function(data) {
85
+								if(data.state == "success") {
86
+									var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
87
+									parent.layer.close(index); //再执行关闭
88
+									parent.IndexCategoryGe();
89
+									parent.layer.msg(data.message);
90
+								}
91
+
92
+							}
93
+						});
94
+					}
95
+
96
+				})
97
+
98
+			})
99
+
100
+			//问卷列表
101
+			function IndexCategoryGe() {
102
+				//销毁表格
103
+				$tableLeft.bootstrapTable('destroy');
104
+				//初始化表格,动态从服务器加载数据
105
+				$tableLeft.bootstrapTable({
106
+					method: "get", //使用get请求到服务器获取数据
107
+					url: huayi.config.callcenter_url + "Questionnaire/GetPagerInfoList",
108
+					striped: true, //表格显示条纹
109
+					pagination: true, //启动分页
110
+					pageSize: 5, //每页显示的记录数
111
+					pageNumber: 1, //当前第几页
112
+					pageList: [5, 20, 50, 100], //记录数可选列表
113
+					search:false, //是否启用查询
114
+					showColumns: false, //显示下拉框勾选要显示的列
115
+					showRefresh: false, //显示刷新按钮
116
+					sidePagination: "server", //表示服务端请求
117
+					//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
118
+					//设置为limit可以获取limit, offset, search, sort, order
119
+					queryParamsType: "undefined",
120
+					queryParams: function queryParams(params) { //设置查询参数
121
+						var param = {
122
+							pageindex: params.pageNumber,
123
+							pagesize: params.pageSize,
124
+							token: token
125
+						};
126
+						return param;
127
+					},
128
+					onLoadSuccess: function() { //加载成功时执行
129
+						//								layer.msg("加载成功");
130
+					},
131
+					onLoadError: function() { //加载失败时执行
132
+						//layer.msg("加载数据失败", { time: 1500, icon: 2 });
133
+					},
134
+					onDblClickRow: function(row) {
135
+						$(".Qubound").val(row.F_Title);
136
+						$(".Qubound").attr("index", row.F_PagerId); //设置问卷ID
137
+						$(".Table_box").hide();
138
+						$('.Btn_box').show();
139
+					}
140
+				});
141
+			}
142
+			//编号
143
+			function setCode(val, row, index) {
144
+				return index + 1;
145
+			}
146
+			/*获取选中行对象*/
147
+			$tableLeft.on("click-row.bs.table", function(e, row, ele) {
148
+				$('.success').removeClass('success'); //去除之前选中的行的,选中样式
149
+				$(ele).addClass('success'); //添加当前选中的 success样式用于区别; 
150
+
151
+			});
152
+			
153
+			$("#aa").click(function() {
154
+					ajaxFileUpload();
155
+				});
156
+				
157
+				function ajaxFileUpload() {
158
+				$.ajaxFileUpload({
159
+					url: huayi.config.callcenter_url+'CallOutPlan/TelInput', //用于文件上传的服务器端请求地址
160
+					secureuri: false, //是否需要安全协议,一般设置为false
161
+					fileElementId: 'upFile', //文件上传域的ID
162
+					dataType: 'json', //返回值类型 一般设置为json
163
+					data: {
164
+						taskid:21,
165
+						token: $.cookie("token")
166
+					},
167
+					success: function(data) //服务器成功响应处理函数
168
+					{
169
+                        console.log(data)
170
+						layer.msg("导入成功");
171
+					}
172
+
173
+				})
174
+				return false;
175
+			}
176
+		</script>
177
+	</body>
178
+
179
+</html>

+ 23 - 0
CallCenterWeb.UI/OutboundMessage/OutboundPlan.html

@@ -58,6 +58,29 @@
58 58
 					</tbody>
59 59
 				</table>
60 60
 			</div>
61
+			<div class="tblert">
62
+				<h4  class="Title_box">外呼号码</h4>
63
+				<div class="anniu " >
64
+					<button class="Dr btns size-14"><i class="fa fa-plus size-14"></i>号码导入</button>
65
+					<button class="RemoveDr btns size-14"><i class="fa fa-remove  size-14"></i>清空号码</button>
66
+					
67
+				</div>
68
+				<table id="tb2">
69
+					<thead>
70
+						<tr>
71
+							<th data-field="checkbox" data-align="center" data-formatter="setCode"></th>
72
+							<th data-align="center" data-field="F_TaskName">客户姓名</th>
73
+							<th data-align="center" data-field="F_TaskRemark">电话</th>
74
+							<th data-align="center" data-field="F_TaskRemark">住址</th>
75
+							<th data-align="center" data-field="F_TaskRemark">导入时间</th>
76
+							<th data-align="center" data-field="F_TaskRemark">分配坐席</th>
77
+							<th data-align="center" data-field="F_IsStart"  data-formatter="Code">操作</th>
78
+						</tr>
79
+					</thead>
80
+					<tbody>
81
+					</tbody>
82
+				</table>
83
+			</div>
61 84
 		</div>
62 85
 			</div>
63 86
 	</body>

BIN
CallCenterWeb.UI/OutboundMessage/drmb/导入模板.xlsx


+ 157 - 0
CallCenterWeb.UI/Questionnaire/aaaaaa.json

@@ -0,0 +1,157 @@
1
+{
2
+	"state": "success",
3
+	"message": "获取调查问卷报表数据成功",
4
+	"data": [
5
+		[
6
+			"Column1": "",
7
+			"Column2": "在职干部或职工",
8
+			"Column3": "农民",
9
+			"Column4": "经商人员",
10
+			"Column5": "务工人员",
11
+			"Column6": "无业人员",
12
+			"Column7": "九龙街道",
13
+			"Column8": "昆阳街道",
14
+			"Column9": "盐都街道",
15
+			"Column10": "洪庄杨振",
16
+			"Column11": "田庄乡",
17
+			"Column12": "任店镇",
18
+			"Column13": "夏李乡",
19
+			"Column14": "常村镇",
20
+			"Column15": "龚店镇",
21
+			"Column16": "邓李乡",
22
+			"Column17": "廉村镇",
23
+			"Column18": "水寨乡",
24
+			"Column19": "马庄乡",
25
+			"Column20": "龙泉乡",
26
+			"Column21": "仙台镇",
27
+			"Column22": "叶邑镇",
28
+			"Column23": "保安镇",
29
+			"Column24": "辛店镇",
30
+			"Column25": "盗窃现象严重",
31
+			"Column26": "抢劫、抢夺现象严重",
32
+			"Column27": "杀人、绑架等严重刑事犯罪时长发生",
33
+			"Column28": "吸毒、贩毒现象严重",
34
+			"Column29": "黑恶势力违法犯罪严重",
35
+			"Column30": "交通秩序问题",
36
+			"Column31": "安全生产问题",
37
+			"Column32": "食品、药品安全问题",
38
+			"Column33": "环境问题",
39
+			"Column34": "征地拆迁问题",
40
+			"Column35": "非法集资问题",
41
+			"Column36": "治安问题/矛盾纠纷化解不及时",
42
+			"Column37": "其他(1.暴恐恐怖事件,2.诈骗,3.打架斗殴,4.舆论因素:电视、网络等,5.贩卖人口:妇女儿童)",
43
+			"Column38": "满意",
44
+			"Column39": "基本满意",
45
+			"Column40": "不满意",
46
+			"Column41": "满意",
47
+			"Column42": "基本满意",
48
+			"Column43": "不满意",
49
+			"Column44": "满意",
50
+			"Column45": "基本满意",
51
+			"Column46": "不满意",
52
+			"Column47": "满意",
53
+			"Column48": "基本满意",
54
+			"Column49": "不满意"
55
+		], [
56
+			"Column1": "安全",
57
+			"Column2": null,
58
+			"Column3": null,
59
+			"Column4": null,
60
+			"Column5": null,
61
+			"Column6": null,
62
+			"Column7": null,
63
+			"Column8": null,
64
+			"Column9": null,
65
+			"Column10": null,
66
+			"Column11": null,
67
+			"Column12": null,
68
+			"Column13": null,
69
+			"Column14": null,
70
+			"Column15": null,
71
+			"Column16": null,
72
+			"Column17": null,
73
+			"Column18": null,
74
+			"Column19": null,
75
+			"Column20": null,
76
+			"Column21": null,
77
+			"Column22": null,
78
+			"Column23": null,
79
+			"Column24": null,
80
+			"Column25": null,
81
+			"Column26": null,
82
+			"Column27": null,
83
+			"Column28": null,
84
+			"Column29": null,
85
+			"Column30": null,
86
+			"Column31": null,
87
+			"Column32": null,
88
+			"Column33": null,
89
+			"Column34": null,
90
+			"Column35": null,
91
+			"Column36": null,
92
+			"Column37": null,
93
+			"Column38": null,
94
+			"Column39": null,
95
+			"Column40": null,
96
+			"Column41": null,
97
+			"Column42": null,
98
+			"Column43": null,
99
+			"Column44": null,
100
+			"Column45": null,
101
+			"Column46": null,
102
+			"Column47": null,
103
+			"Column48": null,
104
+			"Column49": null
105
+		], [
106
+			"Column1": "基本安全",
107
+			"Column2": null,
108
+			"Column3": null,
109
+			"Column4": null,
110
+			"Column5": null,
111
+			"Column6": null,
112
+			"Column7": null,
113
+			"Column8": null,
114
+			"Column9": null,
115
+			"Column10": null,
116
+			"Column11": null,
117
+			"Column12": null,
118
+			"Column13": null,
119
+			"Column14": null,
120
+			"Column15": null,
121
+			"Column16": null,
122
+			"Column17": null,
123
+			"Column18": null,
124
+			"Column19": null,
125
+			"Column20": null,
126
+			"Column21": null,
127
+			"Column22": null,
128
+			"Column23": null,
129
+			"Column24": null,
130
+			"Column25": null,
131
+			"Column26": null,
132
+			"Column27": null,
133
+			"Column28": null,
134
+			"Column29": null,
135
+			"Column30": null,
136
+			"Column31": null,
137
+			"Column32": null,
138
+			"Column33": null,
139
+			"Column34": null,
140
+			"Column35": null,
141
+			"Column36": null,
142
+			"Column37": null,
143
+			"Column38": null,
144
+			"Column39": null,
145
+			"Column40": null,
146
+			"Column41": null,
147
+			"Column42": null,
148
+			"Column43": null,
149
+			"Column44": null,
150
+			"Column45": null,
151
+			"Column46": null,
152
+			"Column47": null,
153
+			"Column48": null,
154
+			"Column49": null
155
+		]
156
+	]
157
+}

+ 10 - 0
CallCenterWeb.UI/css/QutboundMessage/QutboundComm.css

@@ -124,3 +124,13 @@
124 124
 				margin-top: 10px;
125 125
 				text-align: center;
126 126
 			}
127
+			
128
+			/*外呼计划*/
129
+			.tbleft{
130
+				float: left;
131
+				width: 38%;
132
+			}
133
+			.tblert{
134
+				float: right;
135
+				width: 60%;
136
+			}

Plik diff jest za duży
+ 355 - 1
CallCenterWeb.UI/css/layer/mobile/need/layer.css


+ 88 - 23
CallCenterWeb.UI/js/OutboundMessage/OutboundPlan.js

@@ -12,7 +12,9 @@ var Left_Sort;
12 12
 var Left_Score;
13 13
 var Left_Pid;
14 14
 var $tableLeft = $('#tb1');
15
+var $tableLeft1 = $('#tb2');
15 16
 var token = $.cookie("token");
17
+var TaskID; //导入
16 18
 $(document).ready(function() {
17 19
 	IndexCategoryGe();
18 20
 
@@ -20,7 +22,7 @@ $(document).ready(function() {
20 22
 
21 23
 //搜索功能
22 24
 $(".searchGo").click(function() {
23
-IndexCategoryGe();
25
+	IndexCategoryGe();
24 26
 });
25 27
 
26 28
 ////左边表格
@@ -30,6 +32,10 @@ $tableLeft.on("click-row.bs.table", function(e, row, ele) {
30 32
 	$(ele).addClass('success'); //添加当前选中的 success样式用于区别
31 33
 	Left_Cids = row.F_IsStart; //分类ID
32 34
 	console.log(Left_Cids);
35
+	TaskID = row.F_TaskID //导入ID
36
+	//导入方法
37
+	Right(TaskID);
38
+
33 39
 });
34 40
 //获取计划列表    
35 41
 function IndexCategoryGe() {
@@ -55,7 +61,7 @@ function IndexCategoryGe() {
55 61
 			var param = {
56 62
 				pageindex: params.pageNumber,
57 63
 				pagesize: params.pageSize,
58
-				key:$("#KeyWords").val(),
64
+				key: $("#KeyWords").val(),
59 65
 				token: token
60 66
 			};
61 67
 			return param;
@@ -73,9 +79,9 @@ function IndexCategoryGe() {
73 79
 function Code(val, row) {
74 80
 	var html = '';
75 81
 	if(val == "0") {
76
-		html = '<a index="'+row.F_IsStart+'" onclick="Qd('+row.F_TaskID+','+row.F_IsStart+')">启动</a>';
82
+		html = '<a index="' + row.F_IsStart + '" onclick="Qd(' + row.F_TaskID + ',' + row.F_IsStart + ')">启动</a>';
77 83
 	} else if(val == "1") {
78
-		html = '<a  onclick="Tz('+row.F_TaskID+')">停止</a>';
84
+		html = '<a  onclick="Tz(' + row.F_TaskID + ')">停止</a>';
79 85
 	}
80 86
 	return '<div class="operation">' +
81 87
 		'<a  onclick=Amend(' + row.F_TaskID + ')>修改</a>' +
@@ -104,14 +110,14 @@ function Type(val) {
104 110
 	console.log(val);
105 111
 }
106 112
 //修改计划
107
- function Amend(str){
108
- 		layer.open({
113
+function Amend(str) {
114
+	layer.open({
109 115
 		type: 2,
110
-		content: "../OutboundMessage/xgPlan.html?Str="+str, //iframe的url,no代表不显示滚动条
116
+		content: "../OutboundMessage/xgPlan.html?Str=" + str, //iframe的url,no代表不显示滚动条
111 117
 		title: '问卷信息',
112 118
 		area: ['40%', '45%'], //宽高
113 119
 	});
114
- }
120
+}
115 121
 //删除功能
116 122
 function Remove(str) {
117 123
 	layer.confirm('确定删除?', {
@@ -137,8 +143,8 @@ function Remove(str) {
137 143
 
138 144
 }
139 145
 //启动
140
- function Qd(str,val){
141
-   	layer.confirm('确定要启动么?', {
146
+function Qd(str, val) {
147
+	layer.confirm('确定要启动么?', {
142 148
 		btn: ['是', '否'] //按钮
143 149
 	}, function() {
144 150
 		/*发送请求*/
@@ -148,21 +154,22 @@ function Remove(str) {
148 154
 			dataType: 'json',
149 155
 			data: {
150 156
 				taskid: str,
151
-				state:1,
157
+				state: 1,
152 158
 				token: $.cookie("token")
153 159
 			},
154 160
 			async: true,
155 161
 			success: function(data) {
156 162
 				if(data.state == "success") {
157
-								IndexCategoryGe();
158
-							layer.msg("启动成功");
159
-						}
160
-				
163
+					IndexCategoryGe();
164
+					layer.msg("启动成功");
165
+				}
166
+
161 167
 			}
162 168
 		});
163 169
 	});
164
- }
165
-function Tz(str){
170
+}
171
+
172
+function Tz(str) {
166 173
 	layer.confirm('确定要停止么?', {
167 174
 		btn: ['是', '否'] //按钮
168 175
 	}, function() {
@@ -173,16 +180,16 @@ function Tz(str){
173 180
 			dataType: 'json',
174 181
 			data: {
175 182
 				taskid: str,
176
-				state:0,
183
+				state: 0,
177 184
 				token: $.cookie("token")
178 185
 			},
179 186
 			async: true,
180 187
 			success: function(data) {
181 188
 				if(data.state == "success") {
182
-								IndexCategoryGe();
183
-							layer.msg("停止成功");
184
-						}
185
-				
189
+					IndexCategoryGe();
190
+					layer.msg("停止成功");
191
+				}
192
+
186 193
 			}
187 194
 		});
188 195
 	});
@@ -215,4 +222,62 @@ $(".leftAdd").click(function() {
215 222
 	});
216 223
 });
217 224
 
218
-/////////////////////////右边表格
225
+/////////////////////////右边表格
226
+//号码导入
227
+function Dr() {
228
+
229
+}
230
+$(".Dr").click(function() {
231
+	alert(TaskID);
232
+	if(TaskID) {
233
+		layer.open({
234
+			type: 2,
235
+			content: "../OutboundMessage/Dr.html?Str=" + TaskID, //iframe的url,no代表不显示滚动条
236
+			title: '导入号码',
237
+			area: ['45%', '35%'], //宽高
238
+		});
239
+	} else {
240
+		layer.confirm('选择一个外呼计划?', {
241
+			btn: ['确定'] //按钮
242
+		});
243
+	}
244
+
245
+})
246
+//删除号码
247
+//
248
+function Right(TaskID) {
249
+	//销毁表格
250
+	$tableLeft1.bootstrapTable('destroy');
251
+	//初始化表格,动态从服务器加载数据
252
+	$tableLeft1.bootstrapTable({
253
+		method: "get", //使用get请求到服务器获取数据
254
+		url: huayi.config.callcenter_url + "CallOutPlan/GetList",
255
+		striped: true, //表格显示条纹
256
+		pagination: true, //启动分页
257
+		pageSize: 5, //每页显示的记录数
258
+		pageNumber: 1, //当前第几页
259
+		pageList: [5, 20, 50, 100], //记录数可选列表
260
+		search: false, //是否启用查询
261
+		showColumns: false, //显示下拉框勾选要显示的列
262
+		showRefresh: false, //显示刷新按钮
263
+		sidePagination: "server", //表示服务端请求
264
+		//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
265
+		//设置为limit可以获取limit, offset, search, sort, order
266
+		queryParamsType: "undefined",
267
+		queryParams: function queryParams(params) { //设置查询参数
268
+			var param = {
269
+				pageindex: params.pageNumber,
270
+				pagesize: params.pageSize,
271
+				taskid:TaskID,
272
+				token: token
273
+			};
274
+			return param;
275
+		},
276
+		onLoadSuccess: function() { //加载成功时执行
277
+			//								layer.msg("加载成功");
278
+		},
279
+		onLoadError: function() { //加载失败时执行
280
+			//layer.msg("加载数据失败", { time: 1500, icon: 2 });
281
+		}
282
+	});
283
+}

+ 229 - 0
CallCenterWeb.UI/js/jquery.md5.js

@@ -0,0 +1,229 @@
1
+	/**
2
+	 * jQuery MD5 hash algorithm function
3
+	 * 
4
+	 * 	<code>
5
+	 * 		Calculate the md5 hash of a String 
6
+	 * 		String $.md5 ( String str )
7
+	 * 	</code>
8
+	 * 
9
+	 * Calculates the MD5 hash of str using the » RSA Data Security, Inc. MD5 Message-Digest Algorithm, and returns that hash. 
10
+	 * MD5 (Message-Digest algorithm 5) is a widely-used cryptographic hash function with a 128-bit hash value. MD5 has been employed in a wide variety of security applications, and is also commonly used to check the integrity of data. The generated hash is also non-reversable. Data cannot be retrieved from the message digest, the digest uniquely identifies the data.
11
+	 * MD5 was developed by Professor Ronald L. Rivest in 1994. Its 128 bit (16 byte) message digest makes it a faster implementation than SHA-1.
12
+	 * This script is used to process a variable length message into a fixed-length output of 128 bits using the MD5 algorithm. It is fully compatible with UTF-8 encoding. It is very useful when u want to transfer encrypted passwords over the internet. If you plan using UTF-8 encoding in your project don't forget to set the page encoding to UTF-8 (Content-Type meta tag). 
13
+	 * This function orginally get from the WebToolkit and rewrite for using as the jQuery plugin.
14
+	 * 
15
+	 * Example
16
+	 * 	Code
17
+	 * 		<code>
18
+	 * 			$.md5("I'm Persian."); 
19
+	 * 		</code>
20
+	 * 	Result
21
+	 * 		<code>
22
+	 * 			"b8c901d0f02223f9761016cfff9d68df"
23
+	 * 		</code>
24
+	 * 
25
+	 * @alias Muhammad Hussein Fattahizadeh < muhammad [AT] semnanweb [DOT] com >
26
+	 * @link http://www.semnanweb.com/jquery-plugin/md5.html
27
+	 * @see http://www.webtoolkit.info/
28
+	 * @license http://www.gnu.org/licenses/gpl.html [GNU General Public License]
29
+	 * @param {jQuery} {md5:function(string))
30
+	 * @return string
31
+	 */
32
+	
33
+	(function($){
34
+		
35
+		var rotateLeft = function(lValue, iShiftBits) {
36
+			return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits));
37
+		}
38
+		
39
+		var addUnsigned = function(lX, lY) {
40
+			var lX4, lY4, lX8, lY8, lResult;
41
+			lX8 = (lX & 0x80000000);
42
+			lY8 = (lY & 0x80000000);
43
+			lX4 = (lX & 0x40000000);
44
+			lY4 = (lY & 0x40000000);
45
+			lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
46
+			if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8);
47
+			if (lX4 | lY4) {
48
+				if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);
49
+				else return (lResult ^ 0x40000000 ^ lX8 ^ lY8);
50
+			} else {
51
+				return (lResult ^ lX8 ^ lY8);
52
+			}
53
+		}
54
+		
55
+		var F = function(x, y, z) {
56
+			return (x & y) | ((~ x) & z);
57
+		}
58
+		
59
+		var G = function(x, y, z) {
60
+			return (x & z) | (y & (~ z));
61
+		}
62
+		
63
+		var H = function(x, y, z) {
64
+			return (x ^ y ^ z);
65
+		}
66
+		
67
+		var I = function(x, y, z) {
68
+			return (y ^ (x | (~ z)));
69
+		}
70
+		
71
+		var FF = function(a, b, c, d, x, s, ac) {
72
+			a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));
73
+			return addUnsigned(rotateLeft(a, s), b);
74
+		};
75
+		
76
+		var GG = function(a, b, c, d, x, s, ac) {
77
+			a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));
78
+			return addUnsigned(rotateLeft(a, s), b);
79
+		};
80
+		
81
+		var HH = function(a, b, c, d, x, s, ac) {
82
+			a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));
83
+			return addUnsigned(rotateLeft(a, s), b);
84
+		};
85
+		
86
+		var II = function(a, b, c, d, x, s, ac) {
87
+			a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));
88
+			return addUnsigned(rotateLeft(a, s), b);
89
+		};
90
+		
91
+		var convertToWordArray = function(string) {
92
+			var lWordCount;
93
+			var lMessageLength = string.length;
94
+			var lNumberOfWordsTempOne = lMessageLength + 8;
95
+			var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;
96
+			var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;
97
+			var lWordArray = Array(lNumberOfWords - 1);
98
+			var lBytePosition = 0;
99
+			var lByteCount = 0;
100
+			while (lByteCount < lMessageLength) {
101
+				lWordCount = (lByteCount - (lByteCount % 4)) / 4;
102
+				lBytePosition = (lByteCount % 4) * 8;
103
+				lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));
104
+				lByteCount++;
105
+			}
106
+			lWordCount = (lByteCount - (lByteCount % 4)) / 4;
107
+			lBytePosition = (lByteCount % 4) * 8;
108
+			lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);
109
+			lWordArray[lNumberOfWords - 2] = lMessageLength << 3;
110
+			lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;
111
+			return lWordArray;
112
+		};
113
+		
114
+		var wordToHex = function(lValue) {
115
+			var WordToHexValue = "", WordToHexValueTemp = "", lByte, lCount;
116
+			for (lCount = 0; lCount <= 3; lCount++) {
117
+				lByte = (lValue >>> (lCount * 8)) & 255;
118
+				WordToHexValueTemp = "0" + lByte.toString(16);
119
+				WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2);
120
+			}
121
+			return WordToHexValue;
122
+		};
123
+		
124
+		var uTF8Encode = function(string) {
125
+			string = string.replace(/\x0d\x0a/g, "\x0a");
126
+			var output = "";
127
+			for (var n = 0; n < string.length; n++) {
128
+				var c = string.charCodeAt(n);
129
+				if (c < 128) {
130
+					output += String.fromCharCode(c);
131
+				} else if ((c > 127) && (c < 2048)) {
132
+					output += String.fromCharCode((c >> 6) | 192);
133
+					output += String.fromCharCode((c & 63) | 128);
134
+				} else {
135
+					output += String.fromCharCode((c >> 12) | 224);
136
+					output += String.fromCharCode(((c >> 6) & 63) | 128);
137
+					output += String.fromCharCode((c & 63) | 128);
138
+				}
139
+			}
140
+			return output;
141
+		};
142
+		
143
+		$.extend({
144
+			md5: function(string) {
145
+				var x = Array();
146
+				var k, AA, BB, CC, DD, a, b, c, d;
147
+				var S11=7, S12=12, S13=17, S14=22;
148
+				var S21=5, S22=9 , S23=14, S24=20;
149
+				var S31=4, S32=11, S33=16, S34=23;
150
+				var S41=6, S42=10, S43=15, S44=21;
151
+				string = uTF8Encode(string);
152
+				x = convertToWordArray(string);
153
+				a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;
154
+				for (k = 0; k < x.length; k += 16) {
155
+					AA = a; BB = b; CC = c; DD = d;
156
+					a = FF(a, b, c, d, x[k+0],  S11, 0xD76AA478);
157
+					d = FF(d, a, b, c, x[k+1],  S12, 0xE8C7B756);
158
+					c = FF(c, d, a, b, x[k+2],  S13, 0x242070DB);
159
+					b = FF(b, c, d, a, x[k+3],  S14, 0xC1BDCEEE);
160
+					a = FF(a, b, c, d, x[k+4],  S11, 0xF57C0FAF);
161
+					d = FF(d, a, b, c, x[k+5],  S12, 0x4787C62A);
162
+					c = FF(c, d, a, b, x[k+6],  S13, 0xA8304613);
163
+					b = FF(b, c, d, a, x[k+7],  S14, 0xFD469501);
164
+					a = FF(a, b, c, d, x[k+8],  S11, 0x698098D8);
165
+					d = FF(d, a, b, c, x[k+9],  S12, 0x8B44F7AF);
166
+					c = FF(c, d, a, b, x[k+10], S13, 0xFFFF5BB1);
167
+					b = FF(b, c, d, a, x[k+11], S14, 0x895CD7BE);
168
+					a = FF(a, b, c, d, x[k+12], S11, 0x6B901122);
169
+					d = FF(d, a, b, c, x[k+13], S12, 0xFD987193);
170
+					c = FF(c, d, a, b, x[k+14], S13, 0xA679438E);
171
+					b = FF(b, c, d, a, x[k+15], S14, 0x49B40821);
172
+					a = GG(a, b, c, d, x[k+1],  S21, 0xF61E2562);
173
+					d = GG(d, a, b, c, x[k+6],  S22, 0xC040B340);
174
+					c = GG(c, d, a, b, x[k+11], S23, 0x265E5A51);
175
+					b = GG(b, c, d, a, x[k+0],  S24, 0xE9B6C7AA);
176
+					a = GG(a, b, c, d, x[k+5],  S21, 0xD62F105D);
177
+					d = GG(d, a, b, c, x[k+10], S22, 0x2441453);
178
+					c = GG(c, d, a, b, x[k+15], S23, 0xD8A1E681);
179
+					b = GG(b, c, d, a, x[k+4],  S24, 0xE7D3FBC8);
180
+					a = GG(a, b, c, d, x[k+9],  S21, 0x21E1CDE6);
181
+					d = GG(d, a, b, c, x[k+14], S22, 0xC33707D6);
182
+					c = GG(c, d, a, b, x[k+3],  S23, 0xF4D50D87);
183
+					b = GG(b, c, d, a, x[k+8],  S24, 0x455A14ED);
184
+					a = GG(a, b, c, d, x[k+13], S21, 0xA9E3E905);
185
+					d = GG(d, a, b, c, x[k+2],  S22, 0xFCEFA3F8);
186
+					c = GG(c, d, a, b, x[k+7],  S23, 0x676F02D9);
187
+					b = GG(b, c, d, a, x[k+12], S24, 0x8D2A4C8A);
188
+					a = HH(a, b, c, d, x[k+5],  S31, 0xFFFA3942);
189
+					d = HH(d, a, b, c, x[k+8],  S32, 0x8771F681);
190
+					c = HH(c, d, a, b, x[k+11], S33, 0x6D9D6122);
191
+					b = HH(b, c, d, a, x[k+14], S34, 0xFDE5380C);
192
+					a = HH(a, b, c, d, x[k+1],  S31, 0xA4BEEA44);
193
+					d = HH(d, a, b, c, x[k+4],  S32, 0x4BDECFA9);
194
+					c = HH(c, d, a, b, x[k+7],  S33, 0xF6BB4B60);
195
+					b = HH(b, c, d, a, x[k+10], S34, 0xBEBFBC70);
196
+					a = HH(a, b, c, d, x[k+13], S31, 0x289B7EC6);
197
+					d = HH(d, a, b, c, x[k+0],  S32, 0xEAA127FA);
198
+					c = HH(c, d, a, b, x[k+3],  S33, 0xD4EF3085);
199
+					b = HH(b, c, d, a, x[k+6],  S34, 0x4881D05);
200
+					a = HH(a, b, c, d, x[k+9],  S31, 0xD9D4D039);
201
+					d = HH(d, a, b, c, x[k+12], S32, 0xE6DB99E5);
202
+					c = HH(c, d, a, b, x[k+15], S33, 0x1FA27CF8);
203
+					b = HH(b, c, d, a, x[k+2],  S34, 0xC4AC5665);
204
+					a = II(a, b, c, d, x[k+0],  S41, 0xF4292244);
205
+					d = II(d, a, b, c, x[k+7],  S42, 0x432AFF97);
206
+					c = II(c, d, a, b, x[k+14], S43, 0xAB9423A7);
207
+					b = II(b, c, d, a, x[k+5],  S44, 0xFC93A039);
208
+					a = II(a, b, c, d, x[k+12], S41, 0x655B59C3);
209
+					d = II(d, a, b, c, x[k+3],  S42, 0x8F0CCC92);
210
+					c = II(c, d, a, b, x[k+10], S43, 0xFFEFF47D);
211
+					b = II(b, c, d, a, x[k+1],  S44, 0x85845DD1);
212
+					a = II(a, b, c, d, x[k+8],  S41, 0x6FA87E4F);
213
+					d = II(d, a, b, c, x[k+15], S42, 0xFE2CE6E0);
214
+					c = II(c, d, a, b, x[k+6],  S43, 0xA3014314);
215
+					b = II(b, c, d, a, x[k+13], S44, 0x4E0811A1);
216
+					a = II(a, b, c, d, x[k+4],  S41, 0xF7537E82);
217
+					d = II(d, a, b, c, x[k+11], S42, 0xBD3AF235);
218
+					c = II(c, d, a, b, x[k+2],  S43, 0x2AD7D2BB);
219
+					b = II(b, c, d, a, x[k+9],  S44, 0xEB86D391);
220
+					a = addUnsigned(a, AA);
221
+					b = addUnsigned(b, BB);
222
+					c = addUnsigned(c, CC);
223
+					d = addUnsigned(d, DD);
224
+				}
225
+				var tempValue = wordToHex(a) + wordToHex(b) + wordToHex(c) + wordToHex(d);
226
+				return tempValue.toLowerCase();
227
+			}
228
+		});
229
+	})(jQuery);

+ 0 - 3
CallCenterWeb.UI/login.html

@@ -149,9 +149,6 @@
149 149
 					}
150 150
 				});
151 151
 			});
152
-			/*点击提交*/
153
-
154
-			/*cook*/
155 152
 		</script>
156 153
 	</body>
157 154