if (typeof HyUtil == 'undefined') { HyUtil = {}; }; $().ready(function() { HyUtil.init(); }); HyUtil.init = function() { HyUtil.formatDate(); }; /** * 绑定日期格式化 */ HyUtil.formatDate = function() { $("[datefmt]").live('change', function() { var me = $(this), val = me.val(); if (!$.isEmpty(val)) { var datefmt = me.attr("datefmt"); var arry = val.split("."); var sTime = arry[0].replace(/\-/g, "/"); if(datefmt == "yyyyMM" ){ sTime = sTime.substr(0,4) + "/" + sTime.substr(4,5) + "/01"; } var nowDate = new Date(sTime).Format(datefmt); me.val(nowDate); } }); }; /** * 获取某年某月的天数 */ HyUtil.getDaysInMonth = function(year, month) { month = parseInt(month, 10); var temp = new Date(year, month, "0"); var day = temp.getDate(); return temp.getDate(); }; /** * 计算时间段内的总金额,头一月和尾一月独立计算 */ HyUtil.calMoneyWithMount = function(startTime, endTime, money) { startTime = startTime.replace(/\-/g, "/"); endTime = endTime.replace(/\-/g, "/"); var startDate = new Date(startTime); // 开始时间 var endDate = new Date(endTime); // 结束时间 var startDay = HyUtil.getDaysInMonth(startDate.getFullYear(), startDate .getMonth() + 1); // 获取开始年月拥有多少天数 var endDay = HyUtil.getDaysInMonth(endDate.getFullYear(), endDate .getMonth() + 1); // 获取结束年月拥有多少天数 var sDay = startDay - startDate.getDate() + 1; // 第一月有多少天 var eDay = endDate.getDate(); // 最后一月有多少天 var num = 0; var year = endDate.getFullYear() - startDate.getFullYear(); num += year * 12; var month = endDate.getMonth() - startDate.getMonth(); num += month; var amountAll = 0; // 总租金 var amountTemp = 0; // 中间月租金 var amountFirst = 0;// 头月租金 var amountLast = 0; // 尾月租金 if (num >= 2) { amountTemp = money * (num - 1); // 月租金 amountFirst = sDay * money / startDay; amountLast = eDay * money / endDay; } if (num == 1) { amountFirst = sDay * money / startDay; amountLast = eDay * money / endDay; } if (num < 1) { sDay = endDate.getDate() - startDate.getDate() + 1; amountFirst = sDay * money / startDay; } var amountAll = Number(amountTemp.toFixed(2)) + Number(amountFirst.toFixed(2)) + Number(amountLast.toFixed(2)); // 总租金 return amountAll.toFixed(2); }; /** * 显示租户信息 */ HyUtil.showZh = function(zhid) { if (zhid == null || zhid == "") { $.ligerDialog.warn("请先选择租户!", "提示"); return; } var url = __ctx + "/platform/form/bpmDataTemplate/detailData_shxxwh.ht?__pk__=" + zhid; DialogUtil.open({ height : 600, width : 800, title : "查看租户信息", url : url, isResize : true }); }; /** * 显示品牌信息 */ HyUtil.showPP = function(ppId) { if (!ppId) { $.ligerDialog.warn("请先选择品牌!", "提示"); return; } var url = __ctx + "/platform/form/bpmDataTemplate/detailData_ppxxdj.ht?__pk__=" + ppId; DialogUtil.open({ height : 600, width : 800, title : "查看品牌信息", url : url, isResize : true }); }; /** * 显示店铺明细 */ HyUtil.showDpmx = function (pwID){ if(pwID == null || pwID == ""){ $.ligerDialog.warn("请先选择店铺!","提示"); return ; } var url=__ctx + "/produce/report/DPMX.ht?op=write&WLDPID="+pwID; DialogUtil.open({ height:600, width: 800, title : "查看店铺信息", url: url, isResize: true }); }; /** * 验证合同号是否唯一 */ HyUtil.validateHth = function() { /* * $("input[name='m:me_zlhtqd:hth']").change(function(){ var hth = * $(this).val(); if(!hth) return; if(hth.length != 9){ * $.ligerDialog.warn("合同号为:三位门店号 + 三位楼层号 + 三位本楼层流水","提示"); return; } var * conf = {aliasName:'validateHTHisExist',hth:hth}; var result = * RunAliasScript(conf); if(result.result === 0) return; * * hth = hth.substring(0,6); if(result.isSuccess == 1) * $.ligerDialog.error(result.msg,"哎呦出错了!"); else * $.ligerDialog.error("该合同号已经存在!","提示"); * * $(this).val(hth); }); */ }; /** * 与目标数据大小进行比较,只读取 name+_td ,非只读去input $:+name * * @param currentRow * 当前行 * @param tragetRow * 目标行 * @param name * 名字 */ HyUtil.fillColorByCompare = function(currentRow, tragetRow, name) { var curObj = $("[name$=':" + name + "']", currentRow); if (curObj.length == 0) { /* 只读状态 */ curObj = $("[name='" + name + "_td']", currentRow); var targetVal = FormUtil.commaback($("[name='" + name + "_td']", tragetRow).text().trim()); var currentVal = FormUtil.commaback(curObj.text().trim()); } else { var targetVal = FormUtil.commaback($("[name$=':" + name + "']", tragetRow).val()); // 比较对象金额 var currentVal = FormUtil.commaback(curObj.val()); if (!targetVal || !currentVal) { return; // 对象为0不再计算 } } if (currentVal > targetVal) { curObj.css("color", "red"); } else if (currentVal < targetVal) { curObj.css("color", "green"); } else { curObj.css("color", ""); } }; /** * 日期加上多少天 type: m=2/d=1/y=3 number:几天 */ HyUtil.getNewDataStr = function(curDateStr, number, type) { if (!curDateStr) return ""; curDateStr = curDateStr.replace(/\-/g, "/"); var curDate = new Date(curDateStr); if (type == 1) curDate.setDate(curDate.getDate() + number); if (type == 2) curDate.setMonth(curDate.getMonth() + number); if (type == 3) curDate.setFullYear(curDate.getFullYear() + number); var y = curDate.getFullYear(); var m = curDate.getMonth() + 1; var d = curDate.getDate(); if (m <= 9) m = "0" + m; if (d <= 9) d = "0" + d; var cdate = y + "-" + m + "-" + d; return cdate; // 开始时间 }; /** * 分解 */ HyUtil.decompose = function(sjd, ksrq, jsrq, zj, gzid, mbxs, type) { if(!zj) zj =0; if (!type) type = 0; var paramJson = { jlbh : sjd, ksrq : ksrq, jsrq : jsrq, yzj : zj, zjjsbz : type }; if (mbxs) paramJson.mbxs = mbxs; if (gzid) paramJson.gzid = gzid; var jsonParams = []; jsonParams.push(paramJson); var conf = { aliasName : 'decompose', paramJson : JSON.stringify(jsonParams) }; var json = RunAliasScript(conf); if (json.isSuccess == 0) { return JSON.parse(json.result); } else { $.ligerDialog.error("分解失败:" + json.msg, "提示信息"); return []; } }; /** * 显示分解, *
* * 一定要这样子设置 */ HyUtil.showDecompose = function(tableName,xh,xhVal){ var $tableDiv =$("div[tablename='"+tableName+"']"); var $tableName = $("#"+tableName); $tableDiv.show(); $(".listRow:visible",$tableDiv).hide(); /*先隐藏全部,在显示个体*/ var $tr = $("[name$=':"+xh+"'][value=" + xhVal + "]",$tableDiv).closest("tr"); $tr.show(); handRowEvent(null,$tr);// 重新计算序号 $.ligerDialog.open({ width: 900, height:500, title: '查看分解信息', isResize:true, showMax : false, showToggle : true, allowClose : false, isDrag : false, modal:true, target:$tableName, buttons: [{ text: '确定', onclick:function(item,dialog){ $tableDiv.append($tableName); $tableDiv.hide(); $.ligerDialog.hide(); $.ligerDialog.close(); }}] }); }; /** * 根据【付款天数】获取【联营结算日】, * 付款天数为5时、结算日为:5、10、15、20、25;付款天数为10时,结算日为:10、20; * 付款天数为20时,结算日为20;付款天数等于大于30时,结算日为空; */ HyUtil.getJsrByFkts = function(fkts){ var rtVal = ""; switch(fkts){ case "5": rtVal = "5、10、15、20、25"; break; case "10": rtVal = "10、20"; break; case "20": rtVal = "20"; break; default: } return rtVal; } /** * 禁止右键 */ HyUtil.unbindContextMenuEvent = function (tableName){ $("div[tablename='"+tableName+"']").find("tr[class='listRow']").unbind("contextmenu"); } /** * 将数值四舍五入后格式化. * * @param num 数值(Number或者String) * @param cent 要保留的小数位(Number) * @return 格式的字符串,如'1,234,567.45' * @type String */ HyUtil.commafy = function (num,cent){ num = num.toString().replace(/\$|\,/g,''); // 检查传入数值为数值类型 if(isNaN(num)) num = "0"; // 获取符号(正/负数) sign = (num == (num = Math.abs(num))); num = Math.floor(num*Math.pow(10,cent)+0.50000000001); // 把指定的小数位先转换成整数.多余的小数位四舍五入 cents = num%Math.pow(10,cent); // 求出小数位数值 num = Math.floor(num/Math.pow(10,cent)).toString(); // 求出整数位数值 cents = cents.toString(); // 把小数位转换成字符串,以便求小数位长度 // 补足小数位到指定的位数 while(cents.length 0) return (((sign)?'':'-') + num + '.' + cents); else return (((sign)?'':'-') + num); }