ebu_ecology_dev1/javascript/common/dev.js

342 lines
14 KiB
JavaScript
Raw Normal View History

<script src="/cloudstore/release/caa2c848ca50448b882137cb82ffb9a5/index.js"></script>
const ecodeSDK = {}
ecodeSDK.setCom = (id, name, Com) => {
}
ecodeSDK.imp = (obj) => {
}
ecodeSDK.exp = (obj) => {
}
const WfForm = {
isMobile: () => {
// true表示是eMobile、微信、钉钉等移动终端false代表PC端
},
/**
* 4.6 函数式自定义渲染表单字段
* 最低版本要求KB900190701
*
* 以函数返回值方式自定义渲染表单字段支持全部的字段类型可实现基于原组件追加/复写/重新布局等等
*
* 建议结合ecode工具放到模块加载前调用使用JSX可实现与表单字段渲染有关的二次开发
*
* 此接口的优先级高于4.44.5即使用此接口代理的字段如再使用4.44.5会直接无效
*
* proxyFieldContentComp: function(fieldid,fn)
* @param convertFieldNameToId
* @param customerRender
*/
proxyFieldContentComp(convertFieldNameToId, customerRender = (info, compFn) => {
// console.log("字段id",info.fieldid);
// console.log("明细行号:",info.rowIndex);
// console.log("字段只读必填属性:",info.viewAttr);
// console.log("字段值:",info.fieldValue);
// //返回自定义渲染的组件
// return React.createElement("div", {}, ["想怎么玩就怎么玩"]);
// //返回原组件
// return compFn();
// //返回基于原组件的复写组件
// return React.createElement("div", {}, ["前置组件",compFn(),"后置组件"]);
}
) {
},
/**
* //如果此接口调用在代码块、custompage等(非模块加载前调用),需强制渲染字段一次
* WfForm.forceRenderField("field111");
* @param field
*/
forceRenderField(field) {
},
// 说明手动触发一次字段涉及的所有联动包括字段联动、SQL联动、日期时间计算、字段赋值、公式、行列规则、显示属性联动、选择框联动、bindPropertyChange事件绑定等
//
// 场景:触发出的子流程打开默认不执行字段联动、归档节点查看表单不执行联动,可通过此接口实现
//
// triggerFieldAllLinkage:function(fieldMark)
triggerFieldAllLinkage(s) {
//表单打开强制执行某字段的联动
// jQuery(document).ready(function(){
// WfForm.triggerFieldAllLinkage("field110"); //执行字段涉及的所有联动
// });
},
// 5.2 删除明细表指定行/全部行
// delDetailRow: function(detailMark, rowIndexMark)
//
// 说明:此方法会清空明细已选情况,删除时没有提示”是否删除”的确认框
//
// 参数说明
//
// 参数 参数类型 必须 说明
// detailMark String 是 明细表标示明细1就是detail_1以此递增类推
// rowIndexMark String 是 需要删除的行标示,删除全部行:all,删除部分行”123”
delDetailRow(tableName, all) {
WfForm.delDetailRow("detail_1", "all"); //删除明细1所有行
WfForm.delDetailRow("detail_1", "3,6"); //删除明细1行标为3,6的行
}
}
WfForm.OPER_SAVE = '保存'
WfForm.OPER_SUBMIT = '提交/批准/提交需反馈/不需反馈等'
WfForm.OPER_SUBMITCONFIRM = '提交至确认页面如果是确认界面点确认触发的是SUBMIT'
WfForm.OPER_REJECT = '退回'
WfForm.OPER_REMARK = '批注提交'
WfForm.OPER_INTERVENE = '干预'
WfForm.OPER_FORWARD = '转发'
WfForm.OPER_TAKEBACK = '强制收回'
WfForm.OPER_DELETE = '删除'
WfForm.OPER_ADDROW = '添加明细行,需拼明细表序号'
WfForm.OPER_DELROW = '删除明细行,需拼明细表序号'
WfForm.OPER_PRINTPREVIEW = '打印预览 KB900190501'
WfForm.OPER_EDITDETAILROW = '移动端-编辑明细 KB900191101'
WfForm.OPER_BEFOREVERIFY = '校验必填前触发事件 KB900191201'
WfForm.OPER_TURNHANDLE = '转办 KB900201101'
WfForm.OPER_ASKOPINION = '意见征询 KB900201101'
WfForm.OPER_TAKFROWARD = '征询转办 KB900201101'
WfForm.OPER_TURNREAD = '传阅 KB900201101'
WfForm.OPER_FORCEOVER = '强制归档 KB900201101'
WfForm.OPER_BEFORECLICKBTN = '点右键按钮前 KB900201101'
WfForm.OPER_SAVECOMPLETE = '保存后页面跳转前 KB900210501'
WfForm.OPER_WITHDRAW = '撤回 KB900201101'
WfForm.OPER_CLOSE = '页面关闭'
2023-02-16 19:00:32 +08:00
/**
* 注册流程事件
* @param type
* @param callback
*/
WfForm.registerCheckEvent = (type, callback = (callback) = {}) => {
// WfForm.registerCheckEvent(WfForm.OPER_SAVE+","+WfForm.OPER_SUBMIT,function(callback){
// //... 执行自定义逻辑
// callback();
// });
}
WfForm.ACTION_ADDROW = '添加明细行,需拼明细表序号 KB900190407'
WfForm.ACTION_DELROW = '删除明细行,需拼明细表序号 KB900190407'
WfForm.ACTION_EDITDETAILROW = '移动端-编辑明细行,需拼明细表序号 KB900190501'
WfForm.ACTION_SWITCHDETAILPAGING = '切换明细分页 KB900191201'
WfForm.ACTION_SWITCHTABLAYOUT = '切换模板布局标签页 KB900191201'
WfForm.registerAction = (type, callback) => {
// WfForm.registerAction(WfForm.ACTION_ADDROW+"1", function(index){
// alert("添加行下标是"+index);
// }); //下标从1开始明细1添加行触发事件注册函数入参为新添加行下标
// WfForm.registerAction(WfForm.ACTION_DELROW+"2", function(arg){
// alert("删除行下标集合是"+arg.join(","));
// }); //下标从1开始明细2删除行触发事件
// WfForm.registerAction(WfForm.ACTION_SWITCHDETAILPAGING, function(groupid){
// alert("切换明细表"+(groupid+1)+"的页码触发事件");
// });
// WfForm.registerAction(WfForm.ACTION_SWITCHTABLAYOUT, function(tabid){
// alert("切换到标签项"+tabid+"触发事件");
// });
}
WfForm.convertFieldNameToId = (fieldName, table, flag) => {
// var fieldid = WfForm.convertFieldNameToId("zs");
// var fieldid = WfForm.convertFieldNameToId("zs_mx", "detail_1");
// var fieldid = WfForm.convertFieldNameToId("zs_mx", "detail_1", false);
}
WfForm.getFieldValue = function (fieldMark) {
// fieldMark String 是 字段标示格式field${字段ID}_${明细行号}
// var fieldvalue = WfForm.getFieldValue("field110");
}
WfForm.bindFieldChangeEvent = function (fieldMarkStr, funobj = (obj, id, value) => {
}) {
// fieldMarkStr String 是 绑定字段标示可多个拼接逗号隔开例如field110(主字段),field111_2(明细字段)……
// funobj Function 是 字段值变化触发的自定义函数函数默认传递以下三个参数参数1触发字段的DOM对象参数2触发字段的标示(field27555等)参数3修改后的值
// WfForm.bindFieldChangeEvent("field27555,field27556", function (obj, id, value) {
// console.log("WfForm.bindFieldChangeEvent--", obj, id, value);
// });
}
WfForm.bindDetailFieldChangeEvent = function (fieldMarkStr, funobj = (id, rowIndex, value) => {
}) {
}
WfForm.controlBtnDisabled = function (isDisabled) {
// isDisabled boolean 是 true按钮全部置灰不可操作,false恢复按钮可操作状态
// function subimtForm(params){
// WfForm.controlBtnDisabled(true); //操作按钮置灰
// ...
// WfForm.controlBtnDisabled(false);
// }
}
WfForm.showMessage = function (msg, type, duration) {
// 参数 参数类型 必须 说明
// msg String true 提示信息内容
// type int false 提示类型1(警告)、2(错误)、3(成功)、4(一般)默认为1不同类型提示信息效果不同
// duration Float false 多长时间自动消失单位秒默认为1.5秒
// WfForm.showMessage("结束时间需大于开始时间"); //警告信息1.5s后自动消失
// WfForm.showMessage("运算错误", 2, 10); //错误信息10s后消失
}
WfForm.getBaseInfo = function () {
// console.log(WfForm.getBaseInfo()); //返回当前请求基础信息
// //输出对象说明:
return {
f_weaver_belongto_userid: "5240", //用户信息
f_weaver_belongto_usertype: "0",
formid: -2010, //表单id
isbill: "1", //新表单/老表单
nodeid: 19275, //节点id
requestid: 4487931, //请求id
workflowid: 16084, //路径id
}
}
WfForm.changeFieldValue = function (fieldMark, valueInfo) {
// fieldMark String 是 字段标示格式field${字段ID}_${明细行号}
// valueInfo JSON 是 字段值信息,非浏览按钮字段格式为{value:”修改的值”};specialobj为浏览按钮信息数组格式;showhtml属性只在单行文本类型且只读情况下生效
//修改文本框、多行文本、选择框等字段类型
// WfForm.changeFieldValue("field123", {value:"1.234"});
// //修改浏览框字段的值必须有specialobj数组结构对象
// WfForm.changeFieldValue("field11_2", {
// value: "2,3",
// specialobj:[
// {id:"2",name:"张三"},
// {id:"3",name:"李四"}
// ]
// });
// //修改check框字段(0不勾选、1勾选)
// WfForm.changeFieldValue("field123", {value:"1"});
// //针对单行文本框字段类型,只读情况,支持显示值跟入库值不一致
// WfForm.changeFieldValue("field123", {
// value: "入库真实值",
// specialobj: {
// showhtml: "界面显示值"
// }
// });
}
/**
* 获取流览框显示值
* fieldMark String 字段标示格式field${字段ID}_${明细行号}
* splitChar String 分隔符默认以逗号分隔
* @param fieldMark
* @param splitChar
*/
WfForm.getBrowserShowName = function (fieldMark, splitChar) {
}
2023-02-13 10:40:45 +08:00
/**
* 获取明细行所有行标示
* @param detailMark
*/
WfForm.getDetailAllRowIndexStr = function (detailMark) {
// 遍历明细行的写法
// var rowArr = WfForm.getDetailAllRowIndexStr("detail_1").split(",");
// for(var i=0; i<rowArr.length; i++){
// var rowIndex = rowArr[i];
// if(rowIndex !== ""){
// var fieldMark = "field111_"+rowIndex; //遍历明细行字段
// }
// }
}
2023-02-16 19:00:32 +08:00
/**
添加明细行并设置初始值
* 参数 参数类型 必须 说明
* detailMark String 明细表标示明细1就是detail_1以此递增类推
* initAddRowData JSON 给新增后设置初始值格式为{field110:{value:11},field112:{value:22},},注意key不带下划线标示
* @param detailMark
* @param initAddRowData
*/
WfForm.addDetailRow = function (detailMark, initAddRowData = {}) {
// //明细2添加一行并给新添加的行字段field111赋值
// WfForm.addDetailRow("detail_2",{field111:{value:"初始值"}});
// //添加一行并给浏览按钮字段赋值
// WfForm.addDetailRow("detail_2",{field222:{
// value: "2,3",
// specialobj:[
// {id:"2",name:"张三"},
// {id:"3",name:"李四"}
// ]
// }});
// //动态字段赋值明细1添加一行并给字段名称为begindate的字段赋值
// var begindatefield = WfForm.convertFieldNameToId("begindate", "detail_1");
// var addObj = {};
// addObj[begindatefield] = {value:"2019-03-01"};
// WfForm.addDetailRow("detail_1", addObj);
// //不推荐这种动态键值写法IE不支持避免掉
// WfForm.addDetailRow("detail_1",{[begindatefield]:{value:"2019-03-01"}})
}
/**
* 系统样式的Confirm确认框
* 参数 参数类型 必须 说明
* content String 确认信息
* okEvent Function 点击确认事件
* cancelEvent Function 点击取消事件
* otherInfo Object 自定义信息(按钮名称)
* @param content
* @param okEvent
* @param cancelEvent
* @param otherInfo
*/
WfForm.showConfirm = function (content, okEvent, cancelEvent, otherInfo = {}) {
// WfForm.showConfirm("确认删除吗?", function(){
// alert("删除成功");
// });
// WfForm.showConfirm("请问你是否需要技术协助?",function(){
// alert("点击确认调用的事件");
// },function(){
// alert("点击取消调用的事件");
// },{
// title:"信息确认", //弹确认框的title仅PC端有效
// okText:"需要", //自定义确认按钮名称
// cancelText:"不需要" //自定义取消按钮名称
// });
}
/* ******************* 建模表开发依赖 ******************* */
2023-06-09 17:03:23 +08:00
const ModeList = {
/**
* getCheckedID: function()
*
* 描述: 选中的checkbox的值主表数据ID)
* @returns {undefined}
*/
getCheckedID() {
return undefined;
},
/**
* showLoading: function(show, size, msg)
*
* 描述: 控制全局loading的显示/隐藏
* @param show
* @param size
* @param msg
*/
showLoading(show, size, msg) {
}
}
ModeList.dataLoadAfter = function (data) {
// 描述:在列表数据加载完,对列表的数据进行二次加工,并渲染。 dataLoadAfter传入dataHandle方法用来接收并处理数据dataHandle有两个参数。
// var dataHandle = function(datas,displayType){
// //Changes to 'datas' do not directly modify the real database data, but modify the data received at the front end.
// var newDatas = datas;
// if(displayType == 'normal'){
// console.log(newDatas);
// }
// return newDatas;
// }
// ModeList.dataLoadAfter(dataHandle);
};
2023-02-13 10:40:45 +08:00