Просмотр исходного кода

增加 客户信息管理,修改登录页面

fanlongfei лет назад: 7
Родитель
Сommit
a337fedaa2

+ 21 - 1
CallCenterWeb.UI/Script/Common/huayi.http.js

@@ -1,4 +1,4 @@
1
-var helper = {};
1
+var helper = {};
2 2
 
3 3
 helper.http = {
4 4
 	newXMLHttp: function() {
@@ -714,6 +714,26 @@ helper.getDropList = {
714 714
 };
715 715
 
716 716
 helper.methods = {
717
+	/**
718
+	* 对象数组去重(用于自定义字段保存时)
719
+	* @oldArr 数组
720
+	* @name 要比较的属性 String
721
+	*/
722
+	uniqueObjArray: function(oldArr, name) {
723
+		var allArr = [];
724
+		for(var i = 0; i < oldArr.length; i++) {  
725
+			var flag = true;  
726
+			for(var j = 0; j < allArr.length; j++) {
727
+				if(oldArr[i][name] == allArr[j][name]) {      
728
+					flag = false;    
729
+				};  
730
+			};
731
+			if(flag) {    
732
+				allArr.push(oldArr[i]);  
733
+			};
734
+		};
735
+		return allArr;
736
+	},
717 737
 	//比较器(可以根据对象的属性进行比较)  用法 arr.sort(compare('age'))
718 738
 	compare: function(prop) {
719 739
 		return function(obj1, obj2) {

+ 0 - 1
CallCenterWeb.UI/SystemManager/js/jueSeQuanXian.js

@@ -239,7 +239,6 @@
239 239
 			$.each(ztree, function(i, n) {
240 240
 				app.push(n.id);
241 241
 			});
242
-			console.log(app)
243 242
 			pro(app, jsid);
244 243
 		})
245 244
 		//左边表格

+ 78 - 0
CallCenterWeb.UI/commonTpl/addOrEditContacts.html

@@ -0,0 +1,78 @@
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 href="../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
9
+		<!--<link rel="stylesheet" type="text/css" href="../js/bootstrap-treeview/bootstrap-treeview.min.css" />-->
10
+		<script src="../Script/Common/huayi.load.js"></script>
11
+		<script src="../Script/Common/huayi.config.js"></script>
12
+		<link rel="stylesheet" href="../css/customer.css" />
13
+
14
+	</head>
15
+
16
+	<body>
17
+		<div class="container">
18
+			<div class="tab_contents" id="tab_user_contents">
19
+				<ul class="project_items form-horizontal showtabs">
20
+					<li class="form-group">
21
+						<label for="F_Name" class="col-md-2"><b class="text_require">*</b>联系人姓名</label>
22
+						<div class="col-md-9">
23
+							<input id="F_Name" class="form-control" type="text" autocomplete="off" placeholder="请输入联系人姓名" />
24
+						</div>
25
+					</li>
26
+					<li class="form-group">
27
+						<label for="F_Telephone" class="col-md-2"><b class="text_require">*</b>联系人电话</label>
28
+						<div class="col-md-9">
29
+							<input id="F_Telephone" class="form-control" type="text" autocomplete="off" placeholder="请输入联系人电话" />
30
+						</div>
31
+					</li>
32
+					<li class="form-group">
33
+						<label for="F_Email" class="col-md-2">邮箱</label>
34
+						<div class="col-md-9">
35
+							<input id="F_Email" class="form-control" type="text" autocomplete="off" placeholder="请输入邮箱" />
36
+						</div>
37
+					</li>
38
+					<li class="form-group">
39
+						<label for="F_Duties" class="col-md-2">职务</label>
40
+						<div class="col-md-9">
41
+							<input id="F_Duties" class="form-control" type="text" autocomplete="off" placeholder="请输入职务" />
42
+						</div>
43
+					</li>
44
+					<li class="form-group">
45
+						<label for="F_QQ" class="col-md-2">QQ</label>
46
+						<div class="col-md-9">
47
+							<input id="F_QQ" class="form-control" type="text" autocomplete="off" placeholder="请输入QQ" />
48
+						</div>
49
+					</li>
50
+					<li class="form-group">
51
+						<label for="F_MSN" class="col-md-2">MSN</label>
52
+						<div class="col-md-9">
53
+							<input id="F_MSN" class="form-control" type="text" autocomplete="off" placeholder="请输入MSN" />
54
+						</div>
55
+					</li>
56
+					<li class="form-group">
57
+						<label for="F_Remark" class="col-md-2">备注</label>
58
+						<div class="col-md-9">
59
+							<textarea id="F_Remark" class="form-control" rows="2" placeholder="请输入备注"></textarea>
60
+						</div>
61
+					</li>
62
+				</ul>
63
+				<div class="form-group clearfix">
64
+					<div class="col-md-offset-3 col-md-10">
65
+						<button class="project_save btn btn-primary" id="save_btns" type="button" disabled="disabled">保存</button>
66
+					</div>
67
+				</div>
68
+			</div>
69
+		</div>
70
+		<script src="../js/laydate/laydate.js"></script>
71
+		<!--<script src="../js/bootstrap-treeview/bootstrap-treeview.min.js"></script>-->
72
+		<script src="../js/bootstrap-select/js/bootstrap-select.js"></script>
73
+		<script src="../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
74
+		<script src="../Script/Common/regexs.js"></script>
75
+		<script src="../keHuManager/js/addOrEditContacts.js"></script>
76
+	</body>
77
+
78
+</html>

+ 158 - 0
CallCenterWeb.UI/commonTpl/addOrEditCusInfo.html

@@ -0,0 +1,158 @@
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 href="../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
9
+		<!--<link rel="stylesheet" type="text/css" href="../js/bootstrap-treeview/bootstrap-treeview.min.css" />-->
10
+		<script src="../Script/Common/huayi.load.js"></script>
11
+		<script src="../Script/Common/huayi.config.js"></script>
12
+		<link rel="stylesheet" href="../css/customer.css" />
13
+
14
+	</head>
15
+
16
+	<body>
17
+		<div class="container">
18
+			<div class="tab_contents" id="tab_user_contents">
19
+				<ul class="project_items form-horizontal showtabs">
20
+					<h3 class="col-md-12 project_items_title">基本信息</h3>
21
+					<li class="form-group">
22
+						<label for="customer_key" class="col-md-2"><b class="text_require">*</b>关键词</label>
23
+						<div class="col-md-9">
24
+							<input id="customer_key" class="form-control" type="text" autocomplete="off" placeholder="请输入关键词" />
25
+						</div>
26
+					</li>
27
+					<li class="form-group">
28
+						<label for="customer_code" class="col-md-2"><b class="text_require">*</b>客户编号</label>
29
+						<div class="col-md-9">
30
+							<input id="customer_code" class="form-control" type="text" autocomplete="off" placeholder="请输入客户编号" />
31
+						</div>
32
+					</li>
33
+					<li class="form-group">
34
+						<label for="customer_companyname" class="col-md-2"><b class="text_require">*</b>公司名称</label>
35
+						<div class="col-md-9">
36
+							<input id="customer_companyname" class="form-control" type="text" autocomplete="off" placeholder="请输入公司名称" />
37
+						</div>
38
+					</li>
39
+					<li class="form-group">
40
+						<label for="customer_comaddress" class="col-md-2">公司地址</label>
41
+						<div class="col-md-9">
42
+							<textarea id="customer_comaddress" class="form-control" rows="2" placeholder="请输入公司地址"></textarea>
43
+						</div>
44
+					</li>
45
+					<li class="form-group">
46
+						<label for="customer_legalName" class="col-md-2">法人姓名</label>
47
+						<div class="col-md-9">
48
+							<input id="customer_legalName" class="form-control" type="text" autocomplete="off" placeholder="请输入法人姓名" />
49
+						</div>
50
+					</li>
51
+					<li class="form-group">
52
+						<label for="customer_lehalTel" class="col-md-2">法人电话</label>
53
+						<div class="col-md-9">
54
+							<input id="customer_lehalTel" class="form-control" type="text" autocomplete="off" placeholder="请输入法人电话" />
55
+						</div>
56
+					</li>
57
+					<li class="form-group">
58
+						<label for="customer_subtrade" class="col-md-2">所属行业</label>
59
+						<div class="col-md-9">
60
+							<select class="form-control selectpicker" id="customer_subtrade" data-live-search="true">
61
+								<option value="0">请选择所属行业</option>
62
+							</select>
63
+						</div>
64
+					</li>
65
+					<li class="form-group">
66
+						<label for="customer_taxCategory" class="col-md-2">税务类别</label>
67
+						<div class="col-md-9">
68
+							<select class="form-control selectpicker" id="customer_taxCategory" data-live-search="true">
69
+								<option value="0">请选择税务类别</option>
70
+							</select>
71
+						</div>
72
+					</li>
73
+					<li class="form-group">
74
+						<label for="customer_taxPointDes" class="col-md-2">税点描述</label>
75
+						<div class="col-md-9">
76
+							<textarea id="customer_taxPointDes" class="form-control" rows="2" placeholder="请输入税点描述"></textarea>
77
+						</div>
78
+					</li>
79
+					<li class="form-group">
80
+						<label for="customer_invoiceRange" class="col-md-2">开票范围</label>
81
+						<div class="col-md-9">
82
+							<input id="customer_invoiceRange" class="form-control" type="text" autocomplete="off" placeholder="请输入开票范围" />
83
+						</div>
84
+					</li>
85
+					<li class="form-group">
86
+						<label for="customer_layer" class="col-md-2">客户信誉等</label>
87
+						<div class="col-md-9">
88
+							<select class="form-control selectpicker" id="customer_layer" data-live-search="true">
89
+								<option value="0">请选择客户信誉等级</option>
90
+							</select>
91
+						</div>
92
+					</li>
93
+					<li class="form-group">
94
+						<label for="customer_bedept" class="col-md-2">客户归属部门</label>
95
+						<div class="col-md-9">
96
+							<input id="customer_bedept" class="form-control" type="text" autocomplete="off" placeholder="请输入客户归属部门" />
97
+						</div>
98
+					</li>
99
+					<li class="form-group">
100
+						<label for="customer_berelatedAcc" class="col-md-2">客户归属涉税会计</label>
101
+						<div class="col-md-9">
102
+							<input id="customer_berelatedAcc" class="form-control" type="text" autocomplete="off" placeholder="请输入客户归属涉税会计" />
103
+						</div>
104
+					</li>
105
+					<li class="form-group">
106
+						<label for="customer_beauditAcc" class="col-md-2">客户归属审核会计</label>
107
+						<div class="col-md-9">
108
+							<input id="customer_beauditAcc" class="form-control" type="text" autocomplete="off" placeholder="请输入客户归属审核会计" />
109
+						</div>
110
+					</li>
111
+					<li class="form-group">
112
+						<label for="customer_bemakeAcc" class="col-md-2">客户归属做账会计</label>
113
+						<div class="col-md-9">
114
+							<input id="customer_bemakeAcc" class="form-control" type="text" autocomplete="off" placeholder="请输入客户归属做账会计" />
115
+						</div>
116
+					</li>
117
+					<h3 class="col-md-12 project_items_title">联系人信息</h3>
118
+					<li class="form-group">
119
+						<label for="" class="col-md-2">联系人</label>
120
+						<div class="col-md-10">
121
+							<button type="button" class="btn btn-default btn-add" onclick="btn_add()">添加</button>
122
+							<span class="text-warning">提示:点击添加可以增加联系人信息</span>
123
+						</div>
124
+					</li>
125
+					<div id="contactList">
126
+						<!-- <div class="contactList_item col-md-offset-2 clearfix">
127
+							<div class="form-group col-md-5 col-sm-5">
128
+								<div class="input-group">
129
+									<span class="input-group-addon">联系人姓名</span>
130
+									<input id="goodsNum_ indexNum " type="text" class="form-control" placeholder="请输入联系人姓名" aria-describedby="配送物品数量">
131
+								</div>
132
+							</div>
133
+							<div class="form-group col-md-5 col-sm-5">
134
+								<div class="input-group">
135
+									<span class="input-group-addon">联系人电话</span>
136
+									<input id="goodsNum_ indexNum " type="text" class="form-control" placeholder="请输入联系人电话" aria-describedby="联系人电话">
137
+								</div>
138
+							</div>
139
+							<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>
140
+						</div> -->
141
+					</div>
142
+				</ul>
143
+				<div class="form-group clearfix">
144
+					<div class="col-md-offset-3 col-md-10">
145
+						<button class="project_save btn btn-primary" id="save_btns" type="button" disabled="disabled">保存</button>
146
+					</div>
147
+				</div>
148
+			</div>
149
+		</div>
150
+		<script src="../js/laydate/laydate.js"></script>
151
+		<!--<script src="../js/bootstrap-treeview/bootstrap-treeview.min.js"></script>-->
152
+		<script src="../js/bootstrap-select/js/bootstrap-select.js"></script>
153
+		<script src="../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
154
+		<script src="../Script/Common/regexs.js"></script>
155
+		<script src="../keHuManager/js/addOrEditCusInfo.js"></script>
156
+	</body>
157
+
158
+</html>

+ 124 - 0
CallCenterWeb.UI/commonTpl/cusDetails.html

@@ -0,0 +1,124 @@
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="../css/Table/table1.css" rel="stylesheet" />
11
+		<link href="../css/init.css" rel="stylesheet" />
12
+		<link rel="stylesheet" type="text/css" href="../css/lookMsg.css" />
13
+	</head>
14
+
15
+	<body class="gray-bg">
16
+		<div class="wrapper clearfix lookMsgs cusDetails">
17
+			<div class="content_1 clearfix">
18
+				<div class="shark_content_title clearfix">
19
+					<span>基本信息</span>
20
+				</div>
21
+					<ul class="clearfix form-inline cus_base">
22
+						<li class="col-md-3 col-sm-4">
23
+							<label for="customer_key">关键词:</label>
24
+							<span id="customer_key"></span>
25
+						</li>
26
+						<li class="col-md-3 col-sm-4">
27
+							<label for="customer_code">客户编号:</label>
28
+							<span id="customer_code"></span>
29
+						</li>
30
+						<li class="col-md-3 col-sm-4">
31
+							<label for="customer_companyname">公司名称:</label>
32
+							<span id="customer_companyname"></span>
33
+						</li>
34
+						<li class="col-md-3 col-sm-4">
35
+							<label for="customer_comaddress">公司地址:</label>
36
+							<span id="customer_comaddress"></span>
37
+						</li>
38
+						<li class="col-md-3 col-sm-4">
39
+							<label for="customer_legalName">法人姓名:</label>
40
+							<span id="customer_legalName"></span>
41
+						</li>
42
+						<li class="col-md-3 col-sm-4">
43
+							<label for="customer_lehalTel">法人电话:</label>
44
+							<span id="customer_lehalTel"></span>
45
+						</li>
46
+						<li class="col-md-3 col-sm-4">
47
+							<label for="customer_subtrade">所属行业:</label>
48
+							<span id="customer_subtrade"></span>
49
+						</li>
50
+						<li class="col-md-3 col-sm-4">
51
+							<label for="customer_taxCategory">税务类别:</label>
52
+							<span id="customer_taxCategory"></span>
53
+						</li>
54
+						<li class="col-md-3 col-sm-4">
55
+							<label for="customer_taxPointDes">税点描述:</label>
56
+							<span id="customer_taxPointDes"></span>
57
+						</li>
58
+						<li class="col-md-3 col-sm-4">
59
+							<label for="customer_layer">客户信誉等:</label>
60
+							<span id="customer_layer"></span>
61
+						</li>
62
+						<li class="col-md-3 col-sm-4">
63
+							<label for="customer_bedept">客户归属部门:</label>
64
+							<span id="customer_bedept"></span>
65
+						</li>
66
+						<li class="col-md-3 col-sm-4">
67
+							<label for="customer_berelatedAcc">客户归属涉税会计:</label>
68
+							<span id="customer_berelatedAcc"></span>
69
+						</li>
70
+						<li class="col-md-3 col-sm-4">
71
+							<label for="customer_beauditAcc">客户归属审核会计:</label>
72
+							<span id="customer_beauditAcc"></span>
73
+						</li>
74
+						<li class="col-md-3 col-sm-4">
75
+							<label for="customer_bemakeAcc">客户归属做账会计:</label>
76
+							<span id="customer_bemakeAcc"></span>
77
+						</li>
78
+					</ul>
79
+			</div>
80
+			<div class="content_1 clearfix">
81
+				<div class="shark_content_title clearfix">
82
+					<span>联系人信息</span>
83
+				</div>
84
+				<ul class="form-inline cus_base" id="cusLists">
85
+					<!-- <div class="clearfix cusListItem">
86
+						<a href="javascript:;" class="aBtn" onclick="btn_edit('1')" title="修改">修改</a>
87
+						<a href="javascript:;" class="aBtn aBtn1" onclick="btn_delete('1')" title="删除">删除</a>
88
+						<li class="col-md-3 col-sm-4">
89
+							<label>姓名:</label>
90
+							<span></span>
91
+						</li>
92
+						<li class="col-md-3 col-sm-4">
93
+							<label for="customer_bemakeAcc">电话:</label>
94
+							<span id="customer_bemakeAcc"></span>
95
+						</li>
96
+						<li class="col-md-3 col-sm-4">
97
+							<label for="customer_bemakeAcc">邮箱:</label>
98
+							<span id="customer_bemakeAcc"></span>
99
+						</li>
100
+						<li class="col-md-3 col-sm-4">
101
+							<label for="customer_bemakeAcc">职务:</label>
102
+							<span id="customer_bemakeAcc"></span>
103
+						</li>
104
+						<li class="col-md-3 col-sm-4">
105
+							<label for="customer_bemakeAcc">QQ:</label>
106
+							<span id="customer_bemakeAcc"></span>
107
+						</li>
108
+						<li class="col-md-3 col-sm-4">
109
+							<label for="customer_bemakeAcc">MSN:</label>
110
+							<span id="customer_bemakeAcc"></span>
111
+						</li>
112
+						<li class="col-md-12 col-sm-12">
113
+							<label for="customer_bemakeAcc">备注:</label>
114
+							<span id="customer_bemakeAcc"></span>
115
+						</li>
116
+					</div> -->
117
+					
118
+				</ul>
119
+			</div>
120
+		</div>
121
+		<script src="../keHuManager/js/cusDetails.js"></script>
122
+	</body>
123
+
124
+</html>

+ 10 - 3
CallCenterWeb.UI/css/customer.css

@@ -86,7 +86,7 @@ ul {
86 86
 	font-size: 14px;
87 87
 	font-weight: 700;
88 88
 	line-height: 1;
89
-	color: #fff!important;
89
+	color: #fff !important;
90 90
 	text-align: center;
91 91
 	white-space: nowrap;
92 92
 	vertical-align: middle;
@@ -259,7 +259,7 @@ img.upload-img {
259 259
 }
260 260
 
261 261
 .select2-container--default .select2-results__option--highlighted[aria-selected] {
262
-	background-color: rgba(0, 0, 0, .5)!important;
262
+	background-color: rgba(0, 0, 0, .5) !important;
263 263
 }
264 264
 
265 265
 .add_or_edit_menu .form-group {
@@ -273,4 +273,11 @@ img.upload-img {
273 273
 	width: 92%;
274 274
 	max-height: 256px;
275 275
 	overflow-y: auto;
276
-}
276
+}
277
+
278
+.contactList_item {
279
+	box-shadow: 0px 2px 7px #eee;
280
+	border-radius: 2px;
281
+	padding: 5px;
282
+	margin-bottom: 10px;
283
+}

+ 13 - 8
CallCenterWeb.UI/css/login.min.css

@@ -151,10 +151,14 @@ body {
151 151
 .signin_icons::after {
152 152
 	content: "";
153 153
 	position: absolute;
154
-	left: 21px;
155
-	top: 5px;
156
-	height: 10px;
157
-	border-right: 2px solid #e9e9e9
154
+	left: 25px;
155
+	top: -2px;
156
+	height: 24px;
157
+	border-right: 1px solid #cdcdcd
158
+}
159
+
160
+.signin_extensionnumber .signin_icons::after{
161
+	top: -5.5px;
158 162
 }
159 163
 
160 164
 .signin_user .signin_icons {
@@ -162,6 +166,7 @@ body {
162 166
 }
163 167
 
164 168
 .signin_extensionnumber .signin_icons {
169
+	top: 13px;
165 170
 	background: url("../img/extensionNumber_icons.png") center top no-repeat
166 171
 }
167 172
 
@@ -224,7 +229,7 @@ body {
224 229
 	width: 104px;
225 230
 	border-top: 2px solid #d7d7d7;
226 231
 	display: inline-block;
227
-	margin-bottom: 5px;
232
+	margin-bottom: 4px;
228 233
 	margin-right: 5px;
229 234
 }
230 235
 
@@ -233,7 +238,7 @@ body {
233 238
 	width: 104px;
234 239
 	border-top: 2px solid #d7d7d7;
235 240
 	display: inline-block;
236
-	margin-bottom: 5px;
241
+	margin-bottom: 4px;
237 242
 	margin-left: 5px;
238 243
 }
239 244
 
@@ -261,7 +266,7 @@ body {
261 266
 }
262 267
 
263 268
 .signin_panel input.form-control:focus {
264
-	border-color: #18abd1
269
+	border-color: #249fea
265 270
 }
266 271
 
267 272
 .has-error .form-control-feedback {
@@ -274,7 +279,7 @@ body {
274 279
 }
275 280
 
276 281
 .has-success .form-control-feedback {
277
-	color: #18abd1
282
+	color: #249fea
278 283
 }
279 284
 
280 285
 .has-success .form-control:focus {

+ 29 - 6
CallCenterWeb.UI/css/lookMsg.css

@@ -8,7 +8,7 @@ table th {
8 8
 }
9 9
 
10 10
 .size-14 {
11
-	font-size: 14px!important;
11
+	font-size: 14px !important;
12 12
 }
13 13
 
14 14
 .shark_content_title {
@@ -109,8 +109,8 @@ label {
109 109
 }
110 110
 
111 111
 .wrapper .Qus_box {
112
-	padding-left: 0!important;
113
-	margin-bottom: 0!important;
112
+	padding-left: 0 !important;
113
+	margin-bottom: 0 !important;
114 114
 	margin-top: 0;
115 115
 	border-bottom: 1px solid #ccc;
116 116
 }
@@ -222,13 +222,13 @@ textarea {
222 222
 }
223 223
 
224 224
 .lookMsgs input[type="radio"] {
225
-	cursor: not-allowed!important;
225
+	cursor: not-allowed !important;
226 226
 }
227 227
 
228 228
 .lookMsgs li span,
229 229
 .lookMsgs li img,
230 230
 .lookMsgs li label {
231
-	cursor: default!important;
231
+	cursor: default !important;
232 232
 }
233 233
 
234 234
 .content_2 {
@@ -268,7 +268,30 @@ textarea {
268 268
 	color: #fc3d18;
269 269
 }
270 270
 
271
-.outBoundTask .Phone_Text li{
271
+.outBoundTask .Phone_Text li {
272 272
 	width: 50%;
273 273
 	line-height: 34px;
274 274
 }
275
+
276
+.cusDetails .cus_base {
277
+	margin: 0;
278
+	padding: 0;
279
+}
280
+
281
+.cusDetails .cus_base .cusListItem {
282
+	background-color: #f6f6f6;
283
+	padding: 10px;
284
+	border-radius: 5px;
285
+	margin-bottom: 10px;
286
+	position: relative;
287
+}
288
+
289
+.cusDetails .cusListItem .aBtn {
290
+	position: absolute;
291
+	right: 60px;
292
+	top: 10px;
293
+	z-index: 10;
294
+}
295
+.cusDetails .cusListItem .aBtn1 {
296
+	right: 20px;
297
+}

BIN
CallCenterWeb.UI/img/extensionNumber_icons.png


BIN
CallCenterWeb.UI/img/extensionNumber_icons_active.png


BIN
CallCenterWeb.UI/img/password_icons.png


BIN
CallCenterWeb.UI/img/password_icons_active.png


BIN
CallCenterWeb.UI/img/user_icons.png


BIN
CallCenterWeb.UI/img/user_icons_active.png


+ 132 - 0
CallCenterWeb.UI/keHuManager/customerInfo.html

@@ -0,0 +1,132 @@
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="../css/WorkOrder/Search.css" rel="stylesheet">
11
+		<link href="../js/bootstrap-select/css/bootstrap-select.css" rel="stylesheet" />
12
+		<link href="../css/init.css" rel="stylesheet" />
13
+		<style>
14
+			.tool_bars{
15
+				margin-bottom: 10px;
16
+			}
17
+		</style>
18
+	</head>
19
+
20
+	<body class="gray-bg">
21
+		<div class="daoHang clearfix">
22
+			<div class="dhLeft">
23
+				<sapn><i class="syIcon"></i>位置:
24
+					<a href="javaScript:;" id="ReIndex">首页</a>&gt;
25
+					<a href="javaScript:;">客户管理</a>&gt;
26
+					<a href="" class="nowPosition">客户信息</a>
27
+				</sapn>
28
+			</div>
29
+			<div class="dhRight">
30
+				<a href="#" title="刷新"><i class="fa fa-refresh"></i></a>
31
+			</div>
32
+		</div>
33
+		<div class="wrapper wrapper-content animated fadeInRight">
34
+			<div class="toolBox clearfix">
35
+				<div class="pull-left">
36
+					<div class="form-inline">
37
+<!-- 						<div class="time-box form-group">
38
+							<i class="tub fa fa-calendar"></i>
39
+							<input class="form-control search_time" type="text" id="sc_time" placeholder="请选择起止时间">
40
+						</div> -->
41
+						<div class="form-group">
42
+							<select class="form-control selectpicker" id="sc_subtrade" data-live-search="true">
43
+								<option value="">请选择所属行业</option>
44
+							</select>
45
+						</div>
46
+						<div class="form-group">
47
+							<select class="form-control selectpicker" id="sc_layer" data-live-search="true">
48
+								<option value="">请选择客户信誉等级</option>
49
+							</select>
50
+						</div>
51
+						<div class="form-group">
52
+							<input type="text" class="form-control" id="sc_key" placeholder="请输入关键词" />
53
+						</div>
54
+						<div class="form-group">
55
+							<input type="text" class="form-control" id="sc_code" placeholder="请输入客户编号" />
56
+						</div>
57
+						<div class="form-group">
58
+							<input type="text" class="form-control" id="sc_cmpname" placeholder="请输入公司名称" />
59
+						</div>
60
+						<div class="form-group">
61
+							<input type="text" class="form-control" id="sc_compaddress" placeholder="请输入公司地址" />
62
+						</div>
63
+						<div class="form-group">
64
+							<input type="text" class="form-control" id="sc_legname" placeholder="请输入法人姓名" />
65
+						</div>
66
+						<div class="form-group">
67
+							<input type="text" class="form-control" id="sc_legtel" placeholder="请输入法人电话" />
68
+						</div>
69
+						<div class="form-group">
70
+							<input type="text" class="form-control" id="sc_bedept" placeholder="请输入客户归属部门" />
71
+						</div>
72
+						<div class="form-group">
73
+							<input type="text" class="form-control" id="sc_berelacc" placeholder="请输入归属涉税会计" />
74
+						</div>
75
+						<div class="form-group">
76
+							<input type="text" class="form-control" id="sc_beaudacc" placeholder="请输入归属审核会计" />
77
+						</div>
78
+						<div class="form-group">
79
+							<input type="text" class="form-control" id="sc_bemakeacc" placeholder="请输入归属做账会计" />
80
+						</div>
81
+						<div class="form-group">
82
+							<input type="text" class="form-control" id="sc_conname" placeholder="请输入联系人姓名" />
83
+						</div>
84
+						<div class="form-group">
85
+							<input type="text" class="form-control" id="sc_contel" placeholder="请输入联系人电话" />
86
+						</div>
87
+					</div>
88
+				</div>
89
+
90
+				<div class="pull-right tool_bars">
91
+					<button class="btns" id="sc_btns">搜索</button>
92
+					<button class="btns" id="btn_add">添加</button>
93
+					<button class="btns" onclick="btn_deletes()">批量删除</button>
94
+				</div>
95
+			</div>
96
+
97
+			<div style="width: 100%;padding: 10px;">
98
+				<table id="cusList" data-row-style="rowStyle" data-query-params="queryParams" data-pagination="true">
99
+					<thead>
100
+						<tr>
101
+							<th data-checkbox="true"></th>
102
+							<th data-field="F_CustomerCode" data-align="center">客户编号</th>
103
+							<th data-field="F_KeyWords" data-align="center">关键词</th>
104
+							<th data-field="F_CompanyName" data-align="center">公司名称</th>
105
+							<th data-field="F_CompanyAddress" data-align="center">公司地址</th>
106
+							<!-- <th data-field="F_LegalName" data-align="center">法人姓名</th> -->
107
+							<!-- <th data-field="F_LegalTel" data-align="center">法人电话</th> -->
108
+							<th data-field="F_SubTrade" data-align="center">所属行业</th>
109
+							<th data-field="F_TaxCategory" data-align="center">税务类别</th>
110
+							<!-- <th data-field="F_TaxPointDes" data-align="center">税点描述</th> -->
111
+							<th data-field="F_InvoiceRange" data-align="center">开票范围</th>
112
+							<th data-field="F_Layer" data-align="center">客户信誉等级</th>
113
+							<th data-field="F_BeDept" data-align="center">客户归属部门</th>
114
+							<th data-field="F_BeRelatedAcc" data-align="center">客户归属涉税会计</th>
115
+							<th data-field="F_BeAuditAcc" data-align="center">客户归属审核会计</th>
116
+							<th data-field="F_BeMakeAcc" data-align="center">客户归属做账会计</th>
117
+							<!-- <th data-field="ContactList" data-align="center">联系人信息</th> -->
118
+							<th data-field="F_CustomerId" data-formatter="formatterOprate" data-align="center">操作</th>
119
+						</tr>
120
+					</thead>
121
+				</table>
122
+			</div>
123
+			
124
+		</div>
125
+		<script src="../js/laydate/laydate.js"></script>
126
+		<script src="../js/bootstrap-select/js/bootstrap-select.js"></script>
127
+		<script src="../js/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
128
+		<script src="js/customerInfo.js"></script>
129
+
130
+	</body>
131
+
132
+</html>

+ 229 - 0
CallCenterWeb.UI/keHuManager/js/addOrEditContacts.js

@@ -0,0 +1,229 @@
1
+/**
2
+ * 修改增加联系人信息
3
+ * */
4
+$(function() {
5
+// 	//获取所属行业//获取税务类别//获取客户信誉等级
6
+// 	$.when(helper.getDropList.getlistDropByDic($('#customer_subtrade'), 'KHSSHY'),
7
+// 			helper.getDropList.getlistDropByDic($('#customer_taxCategory'), 'SWLB'),
8
+// 			helper.getDropList.getlistDropByDic($('#customer_layer'), 'KHLayer'))
9
+// 		.done(function() {
10
+			var edit_id = helper.request.queryString("edit_id");
11
+			if (edit_id) {
12
+				getCustomer(edit_id);
13
+			}
14
+			//绑定验证(所有 input.form-control)
15
+			$('#tab_user_contents').find("input[class='form-control']").on('blur keyup', valideInput);
16
+		// });
17
+
18
+});
19
+
20
+//获取客户详情
21
+function getCustomer(ids) {
22
+	$.getJSON(huayi.config.callcenter_url + "CustomerNew/GetCustomer", {
23
+		cusid: ids, //客户id
24
+		token: $.cookie("token")
25
+	}, function(data) {
26
+		if (data.state.toLowerCase() == "success") {
27
+			var cusBase = data.data.CustomerBase;
28
+			if (cusBase) {
29
+				$('#customer_key').val(cusBase.F_KeyWords); //string 关键词	
30
+				$('#customer_code').val(cusBase.F_CustomerCode); //string 客户编号
31
+				$('#customer_companyname').val(cusBase.F_CompanyName); //string 公司名称
32
+				$('#customer_comaddress').val(cusBase.F_CompanyAddress); //string 公司地址
33
+				$('#customer_legalName').val(cusBase.F_LegalName); //string 法人姓名
34
+				$('#customer_lehalTel').val(cusBase.F_LegalTel); //string 法人电话
35
+				$('#customer_subtrade').selectpicker('val', cusBase.F_SubTrade); // int 所属行业
36
+				$('#customer_taxCategory').selectpicker('val', cusBase.F_TaxCategory); // int 税务类别
37
+				$('#customer_taxPointDes').val(cusBase.F_TaxPointDes); //string 税点描述
38
+				$('#customer_invoiceRange').val(cusBase.F_InvoiceRange); //string 开票范围
39
+				$('#customer_layer').selectpicker('val', cusBase.F_Layer); // int 客户信誉等级
40
+				$('#customer_bedept').val(cusBase.F_BeDept); // int 客户归属部门
41
+				$('#customer_berelatedAcc').val(cusBase.F_BeRelatedAcc); //string 客户归属涉税会计
42
+				$('#customer_beauditAcc').val(cusBase.F_BeAuditAcc); //string 客户归属审核会计
43
+				$('#customer_bemakeAcc').val(cusBase.F_BeMakeAcc); //string 客户归属做账会计
44
+				$('#customer_key').trigger('blur');
45
+			}
46
+			var cusLists = data.data.ContactList;
47
+			if(cusLists && cusLists.length > 0){
48
+				for(var i = 0; i < cusLists.length; i++){
49
+					var tplstr = '';
50
+					tplstr = '<div class="contactList_item col-md-offset-2">' +
51
+						'<div class="form-group col-md-5 col-sm-5">' +
52
+						'<div class="input-group">' +
53
+						'<span class="input-group-addon">联系人姓名</span>' +
54
+						'<input id="F_Name_' + i + '" type="text" class="form-control" value="'+ cusLists[i].F_Name +'" placeholder="请输入联系人姓名" aria-describedby="联系人姓名">' +
55
+						'</div>' +
56
+						'</div>' +
57
+						'<div class="form-group col-md-5 col-sm-5">' +
58
+						'<div class="input-group">' +
59
+						'<span class="input-group-addon">联系人电话</span>' +
60
+						'<input id="F_Telephone_' + i + '" value="'+ cusLists[i].F_Telephone +'" type="text" class="form-control" placeholder="请输入联系人电话" aria-describedby="联系人电话">' +
61
+						'</div>' +
62
+						'</div>' +
63
+						'<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>' +
64
+						'</div>';
65
+					$('#contactList').prepend(tplstr);
66
+				}
67
+				indexNum = cusLists.length;
68
+			}
69
+		}
70
+	});
71
+}
72
+
73
+//保存
74
+function saveCustomer() {
75
+	if (!$.trim($('#F_Name').val()) ||
76
+		!$.trim($('#F_Telephone').val())) {
77
+		layer.msg('带红色星号的是必填项,请填写或选择后再保存!');
78
+		return;
79
+	}
80
+	var wURL, loadIndex;
81
+	var edit_id = helper.request.queryString("edit_id");
82
+	var mid = helper.request.queryString("mid");
83
+	if (mid) {
84
+		wURL = "CustomerNew/UpdateContact";
85
+	} else {
86
+		wURL = "CustomerNew/AddContact";
87
+	}
88
+	$.ajax({
89
+		type: 'post',
90
+		url: huayi.config.callcenter_url + wURL,
91
+		dataType: 'json',
92
+		async: true,
93
+		beforeSend: function() { //触发ajax请求开始时执行
94
+			$('#save_btns').attr("disabled", true);
95
+			$('#save_btns').text('保存中...');
96
+			loadIndex = layer.load();
97
+		},
98
+		data: {
99
+			F_CustomerId: edit_id,//int客户id,允许为0
100
+			F_ManId: mid,//int	联系人id			
101
+			F_Name: $('#F_Name').val(),// string 联系人姓名
102
+			F_Telephone: $('#F_Telephone').val(),// string 电话
103
+			F_Email: $('#F_Email').val(),// string 邮箱
104
+			F_Duties: $('#F_Duties').val(),// string 职务
105
+			F_QQ: $('#F_QQ').val(),// string QQ
106
+			F_MSN: $('#F_MSN').val(),// string MSN	
107
+			F_Remark: $('#F_Remark').val(),// string 备注
108
+			token: $.cookie("token")
109
+		},
110
+		success: function(data) {
111
+			layer.close(loadIndex);
112
+			if (data.state === "success") {
113
+				var index = parent.layer.getFrameIndex(window.name);
114
+				parent.layer.close(index);
115
+				parent.$('#cusList').bootstrapTable('refresh');
116
+				parent.layer.msg("保存成功");
117
+			} else {
118
+				$('#save_btns').attr("disabled", false);
119
+				$('#save_btns').text('保存');
120
+			}
121
+		},
122
+		error: function(textStatus) {
123
+			layer.close(loadIndex);
124
+			layer.confirm('网络繁忙,请稍后再试...', {
125
+				icon: 7,
126
+				closeBtn: 0,
127
+				btn: ['确定'] //按钮
128
+			});
129
+			$('#save_btns').attr("disabled", false);
130
+			$('#save_btns').text('保存');
131
+		},
132
+		complete: function(XMLHttpRequest, textStatus) {
133
+			layer.close(loadIndex);
134
+			if (textStatus == 'timeout') {
135
+				var xmlhttp = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
136
+				xmlhttp.abort();
137
+				layer.confirm('网络超时,请稍后再试...', {
138
+					icon: 7,
139
+					closeBtn: 0,
140
+					btn: ['确定'] //按钮
141
+				});
142
+			}
143
+			$('#save_btns').attr("disabled", false);
144
+			$('#save_btns').text('保存');
145
+		},
146
+	});
147
+}
148
+
149
+
150
+//验证(所有 input.form-control)的方法
151
+function valideInput() {
152
+	var _that = $(this);
153
+	//console.log($(this).attr('id'));
154
+	switch ($(this).attr('id')) {
155
+		case 'F_Name': //验证姓名
156
+			valideMethods(_that, regexs.userNameReg, '格式不正确(只能输入2-20位汉字可以包含·•)!', false);
157
+			break;
158
+		case 'F_Telephone': //验证电话
159
+			valideMethods(_that, regexs.phone, '您输入的电话号码格式不正确!', false);
160
+			break;
161
+		case 'F_Email': //验证 邮箱
162
+			valideMethods(_that, regexs.email, '请输入正确格式的邮箱!', true);
163
+			break;
164
+		case 'F_Duties': //验证 职务
165
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
166
+			break;
167
+		case 'F_QQ': //QQ
168
+			valideMethods(_that, regexs.QQreg, '请输入正确格式的QQ号!', true);
169
+			break;
170
+		case 'F_MSN': //MSN
171
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
172
+			break;
173
+	}
174
+	if ($('#tab_user_contents').find('.has-error').length > 0) {
175
+		$('.project_save').attr('disabled', true);
176
+		$('#save_btns').off('click', saveCustomer);
177
+	} else {
178
+		$('.project_save').attr('disabled', false);
179
+		$('#save_btns').off('click', saveCustomer);
180
+		$('#save_btns').on('click', saveCustomer);
181
+	}
182
+}
183
+/**
184
+ * 验证方法
185
+ * _this :传递的this
186
+ * regRlues: 验证的规则
187
+ * msg: 提示信息
188
+ * isRes:boolean 是否允许验证的内容为空,true:允许为空,false:不允许为空
189
+ * */
190
+function valideMethods(_this, regRlues, msg, isRes) {
191
+	var txtTpips = _this.parent().parent().find('.text-tips');
192
+	if (txtTpips) {
193
+		txtTpips.parent().remove();
194
+	}
195
+	if (!isRes) {
196
+		//不为空
197
+		if (!regRlues.test($.trim(_this.val()))) {
198
+			_this.parent().parent().removeClass('has-success has-feedback').addClass('has-error has-feedback');
199
+			_this.parent().find('.glyphicon').remove();
200
+			$('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
201
+			$('<div class="col-md-10 col-md-offset-2"><span class="text-tips">' + msg + '</span></div>').appendTo(_this.parent()
202
+				.parent());
203
+			$('.project_save').attr('disabled', true);
204
+		} else {
205
+			_this.parent().parent().removeClass('has-error has-feedback').addClass('has-success has-feedback');
206
+			_this.parent().find('.glyphicon').remove();
207
+			$('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
208
+		}
209
+	} else {
210
+		//为空不验证;但是有内容就验证;
211
+		if ($.trim(_this.val())) {
212
+			if (!regRlues.test($.trim(_this.val()))) {
213
+				_this.parent().parent().removeClass('has-success has-feedback').addClass('has-error has-feedback');
214
+				_this.parent().find('.glyphicon').remove();
215
+				$('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
216
+				$('<div class="col-md-10 col-md-offset-2"><span class="text-tips">' + msg + '</span></div>').appendTo(_this.parent()
217
+					.parent());
218
+				$('.project_save').attr('disabled', true);
219
+			} else {
220
+				_this.parent().parent().removeClass('has-error has-feedback').addClass('has-success has-feedback');
221
+				_this.parent().find('.glyphicon').remove();
222
+				$('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
223
+			}
224
+		} else {
225
+			_this.parent().find('.glyphicon').remove();
226
+			_this.parent().parent().removeClass('has-error has-success has-feedback');
227
+		}
228
+	}
229
+}

+ 409 - 0
CallCenterWeb.UI/keHuManager/js/addOrEditCusInfo.js

@@ -0,0 +1,409 @@
1
+/**
2
+ * 修改增加客户信息
3
+ * */
4
+var indexNum = 0;
5
+$(function() {
6
+	//获取所属行业//获取税务类别//获取客户信誉等级
7
+	$.when(helper.getDropList.getlistDropByDic($('#customer_subtrade'), 'KHSSHY'),
8
+			helper.getDropList.getlistDropByDic($('#customer_taxCategory'), 'SWLB'),
9
+			helper.getDropList.getlistDropByDic($('#customer_layer'), 'KHLayer'))
10
+		.done(function() {
11
+			var edit_id = helper.request.queryString("edit_id");
12
+			if (edit_id) {
13
+				getCustomer(edit_id);
14
+			}
15
+			//绑定验证(所有 input.form-control)
16
+			$('#tab_user_contents').find("input[class='form-control']").on('blur keyup', valideInput);
17
+		});
18
+
19
+});
20
+
21
+//获取客户详情
22
+function getCustomer(ids) {
23
+	$.getJSON(huayi.config.callcenter_url + "CustomerNew/GetCustomer", {
24
+		cusid: ids, //客户id
25
+		token: $.cookie("token")
26
+	}, function(data) {
27
+		if (data.state.toLowerCase() == "success") {
28
+			var cusBase = data.data.CustomerBase;
29
+			if (cusBase) {
30
+				$('#customer_key').val(cusBase.F_KeyWords); //string 关键词	
31
+				$('#customer_code').val(cusBase.F_CustomerCode); //string 客户编号
32
+				$('#customer_companyname').val(cusBase.F_CompanyName); //string 公司名称
33
+				$('#customer_comaddress').val(cusBase.F_CompanyAddress); //string 公司地址
34
+				$('#customer_legalName').val(cusBase.F_LegalName); //string 法人姓名
35
+				$('#customer_lehalTel').val(cusBase.F_LegalTel); //string 法人电话
36
+				$('#customer_subtrade').selectpicker('val', cusBase.F_SubTrade); // int 所属行业
37
+				$('#customer_taxCategory').selectpicker('val', cusBase.F_TaxCategory); // int 税务类别
38
+				$('#customer_taxPointDes').val(cusBase.F_TaxPointDes); //string 税点描述
39
+				$('#customer_invoiceRange').val(cusBase.F_InvoiceRange); //string 开票范围
40
+				$('#customer_layer').selectpicker('val', cusBase.F_Layer); // int 客户信誉等级
41
+				$('#customer_bedept').val(cusBase.F_BeDept); // int 客户归属部门
42
+				$('#customer_berelatedAcc').val(cusBase.F_BeRelatedAcc); //string 客户归属涉税会计
43
+				$('#customer_beauditAcc').val(cusBase.F_BeAuditAcc); //string 客户归属审核会计
44
+				$('#customer_bemakeAcc').val(cusBase.F_BeMakeAcc); //string 客户归属做账会计
45
+				$('#customer_key').trigger('blur');
46
+			}
47
+			var cusLists = data.data.ContactList;
48
+			if(cusLists && cusLists.length > 0){
49
+				for(var i = 0; i < cusLists.length; i++){
50
+					var tplstr = '';
51
+					tplstr = '<div class="contactList_item col-md-offset-2 clearfix">' +
52
+						'<div class="form-group col-md-5 col-sm-5">' +
53
+						'<div class="input-group">' +
54
+						'<span class="input-group-addon">联系人姓名</span>' +
55
+						'<input id="F_Name_' + i + '" type="text" class="form-control" value="'+ cusLists[i].F_Name +'" placeholder="请输入联系人姓名" aria-describedby="联系人姓名">' +
56
+						'</div>' +
57
+						'</div>' +
58
+						'<div class="form-group col-md-5 col-sm-5">' +
59
+						'<div class="input-group">' +
60
+						'<span class="input-group-addon">联系人电话</span>' +
61
+						'<input id="F_Telephone_' + i + '" value="'+ cusLists[i].F_Telephone +'" type="text" class="form-control" placeholder="请输入联系人电话" aria-describedby="联系人电话">' +
62
+						'</div>' +
63
+						'</div>' +
64
+						'<div class="form-group col-md-5 col-sm-5">' +
65
+						'<div class="input-group">' +
66
+						'<span class="input-group-addon">联系人邮箱</span>' +
67
+						'<input id="F_Email_' + i + '" value="'+ cusLists[i].F_Email +'" type="text" class="form-control" placeholder="请输入联系人邮箱" aria-describedby="联系人邮箱">' +
68
+						'</div>' +
69
+						'</div>' +
70
+						'<div class="form-group col-md-5 col-sm-5">' +
71
+						'<div class="input-group">' +
72
+						'<span class="input-group-addon">联系人职务</span>' +
73
+						'<input id="F_Duties_' + i + '" value="'+ cusLists[i].F_Duties +'" type="text" class="form-control" placeholder="请输入联系人职务" aria-describedby="联系人职务">' +
74
+						'</div>' +
75
+						'</div>' +
76
+						'<div class="form-group col-md-5 col-sm-5">' +
77
+						'<div class="input-group">' +
78
+						'<span class="input-group-addon">联系人QQ</span>' +
79
+						'<input id="F_QQ_' + i + '" value="'+ cusLists[i].F_QQ +'" type="text" class="form-control" placeholder="请输入联系人QQ" aria-describedby="联系人QQ">' +
80
+						'</div>' +
81
+						'</div>' +
82
+						'<div class="form-group col-md-5 col-sm-5">' +
83
+						'<div class="input-group">' +
84
+						'<span class="input-group-addon">联系人MSN</span>' +
85
+						'<input id="F_MSN_' + i + '" value="'+ cusLists[i].F_MSN +'" type="text" class="form-control" placeholder="请输入联系人MSN" aria-describedby="联系人MSN">' +
86
+						'</div>' +
87
+						'</div>' +
88
+						'<div class="form-group col-md-10 col-sm-10">' +
89
+						'<div class="input-group">' +
90
+						'<span class="input-group-addon">联系人备注</span>' +
91
+						'<input id="F_Remark_' + i + '" value="'+ cusLists[i].F_Remark +'" type="text" class="form-control" placeholder="请输入联系人备注" aria-describedby="联系人备注">' +
92
+						'</div>' +
93
+						'</div>' +
94
+						'<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>' +
95
+						'</div>';
96
+					$('#contactList').prepend(tplstr);
97
+				}
98
+				indexNum = cusLists.length;
99
+			}
100
+		}
101
+	});
102
+}
103
+
104
+//保存
105
+function saveCustomer() {
106
+	if (!$.trim($('#customer_key').val()) ||
107
+		!$.trim($('#customer_code').val()) ||
108
+		!$.trim($('#customer_companyname').val())
109
+	) {
110
+		layer.msg('带红色星号的是必填项,请填写或选择后再保存!');
111
+		return;
112
+	}
113
+	var contactList = $('#contactList').find('.contactList_item');
114
+	for (var i = 0; i < contactList.length; i++) {
115
+		var F_Name = $(contactList[i]).find('input[id*="F_Name_"]').val();
116
+		var F_Telephone = $(contactList[i]).find('input[id*="F_Telephone_"]').val();
117
+		var F_Email = $(contactList[i]).find('input[id*="F_Email_"]').val();
118
+		var F_Duties = $(contactList[i]).find('input[id*="F_Duties_"]').val();
119
+		var F_QQ = $(contactList[i]).find('input[id*="F_QQ_"]').val();
120
+		var F_MSN = $(contactList[i]).find('input[id*="F_MSN_"]').val();
121
+		if (!regexs.chOrenOrnum.test($.trim(F_Name))) {
122
+			layer.confirm('您添加的联系人姓名格式不正确(只能输入中文、英文、数字)!', {
123
+				icon: 2,
124
+				btn: ['确定']
125
+			});
126
+			return;
127
+		}
128
+		if (!regexs.phone.test($.trim(F_Telephone))) {
129
+			layer.confirm('您添加的联系人电话号码格式不正确!', {
130
+				icon: 2,
131
+				btn: ['确定']
132
+			});
133
+			return;
134
+		}
135
+		if (F_Email && !regexs.email.test($.trim(F_Email))) {
136
+			layer.confirm('您添加的联系人邮箱格式不正确!', {
137
+				icon: 2,
138
+				btn: ['确定']
139
+			});
140
+			return;
141
+		}
142
+		if (!regexs.phone.test($.trim(F_Duties))) {
143
+			layer.confirm('您添加的联系人电话号码格式不正确!', {
144
+				icon: 2,
145
+				btn: ['确定']
146
+			});
147
+			return;
148
+		}
149
+		if (!regexs.phone.test($.trim(F_Telephone))) {
150
+			layer.confirm('您添加的联系人电话号码格式不正确!', {
151
+				icon: 2,
152
+				btn: ['确定']
153
+			});
154
+			return;
155
+		}
156
+		if (!regexs.phone.test($.trim(F_Telephone))) {
157
+			layer.confirm('您添加的联系人电话号码格式不正确!', {
158
+				icon: 2,
159
+				btn: ['确定']
160
+			});
161
+			return;
162
+		}
163
+	}
164
+	var wURL, loadIndex;
165
+	var edit_id = helper.request.queryString("edit_id");
166
+	if (edit_id) {
167
+		wURL = "CustomerNew/Update";
168
+	} else {
169
+		wURL = "CustomerNew/Add";
170
+	}
171
+	$.ajax({
172
+		type: 'post',
173
+		url: huayi.config.callcenter_url + wURL,
174
+		dataType: 'json',
175
+		async: true,
176
+		beforeSend: function() { //触发ajax请求开始时执行
177
+			$('#save_btns').attr("disabled", true);
178
+			$('#save_btns').text('保存中...');
179
+			loadIndex = layer.load();
180
+		},
181
+		data: {
182
+			F_CustomerId: edit_id, //	否	string	id
183
+			F_KeyWords: $('#customer_key').val(), //string 关键词	
184
+			F_CustomerCode: $('#customer_code').val(), //string 客户编号
185
+			F_CompanyName: $('#customer_companyname').val(), //string 公司名称
186
+			F_CompanyAddress: $('#customer_comaddress').val(), //string 公司地址
187
+			F_LegalName: $('#customer_legalName').val(), //string 法人姓名
188
+			F_LegalTel: $('#customer_lehalTel').val(), //string 法人电话
189
+			F_SubTrade: $('#customer_subtrade').val(), // int 所属行业
190
+			F_TaxCategory: $('#customer_taxCategory').val(), // int 税务类别
191
+			F_TaxPointDes: $('#customer_taxPointDes').val(), //string 税点描述
192
+			F_InvoiceRange: $('#customer_invoiceRange').val(), //string 开票范围
193
+			F_Layer: $('#customer_layer').val(), // int 客户信誉等级
194
+			F_BeDept: $('#customer_bedept').val(), // int 客户归属部门
195
+			F_BeRelatedAcc: $('#customer_berelatedAcc').val(), //string 客户归属涉税会计
196
+			F_BeAuditAcc: $('#customer_beauditAcc').val(), //string 客户归属审核会计
197
+			F_BeMakeAcc: $('#customer_bemakeAcc').val(), //string 客户归属做账会计
198
+			ContactList: getFields(), //List联系人列表
199
+			token: $.cookie("token")
200
+		},
201
+		success: function(data) {
202
+			layer.close(loadIndex);
203
+			if (data.state === "success") {
204
+				var index = parent.layer.getFrameIndex(window.name);
205
+				parent.layer.close(index);
206
+				parent.$('#cusList').bootstrapTable('refresh');
207
+				parent.layer.msg("保存成功");
208
+			} else {
209
+				$('#save_btns').attr("disabled", false);
210
+				$('#save_btns').text('保存');
211
+			}
212
+		},
213
+		error: function(textStatus) {
214
+			layer.close(loadIndex);
215
+			layer.confirm('网络繁忙,请稍后再试...', {
216
+				icon: 7,
217
+				closeBtn: 0,
218
+				btn: ['确定'] //按钮
219
+			});
220
+			$('#save_btns').attr("disabled", false);
221
+			$('#save_btns').text('保存');
222
+		},
223
+		complete: function(XMLHttpRequest, textStatus) {
224
+			layer.close(loadIndex);
225
+			if (textStatus == 'timeout') {
226
+				var xmlhttp = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
227
+				xmlhttp.abort();
228
+				layer.confirm('网络超时,请稍后再试...', {
229
+					icon: 7,
230
+					closeBtn: 0,
231
+					btn: ['确定'] //按钮
232
+				});
233
+			}
234
+			$('#save_btns').attr("disabled", false);
235
+			$('#save_btns').text('保存');
236
+		},
237
+	});
238
+}
239
+
240
+//添加联系人
241
+function btn_add() {
242
+	var tplstr = '';
243
+	tplstr = '<div class="contactList_item col-md-offset-2 clearfix">' +
244
+		'<div class="form-group col-md-5 col-sm-5">' +
245
+		'<div class="input-group">' +
246
+		'<span class="input-group-addon">联系人姓名</span>' +
247
+		'<input id="F_Name_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人姓名" aria-describedby="联系人姓名">' +
248
+		'</div>' +
249
+		'</div>' +
250
+		'<div class="form-group col-md-5 col-sm-5">' +
251
+		'<div class="input-group">' +
252
+		'<span class="input-group-addon">联系人电话</span>' +
253
+		'<input id="F_Telephone_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人电话" aria-describedby="联系人电话">' +
254
+		'</div>' +
255
+		'</div>' +
256
+		'<div class="form-group col-md-5 col-sm-5">' +
257
+		'<div class="input-group">' +
258
+		'<span class="input-group-addon">联系人邮箱</span>' +
259
+		'<input id="F_Email_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人邮箱" aria-describedby="联系人邮箱">' +
260
+		'</div>' +
261
+		'</div>' +
262
+		'<div class="form-group col-md-5 col-sm-5">' +
263
+		'<div class="input-group">' +
264
+		'<span class="input-group-addon">联系人职务</span>' +
265
+		'<input id="F_Duties_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人职务" aria-describedby="联系人职务">' +
266
+		'</div>' +
267
+		'</div>' +
268
+		'<div class="form-group col-md-5 col-sm-5">' +
269
+		'<div class="input-group">' +
270
+		'<span class="input-group-addon">联系人QQ</span>' +
271
+		'<input id="F_QQ_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人QQ" aria-describedby="联系人QQ">' +
272
+		'</div>' +
273
+		'</div>' +
274
+		'<div class="form-group col-md-5 col-sm-5">' +
275
+		'<div class="input-group">' +
276
+		'<span class="input-group-addon">联系人MSN</span>' +
277
+		'<input id="F_MSN_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人MSN" aria-describedby="联系人MSN">' +
278
+		'</div>' +
279
+		'</div>' +
280
+		'<div class="form-group col-md-10 col-sm-10">' +
281
+		'<div class="input-group">' +
282
+		'<span class="input-group-addon">联系人备注</span>' +
283
+		'<input id="F_Remark_' + indexNum + '" type="text" class="form-control" placeholder="请输入联系人备注" aria-describedby="联系人备注">' +
284
+		'</div>' +
285
+		'</div>' +
286
+		'<button class="form-control btn btn-default" style="width:60px;margin-left:15px" onclick="btn_delete($(this))">删除</button>' +
287
+		'</div>';
288
+	$('#contactList').prepend(tplstr);
289
+	indexNum++;
290
+}
291
+
292
+//删除联系人
293
+function btn_delete(el) {
294
+	el.parent().remove();
295
+}
296
+
297
+//获取联系人信息
298
+function getFields() {
299
+	var goodslists = [];
300
+	var goodsLists_items = $('#contactList').find('.contactList_item');
301
+	$.each(goodsLists_items, function(i, v) {
302
+		goodslists.push({
303
+			"F_Name": $(v).find('input[id*="F_Name_"]').val(),
304
+			"F_Telephone": $(v).find('input[id*="F_Telephone_"]').val(),
305
+			"F_Email": $(v).find('input[id*="F_Email_"]').val(),
306
+			"F_Duties": $(v).find('input[id*="F_Duties_"]').val(),
307
+			"F_QQ": $(v).find('input[id*="F_QQ_"]').val(),
308
+			"F_MSN": $(v).find('input[id*="F_MSN_"]').val(),
309
+			"F_Remark": $(v).find('input[id*="F_Remark_"]').val()
310
+		});
311
+	});
312
+	//去重
313
+	helper.methods.uniqueObjArray(goodslists, 'F_Name');
314
+	return goodslists;
315
+}
316
+
317
+
318
+//验证(所有 input.form-control)的方法
319
+function valideInput() {
320
+	var _that = $(this);
321
+	//console.log($(this).attr('id'));
322
+	switch ($(this).attr('id')) {
323
+		case 'customer_key': //验证关键词
324
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', false);
325
+			break;
326
+		case 'customer_code': //验证客户编号
327
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', false);
328
+			break;
329
+		case 'customer_companyname': //验证公司名称
330
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', false);
331
+			break;
332
+		case 'customer_legalName': //验证法人姓名
333
+			valideMethods(_that, regexs.userNameReg, '格式不正确(只能输入2-20位汉字可以包含·•)!', true);
334
+			break;
335
+		case 'customer_lehalTel': //验证法人电话
336
+			valideMethods(_that, regexs.phone, '您输入的电话号码格式不正确!', true);
337
+			break;
338
+		case 'customer_invoiceRange': //验证 开票范围
339
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
340
+			break;
341
+		case 'customer_bedept': //验证 客户归属部门
342
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
343
+			break;
344
+		case 'customer_berelatedAcc': //客户归属涉税会计
345
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
346
+			break;
347
+		case 'customer_beauditAcc': //客户归属审核会计
348
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
349
+			break;
350
+		case 'customer_bemakeAcc': //客户归属做账会计
351
+			valideMethods(_that, regexs.chOrenOrnum, '格式不正确(只能输入中文、英文、数字)!', true);
352
+			break;
353
+	}
354
+	if ($('#tab_user_contents').find('.has-error').length > 0) {
355
+		$('.project_save').attr('disabled', true);
356
+		$('#save_btns').off('click', saveCustomer);
357
+	} else {
358
+		$('.project_save').attr('disabled', false);
359
+		$('#save_btns').off('click', saveCustomer);
360
+		$('#save_btns').on('click', saveCustomer);
361
+	}
362
+}
363
+/**
364
+ * 验证方法
365
+ * _this :传递的this
366
+ * regRlues: 验证的规则
367
+ * msg: 提示信息
368
+ * isRes:boolean 是否允许验证的内容为空,true:允许为空,false:不允许为空
369
+ * */
370
+function valideMethods(_this, regRlues, msg, isRes) {
371
+	var txtTpips = _this.parent().parent().find('.text-tips');
372
+	if (txtTpips) {
373
+		txtTpips.parent().remove();
374
+	}
375
+	if (!isRes) {
376
+		//不为空
377
+		if (!regRlues.test($.trim(_this.val()))) {
378
+			_this.parent().parent().removeClass('has-success has-feedback').addClass('has-error has-feedback');
379
+			_this.parent().find('.glyphicon').remove();
380
+			$('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
381
+			$('<div class="col-md-10 col-md-offset-2"><span class="text-tips">' + msg + '</span></div>').appendTo(_this.parent()
382
+				.parent());
383
+			$('.project_save').attr('disabled', true);
384
+		} else {
385
+			_this.parent().parent().removeClass('has-error has-feedback').addClass('has-success has-feedback');
386
+			_this.parent().find('.glyphicon').remove();
387
+			$('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
388
+		}
389
+	} else {
390
+		//为空不验证;但是有内容就验证;
391
+		if ($.trim(_this.val())) {
392
+			if (!regRlues.test($.trim(_this.val()))) {
393
+				_this.parent().parent().removeClass('has-success has-feedback').addClass('has-error has-feedback');
394
+				_this.parent().find('.glyphicon').remove();
395
+				$('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
396
+				$('<div class="col-md-10 col-md-offset-2"><span class="text-tips">' + msg + '</span></div>').appendTo(_this.parent()
397
+					.parent());
398
+				$('.project_save').attr('disabled', true);
399
+			} else {
400
+				_this.parent().parent().removeClass('has-error has-feedback').addClass('has-success has-feedback');
401
+				_this.parent().find('.glyphicon').remove();
402
+				$('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
403
+			}
404
+		} else {
405
+			_this.parent().find('.glyphicon').remove();
406
+			_this.parent().parent().removeClass('has-error has-success has-feedback');
407
+		}
408
+	}
409
+}

+ 123 - 0
CallCenterWeb.UI/keHuManager/js/cusDetails.js

@@ -0,0 +1,123 @@
1
+/**
2
+ * 客户信息详情
3
+ * */
4
+
5
+$(document).ready(function() {
6
+	var edit_id = helper.request.queryString("edit_id");
7
+	if (edit_id) {
8
+		getCustomer(edit_id); //获取客户信息
9
+	}
10
+});
11
+
12
+//获取客户详情
13
+function getCustomer(ids) {
14
+	$.getJSON(huayi.config.callcenter_url + "CustomerNew/GetCustomer", {
15
+		cusid: ids, //客户id
16
+		token: $.cookie("token")
17
+	}, function(data) {
18
+		if (data.state.toLowerCase() == "success") {
19
+			var cusBase = data.data.CustomerBase;
20
+			if (cusBase) {
21
+				$('#customer_key').text(cusBase.F_KeyWords); //string 关键词	
22
+				$('#customer_code').text(cusBase.F_CustomerCode); //string 客户编号
23
+				$('#customer_companyname').text(cusBase.F_CompanyName); //string 公司名称
24
+				$('#customer_comaddress').text(cusBase.F_CompanyAddress); //string 公司地址
25
+				$('#customer_legalName').text(cusBase.F_LegalName); //string 法人姓名
26
+				$('#customer_lehalTel').text(cusBase.F_LegalTel); //string 法人电话
27
+				$('#customer_subtrade').text(cusBase.F_SubTrade); // int 所属行业
28
+				$('#customer_taxCategory').text(cusBase.F_TaxCategory); // int 税务类别
29
+				$('#customer_taxPointDes').text(cusBase.F_TaxPointDes); //string 税点描述
30
+				$('#customer_invoiceRange').text(cusBase.F_InvoiceRange); //string 开票范围
31
+				$('#customer_layer').text(cusBase.F_Layer); // int 客户信誉等级
32
+				$('#customer_bedept').text(cusBase.F_BeDept); // int 客户归属部门
33
+				$('#customer_berelatedAcc').text(cusBase.F_BeRelatedAcc); //string 客户归属涉税会计
34
+				$('#customer_beauditAcc').text(cusBase.F_BeAuditAcc); //string 客户归属审核会计
35
+				$('#customer_bemakeAcc').text(cusBase.F_BeMakeAcc); //string 客户归属做账会计
36
+				$('#customer_key').trigger('blur');
37
+			}
38
+			var cusLists = data.data.ContactList;
39
+			if (cusLists && cusLists.length > 0) {
40
+				for (var i = 0; i < cusLists.length; i++) {
41
+					var tplstr = '';
42
+					tplstr = '<div class="clearfix cusListItem">'+
43
+										'<a href="javascript:;" class="aBtn" onclick="btn_edit(\''+ cusLists[i].F_CustomerId +'\',\''+ cusLists[i].F_ManId +'\')" title="修改">修改</a>'+
44
+										'<a href="javascript:;" class="aBtn aBtn1" onclick="btn_delete(\''+ cusLists[i].F_ManId +'\')" title="删除">删除</a>'+
45
+										'<li class="col-md-3 col-sm-4">' +
46
+											'<label>姓名:</label>' +
47
+											'<span>'+ cusLists[i].F_Name +'</span>' +
48
+										'</li>'+
49
+										'<li class="col-md-3 col-sm-4">' +
50
+											'<label>电话:</label>' +
51
+											'<span>'+ cusLists[i].F_Telephone +'</span>' +
52
+										'</li>'+
53
+										'<li class="col-md-3 col-sm-4">' +
54
+											'<label>邮箱:</label>' +
55
+											'<span>'+ cusLists[i].F_Email +'</span>' +
56
+										'</li>'+
57
+										'<li class="col-md-3 col-sm-4">' +
58
+											'<label>职务:</label>' +
59
+											'<span>'+ cusLists[i].F_Duties +'</span>' +
60
+										'</li>'+
61
+										'<li class="col-md-3 col-sm-4">' +
62
+											'<label>QQ:</label>' +
63
+											'<span>'+ cusLists[i].F_QQ +'</span>' +
64
+										'</li>'+
65
+										'<li class="col-md-3 col-sm-4">' +
66
+											'<label>MSN:</label>' +
67
+											'<span>'+ cusLists[i].F_MSN +'</span>' +
68
+										'</li>'+
69
+										'<li class="col-md-12 col-sm-12">' +
70
+											'<label>备注:</label>' +
71
+											'<span>'+ cusLists[i].F_Remark +'</span>' +
72
+										'</li>'+
73
+										
74
+										
75
+										'</div>';
76
+					$('#cusLists').append(tplstr);
77
+				}
78
+			}
79
+		}
80
+	});
81
+}
82
+
83
+/**
84
+ * 修改联系人信息
85
+ * editId 客户id
86
+ * */
87
+function btn_edit(editId, mid) {
88
+	layer.open({
89
+		type: 2,
90
+		title: '修改联系人信息',
91
+		maxmin: true, //开启最大化最小化按钮
92
+		area: ['60%', '70%'],
93
+		content: '../commonTpl/addOrEditContacts.html?edit_id=' + editId + '&mid=' + mid
94
+	});
95
+}
96
+
97
+//删除
98
+function btn_delete(cid) {
99
+	layer.confirm('确定删除当前联系人信息吗?', {
100
+		icon: 7,
101
+		btn: ['是', '否'] //按钮
102
+	}, function(index) {
103
+		/*执行删除*/
104
+		$.ajax({
105
+			type: "get",
106
+			url: huayi.config.callcenter_url + "CustomerNew/DelContact",
107
+			dataType: 'json',
108
+			async: true,
109
+			data: {
110
+				ids: cid,//客户Id,可多选[1,2,3]
111
+				token: $.cookie("token")
112
+			},
113
+			success: function(data) {
114
+				layer.msg("删除成功!");
115
+				var edit_id = helper.request.queryString("edit_id");
116
+				if (edit_id) {
117
+					getCustomer(edit_id); //获取客户信息
118
+				}
119
+				layer.close(index);
120
+			}
121
+		});
122
+	});
123
+}

+ 184 - 0
CallCenterWeb.UI/keHuManager/js/customerInfo.js

@@ -0,0 +1,184 @@
1
+/**
2
+ * 客户信息
3
+ * */
4
+
5
+$(document).ready(function() {
6
+	//初始化时间
7
+// 	laydate.render({
8
+// 		elem: '#sc_time',
9
+// 		range: '~',
10
+// 		theme: '#1ab394',
11
+// 		calendar: true
12
+// 	});
13
+
14
+	//获取所属行业
15
+	helper.getDropList.getlistDropByDic($('#sc_subtrade'), 'KHSSHY');
16
+
17
+	//获取客户信誉等级
18
+	helper.getDropList.getlistDropByDic($('#sc_layer'), 'KHLayer');
19
+
20
+	initTable();
21
+	$("#sc_btns").on('click',initTable);
22
+	$('#btn_add').on('click', btn_add);
23
+});
24
+
25
+//客户信息的列表
26
+function initTable() {
27
+	//先销毁表格
28
+	$('#cusList').bootstrapTable('destroy');
29
+	//初始化表格,动态从服务器加载数据
30
+	$("#cusList").bootstrapTable({
31
+		method: "get", //使用get请求到服务器获取数据
32
+		url: huayi.config.callcenter_url + "CustomerNew/GetList", //获取数据的Servlet地址
33
+		contentType: 'application/x-www-form-urlencoded',
34
+		striped: true, //表格显示条纹
35
+		pagination: true, //启动分页
36
+		pageSize: 10, //每页显示的记录数
37
+		pageNumber: 1, //当前第几页
38
+		pageList: [10, 20, 50, 100], //记录数可选列表
39
+		search: false, //是否启用查询
40
+		showColumns: false, //显示下拉框勾选要显示的列
41
+		showRefresh: false, //显示刷新按钮
42
+		sidePagination: "server", //表示服务端请求
43
+		//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
44
+		//设置为limit可以获取limit, offset, search, sort, order
45
+		queryParamsType: "undefined",
46
+		queryParams: function queryParams(params) { //设置查询参数
47
+			var param = {
48
+				pageindex: params.pageNumber, //int 页码,默认为1	
49
+				pagesize: params.pageSize, //int 条数,默认为10
50
+				keywords: $('#sc_key').val(),//string 关键词
51
+				code: $('#sc_code').val(),//string 客户编号
52
+				cmpname: $('#sc_cmpname').val(),//string 公司名称
53
+				cmpaddress: $('#sc_compaddress').val(),//string 公司地址
54
+				legname: $('#sc_legname').val(),//string 法人姓名
55
+				legtel: $('#sc_legtel').val(),//string 法人电话
56
+				subtrade: $('#sc_subtrade').val(),//string 所属行业
57
+				layer: $('#sc_layer').val(),//string 客户信誉等级	
58
+				bedept: $('#sc_bedept').val(),//string 客户归属部门
59
+				berelacc: $('#sc_berelacc').val(),//string 归属涉税会计
60
+				beaudacc: $('#sc_beaudacc').val(),//string 归属审核会计
61
+				bemakeacc: $('#sc_bemakeacc').val(),//string 归属做账会计
62
+				conname: $('#sc_conname').val(),//string 联系人姓名
63
+				contel: $('#sc_contel').val(),//string 联系人电话
64
+				token: $.cookie("token")
65
+			};
66
+			return param;
67
+		},
68
+		onLoadSuccess: function() { //加载成功时执行
69
+			//layer.msg("加载成功");
70
+		},
71
+		onLoadError: function() { //加载失败时执行
72
+			//layer.msg("加载数据失败", { time: 1500, icon: 2 });
73
+		}
74
+	});
75
+}
76
+
77
+
78
+//格式化操作
79
+function formatterOprate(val, row) {
80
+	return '<ul class="tool_downs">' +
81
+		'<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_details_' + row.F_CustomerId + '" onclick="btn_details(\'' + row.F_CustomerId + '\')" title="详情">详情</a></li>' +
82
+		'<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_CustomerId + '" onclick="btn_edit(\'' + row.F_CustomerId + '\')" title="修改">修改</a></li>' +
83
+		'<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_addCus_' + row.F_CustomerId + '" onclick="btn_addCus(\'' + row.F_CustomerId + '\')" title="添加联系人信息">添加</a></li>' +
84
+		'<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_CustomerId + '" onclick="btn_delete(' + row.F_CustomerId + ')" title="删除">删除</a></li>' +
85
+		'</ul>';
86
+}
87
+
88
+
89
+/**
90
+ * 添加
91
+ * */
92
+function btn_add() {
93
+	layer.open({
94
+		type: 2,
95
+		title: '添加客户信息',
96
+		maxmin: true, //开启最大化最小化按钮
97
+		area: ['80%', '90%'],
98
+		content: '../commonTpl/addOrEditCusInfo.html'
99
+	});
100
+}
101
+
102
+/**
103
+ * 修改
104
+ * editId 客户id
105
+ * */
106
+function btn_edit(editId) {
107
+	layer.open({
108
+		type: 2,
109
+		title: '修改客户信息',
110
+		maxmin: true, //开启最大化最小化按钮
111
+		area: ['80%', '90%'],
112
+		content: '../commonTpl/addOrEditCusInfo.html?edit_id=' + editId
113
+	});
114
+}
115
+
116
+/**
117
+ * 详情
118
+ * editId 客户id
119
+ * */
120
+function btn_details(editId) {
121
+	layer.open({
122
+		type: 2,
123
+		title: '客户信息详情',
124
+		maxmin: true, //开启最大化最小化按钮
125
+		area: ['80%', '90%'],
126
+		content: '../commonTpl/cusDetails.html?edit_id=' + editId
127
+	});
128
+}
129
+
130
+/**
131
+ * 添加联系人信息
132
+ * editId 客户id
133
+ * */
134
+function btn_addCus(editId) {
135
+	layer.open({
136
+		type: 2,
137
+		title: '添加联系人信息',
138
+		maxmin: true, //开启最大化最小化按钮
139
+		area: ['60%', '70%'],
140
+		content: '../commonTpl/addOrEditContacts.html?edit_id=' + editId
141
+	});
142
+}
143
+
144
+//批量删除
145
+function btn_deletes() {
146
+	var ids = $.map($('#cusList').bootstrapTable('getSelections'),
147
+		function(row) {
148
+			return row.F_CustomerId;
149
+		});
150
+	/*判断长度*/
151
+	if (ids.length <= 0) {
152
+		layer.confirm('请选择要删除的选项', {
153
+			icon: 7,
154
+			btn: ['确定'] //按钮
155
+		});
156
+		return;
157
+	}
158
+	btn_delete(ids);
159
+}
160
+
161
+//删除
162
+function btn_delete(cid) {
163
+	layer.confirm('确定删除当前记录?', {
164
+		icon: 7,
165
+		btn: ['是', '否'] //按钮
166
+	}, function(index) {
167
+		/*执行删除*/
168
+		$.ajax({
169
+			type: "get",
170
+			url: huayi.config.callcenter_url + "CustomerNew/DelCustomer",
171
+			dataType: 'json',
172
+			async: true,
173
+			data: {
174
+				ids: cid,//客户Id,可多选[1,2,3]
175
+				token: $.cookie("token")
176
+			},
177
+			success: function(data) {
178
+				layer.msg("删除成功!");
179
+				$('#cusList').bootstrapTable('refresh');
180
+				layer.close(index);
181
+			}
182
+		});
183
+	});
184
+}

+ 18 - 9
CallCenterWeb.UI/login.html

@@ -191,9 +191,7 @@
191 191
 						$(document).off('keypress', enterHanlde);
192 192
 						$(document).on('keypress', enterHanlde);
193 193
 					},
194
-
195 194
 				});
196
-
197 195
 			}
198 196
 
199 197
 			//验证
@@ -213,18 +211,27 @@
213 211
 				} else if(ele === 'password') {
214 212
 					valideMethods(_that, regexs.passwordReg, '6-32个字符只能是字母、下划线、数字');
215 213
 				}
214
+				
216 215
 				if(regexs.userReg.test($.trim($('#user').val())) && regexs.passwordReg.test($.trim($("#password").val()))) {
217 216
 					if(isSeat){
218
-						if(regexs.nums.test($.trim($('#extensionNumber').val()))) {
219
-							$('.btns').attr("disabled", false);
220
-							$(document).off('click', '.btns', login);
221
-							$(document).on('click', '.btns', login);
222
-							$(document).off('keypress', enterHanlde);
223
-							$(document).on('keypress', enterHanlde);
224
-						} else {
217
+						if(!$.trim($('#extensionNumber').val())){
218
+							$('#login_tips').show();
219
+							$('#login_msg').text('您还没有输入分机号!');
225 220
 							$('.btns').attr("disabled", true);
226 221
 							$(document).off('click', '.btns', login);
227 222
 							$(document).off('keypress', enterHanlde);
223
+						}else{
224
+							if(regexs.nums.test($.trim($('#extensionNumber').val()))) {
225
+								$('.btns').attr("disabled", false);
226
+								$(document).off('click', '.btns', login);
227
+								$(document).on('click', '.btns', login);
228
+								$(document).off('keypress', enterHanlde);
229
+								$(document).on('keypress', enterHanlde);
230
+							} else {
231
+								$('.btns').attr("disabled", true);
232
+								$(document).off('click', '.btns', login);
233
+								$(document).off('keypress', enterHanlde);
234
+							}
228 235
 						}
229 236
 					}else{
230 237
 						$('.btns').attr("disabled", false);
@@ -259,8 +266,10 @@
259 266
 			
260 267
 			//tab 切换
261 268
 			function tabChane(){
269
+				$('#login_tips').hide();
262 270
 				$(this).addClass('active').siblings().removeClass('active');
263 271
 				$('#signin_extensionnumber').toggle();
272
+				$('#user').trigger('focus');
264 273
 			}
265 274
 		</script>
266 275
 	</body>

+ 0 - 222
CallCenterWeb.UI/logins.html

@@ -1,222 +0,0 @@
1
-<!DOCTYPE html>
2
-<html lang="zh-CN">
3
-
4
-	<head>
5
-		<meta charset="utf-8">
6
-		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
7
-		<title>登录</title>
8
-		<meta name="keywords">
9
-		<meta name="description">
10
-		<meta name="renderer" content="webkit" />
11
-		<link rel="shortcut icon" href="img/32.ico" />
12
-		<link href="./css/bootstrap.min14ed.css?v=3.3.6" rel="stylesheet" type="text/css">
13
-		<link href="./css/animate.min.css" rel="stylesheet" type="text/css" />
14
-		<link href="./css/login.min.css" rel="stylesheet">
15
-		<!--[if lt IE 9]>
16
-    		<meta http-equiv="refresh" content="0;ie.html" />
17
-    	<![endif]-->
18
-	</head>
19
-	<body>
20
-		<div class="signin">
21
-			<div class="signin_bg animated fadeIn">
22
-				<div class="signin_panel" id="signin">
23
-					<img class="signin_logo" src="img/signin_logo.png" alt="logo" />
24
-					<div class="signin_user">
25
-						<i class="signin_icons"></i>
26
-						<input class="form-control" type="text" placeholder="请输入账号" id="user" autofocus autocomplete="off">
27
-					</div>
28
-					<div class="signin_extensionnumber">
29
-						<i class="signin_icons"></i>
30
-						<input class="form-control" type="text" placeholder="请输入分机号" id="extensionNumber" autofocus autocomplete="off">
31
-					</div>
32
-					<div class="signin_password">
33
-						<i class="signin_icons"></i>
34
-						<input class="form-control" type="text" onfocus="this.type='password'" placeholder="请输入密码" id="password" autocomplete="new-password">
35
-					</div>
36
-					<div class="alert alert-danger" id="login_tips" role="alert">
37
-						<span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
38
-						<span class="sr-only">Error:</span>
39
-						<span id="login_msg"></span>
40
-					</div>
41
-					<button class="btns" type="button" disabled="disabled">登录</button>
42
-				</div>
43
-			</div>
44
-		</div>
45
-
46
-		<script src="Script/Common/huayi.config.js"></script>
47
-		<script language="javascript" type="text/javascript" src="./js/jquery.min.js?v=2.1.4"></script>
48
-		<script language="javascript" type="text/javascript" src="./js/jquery.cookie.js"></script>
49
-		<script language="javascript" type="text/javascript" src="./js/layer/layer.js"></script>
50
-		<script src="./Script/Common/regexs.js"></script>
51
-		<script>
52
-			$(function() {
53
-				$('#signin').find("input[class='form-control']").focus(function() {
54
-					$(this).parent().addClass('active').siblings().removeClass('active')
55
-				});
56
-				$('#signin').find("input[class='form-control']").blur(function() {
57
-					$(this).parent().removeClass('active').siblings().removeClass('active')
58
-				});
59
-
60
-				/*输入框绑定验证*/
61
-				$('#signin').find("input[class='form-control']").on('focus input propertychange', valideInput);
62
-				$('#user').trigger('propertychange');
63
-				$('#user').trigger('focus');
64
-				$('#user').trigger('input');
65
-			});
66
-
67
-			//enter 登录
68
-			function enterHanlde(event) {
69
-				if(event.keyCode == "13") {
70
-					if(!$('.layui-layer-btn').length){
71
-						$('.btns:not(:disabled)').trigger("click");
72
-					}else{
73
-						$('.layui-layer-btn a').trigger('click');
74
-					}
75
-				}
76
-			}
77
-
78
-			/*点击提交*/
79
-			function login() {
80
-				$.ajax({
81
-					type: "post",
82
-					url: huayi.config.callcenter_url + "/Login/login",
83
-					dataType: 'json',
84
-					async: true,
85
-					beforeSend: function() { //触发ajax请求开始时执行
86
-						$('.btns').attr("disabled", true);
87
-						$('.btns').text('登录中...');
88
-						$(document).off('click', '.btns', login);
89
-						$(document).off('keypress', enterHanlde);
90
-						loadIndex = layer.load();
91
-					},
92
-					data: {
93
-						username: $("#user").val(),
94
-						extensionphone: $('#extensionNumber').val(),
95
-						password: $("#password").val()
96
-					},
97
-					success: function(data) {
98
-						layer.close(loadIndex);
99
-						/*验证请求*/
100
-						if(data.state == "success") {
101
-							$.cookie("token", data.data.token, {
102
-								expires: 7
103
-							});
104
-							$.cookie("extno", $('#extensionNumber').val(), {
105
-								expires: 7
106
-							});
107
-							window.location.href = "index.html";
108
-						} else {
109
-//							$("#user").val('');
110
-							$("#password").val('');
111
-//							$("#extensionNumber").val('');
112
-//							$("#user").parent().removeClass('has-success has-feedback');
113
-//							$("#user").parent().removeClass('has-error has-feedback');
114
-//							$("#user").parent().find('.glyphicon').remove();
115
-//							$("#extensionNumber").parent().removeClass('has-success has-feedback');
116
-//							$("#extensionNumber").parent().removeClass('has-error has-feedback');
117
-//							$("#extensionNumber").parent().find('.glyphicon').remove();
118
-							$("#password").parent().removeClass('has-success has-feedback');
119
-							$("#password").parent().removeClass('has-error has-feedback');
120
-							$("#password").parent().find('.glyphicon').remove();
121
-							$('.btns').text('登录');
122
-							$(document).off('keypress', enterHanlde);
123
-							layer.alert(data.message, {
124
-								icon: 2,
125
-								closeBtn: 0,
126
-								btn: ['确定'], //按钮
127
-							}, function(index) {
128
-								parent.$('.btns').attr("disabled", true);
129
-								parent.$(document).off('click', '.btns', login);
130
-								parent.$(document).off('keypress', enterHanlde);
131
-								parent.layer.close(index);
132
-								parent.$('#user').trigger('focus');
133
-							});
134
-						}
135
-					},
136
-
137
-					error: function(textStatus) {
138
-						layer.close(loadIndex);
139
-						layer.confirm('网络繁忙,请稍后再试...', {
140
-							closeBtn: 0,
141
-							btn: ['确定'] //按钮
142
-						});
143
-						$('.btns').text('登录');
144
-						$('.btns').attr("disabled", false);
145
-						$(document).off('click', '.btns', login);
146
-						$(document).on('click', '.btns', login);
147
-						$(document).off('keypress', enterHanlde);
148
-						$(document).on('keypress', enterHanlde);
149
-					},
150
-					complete: function(XMLHttpRequest, textStatus) {
151
-						layer.close(loadIndex);
152
-						if(textStatus == 'timeout') {
153
-							var xmlhttp = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
154
-							xmlhttp.abort();
155
-							layer.confirm('网络超时,请稍后再试...', {
156
-								closeBtn: 0,
157
-								btn: ['确定'] //按钮
158
-							});    
159
-						}
160
-						$('.btns').text('登录');
161
-						$('.btns').attr("disabled", false);
162
-						$(document).off('click', '.btns', login);
163
-						$(document).on('click', '.btns', login);
164
-						$(document).off('keypress', enterHanlde);
165
-						$(document).on('keypress', enterHanlde);
166
-					},
167
-
168
-				});
169
-
170
-			}
171
-
172
-			//验证
173
-			function valideInput() {
174
-				var _that = $(this);
175
-				var ele = $(this).attr('id');
176
-				//				console.log(ele);
177
-				if(ele === 'user') {
178
-					valideMethods(_that, regexs.userReg, '4-20个字符只能是字母、下划线、数字');
179
-				} else if(ele === 'extensionNumber') {
180
-					valideMethods(_that, regexs.num, '只能输入数字');
181
-				} else if(ele === 'password') {
182
-					valideMethods(_that, regexs.passwordReg, '6-32个字符只能是字母、下划线、数字');
183
-				}
184
-				if(regexs.userReg.test($.trim($('#user').val())) && regexs.passwordReg.test($.trim($("#password").val()))) {
185
-					if(regexs.nums.test($.trim($('#extensionNumber').val()))) {
186
-						$('.btns').attr("disabled", false);
187
-						$(document).off('click', '.btns', login);
188
-						$(document).on('click', '.btns', login);
189
-						$(document).off('keypress', enterHanlde);
190
-						$(document).on('keypress', enterHanlde);
191
-					} else {
192
-						$('.btns').attr("disabled", true);
193
-						$(document).off('click', '.btns', login);
194
-						$(document).off('keypress', enterHanlde);
195
-					}
196
-				}
197
-			}
198
-			/**
199
-			 * 验证方法
200
-			 * _this :传递的this
201
-			 * regRlues: 验证的规则
202
-			 * msg: 提示信息
203
-			 * */
204
-			function valideMethods(_this, regRlues, msg) {
205
-				$('#login_tips').hide();
206
-				$('#login_msg').text('');
207
-				if(!regRlues.test($.trim(_this.val()))) {
208
-					_this.parent().removeClass('has-success has-feedback').addClass('has-error has-feedback');
209
-					_this.parent().find('.glyphicon').remove();
210
-					$('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
211
-					$('#login_tips').show();
212
-					$('#login_msg').text(msg);
213
-				} else {
214
-					_this.parent().removeClass('has-error has-feedback').addClass('has-success has-feedback');
215
-					_this.parent().find('.glyphicon').remove();
216
-					$('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true"></span>').appendTo(_this.parent());
217
-				}
218
-			}
219
-		</script>
220
-	</body>
221
-
222
-</html>