泛微E9前端常用代码(2次包装)

Number.prototype.toFixed=function(p){
     var a = Math.pow(10, p);
     // 如果是正数+0.5|负数-0.5
     const b = this >= 0 ? 0.5 : -0.5;
     var c = this * a + b;
     c = parseInt(c, 10) / a;
     return c;
}

function xlog(p){
     console.log('---------Myxlog---------')
     console.log(typeof(p) + '->:' + p); 
}

function IsRepeat(arr) {
  var hash = {};
  for (var i in arr) {
      if (hash[arr[i]]) return true;
      hash[arr[i]] = true;
  }
  return false;
}

function FindRepeat(arr) {
    var sortarr = arr.slice().sort();
    var ret = [];
    for (var i = 0; i < sortarr.length - 1; i++) {
        if (sortarr[i + 1] == sortarr[i]) {
            ret.push(sortarr[i]);
        }
    }
    return ret;
}

// 数组去重
function Unique(arr) {
    for(var i = 0; i < arr.length-1; i++){
        for(var j = i+1; j < arr.length; j++){           
            if(arr[i]===arr[j]){
                arr.splice(j,1);
                j--;
            }
        }
    }
    return arr;
}


function GetFieldInfo(p){
  var finfo = WfForm.getFieldInfo(p.replace('field',''));
  return finfo;
}

/*
 *获取节点名称(上)
 */
function GetNodeName(){
  var gs = WfForm.getGlobalStore();
  if(!Object.is(gs.commonParam, null)){        
    return gs.commonParam.nodename;  
  }else{
    return null;
  }
}

/*
 *获取节点Id
 */
function GetNodeId(){
  var gs = WfForm.getGlobalStore();
  if(!Object.is(gs.commonParam, null)){        
    return gs.commonParam.nodeid;  
  }else{
    return 0;
  }
}

/*
 *设置浏览对象值
 */
function SetObjVal(field, idval, nameval){
  // console.log('修改:'+field+'\nid:'+id+'\nname:'+name);
  WfForm.changeFieldValue(field, {
    value: idval,
    specialobj:[
        {id:idval,name:nameval}     
    ]
  });     
}

/*
 *控制台打印浏览对象值
 */
function ShowObjVal(field){
  let fv1 = mobx.toJS(WfForm.getFieldValueObj(field).specialobj);
  if(null!=fv1){
    if(fv1.length>0){
      for(let i = 0; i < fv1.length; i++){
        console.log('id:'+fv1[i]['id']+'\nname:'+fv1[i]['name']);
      }
    }else{
      console.log(field+'对象长度异常');
    }
  }
}

/*
 *设置字段值
 */
function SetVal(field, val){
  WfForm.changeFieldValue(field, {value:val});
}

/*
 *获取字段值
 */
function GetVal(field){
  return WfForm.getFieldValue(field);
}

/*
 *获取枚举显示值
 */
function GetEnumVal(field){
  return WfForm.getSelectShowName(field);
}

/*
 *获取对象显示值
 */
function GetObjVal(field){
  return WfForm.getBrowserShowName(field);
}

/*
 *SetAttr(改变字段显示属性1:只读、2:可编辑、3:必填、4:隐藏字段标签及内容、5:隐藏字段所在行)
 */
function SetAttr(field, attr){
  WfForm.changeFieldAttr(field, attr);
}

/*
 *SetValAndAttr(修改字段值和字段显示属性1:只读、2:可编辑、3:必填、4:隐藏字段标签及内容、5:隐藏字段所在行)
 */
function SetValAndAttr(field, val, attr){
  WfForm.changeSingleField(field, {value:val}, {viewAttr:attr});
}

/*
 *GetEtyIdx 获取明细表所有行标
 */
function GetEtyIdx(ety){
   return WfForm.getDetailAllRowIndexStr('detail_'+ety).split(',').filter(x=>x);
}

/*
 *DelEtyIdx 删除明细表指定行
 */
function DelEtyIdx(ety,rowIdx){
  WfForm.delDetailRow('detail_'+ety, rowIdx);                                                        
}

/*
 *DelEtyAll 删除明细表所有行(清空明细表)
 */
function DelEtyAll(ety){
  WfForm.delDetailRow('detail_'+ety, "all");                                                        
}                                                      

/*
 *获取登录人
 */
function GetLastName(){
  var gs = WfForm.getGlobalStore();
  if(!Object.is(gs.commonParam, null)){        
    return gs.commonParam.lastname;  
  }else{
    return null;
  }
}

/*
 *获取登录人Id
 */
function GetLoginId(){
  let binfo = WfForm.getBaseInfo();
  if(!Object.is(binfo, null)){        
    return binfo.f_weaver_belongto_userid;  
  }else{
    return null;
  }
}

/*
* 获取Url参数
*/
function GetUrlPar(key) {
	let url = decodeURI(window.location.href);
	let paramMap = {};
	let paramStr = url.split("?")[2];
	if (paramStr != undefined && paramStr != "") {
		let paramStrArr = paramStr.split("&");
		for (let i = 0; i < paramStrArr.length; i++) {
			let temp = paramStrArr[i];
			let indexE = temp.indexOf("=");
			let pKey = temp.substring(0, indexE);
			let pVal = temp.substring(indexE + 1);
			paramMap[pKey] = pVal;
		}
	}
	return paramMap[key];
}

/*
 *分组合并kev=>val |【arr.push({key:xx,val:xx})】
 */
function GroupMerge(arr) {
  var rst = {};
  arr.forEach((obj) => {
    var k = obj['key'];
    if (!rst[k]) {
      rst[k] = 0;
    }
    rst[k] += obj.val;
  });
  return rst;
}

泛微E9前端常用代码(2次包装)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值