//一卡通卡号****格式化 function cardFmt(card) { if(card){ var no = card; var tmp = "****************"; if(card.length>=16){ no = card.substr(0,16); var reg = /^(\d{8})\d{4}(\d{4})$/; no = no.replace(reg, "$1****$2"); return no; }else{ no = card + tmp.substr(0,16 - card.length); return no; } }else{ return card; } } //手机号码****格式化 function phoneFmt(tel) { if(tel){ var reg = /^(\d{3})\d{4}(\d{4})$/; tel = tel.replace(reg, "$1****$2"); return tel; }else{ return tel; } } //金额格式化 function moneyFmt(s, n) { if(s==0){ return '0.00'; } if(!s){ return s; } n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1]; t = ""; for (i = 0; i < l.length; i++) { t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); } return t.split("").reverse().join("") + "." + r; } //绝对值金额格式化 function moneyFmt1(s, n) { if(s==0){ return '0.00'; } if(!s){ return s; } if(s<0){ s1=Math.abs(s); n = n > 0 && n <= 20 ? n : 2; s2=s1.toFixed(n); return s2; } n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1]; t = ""; for (i = 0; i < l.length; i++) { t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); } return t.split("").reverse().join("") + "." + r; } /** * 数据链接格式化 * * @returns {Function} */ function linkFmt() { // 双引号:"\"", """ return function(value) { if (value) { var b = new Base64(); var value1 = "'" + b.encode(value) + "'"; return '详细'; } else { return value; } }; } /** * 标准数据格式对象方法 支持单数据和逗号分隔多数据 * * @param id * 标准数据ID * @returns {Function} */ function dataFmt(id) { return function(value) { return dataFormat(id, value); }; } /** * 验证框封装 * * @param isNeed * 是否必输 * @param valiRule * 验证规则 * @param minL * 最小长度 * @param maxL * 最大长度 * @param tips * 当文本框为空时出现的提示文本。 * @returns editor */ function valiBoxEtr(isNeed, valiRule, minL, maxL, tips) { var editor = { type : 'validatebox', options : { required : false, validType : [] } }; if (tips) { editor.options.missingMessage = tips; } if (isNeed) { editor.options.required = isNeed; } var array = new Array(); if (valiRule && valiRule != '') { array.push(valiRule); } if (minL && maxL) { array.push('length[' + minL + ',' + maxL + ']'); } editor.options.validType = array; return editor; } /** * comboBox编辑对象,只为单选 * * @param id * 标准数据ID * @param del_id * 要删除的object的id值 * @returns Editor */ function comboBoxEtr(id,del_id) { data = getListData(id); //console.log(data); for (var i = data.length-1; i>=0; i--){ if (data[i].id==del_id){ data.splice(i,1); break; } } return { type : 'combobox', options : { editable : false, required : true, data : data, valueField : 'id', textField : 'text', panelHeight : 'auto' } }; } /** * comboBox编辑对象,只为单选,显示给定内容列表 * @param channelList 要显示的内容列表list * @param editable 是否可编辑 * @param required 是否要求必填 * @returns Editor */ function comboBox_Etr(list, editable, required) { var editer = { type : 'combobox', options : { editable : false, required : false, data : list, valueField : 'id', textField : 'text', panelHeight : '200' } }; if (editable) { editer.options.editable = editable; } if (required) { editer.options.required = required; } return editer; } /** * ","分割格式对象方法,支持单个和多个 * * @param list,取数的数组 * @param id * @param name * @returns {Function} */ function listFmt(list, id, name) { return function(value) { return listFormat(list, value, id, name); }; } /** * combogrid编辑对象,通过标准数据获取数组 * * @param code * 标准数据编码 * @param required * 是否必输 * @param editable * 是否可编辑 * @returns Editor */ function comboGrid_Etr(code, required, editable) { data = getListData(code); var editer = { type : 'combogrid', options : { editable : false, required : false, panelWidth : 200, multiple : true, idField : 'id', textField : 'text', data : data, columns : [ [ { field : 'ck', checkbox : true }, { field : 'id', hidden : true, title : 'id', width : 100 }, { field : 'text', title : '选择全部', width : 150 } ] ], fitColumns : true } }; if (editable) { editer.options.editable = editable; } if (required) { editer.options.required = required; } return editer; } /** * combogrid编辑对象,从数组中获取 * * @param list * list取数数组 * @param id * id字段 * @param name * 名称字段 * @param required * 是否必输 * @param editable * 是否可编辑 * @returns Editor */ function comboGridEtr(list, id, name, required, editable) { var editer = { type : 'combogrid', options : { editable : false, required : false, panelWidth : 200, multiple : true, idField : id, textField : name, data : list, columns : [ [ { field : 'ck', checkbox : true }, { field : id, hidden : true, title : 'id', width : 100 }, { field : name, title : '选择全部', width : 150 } ] ], fitColumns : true } }; if (editable) { editer.options.editable = editable; } if (required) { editer.options.required = required; } return editer; } /** * Excel导出处理 * * @param gridId * datagrid * @param title * Excel标题 * @param transCode * 交易码 * @param params * 查询参数 */ function downloadExcel(gridId, title, transCode, params,servletName) { var columnfields = ""; var columntitles = ""; var cfs = $(gridId).datagrid('getColumnFields'); var colCount = cfs.length; for ( var i = 0; i < colCount; i++) { if(cfs[i]!='ck'&&cfs[i]!=''&&cfs[i]!='undefined'){ if (columnfields == '') { columnfields = cfs[i]; columntitles = $(gridId).datagrid('getColumnOption', cfs[i]).title; } else { columnfields = columnfields + "," + cfs[i]; columntitles = columntitles + "," + $(gridId).datagrid('getColumnOption', cfs[i]).title; } } } params = params + "&title=" + title + "&columnfields=" + columnfields + "&columntitles=" + columntitles; var pageopt; var pageNumber =1; var pageSize = 9000000; try{ pageopt=$(gridId).datagrid('getPager').data("pagination").options; pageNumber = pageopt.pageNumber; pageSize = pageopt.pageSize; }catch(e){ // } /* var order = 'asc'; var sort = 'transcode';*/ params = params + "&page=" + pageNumber + "&rows=" + pageSize; // +"&sort="+sort+"&order="+order; url = getUrl(transCode, encodeURI(params || ''),servletName); var iTop = (window.screen.availHeight - 30 - 600) / 2; // 获得窗口的垂直位置; var iLeft = (window.screen.availWidth - 10 - 800) / 2; // 获得窗口的水平位置; window .open( url, 'reportWin', 'top=' + iTop + ',left=' + iLeft + ',height=600,width=800,status=no,toolbar=no,menubar=no,location=no,scrollbars=no'); }; function downloadIneyesExcel(gridId, title, transCode, params,servletName) { var columnfields = ""; var columntitles = ""; var cfs = $(gridId).datagrid('getColumnFields'); var colCount = cfs.length; for ( var i = 0; i < colCount; i++) { if(cfs[i]!='ck'&&cfs[i]!=''&&cfs[i]!='undefined'){ if (columnfields == '') { columnfields = cfs[i]; columntitles = $(gridId).datagrid('getColumnOption', cfs[i]).title; } else { columnfields = columnfields + "," + cfs[i]; columntitles = columntitles + "," + $(gridId).datagrid('getColumnOption', cfs[i]).title; } } } params = params + "&title=" + title + "&columnfields=" + columnfields + "&columntitles=" + columntitles; var pageopt; var pageNumber =1; var pageSize = 9000000; try{ pageopt=$(gridId).datagrid('getPager').data("pagination").options; pageNumber = pageopt.pageNumber; pageSize = pageopt.pageSize; }catch(e){ // } /* var order = 'asc'; var sort = 'transcode';*/ params = params + "&page=" + pageNumber + "&rows=" + pageSize; // +"&sort="+sort+"&order="+order; url = getIneyesUrl(transCode, encodeURI(params || ''),servletName); var iTop = (window.screen.availHeight - 30 - 600) / 2; // 获得窗口的垂直位置; var iLeft = (window.screen.availWidth - 10 - 800) / 2; // 获得窗口的水平位置; window .open( url, 'reportWin', 'top=' + iTop + ',left=' + iLeft + ',height=600,width=800,status=no,toolbar=no,menubar=no,location=no,scrollbars=no'); }; /** * 日期格式化 * * @param date * @returns {String} */ function formatterDate(date) { var day = date.getDate() > 9 ? date.getDate() : "0" + date.getDate(); var month = (date.getMonth() + 1) > 9 ? (date.getMonth() + 1) : "0" + (date.getMonth() + 1); return date.getFullYear() + '-' + month + '-' + day; }; /** * 前端uuid * * @returns */ function uuid() { var s = []; var hexDigits = "0123456789abcdef"; for ( var i = 0; i < 36; i++) { s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1); } s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010 s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the // clock_seq_hi_and_reserved // to 01 s[8] = s[13] = s[18] = s[23] = ""; var uuid = s.join(""); return uuid; } //初始化需要转发的transcode对应的url function initExcludeUrlMap() { if($.excludeUrlMap == null ){ $.excludeUrlMap=new MapUtils(); } if(serverUrl==''||serverUrl== undefined){ serverUrl="" } $.excludeUrlMap.put("HM0016",serverUrl); $.excludeUrlMap.put("HM004901",serverUrl); $.excludeUrlMap.put("HM004902",serverUrl); $.excludeUrlMap.put("HM005001",serverUrl); $.excludeUrlMap.put("GENERALH01",serverUrl);//帮助信息 $.excludeUrlMap.put("GENERALH02",serverUrl); $.excludeUrlMap.put("GENERALH03",serverUrl); $.excludeUrlMap.put("GENERALH04",serverUrl); $.excludeUrlMap.put("GENERALP01",serverUrl);//协议信息 $.excludeUrlMap.put("GENERALP02",serverUrl); $.excludeUrlMap.put("GENERALP03",serverUrl); $.excludeUrlMap.put("GENERALP04",serverUrl); $.excludeUrlMap.put("GENERALV01",serverUrl);//版本信息 $.excludeUrlMap.put("GENERALV02",serverUrl); $.excludeUrlMap.put("GENERALV03",serverUrl); $.excludeUrlMap.put("GENERALV04",serverUrl); $.excludeUrlMap.put("GENERALD01",serverGzlUrl);//机构信息 $.excludeUrlMap.put("GENERALD02",serverGzlUrl); $.excludeUrlMap.put("GENERALD03",serverGzlUrl); $.excludeUrlMap.put("GENERALD04",serverGzlUrl); //企业审核表 $.excludeUrlMap.put("USERCERT01",serverUrl); $.excludeUrlMap.put("HM0013",serverUrl);//审核 $.excludeUrlMap.put("HX0003",serverUrl);//文件下载 $.excludeUrlMap.put("HX0004",serverUrl);//文件全路径查询 $.excludeUrlMap.put("XE0012",gzlBrowser);//区块链数据 //商品管理 $.excludeUrlMap.put("GENERALG04",serverUrl); $.excludeUrlMap.put("GENERALG03",serverUrl); $.excludeUrlMap.put("GENERALG02",serverUrl); $.excludeUrlMap.put("GENERALG01",serverUrl); $.excludeUrlMap.put("C00030",serverUrl);//获取首页信息 $.excludeUrlMap.put("MALLORDE01",serverUrl);//获取订单信息 $.excludeUrlMap.put("C00003",serverUrl);//获取商品信息 $.excludeUrlMap.put("PAY01",serverUrl);//获取支付信息 $.excludeUrlMap.put("ORDERINF01",serverUrl);//获取订单相关信息 $.excludeUrlMap.put("C00014",serverUrl);//设置状态变更 $.excludeUrlMap.put("PRODUCT01",serverUrl);//商品信息 $.excludeUrlMap.put("PRODUCT02",serverUrl);//商品信息 $.excludeUrlMap.put("PRODUCT03",serverUrl);//商品信息 $.excludeUrlMap.put("PRODUCT04",serverUrl);//商品信息 $.excludeUrlMap.put("B00022",serverUrl);//商品信息 $.excludeUrlMap.put("C00025",serverUrl);//添加商品,上传文件 $.excludeUrlMap.put("C00026",serverUrl);//删除商品图片 $.excludeUrlMap.put("BANNER01",serverUrl);//banner操作 $.excludeUrlMap.put("BANNER02",serverUrl);//banner操作 $.excludeUrlMap.put("BANNER03",serverUrl);//banner操作 $.excludeUrlMap.put("BANNER04",serverUrl);//banner操作 $.excludeUrlMap.put("ACTIVE01",serverUrl);//活动操作 $.excludeUrlMap.put("ACTIVE02",serverUrl);//活动操作 $.excludeUrlMap.put("ACTIVE03",serverUrl);//活动操作 $.excludeUrlMap.put("ACTIVE04",serverUrl);//活动操作 $.excludeUrlMap.put("C00028",serverUrl);//添加banner图片 $.excludeUrlMap.put("HC0015",serverUrl);//退款申请 $.excludeUrlMap.put("HC0016",serverUrl);//修改用户状态 $.excludeUrlMap.put("VIEWSYSU01",serverUrl);//员工操作 $.excludeUrlMap.put("VIEWUSER01",serverUrl);//用户操作 $.excludeUrlMap.put("HC0017",serverUrl);//员工操作 $.excludeUrlMap.put("HC0018",serverUrl);//支付统计 $.excludeUrlMap.put("HC0019",serverUrl);//员工操作 $.excludeUrlMap.put("VIEWORDE01",serverUrl);//获取订单信息 $.excludeUrlMap.put("SYSVERSI01",serverUrl);//版本管理 $.excludeUrlMap.put("SYSVERSI02",serverUrl);//版本管理 $.excludeUrlMap.put("SYSVERSI03",serverUrl);//版本管理 $.excludeUrlMap.put("SYSVERSI04",serverUrl);//版本管理 $.excludeUrlMap.put("TRADEMAR01",serverUrl);// $.excludeUrlMap.put("TRADEMAR03",serverUrl);// } /** * 获取运行时URL * * @param transCode * @param params */ function getUrl(transCode, params,servletName) { if($.excludeUrlMap == null){ initExcludeUrlMap(); } url=$.excludeUrlMap.get(transCode); if(url){ if (params == '') { return url+"?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid"); } else { return url+"?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid") + "&" + params; } }else { if (servletName) { if (params == '') { return sysWebAppName + servletName + "?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid"); } else { return sysWebAppName + servletName + "?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid") + "&" + params; } } else { if (params == '') { return sysWebAppName + "TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid"); } else { return sysWebAppName + "TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid") + "&" + params; } } } } function getServerUrl(transCode, params, servletName) { url = serverUrl; if (url) { if (params == '') { return url + "?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid"); } else { return url + "?transCode=" + transCode + "&clientToken=" + $.__token + "&userId=" + localStorage.getItem("userid") + "&" + params; } } } /** * 获取gzl运行时URL * * @param transCode * @param params */ function getGzlUrl(transCode, params,servletName) { if(servletName){ if (params == '') { return servletName+"/manager/gzl/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token; } else { return servletName+"/manager/gzl/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&" + params; } }else{ if (params == '') { return sysWebAppName+"manager/gzl/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token; } else { return sysWebAppName+"manager/gzl/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&" + params; } } } /** * 获取ineyes运行时URL * * @param transCode * @param params */ function getIneyesUrl(transCode, params,servletName) { if(servletName){ if (params == '') { return "/manager/ineyes/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token; } else { return "/manager/ineyes/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&" + params; } }else{ if (params == '') { return "/manager/ineyes/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token; } else { return "/manager/ineyes/TransServlet?transCode=" + transCode + "&clientToken=" + $.__token + "&" + params; } } } /** * 获取ineyes运行时URL * * @param transCode * @param params */ // function getIneyesUrl(transCode, params,servletName) { // if(servletName){ // if (params == '') { // return "/adminineyes/serviceineyes/TransServlet?transCode=" + transCode // + "&clientToken=" + $.__token; // } else { // return "/adminineyes/serviceineyes/TransServlet?transCode=" + transCode // + "&clientToken=" + $.__token + "&" + params; // } // }else{ // if (params == '') { // return "/adminineyes/serviceineyes/TransServlet?transCode=" + transCode // + "&clientToken=" + $.__token; // } else { // return "/adminineyes/serviceineyes/TransServlet?transCode=" + transCode // + "&clientToken=" + $.__token + "&" + params; // } // } // } /** * ajax 通信工具类,采用同步机制 */ function crudAjaxCall(transCode, params, fun_success, fun_error, isLoginOut){ syncAjaxCall(transCode, params, fun_success, fun_error, isLoginOut); } /** * ajax 通信工具类 * * @param transCode * @param params * @param fun_success * @param fun_error * @param isLoginOut */ function syncAjaxCall(transCode, params, fun_success, fun_error, isLoginOut) { if (params == null) { params = {}; } __mask++; if (__mask >= 0) { showLoading(1); } url = getUrl(transCode); // sysWebAppName + 'TransServlet?transCode=' + transCode // + '&clientToken=' + $.__token; $.ajax({ url : encodeURI(url), data : encodeURI(params || ''), type : "GET", dataType : "jsonp", // type : "POST", contentType : "application/x-www-form-urlencoded; charset=utf-8", // dataType : "text", timeout : ajaxTimeout, success : function(data) { //console.log(data==null); console.log(data===""); //出错时为空 if (data == null || data === "") data = "{}";//return; // data = JSON.parse(data);//$.parseJSON(data); //jsonp不需要在转换一次 __mask--; if (__mask == 0) { showLoading(-1); } if (data.returnCode == 'EB8000006') { if (isLoginOut) { fun_success && fun_success(data); } else { if (__login > 0) return; $.messager .confirm( '用户异常提示', '用户异常,是否重新登录。', function(r) { if (r) { $( ".leftcurtain", window.parent.document) .stop().animate({ width : '50%' }, 1500); $( ".rightcurtain", window.parent.document) .stop().animate({ width : '51%' }, 1500); $( ".login", window.parent.document) .show(); $( ".login", window.parent.document) .find( "input[type=password]") .val(""); $( ".login", window.parent.document) .find( "input[type=text]") .val(""); parent.changeImage(); __login--; } else { __login--; } }); __login++; } } else { if (data.returnCode == successCode ) {//|| data.returnCode == microSrvcSucsCode fun_success && fun_success(data); } else { if (fun_error) { fun_error && fun_error(data); } } } }, error : function(XMLHttpRequest, textStatus, errorThrown) { __mask--; if (__mask == 0) { showLoading(-1); } if (fun_error) { fun_error && fun_error(XMLHttpRequest, textStatus, errorThrown); } } }); } function syncAjaxCallPost(transCode, params, fun_success, fun_error, isLoginOut) { if (params == null) { params = {}; } __mask++; if (__mask >= 0) { showLoading(1); } url = getUrl(transCode); // sysWebAppName + 'TransServlet?transCode=' + transCode // + '&clientToken=' + $.__token; $.ajax({ url : encodeURI(url), data : encodeURI(params || ''), type : "POST", // type : "GET", // dataType : "jsonp", contentType : "application/x-www-form-urlencoded; charset=utf-8", dataType : "json", timeout : ajaxTimeout, success : function(data) { //console.log(data==null); console.log(data===""); //出错时为空 if (data == null || data === "") data = "{}";//return; // data = $.parseJSON(data);//JSON.parse(data);// __mask--; if (__mask == 0) { showLoading(-1); } if (data.returnCode == 'EB8000006') { if (isLoginOut) { fun_success && fun_success(data); } else { if (__login > 0) return; $.messager .confirm( '用户异常提示', '用户异常,是否重新登录。', function(r) { if (r) { $( ".leftcurtain", window.parent.document) .stop().animate({ width : '50%' }, 1500); $( ".rightcurtain", window.parent.document) .stop().animate({ width : '51%' }, 1500); $( ".login", window.parent.document) .show(); $( ".login", window.parent.document) .find( "input[type=password]") .val(""); $( ".login", window.parent.document) .find( "input[type=text]") .val(""); parent.changeImage(); __login--; } else { __login--; } }); __login++; } } else { if (data.returnCode == successCode ) {//|| data.returnCode == microSrvcSucsCode fun_success && fun_success(data); } else { if (fun_error) { fun_error && fun_error(data); } } } }, error : function(XMLHttpRequest, textStatus, errorThrown) { __mask--; if (__mask == 0) { showLoading(-1); } if (fun_error) { fun_error && fun_error(XMLHttpRequest, textStatus, errorThrown); } } }); } function comboBox_Etr1(list, id,name,editable, required) { var editer = { type : 'combobox', options : { editable : false, required : false, data : list, valueField : id, textField : name, panelHeight : '200' } }; if (editable) { editer.options.editable = editable; } if (required) { editer.options.required = required; } return editer; } /** * ajax 通信工具类 * * @param transCode * @param params * @param fun_success * @param fun_error * @param isLoginOut */ function synchronAjaxCall(transCode, params, fun_success, fun_error, isLoginOut) { if (params == null) { params = {}; } __mask++; if (__mask >= 0) { showLoading(1); } url = getUrl(transCode); // sysWebAppName + 'TransServlet?transCode=' + transCode // + '&clientToken=' + $.__token; $.ajax({ url : encodeURI(url), data : encodeURI(params || ''), type : "POST", async: false, // type : "GET", // dataType : "jsonp", contentType : "application/x-www-form-urlencoded; charset=utf-8", dataType : "text", timeout : ajaxTimeout, success : function(data) { //console.log(data==null); console.log(data===""); //出错时为空 if (data == null || data === "") data = "{}";//return; // data = $.parseJSON(data);//JSON.parse(data);// __mask--; if (__mask == 0) { showLoading(-1); } if (data.returnCode == 'EB8000006') { if (isLoginOut) { fun_success && fun_success(data); } else { if (__login > 0) return; $.messager .confirm( '用户异常提示', '用户异常,是否重新登录。', function(r) { if (r) { $( ".leftcurtain", window.parent.document) .stop().animate({ width : '50%' }, 1500); $( ".rightcurtain", window.parent.document) .stop().animate({ width : '51%' }, 1500); $( ".login", window.parent.document) .show(); $( ".login", window.parent.document) .find( "input[type=password]") .val(""); $( ".login", window.parent.document) .find( "input[type=text]") .val(""); parent.changeImage(); __login--; } else { __login--; } }); __login++; } } else { if (data.returnCode == successCode ) {//|| data.returnCode == microSrvcSucsCode fun_success && fun_success(data); } else { if (fun_error) { fun_error && fun_error(data); } } } }, error : function(XMLHttpRequest, textStatus, errorThrown) { __mask--; if (__mask == 0) { showLoading(-1); } if (fun_error) { fun_error && fun_error(XMLHttpRequest, textStatus, errorThrown); } } }); } // edatagrid通讯数据过滤处理 function loadFilterError(data) { if (data.returnCode == 'EB8000006') { $.messager.confirm('用户异常提示', '用户异常,是否重新登录。', function(r) { if (r) { $(".leftcurtain", window.parent.document).stop().animate({ width : '50%' }, 1500); $(".rightcurtain", window.parent.document).stop().animate({ width : '51%' }, 1500); $(".login", window.parent.document).show(); $(".login", window.parent.document).find( "input[type=password]").val(""); $(".login", window.parent.document) .find("input[type=text]").val(""); parent.changeImage(); } }); } else { if (data.returnCode == '000000000' || data.returnCode == '0000000') { return; }else{ $.messager.alert('系统错误', '错误码:[' + data.returnCode + '],错误信息:[' + data.returnMsg + '].', 'error'); } } } /******************************************************************************* * ajax form file upload * * @param formId * @param fun_success * @param fun_error */ function ajaxFormUpload(formId, fun_success, fun_error) { url = sysWebAppName + 'TransServlet'; $("#" + formId).form( 'submit', { url : encodeURI(url), timeout : ajaxTimeout, async : false, traditional : false, cache : false, ajaxSubmit : function() { return true; }, success : function(result) { var data = (new Function("return " + result))(); if (data.returnCode == 'EB8000006') { $.messager.confirm('用户异常提示', '用户异常,是否重新登录。', function(r) { if (r) { $(".leftcurtain", window.parent.document).stop() .animate({ width : '50%' }, 1500); $(".rightcurtain", window.parent.document).stop() .animate({ width : '51%' }, 1500); $(".login", window.parent.document) .show("slow").find( "input[type=password]") .val(""); parent.changeImage(); } }); } else { if (data.returnCode == successCode ) { fun_success && fun_success(data); } else { if (fun_error) { fun_error && fun_error(data); } } } }, onLoadError : function() { $.messager.alert('系统错误', '网络或系统忙提交失败,请重试!', 'error'); } }); } /** * 构建js Map工具类 * * @returns {MapUtils} */ function MapUtils() { this.elements = new Array(); // 获取MAP元素个数 this.size = function() { return this.elements.length; }; // 判断MAP是否为空 this.isEmpty = function() { return (this.elements.length < 1); }; // 删除MAP所有元素 this.clear = function() { this.elements = new Array(); }; // 向MAP中增加元素(key, value) this.put = function(_key, _value) { if (this.get(_key) != null) { this.remove(_key); } this.elements.push({ key : _key, value : _value }); }; // 把一个json数组放到map中 ,并且指定 key值所在的字段 this.putJson = function(_keyName, _json) { _json = _json == undefined ? [] : _json; var i = 0; for (; i < _json.length; i++) { this.put(_json[i][_keyName], _json[i]); } }; // 删除指定KEY的元素,成功返回True,失败返回False this.remove = function(_key) { var bln = false; try { var i = 0; for (; i < this.elements.length; i++) { if (this.elements[i].key == _key) { this.elements.splice(i, 1); return true; } } } catch (e) { bln = false; } return bln; }; // 获取指定KEY的元素值VALUE,失败返回NULL this.get = function(_key) { try { var i = 0; for (; i < this.elements.length; i++) { if (this.elements[i].key == _key) { return this.elements[i].value; } } } catch (e) { return null; } }; // 获取MAP中所有VALUE的数组(ARRAY) this.values = function() { var arr = new Array(); var i = 0; for (; i < this.elements.length; i++) { arr.push(this.elements[i].value); } return arr; }; this.keys=function () { var arr = new Array(); var i = 0; for (; i < this.elements.length; i++) { arr.push(this.elements[i].key); } return arr; } } /** * 页面加载遮罩函数 1显示遮罩 非1隐藏遮罩 * * @param show_or_hide */ function showLoading(show_or_hide) { setTimeout( function() { if (show_or_hide == 1) { if ($("#ajaxLoadingMask", window.parent.document).length == 0) $("body", window.parent.document) .append( ""); var mask = $("#ajaxLoadingMask", window.parent.document); if ($("#ajaxLoadingIcon", window.parent.document).length == 0) $("body", window.parent.document) .append( ""); var icon = $("#ajaxLoadingIcon", window.parent.document); var bh = $(window.parent.document).height(); var wh = $(window.parent.document).height(); mask.height(bh > wh ? bh : wh).fadeIn(); icon .css( "top", ($(window.parent.document).height() - icon .height()) / 2 + $(window.parent.document) .scrollTop()).css( "left", ($(window.parent.document).width() - icon .width()) / 2).fadeIn(); } else { var mask2 = $("#ajaxLoadingMask", window.parent.document); var icon2 = $("#ajaxLoadingIcon", window.parent.document); mask2.fadeOut(); icon2.fadeOut(); } }, 20); } /* * 两个json数组拼接treeJson @param * opt{parentArray:{},childArray:{},confParFiled:{id:'xxx',text:'xxx'},confChdFiled:{id:'xxx',text:'xxx'},linkFiled:{par:'xxx',chd:'xxx'}} * xxx代表对应的字段名 @returns {Array} */ function array2tree(opt) { var _opt = opt || {}, _parAy = _opt.parentArray || [], _childAy = _opt.childArray || [], _confParFiled = _opt.confParFiled || {}, _confChdFiled = _opt.confChdFiled || {}, _linkFiled = _opt.linkFiled || {}; var _treeJson = []; for ( var i = 0; i < _parAy.length; i++) { var _tempTree = {}; _tempTree.id = _parAy[i][_confParFiled.id]; _tempTree.text = _parAy[i][_confParFiled.text]; _tempTree.children = []; for ( var j = 0; j < _childAy.length; j++) { if (_childAy[j][_linkFiled.chd] == _parAy[i][_linkFiled.par]) { var _sortTree = {}; _sortTree.id = _childAy[j][_confChdFiled.id]; _sortTree.text = _childAy[j][_confChdFiled.text]; _tempTree.children.push(_sortTree); } } _treeJson.push(_tempTree); } return _treeJson; } /** * json格式转树状结构 * * @param {json} * json数据 * @param {String} * id的字符串 * @param {String} * 父id的字符串 * @param {String} * children的字符串 * @return {Array} 数组 */ function arrayToTree(a, idStr, pidStr, chindrenStr, aId, aText) { var r = [], hash = {}, id = idStr, pid = pidStr, children = chindrenStr, i = 0, j = 0, len = a.length; for (; i < len; i++) { hash[a[i][id]] = a[i]; } if (aId == null || aId == undefined || aText == null || aText == undefined) { for (; j < len; j++) { var aVal = a[j], hashVP = hash[aVal[pid]]; if (hashVP) { !hashVP[children] && (hashVP[children] = []); hashVP[children].push(aVal); } else { r.push(aVal); } } } else { for (; j < len; j++) { var aVal = a[j], hashVP = hash[aVal[pid]]; var tree = {}; if (hashVP) { !hashVP[children] && (hashVP[children] = []); tree.id = aVal[aId]; tree.text = aVal[aText]; if (aVal.children) { tree.children = aVal.children; } hashVP[children].push(tree); } else { tree.id = aVal[aId]; tree.text = aVal[aText]; tree.children = aVal[children]; r.push(tree); } } } return r; } /******************************************************************************* * 数字转中文 * * @param obj * @returns {String} */ function chinesenumeral(obj) { var Num = $("#" + obj.id).val(); Num = Num.replace(/,/g, "");// 替换Num中的"," var numberValue = new String(Math.round(Num * 100)); // 数字金额 var chineseValue = ""; // 转换后的汉字金额 var String1 = "零壹贰叁肆伍陆柒捌玖"; // 汉字数字 var String2 = "万仟佰拾亿仟佰拾万仟佰拾元角分"; // 对应单位 var len = numberValue.length; // numberValue 的字符串长度 var Ch1; // 数字的汉语读法 var Ch2; // 数字位的汉字读法 var nZero = 0; // 用来计算连续的零值的个数 var String3; // 指定位置的数值 if (len > 15) { alert("超出计算范围"); return ""; } if (numberValue == 0) { chineseValue = "零元整"; return chineseValue; } String2 = String2.substr(String2.length - len, len); // 取出对应位数的STRING2的值 for ( var i = 0; i < len; i++) { String3 = parseInt(numberValue.substr(i, 1), 10); // 取出需转换的某一位的值 if (i != (len - 3) && i != (len - 7) && i != (len - 11) && i != (len - 15)) { if (String3 == 0) { Ch1 = ""; Ch2 = ""; nZero = nZero + 1; } else if (String3 != 0 && nZero != 0) { Ch1 = "零" + String1.substr(String3, 1); Ch2 = String2.substr(i, 1); nZero = 0; } else { Ch1 = String1.substr(String3, 1); Ch2 = String2.substr(i, 1); nZero = 0; } } else { // 该位是万亿,亿,万,元位等关键位 if (String3 != 0 && nZero != 0) { Ch1 = "零" + String1.substr(String3, 1); Ch2 = String2.substr(i, 1); nZero = 0; } else if (String3 != 0 && nZero == 0) { Ch1 = String1.substr(String3, 1); Ch2 = String2.substr(i, 1); nZero = 0; } else if (String3 == 0 && nZero >= 3) { Ch1 = ""; Ch2 = ""; nZero = nZero + 1; } else { Ch1 = ""; Ch2 = String2.substr(i, 1); nZero = nZero + 1; } if (i == (len - 11) || i == (len - 3)) { // 如果该位是亿位或元位,则必须写上 Ch2 = String2.substr(i, 1); } } chineseValue = chineseValue + Ch1 + Ch2; } if (String3 == 0) { // 最后一位(分)为0时,加上“整” chineseValue = chineseValue + "整"; } $("#chinesenumeral").html( "大写金额:" + chineseValue + ""); } /* * @author:wangwanhua @date:2013-05-30 * @desc:此方法实现将非id和text类型json数据的combotree转换为以id和text类型命名的json数据, * 参数说明:rows(要转换的json),mid(id),mparentId(父id),mName(text) */ function convert(rows, mid, mparentId, mName) { function exists(rows, cparentId) { for ( var i = 0; i < rows.length; i++) { if (rows[i][mid] == cparentId) return true; } return false; } var nodes = []; // get the top level nodes for ( var i = 0; i < rows.length; i++) { var row = rows[i]; if (!exists(rows, row[mparentId])) { nodes.push({ id : row[mid], text : row[mName] }); } } var toDo = []; for ( var i = 0; i < nodes.length; i++) { toDo.push(nodes[i]); } while (toDo.length) { var node = toDo.shift(); // the parent node // get the children nodes for ( var i = 0; i < rows.length; i++) { var row = rows[i]; if (row[mparentId] == node.id) { var child = { id : row[mid], text : row[mName] }; if (node.children) { node.children.push(child); } else { node.children = [ child ]; } toDo.push(child); } } } return nodes; } /******************************************************************************* * html页面间 获取参数值 * * @param name * @returns */ function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) { return unescape(r[2]); } return null; } /******************************************************************************* * 根据数据列键值对,见','分割串ids转换为','分割values串 */ function listFormat(list, value, idtag, valuetag) { if (!value && value != 0) { return value; } inarray = value.split(","); retarray = new Array(); for ( var i = 0; i < inarray.length; i++) { for ( var j = 0; j < list.length; j++) { if (list[j][idtag] == inarray[i]) { if (list[j][valuetag]) { retarray.push(list[j][valuetag]); } else { retarray.push(inarray[i]); } } } } return retarray.join(","); } /******************************************************************************* * 标准数据格式化 * * @param codetype * 标准分类 * @param value * 页面字段值 * @return 返回字段含义或描述 */ function dataFormat(codetype, value) { if (!value && value != 0) { return value; } var stdData = $.mapData.get(codetype); if (!stdData) return value; if (stdData[value]) { return stdData[value]; } else { inarray = value.split(","); retarray = new Array(); for ( var i = 0; i < inarray.length; i++) { if (stdData[inarray[i]]) { retarray.push(stdData[inarray[i]]); } else { retarray.push(inarray[i]); } } return retarray.join(","); } } /** * 从servlet获取数据 * */ function getComboData(servlet,param) { var channelListTmp=[]; //角色列表数据 var channelList=[]; /*var obj = { "id":"all", "text":"全部" } channelList.push(obj);*/ var p =""+ "&channelNo=service&page=1&rows=-1&orderBy="+param; crudAjaxCall(servlet, p, function(data){ if(data){ channelListTmp = data.rows; if(channelListTmp){ for(var i=0; i < channelListTmp.length;i++) { var tmp = {}; var obj = { "id":channelListTmp[i].id, "text":channelListTmp[i][param] } channelList.push(obj); } } } }); return channelList; } /** * 从servlet获取数据 * */ function getComboDatamanager(servlet,param) { var channelListTmp=[]; //角色列表数据 var channelList=[]; /*var obj = { "id":"all", "text":"全部" } channelList.push(obj);*/ var p =""+ "&channelNo=manager&page=1&rows=-1"; crudAjaxCall(servlet, p, function(data){ if(data){ channelListTmp = data.rows; if(channelListTmp){ for(var i=0; i < channelListTmp.length;i++) { var tmp = {}; var obj = { "id":channelListTmp[i].userid, "text":channelListTmp[i][param] } channelList.push(obj); } } } }); return channelList; } /** * 从servlet获取数据 * 术语标签管理表中特定类别的数据 * */ function getComboDatafenlei(servlet,param,fenlei) { var channelListTmp=[]; //角色列表数据 var channelList=[]; /*var obj = { "id":"all", "text":"全部" } channelList.push(obj);*/ var p =""+ "&channelNo=service&orderBy=tagindexno&page=1&rows=-1"; crudAjaxCall(servlet, p, function(data){ if(data){ channelListTmp = data.rows; if(channelListTmp){ for(var i=0; i < channelListTmp.length;i++) { var tmp = {}; var obj = { "id":channelListTmp[i].id, "text":channelListTmp[i][param] } if(channelListTmp[i].tagstate == fenlei){ channelList.push(obj);} } } } }); return channelList; } function addDefData(codetype) { var data=getListData(codetype); data.push({"id" : "", "text" : "全部"}); return data; } /** * 获取标准数据转换为ComBox加载 * * @param codetype * @param del_id * 需要去除的object的id值 * @returns */ function getListData(codetype,del_id) { var data = []; var stdData = $.mapData.get(codetype); for ( var key in stdData) { var obj = { "id" : key, "text" : stdData[key] }; if(key!=del_id) data.push(obj); } return data; }; /** * 获取标准数据类型id的描述 * @param codetype * @param id */ function getTypeDecs(codetype,id){ var stdData = $.mapData.get(codetype); if(stdData){ if(stdData[id] != undefined){ return stdData[id]; } } return id; } /** * json字符串格式化 */ var formatJson = function(json, options) { var reg = null, formatted = '', pad = 0, PADDING = ' '; // one can also // use '\t' or a // different // number of // spaces // optional settings options = options || {}; // remove newline where '{' or '[' follows ':' options.newlineAfterColonIfBeforeBraceOrBracket = (options.newlineAfterColonIfBeforeBraceOrBracket === true) ? true : false; // use a space after a colon options.spaceAfterColon = (options.spaceAfterColon === false) ? false : true; // begin formatting... if (typeof json !== 'string') { // make sure we start with the JSON as a string json = JSON.stringify(json); } else { // is already a string, so parse and re-stringify in order to remove // extra whitespace json = JSON.parse(json); json = JSON.stringify(json); } // add newline before and after curly braces reg = /([\{\}])/g; json = json.replace(reg, '\r\n$1\r\n'); // add newline before and after square brackets reg = /([\[\]])/g; json = json.replace(reg, '\r\n$1\r\n'); // add newline after comma reg = /(\,)/g; json = json.replace(reg, '$1\r\n'); // remove multiple newlines reg = /(\r\n\r\n)/g; json = json.replace(reg, '\r\n'); // remove newlines before commas reg = /\r\n\,/g; json = json.replace(reg, ','); // optional formatting... if (!options.newlineAfterColonIfBeforeBraceOrBracket) { reg = /\:\r\n\{/g; json = json.replace(reg, ':{'); reg = /\:\r\n\[/g; json = json.replace(reg, ':['); } if (options.spaceAfterColon) { reg = /\:/g; json = json.replace(reg, ':'); } $.each(json.split('\r\n'), function(index, node) { var i = 0, indent = 0, padding = ''; if (node.match(/\{$/) || node.match(/\[$/)) { indent = 1; } else if (node.match(/\}/) || node.match(/\]/)) { if (pad !== 0) { pad -= 1; } } else { indent = 0; } for (i = 0; i < pad; i++) { padding += PADDING; } formatted += padding + node + '\r\n'; pad += indent; }); return formatted.trim(); }; //获取url中指定的字段值 function geturlcode(name,url){ var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r =null; if(url) { var url1 = url.split("#")[0]; r = url1.substr(url1.indexOf('?')+1).match(reg); } else { r = window.location.search.substr(1).match(reg); } if(r!=null) return unescape(r[2]); return null; } function formatTime(date) { var year = date.getFullYear(); var month = date.getMonth() + 1; var day = date.getDate(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); return [year, month, day].map(formatNumber).join('-') + ' ' + [hour, minute, second].map(formatNumber).join(':'); } //获取YYYY-MM-DD hh:mm:ss格式的当前北京时间 function formatTimeZone(date){ var timezone = 8; //目标时区时间,东八区 var offset_GMT = new Date().getTimezoneOffset(); // 本地时间和格林威治的时间差,单位为分钟 var nowDate = new Date().getTime(); // 本地时间距 1970 年 1 月 1 日午夜(GMT 时间)之间的毫秒数 var date = new Date(nowDate + offset_GMT * 60 * 1000 + timezone * 60 * 60 * 1000); return formatTime(date); } //小于10前面加0补位 function formatNumber(n) { n = n.toString(); return n[1] ? n : '0' + n; } //获取当前时间的格式化时间 function getNowFormatTime() { var oDate = new Date(), oYear = oDate.getFullYear(), oMonth = oDate.getMonth()+1, oDay = oDate.getDate(), oHour = oDate.getHours(), oMin = oDate.getMinutes(), oSen = oDate.getSeconds(), oTime = oYear +'-'+ getzf(oMonth) +'-'+ getzf(oDay) +' '+ getzf(oHour) +':'+ getzf(oMin) +':'+getzf(oSen);//最后拼接时间 return oTime; } //补0操作 function getzf(num){ if(parseInt(num) < 10){ num = '0'+num; } return num; }