From 649cab0a8fa2a97012acf9c941c4a0b0157cbdfc Mon Sep 17 00:00:00 2001
From: hdw <496960745@qq.com>
Date: 星期二, 06 十一月 2018 16:07:09 +0800
Subject: [PATCH] 添加显示信号强度的图标

---
 gx_tieta/WebRoot/control.jsp                    |   88 +++++++++++++++++++++++++++++
 gx_tieta/WebRoot/js/elecircle.content.js        |   13 ++++
 gx_tieta/WebRoot/pages/js/common.js             |    3 
 gx_tieta/WebRoot/image/eleCircle/signalGood.gif |    0 
 gx_tieta/WebRoot/js/elecircle.js                |   25 +++++++
 gx_tieta/WebRoot/image/eleCircle/signalBad.gif  |    0 
 6 files changed, 124 insertions(+), 5 deletions(-)

diff --git a/gx_tieta/WebRoot/control.jsp b/gx_tieta/WebRoot/control.jsp
index 3a9295e..8952efb 100644
--- a/gx_tieta/WebRoot/control.jsp
+++ b/gx_tieta/WebRoot/control.jsp
@@ -247,6 +247,11 @@
 									<span class="whyc-btn-icon fa fa-gear"></span>
 									<span class="whyc-btn-txt">绯荤粺鍙傛暟</span>
 								</a>
+								<br>
+								<a href="javascript:void(0);" id="signalBtn" class="whyc-btn whyc-btn-disabled" id="specialGraphExport">
+									<span class="whyc-btn-icon fa fa-signal"></span>
+									<span class="whyc-btn-txt">淇″彿璐ㄩ噺</span>
+								</a>
 					        </div>
 						</div>
 					</div>
@@ -4328,7 +4333,7 @@
 					// 璐熻浇鐢垫祦
 					var loadCurr = batt.Load_curr+'A';
 					changeEleCircleOpt(eleCircle, 'loaderCurr', {name:'鏈�澶ц礋杞界數娴侊細'+loadCurr});
-					
+					changeEleCircleOpt(eleCircle, 'signal', {isShow:false});
 					// 鏈�澶ф牳瀹圭數娴�
 					var disCurrMax = batt.DisCurrMax+'A';
 					changeEleCircleOpt(eleCircle, 'disCurrMax', {name:'鏈�澶ф牳瀹圭數娴侊細'+disCurrMax});
@@ -4718,6 +4723,64 @@
 				
 				return rs;
 			}
+			
+			// 鏌ヨ淇″彿璐ㄩ噺妯″潡
+			var gprs = GLOBAL.CMD.gprs;
+			var signalSearch = {
+				num: gprs.param,
+				AT_cmd: gprs.signal,
+				dev_id: ''
+			};
+			// 鐐瑰嚮鏌ョ湅褰撳墠淇″彿鐨勮川閲�
+			$('#signalBtn').click(function() {
+				var batt = getBatt();
+				signalSearch.dev_id = batt.FBSDeviceId;
+				// 璇锋眰鍚庡彴鑾峰彇淇″彿鐨勮川閲�
+				searchStationSignal(signalSearch,function(data){
+					// 鍩虹閰嶇疆
+					var signalOpts = {
+						img: signalBad,
+						isShow: true,
+						startX: 10,
+						startY: 30,
+						name: ''
+					};
+					var signalInfo = formatSignal(""); 
+					if(data.code == 1) {
+						var csq = data.data.ack_inf;
+						signalInfo = formatSignal(csq);
+					}
+					// 鏄剧ず鍥剧墖绫诲瀷
+					if(signalInfo.img) {
+						signalOpts.img = signalGood;
+					}
+					
+					// 鍥剧墖鎻忚堪
+					signalOpts.name = '淇″彿寮哄害锛�'+signalInfo.signal;
+					changeEleCircleOpt(eleCircle, 'signal', signalOpts);
+				});
+				
+			});
+			
+			// 瑙f瀽淇″彿璐ㄩ噺缁撴灉
+			function formatSignal(signal) {
+				var rs = {
+					signal: '鏈煡',
+					bitError: '鏈煡',
+					img: 0
+				};
+				var ptn = new RegExp(".*:\\s(\\d{2}),(\\d{2})");
+				var testCsq = ptn.test(signal);
+				if(testCsq) {
+					rs.signal = RegExp.$1;
+					rs.bitError = RegExp.$2;
+					if(rs.signal>20) {
+						rs.img = 1;
+					}
+				}
+				
+				return rs;
+			}
 		});
 		
 		// 鏈哄巻鍗℃ā鍧�
@@ -4737,6 +4800,29 @@
 				tabContents.eq(index).addClass('con-show');
 			});
 		});
+		
+		var gprs = GLOBAL.CMD.gprs;
+		
+		var temp = {
+			num: gprs.param,
+			AT_cmd: gprs.signal,
+			dev_id:910000577
+		};
+		
+		
+		
+		/* searchStationSignal(temp,function(data){
+			changeEleCircleOpt(eleCircle, 'signal', {
+				img: signalBad,
+				isShow: true,
+			});
+			var csq = data.data.ack_inf;
+			var ptn = new RegExp(".*:\\s(\\d{2}),(\\d{2})");
+			var testCsq = ptn.test(csq);
+			console.log(RegExp.$1);
+			console.log(RegExp.$2);
+			console.log(data.data.ack_inf);
+		}); */
 	</script>
 	<script type="text/javascript" src="js/Title.js"></script>
 	<script type="text/javascript" src="js/control.js"></script>
diff --git a/gx_tieta/WebRoot/image/eleCircle/signalBad.gif b/gx_tieta/WebRoot/image/eleCircle/signalBad.gif
new file mode 100644
index 0000000..f9c0ff2
--- /dev/null
+++ b/gx_tieta/WebRoot/image/eleCircle/signalBad.gif
Binary files differ
diff --git a/gx_tieta/WebRoot/image/eleCircle/signalGood.gif b/gx_tieta/WebRoot/image/eleCircle/signalGood.gif
new file mode 100644
index 0000000..7d7a74c
--- /dev/null
+++ b/gx_tieta/WebRoot/image/eleCircle/signalGood.gif
Binary files differ
diff --git a/gx_tieta/WebRoot/js/elecircle.content.js b/gx_tieta/WebRoot/js/elecircle.content.js
index 2d64550..6ae94b9 100644
--- a/gx_tieta/WebRoot/js/elecircle.content.js
+++ b/gx_tieta/WebRoot/js/elecircle.content.js
@@ -1,5 +1,18 @@
 var eleCircle = new EleCircle('eleCircle', {});
+var signalGood = new Image();
+signalGood.src="image/eleCircle/signalGood.gif";
+var signalBad = new Image();
+signalBad.src="image/eleCircle/signalBad.gif";
 $(function() {
+	eleCircle.drawImg({
+		startX: 10,
+		startY: 30,
+		width: 30,
+		height: 30,
+		isShow:false,
+		id: 'signal'
+	});
+	
 	// 鏈�涓婃柟鐨勬í绾�
 	eleCircle.drawLine({
 		startX: 120,
diff --git a/gx_tieta/WebRoot/js/elecircle.js b/gx_tieta/WebRoot/js/elecircle.js
index c070f09..bf440a4 100644
--- a/gx_tieta/WebRoot/js/elecircle.js
+++ b/gx_tieta/WebRoot/js/elecircle.js
@@ -1133,6 +1133,11 @@
 		startY: 0,
 		width: 30,
 		height: 30,
+		lineWidth: 4,
+		fontSize: 14,
+		fontWeight: '',
+		strokeStyle: '#000',
+		fillStyle: '#000',
 		isShow: true,
 		name:'',
 		id: '',
@@ -1140,8 +1145,24 @@
 	
 	var opts = $.extend({}, defaluts, options || {});
 	
-	if(opts.img != '')
-	this.context.drawImage(opts.img, opts.startX-30, opts.startY-3, 65, 105);
+	if(opts.img != '' && opts.isShow) {
+		this.context.drawImage(opts.img, opts.startX, opts.startY, opts.width, opts.height);
+		
+		this.context.lineWidth = opts.lineWidth;
+		this.context.strokeStyle = opts.strokeStyle;
+		this.context.fillStyle = opts.fillStyle;
+		this.context.font = opts.fontSize+'px Arial';
+		this.context.fillText(opts.name, opts.startX+30, opts.startY+25);
+	}
+	
+	// 瀛樺偍鍐呭
+	var txtInfor = {
+		options: opts,
+		type:'drawImg',
+	};
+	this.opts.push(txtInfor);
+	
+	
 };
 
 // 閲嶆柊缁樺埗鍥�
diff --git a/gx_tieta/WebRoot/pages/js/common.js b/gx_tieta/WebRoot/pages/js/common.js
index 23d1aca..77d84de 100644
--- a/gx_tieta/WebRoot/pages/js/common.js
+++ b/gx_tieta/WebRoot/pages/js/common.js
@@ -557,13 +557,12 @@
 function searchStationSignal(param,callback){
 	$.ajax({ 	
         type:"post", 								
-        url: "Bts_gprs_stateAction_action_update",						
+        url: "Bts_gprs_stateAction_action_update?"+(new Date().getTime()),						
         async:true,				
         dataType:'json',
         data:'json='+JSON.stringify(param),		
         success: function(data){ 
 			var model = eval('('+data.result+')');
-			console.info(model);
 			if(callback && typeof callback == 'function'){
 				callback(model);
 			}

--
Gitblit v1.9.1