/** * 流程模板参照的基础页面 * @author weidy * @date 2022-2-18 */ layui.define(['layer','element','form','table'],function(exports){ var Class = function(){ this.MODELNAME = "refer/WfProcessTemplateRefer"; this.moduleKey = "WfProcessTemplateRefer"; this.backPath = (configData.compatibility?path:configData.processServicePath); this.displayType = { processClassify:'processClassify' }; this.displayTypeTitle = { processClassify: { title: '流程模板分类', url: 'processDefineController/referTreeProcessClassify', queryField: 'processClassifyId', queryUserUrl: 'processDefineController/referGridProcessTemplate' } }; this.defaultConfig = { displayType:[this.displayType.processClassify], textField:'name', valueField:'oid' }; this.showReferDialog = function (referConfig){ var filter = referConfig.filter, name = referConfig.name, title = referConfig.title, target = referConfig.target, value = referConfig.value, text = referConfig.text; var options = referConfig.options; var baseOptions = {}; for(var key in options){ baseOptions[key] = options[key]; } baseOptions.filter = filter; baseOptions.name = name; baseOptions.value = value; baseOptions.text = text; baseOptions.title = title; baseOptions.favUser = false; //displayType默认是部门,角色。不需要设置,因为里面会自动设置 baseOptions.setValue = function (filter,name,value,rawValue,isClose,selectRecords){ target.setValue(filter,name,value,rawValue,isClose,selectRecords); } this.viewUserInDialog(baseOptions); } /** * 直接显示选择的对话框,这个经常在点击按钮后的功能里使用 * @param options 配置的信息,包含如下属性 * filter ,标识 * name ,标识名称 * displayType:显示选项卡,[processTemplate.displayType.processClassify], * setValue:function (filter,name,value,rawValue,isClose,allSelectValues) {} 设置值的回调 * @returns 窗口的索引号 */ this.viewUserInDialog = function (options) { //在对话框中选择用户 var that = this; options = $.extend(that.defaultConfig,options); options.userUrl = $webUtil.getValueFromObj(options,['url','referUrl'],that.displayTypeTitle.processClassify.queryUserUrl); options.textField = $webUtil.getValueFromObj(options,['textField'],that.defaultConfig.textField); options.valueField = $webUtil.getValueFromObj(options,['valueField'],that.defaultConfig.valueField); var filter = options.filter; var name = options.name; var valueInfo = ($webUtil.isNotNull(options.text)?("已设置的值为[" +options.text +"]"):'未设置值'); var referIndex = $webUtil.dialog({ title:(options.title?options.title:'请选择流程模板'), btn:['确定','取消'], content:'
', area:[(($webUtil.isNotNull(options.width) && options.width*1>1) ?options.width*1 : 1050) +'px', (($webUtil.isNotNull(options.height) && options.height*1>1) ?options.height*1 : 670) + 'px'], btnBefore:valueInfo, yes:function(index,layero){ var selectValue = that.getSelectValue(filter,name); if(selectValue){ options.setValue(filter,name,selectValue.value,selectValue.rawValue,true,selectValue.allValues); layer.close(referIndex); } }, success:function(layero){ that.showGrid(filter,name,options); } }); return referIndex; }; this.setConfig=function(filter,name,options){ var that = this; if(!that.referConfig){ that.referConfig = {}; } that.referConfig[filter + "_" + name] = options; }; this.getConfig=function(filter,name){ var that = this; if(!that.referConfig){ that.referConfig = {}; } if((filter + "_" + name) in that.referConfig){ return that.referConfig[filter + "_" + name]; } }; this.showGrid =function (filter,name,options) { //显示 var that = this; that.setConfig(filter,name,options); var contentFilter = filter + "_" + name; var typeHtml=['