123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355 |
- 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 [];
- }
- };
- /**
- * 显示分解,
- * <div type="subtable" tabledesc="月度租金分解" tablename="me_zlhtqd_ydzjfj">
- * <table class="listTable" id="me_zlhtqd_ydzjfj">
- * 一定要这样子设置
- */
- 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<cent)
- cents = "0" + cents;
- // 对整数部分进行千分位格式化.
- for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
- num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
- if (cent > 0)
- return (((sign)?'':'-') + num + '.' + cents);
- else
- return (((sign)?'':'-') + num);
- }
|