param.put("imageID", 0);
27 27
			param.put("cancelable", true);
28
			WadeMobile.sweetAlert(param);
28
			IpuMobile.sweetAlert(param);
29 29
		});
30 30
		$("#error_text_test").click(function() {
31 31
			param.put("title", "错误!");
@ -33,7 +33,7 @@ require([ "wadeMobile", "mobile", "jcl"], function(WadeMobile, Mobile, $) {
33 33
			param.put("alertType", 1);
34 34
			param.put("cancelable", true);
35 35
			param.put("imageID", 0);
36
			WadeMobile.sweetAlert(param);
36
			IpuMobile.sweetAlert(param);
37 37
		});
38 38
		$("#success_text_test").click(function() {
39 39
			param.put("title", "成功!");
@ -41,7 +41,7 @@ require([ "wadeMobile", "mobile", "jcl"], function(WadeMobile, Mobile, $) {
41 41
			param.put("alertType", 2);
42 42
			param.put("imageID", 0);
43 43
			param.put("cancelable", true);
44
			WadeMobile.sweetAlert(param);
44
			IpuMobile.sweetAlert(param);
45 45
		});
46 46
47 47
		$("#warning_confirm_test").click(function() {
@ -54,7 +54,7 @@ require([ "wadeMobile", "mobile", "jcl"], function(WadeMobile, Mobile, $) {
54 54
			param.put("confirmEvent", "confirmEvent");
55 55
			param.put("cancelEvent", null);
56 56
			param.put("isCancel", false);
57
			WadeMobile.sweetConfirm(param);
57
			IpuMobile.sweetConfirm(param);
58 58
		});
59 59
		$("#warning_cancel_test").click(function() {
60 60
			param.put("title", "确认?");
@ -65,7 +65,7 @@ require([ "wadeMobile", "mobile", "jcl"], function(WadeMobile, Mobile, $) {
65 65
			param.put("confirmEvent", "confirmEvent");
66 66
			param.put("cancelEvent", "cancelEvent");
67 67
			param.put("isCancel", true);
68
			WadeMobile.sweetConfirm(param);
68
			IpuMobile.sweetConfirm(param);
69 69
		});
70 70
		$("#custom_img_test").click(function() {
71 71
			param.put("title", "图片");
@ -73,7 +73,7 @@ require([ "wadeMobile", "mobile", "jcl"], function(WadeMobile, Mobile, $) {
73 73
			param.put("cancelable", true);
74 74
			param.put("alertType", 4);
75 75
			param.put("imageID", 0x7f020002);
76
			WadeMobile.sweetAlert(param);
76
			IpuMobile.sweetAlert(param);
77 77
		});
78 78
79 79
	});

+ 13 - 13
show-server/src/main/webapp/biz/js/plugins/ui/ui.js

@ -1,52 +1,52 @@
1
require(["wadeMobile","mobile","jcl"], function(WadeMobile,Mobile,$) {
1
require(["ipuMobile","mobile","jcl"], function(IpuMobile,Mobile,$) {
2 2
	$(function(){
3 3
		$("#progressBar").click(function() {
4
			WadeMobile.loadingStart('加载中……', '进度条');
4
			IpuMobile.loadingStart('加载中……', '进度条');
5 5
			// 关闭进度条
6 6
			setTimeout(function(){
7
				WadeMobile.loadingStop();
7
				IpuMobile.loadingStop();
8 8
			}, 2000);
9 9
		});
10 10
		
11 11
		$("#progressBar2").click(function() {
12
			WadeMobile.loadingStart('加载中……', '进度条','true');
12
			IpuMobile.loadingStart('加载中……', '进度条','true');
13 13
		});
14 14
		
15 15
		$("#toastLong").click(function() {
16 16
			// 1:此提示信息会在较长时间后渐渐隐去
17
			WadeMobile.tip('我是一条提示信息!', 1);
17
			IpuMobile.tip('我是一条提示信息!', 1);
18 18
		});
19 19
		
20 20
		$("#toastShort").click(function() {
21 21
			// 0:此提示信息会在较短时间后渐渐隐去;
22
			WadeMobile.tip('我是一条提示信息!', 0);
22
			IpuMobile.tip('我是一条提示信息!', 0);
23 23
		});
24 24
		
25 25
		//年月日:date为空,默认选中系统当前时间;format为空,默认yyyy-MM-dd
26 26
		$("#date1").click(function() {
27
			WadeMobile.getDate(function(time) {
27
			IpuMobile.getDate(function(time) {
28 28
				$("#dateContent1").html(time);
29 29
			});
30 30
		});
31 31
		
32 32
		//年月
33 33
		$("#date2").click(function() {
34
			WadeMobile.getDate(function(time) {
34
			IpuMobile.getDate(function(time) {
35 35
				$("#dateContent2").html(time);
36 36
			}, '2012年12月', 'yyyy年MM月');
37 37
		});
38 38
		
39 39
		//时分
40 40
		$("#date3").click(function() {
41
			WadeMobile.getDate(function(time) {
41
			IpuMobile.getDate(function(time) {
42 42
				$("#dateContent3").html(time);
43 43
			}, '19:12', 'HH:mm');
44 44
		});
45 45
46 46
		// 年月日时分
47 47
		$("#date4").click(function() {
48
			WadeMobile.getDate(function(date) {
49
				WadeMobile.getDate(function(time) {
48
			IpuMobile.getDate(function(date) {
49
				IpuMobile.getDate(function(time) {
50 50
					date += " "+time;
51 51
					$("#dateContent4").html(date);
52 52
				}, '19:12', 'HH:mm');
@ -81,7 +81,7 @@ require(["wadeMobile","mobile","jcl"], function(WadeMobile,Mobile,$) {
81 81
		});
82 82
		
83 83
		$("#getContactsView").click(function(){
84
			if(WadeMobile.isIOS()){
84
			if(IpuMobile.isIOS()){
85 85
	            ipuUI.toast("该功能iOS版本暂未实现");
86 86
	            return;
87 87
	        }
@ -172,7 +172,7 @@ require(["wadeMobile","mobile","jcl"], function(WadeMobile,Mobile,$) {
172 172
			setting.put("groupViewbgColor", "#EAEAEA"); //每一组的颜色的背景色
173 173
			setting.put("dividerColor", "#A0A0A0");  // 每条记录之间的分隔线的颜色
174 174
			
175
			WadeMobile.getContactsView(function(result){
175
			IpuMobile.getContactsView(function(result){
176 176
				var data = new $.DataMap(result);
177 177
				alert("详情是:ID:" + data.get("ID") + ", VALUE:" + data.get("VALUE"));
178 178
				}, data.toString(), setting.toString()

+ 10 - 10
show-server/src/main/webapp/biz/js/plugins/uploaddownload.js

@ -1,4 +1,4 @@
1
require(["wadeMobile", "jcl","iScroll", "jquery", "ipuUI"], function(WadeMobile,$,iScroll, jquery, ipuUI) {
1
require(["ipuMobile", "jcl","iScroll", "jquery", "ipuUI"], function(IpuMobile,$,iScroll, jquery, ipuUI) {
2 2
	jquery.sizeReady(function(){
3 3
		var iscroll = new iScroll("scroll-container");
4 4
		//服务器存储文件路径:webapp/ picture/my.png
@ -9,7 +9,7 @@ require(["wadeMobile", "jcl","iScroll", "jquery", "ipuUI"], function(WadeMobile,
9 9
		 */
10 10
		$("#upload").click(function() {
11 11
			//① 选择图片
12
			WadeMobile.getPicture(function(filePath){
12
			IpuMobile.getPicture(function(filePath){
13 13
				$("#uploadFilePath").html(filePath);
14 14
15 15
				//②上传
@ -22,9 +22,9 @@ require(["wadeMobile", "jcl","iScroll", "jquery", "ipuUI"], function(WadeMobile,
22 22
				var params = $.DataMap();
23 23
				params.put("FILE_PATH",picPath);
24 24
				
25
				WadeMobile.loadingStart("正在上传...");
26
				WadeMobile.uploadWithServlet(uploadFile, "UploadDownloadBean.upload", params.toString(), function(result){
27
					WadeMobile.loadingStop();
25
				IpuMobile.loadingStart("正在上传...");
26
				IpuMobile.uploadWithServlet(uploadFile, "UploadDownloadBean.upload", params.toString(), function(result){
27
					IpuMobile.loadingStop();
28 28
					
29 29
					var data = new $.DataMap(result);
30 30
					$("#remoteFilePath").html(data.get("FILE_PATH"));
@ -42,9 +42,9 @@ require(["wadeMobile", "jcl","iScroll", "jquery", "ipuUI"], function(WadeMobile,
42 42
			var params = new $.DataMap();
43 43
			params.put("FILE_PATH", picPath); //下载文件的路径
44 44
			
45
			WadeMobile.loadingStart("正在下载...");
46
			WadeMobile.downloadWithServlet(picPath, "UploadDownloadBean.download", params.toString(), function(savePath){
47
				WadeMobile.loadingStop();
45
			IpuMobile.loadingStart("正在下载...");
46
			IpuMobile.downloadWithServlet(picPath, "UploadDownloadBean.download", params.toString(), function(savePath){
47
				IpuMobile.loadingStop();
48 48
				
49 49
//				alert("下载成功:"+savePath);
50 50
				$("#downloadFilePath").html(savePath);
@ -58,8 +58,8 @@ require(["wadeMobile", "jcl","iScroll", "jquery", "ipuUI"], function(WadeMobile,
58 58
					iscroll.refresh();
59 59
				}, 1000);
60 60
			}, function(error){
61
				WadeMobile.loadingStop();
62
				WadeMobile.alert("下载错误:"+error);
61
				IpuMobile.loadingStop();
62
				IpuMobile.alert("下载错误:"+error);
63 63
			});
64 64
		});
65 65
	})

+ 58 - 5
show-server/src/main/webapp/biz/js/plugins/video.js

@ -1,23 +1,76 @@
1
require(["wadeMobile", "jquery"], function(WadeMobile, $) {
1
require(["ipuMobile", "jquery", "jcl"], function(IpuMobile, $, Wade) {
2 2
	$(function(){
3 3
		var videoPath;
4 4
		// 视频录制
5 5
		$("#record").click(function(){
6
			WadeMobile.recordVideo(function(path){
6
			IpuMobile.recordVideo(function(path){
7 7
				// path:返回视频录制文件存放的路径
8 8
				if(path){
9 9
					videoPath = path;
10
					WadeMobile.tip(videoPath);
10
					IpuMobile.tip(videoPath);
11 11
					$("#hiddenContent").show();
12 12
				}else{
13
					WadeMobile.tip("别气馁,再录一次吧!");
13
					IpuMobile.tip("别气馁,再录一次吧!");
14
				}
15
			});
16
		});
17
		
18
		/*
19
		* IpuMobile.ipuRecordVideo(params, callback)
20
		* params:dataMap封装参数。
21
		*		video_width:分辨率宽,默认值600
22
		*		video_height:分辨率高,默认值800
23
		*		camera_id:摄像头Id, 0为后置摄像头,1为前置摄像头。默认使用后置
24
		*		bitrate:比特率, 默认1000000bps
25
		*/
26
		$("#ipu_record").click(function(){
27
			var params;
28
			IpuMobile.ipuRecordVideo(params, function(path){
29
				// path:返回视频录制文件存放的路径
30
				if(path){
31
					videoPath = path;
32
					IpuMobile.tip(videoPath);
33
					$("#hiddenContent").show();
34
				}else{
35
					IpuMobile.tip("别气馁,再录一次吧!");
36
				}
37
			});
38
		});
39
		
40
		/*
41
		* IpuMobile.recordWithWatermark(path,params,callback)
42
		* path: 水印图片路径
43
		* params:dataMap封装参数。
44
		*		video_width:分辨率宽,默认值600
45
		*		video_height:分辨率高,默认值800
46
		*		camera_id:摄像头Id, 0为后置摄像头,1为前置摄像头。默认使用后置
47
		*		bitrate:比特率, 默认1000000bps
48
		*		img_x: 水印图片在视频中的x坐标,以左上角为原点
49
		*		img_y:水印图片在视频中的y坐标,以左上角为原点
50
		*		img_width:水印图片在视频中的宽度,默认100
51
		*		img_height:水印图片在视频中的高度,默认100
52
		*/
53
		$("#water_record").click(function(){
54
			IpuMobile.getPicture(function(path) {
55
				if(path){
56
					var params = new Wade.DataMap();
57
					params.put("camera_id", 0);
58
					IpuMobile.recordWithWatermark(path, params.toString(), function(video){
59
						if(video){
60
							videoPath = video;
61
							IpuMobile.tip(videoPath);
62
							$("#hiddenContent").show();
63
						}else{
64
							IpuMobile.tip("别气馁,再录一次吧!");
65
						}
66
					});
14 67
				}
15 68
			});
16 69
		});
17 70
		
18 71
		// 播放视频
19 72
		$("#play").click(function(){
20
			WadeMobile.playVideo(videoPath,function() {
73
			IpuMobile.playVideo(videoPath,function() {
21 74
				Mobile.tip("hi");
22 75
			});
23 76
		});

+ 3 - 3
show-server/src/main/webapp/biz/js/plugins/videocompress.js

@ -1,4 +1,4 @@
1
require([ "wadeMobile", "jquery", "iScroll", "ipuUI"], function(WadeMobile, $, iScroll, ipuUI) {
1
require([ "ipuMobile", "jquery", "iScroll", "ipuUI"], function(IpuMobile, $, iScroll, ipuUI) {
2 2
	$.sizeReady(function() {
3 3
		var iscroll = new iScroll("scroll-container");
4 4
@ -6,7 +6,7 @@ require([ "wadeMobile", "jquery", "iScroll", "ipuUI"], function(WadeMobile, $, i
6 6
		 * 选择视频
7 7
		 */
8 8
		$("#getVideoPath").click(function() {
9
			WadeMobile.getVideoPath(function(videoPath) {
9
			IpuMobile.getVideoPath(function(videoPath) {
10 10
				$("#videoPath").html(videoPath);
11 11
			});
12 12
		});
@ -14,7 +14,7 @@ require([ "wadeMobile", "jquery", "iScroll", "ipuUI"], function(WadeMobile, $, i
14 14
		// 视频压缩
15 15
		$("#videoCompressor").click(function() {
16 16
			var videoPath = $("#videoPath").html();
17
			WadeMobile.videoCompressor(videoPath, 300000, 640, 360);
17
			IpuMobile.videoCompressor(videoPath, 300000, 640, 360);
18 18
		});
19 19
	});
20 20

+ 6 - 6
show-server/src/main/webapp/biz/js/plugins/yunbaPush.js

@ -1,4 +1,4 @@
1
require(["mobile","wadeMobile","common","handlebars","jquery","iScroll", "ipuUI"],function(Mobile,WadeMobile,Common,Handlebars,$,iScroll,ipuUI){	
1
require(["mobile","ipuMobile","common","handlebars","jquery","iScroll", "ipuUI"],function(Mobile,IpuMobile,Common,Handlebars,$,iScroll,ipuUI){	
2 2
	$.sizeReady(function(){
3 3
		var iscroll;
4 4
		
@ -11,7 +11,7 @@ require(["mobile","wadeMobile","common","handlebars","jquery","iScroll", "ipuUI"
11 11
				return;
12 12
			}
13 13
			//订阅主题/频道
14
			WadeMobile.registerForPushWithYunba(alias, function(obj){
14
			IpuMobile.registerForPushWithYunba(alias, function(obj){
15 15
				if(obj != 'SUC'){
16 16
					alert('频道订阅失败!');
17 17
					return;
@ -27,7 +27,7 @@ require(["mobile","wadeMobile","common","handlebars","jquery","iScroll", "ipuUI"
27 27
		// 注销
28 28
		$("#logout").click(function() {
29 29
			//退订主题/频道
30
			WadeMobile.unregisterForPushWithYunba();
30
			IpuMobile.unregisterForPushWithYunba();
31 31
			$("#registerWrap").show();
32 32
			$("#main").hide();
33 33
		});
@ -40,7 +40,7 @@ require(["mobile","wadeMobile","common","handlebars","jquery","iScroll", "ipuUI"
40 40
			var users = "ALL";
41 41
			
42 42
			//发送消息
43
			WadeMobile.sendTextWithYunba(users, sendInfo, function(obj){
43
			IpuMobile.sendTextWithYunba(users, sendInfo, function(obj){
44 44
				console.log('发送结果:' + obj);
45 45
				if(obj != 'SUC'){
46 46
					Mobile.alert('消息发送失败!');
@ -71,8 +71,8 @@ require(["mobile","wadeMobile","common","handlebars","jquery","iScroll", "ipuUI"
71 71
		}
72 72
		
73 73
		//设置回调函数
74
		if(WadeMobile.isApp()){
75
			WadeMobile.setCallbackForPushWithYunba("receiveMessage");
74
		if(IpuMobile.isApp()){
75
			IpuMobile.setCallbackForPushWithYunba("receiveMessage");
76 76
		}
77 77
	});
78 78
	

+ 27 - 10
show-server/src/main/webapp/ipu/frame/mobile/expand-mobile.js

@ -343,6 +343,8 @@ define(["require","jcl"],function(require,Wade) {
343 343
				execute("shareTextQQFriend",[content]);
344 344
			},shareTextWeChatFriend:function(content){
345 345
				execute("shareTextWeChatFriend",[content]);
346
			},shareTextWeChatTimeline:function(content){
347
				execute("shareTextWeChatTimeline",[content]);
346 348
			},shareFileQQFriend:function(type,content){
347 349
				execute("shareFileQQFriend",[type,content]);
348 350
			},shareFileWeChatFriend:function(type,content){
@ -402,7 +404,7 @@ define(["require","jcl"],function(require,Wade) {
402 404
			},closePathMenu:function(){
403 405
				execute("closePathMenu",[]);
404 406
			},clearBackStack:function(){
405
                if(WadeMobile.isAndroid()){
407
                if(IpuMobile.isAndroid()){
406 408
                    execute("clearBackStack",[]);
407 409
                }
408 410
            },loadUrl:function(param){
@ -419,7 +421,13 @@ define(["require","jcl"],function(require,Wade) {
419 421
				execute("photoBrowse",[photoListMap.toString()]);
420 422
			},recordVideo:function(callback,compressRatio,timeLimit){
421 423
				storageCallback("recordVideo",callback);
422
				execute("recordVideo",[compressRatio,timeLimit]);	
424
				execute("recordVideo",[compressRatio,timeLimit]);
425
			},ipuRecordVideo:function(params,callback){
426
				storageCallback("ipuRecordVideo",callback);
427
				execute("ipuRecordVideo",[params]);
428
			},recordWithWatermark:function(img_path,params,callback){
429
				storageCallback("recordWithWatermark",callback);
430
				execute("recordWithWatermark",[img_path, params]);
423 431
			},playVideo:function(videoPath){
424 432
				execute("playVideo",[videoPath]);	
425 433
			},compressorVideo:function(videoPath,callback){
@ -493,24 +501,33 @@ define(["require","jcl"],function(require,Wade) {
493 501
				execute("faceCheck",[appId,picId],err);
494 502
			},captureScreen:function (isOpen) {
495 503
				execute("captureScreen",[isOpen]);
496
            }
504
			},sendDefine:function(logstr, callback, err){  // 日志插件
505
				storageCallback("sendDefine",callback);
506
				execute("sendDefine",[logstr],err);
507
			},executeScreenCapture:function(callback){
508
				storageCallback("executeScreenCapture",callback);
509
				execute("executeScreenCapture",[]);
510
			},addWaterMarkForImage:function(img_path,mark_path,l,t,r,b,callback){
511
				storageCallback("addWaterMarkForImage",callback);
512
				execute("addWaterMarkForImage",[img_path,mark_path,l,t,r,b]);
513
			}
497 514
		};
498 515
	})();
499 516
	
500
	var WadeMobile;
517
	var IpuMobile;
501 518
	function execute(action, args, error, success) {
502 519
		/*循环依赖,懒加载*/
503
		if(!WadeMobile){
504
			WadeMobile = require("wadeMobile")
520
		if(!IpuMobile){
521
			IpuMobile = require("ipuMobile")
505 522
		}
506
        return WadeMobile.execute(action, args, error, success)
523
        return IpuMobile.execute(action, args, error, success)
507 524
	}
508 525
	function storageCallback(action,callback) {
509 526
		/*循环依赖,懒加载*/
510
		if(!WadeMobile){
511
			WadeMobile = require("wadeMobile")
527
		if(!IpuMobile){
528
			IpuMobile = require("ipuMobile")
512 529
		}
513
		WadeMobile.callback.storageCallback(action,callback)
530
		IpuMobile.callback.storageCallback(action,callback)
514 531
	}
515 532
	
516 533
	return ExpandMobile;

+ 56 - 52
show-server/src/main/webapp/ipu/frame/mobile/wade-mobile.js

@ -32,7 +32,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
32 32
		window["TerminalType"] = deviceType;
33 33
	}
34 34
	var terminalType = window["TerminalType"];
35
	WadeMobile = (function(){
35
	var IpuMobile = (function(){
36 36
        return{
37 37
        	isAndroid:function(){
38 38
        		return terminalType=='a';
@ -43,7 +43,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
43 43
        	},isApp:function(){//判断是否是APP应用
44 44
				return !!terminalType;
45 45
        	},getSysInfo:function(callback,key,err){//TELNUMBER|IMEI|IMSI|SDKVERSION|OSVERSION|PLATFORM|SIMNUMBER
46
				WadeMobile.callback.storageCallback("getSysInfo",callback);
46
				IpuMobile.callback.storageCallback("getSysInfo",callback);
47 47
				execute("getSysInfo", [key],err);
48 48
			},close:function(confirm,err){
49 49
				if(typeof(confirm)!="boolean"){
@ -54,16 +54,16 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
54 54
				if(terminalType=="i"){
55 55
					requestUrl = encodeURIComponent(requestUrl);
56 56
				}
57
				WadeMobile.callback.storageCallback("httpRequest",callback);
57
				IpuMobile.callback.storageCallback("httpRequest",callback);
58 58
				execute("httpRequest", [requestUrl,encode,conTimeout,readTimeout],err);
59 59
			},dataRequest:function(callback,dataAction,param,encode,conTimeout,readTimeout,err,headers){
60
				WadeMobile.callback.storageCallback("dataRequest",callback);
60
				IpuMobile.callback.storageCallback("dataRequest",callback);
61 61
				execute("dataRequest", [dataAction,param,encode,conTimeout,readTimeout,headers],err);
62 62
			},dataRequestWithHost:function(callback,url,dataAction,param,encode,conTimeout,readTimeout,err,headers){
63
				WadeMobile.callback.storageCallback("dataRequestWithHost",callback);
63
				IpuMobile.callback.storageCallback("dataRequestWithHost",callback);
64 64
				execute("dataRequestWithHost", [url,dataAction,param,encode,conTimeout,readTimeout,headers],err);
65 65
			},openUrl:function(url, callback, title, buttons, styles, hideTopBar, err){
66
				WadeMobile.callback.storageCallback("openUrl", callback);
66
				IpuMobile.callback.storageCallback("openUrl", callback);
67 67
				execute("openUrl", [encodeURIComponent(url), title, buttons, styles, hideTopBar],err);
68 68
			},openPage:function(action,data,err){
69 69
				execute("openPage", [action,data],err);
@ -78,33 +78,35 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
78 78
			},backWithCallback:function(data,tag,err){
79 79
				execute("backWithCallback",[data,tag],err);
80 80
			},getPage:function(callback,action,param,err){
81
				WadeMobile.callback.storageCallback("getPage",callback);
81
				IpuMobile.callback.storageCallback("getPage",callback);
82 82
				execute("getPage", [action,param],err);
83 83
			},getTemplate:function(callback,action,context,err){
84
				WadeMobile.callback.storageCallback("getTemplate",callback);
84
				IpuMobile.callback.storageCallback("getTemplate",callback);
85 85
				execute("getTemplate", [action,context],err);
86 86
			},storageDataByThread:function(dataAction,param,waitoutTime,err){
87 87
				execute("storageDataByThread", [dataAction,param,waitoutTime],err);
88 88
			},openDialog:function(callback,pageAction,param,width,height,err){
89
				WadeMobile.callback.storageCallback("openDialog",callback);
89
				IpuMobile.callback.storageCallback("openDialog",callback);
90 90
				execute("openDialog", [pageAction,param,width,height],err);
91 91
			},closeDialog:function(result,state,err){
92 92
				execute("closeDialog", [result,state],err);
93 93
			},openWindow:function(callback,pageAction,param,err){
94
				WadeMobile.callback.storageCallback("openWindow",callback);
94
				IpuMobile.callback.storageCallback("openWindow",callback);
95 95
				execute("openWindow", [pageAction,param],err);
96 96
			},closeWindow:function(result,state,err){
97 97
				execute("closeWindow", [result,state],err);
98 98
			},openSlidingMenu:function(callback,action,param,width,height,leftMargin,topMargin,err){
99
				WadeMobile.callback.storageCallback("openSlidingMenu",callback);
99
				IpuMobile.callback.storageCallback("openSlidingMenu",callback);
100 100
				execute("openSlidingMenu", [action,param,width,height,leftMargin,topMargin],err);
101 101
			},closeSlidingMenu:function(result,state,err){
102 102
				execute("closeSlidingMenu", [result,state],err);
103 103
			}
104 104
		};
105 105
	})();
106
107
106 108
	//自定义的按钮点击事件
107
		WadeMobile.customEvents =(function()
109
		IpuMobile.customEvents =(function()
108 110
		{
109 111
			return {
110 112
				cancelEvent:function(){
@ -114,7 +116,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
114 116
					param.put("alertType",1);
115 117
					param.put("cancelable",true);
116 118
					param.put("imageID",0);
117
					WadeMobile.sweetAlert(param);
119
					IpuMobile.sweetAlert(param);
118 120
	        	},confirmEvent:function(){
119 121
					var param = Wade.DataMap();
120 122
	        		param.put("title","确认成功!");
@ -122,7 +124,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
122 124
					param.put("alertType",2);
123 125
					param.put("cancelable",true);
124 126
					param.put("imageID",0);
125
					WadeMobile.sweetAlert(param);
127
					IpuMobile.sweetAlert(param);
126 128
				},nextEvent:function(){
127 129
					var param = Wade.DataMap();
128 130
	        		param.put("title","加载成功!");
@ -130,7 +132,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
130 132
					param.put("alertType",2);
131 133
					param.put("cancelable",true);
132 134
					param.put("imageID",0);
133
					WadeMobile.sweetAlert(param);
135
					IpuMobile.sweetAlert(param);
134 136
				}
135 137
			};
136 138
		})();
@ -159,21 +161,23 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
159 161
			}
160 162
		}
161 163
	};
162
	
163
	WadeMobile.execute = execute;
164
165
	window.IpuMobile = window.WadeMobile = IpuMobile;
166
167
	IpuMobile.execute = execute;
164 168
	
165 169
	var androidExecute = function(action, args, error, success){
166
		//执行android方法时,带入到android底层的key值为,回调方法实际的key值 + 用于在top上索引本iframe的WadeMobile的唯一标识。
167
		//在android底层,如果发现回调函数的key值包含这个特殊的串。那么将解析这个key。并且取出加回调函数key的后半部分,作为在top上索引本iframe相对应的WadeMobile对象的唯一依据。
170
		//执行android方法时,带入到android底层的key值为,回调方法实际的key值 + 用于在top上索引本iframe的IpuMobile的唯一标识。
171
		//在android底层,如果发现回调函数的key值包含这个特殊的串。那么将解析这个key。并且取出加回调函数key的后半部分,作为在top上索引本iframe相对应的IpuMobile对象的唯一依据。
168 172
		var tmpKey = action+callbackId++;
169
		if(window._WadeMobileSet_Key_ != undefined){
170
			tmpKey += window._WadeMobileSet_Key_;
173
		if(window._IpuMobileSet_Key_ != undefined){
174
			tmpKey += window._IpuMobileSet_Key_;
171 175
		}
172 176
        var callbackKey = globalErrorKey = tmpKey;
173 177
        if (success || error) {
174 178
    		callbacks[callbackKey] = {success:success, error:error};
175 179
        }
176
        if(WadeMobile.debug){
180
        if(IpuMobile.debug){
177 181
        	//alert("准备调用"+action+" 参数:"+args);
178 182
        	console.log("action:"+action+" param:"+args);
179 183
        }
@ -186,7 +190,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
186 190
        if (success || error) {
187 191
            callbacks[callbackKey] = {success:success, error:error};
188 192
        }
189
        if(WadeMobile.debug){
193
        if(IpuMobile.debug){
190 194
            //alert("准备调用"+action+" 参数:"+args);
191 195
            console.log("action:"+action+" param:"+args);
192 196
        }
@ -217,7 +221,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
217 221
        if (success || error) {
218 222
    		callbacks[callbackKey] = {success:success, error:error};
219 223
        }
220
        if(WadeMobile.debug){
224
        if(IpuMobile.debug){
221 225
        	//alert("准备调用"+action+" 参数:"+args);
222 226
        	console.log("action:"+action+" param:"+args);
223 227
        }
@ -225,7 +229,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
225 229
      	globalErrorKey = null;
226 230
	};
227 231
	
228
	WadeMobile.callback = (function(){
232
	IpuMobile.callback = (function(){
229 233
		return{
230 234
			success:function(callbackKey, message) {
231 235
				if(typeof message == "undefined"){
@ -277,7 +281,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
277 281
				if (callbackItem) {
278 282
					data = data=="null"?null:data;
279 283
					if(data){
280
						if(WadeMobile.isIOS()){
284
						if(IpuMobile.isIOS()){
281 285
							/*IOS需要decode*/
282 286
							data = decodeURIComponent(data);
283 287
						}
@ -302,7 +306,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
302 306
	})();
303 307
	
304 308
	/**物理按键监听start**/
305
	WadeMobile.setKeyListener = function(key, callback){
309
	IpuMobile.setKeyListener = function(key, callback){
306 310
		if(key=="back"){
307 311
			document.addEventListener("back", callback, false);
308 312
		}else if(key=="menu"){
@ -312,8 +316,8 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
312 316
		}
313 317
	}
314 318
	
315
	WadeMobile.event = (function(){
316
		if(WadeMobile.isApp()){
319
	IpuMobile.event = (function(){
320
		if(IpuMobile.isApp()){
317 321
			// Create the event.
318 322
			var backEvent = document.createEvent('Event');
319 323
			var menuEvent = document.createEvent('Event');
@ -334,8 +338,8 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
334 338
	})();
335 339
	/**物理按键监听end**/
336 340
	
337
	WadeMobile.backevent = (function(){
338
		if(WadeMobile.isApp()){
341
	IpuMobile.backevent = (function(){
342
		if(IpuMobile.isApp()){
339 343
			return {
340 344
				backCall:function(data){
341 345
					var backCallEvent = document.createEvent('Event');
@ -348,7 +352,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
348 352
	})();
349 353
	
350 354
	/* 通用插件事件触发函数,建议name ipu开头,如 ipuPush,不要出现字母外特殊字符 */
351
	WadeMobile.triggerEvent = function(name, data){
355
	IpuMobile.triggerEvent = function(name, data){
352 356
		var event = document.createEvent('Event');
353 357
		event.initEvent(name, true, true);
354 358
		event.data = data;
@ -356,7 +360,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
356 360
	}
357 361
	
358 362
	/* 通用监听插件事件函数 */
359
	WadeMobile.listenerEvent = function(name, callBack){
363
	IpuMobile.listenerEvent = function(name, callBack){
360 364
		document.addEventListener(name, function(e){
361 365
			callBack(e.data, e);
362 366
		}, false);
@ -400,7 +404,7 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
400 404
	
401 405
	//动态执行js方法
402 406
	function _eval(code,action){
403
		if(WadeMobile.debug){
407
		if(IpuMobile.debug){
404 408
			alert(code);
405 409
		}
406 410
		var func = eval(code);
@ -464,44 +468,44 @@ define(["jcl","base64","mobileExpand","bizMobileExpand"],function(Wade, Base64,
464 468
	};
465 469
	
466 470
467
	Wade.extend(WadeMobile, mobileExpand);//属性合并,mobileExpand累加到WadeMobile中
468
	Wade.extend(WadeMobile, bizMobileExpand);//属性合并,bizMobileExpand累加到WadeMobile中
469
	return WadeMobile;
471
	Wade.extend(IpuMobile, mobileExpand);//属性合并,mobileExpand累加到IpuMobile中
472
	Wade.extend(IpuMobile, bizMobileExpand);//属性合并,bizMobileExpand累加到IpuMobile中
473
	return IpuMobile;
470 474
});
471 475
472
//让top对象上,保持有一个当前iframe里面的WadeMobile对象的引用。
473
//注意:在iframe中,_WadeMobileSet_Key_+时间戳表示一个key,此key作为了在top对象上索引iframe中的WadeMobile的依据。
476
//让top对象上,保持有一个当前iframe里面的IpuMobile对象的引用。
477
//注意:在iframe中,_IpuMobileSet_Key_+时间戳表示一个key,此key作为了在top对象上索引iframe中的IpuMobile的依据。
474 478
//将保持引用的key值存入到当前ifame的window对象上。
475 479
(function(){
476 480
	//屏蔽所有浏览器
477 481
	if( window.navigator.userAgent.indexOf("IpuMobile\/") == -1 ) {
478
		console.log("<WadeMobileSet> \"IpuMobile\/\" string does not exist in the userAgent. return.");
482
		console.log("<IpuMobileSet> \"IpuMobile\/\" string does not exist in the userAgent. return.");
479 483
		return;
480 484
	}
481 485
	
482 486
	if(top != window){
483
		if(top.WadeMobileSet == undefined){
484
			top.WadeMobileSet = {};
487
		if(top.IpuMobileSet == undefined){
488
			top.IpuMobileSet = {};
485 489
		}
486
		for(var key in top.WadeMobileSet){
490
		for(var key in top.IpuMobileSet){
487 491
			try{
488
				if( key.indexOf("_WadeMobileSet_Key_") != -1 && ( !top.WadeMobileSet[key] || ( top.WadeMobileSet[key].canRemoved && top.WadeMobileSet[key].canRemoved() ) ) ){
492
				if( key.indexOf("_IpuMobileSet_Key_") != -1 && ( !top.IpuMobileSet[key] || ( top.IpuMobileSet[key].canRemoved && top.IpuMobileSet[key].canRemoved() ) ) ){
489 493
					console.log("(top set)delete:" + key);
490
					delete top.WadeMobileSet[key];
494
					delete top.IpuMobileSet[key];
491 495
					console.log("(top set)delete success :" + key);
492 496
				}
493 497
			}catch(e){
494
				console.log("a error(WadeMobile) : " + e);
498
				console.log("a error(IpuMobile) : " + e);
495 499
				console.log("(top set)delete:" + key);
496
				delete top.WadeMobileSet[key];
500
				delete top.IpuMobileSet[key];
497 501
				console.log("(top set)delete success :" + key);
498 502
			}
499 503
		}
500
		var key = "_WadeMobileSet_Key_" + new Date().getTime();
501
		window._WadeMobileSet_Key_ = key;
502
		console.log("in an iframe, window.WadeMobile object is referenced top.WadeMobileSet." + key);
503
		top.WadeMobileSet[key] = window.WadeMobile;
504
		window.WadeMobile.canRemoved = function(){
504
		var key = "_IpuMobileSet_Key_" + new Date().getTime();
505
		window._IpuMobileSet_Key_ = key;
506
		console.log("in an iframe, window.IpuMobile object is referenced top.IpuMobileSet." + key);
507
		top.IpuMobileSet[key] = window.IpuMobile;
508
		window.IpuMobile.canRemoved = function(){
505 509
			return !window;
506 510
		};
507 511
	}

+ 49 - 49
show-server/src/main/webapp/ipu/frame/mobile/mobile-client.js

@ -2,55 +2,55 @@
2 2
 * 此JS文件匹配mobile_browser.js,用于分离出终端调用和web调用的逻辑.
3 3
 * 终端访问应用时,动态引用mobile_client.js文件;浏览器访问应用时,动态引用mobile_browser.js文件.
4 4
 */
5
define(["wadeMobile","clientTool"],function(WadeMobile,clientTool) {
5
define(["ipuMobile","clientTool"],function(IpuMobile,clientTool) {
6 6
	var Mobile = new function() {
7 7
		/******************系统功能**********************/
8 8
		/*判断是否App*/
9 9
		this.isApp = function(){
10
			return WadeMobile.isApp();
10
			return IpuMobile.isApp();
11 11
		};
12 12
		/*关闭应用*/
13 13
		this.closeApp = function() {
14
			WadeMobile.close(false);
14
			IpuMobile.close(false);
15 15
		};
16 16
		/******************数据请求**********************/
17 17
		/*调用服务*/
18 18
		this.dataRequest = function(action, param, callback, err, headers) {
19 19
			param = param ? param : "";
20 20
			headers = headers ? headers : "";
21
			WadeMobile.dataRequest(callback, action, param.toString(), null, null, null, err,headers.toString());
21
			IpuMobile.dataRequest(callback, action, param.toString(), null, null, null, err,headers.toString());
22 22
		};
23 23
		/*调用指定服务端地址服务*/
24 24
		this.dataRequestWithHost = function(url, action, param, callback, err, headers) {
25 25
			param = param ? param : "";
26 26
			headers = headers ? headers : "";
27
			WadeMobile.dataRequestWithHost(callback, url, action, param.toString(), null, null, null, err,headers.toString());
27
			IpuMobile.dataRequestWithHost(callback, url, action, param.toString(), null, null, null, err,headers.toString());
28 28
		};
29 29
		/******************页面跳转**********************/
30 30
		/*页面跳转,url为跳转目标*/
31 31
		this.openUrl = function(url, callback, title, buttons, styles, err) {
32
			WadeMobile.openUrl(url, callback, title, buttons, styles, err);
32
			IpuMobile.openUrl(url, callback, title, buttons, styles, err);
33 33
		};
34 34
		this.loadUrl = function(url, err) {
35
			WadeMobile.loadUrl(url, err);
35
			IpuMobile.loadUrl(url, err);
36 36
		};
37 37
		/*页面跳转,param为打开页面时调用接口的参数*/
38 38
		this.openPage = function(pageAction, param, err) {
39 39
			param = param ? param : "";
40
			WadeMobile.openPage(pageAction, param.toString(), err);
40
			IpuMobile.openPage(pageAction, param.toString(), err);
41 41
		};
42 42
		this.loadPage = function(pageAction, param, err){
43 43
			param = param ? param : "";
44
			WadeMobile.loadPage(pageAction, param.toString(), err);
44
			IpuMobile.loadPage(pageAction, param.toString(), err);
45 45
		};
46 46
		/*页面跳转,param为打开页面的映射数据*/
47 47
		this.openTemplate = function(pageAction, param, err) {
48 48
			param = param ? param : "";
49
			WadeMobile.openTemplate(pageAction, param.toString(), err);
49
			IpuMobile.openTemplate(pageAction, param.toString(), err);
50 50
		};
51 51
		this.loadTemplate = function(pageAction, param, err){
52 52
			param = param ? param : "";
53
			WadeMobile.loadTemplate(pageAction, param.toString(), err);
53
			IpuMobile.loadTemplate(pageAction, param.toString(), err);
54 54
		};
55 55
		/*将模板转换成html源码*/
56 56
		this.getTemplate = function(action,param,callback,err){
@ -58,7 +58,7 @@ define(["wadeMobile","clientTool"],function(WadeMobile,clientTool) {
58 58
			if(typeof(param) != "string"){
59 59
				param = param.toString();
60 60
			}
61
			WadeMobile.getTemplate(callback,action,param,err);
61
			IpuMobile.getTemplate(callback,action,param,err);
62 62
		};
63 63
		/*将Page转换成html源码*/
64 64
		this.getPage = function(action, param, callback, err){
@ -66,11 +66,11 @@ define(["wadeMobile","clientTool"],function(WadeMobile,clientTool) {
66 66
			if(typeof(param) != "string"){
67 67
				param = param.toString();
68 68
			}
69
			WadeMobile.getPage(callback,action,param,err);
69
			IpuMobile.getPage(callback,action,param,err);
70 70
		};
71 71
		/*回退到前一个界面*/
72 72
		this.back = function(tag,err){
73
			WadeMobile.back(tag,err);
73
			IpuMobile.back(tag,err);
74 74
		};
75 75
		/*设置back监听事件*/
76 76
		this.onBack = function(callback){
@ -89,16 +89,16 @@ define(["wadeMobile","clientTool"],function(WadeMobile,clientTool) {
89 89
		/**back回调事件监听结束**/
90 90
		/*触发事件的回退,同onBack联合使用*/
91 91
		this.backWithCallback = function(data,tag,err){
92
			WadeMobile.backWithCallback(data,tag,err);
92
			IpuMobile.backWithCallback(data,tag,err);
93 93
		};
94 94
		/******************基础UI**********************/
95 95
		/*打开loading对话框*/
96 96
		this.loadingStart = function(message,title){
97
			WadeMobile.loadingStart(message,title);
97
			IpuMobile.loadingStart(message,title);
98 98
		};
99 99
		/*关闭加载中对话框*/
100 100
		this.loadingStop = function(){
101
			WadeMobile.loadingStop();
101
			IpuMobile.loadingStop();
102 102
		};
103 103
		/*弹出确认对话框*/
104 104
		this.confirm = function(){
@ -109,126 +109,126 @@ define(["wadeMobile","clientTool"],function(WadeMobile,clientTool) {
109 109
			if(type==undefined){
110 110
				type = 1;
111 111
			}
112
			WadeMobile.tip(msg, type);
112
			IpuMobile.tip(msg, type);
113 113
		};
114 114
		/*弹出提示框*/
115 115
		this.alert = function(msg, title, callback) {
116
			WadeMobile.alert(msg, title, callback);
116
			IpuMobile.alert(msg, title, callback);
117 117
		};
118 118
		/******************内存缓存**********************/
119 119
		this.setMemoryCache = function(key, value){
120 120
			if (clientTool.tool.isDataMap(key)) {
121
				WadeMobile.setMemoryCache(key.map);
121
				IpuMobile.setMemoryCache(key.map);
122 122
			} else {
123
				WadeMobile.setMemoryCache(key, value);
123
				IpuMobile.setMemoryCache(key, value);
124 124
			}
125 125
		};
126 126
		this.getMemoryCache = function(callback,key,defValue){
127
			WadeMobile.getMemoryCache(callback,key,defValue);
127
			IpuMobile.getMemoryCache(callback,key,defValue);
128 128
		};
129 129
		this.removeMemoryCache = function(key){
130
			WadeMobile.removeMemoryCache(key);
130
			IpuMobile.removeMemoryCache(key);
131 131
		};
132 132
		this.clearMemoryCache = function(){
133
			WadeMobile.clearMemoryCache();
133
			IpuMobile.clearMemoryCache();
134 134
		};
135 135
		/******************离线缓存**********************/
136 136
		this.setOfflineCache = function(key, value,isEncrypt){
137 137
			if (clientTool.tool.isDataMap(key)) {
138
				WadeMobile.setOfflineCache(key.map, value,isEncrypt);
138
				IpuMobile.setOfflineCache(key.map, value,isEncrypt);
139 139
			} else {
140
				WadeMobile.setOfflineCache(key, value,isEncrypt);
140
				IpuMobile.setOfflineCache(key, value,isEncrypt);
141 141
			}
142 142
		};
143 143
		this.getOfflineCache = function(callback, key, value,isEncrypt){
144
			WadeMobile.getOfflineCache(callback, key, value,isEncrypt);
144
			IpuMobile.getOfflineCache(callback, key, value,isEncrypt);
145 145
		};
146 146
		this.removeOfflineCache = function(key){
147
			WadeMobile.removeOfflineCache(key);
147
			IpuMobile.removeOfflineCache(key);
148 148
		};
149 149
		this.clearOfflineCache = function(){
150
			WadeMobile.clearOfflineCache();
150
			IpuMobile.clearOfflineCache();
151 151
		};
152 152
		/******************扩展UI**********************/
153 153
		this.openDialog = function(pageAction,param,callback,width,height){
154 154
			param = param ? param : "";
155 155
			width = width ? width : 0.5;//默认0.5
156 156
			height = height ? height : 0.5;
157
			WadeMobile.openDialog(callback,pageAction,param.toString(),width,height);
157
			IpuMobile.openDialog(callback,pageAction,param.toString(),width,height);
158 158
		};
159 159
		this.closeDialog = function(result){
160
			WadeMobile.closeDialog(result);
160
			IpuMobile.closeDialog(result);
161 161
		};
162 162
		this.openWindow = function(pageAction,param,callback){
163 163
			param = param ? param : "";
164
			WadeMobile.openWindow(callback,pageAction,param.toString());
164
			IpuMobile.openWindow(callback,pageAction,param.toString());
165 165
		};
166 166
		this.closeWindow = function(result){
167 167
			if(typeof(result) == "undefined" || result == null){
168
				WadeMobile.closeWindow();
168
				IpuMobile.closeWindow();
169 169
				return;
170 170
			}
171 171
			if(typeof(result) != "string"){
172 172
				result = result.toString();
173 173
			}
174
			WadeMobile.closeWindow(result);
174
			IpuMobile.closeWindow(result);
175 175
		};
176 176
		/*打开侧滑菜单*/
177 177
		this.openSlidingMenu = function(action,param,callback,type){//type:left|right
178 178
			type = type?type:"left";
179 179
			param = param ? param : "";
180 180
			if(type=="left"){
181
				WadeMobile.openSlidingMenu(callback,action,param,0.5,1,0,0);
181
				IpuMobile.openSlidingMenu(callback,action,param,0.5,1,0,0);
182 182
			}else{
183
				WadeMobile.openSlidingMenu(callback,action,param,0.5,1,1,0);
183
				IpuMobile.openSlidingMenu(callback,action,param,0.5,1,1,0);
184 184
			}
185 185
		}
186 186
		/*关闭侧滑菜单*/
187 187
		this.closeSlidingMenu = function(result){
188
			WadeMobile.closeSlidingMenu(result);
188
			IpuMobile.closeSlidingMenu(result);
189 189
		}
190 190
		/******************本地数据库操作**********************/
191 191
		this.execSQL = function(dbName,sql,bindArgs,limit,offset,callback,err){
192
			WadeMobile.execSQL(dbName,sql,bindArgs,limit,offset,callback,err);
192
			IpuMobile.execSQL(dbName,sql,bindArgs,limit,offset,callback,err);
193 193
		};
194 194
		this.insert = function(dbName,table,datas,callback,err){
195
			WadeMobile.insert(dbName,table,datas,callback,err);
195
			IpuMobile.insert(dbName,table,datas,callback,err);
196 196
		};
197 197
		this.delete = function(dbName,table,condSQL,conds,callback,err){
198
			WadeMobile.delete(dbName,table,condSQL,conds,callback,err);
198
			IpuMobile.delete(dbName,table,condSQL,conds,callback,err);
199 199
		};
200 200
		this.update = function(dbName,table,datas,condSQL,conds,callback,err){
201
			WadeMobile.update(dbName,table,datas,condSQL,conds,callback,err);
201
			IpuMobile.update(dbName,table,datas,condSQL,conds,callback,err);
202 202
		};
203 203
		this.select = function(dbName,table,columns,condSQL,conds,limit,offset,callback,err){
204
			WadeMobile.select(dbName,table,columns,condSQL,conds,limit,offset,callback,err);
204
			IpuMobile.select(dbName,table,columns,condSQL,conds,limit,offset,callback,err);
205 205
		};
206 206
		//查询第一行数据,效率高
207 207
		this.selectFirst = function(dbName,table,columns,condSQL,conds,callback,err){
208
			WadeMobile.selectFirst(dbName,table,columns,condSQL,conds,callback,err);
208
			IpuMobile.selectFirst(dbName,table,columns,condSQL,conds,callback,err);
209 209
		};
210 210
		// 设置手势锁
211 211
		this.setScreenLock = function(dataParam,callback,err) {
212
			WadeMobile.setScreenLock(dataParam.toString(),callback,err);
212
			IpuMobile.setScreenLock(dataParam.toString(),callback,err);
213 213
		}
214 214
		// 获取手势锁状态
215 215
		this.getScreenLockState = function(callback) {
216
			WadeMobile.getScreenLockState(callback);
216
			IpuMobile.getScreenLockState(callback);
217 217
		}
218 218
		// 解锁
219 219
		this.screenUnlock = function(forgetPageAction,callback,err){
220
			WadeMobile.screenUnlock(forgetPageAction,callback,err);
220
			IpuMobile.screenUnlock(forgetPageAction,callback,err);
221 221
		}
222 222
		// 打开小键盘
223 223
		this.openKeyboard = function(value,err){
224
			WadeMobile.openKeyboard(value,err);
224
			IpuMobile.openKeyboard(value,err);
225 225
		}
226 226
		this.openNative = function(data,err){
227
			WadeMobile.openNative(data.toString(),err);
227
			IpuMobile.openNative(data.toString(),err);
228 228
		}
229 229
		// 初始化NFC
230 230
		this.initNfc = function(data,err){
231
			WadeMobile.initNfc(data.toString(),err);
231
			IpuMobile.initNfc(data.toString(),err);
232 232
		}
233 233
		
234 234
	};

+ 2 - 2
show-server/src/main/webapp/ipu/frame/mobile/mobile.js

@ -1,5 +1,5 @@
1
define(["wadeMobile","mobileClient","mobileBrowser"],function(WadeMobile,MobileClient,MobileBrowser){
2
	if(WadeMobile.isApp()){
1
define(["ipuMobile","mobileClient","mobileBrowser"],function(IpuMobile,MobileClient,MobileBrowser){
2
	if(IpuMobile.isApp()){
3 3
		 return MobileClient;
4 4
	}else{
5 5
		return MobileBrowser;

+ 24 - 34
show-server/src/main/webapp/ipu/require-config.js

@ -6,38 +6,28 @@
6 6
 * 3.如果以"http:"或者"https:"开头
7 7
 */
8 8
require.config({
9
    paths:{
10
    	/** ipu框架 **/
11
    	'zepto': 'ipu/lib/zepto/zepto.min-1.1.6',
12
		'jcl' : 'ipu/frame/base/jcl',
13
		'base64': 'ipu/frame/mobile/base64',
14
        'browserTool': 'ipu/frame/mobile/browser-toolkit',
15
		'clientTool': 'ipu/frame/mobile/client-toolkit',
16
		'mobileBrowser': 'ipu/frame/mobile/mobile-browser',
17
		'mobileClient': 'ipu/frame/mobile/mobile-client',
18
		'wadeMobile': 'ipu/frame/mobile/wade-mobile',//这里同时会引入expand-mobile和biz-mobile
19
		'mobile': 'ipu/frame/mobile/mobile',
20
		'mobileExpand': 'ipu/frame/mobile/expand-mobile',
21
		'bizMobileExpand': 'biz/js/common/biz-mobile',
22
		
23
		
24
		/** ipuUI **/
25
    	'jquery': 'ipu/lib/jquery/jquery-2.2.4',
26
    	'iScroll': 'ipu/lib/iscroll/iscroll',
27
        'Hammer': 'ipu/lib/hammer/hammer',
28
		"FastClick": "ipu/lib/fastclick/fastclick",
29
        'ipuUI' : 'ipu/ui/js/ipuUI'
30
        
31
        
32
	/*	'handlebars' : 'dep/js/handlebars/handlebars-4.0.5',
33
		'highcharts' : 'dep/js/chart/highchart/highcharts',
34
		'highcharts-3d' : 'dep/js/chart/highchart/highcharts-3d',
35
		'highcharts-more' : 'dep/js/chart/highchart/highcharts-more',
36
		"echarts": 'dep/js/chart/echart/echarts.common.min',
37
		"icharts": 'dep/js/chart/ichart/ichart.1.2.1.min',
38
		"gesturePassword":"dep/js/gesture.password",*/
39
    },
40
	waitSeconds: 0, // 不限制js加载时长,默认为7s,加载js总时长超过7s会报错 
41
     //缓存
42
    urlArgs: "urlArgs="  // +new Date().getTime()
9
  paths: {
10
    /** ipu框架 **/
11
    'zepto': 'ipu/lib/zepto/zepto.min-1.1.6',
12
    'jcl': 'ipu/frame/base/jcl',
13
    'base64': 'ipu/frame/mobile/base64',
14
    'browserTool': 'ipu/frame/mobile/browser-toolkit',
15
    'clientTool': 'ipu/frame/mobile/client-toolkit',
16
    'mobileBrowser': 'ipu/frame/mobile/mobile-browser',
17
    'mobileClient': 'ipu/frame/mobile/mobile-client',
18
    'ipuMobile': 'ipu/frame/mobile/ipu-mobile',//这里同时会引入expand-mobile和biz-mobile
19
    'mobile': 'ipu/frame/mobile/mobile',
20
    'mobileExpand': 'ipu/frame/mobile/expand-mobile',
21
    'bizMobileExpand': 'biz/js/common/biz-mobile',
22
23
    /** ipuUI **/
24
    'jquery': 'ipu/lib/jquery/jquery-2.2.4',
25
    'iScroll': 'ipu/lib/iscroll/iscroll',
26
    'Hammer': 'ipu/lib/hammer/hammer',
27
    "FastClick": "ipu/lib/fastclick/fastclick",
28
    'ipuUI': 'ipu/ui/js/ipuUI'
29
  },
30
  waitSeconds: 0, // 不限制js加载时长,默认为7s,加载js总时长超过7s会报错
31
  //缓存
32
  urlArgs: "urlArgs="  // +new Date().getTime()
43 33
});

+ 300 - 174
show-server/src/main/webapp/ipu/ui/css/ipuUI.css

@ -1,4 +1,5 @@
1 1
@charset "UTF-8";
2
2 3
html {
3 4
  font-size: 85.06667px;
4 5
}
@ -231,25 +232,56 @@ html[size="xl"] {
231 232
  }
232 233
}
233 234
234
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote,
235
dl, dt, dd, ul, ol, li,
235
body,
236
h1,
237
h2,
238
h3,
239
h4,
240
h5,
241
h6,
242
hr,
243
p,
244
blockquote,
245
dl,
246
dt,
247
dd,
248
ul,
249
ol,
250
li,
236 251
pre,
237
fieldset, lengend, button, input, textarea,
238
th, td {
252
fieldset,
253
lengend,
254
button,
255
input,
256
textarea,
257
th,
258
td {
239 259
  margin: 0;
240 260
  padding: 0;
241 261
}
242 262
243
h1, h2, h3, h4, h5, h6 {
263
h1,
264
h2,
265
h3,
266
h4,
267
h5,
268
h6 {
244 269
  font-weight: normal;
245 270
  font-size: 100%;
246 271
}
247 272
248
address, cite, dfn, em, var, i, strong {
273
address,
274
cite,
275
dfn,
276
em,
277
var,
278
i,
279
strong {
249 280
  font-style: normal;
250 281
}
251 282
252
ul, ol {
283
ul,
284
ol {
253 285
  list-style: none;
254 286
}
255 287
@ -257,11 +289,15 @@ a {
257 289
  text-decoration: none;
258 290
}
259 291
260
fieldset, img {
292
fieldset,
293
img {
261 294
  border: none;
262 295
}
263 296
264
button, input, select, textarea {
297
button,
298
input,
299
select,
300
textarea {
265 301
  font: inherit;
266 302
}
267 303
@ -270,7 +306,8 @@ table {
270 306
  border-spacing: 0;
271 307
}
272 308
273
caption, th {
309
caption,
310
th {
274 311
  text-align: left;
275 312
}
276 313
@ -291,7 +328,8 @@ del {
291 328
  box-sizing: border-box;
292 329
}
293 330
294
html, body {
331
html,
332
body {
295 333
  height: 100%;
296 334
  position: relative;
297 335
}
@ -455,10 +493,12 @@ a:active {
455 493
    -webkit-transform: rotate(0deg);
456 494
    transform: rotate(0deg);
457 495
  }
496
458 497
  50% {
459 498
    -webkit-transform: rotate(180deg);
460 499
    transform: rotate(180deg);
461 500
  }
501
462 502
  100% {
463 503
    -webkit-transform: rotate(360deg);
464 504
    transform: rotate(360deg);
@ -470,10 +510,12 @@ a:active {
470 510
    -webkit-transform: rotate(0deg);
471 511
    transform: rotate(0deg);
472 512
  }
513
473 514
  50% {
474 515
    -webkit-transform: rotate(180deg);
475 516
    transform: rotate(180deg);
476 517
  }
518
477 519
  100% {
478 520
    -webkit-transform: rotate(360deg);
479 521
    transform: rotate(360deg);
@ -534,6 +576,7 @@ a:active {
534 576
  position: relative;
535 577
  min-width: 0.75rem;
536 578
  padding: 0 0.075rem;
579
  margin-top: 2.4;
537 580
  font-size: 0.14rem;
538 581
  line-height: 2.4;
539 582
  color: #fff;
@ -544,11 +587,13 @@ a:active {
544 587
  -webkit-appearance: none;
545 588
}
546 589
547
.ipu-btn:not(.ipu-disabled):not(:disabled):active, .ipu-btn.ipu-current {
590
.ipu-btn:not(.ipu-disabled):not(:disabled):active,
591
.ipu-btn.ipu-current {
548 592
  background: #0063a0;
549 593
}
550 594
551
.ipu-btn.ipu-disabled, .ipu-btn:disabled {
595
.ipu-btn.ipu-disabled,
596
.ipu-btn:disabled {
552 597
  opacity: .5;
553 598
}
554 599
@ -574,7 +619,8 @@ a:active {
574 619
  background-color: #ff4222;
575 620
}
576 621
577
.ipu-btn-warning:not(.ipu-disabled):not(:disabled):active, .ipu-btn-warning.ipu-current {
622
.ipu-btn-warning:not(.ipu-disabled):not(:disabled):active,
623
.ipu-btn-warning.ipu-current {
578 624
  background-color: #ee2200;
579 625
}
580 626
@ -582,7 +628,8 @@ a:active {
582 628
  background-color: #ff8444;
583 629
}
584 630
585
.ipu-btn-highlight:not(.ipu-disabled):not(:disabled):active, .ipu-btn-highlight.ipu-current {
631
.ipu-btn-highlight:not(.ipu-disabled):not(:disabled):active,
632
.ipu-btn-highlight.ipu-current {
586 633
  background: #ff6211;
587 634
}
588 635
@ -590,7 +637,8 @@ a:active {
590 637
  background-color: #4cd964;
591 638
}
592 639
593
.ipu-btn-success:not(.ipu-disabled):not(:disabled):active, .ipu-btn-success.ipu-current {
640
.ipu-btn-success:not(.ipu-disabled):not(:disabled):active,
641
.ipu-btn-success.ipu-current {
594 642
  background: #2ac845;
595 643
}
596 644
@ -621,7 +669,7 @@ a:active {
621 669
  border-radius: 0 .03rem .03rem 0;
622 670
}
623 671
624
.ipu-btn-group .ipu-btn + .ipu-btn {
672
.ipu-btn-group .ipu-btn+.ipu-btn {
625 673
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.05), -1px 0 0 rgba(0, 0, 0, 0.2);
626 674
}
627 675
@ -813,7 +861,8 @@ a:active {
813 861
  align-items: center;
814 862
}
815 863
816
.ipu-input-wrap .ipu-btn, .ipu-input-wrap i {
864
.ipu-input-wrap .ipu-btn,
865
.ipu-input-wrap i {
817 866
  margin-right: .1rem;
818 867
}
819 868
@ -842,7 +891,8 @@ a:active {
842 891
  border-collapse: collapse;
843 892
}
844 893
845
.ipu-table td, .ipu-table th {
894
.ipu-table td,
895
.ipu-table th {
846 896
  text-align: center;
847 897
  background-color: #fff;
848 898
  padding: .08rem .025rem;
@ -878,29 +928,35 @@ a:active {
878 928
  border-bottom: 1px solid #e0e0e0;
879 929
}
880 930
881
.ipu-table-border-none th, .ipu-table-border-none td {
931
.ipu-table-border-none th,
932
.ipu-table-border-none td {
882 933
  border: none;
883 934
}
884 935
885
.ipu-table-border-row th, .ipu-table-border-row td {
936
.ipu-table-border-row th,
937
.ipu-table-border-row td {
886 938
  border-width: 0 0 1px 0;
887 939
}
888 940
889
.ipu-grid, .ipu-grid-trisect, .ipu-grid-halve {
941
.ipu-grid,
942
.ipu-grid-trisect,
943
.ipu-grid-halve {
890 944
  padding-left: .15rem;
891 945
  padding-right: .1rem;
892 946
  overflow: hidden;
893 947
  padding-top: .1rem;
894 948
}
895 949
896
.ipu-grid li, .ipu-grid-trisect li, .ipu-grid-halve li {
950
.ipu-grid li,
951
.ipu-grid-trisect li,
952
.ipu-grid-halve li {
897 953
  padding-right: .05rem;
898 954
  padding-bottom: .1rem;
899 955
  float: left;
900 956
  position: relative;
901 957
}
902 958
903
.ipu-grid-trisect > li {
959
.ipu-grid-trisect>li {
904 960
  width: 33.3333%;
905 961
}
906 962
@ -919,7 +975,7 @@ a:active {
919 975
  color: #666;
920 976
}
921 977
922
.ipu-grid-halve > li {
978
.ipu-grid-halve>li {
923 979
  width: 50%;
924 980
}
925 981
@ -927,11 +983,13 @@ a:active {
927 983
  padding-top: 55.17%;
928 984
}
929 985
930
.ipu-grid-trisect-img, .ipu-grid-halve-img {
986
.ipu-grid-trisect-img,
987
.ipu-grid-halve-img {
931 988
  width: 100%;
932 989
}
933 990
934
.ipu-grid-trisect-img img, .ipu-grid-halve-img img {
991
.ipu-grid-trisect-img img,
992
.ipu-grid-halve-img img {
935 993
  width: 100%;
936 994
  height: 100%;
937 995
  position: absolute;
@ -939,7 +997,8 @@ a:active {
939 997
  top: 0;
940 998
}
941 999
942
.ipu-grid-trisect-img.active, .ipu-grid-halve-img.active {
1000
.ipu-grid-trisect-img.active,
1001
.ipu-grid-halve-img.active {
943 1002
  opacity: .5;
944 1003
}
945 1004
@ -948,61 +1007,63 @@ a:active {
948 1007
  overflow: auto;
949 1008
}
950 1009
951
.ipu-row > .ipu-col {
1010
.ipu-row>.ipu-col {
952 1011
  float: left;
953 1012
  width: 100%;
954 1013
}
955 1014
956
.ipu-row > .ipu-col-10 {
1015
.ipu-row>.ipu-col-10 {
957 1016
  width: 10%;
958 1017
}
959 1018
960
.ipu-row > .ipu-col-20 {
1019
.ipu-row>.ipu-col-20 {
961 1020
  width: 20%;
962 1021
}
963 1022
964
.ipu-row > .ipu-col-25 {
1023
.ipu-row>.ipu-col-25 {
965 1024
  width: 25%;
966 1025
}
967 1026
968
.ipu-row > .ipu-col-33 {
1027
.ipu-row>.ipu-col-33 {
969 1028
  width: 33.3333%;
970 1029
}
971 1030
972
.ipu-row > .ipu-col-40 {
1031
.ipu-row>.ipu-col-40 {
973 1032
  width: 40%;
974 1033
}
975 1034
976
.ipu-row > .ipu-col-50 {
1035
.ipu-row>.ipu-col-50 {
977 1036
  width: 50%;
978 1037
}
979 1038
980
.ipu-row > .ipu-col-60 {
1039
.ipu-row>.ipu-col-60 {
981 1040
  width: 60%;
982 1041
}
983 1042
984
.ipu-row > .ipu-col-67 {
1043
.ipu-row>.ipu-col-67 {
985 1044
  width: 66.6667%;
986 1045
}
987 1046
988
.ipu-row > .ipu-col-75 {
1047
.ipu-row>.ipu-col-75 {
989 1048
  width: 75%;
990 1049
}
991 1050
992
.ipu-row > .ipu-col-80 {
1051
.ipu-row>.ipu-col-80 {
993 1052
  width: 80%;
994 1053
}
995 1054
996
.ipu-row > .ipu-col-90 {
1055
.ipu-row>.ipu-col-90 {
997 1056
  width: 90%;
998 1057
}
999 1058
1000
.ipu-grid-nine, .ipu-grid-sixteen {
1059
.ipu-grid-nine,
1060
.ipu-grid-sixteen {
1001 1061
  position: relative;
1002 1062
  overflow: hidden;
1003 1063
}
1004 1064
1005
.ipu-grid-nine > li, .ipu-grid-sixteen > li {
1065
.ipu-grid-nine>li,
1066
.ipu-grid-sixteen>li {
1006 1067
  float: left;
1007 1068
  position: relative;
1008 1069
  padding: 0.2rem 0.1rem;
@ -1012,57 +1073,73 @@ a:active {
1012 1073
  border-bottom: 1px solid #eae9eb;
1013 1074
}
1014 1075
1015
.ipu-grid-nine > li:active, .ipu-grid-sixteen > li:active {
1076
.ipu-grid-nine>li:active,
1077
.ipu-grid-sixteen>li:active {
1016 1078
  background: #f4f4f4;
1017 1079
}
1018 1080
1019
.ipu-grid-nine .ipu-icon, .ipu-grid-sixteen .ipu-icon {
1081
.ipu-grid-nine .ipu-icon,
1082
.ipu-grid-sixteen .ipu-icon {
1020 1083
  font-size: 0.32rem;
1021 1084
  display: block;
1022 1085
  line-height: 0.44rem;
1023 1086
}
1024 1087
1025
.ipu-grid-nine .ipu-badge, .ipu-grid-nine .ipu-badge-muted, .ipu-grid-nine .ipu-badge-num, .ipu-grid-nine .ipu-badge-dot, .ipu-grid-sixteen .ipu-badge, .ipu-grid-sixteen .ipu-badge-muted, .ipu-grid-sixteen .ipu-badge-num, .ipu-grid-sixteen .ipu-badge-dot {
1088
.ipu-grid-nine .ipu-badge,
1089
.ipu-grid-nine .ipu-badge-muted,
1090
.ipu-grid-nine .ipu-badge-num,
1091
.ipu-grid-nine .ipu-badge-dot,
1092
.ipu-grid-sixteen .ipu-badge,
1093
.ipu-grid-sixteen .ipu-badge-muted,
1094
.ipu-grid-sixteen .ipu-badge-num,
1095
.ipu-grid-sixteen .ipu-badge-dot {
1026 1096
  position: absolute;
1027 1097
  top: 0.15rem;
1028 1098
  left: 65%;
1029 1099
  z-index: 99;
1030 1100
}
1031 1101
1032
.ipu-grid-nine > li p, .ipu-grid-sixteen > li p {
1102
.ipu-grid-nine>li p,
1103
.ipu-grid-sixteen>li p {
1033 1104
  display: block;
1034 1105
  overflow: hidden;
1035 1106
  white-space: nowrap;
1036 1107
  text-overflow: ellipsis;
1037 1108
}
1038 1109
1039
.ipu-grid-nine > li a, .ipu-grid-sixteen > li a {
1110
.ipu-grid-nine>li a,
1111
.ipu-grid-sixteen>li a {
1040 1112
  color: inherit;
1041 1113
  display: block;
1042 1114
  position: relative;
1043 1115
}
1044 1116
1045
.ipu-grid-nine > li {
1117
.ipu-grid-nine>li {
1046 1118
  width: 33.3333%;
1047 1119
}
1048 1120
1049
.ipu-grid-nine > li:nth-child(3n+1) {
1121
.ipu-grid-nine>li:nth-child(3n+1) {
1050 1122
  border-left: 1px solid #eae9eb;
1051 1123
}
1052 1124
1053
.ipu-grid-nine > li:nth-child(1), .ipu-grid-nine > li:nth-child(2), .ipu-grid-nine > li:nth-child(3) {
1125
.ipu-grid-nine>li:nth-child(1),
1126
.ipu-grid-nine>li:nth-child(2),
1127
.ipu-grid-nine>li:nth-child(3) {
1054 1128
  border-top: 1px solid #eae9eb;
1055 1129
}
1056 1130
1057
.ipu-grid-sixteen > li {
1131
.ipu-grid-sixteen>li {
1058 1132
  width: 25%;
1059 1133
}
1060 1134
1061
.ipu-grid-sixteen > li:nth-child(4n+1) {
1135
.ipu-grid-sixteen>li:nth-child(4n+1) {
1062 1136
  border-left: 1px solid #eae9eb;
1063 1137
}
1064 1138
1065
.ipu-grid-sixteen > li:nth-child(1), .ipu-grid-sixteen > li:nth-child(2), .ipu-grid-sixteen > li:nth-child(3), .ipu-grid-sixteen > li:nth-child(4) {
1139
.ipu-grid-sixteen>li:nth-child(1),
1140
.ipu-grid-sixteen>li:nth-child(2),
1141
.ipu-grid-sixteen>li:nth-child(3),
1142
.ipu-grid-sixteen>li:nth-child(4) {
1066 1143
  border-top: 1px solid #eae9eb;
1067 1144
}
1068 1145
@ -1272,20 +1349,20 @@ a:active {
1272 1349
  }*/
1273 1350
}
1274 1351
1275
.ipu-row-flex-ver > .ipu-col,
1276
.ipu-row-flex-ver > [class*="ipu-flex-grow-"],
1277
.ipu-row-flex-ver > .ipu-flex-col-auto,
1278
.ipu-flex-vertical > .ipu-col,
1279
.ipu-flex-vertical > [class*="ipu-flex-grow-"],
1280
.ipu-flex-vertical > .ipu-flex-col-auto {
1352
.ipu-row-flex-ver>.ipu-col,
1353
.ipu-row-flex-ver>[class*="ipu-flex-grow-"],
1354
.ipu-row-flex-ver>.ipu-flex-col-auto,
1355
.ipu-flex-vertical>.ipu-col,
1356
.ipu-flex-vertical>[class*="ipu-flex-grow-"],
1357
.ipu-flex-vertical>.ipu-flex-col-auto {
1281 1358
  height: 0;
1282 1359
  width: auto;
1283 1360
}
1284 1361
1285
.ipu-row-flex-ver > .ipu-col-auto,
1286
.ipu-row-flex-ver > .ipu-flex-grow-0,
1287
.ipu-flex-vertical > .ipu-col-auto,
1288
.ipu-flex-vertical > .ipu-flex-grow-0 {
1362
.ipu-row-flex-ver>.ipu-col-auto,
1363
.ipu-row-flex-ver>.ipu-flex-grow-0,
1364
.ipu-flex-vertical>.ipu-col-auto,
1365
.ipu-flex-vertical>.ipu-flex-grow-0 {
1289 1366
  height: auto;
1290 1367
}
1291 1368
@ -1296,7 +1373,8 @@ a:active {
1296 1373
  flex-direction: row-reverse;
1297 1374
}
1298 1375
1299
.ipu-flex-reverse.ipu-row-flex-ver, .ipu-flex-reverse.ipu-flex-vertical {
1376
.ipu-flex-reverse.ipu-row-flex-ver,
1377
.ipu-flex-reverse.ipu-flex-vertical {
1300 1378
  -webkit-box-orient: vertical;
1301 1379
  -webkit-box-direction: reverse;
1302 1380
  -webkit-flex-direction: column-reverse;
@ -1316,7 +1394,7 @@ a:active {
1316 1394
  display: flex;
1317 1395
}
1318 1396
1319
.ipu-flex-tiled > li {
1397
.ipu-flex-tiled>li {
1320 1398
  width: 0;
1321 1399
  text-align: center;
1322 1400
  display: -webkit-box;
@ -1337,7 +1415,8 @@ a:active {
1337 1415
  justify-content: center;
1338 1416
}
1339 1417
1340
.ipu-flex-tiled.ipu-flex-tiled-space > li + li, .ipu-flex-tiled.ipu-tiled-space > li + li {
1418
.ipu-flex-tiled.ipu-flex-tiled-space>li+li,
1419
.ipu-flex-tiled.ipu-tiled-space>li+li {
1341 1420
  margin-left: .1rem;
1342 1421
}
1343 1422
@ -1347,22 +1426,22 @@ a:active {
1347 1426
  table-layout: fixed;
1348 1427
}
1349 1428
1350
.ipu-tiled > li {
1429
.ipu-tiled>li {
1351 1430
  display: table-cell;
1352 1431
  width: 1%;
1353 1432
  text-align: center;
1354 1433
}
1355 1434
1356
.ipu-tiled.ipu-tiled-space > li:first-child {
1435
.ipu-tiled.ipu-tiled-space>li:first-child {
1357 1436
  padding-right: .05rem;
1358 1437
}
1359 1438
1360
.ipu-tiled.ipu-tiled-space > li + li {
1439
.ipu-tiled.ipu-tiled-space>li+li {
1361 1440
  padding-left: .05rem;
1362 1441
  padding-right: .05rem;
1363 1442
}
1364 1443
1365
.ipu-tiled.ipu-tiled-space > li:last-child {
1444
.ipu-tiled.ipu-tiled-space>li:last-child {
1366 1445
  padding-right: 0;
1367 1446
}
1368 1447
@ -1410,23 +1489,23 @@ a:active {
1410 1489
  font-size: 0.15rem;
1411 1490
}
1412 1491
1413
.ipu-card + .ipu-card {
1492
.ipu-card+.ipu-card {
1414 1493
  margin-top: .1rem;
1415 1494
}
1416 1495
1417
.ipu-card > :first-child {
1496
.ipu-card> :first-child {
1418 1497
  border-radius: 0.03rem 0.03rem 0 0;
1419 1498
}
1420 1499
1421
.ipu-card > :last-child {
1500
.ipu-card> :last-child {
1422 1501
  border-radius: 0 0 0.03rem 0.03rem;
1423 1502
}
1424 1503
1425
.ipu-card > :not(:first-child) {
1504
.ipu-card> :not(:first-child) {
1426 1505
  position: relative;
1427 1506
}
1428 1507
1429
.ipu-card > :not(:first-child):before {
1508
.ipu-card> :not(:first-child):before {
1430 1509
  content: '';
1431 1510
  position: absolute;
1432 1511
  left: 0;
@ -1498,7 +1577,7 @@ a:active {
1498 1577
  display: block;
1499 1578
}
1500 1579
1501
.ipu-card-list + .ipu-card-list {
1580
.ipu-card-list+.ipu-card-list {
1502 1581
  margin-top: .1rem;
1503 1582
}
1504 1583
@ -1519,19 +1598,19 @@ a:active {
1519 1598
  border-radius: 0;
1520 1599
}
1521 1600
1522
.ipu-list + .ipu-list {
1601
.ipu-list+.ipu-list {
1523 1602
  margin-top: .1rem;
1524 1603
}
1525 1604
1526
.ipu-list > ul {
1605
.ipu-list>ul {
1527 1606
  position: relative;
1528 1607
}
1529 1608
1530
.ipu-list > ul {
1609
.ipu-list>ul {
1531 1610
  position: relative;
1532 1611
}
1533 1612
1534
.ipu-list > ul:before {
1613
.ipu-list>ul:before {
1535 1614
  content: '';
1536 1615
  position: absolute;
1537 1616
  left: 0;
@ -1545,11 +1624,11 @@ a:active {
1545 1624
  background-color: #e7e7e7;
1546 1625
}
1547 1626
1548
.ipu-list > ul {
1627
.ipu-list>ul {
1549 1628
  position: relative;
1550 1629
}
1551 1630
1552
.ipu-list > ul:after {
1631
.ipu-list>ul:after {
1553 1632
  content: '';
1554 1633
  position: absolute;
1555 1634
  left: 0;
@ -1563,16 +1642,16 @@ a:active {
1563 1642
  background-color: #e7e7e7;
1564 1643
}
1565 1644
1566
.ipu-list > ul > li {
1645
.ipu-list>ul>li {
1567 1646
  position: relative;
1568 1647
  background-color: #fff;
1569 1648
}
1570 1649
1571
.ipu-list > ul > li:not(:last-child) .ipu-list-item-inner {
1650
.ipu-list>ul>li:not(:last-child) .ipu-list-item-inner {
1572 1651
  position: relative;
1573 1652
}
1574 1653
1575
.ipu-list > ul > li:not(:last-child) .ipu-list-item-inner:after {
1654
.ipu-list>ul>li:not(:last-child) .ipu-list-item-inner:after {
1576 1655
  content: '';
1577 1656
  position: absolute;
1578 1657
  left: 0;
@ -1616,11 +1695,13 @@ a:active {
1616 1695
  padding-bottom: 0.15rem;
1617 1696
}
1618 1697
1619
.ipu-list-item-link, .ipu-list-item-link:active {
1698
.ipu-list-item-link,
1699
.ipu-list-item-link:active {
1620 1700
  color: inherit;
1621 1701
}
1622 1702
1623
.ipu-list-item-link.ipu-active, .ipu-list-item-link:active.ipu-active {
1703
.ipu-list-item-link.ipu-active,
1704
.ipu-list-item-link:active.ipu-active {
1624 1705
  background-color: #eee;
1625 1706
}
1626 1707
@ -1723,13 +1804,13 @@ a:active {
1723 1804
  height: 1.3rem;
1724 1805
}
1725 1806
1726
.ipu-list-block > ul > li:not(:first-child),
1727
.ipu-list-block-space > ul > li:not(:first-child) {
1807
.ipu-list-block>ul>li:not(:first-child),
1808
.ipu-list-block-space>ul>li:not(:first-child) {
1728 1809
  position: relative;
1729 1810
}
1730 1811
1731
.ipu-list-block > ul > li:not(:first-child):before,
1732
.ipu-list-block-space > ul > li:not(:first-child):before {
1812
.ipu-list-block>ul>li:not(:first-child):before,
1813
.ipu-list-block-space>ul>li:not(:first-child):before {
1733 1814
  content: '';
1734 1815
  position: absolute;
1735 1816
  left: 0;
@ -1743,16 +1824,16 @@ a:active {
1743 1824
  background-color: #e7e7e7;
1744 1825
}
1745 1826
1746
.ipu-list-block > ul > li:not(:last-child) .ipu-list-item-inner:after,
1747
.ipu-list-block-space > ul > li:not(:last-child) .ipu-list-item-inner:after {
1827
.ipu-list-block>ul>li:not(:last-child) .ipu-list-item-inner:after,
1828
.ipu-list-block-space>ul>li:not(:last-child) .ipu-list-item-inner:after {
1748 1829
  content: none;
1749 1830
}
1750 1831
1751
.ipu-list-block-space > ul > li:not(:last-child):after {
1832
.ipu-list-block-space>ul>li:not(:last-child):after {
1752 1833
  position: relative;
1753 1834
}
1754 1835
1755
.ipu-list-block-space > ul > li:not(:last-child):after:after {
1836
.ipu-list-block-space>ul>li:not(:last-child):after:after {
1756 1837
  content: '';
1757 1838
  position: absolute;
1758 1839
  left: 0;
@ -1766,7 +1847,7 @@ a:active {
1766 1847
  background-color: #e7e7e7;
1767 1848
}
1768 1849
1769
.ipu-list-block-space > ul > li + li {
1850
.ipu-list-block-space>ul>li+li {
1770 1851
  margin-top: .1rem;
1771 1852
}
1772 1853
@ -1800,22 +1881,22 @@ a:active {
1800 1881
  border-radius: .02rem;
1801 1882
}
1802 1883
1803
.ipu-timeline-container > li {
1884
.ipu-timeline-container>li {
1804 1885
  position: relative;
1805 1886
  margin-bottom: .15rem;
1806 1887
}
1807 1888
1808
.ipu-timeline-container > li:before,
1809
.ipu-timeline-container > li:after {
1889
.ipu-timeline-container>li:before,
1890
.ipu-timeline-container>li:after {
1810 1891
  content: " ";
1811 1892
  display: table;
1812 1893
}
1813 1894
1814
.ipu-timeline-container > li:after {
1895
.ipu-timeline-container>li:after {
1815 1896
  clear: both;
1816 1897
}
1817 1898
1818
.ipu-timeline-container > li > .ipu-timeline-item {
1899
.ipu-timeline-container>li>.ipu-timeline-item {
1819 1900
  margin-top: 0px;
1820 1901
  background: #fff;
1821 1902
  color: #444;
@ -1824,7 +1905,7 @@ a:active {
1824 1905
  position: relative;
1825 1906
}
1826 1907
1827
.ipu-timeline-container > li > .ipu-timeline-item:after {
1908
.ipu-timeline-container>li>.ipu-timeline-item:after {
1828 1909
  border-radius: 6px;
1829 1910
  border: 1px solid #c8c7cc;
1830 1911
  display: block;
@ -1839,14 +1920,14 @@ a:active {
1839 1920
  pointer-events: none;
1840 1921
}
1841 1922
1842
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-time {
1923
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-time {
1843 1924
  color: #999;
1844 1925
  float: right;
1845 1926
  padding: .1rem;
1846 1927
  font-size: .12rem;
1847 1928
}
1848 1929
1849
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-header {
1930
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-header {
1850 1931
  margin: 0;
1851 1932
  color: #555;
1852 1933
  padding: .1rem;
@ -1854,7 +1935,7 @@ a:active {
1854 1935
  position: relative;
1855 1936
}
1856 1937
1857
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-header:after {
1938
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-header:after {
1858 1939
  border-bottom: 1px solid #ddd;
1859 1940
  display: block;
1860 1941
  content: '';
@ -1868,17 +1949,17 @@ a:active {
1868 1949
  pointer-events: none;
1869 1950
}
1870 1951
1871
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-body,
1872
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-footer {
1952
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-body,
1953
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-footer {
1873 1954
  padding: .1rem;
1874 1955
  font-size: 0.875em;
1875 1956
}
1876 1957
1877
.ipu-timeline-container > li > .ipu-timeline-item > .ipu-timeline-footer {
1958
.ipu-timeline-container>li>.ipu-timeline-item>.ipu-timeline-footer {
1878 1959
  background-color: #f4f4f4;
1879 1960
}
1880 1961
1881
.ipu-timeline-container > li.ipu-time-label > span {
1962
.ipu-timeline-container>li.ipu-time-label>span {
1882 1963
  padding: .05rem;
1883 1964
  display: inline-block;
1884 1965
  background-color: #d2d6de;
@ -1886,7 +1967,7 @@ a:active {
1886 1967
  color: #ffffff;
1887 1968
}
1888 1969
1889
.ipu-timeline-container > li > .ipu-time-label {
1970
.ipu-timeline-container>li>.ipu-time-label {
1890 1971
  width: .5rem;
1891 1972
  height: .3rem;
1892 1973
  font-size: 0.75em;
@ -1900,7 +1981,7 @@ a:active {
1900 1981
  border-radius: 4px;
1901 1982
}
1902 1983
1903
.ipu-timeline-container > li > .ipu-iconfont {
1984
.ipu-timeline-container>li>.ipu-iconfont {
1904 1985
  width: .3rem;
1905 1986
  height: .3rem;
1906 1987
  font-size: .15rem;
@ -1922,8 +2003,8 @@ a:active {
1922 2003
  line-height: 0.44rem;
1923 2004
}
1924 2005
1925
.ipu-toolbar > .ipu-fn-left,
1926
.ipu-toolbar > .ipu-fn-right {
2006
.ipu-toolbar>.ipu-fn-left,
2007
.ipu-toolbar>.ipu-fn-right {
1927 2008
  position: relative;
1928 2009
  z-index: 9;
1929 2010
  padding: 0 0.1rem;
@ -1959,7 +2040,8 @@ a:active {
1959 2040
  margin-top: .09rem;
1960 2041
}
1961 2042
1962
.ipu-toolbar-btn.ipu-current, .ipu-toolbar-btn:active {
2043
.ipu-toolbar-btn.ipu-current,
2044
.ipu-toolbar-btn:active {
1963 2045
  color: #fff;
1964 2046
  background-color: #0063a0;
1965 2047
}
@ -2031,7 +2113,11 @@ a:active {
2031 2113
  border-right: none;
2032 2114
}
2033 2115
2034
.ipu-badge, .ipu-badge-muted, .ipu-badge-num, .ipu-badge-corner, .ipu-badge-cornernum {
2116
.ipu-badge,
2117
.ipu-badge-muted,
2118
.ipu-badge-num,
2119
.ipu-badge-corner,
2120
.ipu-badge-cornernum {
2035 2121
  display: inline-block;
2036 2122
  text-align: center;
2037 2123
  background: #f74c31;
@ -2099,14 +2185,18 @@ a:active {
2099 2185
  border-radius: .1rem;
2100 2186
}
2101 2187
2102
.ipu-reddot, .ipu-reddot-border, .ipu-reddot-s {
2188
.ipu-reddot,
2189
.ipu-reddot-border,
2190
.ipu-reddot-s {
2103 2191
  position: relative;
2104 2192
  display: inline-block;
2105 2193
  line-height: .22rem;
2106 2194
  padding: 0 .06rem;
2107 2195
}
2108 2196
2109
.ipu-reddot:after, .ipu-reddot-border:after, .ipu-reddot-s:after {
2197
.ipu-reddot:after,
2198
.ipu-reddot-border:after,
2199
.ipu-reddot-s:after {
2110 2200
  content: '';
2111 2201
  position: absolute;
2112 2202
  display: block;
@ -2168,7 +2258,7 @@ a:active {
2168 2258
  height: 0;
2169 2259
}
2170 2260
2171
.ipu-category + .ipu-category {
2261
.ipu-category+.ipu-category {
2172 2262
  margin-top: .1rem;
2173 2263
}
2174 2264
@ -2283,11 +2373,11 @@ a:active {
2283 2373
  z-index: 50;
2284 2374
}
2285 2375
2286
.ipu-nav-sub > li {
2376
.ipu-nav-sub>li {
2287 2377
  border-top: 1px solid #fff;
2288 2378
}
2289 2379
2290
.ipu-nav-sub > li > a {
2380
.ipu-nav-sub>li>a {
2291 2381
  display: block;
2292 2382
  height: .32rem;
2293 2383
  line-height: .36rem;
@ -2316,7 +2406,8 @@ a:active {
2316 2406
  vertical-align: middle;
2317 2407
}
2318 2408
2319
.ipu-navbar .ipu-navbar-item.ipu-current, .ipu-navbar .ipu-navbar-item:active {
2409
.ipu-navbar .ipu-navbar-item.ipu-current,
2410
.ipu-navbar .ipu-navbar-item:active {
2320 2411
  color: #0083D3;
2321 2412
}
2322 2413
@ -2338,7 +2429,7 @@ a:active {
2338 2429
  overflow: hidden;
2339 2430
}
2340 2431
2341
.ipu-nav-content > ul {
2432
.ipu-nav-content>ul {
2342 2433
  position: relative;
2343 2434
  width: 200%;
2344 2435
  height: 100%;
@ -2347,7 +2438,7 @@ a:active {
2347 2438
  transition: all 300ms ease-out 0s;
2348 2439
}
2349 2440
2350
.ipu-nav-content > ul > li {
2441
.ipu-nav-content>ul>li {
2351 2442
  position: absolute;
2352 2443
  left: 0;
2353 2444
  top: 0;
@ -2358,15 +2449,16 @@ a:active {
2358 2449
  background-color: #f8f8f8;
2359 2450
}
2360 2451
2361
.ipu-nav-content > ul > li:first-child {
2452
.ipu-nav-content>ul>li:first-child {
2362 2453
  z-index: 1;
2363 2454
}
2364 2455
2365
.ipu-nav-content > ul > li.ipu-show ~ li.ipu-show {
2456
.ipu-nav-content>ul>li.ipu-show~li.ipu-show {
2366 2457
  left: 50%;
2367 2458
}
2368 2459
2369
.ipu-nav-content > ul > li.ipu-show, .ipu-nav-content > ul > li.ipu-current {
2460
.ipu-nav-content>ul>li.ipu-show,
2461
.ipu-nav-content>ul>li.ipu-current {
2370 2462
  z-index: 10;
2371 2463
}
2372 2464
@ -2512,7 +2604,8 @@ a:active {
2512 2604
  color: #999;
2513 2605
}
2514 2606
2515
.ipu-poppicker[data-type='date'] label, .ipu-poppicker[data-type='date'] .ipu-picker {
2607
.ipu-poppicker[data-type='date'] label,
2608
.ipu-poppicker[data-type='date'] .ipu-picker {
2516 2609
  width: 33.33%;
2517 2610
}
2518 2611
@ -2523,7 +2616,8 @@ a:active {
2523 2616
  display: none;
2524 2617
}
2525 2618
2526
.ipu-poppicker[data-type='time'] label, .ipu-poppicker[data-type='time'] .ipu-picker {
2619
.ipu-poppicker[data-type='time'] label,
2620
.ipu-poppicker[data-type='time'] .ipu-picker {
2527 2621
  width: 50%;
2528 2622
}
2529 2623
@ -2536,7 +2630,8 @@ a:active {
2536 2630
  display: none;
2537 2631
}
2538 2632
2539
.ipu-poppicker[data-type='hour'] label, .ipu-poppicker[data-type='hour'] .ipu-picker {
2633
.ipu-poppicker[data-type='hour'] label,
2634
.ipu-poppicker[data-type='hour'] .ipu-picker {
2540 2635
  width: 25%;
2541 2636
}
2542 2637
@ -2545,7 +2640,8 @@ a:active {
2545 2640
  display: none;
2546 2641
}
2547 2642
2548
.ipu-poppicker[data-type='month'] label, .ipu-poppicker[data-type='month'] .ipu-picker {
2643
.ipu-poppicker[data-type='month'] label,
2644
.ipu-poppicker[data-type='month'] .ipu-picker {
2549 2645
  width: 50%;
2550 2646
}
2551 2647
@ -2600,7 +2696,8 @@ a:active {
2600 2696
  display: block;
2601 2697
}
2602 2698
2603
.ipu-pages.ipu-anim, .ipu-page.ipu-anim {
2699
.ipu-pages.ipu-anim,
2700
.ipu-page.ipu-anim {
2604 2701
  overflow: auto;
2605 2702
  box-shadow: -0.01rem 0rem rgba(0, 0, 0, 0.6);
2606 2703
}
@ -2619,6 +2716,7 @@ a:active {
2619 2716
    -webkit-transform: translate3d(100%, 0, 0);
2620 2717
    transform: translate3d(100%, 0, 0);
2621 2718
  }
2719
2622 2720
  100% {
2623 2721
    -webkit-transform: translate3d(0%, 0, 0);
2624 2722
    transform: translate3d(0%, 0, 0);
@ -2630,6 +2728,7 @@ a:active {
2630 2728
    -webkit-transform: translate3d(0%, 0, 0);
2631 2729
    transform: translate3d(0%, 0, 0);
2632 2730
  }
2731
2633 2732
  100% {
2634 2733
    -webkit-transform: translate3d(100%, 0, 0);
2635 2734
    transform: translate3d(100%, 0, 0);
@ -2694,7 +2793,7 @@ a:active {
2694 2793
  /* 撑起高度 */
2695 2794
}
2696 2795
2697
.ipu-carousel-wrapper > li {
2796
.ipu-carousel-wrapper>li {
2698 2797
  float: left;
2699 2798
  width: 5%;
2700 2799
}
@ -2732,7 +2831,7 @@ a:active {
2732 2831
  overflow: visible;
2733 2832
}
2734 2833
2735
.ipu-hammer-carousel .ipu-carousel-wrapper > li {
2834
.ipu-hammer-carousel .ipu-carousel-wrapper>li {
2736 2835
  position: relative;
2737 2836
  display: inline-block;
2738 2837
  width: 100%;
@ -2742,7 +2841,9 @@ a:active {
2742 2841
  float: none;
2743 2842
}
2744 2843
2745
.ipu-modal-overlay, .ipu-preloader-indicator-overlay, .ipu-popup-overlay {
2844
.ipu-modal-overlay,
2845
.ipu-preloader-indicator-overlay,
2846
.ipu-popup-overlay {
2746 2847
  position: absolute;
2747 2848
  left: 0;
2748 2849
  top: 0;
@ -2756,7 +2857,9 @@ a:active {
2756 2857
  transition-duration: 300ms;
2757 2858
}
2758 2859
2759
.ipu-modal-overlay.ipu-modal-overlay-visible, .ipu-preloader-indicator-overlay.ipu-modal-overlay-visible, .ipu-popup-overlay.ipu-modal-overlay-visible {
2860
.ipu-modal-overlay.ipu-modal-overlay-visible,
2861
.ipu-preloader-indicator-overlay.ipu-modal-overlay-visible,
2862
.ipu-popup-overlay.ipu-modal-overlay-visible {
2760 2863
  visibility: visible;
2761 2864
  opacity: 1;
2762 2865
}
@ -2817,7 +2920,7 @@ a:active {
2817 2920
  text-align: center;
2818 2921
}
2819 2922
2820
.ipu-modal-title + .ipu-modal-text {
2923
.ipu-modal-title+.ipu-modal-text {
2821 2924
  margin-top: 0.05rem;
2822 2925
}
2823 2926
@ -2876,7 +2979,8 @@ a:active {
2876 2979
  font-weight: 500;
2877 2980
}
2878 2981
2879
html:not(.ipu-watch-active-state) .ipu-modal-button:active, .ipu-modal-button.active-state {
2982
html:not(.ipu-watch-active-state) .ipu-modal-button:active,
2983
.ipu-modal-button.active-state {
2880 2984
  background: #d4d4d4;
2881 2985
}
2882 2986
@ -2930,7 +3034,8 @@ html:not(.ipu-watch-active-state) .ipu-modal-button:active, .ipu-modal-button.ac
2930 3034
  margin: .08rem;
2931 3035
}
2932 3036
2933
.ipu-actions-modal-button, .ipu-actions-modal-label {
3037
.ipu-actions-modal-button,
3038
.ipu-actions-modal-label {
2934 3039
  width: 100%;
2935 3040
  text-align: center;
2936 3041
  font-weight: normal;
@ -2941,59 +3046,72 @@ html:not(.ipu-watch-active-state) .ipu-modal-button:active, .ipu-modal-button.ac
2941 3046
  border-bottom: 1px solid #d2d2d6;
2942 3047
}
2943 3048
2944
.ipu-actions-modal-button.ipu-actions-modal-button-warning, .ipu-actions-modal-label.ipu-actions-modal-button-warning {
3049
.ipu-actions-modal-button.ipu-actions-modal-button-warning,
3050
.ipu-actions-modal-label.ipu-actions-modal-button-warning {
2945 3051
  color: #ff4222;
2946 3052
}
2947 3053
2948
.ipu-actions-modal-button.ipu-color-warning, .ipu-actions-modal-label.ipu-color-warning {
3054
.ipu-actions-modal-button.ipu-color-warning,
3055
.ipu-actions-modal-label.ipu-color-warning {
2949 3056
  color: #ff4222;
2950 3057
}
2951 3058
2952
.ipu-actions-modal-button.ipu-color-highlight, .ipu-actions-modal-label.ipu-color-highlight {
3059
.ipu-actions-modal-button.ipu-color-highlight,
3060
.ipu-actions-modal-label.ipu-color-highlight {
2953 3061
  color: #ff8444;
2954 3062
}
2955 3063
2956
.ipu-actions-modal-button.ipu-bg-primary, .ipu-actions-modal-label.ipu-bg-primary {
3064
.ipu-actions-modal-button.ipu-bg-primary,
3065
.ipu-actions-modal-label.ipu-bg-primary {
2957 3066
  background: #0083D3;
2958 3067
  color: white;
2959 3068
}
2960 3069
2961
.ipu-actions-modal-button.ipu-bg-primary:active, .ipu-actions-modal-label.ipu-bg-primary:active {
3070
.ipu-actions-modal-button.ipu-bg-primary:active,
3071
.ipu-actions-modal-label.ipu-bg-primary:active {
2962 3072
  background: #0063a0;
2963 3073
}
2964 3074
2965
.ipu-actions-modal-button.ipu-bg-warning, .ipu-actions-modal-label.ipu-bg-warning {
3075
.ipu-actions-modal-button.ipu-bg-warning,
3076
.ipu-actions-modal-label.ipu-bg-warning {
2966 3077
  background: #ff4222;
2967 3078
  color: white;
2968 3079
}
2969 3080
2970
.ipu-actions-modal-button.ipu-bg-warning:active, .ipu-actions-modal-label.ipu-bg-warning:active {
3081
.ipu-actions-modal-button.ipu-bg-warning:active,
3082
.ipu-actions-modal-label.ipu-bg-warning:active {
2971 3083
  background: #ee2200;
2972 3084
}
2973 3085
2974
.ipu-actions-modal-button.ipu-bg-hightlight, .ipu-actions-modal-label.ipu-bg-hightlight {
3086
.ipu-actions-modal-button.ipu-bg-hightlight,
3087
.ipu-actions-modal-label.ipu-bg-hightlight {
2975 3088
  background: #ff8444;
2976 3089
  color: white;
2977 3090
}
2978 3091
2979
.ipu-actions-modal-button.ipu-bg-hightlight:active, .ipu-actions-modal-label.ipu-bg-hightlight:active {
3092
.ipu-actions-modal-button.ipu-bg-hightlight:active,
3093
.ipu-actions-modal-label.ipu-bg-hightlight:active {
2980 3094
  background: #ff6211;
2981 3095
}
2982 3096
2983
.ipu-actions-modal-button:first-child, .ipu-actions-modal-label:first-child {
3097
.ipu-actions-modal-button:first-child,
3098
.ipu-actions-modal-label:first-child {
2984 3099
  border-radius: 4px 4px 0 0;
2985 3100
}
2986 3101
2987
.ipu-actions-modal-button:last-child, .ipu-actions-modal-label:last-child {
3102
.ipu-actions-modal-button:last-child,
3103
.ipu-actions-modal-label:last-child {
2988 3104
  border-bottom: none;
2989 3105
  border-radius: 0 0 4px 4px;
2990 3106
}
2991 3107
2992
.ipu-actions-modal-button:first-child:last-child, .ipu-actions-modal-label:first-child:last-child {
3108
.ipu-actions-modal-button:first-child:last-child,
3109
.ipu-actions-modal-label:first-child:last-child {
2993 3110
  border-radius: 4px;
2994 3111
}
2995 3112
2996
.ipu-actions-modal-button.ipu-disabled, .ipu-actions-modal-label.ipu-disabled {
3113
.ipu-actions-modal-button.ipu-disabled,
3114
.ipu-actions-modal-label.ipu-disabled {
2997 3115
  opacity: 0.95;
2998 3116
  color: #8e8e93;
2999 3117
}
@ -3005,7 +3123,8 @@ html:not(.ipu-watch-active-state) .ipu-modal-button:active, .ipu-modal-button.ac
3005 3123
  color: #0083D3;
3006 3124
}
3007 3125
3008
.ipu-actions-modal-button:active, .ipu-actions-modal-button.ipu-current-state {
3126
.ipu-actions-modal-button:active,
3127
.ipu-actions-modal-button.ipu-current-state {
3009 3128
  background: #dcdcdc;
3010 3129
}
3011 3130
@ -3047,7 +3166,7 @@ input.ipu-modal-text-input {
3047 3166
  appearance: none;
3048 3167
}
3049 3168
3050
input.ipu-modal-text-input + input.ipu-modal-text-input {
3169
input.ipu-modal-text-input+input.ipu-modal-text-input {
3051 3170
  margin-top: .05rem;
3052 3171
}
3053 3172
@ -3055,13 +3174,14 @@ input.ipu-modal-text-input.ipu-modal-text-input-double {
3055 3174
  border-radius: 5px 5px 0 0;
3056 3175
}
3057 3176
3058
input.ipu-modal-text-input.ipu-modal-text-input-double + input.ipu-modal-text-input {
3177
input.ipu-modal-text-input.ipu-modal-text-input-double+input.ipu-modal-text-input {
3059 3178
  margin-top: 0;
3060 3179
  border-top: 0;
3061 3180
  border-radius: 0 0 5px 5px;
3062 3181
}
3063 3182
3064
.ipu-popup, .ipu-login-screen {
3183
.ipu-popup,
3184
.ipu-login-screen {
3065 3185
  position: absolute;
3066 3186
  left: 0;
3067 3187
  top: 0;
@ -3080,17 +3200,22 @@ input.ipu-modal-text-input.ipu-modal-text-input-double + input.ipu-modal-text-in
3080 3200
  transform: translate3d(0, 100%, 0);
3081 3201
}
3082 3202
3083
.ipu-popup.ipu-modal-in, .ipu-popup.ipu-modal-out, .ipu-login-screen.ipu-modal-in, .ipu-login-screen.ipu-modal-out {
3203
.ipu-popup.ipu-modal-in,
3204
.ipu-popup.ipu-modal-out,
3205
.ipu-login-screen.ipu-modal-in,
3206
.ipu-login-screen.ipu-modal-out {
3084 3207
  -webkit-transition-duration: 300ms;
3085 3208
  transition-duration: 300ms;
3086 3209
}
3087 3210
3088
.ipu-popup.ipu-modal-in, .ipu-login-screen.ipu-modal-in {
3211
.ipu-popup.ipu-modal-in,
3212
.ipu-login-screen.ipu-modal-in {
3089 3213
  -webkit-transform: translate3d(0, 0, 0);
3090 3214
  transform: translate3d(0, 0, 0);
3091 3215
}
3092 3216
3093
.ipu-popup.ipu-modal-out, .ipu-login-screen.ipu-modal-out {
3217
.ipu-popup.ipu-modal-out,
3218
.ipu-login-screen.ipu-modal-out {
3094 3219
  -webkit-transform: translate3d(0, 100%, 0);
3095 3220
  transform: translate3d(0, 100%, 0);
3096 3221
}
@ -3105,7 +3230,8 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3105 3230
  z-index: 9800;
3106 3231
}
3107 3232
3108
@media all and (max-width: 629px), (max-height: 629px) {
3233
@media all and (max-width: 629px),
3234
(max-height: 629px) {
3109 3235
  html.ipu-with-statusbar-overlay .ipu-popup {
3110 3236
    height: -webkit-calc(100% - 20px);
3111 3237
    height: calc(100% - 20px);
@ -3264,7 +3390,7 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3264 3390
  background-color: #fff;
3265 3391
}
3266 3392
3267
.ipu-tab-title > li {
3393
.ipu-tab-title>li {
3268 3394
  width: 0%;
3269 3395
  -webkit-box-flex: 1;
3270 3396
  -webkit-flex-grow: 1;
@ -3273,15 +3399,15 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3273 3399
  line-height: 0.45rem;
3274 3400
}
3275 3401
3276
.ipu-tab-title > li.active {
3402
.ipu-tab-title>li.active {
3277 3403
  position: relative;
3278 3404
}
3279 3405
3280
.ipu-tab-title-link > li {
3406
.ipu-tab-title-link>li {
3281 3407
  border-bottom: 1px solid #e0e0e0;
3282 3408
}
3283 3409
3284
.ipu-tab-title-link > li.ipu-current {
3410
.ipu-tab-title-link>li.ipu-current {
3285 3411
  border-bottom: 2px solid #0083D3;
3286 3412
  color: #0083D3;
3287 3413
}
@ -3293,31 +3419,31 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3293 3419
  margin: .1rem;
3294 3420
}
3295 3421
3296
.ipu-tab-title-button > li {
3422
.ipu-tab-title-button>li {
3297 3423
  border-left: 1px solid #0083D3;
3298 3424
  font-size: 0.12rem;
3299 3425
  line-height: 2;
3300 3426
}
3301 3427
3302
.ipu-tab-title-button > li.ipu-current {
3428
.ipu-tab-title-button>li.ipu-current {
3303 3429
  background-color: #0083D3;
3304 3430
  color: #fff;
3305 3431
  border-bottom: none;
3306 3432
}
3307 3433
3308
.ipu-tab-title-button > li:first-child {
3434
.ipu-tab-title-button>li:first-child {
3309 3435
  border-left: none;
3310 3436
}
3311 3437
3312
.ipu-tab-title-button > li:last-child {
3438
.ipu-tab-title-button>li:last-child {
3313 3439
  border-right: none;
3314 3440
}
3315 3441
3316
.ipu-tab-body-wrapper > li {
3442
.ipu-tab-body-wrapper>li {
3317 3443
  display: none;
3318 3444
}
3319 3445
3320
.ipu-tab-body-wrapper > li.ipu-current {
3446
.ipu-tab-body-wrapper>li.ipu-current {
3321 3447
  display: block;
3322 3448
}
3323 3449
@ -3335,20 +3461,20 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3335 3461
  flex-direction: column;
3336 3462
}
3337 3463
3338
.ipu-tab-fixed > .ipu-tab-title {
3464
.ipu-tab-fixed>.ipu-tab-title {
3339 3465
  -webkit-box-flex: 0;
3340 3466
  -webkit-flex-grow: 0;
3341 3467
  flex-grow: 0;
3342 3468
}
3343 3469
3344
.ipu-tab-fixed > .ipu-tab-body {
3470
.ipu-tab-fixed>.ipu-tab-body {
3345 3471
  -webkit-box-flex: 1;
3346 3472
  -webkit-flex-grow: 1;
3347 3473
  flex-grow: 1;
3348 3474
  position: relative;
3349 3475
}
3350 3476
3351
.ipu-tab-fixed > .ipu-tab-body > .ipu-tab-body-wrapper {
3477
.ipu-tab-fixed>.ipu-tab-body>.ipu-tab-body-wrapper {
3352 3478
  width: 100%;
3353 3479
  height: 100%;
3354 3480
  position: absolute;
@ -3357,7 +3483,7 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3357 3483
  overflow-x: visible;
3358 3484
}
3359 3485
3360
.ipu-tab-fixed > .ipu-tab-body > .ipu-tab-body-wrapper > li {
3486
.ipu-tab-fixed>.ipu-tab-body>.ipu-tab-body-wrapper>li {
3361 3487
  position: relative;
3362 3488
  height: 100%;
3363 3489
  font-size: 0.15rem;
@ -3828,4 +3954,4 @@ html.ipu-with-statusbar-overlay .ipu-popup-overlay {
3828 3954
3829 3955
.ipu-visibility-visible {
3830 3956
  visibility: visible;
3831
}
3957
}

+ 2 - 2
show-server/src/main/webapp/template/webapp/more/invokeIPU/showParams.html

@ -71,8 +71,8 @@
71 71
</div>
72 72

73 73
<script type="text/javascript">
74
require(['wadeMobile', 'jquery'], function (WadeMobile, $) {
75
   WadeMobile.getMemoryCache(function(data){
74
require(['ipuMobile', 'jquery'], function (IpuMobile, $) {
75
   IpuMobile.getMemoryCache(function(data){
76 76
       $("#context_params").val(data);
77 77
	},"PAGE_CONTEXT");
78 78


+ 2 - 2
show-server/src/main/webapp/template/webapp/more/reactNative.html

@ -122,9 +122,9 @@
122 122
    		var callback = function (number) {
123 123
    			$("#number_text").html("手机号码:" + number);
124 124
    		};
125
    	    WadeMobile.openRN("PHONENUMBER", callback);
125
    	    IpuMobile.openRN("PHONENUMBER", callback);
126 126
    	} else {
127
    		WadeMobile.openRN(this.id);
127
    		IpuMobile.openRN(this.id);
128 128
    	}
129 129
    });
130 130
}); -->

+ 1 - 3
show-server/src/main/webapp/template/webapp/plugins/customCamera.html

@ -65,9 +65,7 @@
65 65
							<button class="ipu-btn" id="take_id_picture_back">测试</button>
66 66
						</div>
67 67
					</div>
68
					
69
					
70
					
68
71 69
				</div>
72 70
			</div>
73 71
		</div>

+ 15 - 0
show-server/src/main/webapp/template/webapp/plugins/photo.html

@ -48,6 +48,21 @@
48 48
							<button class="ipu-btn" id="search">测试</button>
49 49
						</div>
50 50
					</div>
51
					
52
					<div class="ipu-card ipu-card-block">
53
						<div class="ipu-card-header">加水印</div>
54
						<div class="ipu-card-content">
55
							<div class="ipu-card-content-inner">
56
								<div class="">先选择一张图片,然后选择水印图片,添加到原图片上</div>
57
								<div id="pic0">
58
									<button class="ipu-btn" id="get_pic">选择图片</button>
59
								</div>
60
							</div>
61
						</div>
62
						<div class="ipu-card-footer">
63
							<button class="ipu-btn" id="add_mark">测试</button>
64
						</div>
65
					</div>
51 66
52 67
					<!-- 	<div class="demo-item">
53 68
						<div class="demo-title">拍照</div>

+ 19 - 2
show-server/src/main/webapp/template/webapp/plugins/safe/screenCapture.html

@ -20,9 +20,26 @@
20 20
21 21
        <div class="ipu-flex-col-auto" id='content'>
22 22
            <div class="ipu-fn-p">
23
                <div class="ipu-btn" id="closeScreenCapture">止截屏</div>
24
                <div class="ipu-btn" id="openScreenCapture">能够截屏</div>
23
                <div class="ipu-btn" id="closeScreenCapture">止截屏</div>
24
                <div class="ipu-btn" id="openScreenCapture">允许截屏</div>
25
                <div class="ipu-btn" id="executeScreenCapture">截屏</div>
25 26
            </div>
27
            
28
            
29
            
30
            <div class="ipu-card ipu-card-block">
31
				<div class="ipu-card-content">
32
					<div class="ipu-card-content-inner">
33
						<div class="">截屏调用结果信息</div>
34
						<div id="screenCapture_pic"></div>
35
						<div id="screenCapture_path"></div>
36
					</div>
37
				</div>
38
			</div>
39
            
40
            
41
            
42
            
26 43
        </div>
27 44
28 45
    </div>

+ 2 - 0
show-server/src/main/webapp/template/webapp/plugins/share.html

@ -33,7 +33,9 @@
33 33
								</div>
34 34
								<div class=" ipu-fn-m-t">
35 35
									<button class="ipu-btn" id="qqFriendText">QQ好友</button>
36
									<button class="ipu-btn" id="qqZoneText">QQ空间</button>
36 37
									<button class="ipu-btn" id="wechatFriendText">微信好友</button>
38
									<button class="ipu-btn" id="wechatTimeLineText">微信朋友圈</button>
37 39
									<button class="ipu-btn" id="moreText">更多分享</button>
38 40
								</div>
39 41
							</div>

+ 20 - 0
show-server/src/main/webapp/template/webapp/plugins/video.html

@ -31,6 +31,26 @@
31 31
						</div>
32 32
					</div>
33 33
					
34
					<div class="demo-item">
35
						<div class="demo-title">IPU视频录制</div>
36
						<div class="demo-body">
37
							<div class="demo-content">打开视频录制界面,可通过参数控制分辨率、码率和选择前后置摄像头</div>
38
							<div class="demo-content">
39
								<button class="ipu-btn ipu-btn-highlight" id="ipu_record">IPU视频录制</button>
40
							</div>
41
						</div>
42
					</div>
43
					
44
					<div class="demo-item">
45
						<div class="demo-title">带水印视频录制</div>
46
						<div class="demo-body">
47
							<div class="demo-content">设置一个水印图片,可录制带水印的视频</div>
48
							<div class="demo-content">
49
								<button class="ipu-btn ipu-btn-highlight" id="water_record">水印视频录制</button>
50
							</div>
51
						</div>
52
					</div>
53
					
34 54
					<div class="demo-item ipu-fn-hide" id="hiddenContent" >
35 55
						<div class="demo-title">播放视频</div>
36 56
						<div class="demo-body">

解绑查询关联关系 · 7b5bd7fc8f - Nuosi Git Service
Parcourir la Source

解绑查询关联关系

wangchao 4 ans auparavant
Parent
commit
7b5bd7fc8f

+ 2 - 5
location-rescue-service/src/main/java/com/ai/bss/location/rescue/controller/DeviceManageController.java

@ -4,8 +4,6 @@ import java.util.HashMap;
4 4
import java.util.List;
5 5
import java.util.Map;
6 6
7
import org.slf4j.Logger;
8
import org.slf4j.LoggerFactory;
9 7
import org.springframework.beans.factory.annotation.Autowired;
10 8
import org.springframework.stereotype.Controller;
11 9
import org.springframework.web.bind.annotation.RequestBody;
@ -17,7 +15,6 @@ import com.ai.bss.characteristic.spec.model.CharacteristicSpecValue;
17 15
import com.ai.bss.location.rescue.service.interfaces.DeviceManageService;
18 16
import com.ai.bss.location.rescue.util.EbcConstant;
19 17
import com.ai.bss.location.rescue.util.NorthboundInterfaceConstant;
20
import com.ai.bss.user.dto.UserDto;
21 18
22 19
/**
23 20
 * 终端管理
@ -213,8 +210,8 @@ public class DeviceManageController {
213 210
	 */
214 211
	@ResponseBody
215 212
	@RequestMapping("/queryAssociatInfo")
216
	public Map<String, Object> queryAssociatInfo(@RequestBody Map<String, String> params) throws Exception {
217
		List<Map<String, Object>> userList = deviceManageService.queryAssociatInfo(params);
213
	public Map<String, Object> queryAssociatInfo(@RequestBody Map<String, Object> params) throws Exception {
214
		List<? extends Object> userList =  deviceManageService.queryAssociatInfo(params);
218 215
		Map<String, Object> result = new HashMap<String, Object>();
219 216
		result.put("result", userList);
220 217
		return result;

+ 2 - 1
location-rescue-service/src/main/java/com/ai/bss/location/rescue/controller/EquipmentManageController.java

@ -98,7 +98,8 @@ public class EquipmentManageController {
98 98
	@ResponseBody
99 99
	@RequestMapping("/modifyEquipmentInfo")
100 100
	public CommonResponse<ResourceTool> modifyEquipmentInfo(@RequestBody CommonRequest<ResourceTool> resourceToolCommonRequest) throws Exception {
101
			return equipmentManageService.modifyEquipmentInfo(resourceToolCommonRequest);
101
		resourceToolCommonRequest.getData().setWorkOrgId("0000");
102
		return equipmentManageService.modifyEquipmentInfo(resourceToolCommonRequest);
102 103
	}
103 104
104 105
	/**

+ 57 - 23
location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/impl/DeviceManageServiceImpl.java

@ -5,6 +5,10 @@ import java.util.HashMap;
5 5
import java.util.List;
6 6
import java.util.Map;
7 7
8
import com.ai.bss.components.common.model.PageBean;
9
import com.ai.bss.user.dto.UserDto;
10
import com.ai.bss.user.service.api.UserDtoQuery;
11
import com.sun.org.apache.xpath.internal.objects.XString;
8 12
import org.slf4j.Logger;
9 13
import org.slf4j.LoggerFactory;
10 14
import org.springframework.beans.factory.annotation.Autowired;
@ -54,6 +58,11 @@ public class DeviceManageServiceImpl implements DeviceManageService {
54 58
	@Autowired
55 59
	ResourceToolCommand resourceToolCommand;
56 60
61
	@Autowired
62
	UserDtoQuery userDtoQuery;
63
64
65
57 66
	@Override
58 67
	public Map<String, Object> queryPageDeviceInfo(Map<String, String> params, int pageNumber, int pageSize)
59 68
			throws Exception {
@ -308,29 +317,40 @@ public class DeviceManageServiceImpl implements DeviceManageService {
308 317
309 318
	@Override
310 319
	public Map<String, Object> queryBindDeviceInfo(Map<String, String> params) throws Exception {
320
		//组合中台需要的终端id list参数集合
311 321
		List<String> deviceIdList=new ArrayList<String>();
312 322
		deviceIdList.add(params.get("deviceId"));
313 323
		HashMap<String, Object> deviceIdListMap=new HashMap<String, Object>();
314 324
		deviceIdListMap.put("deviceIdList", deviceIdList);
315
		
316
		
317
		
325
		//定义返回参数map
326
		Map<String, Object> returnMap= new HashMap<>();
318 327
		// 终端与人员绑定
319 328
		CommonResponse<List<EmployeeTerminalRelaDto>> bindEmployeeInfoCommon = employeeTerminalRelaQuery
320 329
				.queryIndividualDevRela(new CommonRequest<List<String>>(deviceIdList));
321 330
		List<EmployeeTerminalRelaDto> bindEmployeeInfoList = bindEmployeeInfoCommon.getData();
322
		
323
		
324
		
325
		// 终端与工具绑定
326
		CommonResponse<PageInfo<Map<String, Object>>> bindToolInfoCommon = resourceToolQuery
327
				.queryWorkToolsDevRela(new CommonRequest<HashMap<String, Object>>(deviceIdListMap));
328
		List<Map<String, Object>> bindToolInfoList = bindToolInfoCommon.getData().getData();
329
			
330
			
331
			
332
		
333
		return null;
331
332
		if(!bindEmployeeInfoList.isEmpty()){
333
			EmployeeTerminalRelaDto employeeTerminalRelaDto = bindEmployeeInfoList.get(0);
334
			returnMap.put("deviceId",params.get("deviceId"));
335
			returnMap.put("name",employeeTerminalRelaDto.getName());
336
			returnMap.put("relaType",employeeTerminalRelaDto.getRelaType());
337
			returnMap.put("employeeTerminalRelaId",employeeTerminalRelaDto.getEmployeeTerminalRelaId());
338
			returnMap.put("code",employeeTerminalRelaDto.getCode());
339
			returnMap.put("workEmployeeId",employeeTerminalRelaDto.getWorkEmployeeId());
340
			returnMap.put("bindType",EbcConstant.BIND_DEVICE_TYPE_USER);
341
			return returnMap;
342
		}else{
343
			// 终端与工具绑定
344
			CommonResponse<PageInfo<Map<String, Object>>> bindToolInfoCommon = resourceToolQuery
345
					.queryWorkToolsDevRela(new CommonRequest<HashMap<String, Object>>(deviceIdListMap));
346
			List<Map<String, Object>> bindToolInfoList = bindToolInfoCommon.getData().getData();
347
			if(!bindToolInfoList.isEmpty()){
348
				Map<String, Object> stringObjectMap = bindToolInfoList.get(0);
349
				returnMap.put("bindType",EbcConstant.BIND_DEVICE_TYPE_SHIP);
350
				return stringObjectMap;
351
			}
352
			return null;
353
		}
334 354
	}
335 355
336 356
	@Override
@ -351,14 +371,28 @@ public class DeviceManageServiceImpl implements DeviceManageService {
351 371
	}
352 372
353 373
	@Override
354
	public List<Map<String, Object>> queryAssociatInfo(Map<String, String> params) throws Exception {
355
		if (EbcConstant.BIND_DEVICE_TYPE_USER.equals(params.get("type"))) {
356
			// 类型是用户,查询用户列表
357
			
358
			
359
		} else if (EbcConstant.BIND_DEVICE_TYPE_SHIP.equals(params.get("type"))) {
360
			// 类型是船舶,查询船舶列表
361
			
374
	public List<? extends Object> queryAssociatInfo(Map<String, Object> params) throws Exception {
375
		if (EbcConstant.BIND_DEVICE_TYPE_USER.equals(params.get("bindType"))) {
376
377
			// 类型是用户,查询用户列表,模糊查询
378
			UserDto userDto=new UserDto();
379
			String username=(params.get("name")!=null||!"".equals(params.get("name")))?(String) params.get("name"):null;
380
			userDto.setName(username);
381
			userDto.setOrgCode("0000");
382
			CommonRequest<UserDto> request = CommonRequest.<UserDto>builder().data(userDto).pageNumber(1).pageSize(15).build();
383
			CommonResponse<List<UserDto>> listCommonResponse = userDtoQuery.queryWorkEmployeeByOrg(request);
384
			List<UserDto> userDtoList = listCommonResponse.getData();
385
			return  userDtoList;
386
		} else if (EbcConstant.BIND_DEVICE_TYPE_SHIP.equals(params.get("bindType"))) {
387
			// 类型是船舶,查询船舶列表,模糊查询
388
			// "workOrgId" : 组织ID
389
			//  "isAllowBindTerminal" : 该工具是否可绑定,'0'--不可绑定,'1' -- 可绑定
390
			params.put("workOrgId", "0000");
391
			params.put("isAllowBindTerminal", "0");
392
			CommonRequest<HashMap<String, Object>> conditionMap = new CommonRequest<>((HashMap<String, Object>) params);
393
			CommonResponse<PageInfo<Map<String, Object>>> pageInfoCommonResponse = resourceToolQuery.queryWorkToolByOrgAndBindFlag(conditionMap);
394
			List<Map<String, Object>> shipList = pageInfoCommonResponse.getData().getData();
395
			return shipList;
362 396
		}
363 397
		return null;
364 398
	}

+ 2 - 1
location-rescue-service/src/main/java/com/ai/bss/location/rescue/service/interfaces/DeviceManageService.java

@ -3,6 +3,7 @@ package com.ai.bss.location.rescue.service.interfaces;
3 3
import java.util.List;
4 4
import java.util.Map;
5 5
6
import com.sun.org.apache.xpath.internal.objects.XString;
6 7
import org.springframework.web.bind.annotation.RequestBody;
7 8
8 9
import com.ai.bss.characteristic.spec.model.CharacteristicSpecValue;
@ -91,7 +92,7 @@ public interface DeviceManageService {
91 92
	* @return
92 93
	* @throws Exception
93 94
	*/
94
	List<Map<String, Object>> queryAssociatInfo(Map<String, String> params) throws Exception;
95
	List<? extends Object> queryAssociatInfo(Map<String, Object> params) throws Exception;
95 96
96 97
	/**
97 98
	 * 获取下拉列表的终端信息