/** *识别的类型 */ enum OcrType { /** *驾照识别 */ drivingLicense = "drivingLicense", /** *车牌识别 */ licensePlate = "licensePlate", /** *行驶证识别 */ vehicleLicense = "vehicleLicense" } /** *百度云服务 */ class BaiduService { /** * 得到AcceessToken * @returns 返回AccessTokenId */ static AccessToken(): string /** * 通用文字识别-高精度版 在通用文字识别的基础上,提供更高精度的识别服务,支持更多语种识别(丹麦语、荷兰语、马来语、瑞典语、印尼语、波兰语、罗马尼亚语、土耳其语、希腊语、匈牙利语),并将字库从1w+扩展到2w+,能识别所有常用字和大部分生僻字。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390584857033179136, "words_result_num": 2 "words_result": [ { "words": " OCR", "location": { "top": 19, "left": 54, "width": 119, "height": 46 } }, { "words": "百度通用文字识别高精度版", "location": { "top": 85, "left": 54, "width": 206, "height": 37 } } ], } */ static accurate(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IOCRWordsPosition[] /** * 通用文字识别- 在通用文字识别的基础上,提供更高精度的识别服务,支持更多语种识别(丹麦语、荷兰语、马来语、瑞典语、印尼语、波兰语、罗马尼亚语、土耳其语、希腊语、匈牙利语),并将字库从1w+扩展到2w+,能识别所有常用字和大部分生僻字。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390582998516105216, "words_result_num": 2 "words_result": [ { "words": " OCR" }, { "words": "百度通用文字识别高精度版" } ], } */ static accurateBasic(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IDrivingLicense /** * 驾驶证识别 支持对机动车驾驶证正页及副页所有15个字段进行结构化识别,包括证号、姓名、性别、国籍、住址、出生日期、初次领证日期、准驾车型、有效期限、发证单位、档案编号等。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回驾驶证的数据IDrivingLicense */ static drivingLicense(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IDrivingLicense /** * 支持对图片中的手写中文、手写数字进行检测和识别,针对不规则的手写字体进行专项优化,识别准确率可达90%以上。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390584857033179136, "words_result_num": 2 "words_result": [ { "words": " OCR", "location": { "top": 19, "left": 54, "width": 119, "height": 46 } }, { "words": "百度通用文字识别高精度版", "location": { "top": 85, "left": 54, "width": 206, "height": 37 } } ], } */ static handwriting(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IOCRWordsPosition[] /** * 车牌图片识别 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回车牌的数据 ILicensePlateResutl */ static licensePlate(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): ILicensePlate /** * 身份证混贴识别支持自动检测与识别身份证正反面在同一张图片上的场景,一次识别图片中身份证正反面所有字段。 支持对二代居民身份证正反面所有8个字段进行结构化识别,包括姓名、性别、民族、出生日期、住址、身份证号、签发机关、有效期限,识别准确率超过99%;同时支持身份证正面头像检测,并返回头像切片的base64编码及位置信息。 同时,支持对用户上传的身份证图片进行图像风险和质量检测,可识别图片是否为复印件或临时身份证,是否被翻拍或编辑,是否存在正反颠倒、模糊、欠曝、过曝等质量问题。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390650576630448128, "words_result_num": 2, "words_result": [ { "location": { "left": 56, "top": 0, "width": 21, "height": 210 }, "words": "3" } ], } */ static multiIdcard(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): any[] /** * 对图片中的数字进行提取和识别,自动过滤非数字内容,仅返回数字内容及其位置信息,识别准确率超过99%。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390650576630448128, "words_result_num": 2, "words_result": [ { "location": { "left": 56, "top": 0, "width": 21, "height": 210 }, "words": "3" } ], } */ static numbers(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IOCRWordsPosition[] /** * 行驶证识别 对机动车行驶证主页及副页所有22个字段进行结构化识别,包括号牌号码、车辆类型、所有人、品牌型号、车辆识别代码、发动机号码、核定载人数、质量、尺寸、检验记录等。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回行驶证识别的数据 IVehicleLicense */ static vehicleLicense(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IVehicleLicense /** * 针对网络图片进行专项优化,支持识别艺术字体或背景复杂的文字内容。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回识别的文字结果 { "log_id": 1390650576630448128, "words_result_num": 2, "words_result": [ { "words": "梦想起航" }, { "words": "前往下一个目的地" }, { "words": "开始新的旅程" } ], } */ static webimage(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IOcrWords[] } interface IBaiduOcrResult { /** *日志id 用于差为 */ log_id: string /** *识别的项的数量 */ words_result_num: number } /** *驾驶证识别的结果接口 */ interface IDrivingLicense { /** *日志id 用于差为 */ log_id: string /** *识别的项的数量 */ words_result_num: number 住址: IOcrWords 使用性质: IOcrWords 发动机号码: IOcrWords 发证单位: IOcrWords 发证日期: IOcrWords 号牌号码: IOcrWords 品牌型号: IOcrWords 所有人: IOcrWords 注册日期: IOcrWords 车辆类型: IOcrWords 车辆识别代号: IOcrWords } /** *驾驶证识别的结果接口 */ interface IDrivingLicenseResult { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: IDrivingLicense /** *识别的项的数量 */ words_result_num: number } /** *车牌的识别结果 */ interface ILicensePlate { /** *车牌的颜色 */ color: string /** *日志id 用于差为 */ log_id: string /** *车牌号码 */ number: string /** *识别的项的数量 */ words_result_num: number } /** *车牌的识别结果 */ interface ILicensePlateResutl { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: ILicensePlate /** *识别的项的数量 */ words_result_num: number } /** *通用识别总结果 */ interface IOCRCommonResutl { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: any /** *识别的项的数量 */ words_result_num: number } /** *OCR位置 */ interface IOCRPosition { /** *高 */ height: number /** *水平坐标 X */ left: number /** *垂直坐标 Y */ top: number /** *宽 */ width: number } /** *包含了坐标的识别总结果 */ interface IOCRPositionResutl { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: IOCRWordsPosition[] /** *识别的项的数量 */ words_result_num: number } interface IOCRResutl { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: IOcrWords[] /** *识别的项的数量 */ words_result_num: number } /** *包含坐标的识别结果项 */ interface IOCRWordsPosition { /** *字符串的位置 */ location: IOCRPosition /** *识别的字符串 */ wrods: string } /** *识别的结果 */ interface IOcrWords { words: string } /** *行驶证识别的结果接口 */ interface IVehicleLicense { /** *日志id 用于差为 */ log_id: string /** *识别的项的数量 */ words_result_num: number 住址: IOcrWords 使用性质: IOcrWords 发动机号码: IOcrWords 发证单位: IOcrWords 发证日期: IOcrWords 号牌号码: IOcrWords 品牌型号: IOcrWords 所有人: IOcrWords 注册日期: IOcrWords 车辆类型: IOcrWords 车辆识别代号: IOcrWords } /** *行驶证识别的结果接口 */ interface IVehicleLicenseResult { /** *日志id 用于差为 */ log_id: string /** *识别结果 */ words_result: IVehicleLicense /** *识别的项的数量 */ words_result_num: number } /** *百度工具组件 验证,图片识别(车牌,票据,身份证.....),语音识别 */ class BaiduTool extends InvisibleBase { /** * 驾驶证识别 支持对机动车驾驶证正页及副页所有15个字段进行结构化识别,包括证号、姓名、性别、国籍、住址、出生日期、初次领证日期、准驾车型、有效期限、发证单位、档案编号等。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回驾驶证的数据IDrivingLicense */ drivingLicense(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IDrivingLicense /** * 车牌图片识别 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回车牌的数据 ILicensePlate */ licensePlate(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): ILicensePlate /** * 行驶证识别 对机动车行驶证主页及副页所有22个字段进行结构化识别,包括号牌号码、车辆类型、所有人、品牌型号、车辆识别代码、发动机号码、核定载人数、质量、尺寸、检验记录等。 * @param imgUrl 需要识别的图片全路径如: http://xxx.com/yyyy/123.jpg * @param onSuccess 可选参数 成功回调 * @param onError 可选参数 错误回调 * @param onCompolete 可选参数 完成回调* @returns 返回行驶证识别的数据 IVehicleLicense */ vehicleLicense(imgUrl: string,onSuccess: any,onError: any,onCompolete: any): IVehicleLicense } /** *按钮类型的输入框, 按钮可以做一些额外的事情,如弹出窗口,点击调用处理 等等操作 */ class ButtonInputBase extends InputBase { /** * 注册点击确定的回调 * @param callback 回调 */ onButtonClick(callback: onButtonClickScript): void } interface IButtonInputConfig { /** *组件宽度 */ componentWidth: string /** *是否显示label */ isShowLabel: boolean /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *校验规则 */ verify: string } /** *点击时候的回调函数 *@param cmp 组件实例 */ declare type onButtonClickScript = (cmp: ButtonInputBase) => void class InputOCR extends ButtonInputBase { /** *识别的类型 */ ocrType: OcrType /** *服务端上传接口 */ url: string /** * 注册点击确定的回调 * @param callback 回调 */ onOCR(callback: onOCRScriptHandle): void } /** *识别的事件回调 *@param cmp AI输入框组件 *@param result 识别的结果 *@returns undefined 返回识别的处理结果 */ declare type onOCRScriptHandle = (cmp: InputOCR,result: any) => any /** *属性编辑基类 */ class AttributeEditorBase { } /** *属性编辑器基本接口 */ interface IAttributeEditorBase { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *按钮组件基类 */ class ButtonBase extends ContainerBase { /** *按钮的标题 */ btnText: string /** *组件间隔 */ margin: string /** *点击事件js脚本字符串 */ onClickScript: string /** * 注册点击事件 * @param handle 事件回调 */ onClick(handle: onButtonClick): void } /** *按钮基类配置接口 */ interface IBtnBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *按钮的标题 */ btnText: string /** *组件的样式class */ class: string /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *点击事件 */ onClick: any /** *点击事件js脚本字符串 */ onClickScript: string /** *父组件 */ parentCmp: ComponentBase /** *组件的唯一标识 */ xtype: string } /** *集合类 */ class CollectionBase { } /** *鼠标的光标形状 */ enum Cursor { /** *浏览器默认 */ auto = "auto", /** *十字线 */ crosshair = "crosshair", /** *通常是一个箭头 */ default = "default", /** *手型 */ pointer = "pointer" } /** *设备类型 */ enum DeviceType { /** *平板 */ ipad = "ipad", /** *电脑 */ pc = "pc", /** *手机 */ phone = "phone" } /** *停靠的方式 */ enum DockType { /** *靠下停靠 */ bottom = "bottom", /** *居中 */ center = "center", /** *填满父容器 */ full = "full", /** *靠左停靠 */ left = "left", /** *无 */ none = "none", /** *靠右停靠 */ right = "right", /** *靠上停靠 */ up = "up" } /** *页面的状态 */ enum PageEditState { edit = "edit",new = "new",none = "none",view = "view" } /** *组件基类 非可视化组件 支持:焦点, 拖拽 */ class ComponentBase extends SerializeComponetBase { /** *组件背景 */ background: string /** *是否可用 是否可以有焦点,事件 等等 */ enable: boolean /** *组件隐藏/显示 true 隐藏 ,则反之 */ hide: boolean /** *鼠标停留时候提示信息 */ hitTitle: string /** *子组件数组包含可视组件 (页面渲染时候会按顺序渲染这个数组) 如果需要自定义组件渲染的子组件的顺序 @see doRenderChilds */ items: ComponentBase[] /** *父组件 */ parentCmp: ComponentBase /** * 在组件数组后面增加子组件 这里只是组件的实例增加,页面并没重画 * @param childCmp 子组件 */ appendChildCmp(childCmp: ComponentBase): void /** * 添加子组件的html 子类可以自定实现自定义的添加子组件的实现方式. * @param childCmp */ appendChildHtmlElemt(childCmp: ComponentBase): void /** * 更新组件,当修改了属性时候需要修改重新画组件的时候调用. 子类可以覆盖来自定义更新重画 */ doUpdate(): void /** * 遍历所有子组件 * @param eachCallback 遍历的回到函数 */ eachChild(eachCallback: any): void /** * 判断是否存在组件 * @param childCmp 需要判断存在的组件* @returns 成功就返回true,否则返回false */ extistComponent(childCmp: any): boolean /** * 通过组件id来获取子组件 * @param cmpId 组件Id* @returns 成功返回组件实例,否则返回undefine */ findChildComponentById(cmpId: string): ComponentBase /** * 通过组件name来获取子组件 * @param cmpName 组件name* @returns 成功返回组件实例,否则返回undefine */ findChildComponentByName(cmpName: string): ComponentBase /** * 通过一个回调函数的放回值来查找组件实例 * @param callback 遍历整个函数组件树的回调,返回true时候符合条件,否则* @returns 返回找到的找到的组件 */ findChildComponents(callback: any): T[] /** * 通过组件id来获取子子孙孙组件 * @param cmpId 组件Id* @returns 成功返回组件实例,否则返回undefine */ findComponentById(cmpId: string): ComponentBase /** * 通过组件name来获取子子孙孙组件 * @param cmpName 组件name* @returns 成功返回组件实例,否则返回undefine */ findComponentByName(cmpName: string): ComponentBase /** * 通过组件的类来获取组件实例 * @param parent 父组件 * @param callback 遍历整个函数组件树的回调,返回true时候符合条件,否则* @returns 返回找到的找到的组件数组 */ findComponents(parent: ComponentBase,callback: any): T[] /** * 通过组件的类来获取子孙组件实例 * @param classDef 需要查找的子孙组件的类* @returns 返回找到的找到的组件 */ getChildComponentByType(classDef: any): T /** * 通过组件的类来获取子孙组件实例数组 * @param classDef 需要查找的子孙组件的类* @returns 返回组件实例数组 */ getChildComponentsByType(classDef: any): T[] /** * 通过组件的类来获取组件实例 * @param parent 父组件 * @param classDef 需要查找的子组件的类* @returns 返回找到的第一个组件 */ getComponentByType(parent: any,classDef: any): T /** * 通过子孙组件的类来获取子孙组件实例 * @param parent 父组件 * @param classDef 需要查找的子孙组件的类定义* @returns 返回找到的找到的组件数组 */ getComponentsByType(parent: any,classDef: any): T[] /** * 组件的最外层的jquery对象 * @returns 返回组件的 jquery对象 */ getElemt(): JQuery /** * 获取组件的位置索引 * @returns 返回组件的位置索引 */ getIndex(): number /** * 得到当前组件的page 组件 * @returns 返回找到的designerPage 组件实例 */ getPage(): DesignerPageBase /** * 获取父组件 * @returns 父组件 */ getParent(): ComponentBase /** * 初始化组件的css * @returns 返回组件样式对象. */ iniCss(): any /** * 在组件before后添加组件 * @param childCmp 子组件 * @param before 插入的位置( 0 ~ items.length-1) */ insertChildAfterCmp(childCmp: ComponentBase,before: ComponentBase): void /** * 在组件数组指定的位置插入组件后面增加子组件 * @param childCmp 子组件 * @param index 插入的位置( 0 ~ items.length-1) */ insertChildCmp(childCmp: ComponentBase,index: number): void /** * 注册组件的鼠标左键击事件 * @param clickHandle 事件回调函数 */ onClick(clickHandle: onClickHandle): void /** * 注册键盘按下弹起事件 * @param keyHandle 事件回调函数 */ onKeyPress(keyHandle: onKeykHandle): void /** * 注册键盘按键弹起事件 * @param keyHandle 事件回调函数 */ onKeyUp(keyHandle: onKeykHandle): void /** * 注册键盘按下时事件 * @param keyHandle 事件回调函数 */ onKeydown(keyHandle: onKeykHandle): void /** * 注册组件的鼠标左键按下 * @param clickHandle 事件回调函数 */ onLeftDown(clickHandle: onClickHandle): void /** * 注册组件的鼠标左键弹起 * @param clickHandle 事件回调函数 */ onLeftUp(clickHandle: onClickHandle): void /** * 注册组件的鼠标移动 * @param mouseHandle 事件回调函数 */ onMouseMove(mouseHandle: onClickHandle): void /** * 注册组件所属的Page加载完毕回调,这时候组件已经渲染 $elemt应不会出现空 可用于初始化组件 * @param fn 回调函数 */ onPageLoad(fn: onPageLoadHandle): void /** * 注册组件的鼠标右键事件 * @param clickHandle 事件回调函数 */ onRightClick(clickHandle: onClickHandle): void /** * 注册组件的鼠标右键按下 * @param clickHandle 事件回调函数 */ onRightDown(clickHandle: onClickHandle): void /** * 注册组件的鼠标右键弹起 * @param clickHandle 事件回调函数 */ onRightUp(clickHandle: onClickHandle): void /** * 移除自己 */ remove(): void /** * 清除所有子组件 */ removeAllChildComponent(): void /** * 移除下一级的子组件 * @param cmp 需要移除的组件实例 */ removeChildComponent(cmp: ComponentBase): void /** * 移除子组件通过组件id * @param cmpId 组件Id */ removeChildComponentById(cmpId: string): void /** * 移除子组件通过组件Name * @param cmpName 组件名称 */ removeChildComponentByName(cmpName: string): void /** * 移除下一级的子组件 * @param callback 移除每个组件时候的回调,注意会回调多次 */ removeChildComponentExt(callback: any): void /** * 设置背景颜色 * @param value */ setBackground(value: string): void /** * 设置组件的css * @param value */ setCss(value: object): void /** * 设置是否可用 true 可以用,接收点击,焦点,否则不允许接受焦点 * @param value */ setEnable(value: boolean): void /** * 设置隐藏 * @param value true 组件隐藏,否则显示 */ setHide(value: boolean): void /** * 设置页面实例,一般用于静态渲染时候getPage为空 * @param page */ setPage(page: DesignerPageBase): void /** * 设置父组件 * @param parent 父组件实例 非空时候设置组件的父组件, null,undefine 移除父组件 * @param index 插入的子元素的位置( 0 ~ items.length-1) */ setParent(parent: ComponentBase,index: number): void /** * 设置父组件 ,在before后面插入组件 * @param parent 父组件实例 非空时候设置组件的父组件, null,undefine 移除父组件 * @param before 在before后面插入组件 */ setParentAfter(parent: ComponentBase,before: ComponentBase): void } /** *组件容器基类 可视化组件 */ class ContainerBase extends ComponentBase { /** * 把子组件的html元素$elemt添加到自己的children里面; 一些子组件需要定义在父组件的特定的位置不一定要是父组件的一级子元素 子类可以自定实现自定义的添加子组件的实现方式. * @param childCmp 添加的子组件 */ appendChildHtmlElemt(childCmp: ComponentBase): void /** * 得到容器内编辑组件的值 一般用于提交数据 * @returns */ getFieldValues(): any /** * 判断组件是否拥有焦点 * @returns 返回组件是否有焦点 */ getFocuse(): boolean /** * 重新排列位置以及子组件的位置,大小 * @param includeChild 可选参数 是否包含子组件一起调整 默认:true */ reSize(includeChild: boolean): void /** * 重新设置子组件的的大小,位置等..... 注意与 update的区别, 这个只是重新设置每个组件的位置和大小并没用删除html元素然后重建. */ reSizeChilds(): void /** * 设置组件的鼠标形状 * @param value 鼠标形状的枚举 */ setCursor(value: Cursor): void /** * 设置组件是否可用 * @param value true可用 则反之 */ setEnable(value: boolean): void /** * 设置组件焦点 子类覆盖自定义组件内的焦点行为 */ setFocuse(): void /** * 设置组件字体 * @param value 字体字符串 */ setFont(value: Font): void /** * 设置组件的间隔距离 * @param value true 组件隐藏,否则显示 */ setMargin(value: string): void /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: any): void /** * 校验容器内的可编辑组件的值 * @returns */ submit(): Boolean } /** *组件的最顶层的容器组件基类 */ class DesignerPageBase extends ContainerBase { /** *设计时返回组件访问对象 ```javascript cmp.getPage().components.table1.load(); ``` */ components: IReflectTypesHolder /** *开启大屏 如果页面是用于大屏则开启这个开关 */ isbigscreen: boolean /** *页面模型的唯一id */ modelId: string /** * 关闭页面窗口 */ close(): void /** * 刷新组件/重画组件 子孙组件都重画 */ doUpdate(): void /** * 得到form的内的所有组件的值 * @returns */ getFieldValues(): any /** * 通过参数名获取参数实例 * @param paramName 参数名* @returns 返回参数实例. */ getParamByName(paramName: string): IParam /** * 得到页面的参数对象 访问Param对象的例子: Common.msg(cmp.getPage().getParamObj().paramName) * @returns 返回页面参数对象 */ getParamObj(): object /** * 得到页面参数的值 * @param paramName 参数名* @returns 返回参数的值.不存在参数返回undefine */ getParamValue(paramName: string): any /** * 获取页面的参数数组 * @returns 返回页面参数数组 */ getParams(): IParam[] /** * 获取设置临时参数变量 * @returns 返回通过setTempParamObj设置的参数对象 */ getTempParamObj(): object /** * 获取设置临时参数变量值 * @param paramName 参数名* @returns 返回临时参数变量值 */ getTempParamValue(paramName: string): any /** * 注册是否允许关闭回调 * @param fn 回调函数 */ onCanClose(fn: onPageCanCloseHandle): void /** * 注册关闭回调 * @param fn 回调函数 */ onClose(fn: onPageCloseHandle): void /** * 移除子组件 * @param cmp 组件实例 */ removeComponent(cmp: ComponentBase): void /** * 通过组件id移除子组件 * @param id 组件实例id */ removeComponentById(id: string): void /** * 设置页面的窗口唯一句柄 * @param h 一般就是弹出层的ID */ setHandle(h: any): void /** * 设置并融合页面的参数数组 不存在就新增,存在就更新 例子: setParams([{name:'param1',value:'paramValue1'},{name:'param1',value:'paramValue1'},]) * @param param IParam对象数组 */ setParams(param: IParam[]): void /** * 设置并融合页面的参数数组 不存在就新增,存在就更新 例子: setParams({param1:paramvalue1,param2:paramvalue2}) * @param paramObj 参数对象 */ setParamsObj(paramObj: Object): void /** * 设置临时参数变量,这个参数没有参与数据源的查询,可用于临时变量的存储. * @param paramObj 参数变量对象 */ setTempParamObj(paramObj: Object): void /** * 根据modeCode获取page的实例 * @param modelCode 界面模型的编号 * @param designModel 是否设计模式 * @param callback 获取完后的回调 成功 err为空 */ static getPageByCode(modelCode: string,designModel: boolean,callback: any): void /** * 根据modelId获取page的实例 * @param modelId 界面模型的rwid * @param designModel 是否设计模式 * @param callback 获取完后的回调 成功 err为空 */ static getPageById(modelId: string,designModel: boolean,callback: any): void } /** *不可视组件基类 一般用于界面上的不可视组件 */ class InvisibleBase extends ComponentBase { } interface Font { color: string font-family: string font-size: string font-style: string font-weight: string text-align: string text-decoration: string } /** *行为接口类 */ interface IAction { /** *名称 */ action: string /** *干活的函数 */ onDo: Function /** *快捷键 */ shortCut: string /** *标题 */ text: string } /** *组件的基类接口 */ interface IComponentBase { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *组件的唯一标识 */ xtype: string } interface IContainerBase { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *数据编辑组件接口 在提交时候能获取其值,并校验它 */ interface IFieldComponent { /** *数据源关联的字段值 */ field: string /** *校验规则 */ verify: string /** *校验后的信息 */ verifyText: string /** * 开始校验 * @returns true 校验通过,否则反之 不通过后verifyText保存了校验的错误信息 */ doVerify(): Boolean /** * 获取组件的值 * @returns 返组件的值 */ getValue(): any /** * 校验的处理 一般用于弹出或者显示保存时候返回的错误信息 */ verifyTips(): void } interface IInvisibleBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *组件的唯一标识 */ xtype: string } declare type onClickHandle = (e: any,cmp: ComponentBase) => void /** *带数据源属性的组件基类 */ class DbComponentBase extends ContainerBase { /** * 获取数据源实例 * @returns 范湖绑定的数据源实例 */ getDataSource(): DataSourceBase /** * 设置数据源 * @param value 可以是数据源实例或者id */ setDataSource(value: string | DataSourceBase): void } /** *数据源组件接口 */ interface IDbComponent { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } interface IDbComponentBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *下拉组件基类 */ class DropDownBase extends InputBase { /** * 得到下拉组件的下拉数据源 * @returns 返回下拉的数据源实例 */ getDropDownDataSouce(): DataSourceBase /** * 得到下拉编辑器 * @returns 下拉编辑器实例 */ getPopEdior(): DropDownInputEditorBase /** * 得到当前选择下拉数据源的行,一般用于获取现在的行的另外列的值 * @returns 当前下拉数据源的行实例 */ getSelectedRow(): Row /** * 得到组件的值数组 * @returns 返回数组 */ getValues(): string[] /** * 静态渲染 * @param setting 配置项 */ staticRender(setting: IDropDownBaseConifg): void } /** *下拉编辑器基类 */ class DropDownInputEditorBase extends DropDownEditorBase { /** * 渲染组件的值刷新下拉组件的元素的状态 */ renderValues(): void } interface IDropDownBaseConifg { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string /** *设置组件的值 */ setValue: any staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *下拉的选择框接口 */ interface IDropDownEditor { /** * 隐藏下拉框 */ hide(): void /** * 显示下拉框 */ show(): void } /** *下拉组件的编辑基类 */ class DropDownEditorBase { /** * 初始化组件的css * @returns 返回组件样式对象. */ iniCss(): any } interface IDropDownEditorBaseConfig { component: IDropDrownComponent } /** *下拉组件的接口 需要实现下拉组件的接口 */ interface IDropDrownComponent { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *下拉高度 */ drogDownHeight: Number /** *组件字体 */ font: Font /** * 得到下拉的挂靠jquery元素 */ getDropDownElemt: any /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *组件的唯一标识 */ xtype: string } /** *数据源字段组件基类 具备选择数据源和绑定的数据源字段属性 filed, setValue ,getValue */ class FieldDbComponentBase extends DbComponentBase { /** * 得到组件的值 * @returns 返回值 */ getValue(): any /** * 注册值发生变动时候的事件 注意,数据源第一次给组件赋值初始化时候是无法触发该事件,否则会死循环 * @param callback 值修改事件回调函数 */ onValueChanged(callback: onValueChangeHandle): void /** * 设置组件的值 子类可以覆盖此函数实现自定义赋值过程 * @param value 值 */ setValue(value: any): void } interface IFieldDbComponentBase { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *设置组件的值 */ setValue: any /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *弹出层动画类型 */ enum FormAnimType { formAnim00 = "form-anim-00",formAnim01 = "form-anim-01",formAnim02 = "form-anim-02",formAnim03 = "form-anim-03",formAnim04 = "form-anim-04",formAnim05 = "form-anim-05",formAnim06 = "form-anim-06",none = -1 } /** *按钮排列方式 */ enum FormBtnAlign { /** *按钮居中对齐 */ center = "c", /** *按钮左对齐 */ left = "l", /** *按钮右对齐。默认值,不用设置 */ right = "r" } /** *类的类型 */ enum FormClassType { yhForm = ".yh-form",yhFormBtn = "yh-form-btn",yhFormClose = "yh-form-close",yhFormContent = "yh-form-content",yhFormDialog = ".yh-form-dialog",yhFormIframe = "yh-form-iframe",yhFormMain = ".yh-form-main",yhFormTitle = ".yh-form-title" } enum FormIcon { /** *错误 */ error = 2, /** *感叹号 */ exclamation = 0, /** *开心 */ happly = 6, /** *信息 默认 */ info = -1, /** *锁定 */ lock = 4, /** *疑问 */ question = 3, /** *伤心 */ sad = 5, /** *确认 */ success = 1 } /** *输入框的类型 */ enum FormInputType { pwd = 1,text = 0,texteare = 2 } /** *加载主题 */ enum FormLoadTheme { /** *主题一 */ theme0 = 0, /** *主题二 */ theme1 = 1, /** *主题三 */ theme2 = 2 } /** *弹出窗口的位置 */ enum FormOffset { /** *默认坐标,即垂直水平居中 */ auto = "auto", /** *底部停靠 */ b = "b", /** *左边停靠 */ l = "l", /** *左下角 */ lb = "lb", /** *左上角 */ lt = "lt", /** *右边停靠 */ r = "r", /** *右下角 */ rb = "rb", /** *右上角 */ rt = "rt", /** *顶部停靠 */ t = "t" } /** *弹出层的类型 */ enum FormType { /** *信息框,默认 */ dialog = "dialog", /** *iframe层 */ iframe = "iframe", /** *加载层 */ loading = "loading", /** *页面层 */ page = "page", /** *tips层 */ tips = "tips" } /** *tips方向 */ enum FromtipsDirection { down = "down",left = "left",right = "right",up = "up" } /** *弹窗类 */ class Form { /** * 弹出警告窗 * @param content 内容 * @param options 设置项,可以设置弹出窗的配置项 * @param yes 按确定时候的回调函数* @returns 返回弹出层的唯一id */ static alert(content: string,options: FormHandle | IFormConfirmOptions,yes: FormHandle): number /** * 关闭 * @param index 弹出层的唯一id * @param force 强行关闭,不考虑canClose事件* @returns 返回false关闭失败,其他都成功 */ static close(index: number,force: boolean): boolean /** * 关闭所有层 * @param type */ static closeAll(type: FormType): void /** * 弹出询问 * @param content 询问内容 * @param options 配置项 * @param yes 点击确定后触发 * @param cancel 点击取消触发* @returns 返回弹出层的唯一id */ static confirm(content: string,options: IFormConfirmOptions,yes: FormHandle,cancel: FormHandle): number /** * 全屏 * @param index 弹出层的唯一id */ static full(index: number): void /** * 获取子iframe的DOM * @param selector jquery的选择字符串 'html','div','.classname' 等等与jquery 的元素选择字符串相同 * @param index 弹出层的唯一id* @returns 返回iframe的DOM */ static getChildFrame(selector: any,index: any): JQuery /** * 弹出正在加载层 * @param icon 主题图标 * @param options 弹出层的配置项* @returns 返回弹出层的唯一id */ static load(icon: FormIcon,options: IFormLoadOptions): number /** * 最小化 * @param index 弹出层的唯一id */ static min(index: number): void /** * 弹出提示层 * @param content 提示信息 * @param options 配置项 * @param end 结束的回调* @returns 返回弹出层的唯一id */ static msg(content: string,options: IFormMsgOptions,end: any): number /** * 开启弹窗 * @param options 配置项* @returns 返回弹出层的唯一id */ static open(options: IFormOptions): number /** * 展示相册 from * @param options 配置项 * @param loop 循环 * @param key 唯一值* @returns 返回弹出层的唯一id */ static photos(options: IFormPhotoOptions,loop: boolean,key: any): number /** * prompt弹出框 * @param options 弹出框选项 * @param yes 点击确定回调* @returns 返回弹出层的唯一id */ static prompt(options: IFormPromptOptions,yes: any): number /** * tab层 * @param options 配置项* @returns 返回弹出层的唯一id */ static tab(options: IFormTabOptions): number /** * 吸附在组周围的tips * @param content 提示信息 * @param $follow 吸附的html的id 如: "#id" 或者 jquery对象 * @param options 弹出层的配置项* @returns 返回弹出层的唯一id */ static tips(content: string,$follow: JQuery,options: IFormTipsOptions): number /** * 改变title * @param newTitle 修改抬头的名称 * @param index 弹出层的唯一id */ static title(newTitle: string,index: number): void } /** *弹窗的实例类 */ class FormInstance { /** *动画类型 */ anim: FormAnimType /** *区域范围 在默认状态下,是宽高都自适应的,但当你只想定义宽度时,你可以area: '500px',高度仍然是自适应的。当你宽高都要定义时,你可以area: ['500px', '300px'] */ area: string | string[] /** *按钮 默认:'确认' 信息框模式时,btn默认是一个确认按钮,其它层类型则默认不显示,加载层和tips层则无效。当您只想自定义一个按钮时,你可以btn: '我知道了',当你要定义两个按钮时,你可以btn: ['yes', 'no']。当然,你也可以定义更多按钮,比如:btn: ['按钮1', '按钮2', '按钮3', …],按钮1的回调是yes,而从按钮2开始,则回调为btn2: function(){},以此类推。如: */ btn: string[] /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 默认:FormIcon.info */ icon: FormIcon /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number /** * 获取子iframe的DOM * @param selector jquery元素选择字符串* @returns 子iframe的DOM */ getChildFrame(selector: any): JQuery /** * iframe层自适应宽高 */ iframeAuto(): void /** * 重置iframe url * @param url 重置的路径 */ setIframeSrc(url: string): void /** * 修改弹出层的标题 * @param newTitle 新标题 */ setTitle(newTitle: string): void } /** *form全局配置 */ interface IFormConfig { /** *默认动画风格 */ anim: number /** *还允许加载拓展的css皮肤 如果 'myskin/style.css' */ extend: string /** *form所在的目录,可以是绝对目录,也可以是相对目录 如果您是采用seajs或者requirejs加载 AMD UMD 模块加载需要添加 */ path: string /** *主题 */ theme: string } /** *询问的配置项 */ interface IFormConfirmOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *加载层的配置项 */ interface IFormLoadOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *自动消失的时间(豪秒) */ time: number /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *弹提示出层的配置项 */ interface IFormMsgOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *自动消失的时间(豪秒) */ time: number /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *form配置通用的配置项 */ interface IFormOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *相册的图片数据json结构 */ interface IFormPhotoJson { /** *图片名 */ alt: string /** *图片id */ pid: string /** *原图地址 */ src: string /** *缩略图地址 */ thumb: string } /** *图片弹出form配置 */ interface IFormPhotoOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string img: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any photos: JQuery | IFormPhotos /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *切换图片时触发 */ tab: any /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *图片弹出form 明细配置 */ interface IFormPhotos { /** *相册包含的图片,数组格式 */ data: IFormPhotoJson[] /** *相册id */ id: string /** *初始显示的图片序号,默认0 */ start: number /** *相册标题 */ title: string } interface IFormTab { /** *tab内容 */ content: string /** *tab标题 */ title: string } /** *tab的form 配置 */ interface IFormTabOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *页签改变回调 */ change: any /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *页签 */ tab: IFormTab[] /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } /** *tips配置 */ interface IFormTipsOption { /** *颜色 */ color: string /** *方向 */ direct: FromtipsDirection } /** *询问的配置项 */ interface IFormTipsOptions { /** *动画 */ anim: FormAnimType /** *区域范围 例如: area: ['100','200'] 或者 area: ['100%','200%'] 或者 area: '100' 或者 area: ['calc(100%-100px)','calc(100%-100px)'] */ area: string | string[] /** *按钮 */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *跟随的jquery元素 */ follow: JQuery /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 顶部坐标 offset: 'r' 右边缘坐标 offset: 'b' 底部坐标 offset: 'l' 左边缘坐标 offset: 'lt' 左上角 offset: 'lb' 左下角 offset: 'rt' 右上角 offset: 'rb' 右下角 */ offset: string /** *是否允许关闭回调 */ onCanClose: FormHandle /** *右上角关闭按钮触发的回调 */ onCancel: FormHandle /** *无论是确认还是取消,只要层被销毁了,onClosed都会执行,不携带任何参数。 */ onClosed: any /** *最大化回调 */ onFull: FormHandle /** *最小化回调 */ onMin: FormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: FormHandle /** *监听窗口拉伸动作 */ onResizing: FormHandle /** *还原回调 */ onRestore: FormHandle /** *弹出完全成功弹出的回调 */ onSuccess: FormHandle /** *点击确定的回调 */ onYes: FormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *自动消失的时间(豪秒) */ time: number /** *方向和颜色 */ tips: IFormTipsOption /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } declare type FormHandle = (index: number,$elem: JQuery) => boolean | void /** *对齐 */ enum TextAlign { center = "center",left = "left",right = "right" } /** *输入组件基类 */ class InputBase extends FieldDbComponentBase { /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** * 校验数据是否通过设置的校验规则 * @returns true通过,则反之 */ doVerify(): boolean /** * 输入框得到输入焦点 */ focuse(): void /** * 获取编辑输入框的jquery 对象 这个应该在所有继承的子类需要重载该函数,不然无法实现校验弹出提示. * @returns 输入框的jquery 对象 */ getInputElem(): JQuery /** * 获取label的caption * @returns 返回label的caption字符串 */ getLabelCaption(): string /** * 获取是否组件只读 * @returns 返回true 不允许修改, 则反之 */ getReadOnly(): boolean /** * 获取是是否必填 * @returns 返回true 必填, 则反之 */ getRequired(): boolean /** * 设置组件的label的标题 * @param caption */ setLabelCaption(caption: string): void /** * 设置只读 * @param value true 只读不允许修改,否则允许修改 */ setReadOnly(value: boolean): void /** * 设置是否必填 * @param value true 必填,则反之 */ setRequired(value: boolean): void /** * 显示的提示校验信息 当 verifyText 非空时候显示"危险"的样式, 空则去除"危险"的样式 */ verifyTips(): void } interface IInputBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string /** *设置组件的值 */ setValue: any /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *移动端组件基类 */ class MobileComponentyBase extends ContainerBase { } /** *组件的事件 */ enum ComponentBaseEventType { /** *创建时触发 */ onCreate = "onCreate", /** *加载完成,(渲染完成后触发) */ onLoad = "onLoad" } /** *事件类 */ class ComponentEvent { /** *触发标志 */ firing: any /** *监听的函数的数组 */ listeners: IListener[] /** * 名称 */ name: string /** *事件绑定的对象 */ obj: object /** * 增加组件事件listtener * @param fn 事件处理函数 * @param scope this的取值 * @param options 参数 */ addListener(fn: Function,scope: any,options: any): void /** * 清除时间的监听listerners */ clearListeners(): void /** * 创建listerner * @param fn 处理函数 * @param scope this的取值 * @param o 关联的对象 为空时候取this.obj* @returns 返回IListener实例 */ createListener(fn: Function,scope: any,o: any): IListener /** * 查找listerner * @param fn 处理函数 * @param scope this的取值* @returns 如果存在返回位置整数,否则返回-1 */ findListener(fn: Function,scope: any): number /** * 事件触发 * @returns true事件触发,false 事件触发了但是返回了false */ fire(): boolean /** * 判断是否存在监听 * @param fn 处理函数 * @param scope this的取值* @returns true 在监听,则反之 */ isListening(fn: Function,scope: any): boolean /** * 移除事件监听 * @param fn 处理函数 * @param scope this的取值* @returns true 已经移除,false 无事件被移除 */ removeListener(fn: Function,scope: any): boolean } /** *组件序列化基类 支持:组件的序列化和反序列化 */ class SerializeComponetBase { /** *组件的id */ id: string /** *组件名称 */ name: string /** *组件的唯一类型标志(这个是不能重复的哦) */ xtype: string /** * 注册事件绑定的 * @param args 事件唯一标志字符串 */ addEvents(args: any[]): void /** * 清除所有的events 注意:该函数一般是页面关闭时候才调用 防止重复调用 */ clearAllEvents(): void /** * 反序列化 * @param jsonStr json字符串* @returns 返回组件对象 */ deserialize(jsonStr: string): any /** * 获取组件的全球唯一id * @returns 返回组件的全球唯一id字符串 */ getId(): string /** * 获取组件的名称 * @returns 组件的名称字符串 */ getName(): string /** * 获取名称 */ needName(): void /** * 取消注册的事件 * @param eventName 事件名 * @param fn 函数过程 * @param scope this的取值 */ off(eventName: string,fn: Function,scope: any): void /** * 取消注册的事件 * @param eventName 事件名 */ offbyEventName(eventName: string): void /** * 注册事件处理函数 注意,如果同一个函数重复注册只生效最后一个 * @param eventName 事件的名称 * @param fn 事件处理函数 * @param scope this的取值 * @param o 参数 */ on(eventName: string,fn: T,scope: any,o: IObserver): void /** * 清除事件 */ purgeListeners(): void /** * 触发事件 变量this.eventsSuspended 控制是否可以触发 true停止触发,则反之 例如: ```typescript this.raiseEvent('onClick',this,param1,param2) * @param eventName 事件名称 * @param params 可变参数列表 如: param1,param2,param3...* @returns 返回事件的返回值 */ raiseEvent(eventName: string,params: any[]): boolean /** * 接管事件, 可以把事件接管到当前this的事件 如: this.relayEvents(this.proxy, [DataSourceEventType.loadexception]); * @param o 需要接管的实例 * @param events 事件名数组 */ relayEvents(o: IObserver,events: string[]): void /** * 恢复事件触发 */ resumeEvents(): void /** * 组件序列化 * @returns 返回json字符串 */ serialize(): any /** * 设置组件名称 * @param value 组件名 */ setName(value: string): void /** * 暂停事件触发 */ suspendEvents(): void /** * 获取设计模式 * @returns true:设计模式 否则:运行模式 */ static getDesignmodel(): boolean } /** *事件监听接口 */ interface IListener { /** *特殊情况下 delay single 处理函数 */ fireFn: Function /** *正常的处理函数 */ fn: Function options: any /** *this的取值 */ scope: any } class Sortable { multiDrag: any } interface GroupOptions { /** *a canonical version of pull, created by Sortable 检查是否允许拖出 调用 group.pull的函数 */ checkPull: CheckPullHandle /** *a canonical version of put, created by Sortable 检查是否允许拖入 调用 group.put的函数 */ checkPut: CheckPutHandle /** *group name */ name: string /** *ability to move from the list. clone — copy the item, rather than move. */ pull: boolean | any | any | any /** *whether elements can be added from other lists, or an array of group names from which elements can be taken. */ put: boolean | any | any /** *revert cloned element to initial position after moving to a another list. */ revertClone: boolean } interface MoveEvent { dragged: HTMLElement draggedRect: DOMRect from: HTMLElement originalEvent: any /** *element on which have guided */ related: HTMLElement relatedRect: DOMRect to: HTMLElement willInsertAfter: boolean } interface SortableEvent { /** *前面的元素 */ afterEl: HTMLElement /** *后面的元素 */ beforeEl: HTMLElement /** *拖拽时复制的元素 */ clone: HTMLElement /** *previous list 拖拽的来源容器元素 */ from: HTMLElement /** *dragged element 拖拽的元素 */ item: HTMLElement /** *New index within parent, only counting draggable elements */ newDraggableIndex: number /** *new index within parent 新的位置 */ newIndex: number /** *When MultiDrag is used to sort, this holds a HTMLElement and newIndex for each item. */ newIndicies: any /** *Old index within parent, only counting draggable elements */ oldDraggableIndex: number /** *old index within parent 旧的位置 */ oldIndex: number /** *When MultiDrag is used to sort, this holds a HTMLElement and oldIndex for each item selected. */ oldIndicies: any originalEvent: any /** *Pull mode if dragging into another sortable 拖拽的方式 */ pullMode: boolean | any /** *When Swap is used to sort, this will contain the dragging item that was dropped on. 排序时候使用, */ swapItem: HTMLElement /** *鼠标在什么元素上面 */ target: HTMLElement /** *list, in which moved element. 目标的容器元素 */ to: HTMLElement } interface SortableOptions { /** *单位:ms,定义排序动画的时间; */ animation: number /** *Class name for the chosen item 所选项目的类名, 格式为简单css选择器的字符串,当选中列表单元时会给该单元增加一个class 默认值 sortable-chosen */ chosenClass: string /** *绑定的组件 */ component: ComponentBase /** *默认值:"data-id" */ dataIdAttr: string /** *定义鼠标选中列表单元可以开始拖动的延迟时间; */ delay: number /** *Only delay if user is using touch 仅当用户使用触摸时才会延迟 */ delayOnTouchOnly: boolean /** *Direction of Sortable (will be detected automatically if not given) 拖拽方向 (默认情况下会自动判断方向) */ direction: any | any | any /** *义是否此sortable对象是否可用,为true时sortable对象不能拖放排序等功能,为false时为可以进行排序,相当于一个开关; 默认值 false */ disabled: boolean /** *正在被拖拽中的css类名 默认值 "sortable-drag" */ dragClass: string /** *允许拖拽的项目类名 默认值:>* 指定元素中的哪些项目应该是可拖动的 */ draggable: string dragoverBubble: boolean dropBubble: boolean /** *Easing for animation. Defaults to null. 移动动画。默认为 null。例如 https://easings.net/。 */ easing: string /** *distance mouse must be from empty sortable to insert drag element into it 距离鼠标必须从空的可排序插入拖动元素到它 */ emptyInsertThreshold: number /** *Class name for the cloned DOM Element when using forceFallback 使用 forceFallback 时克隆的 DOM 元素的类名 */ fallbackClass: string fallbackOffset: any /** *Appends the cloned DOM Element into the Document's Body 将克隆的 DOM 元素附加到文档正文中 默认值:false */ fallbackOnBody: boolean /** *以像素为单位指定鼠标在被视为拖动之前应移动的距离。 默认值:0 */ fallbackTolerance: number /** *Selectors that do not lead to dragging (String or Function) 过滤器,不需要进行拖动的元素 */ filter: string | any /** *ignore the HTML5 DnD behaviour and force the fallback to kick in 忽略 HTML5拖拽行为,强制回调进行 */ forceFallback: boolean /** *Class name for the drop placeholder 默认值:sortable-ghost 放置占位符的类名 */ ghostClass: string /** *To drag elements from one list into another, both lists must have the same group value. You can also define whether lists can give away, give and keep a copy (clone), and receive elements. 拖拽的组 */ group: GroupOptions /** *Drag handle selector within list items 格式为简单css选择器的字符串,使列表单元中符合选择器的元素成为拖动的,只有按住拖动手柄才能使列表单元进行拖动 如: .drag-mc-pane */ handle: string /** *忽略的节点tag 默认值 "a, img" */ ignore: string /** *Will always use inverted swap zone if set to true 默认值 false 如果设置为 true,将始终使用反转交换区域 */ invertSwap: boolean /** *Threshold of the inverted swap zone (will be set to `swapThreshold` value by default) 反向交换区域的阈值 (默认情况下将设置为交换阈值) */ invertedSwapThreshold: number /** *Element is dropped into the list from another list 元素从一个列表拖拽到另一个列表 */ onAdd: any /** *Called when dragging element changes position 拖拽元素改变位置的时候 */ onChange: any /** *Element is chosen 元素被选中 */ onChoose: any /** *Created a clone of an element clone一个元素的时候触发 */ onClone: any /** *Element dragging ended 结束拖拽 */ onEnd: any /** *Attempt to drag a filtered element 试图拖拽一个filtered的元素 */ onFilter: any /** *Event when you move an item in the list or between lists 拖拽移动的时候 */ onMove: any /** *Element is removed from the list into another list 元素从列表中移除进入另一个列表 */ onRemove: any /** *Called by any change to the list (add / update / remove) */ onSort: any /** *Element dragging started 开始拖拽的时候事件 */ onStart: any /** *Element is unchosen 元素未被选中的时候(从选中到未选中) */ onUnchoose: any /** *Changed sorting within list */ onUpdate: any /** *页面组件实例 */ page: DesignerPageBase /** *Call `event.preventDefault()` when triggered `filter` 触发 “过滤” 时调用 “事件.预防性默认 ()” */ preventOnFilter: boolean /** *Remove the clone element when it is not showing, rather than just hiding it 当克隆元素没有显示时,删除它,而不仅仅是隐藏它 默认值 true */ removeCloneOnHide: boolean /** *拖拽时候的数据传输函数 */ setData: any /** *sorting inside list 默认值 true */ sort: boolean store: any /** *是否支持触控 */ supportPointer: boolean /** *Threshold of the swap zone. 默认值 1 */ swapThreshold: number /** *How many *pixels* the point should move before cancelling a delayed drag event 拖拽事件在多少像素时候取消 */ touchStartThreshold: number } /** *模板渲染处理类 */ class Templete { /** * 模板渲染数据 * @param model 数据 * @param callback 渲染完成的回调, 可以在内休其值* @returns 返回模板渲染完的字符串 */ render(model: object,callback: any): any } /** *Vue组件基类 */ class VueComponentBase extends ContainerBase { } /** *按钮的尺寸 */ enum btnSize { /** *默认尺寸的按钮 */ default = "", /** *流体按钮 宽度最大化 */ fluid = "fluid", /** *大型按钮 */ lg = "lg", /** *小型按钮 */ sm = "sm", /** *迷你型按钮 */ xs = "xs" } /** *按钮的主题 */ enum btnTheme { /** *警告 */ danger = "danger", /** *默认 */ default = "normal", /** *禁用 */ disabled = "disabled", /** *link */ link = "link", /** *百搭 */ normal = "normal", /** *原始 */ primary = "primary", /** *暖色 */ warm = "warm" } /** *按钮组件基类 */ class YHButtonBase extends ButtonBase { /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): YHButtonBaseDropDownEditor /** * 设置图标 * @param value 属性值 */ setIcon(value: string): void /** * 设置按钮的角度百分比 * @param value 角度百分比 %1,50% */ setRadius(value: string): void /** * 设置按钮的尺寸 * @param value 属性值 */ setSize(value: btnSize): void /** * 按钮的主题 * @param value 属性值 */ setTheme(value: btnTheme): void } /** *按钮配置选项 */ interface IYHButtonBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *按钮的标题 */ btnText: string /** *组件的样式class */ class: string /** *组件是否可点击 */ enable: boolean /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *按钮图标 */ icon: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *点击事件 */ onClick: any /** *点击事件js脚本字符串 */ onClickScript: string /** *父组件 */ parentCmp: ComponentBase /** *按钮的角度 100px */ radius: string /** *按钮的尺寸 */ size: btnSize /** *按钮的主题 */ theme: btnTheme /** *组件的唯一标识 */ xtype: string } /** *定位方式 */ enum YHDatePickerBasePosition { /** *绝对定位,始终吸附在绑定元素周围。默认值 */ abolute = "abolute", /** *固定定位,初始吸附在绑定元素周围,不随浏览器滚动条所左右。一般用于在固定定位的弹层中使用。 */ fixed = "fixed", /** *静态定位,控件将直接嵌套在指定容器中。 */ static = "static" } /** *组件的主题 */ enum YHDatePickerBaseTheme { /** *默认简约 */ default = "default", /** *格子主题 */ grid = "grid", /** *墨绿背景 */ molv = "molv" } /** *弹出框的触发方式 */ enum YHDatePickerBaseTriggerType { /** *点击才出现选择日期时间 */ click = "click", /** *得到焦点 */ focus = "focus" } /** *日期选择组件的显示类型 */ enum YHDatePickerBaseType { date = "date",datetime = "datetime",month = "month",time = "time",year = "year" } /** *内置组件 日期选择 */ class YHDatePickerBase extends InputBase { /** * 时间区间最大 * @returns 返回最大日期 */ getMaxDate(): Date /** * 时间区间最小 * @returns 返回最小日期 */ getMinDate(): Date /** * 得到组件的值 * @returns 组件值字符串 */ getValue(): Date | IYHDatePickerBaseRange /** * 注册check值发生点击时候除非事件 * @param callback */ onValueChanged(callback: onChangeHandle): void /** * 设置可选的最大时间 * @param date 时间类型的值 */ setMax(date: Date): void /** * 设置可选最小值时间 * @param date 时间类型值 */ setMin(date: Date): void /** * 赋值 * @param value */ setValue(value: string | Date | IYHDatePickerBaseRange): void /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: IYHDatePickerBaseConfig): void } /** *组件配置接口 */ interface IYHDatePickerBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** * 工具按钮 */ btns: string[] /** * 是否显示公历节日 我们内置了一些我国通用的公历重要节日,通过设置 true 来开启。国际版不会显示。 */ calendar: boolean /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *输入框Id */ inpuElemId: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *组件间隔 */ margin: string /** * 最大时间 */ max: Date /** * 最小时间 */ min: Date /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *空白时候的提示字符串 */ placeholder: string /** * 定位方式 */ position: string /** * 开启左右面板范围选择 */ range: boolean /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string /** *静态渲染时候的容器id */ rootId: string /** *设置组件的值 */ setValue: any /** * 默认显示 */ show: Boolean /** * 是否显示底部栏 */ showBottom: boolean /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** * 主题 */ theme: YHDatePickerBaseTheme /** *采用click弹出 */ triggerEvent: YHDatePickerBaseTriggerType type: YHDatePickerBaseType /** * 值 */ value: Date | IYHDatePickerBaseRange /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string /** * 层叠顺序 */ zIndex: number } /** *时间区域 */ interface IYHDatePickerBaseRange { /** *开始 */ begin: Date /** *结束 */ end: Date } class CssHelper { /** * 获取css的 * @param styles css样式* @returns 样式的jss */ static getCss(styles: any): any } /** *数组数据源 需要指明fields */ class ArrayDataSet extends DataSourceBase { } enum AdvQueryType { /** *区间 */ between = "between", /** *自定义语句 */ custom = "custom", /** *等于 */ equeal = "equeal", /** *大于 */ greaterThan = "greaterThan", /** *大于等于 */ greaterThanEqual = "greaterThanEqual", /** *在某值集合范围 */ in = "in", /** *小于 */ lessThan = "lessThan", /** *小于等于 */ lessThanEqual = "lessThanEqual", /** *包含 */ like = "like" } /** *数据源的事件类型枚举 */ enum DataSourceEventType { /** *新增记录事件 */ add = "add", /** *提交修改后事件 */ afterpost = "afterpost", /** *加载数据前事件 发生在:load */ beforeload = "beforeload", /** *提交修改前事件 */ beforepost = "beforepost", /** *移除所有记录事件 发生在: removeAll */ clear = "clear", /** *数据查询/提交完成后的事件 */ complete = "complete", /** *数据发生变化 发生在: loadrows, filterBy ,sort ,clearFilter */ datachanged = "datachanged", /** *加载数据事件 发生在:loadrows function (cope, data, params) */ load = "load", /** *加载发生错误事件: 发生在 loadResponse , 和 proxy的加载出错 */ loadexception = "loadexception", /** *提交修改时候发生的错误事件 */ postexception = "postexception", /** *移除记录事件 */ remove = "remove", /** *刷新记录事件 发生在: afterEdit ,afterReject,afterCommit */ update = "update" } /** *数据源状态 */ enum DatasourceState { /** *正在查询数据中 */ loading = 1, /** *提交数据中 */ posting = 2, /** *数据源处在准备好状态 */ ready = 0 } /** *数据源的取数编辑器基类 */ class DataSetEditorBase { } /** *数据源基类 1.记录的排序 2.记录的修改独立保存 3.数据库更新 4.数据库数据加载 5.组件的显示数据源 */ class DataSourceBase extends InvisibleBase { /** *数据源是否自动获取数据 WM_PAGE_LOAD 消息触发 注意:如果同时注册WM_PAGE_LOAD存在触发顺序问题. */ autoActive: boolean /** *数据库操作 */ dao: IDao[] /** *字段数组 */ fields: IField[] /** *取消分页 */ ignorePage: boolean /** *保存修改过的行 数据提交时候要用到里面的行生成changes */ modified: Row[] /** *主表字段 */ relField: string /** *重复提交 */ repeatPost: boolean /** *显示保存的对话框 */ showPostLoading: boolean /** * 增加附带额外参数回调函数 用于在数据源查询时候附带参数 * @param callback 额外参数回调函数 */ addExtraParamCallBack(callback: extraParamHandle): void /** * 添加表模型的字段到数据源 * @param fs 表模型的字段数组 */ addFields(fs: ITableModelField[]): void /** * 增加行到数据源的_Datas 只是单纯的增加没做,不会记录到modified里 * @param rows 行数组 */ addMataRow(rows: Row[]): void /** * 新增数据行 会被记录到modified里 * @param rows 行的数组 */ addRow(rows: Row[]): void /** * 根据数据对象新增数据行 会被记录到modified里 * @param datas 数据对象数组 如:ds.addRowDatas([{field1:value1,field2:value2,field3:value3,field4:value4...}]) */ addRowDatas(datas: Object[]): void /** * 新增空行并把current设置成当前空行index 把current设置当前新增的行 * @returns 返回新增的行实例 */ appendBlankRow(): Row /** * 开始排序 */ applySort(): void /** * 提交所有的记录修改 会触发所有修改记录的afterCommit */ commitChanges(): void /** * 删除行没有记录到modified里面 只是单纯的删除行.这个函数移除的的行与removeRow的区别是 getChanges() 得不到被这个函数移除的行 * @param row 行实例 */ deleteRow(row: Row): void /** * 循环遍历每条记录 * @param eachCallBack 遍历数据回调函数 * @param scope 范围,一般是调用的this */ eachRow(eachCallBack: any,scope: object): void /** * 本地数据查找行 例子: var row= ds.find((row)=>{return row.get('FieldName')=='xxxyyy'}); * @param fn 行匹配函数 * @param formIndex 可选参数开始索引 默认值 0* @returns 返回记录的Row实例 */ find(fn: DataSourceQureyRowHandle,formIndex: number): Row /** * 本地数据查找行 例子: var index= ds.findIndex((row)=>{return row.get('FieldName')=='xxxyyy'}); * @param fn 匹配函数 * @param formIndex 可选参数开始索引* @returns 返回记录的位置索引index */ findIndex(fn: DataSourceQureyRowHandle,formIndex: number): number /** * 新增记录并返回记录的index 由于排序的存在导致新加进去的记录是乱的 * @param row 需要新增的记录* @returns 新增记录后的index */ findInsertIndex(row: Row): number /** * 获取第index位置的行 * @param index 记录位置* @returns 返回对应的记录 */ getAt(index: number): Row /** * 通过Id获取行 * @param id 关键字值* @returns 返回对应的记录 */ getById(id: string): Row /** * 获取修改的数据用于提交 [ {__state:add,id:v2,f1:v1 ,__orig:{}}, {__state:modfy,id:v3,f1:newv1,__orig:{}}, {__state:delete,id:v3,__orig:{}} ] * @returns 返回用户提交的数据如上 */ getChanges(): IChangeData[] /** * 获取checbox==true选择的记录 如果存在checkbox,否则返回null * @returns 返回当前记录 当数据源是空时候返回 null */ getCheckRow(): Row /** * 获取当前数据源数量 (本页的数量) * @returns 数据源的记录数量 */ getCount(): number /** * 获取当前的行index * @returns 行的索引 */ getCurrent(): number /** * 获取当前的记录 * @returns 返回当前记录 当数据源是空时候返回 null */ getCurrentRow(): Row /** * 获取原始数据数组 * @returns 返回原始数据数组注意这个是二维数组 [[1,2,3,4],[5,6,7,8]] */ getDataArray(): any[] /** * 获取某列数据数组 * @param fieldName 字段名* @returns 返回原始数据数组注意这个是一维数组 [1,5,9]..就是某个列的所有行的值 */ getDataArrayByField(fieldName: string): any[] /** * 获取数据 这个是返回带有格式化后的数据 一般是用户展示界面时候使用 * @returns 返回带有格式的字符串 [{p1:1,p2:2,p3:3},{p1:4,p2:5,p3:6}] */ getDatas(): any[] /** * 获取字段 * @param fieldName 字段名称* @returns 字段的实例 */ getField(fieldName: string): IField /** * 返回字段字符串数组 * @returns 返回字段字符串数组 ['field1','field2','field2'] */ getFieldArray(): string[] /** * 获取主键字段名 如果不存在this.keys 就读取this.reader.config.id * @returns 主键字段数组 */ getKeys(): string[] /** * 得到主数据源 * @returns 返回主数据源的组件实例 */ getMasterDataSource(): DataSourceBase /** * 得到已经被修改的记录 * @returns 已经修改的记录数组 */ getModifiedrows(): Row[] /** * 获取从start到end范围内的行 * @param start 开始 * @param end 结束* @returns 指定范围的row 数组 */ getRange(start: number,end: number): Row[] /** * 获取数据 这个是返回原始的数据 * @returns 返回原始数据数组 [{p1:1,p2:2,p3:3},{p1:4,p2:5,p3:6}] */ getRawDatas(): any[] /** * 返回所有的行 * @returns 所有行数组 */ getRows(): Row[] /** * 获取排序信息 * @returns 返回SortInfo类型信息 */ getSortState(): ISortInfo /** * 获取总数 * @returns 数据源的总记录数量 这是分页情况, 这个数量不一定等于getCount() */ getTotalCount(): number /** * 获取行 * @param row 行* @returns 返回对应的记录的index, 不存在返回 -1 */ indexOf(row: any): number /** * 根据行的主键值获取行的索引 * @param id 对应行的主键值* @returns 行的索引 */ indexOfId(id: string): number /** * 增加行到数据源的_Datas 只是单纯的增加没做,不会记录到modified里 * @param index 行的位置 * @param rows 行数组 */ insertMataRow(index: number,rows: Row[]): void /** * 在index位置插入数据行 * @param index 位置 * @param rows 行数组 */ insertRow(index: number,rows: Row[]): void /** * 加载数据 * @param loadParams 数据加载选项 包含参数等配置 例子: ```typescript load( { page : 0, limit : 10 //加载数据完后回调函数 loadFinishCallBack: function(){ } }) ```* @returns 成功返回true 则反之 */ load(loadParams: IDsLoadOptions): boolean /** * 刷新数据行 * @param keysObj 查询的查询条件数组 * @param callback 加载完成回调函数 ```typescript loadByKey( { key1 : keyvalue1, key2 : keyvalue2 }) ``` */ loadByKeys(keysObj: IAdvQueryItem[],callback: any): void /** * 重新加载数据 并附带页面的参数 例子 ```typescript ds.loadWithPageParam({ query: { quickQuery: field1: { type:'like' val:value1 }, advQuery:{ field1: { type:'equeal' val:value1 }, field2: { type:'equeal' val:value2 }, } } }) ``` * @param paramObj 可选 参数对象 */ loadWithPageParam(paramObj: object): void /** * 注册数据行增加事件 * @param handle 事件处理回调函数 */ onAdd(handle: onAddHandle): void /** * 注册提交之前的事件 * @param handle 事件回调 */ onBeforePost(handle: onBeforePostHandle): void /** * 注册数据源加载之前的事件 * @param handle 事件处理回调函数 */ onBeforeload(handle: onBeforeloadHandle): void /** * 注册数据源清除数据事件 * @param handle 事件处理回调函数 */ onClear(handle: onClearHandle): void /** * 注册数据查询/提交完成后事件 * @param handle 事件处理回调函数 */ onComplete(handle: onCompleteHandle): void /** * 注册数据发生变化 发生在: loadrows, filterBy ,sort ,clearFilter * @param handle 事件处理回调函数 */ onDatachangeHandle(handle: onDatachangeHandle): void /** * 注册数据加载完成事件 * @param handle 事件处理回调函数 */ onLoad(handle: onLoadHandle): void /** * 注册数据加载失败事件 * @param handle */ onLoadException(handle: onLoadExceptionHandle): void /** * 注册提交异常的事件 * @param handle 事件回调 */ onPostException(handle: onPostExceptionHandle): void /** * 注册数据行移除事件 * @param handle 事件处理回调函数 */ onRemove(handle: onRemoveHandle): void /** * 提交数据 包含(新增,修改,删除) * @param callback 提交完成回调 */ post(callback: DataSourcePostHandle): void /** * 本地数据查询 例子: var rows= ds.query((row)=>{return row.get('FieldName')=='xxxyyy'}); * @param fn 行匹配函数 * @param formIndex 可选参数开始索引,默认值 0* @returns 返回查找的数据行数组 */ query(fn: DataSourceQureyRowHandle,formIndex: number): ZlCollection /** * 局部刷新行 常用用于更新一条记录后刷新组件的显示 * @param row 需要刷新的数据组 * @param callback 完成回调 */ refreshRow(row: Row,callback: any): void /** * 取消所有记录的修改 会触发所有修改记录的afterReject */ rejectChanges(): void /** * 重新加载数据 * @param params 可选参数 如果为空就按lastOptions来查询 * @param isNew 可选参数 默认值:false 重新一次查询清掉所有的以前查的参数* @returns 成功返回true 则反之 */ reload(params: IDsLoadOptions,isNew: boolean): boolean /** * 重新加载数据并附带上page的参数 * @param params 参数 * @param isNew 可选参数 默认值:false 重新一次查询清掉所有的以前查的参数* @returns 成功返回true 则反之 */ reloadOnPageParams(params: IDsLoadOptions,isNew: boolean): boolean /** * 移除全部记录 非RowState.insert 会被记录到modified里 */ removeAllRow(): void /** * 移除字段 * @param field 字段实例 */ removeField(field: IField): void /** * 通过字段名称移除字段 * @param fieldName 字段名称 */ removeFieldByName(fieldName: string): void /** * 移除记录行 非RowState.insert 会被记录到modified里 * @param row 需要移除的行对象 */ removeRow(row: Row): void /** * 重置current.为第一位置 或者-1 */ reset(): void /** * 设置当前的行位置 * @param index 行的位置 */ setCurrent(index: number): void /** * 设置当前行 * @param id 主键值 */ setCurrentRowById(id: string): void /** * 设置数据源的行,这是没有记录到modified的 * @param rows 行数组 */ setRows(rows: Row[]): void /** * 排序 * @param fieldName 字段名 * @param dir 排序的方式 ASC DESC* @returns false 没排序,则反之 */ sort(fieldName: string,dir: FieldSortDirection): boolean /** * 统计 注意:只有是数字类型的字段才能统计 * @param field 需要统计的字段名 * @param start 开始 * @param end 结束* @returns 统计的结果 */ sum(field: string,start: number,end: number): number /** * 合并数据源提交 这样做的好处是多个数据源的提交是在一个数据库的事务内.可以用于保证数据的完整性 * @param dss 数据源的数组 * @param callback 提交完成回调 */ unionPost(dss: DataSourceBase[],callback: DataSourcePostHandle): void /** * 把修改的数据更新到数据源,只是更新本地数据 更新完可以调用post来提交到后台 * @param changes 修改的数据格式: [{"state":"insert","ZHUBID":"sdf","editState":"add","MINGC":"sdf","BIANH":"dsf"}] */ updateChanges(changes: IChangeData[]): void } /** *公式窗口的回调 */ interface FormulaCallback { } /** *公式窗口的回调参数接口格式 */ interface FormulaCallbackParams { /** *模型的id */ MODELE_VALUE: string /** *layer窗口的index */ addformulaPop: number } /** *字段的高级查询结构 */ interface IAdvQueryItem { /** *自定义 例如: Field1>#{xxxx} and field1 !=23 设置了这个优先级别比上面的高,查询时候会吧语句直接加到查询条件 */ custom: string /** *字典的数据源 */ dictSourceid: string /** *唯一 */ id: string /** *字段名 */ name: string /** * 查询类型 */ type: AdvQueryType /** *值 */ val: any /** *值1 */ val1: any } /** *数据源编辑器接口 */ interface IDataSetEditor { /** *显示 */ show: any /** * 点击确定 * @returns true成功,则反之 */ commit(): boolean /** * 获取编辑器的html源码 * @returns 返回html源码字符串 */ html(): string /** * 初始化 */ init(): void } /** *数据源基类的配置接口 */ interface IDataSourceBaseConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *数据库操作 默认:[] */ dao: IDao[] /** *字段数组 默认:[] */ fields: IField[] /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *组件的唯一标识 */ xtype: string } /** *数据查询加载是基础参数配置项 */ interface IDsLoadBaseParamsOptions { /** *当前数据源Id */ dsId: string /** *每页多少记录 */ limit: number /** *当前的模型Id */ modelId: string /** *当前页 */ page: number } /** *数据源加载的配置 */ interface IDsLoadOptions { /** *请求完成返回回调函数 不管成功或者错误(不包含网络错误) 这个时候数据源还没有加载返回的数据行 */ callback: any /** *完成请求 */ complete: any /** *每页多少记录 */ limit: number /** *行加载完成回调函数 */ loadFinishCallBack: any /** *开始请求 */ onBeforeload: any /** *当前页 */ page: number /** *数据源的查询 */ query: any /** *排序 { field1: 'asc', field2: 'desc' } */ sort: object } /** *解析的结果 */ interface IReadResult { fields: IField[] rows: any[] success: boolean totalRows: number } declare type DataSourcePostHandle = (err: string) => void declare type DataSourceQureyRowHandle = (row: Row) => boolean /** *扩展参数的回调 */ declare type extraParamHandle = () => IParam[] /** *新增行的回调 *@param rows 行数组 *@param index 插入的位置 */ declare type onAddHandle = (rows: Row[],index: number) => void /** *数据提交之前的回调 */ declare type onBeforePostHandle = (xhr: JQuery.jqXHR) => void /** *数据加载之前的回调 *@param options 加载的配置 */ declare type onBeforeloadHandle = (options: IDsLoadOptions) => void /** *清理所有行的回调 */ declare type onClearHandle = () => void /** * 数据查询/提交完成后的回调 *@param options 加载的配置 */ declare type onCompleteHandle = (ds: DataSourceBase) => void declare type onDatachangeHandle = () => void /** *数据加载异常的回调 *@param error 错误字符串 */ declare type onLoadExceptionHandle = (error: string) => void /** *数据加载后的回调 *@param rows 行数组 */ declare type onLoadHandle = (rows: Row[]) => void /** *数据提交异常的回调 *@param error 错误字符串 */ declare type onPostExceptionHandle = (error: string) => void /** *移除行的回调 *@param rows 行数组 *@param index 插入的位置 */ declare type onRemoveHandle = (rows: Row[],index: number) => void /** *排序的方向枚举 */ enum FieldSortDirection { /** *升序 */ ASC = "ASC", /** *降序 */ DESC = "DESC" } /** *数据类型 */ enum FieldType { /** *二进制类型的字段 */ BLOB = "BLOB", /** *布尔类型的字段 */ BOOLEAN = "BOOLEAN", /** *日期类型的字段 */ DATE = "DATE", /** *日期时间类型的字段 */ DATETIME = "DATETIME", /** *浮点类型的字段 */ FLOAT = "FLOAT", /** *整数类型的字段 */ INTEGER = "INTEGER", /** *主键类型的字段 */ PK = "PK", /** *字符串类型的字段 */ STRING = "STRING", /** *大文本类型的字段 */ TEXT = "TEXT" } /** *数据源的字段接口 */ interface IField { /** *允许为空 true 允许 则反之 */ allowNull: boolean /** *数据转换函数 用户转换成想要的数据格式 */ convertFn: any /** *字段的数据类型 */ dataType: FieldType /** *默认值 */ defalutValueScript: any /** *描述 */ descption: string /** *字段编号 */ field: string /** *获取数据源新增数据时间的默认值 这个函数执行脚本并获取返回值作为默认值 */ getDefaultValue: any /** *设计模式下展示字段树的图标获取字段类型 */ getIcon: any /** *是否隐藏 */ hide: boolean id: string /** *长度 */ length: number /** *数据库返回到浏览器端时候需要解析成相应的数据类型 */ parser: any /** *返回到服务器端个格式化 需要排除掉时间类型 */ parserToServer: any /** *精度 */ scale: number select: any /** *排序方向 */ sortDir: FieldSortDirection /** *字段标题 */ title: string } /** *列的单元格内容排列方式 */ enum TableColumnAlginType { center = "center",left = "left",right = "right" } /** *列的类型 */ enum TableColumnColType { /** *复选框 */ checkbox = "checkbox", /** *多表头 */ header = "header",image = "image", /** *序号 */ no = "no", /** *正常 */ normal = "normal", /** *数字 */ number = "number", /** *序号 layui使用 */ numbers = "numbers", /** *操作 */ option = "option", /** *单选框 */ radio = "radio", /** *行多选框 */ rowcheck = "rowcheck", /** *行单选框 */ rowradio = "rowradio", /** *空行 */ space = "space" } /** *列的固定位置 */ enum TableColumnFixType { left = "left",right = "right" } enum TableColumnSearchTtype { /** *高级查询 */ gaoj = "gaoj", /** *高级和快速都有 */ gaojAndKuais = "gaojAndKuais", /** *快速查询 */ kuais = "kuais" } /** *排序的类型 */ enum TableColumnSortDirection { asc = "asc",desc = "desc" } /** *table组件的列接口 */ interface ITableColumn { /** *增加子列 */ addChildColumn: any /** *对齐 */ align: TableColumnAlginType /** *允许为空 true 允许 则反之 */ allowNull: boolean /** *列的按钮 */ buttons: ButtonBase[] /** *是否运行移动 */ canMove: boolean /** *是否允许修改宽度 */ canResize: boolean /** *子列 */ childs: ITableColumn[] /** *列合并跨度 */ colspan: number /** *字段的数据类型 */ dataType: FieldType /** *字段编号 */ field: string /** * 是否固定 */ fixed: TableColumnFixType /** *格式 */ format: string /** *层次等级 */ getLev: any /** *是否隐藏 */ hide: boolean /** *列的唯一id */ id: string /** *长度 */ length: number /** *最小宽度 */ minWidth: number /** *父列的id */ parentId: string /** *tree路径 格式: parent1&parent2&slef */ parents: string /** *移除子列 */ removeChildColumn: any /** *行合并跨度 */ rowspan: number /** *查询类型 */ searchType: TableColumnSearchTtype /** *排序 */ sort: boolean /** *样式 */ style: string /** *子列 逗号隔开的列名字符串 */ subCols: string /** *自定义的模板 */ templet: string /** *标题 */ title: string /** *工具栏 */ toolbar: string /** *是否开启合计行 */ totalRow: boolean /** *自定义的合计脚本 */ totalRowScript: string /** *列的类型 */ type: TableColumnColType /** *唯一 */ unique: boolean /** *对应的视图 */ view: any /** *宽度 */ width: string } /** *表模型的字段属性接口 */ interface ITableModelField { MXZD_BIANH: string MXZD_MIAOS: string MXZD_MINGC: string MXZD_MORZ: string MXZD_SHIFCJ: boolean MXZD_SHIFWY: boolean MXZD_TABLEID: string MXZD_XIAOSJD: number MXZD_YINGWM: string MXZD_YUNXWK: boolean MXZD_ZIDCD: number MXZD_ZIDLX: string RWID: string SYS_CREATETIME: string SYS_CREATOR: string SYS_MODIFYBY: string SYS_MODIFYTIME: string SYS_SORT: string SYS_STATUS: number } /** *内存数据源(静态数据源) */ class MemoryDataSetBase extends DataSourceBase { } /** *记录的状态 */ enum RowState { /** *删除 */ delete = "delete", /** *新增 */ insert = "insert", /** *无状态(无修改,无新增,无删除) */ none = "none", /** *修改 */ update = "update" } /** *数据源的行对象 */ class Row { /** *页面的行参数名 */ static ROWPARAM: string /** * 开始编辑 */ beginEdit(): void /** * 退出编辑 */ cancelEdit(): void /** * 清楚行的错误 */ clearError(): void /** * 清理额外的参数对象 */ clearExtralParams(): void /** * 把行复制到指定的数据源 * @param ds 数据源* @returns 返回行的克隆实例 */ cloneTo(ds: DataSourceBase): Row /** * 本地提交修改 * @param silent 是否触发数据源的事件 */ commit(silent: boolean): void /** * 拷贝 * @param newId 可选参数,否则复制一模一样的* @returns 返回行的克隆实例 */ copy(newId: any): Row /** * 结束编辑 如果存在修改数据,触发编辑结束事件 */ endEdit(): void /** * 获取数据值 * @param fieldName 字段名* @returns 返回当前行的字段的值;受format 影响.如果field的设置的格式则反回格式化的值(对于时间/数字类型回如果设置了format只会返回string) 否则返回最相应的数据类型的值. */ get(fieldName: string): any /** * 返回行是否被选定 * @returns true被选定,则反之 */ getCheck(): boolean /** * 得到数据源 * @returns 关联的数据源实例 */ getDataSource(): DataSourceBase /** * 获取数据 这个是返回带有格式化后的数据 一般是用户展示界面时候使用 * @returns 返回数据数组 */ getDatas(): any /** * 得到额外参数 用于提交时候附带到服务器端的参数 * @returns 额外参数 */ getExtralParams(): object /** * 获取字段实例 * @param fieldName 字段名* @returns 返回指定列的实例 */ getField(fieldName: string): IField /** * 获取行的id * @returns 返回行的主键值 */ getId(): string /** * 得到数据源的主键 * @returns 返回主键数组 */ getKeys(): string[] /** * 得到行的未修改之前的数据数组 * @returns 返回未修改之前的数据数组 */ getOriginalData(): object /** * 获取原始数据 * @returns 原始数据 */ getRawData(): object /** * 获取行state * @returns 返回行的状态 */ getState(): RowState /** * 获取对应的字段的数据的值 * @param fieldName 字段名* @returns 返回字段的值 时间类型就返回时间,数字类型就返回数字 不受format 影响. */ getValue(fieldName: string): any /** * 行是否存在错误 * @returns 返回true 说明行存在错误. */ hasError(): boolean /** * 字段是否被修改 * @param fieldName 字段是否存修改过* @returns true修改过, 否则没被修改过 */ isModified(fieldName: string): boolean /** * 关联数据源 * @param dataSource 数据源实例 */ join(dataSource: DataSourceBase): void /** * 取消修改 * @param silent 是否触发数据源的事件 */ reject(silent: boolean): void /** * 设置某个字段数据的值 * @param fieldName 字段名 * @param value 值 */ set(fieldName: string,value: any): void /** * 设置行是否被选定 * @param value true说明被选定,则反之 */ setCheck(value: boolean): void /** * 设置附带额外的参数. * @param param 参数对象 */ setExtralParams(param: object): void /** * 设置行的状态 * @param v */ setState(v: RowState): void /** * 把变动的数据更新到行 * @param changes 变动的数据 */ updateChanges(changes: IChangeData): void } /** *修改的数据 */ interface IChangeData { /** *新值 */ __data: any /** *额外的参数 */ __ext: any /** *原值 */ __org: any /** * 页面参数 */ __pageparam: any /** *状态 */ __state: RowState } /** *排序的类型 */ class SortTypes { } /** *Url数据源基类 数据查询,更新,新增,删除 */ class UrlDataSetBase extends DataSourceBase { /** * 异步 * @returns true 异步 / false 同步 */ getAsync(): boolean /** * 获取内容的格式 * @returns 返回的内容格式 */ getContentType(): ContentType /** * 获取请求的数据格式 * @returns 请求的数据格式 */ getDataType(): DataType /** * 后去http 的请求方式 * @returns get,post,put,delete */ getMethod(): MethodType /** * 获取参数 * @returns 返回参数对象 */ getParams(): IUrlParam[] /** * 读取的模板对象 * @returns 读取的模板对象 */ getReadTemplete(): IJsonReaderConfig /** * 得到最终的URL * @returns 设置URL字符串 */ getRealUrl(): any /** * 加载数据 * @param paramObj 可选 IDsLoadOptions类型的参数对象* @returns 返回是否true成功否则失败 */ load(paramObj: IDsLoadOptions): boolean /** * 重新加载数据 并包含页面的参数 * @param paramObj 可选 参数对象 */ loadWithPageParam(paramObj: object): void /** * 设置异步 / 同步 * @param m true 异步 / false 同步 */ setAsync(m: boolean): void /** * 获取返回的数据格式 * @param contentType 格式 */ setContentType(contentType: ContentType): void /** * 设置请求的数据格式 * @param datatype 格式 */ setDataType(datatype: DataType): void /** * 设置http的请求方式 * @param m get,post,put,delete */ setMethod(m: MethodType): void /** * 设置参数 * @param p 参数对象 */ setParams(p: any): void /** * 设置读取的模板对象 * @param temp 模板对象 */ setReadTemplete(temp: IJsonReaderConfig): void /** * 设置请求的url脚本字符串 * @param urlScript url脚本字符串 */ setUrlScript(urlScript: string): void } /** * 数据源的参数格式 */ interface IUrlParam { field: string val: string } /** *混合型存储数据的集合 1.可以key:value对的形式获取和保存数据 2.支持用数字型索引获取和保存数据 */ class ZlCollection { } /** *字段的赋值类型 */ enum DaoFieldType { /** *公式脚本 这个参数的取值就是公式脚本返回的值 */ formular = "formular", /** *纯参数 这个参数的取值就是 #{xxx} */ param = "param" } /** *数据操作接口 */ interface IDao { /** *字段列表 */ fields: IDaoField[] /** *唯一id */ id: string /** *主键 */ keys: string[] /** *名称 */ name: string /** *父操作的id */ parentId: string /** *表ID */ tableId: string /** *类型 */ type: RowState /** *校验公式 */ verifications: IDaoVerification[] } /** *Dao字段 */ interface IDaoField { name: string /** *数据类型 */ type: string /** *字段值 */ value: string } /** *dao的校验公式接口 */ interface IDaoVerification { /** *公式 */ Formula: string /** *唯一id */ id: string /** *校验名称 */ name: string /** *优先级 */ priority: number /** *值 */ value: string } /** *加载错误 */ interface IDsLoadException { /** *触发的数据源 */ ds: DataSourceBase /** *错误 */ error: any /** *返回的字符串 */ response: string } /** *数据源浮点类型字段 */ class BlodField extends FieldBase { } /** *数据源浮点类型字段 */ class BooleanField extends FieldBase { } /** *数据源日期时间类型字段 */ class DateTimeField extends FieldBase { } enum FieldBaseAlginType { center = "center",left = "left",none = "",right = "right" } /** *数据源字段的基类 */ class FieldBase extends ComponentBase { /** *对齐 */ align: string /** *允许为空 true 允许 则反之 */ allowNull: boolean /** *字段的数据类型 */ dataType: FieldType /** *描述 */ descption: string /** *字段编号 */ field: string /** *字段标题 */ title: string } /** *数据源字段构造者 */ class FieldBuilder { } /** *数据源浮点类型字段 */ class FloatField extends FieldBase { } /** *数据源整数类型字段 */ class IntegerField extends FieldBase { } /** *数据源主键类型字段 */ class PkField extends FieldBase { } /** *数据源字符类型字段 */ class StringField extends FieldBase { } /** *数据源浮点类型字段 */ class TextField extends FieldBase { } /** *数据来源方式基类 它的子类 : HttpProxy 来源于http请求 MemoryProxy来源于内存(字符串) */ class DataProxyBase extends SerializeComponetBase { } /** *http请求方式获取数据 获取的数据格式使用对应DataReader来读取转化Record 例子: HttpProxy.create({ method:'post', url:'userjs/showuser.txt', dataType:'json', contentType:'application/json' }) */ class HttpProxy extends DataProxyBase { } interface IHttpProxyConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *异步 */ async: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *默认值 application/json */ contentType: string /** *数据库操作 默认:[] */ dao: IDao[] /** *默认值 json */ dataType: string /** *字段数组 默认:[] */ fields: IField[] /** *组件字体 */ font: Font /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *子组件数组 */ items: ComponentBase[] /** *请求的方式 默认: GET */ method: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *请求的地址 */ url: string /** *组件的唯一标识 */ xtype: string } /** *内存字符串方式获取数据 获取的数据格式使用对应DataReader来读取转化Record */ class MemoryProxy extends DataProxyBase { } /** *sql数据查询的代理类 */ class SqlProxy extends HttpProxy { } /** * 数组格式的row 的reader */ class ArrayReader extends DataReaderBase { } /** *Record 数据格式读取reader基类 */ class DataReaderBase { } interface IDataReaderBaseConfig { /** *字段列表 */ fields: IField[] /** *主键字段名 */ idField: string } /** *json格式的row 的reader 例子: JsonReader.create({ root:'obj', fields:[{name:'username',mapping:'username'},{name:'ipaddress',mapping:'ipaddress'}]}) */ class JsonReader extends DataReaderBase { } interface IJsonReaderConfig { /** *字段列表数组 */ fields: IField[] /** *唯一id的key名 */ idField: string /** *消息节点key名 */ msgProperty: string /** *json的最顶端的节点 */ root: string /** *状态节点key名 */ successProperty: string /** *总数的节点key名 */ totalProperty: string } /** *sql数据库返回的格式解析reader */ class SqlReader extends JsonReader { } /** *sql数据库返回的格式解析reader 配置项 */ interface ISqlReaderOptions { /** *字段列表数组 */ fields: IField[] /** *唯一id的key名 */ idField: string /** *消息节点key名 */ msgProperty: string /** *json的最顶端的节点 */ root: string /** *状态节点key名 */ successProperty: string /** *总数的节点key名 */ totalProperty: string } /** * 数据写入类 */ class DataWriterBase extends SerializeComponetBase { } /** *sql数据库操作类 作用是把数据源的修改数据提交到后台数据库 */ class SqlWriter extends DataWriterBase { } /** *组件的最顶层的容器组件 */ class DesignerPage extends DesignerPageBase { } class PopIconInput extends PopInputTableBase { /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: IPopIconInputConifg): void } interface IPopIconInputConifg { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *弹出框的大小 */ area: string /** *背景色 */ background: string /** *组件的样式class */ class: string coltitles: any /** *组件宽度 */ componentWidth: string /** *数据加载路径 */ dataurl: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *点击确定没有记录时提示 默认值: 请选择记录 */ errmsg: string /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *弹出框的标题 默认值: '资源信息'; */ formtitle: string /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *存储的id的取值字段 */ idField: string /** *能是否启用分页 默认值: "false",不启用分页,注意如果不启用分页而limit又太小的话,就会发生展示部分数据的现象 */ isPage: boolean /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示查询 */ isSearch: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *每页多少条记录 默认值: 999,最大的每页条数,启用分页的时候可设置该值,有10,20等 */ limit: Number /** *组件间隔 */ margin: string /** *加载数据使用的http方式 get,post,put,.... */ method: string /** *是否开启复选,否者为单选 默认值: "false" */ multselect: boolean /** *组件的名称 */ name: string /** *数据显示的时候取值字段 默认值: 'OBJNAME' */ nameField: string /** *参数 */ params: object /** *父组件 */ parentCmp: ComponentBase /** *组件的提示字符串 默认值: "" */ placeholder: string /** *弹出框的数据源 默认值: "" */ popDataSource: string /** *是否只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string rootId: string /** *设置组件的值 */ setValue: any /** *静态数据数组 */ staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *初始化值 */ value: string /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *编辑方式 */ enum EditType { /** *左对齐 */ edit = "edit" } /** * 高级筛选弹出框选择项的输入组件 TO DO 这个组件暂时未实现,后面有时间再弄 */ class PopInputAdv extends PopInputBase { /** * 组件渲染选中的值 * @param value 赋值的值 */ renderValue(value: any): void } /** *tab属性基本接口 */ interface ITabs { cols: ITableColumn[] entryname: string limit: string method: MethodType name: string page: boolean params: string tabDataSource: string tableUrl: string tbDataSource: string tbmethod: string url: string } /** * 弹出选择项框的输入组件基类 */ class PopInputBase extends InputBase { /** *数据加载的路径 */ dataurl: string /** *编辑类型 默认值: 'edit' 枚举,现只有两种,'edit','readonly',区分大小写 */ edittype: string /** *点击确定没有记录时提示 默认值: 请选择记录 */ errmsg: string /** *弹出框的标题 默认值: '资源信息'; */ formtitle: string /** *存储的id的取值字段 默认值: 'RWID' 可以同设置ConfigService.getInstance().getConfig().RWID */ idField: string /** *能是否启用分页 默认值: "false",不启用分页,注意如果不启用分页而limit又太小的话,就会发生展示部分数据的现象 */ isPage: boolean /** *记录是否查询过 */ isloadsearch: any /** *每页多少条记录 默认值: 999,最大的每页条数,启用分页的时候可设置该值,有10,20等 */ limit: number /** *是否开启多选 默认值: "false" */ multselect: boolean /** *数据显示的时候取值字段 默认值: 'OBJNAME' */ nameField: string /** *点击确定回调事件 */ onSelectChangedScript: string /** *数据源 默认值: "" */ popDataSource: string /** *静态渲染时候最外层的容器的id */ rootId: string /** * 渲染弹出框组件 */ doRender(): void /** * 得到弹出的数据源 静态渲染就使用 dataurl,staticDataSource 来渲染 * @returns 得到弹出数据源的组件实例 */ getPopDataSouce(): DataSourceBase /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): IPopInputBaseEditor /** * 得到值的数组 * @returns */ getValues(): string[] /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: IPopInputBaseConifg): void } class PopInputEditorBase { } interface IOptions { /** *组件的父节点,用于查找组件的元素 */ elemParent: JQuery /** *绑定的字段 */ field: string /** *存储的id的取值字段 */ id: string /** *弹出层节点 */ layeroElem: JQuery /** *是否开启多选 */ multselect: boolean } /** * 弹出选择项框的输入组件 */ interface IPopInputBaseConifg { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *弹出框的大小 */ area: string /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *数据加载路径 */ dataurl: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *点击确定没有记录时提示 默认值: 请选择记录 */ errmsg: string /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *弹出框的标题 默认值: '资源信息'; */ formtitle: string /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *存储的id的取值字段 */ idField: string /** *能是否启用分页 默认值: "false",不启用分页,注意如果不启用分页而limit又太小的话,就会发生展示部分数据的现象 */ isPage: boolean /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示查询 */ isSearch: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *每页多少条记录 默认值: 999,最大的每页条数,启用分页的时候可设置该值,有10,20等 */ limit: Number /** *组件间隔 */ margin: string /** *是否开启复选,否者为单选 默认值: "false" */ multselect: boolean /** *组件的名称 */ name: string /** *数据显示的时候取值字段 默认值: 'OBJNAME' */ nameField: string /** *父组件 */ parentCmp: ComponentBase /** *组件的提示字符串 默认值: "" */ placeholder: string /** *弹出框的数据源 默认值: "" */ popDataSource: string /** *是否只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string rootId: string /** *设置组件的值 */ setValue: any /** *静态数据数组 */ staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *初始化值 */ value: string /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *弹出的选择框接口 */ interface IPopInputBaseEditor { /** * 隐藏弹出框 */ hide(): void /** * 显示弹出框 */ show(): void } interface IPopInputBaseEditorConfig { component: PopInputBase } /** * 弹出选择项框的输入组件 */ class PopInputTableBase extends PopInputBase { /** *标题列,可自定义, 默认值: 有4列,一列是序号,一列是复选框,一列是名称,取值OBJNAME,一列是编号,取值OBJCODE; */ coltitles: any /** *是否允许查找 */ isSearch: boolean /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): IPopInputBaseEditor /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: IPopInputTableConifg): void } interface IOptions { /** *组件的父节点,用于查找组件的元素 */ elemParent: JQuery /** *绑定的字段 */ field: string /** *存储的id的取值字段 */ id: string /** *弹出层节点 */ layeroElem: JQuery /** *是否开启多选 */ multselect: boolean } /** * 弹出选择项框的输入组件 */ interface IPopInputTableConifg { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *弹出框的大小 */ area: string /** *背景色 */ background: string /** *组件的样式class */ class: string coltitles: any /** *组件宽度 */ componentWidth: string /** *数据加载路径 */ dataurl: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *点击确定没有记录时提示 默认值: 请选择记录 */ errmsg: string /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *弹出框的标题 默认值: '资源信息'; */ formtitle: string /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *存储的id的取值字段 */ idField: string /** *能是否启用分页 默认值: "false",不启用分页,注意如果不启用分页而limit又太小的话,就会发生展示部分数据的现象 */ isPage: boolean /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示查询 */ isSearch: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *每页多少条记录 默认值: 999,最大的每页条数,启用分页的时候可设置该值,有10,20等 */ limit: Number /** *组件间隔 */ margin: string /** *加载数据使用的http方式 get,post,put,.... */ method: string /** *是否开启复选,否者为单选 默认值: "false" */ multselect: boolean /** *组件的名称 */ name: string /** *数据显示的时候取值字段 默认值: 'OBJNAME' */ nameField: string /** *参数 */ params: object /** *父组件 */ parentCmp: ComponentBase /** *组件的提示字符串 默认值: "" */ placeholder: string /** *弹出框的数据源 默认值: "" */ popDataSource: string /** *是否只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string rootId: string /** *设置组件的值 */ setValue: any /** *静态数据数组 */ staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *初始化值 */ value: string /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *弹出树形选择框的输入组件 */ class PopInputTreeBase extends PopInputBase { /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): IPopInputBaseEditor } interface IPopInputTreeConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *弹出框的大小 */ area: string /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *数据加载路径 */ dataurl: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *点击确定没有记录时提示 默认值: 请选择记录 */ errmsg: string /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *弹出框的标题 默认值: '资源信息'; */ formtitle: string /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *存储的id的取值字段 */ idField: string /** *能是否启用分页 默认值: "false",不启用分页,注意如果不启用分页而limit又太小的话,就会发生展示部分数据的现象 */ isPage: boolean /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示查询 */ isSearch: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *每页多少条记录 默认值: 999,最大的每页条数,启用分页的时候可设置该值,有10,20等 */ limit: Number /** *组件间隔 */ margin: string /** *是否开启复选,否者为单选 默认值: "false" */ multselect: boolean /** *组件的名称 */ name: string /** *数据显示的时候取值字段 默认值: 'OBJNAME' */ nameField: string /** *父组件 */ parentCmp: ComponentBase /** *组件的提示字符串 默认值: "" */ placeholder: string /** *弹出框的数据源 默认值: "" */ popDataSource: string /** *是否只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string rootId: string /** *设置组件的值 */ setValue: any /** *静态数据数组 */ staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *初始化值 */ value: string /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *扩展组件 下拉多选组件 */ class SelectMultipleBase extends DropDownBase { /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): SelectMultipleDropDownEditor } interface ISelectMultipleConifg { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件宽度 */ componentWidth: string /** *下拉数据 */ datas: any[] /** *请求的数据的地址 */ dataurl: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *数据源的字段名称 */ field: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *获取组件的值 */ getValue: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否开启搜索,off关闭、on开启 */ isSearch: boolean /** *是否显示label */ isShowLabel: boolean /** *是否显示后缀 */ isShowSuffix: boolean /** *子组件数组 */ items: ComponentBase[] /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *组件间隔 */ margin: string /** *能选择的最大几个值 */ maxlength: number /** *请求数据时候的http的协议 可以是('get','post','delete','put'...等) 默认'get' */ method: string /** *组件的名称 */ name: string /** *请求的参数 */ params: string /** *父组件 */ parentCmp: ComponentBase /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *权限资源的标题 */ rightTitle: string /** *静态渲染的父id */ rootId: string /** *设置组件的值 */ setValue: any staticDatas: any[] /** *后缀文本 */ suffixText: string /** *后缀宽度 */ suffixWidth: string | number /** *数据标题显示字段 */ titlefield: string /** *初始化值 */ value: string /** *数据唯一值KEY字段 */ valuefield: string /** *校验规则 */ verify: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *扩展组件 下拉树形 */ class SelectTreeBase extends DropDownBase { /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): SelectTreeEditor /** * 注册勾选框改变事件 * @param callback */ onCheckChanged(callback: onCheckChangedHandle): void /** * 注册select 值发生点击时候触发事件 * @param callback 回调 */ onSelectChanged(callback: onSelectChangedHandle): void } declare type onCheckChangedHandle = (cmp: SelectTreeBase,node: ztree.ITreeNode) => void declare type onSelectChangedHandle = (cmp: SelectTreeBase,node: ztree.ITreeNode,value: string) => void /** *树形组件基类 */ class TreeBase extends DbComponentBase { /** * 得到被选中的节点数组 * @returns 返回选择的节点数组 ITreeNode[] */ getSelectNodes(): ITreeNode[] /** * 返回ztree的对象,具体帮助参考http://www.treejs.cn/v3/api.php * @returns 返回ztree的实例 */ getTreeObj(): IzTreeObj /** * 加载数据 * @param data 数据数组 * @param treeSettings 树形的配置项 */ loadData(data: any[],treeSettings: IZTreeSetting): void /** * 注册勾选变化事件 * @param callback 回调 */ onCheckChanged(callback: onCheckChangedHandle): void /** * 注册select 值发生点击时候触发事件 * @param callback 回调 */ onSelectChanged(callback: onSelectChangedHandle): void /** * 选中指定节点 * @param treeNode 需要被选中的节点数据 * @param addFlag true 表示追加选中,会出现多点同时被选中的情况 false (默认)表示单独选中,原先被选中的节点会被取消选中状态 * @param isSilent true 选中节点时,不会让节点自动滚到到可视区域内 false (默认)表示选中节点时,会让节点自动滚到到可视区域内 */ selectNode(treeNode: ITreeNode,addFlag: Boolean,isSilent: boolean): void /** * 通过id选中指定节点 * @param id 需要被选中的节点id * @param addFlag true 表示追加选中,会出现多点同时被选中的情况 false (默认)表示单独选中,原先被选中的节点会被取消选中状态 * @param isSilent true 选中节点时,不会让节点自动滚到到可视区域内 false (默认)表示选中节点时,会让节点自动滚到到可视区域内 */ selectNodeById(id: string,addFlag: Boolean,isSilent: boolean): void /** * 更新某节点数据,主要用于该节点显示属性的更新。 * @param id 节点的id */ updateNode(id: string): void } interface ITreeConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } interface ITreeNode { /** *节点的 checkBox / radio 的 勾选状态 */ checkBox: boolean /** *用于设置节点的子节点的 checkBox / radio 的半选状态 setting.check.checkType = "checkbox" -1 不存在子节点 或 子节点全部设置为 nocheck = true 0 无 子节点被勾选 1 部分 子节点被勾选 2 全部 子节点被勾选 setting.check.checkType = "radio" -1 不存在子节点 或 子节点全部设置为 nocheck = true 0 无 子节点被勾选 2 有 子节点被勾选 */ check_Child_State: number /** *设置节点的 checkBox / radio 的 focus 状态 默认值:false */ check_Focus: boolean /** *用于记录节点是否处于编辑名称状态 [setting.edit.enable = true 时有效] */ editNameFlag: boolean /** *强制节点的 checkBox / radio 的 半勾选状态。[setting.check.enable = true & treeNode.nocheck = false 时有效] 1、强制为半勾选状态后,不再进行自动计算半勾选状态 2、设置 treeNode.halfCheck = false 或 null 才能恢复自动计算半勾选状态 3、为了解决部分朋友生成 json 数据出现的兼容问题, 支持 "false","true" 字符串格式的数据 默认值:false */ halfCheck: boolean /** *节点自定义图标的 URL 路径。 1、父节点如果只设置 icon ,会导致展开、折叠时都使用同一个图标 2、父节点展开、折叠使用不同的个性化图标需要同时设置 treeNode.iconOpen / treeNode.iconClose 两个属性 3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性 默认值:无 */ icon: string /** *父节点自定义折叠时图标的 URL 路径。 1、此属性只针对父节点有效 2、此属性必须与 iconOpen 同时使用 3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性 默认值:无 */ iconClose: string /** *父节点自定义展开时图标的 URL 路径。 1、此属性只针对父节点有效 2、此属性必须与 iconClose 同时使用 3、如果想利用 className 设置个性化图标,需要设置 treeNode.iconSkin 属性 默认值:无 */ iconOpen: string /** *节点的id */ id: string /** *节点是否正在进行异步加载。 */ isAjaxing: boolean /** *节点是否为同级节点中的第一个节点。 */ isFirstNode: boolean /** *记录节点 的 hover 状态 */ isHover: boolean /** *节点是否为同级节点中的最后一个节点。 */ isLastNode: boolean /** *记录节点的层级 根节点 level = 0,依次递增 */ level: number /** *节点的父节点唯一标识 tId。 */ parentTId: string /** *节点的唯一标识 tId。 */ tId: string /** * 节点是否已经进行过异步加载,避免父节点反复异步加载数据。 */ zAsync: boolean /** * 获取节点在同级节点中的位置。 * @returns 返回同级节点中的位置。 */ getIndex(): number /** * 获取与节点相邻的后一个节点。 * @returns 返回同级下一个节点。 */ getNextNode(): ITreeNode /** * 获取节点的父节点。 * @returns 节点的父节点数据对象。 */ getParentNode(): ITreeNode /** * 获取 treeNode 节点的所有父节点(包括自己)。 * @returns treeNode 节点的所有父节点的数据源合(包括自己) */ getPath(): ITreeNode[] /** * 获取与 treeNode 节点相邻的前一个节点。 * @returns 返回同级前一个节点。 */ getPreNode(): ITreeNode } /** *弹出tree 的 page 用于弹出树形的选择选择 */ class TreeFormExt extends ContainerBase { } class TreeMenu { } /** *属性编辑器渲染 */ class AttributeRender { } /** *剪贴板对象 */ class Clipboard { } /** *组件弹出的菜单类 */ class Contextmenu { } class IContextmenu implements Contextmenu{ } /** *菜单项接口 */ interface IMenuItem { /** *action标志 */ action: string /** *图标 */ icon: string /** *全球唯一的ID */ id: string /** *点击事件 */ onClick: any /** *点击脚本 */ onClickScript: string /** *快捷键 */ shortCut: string /** *标题 */ text: string } /** *HY设计器类 */ class Designer { /** *配置项 */ config: any version: any /** * 渲染设计器 这个函数常用于在后台数据库获取页面模型的json 后渲染使用 * @param elemtId 容器的html id * @param json json对象 */ render(elemtId: string,json: Object): void } /** *界面设计器历史记录类 */ class History { } class ObjectTree { } /** *预览类 */ class Preview { /** * 预览类渲染函数 * @param previewElemtId html 元素的id */ render(previewElemtId: string): void } /** *按钮属性编辑器 */ class ButtonAttrEditor extends AttributeEditorBase { } /** *按钮属性编辑器配置 */ interface IButtonAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *服务端的脚本编辑属性编辑器 */ class ButtonFormulaAttrEditor extends ButtonAttrEditor { } /** *点击按钮弹出服务端的脚本编辑框 */ interface IButtonFormulaAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *列子 */ demo: string /** *描述 */ desc: string /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *是否公式化到前端 这个设置成true 页面加载时候后台会计算公式并返回到前端 */ isFormula: boolean /** *属性label标题 */ labelCaption: string /** *语言 */ language: CodeEditorLang /** *点击ok回调函数 */ okCallBack: any /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string /** *公式类型数组 */ types: FormulaBase[] /** *变量数组 */ variables: Variable[] } class ButtonItemsAttrEditor extends ButtonAttrEditor { } /** *复选框属性编辑器 */ class CheckboxAttrEditor extends AttributeEditorBase { } /** *代码编辑属性编辑器 */ class CodeEditAttrEditor extends ButtonAttrEditor { } /** *点击按钮弹出代码编辑框 */ interface ICodeEditAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *列子 */ demo: string /** *描述 */ desc: string /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *语言 */ language: CodeEditorLang /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *主题自定义 */ class CodeThemeEditAttrEditor extends AttributeEditorBase { } /** *点击按钮弹出代码编辑框 */ interface ICodeEditAttrEditor { /** *组件的属性 */ attr: string /** *按钮名称 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *语言 */ language: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *传入参数 */ parameter: string /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *颜色属性编辑器 */ class ColorpickerAttrEditor extends AttributeEditorBase { } /** *选择当前页面的组件辑器 */ class ComponentSelectAttrEditor extends AttributeEditorBase { } /** *组件选择属性编辑 */ interface IComponentSelectAttrEditor { /** *组件的属性 */ attr: string /** * 需要选择的组件的类正则表达式 如 classDef: /WorkFlow/ */ classDef: RegExp /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *获取list */ list: any /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *事件编辑属性编辑器 */ class CssAttrEditor extends ButtonAttrEditor { } /** *点击按钮事件编辑框 与ICssAttrEditor 的差异就是attr 的必需性 */ interface ICssAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *数据源的更新编辑属性编辑器 */ class DataSetUpdateEditor { } /** *数据源的字段属性编辑器 */ class DataSourceBaseAttrEditor extends ButtonAttrEditor { } /** *点击按钮事件编辑框 与IDataSourceBaseAttrEditor 的差异就是attr 的必需性 */ interface IDataSourceBaseAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *日期属性编辑器 */ class DatePickerAttrEditor extends AttributeEditorBase { } /** *事件编辑属性编辑器 */ class EventAttrEditor extends ButtonAttrEditor { } /** *点击按钮事件编辑框 与IEventAttrEditor 的差异就是attr 的必需性 */ interface IEventAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *例子子 */ demo: string /** *描述 */ desc: string /** *事件的名称 事件的函数名 */ eventName: string /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *传入参数 */ parameter: string /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *选择字段属性编辑器 */ class FieldsSelectAttrEditor extends SelectAttrEditor { } interface IFieldsSelectAttrEditorConifg { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *返回数据源函数 */ getDataSource: any /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *获取列表 */ list: any /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *选择值触发的事件 */ onSelected: any /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *显示标题的字段名 */ titlefield: string /** *类型 */ type: string /** *值的字段名 */ valuefield: string } /** *选择文件的属性编辑器 */ class FileSelectAttrEditor extends ButtonAttrEditor { } /** *字体属性编辑器 */ class FontAttrEditor extends ButtonAttrEditor { } /** *字体属性编辑器接口 */ interface IFontAttrEditor { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *配置图标的类型 */ enum iconType { /** *默认值内置字体图标 */ default = "", /** *自定义字图标,资源来自Font Awesome里面的图标 */ fontAwesome = "FontAwesome", /** *默认系统文件资源里面的图标,通过url加载图标 */ iconImg = "iconImg" } /** *弹出选择图标的属性编辑器 */ class IconAttrEditor extends AttributeEditorBase { } /** *弹出框属性编辑器 */ interface IIconAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string iconType: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *简单的label-input编辑器 */ class InputAttrEditor extends AttributeEditorBase { } /** *输入文本组件属性编辑器 */ class InputAttrFormulaEditor extends AttributeEditorBase { } interface IInputAttrFormulaEditor { /** *组件的属性 */ attr: string callback: Function /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any settings: string /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *选择方式 */ enum ItemsAttrEditorSelectType { /** *多选 */ multiple = "checkbox", /** *单选 */ single = "radio" } /** *Select checkbox radio组件的list 集合属性编辑器 */ class ItemsAttrEditor extends ButtonAttrEditor { /** * 增加选项 * @param item 新选项 */ addItem(item: Iitem): void } interface Iitem { /** *是否打钩 */ checked: boolean /** *标题 */ title: string /** *值 */ val: string } /** *集合属性编辑器配置接口 */ interface ItemsAttrEditorConfig { /** *组件的属性 */ attr: string /** *按钮标题 */ btnText: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *选择方式 */ selectType: ItemsAttrEditorSelectType /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *多项选择下拉属性编辑器 */ class MultipleSelectAttrEditor extends AttributeEditorBase { } interface IMultipleSelectAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *是否开启搜索 */ issearch: string /** *属性label标题 */ labelCaption: string /** *获取列表 */ list: any /** *选择项的最大选择数量 */ maxlength: number /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *返回的类型 (String,Array) String 说明是返回逗号隔开的字符串, Array 说明返回的是数据对象[] */ returnType: any /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *显示标题的字段名 默认值 title */ titlefield: string /** *类型 */ type: string /** *值的字段名 默认值 value */ valuefield: string } /** *选择表单页面的属性编辑器 */ class PageModelAttrEditor extends AttributeEditorBase { } /** *选择功能的属性编辑器初始化配置接口 */ interface IPageModelAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean selectedCallback: any /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** * 组件参数操作的属性编辑器 */ class ParamsAttrEditor extends AttributeEditorBase { } /** *下拉框属性编辑器 */ class SelectAttrEditor extends AttributeEditorBase { } interface ISelectAttrEditorConfig { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *获取列表 */ list: any /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *选择值触发的事件 */ onSelected: any /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *显示标题的字段名 */ titlefield: string /** *类型 */ type: string /** *值的字段名 */ valuefield: string } /** *选择功能的属性编辑器 */ class SelectPageModelAttrEditor extends AttributeEditorBase { } /** *选择功能的属性编辑器初始化配置接口 */ interface ISelectPageModelAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean selectedCallback: any /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *开关属性编辑器 */ class SwitchAttrEditor extends AttributeEditorBase { } /** *开关属性编辑器 */ interface ISwitchAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *文本域属性编辑 */ class TextareaAttrEditor extends AttributeEditorBase { } /** *文本域属性编辑 */ class TextareaAttrFormulaEditor extends InputAttrFormulaEditor { } /** *x,y属性编辑 可用于:坐标,宽高,等二元值修改 */ class XYAttrEditor extends AttributeEditorBase { } class ZlPopSourceFormAttrEditor extends AttributeEditorBase { } /** *弹出框属性编辑器 */ interface IZlPopSourceFormcmpAttrEditor { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any settings: string /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } /** *代码编辑器的高亮的语言 */ enum CodeEditorLang { groovy = "groovy",html = "html",java = "java",javascript = "javascript",json = "json",sql = "sql" } /** *代码编辑器的主题 */ enum CodeEditorTheme { hcblack = "hc-black",vs = "vs",vsdark = "vs-dark" } /** *下拉提示的前面小图标 */ enum CompletionItemKind { /** *类 */ Class = 5, /** *颜色 */ Color = 19, /** *常量 */ Constant = 14, /** *构造函数 */ Constructor = 2, /** *自定义颜色 */ Customcolor = 22, /** *枚举 */ Enum = 15, /** *枚举数字 */ EnumMember = 16, /** *事件 */ Event = 10, /** *成员变量 */ Field = 3, /** *文件 */ File = 20, /** *文件夹 */ Folder = 23, /** *函数 */ Function = 1, /** *接口 */ Interface = 7, /** *关键字 */ Keyword = 17, /** *方法 */ Method = 0, /** *模块 */ Module = 8, /** *操作符合 */ Operator = 11, /** *属性 */ Property = 9, /** *引用 */ Reference = 21, /** *代码片段(模板) */ Snippet = 25, /** *结构体 */ Struct = 6, /** *文本 */ Text = 18, /** *参数 */ TypeParameter = 24, /** *单元 */ Unit = 12, /** *值 */ Value = 13, /** *变量 */ letiable = 4 } /** *代码编辑器 */ class CodeEditor { } interface ICodeEditor { page: DesignerPageBase /** * 释放编辑器 */ dispose(): void /** * 得到焦点 */ focus(): void /** * 得到编辑器的值 * @returns 编辑器的值 */ getValue(): string /** * 插入字符串 * @param s 字符串 */ insert(s: string): void /** * 设置编辑器的值 * @param v 编辑器的值 */ setValue(v: string): void } /** *提示内容格式 */ interface IHintItem { } interface IHintReader { /** * 提示 * @param hints 提示项 * @param range 范围* @returns 返回提示项的数组 */ read(hints: IHintItem[],range: any): IHintItem[] } /** *下拉提示的规则 */ interface IHints { } /** * Monarch代码编辑器类 */ class MonarchEditor { elem: HTMLElement /** *提示规则 */ hints: IHintItem[] language: any page: DesignerPageBase readOnly: boolean readers: IHintReader[] theme: string } /** *获取代码编辑器页的下拉提示的页面参数reader */ class PageParamsHintReader { page: DesignerPageBase } enum TableModelType { catalog = 2,nomarl = 0,tree = 1 } /** * 获取代码编辑器的下拉提示表模型的reader */ class TableModelHintReader { page: DesignerPageBase } /** *表模型的属性接口 */ interface ITableModel { MX_BIANH: string MX_BIAOLX: TableModelType MX_MINGC: string MX_SHIFCJ: number MX_ZHUJZD: string RWID: string } /** *类型 */ enum FormulaKind { /** *函数 */ function = "function", /** *变量 */ variant = "variant" } /** *公式类 */ class Formula { } /** *公式类型 */ class FormulaBase { } /** *公式组就基类 */ class FormulaCmpBase { } /** *变量对象 */ class Variable { } interface IFormulaCmpBase { id: string name: string page: DesignerPageBase value: string } /** *公式接口 */ interface IFormulaItem { /** *儿子群 */ children: IFormulaItem[] /** *帮助 */ help: string /** *帮助的url地址.可以跳转到对应的帮助网站地址 */ helpUrl: string /** *图标 */ icon: string /** *名称 */ name: string /** *模板 */ temp: string /** *公式类型 */ type: FormulaKind /** *值 */ value: string } /** *按钮公式编辑组件 例: ```javascript FormulaButtonCmp.render({}, $('#setValuediv .custom-formula-btn'), () => { return aceEditor.getValue(); }, (v: string) => { aceEditor.setValue(v) } ) ``` */ class FormulaButton extends FormulaCmpBase { /** * 静态组件的渲染函数 * @param config 组件的属性配置 */ static render(config: IFormulaButton): void } /** *按钮公式编辑组件接口 */ interface IFormulaButton { /** *按钮的jquery 对象 */ $btnElem: JQuery /** *获取需要展示的公式值回调函数 */ getValueCallBack: any id: string name: string /** *公式设计窗口点击确定的回调 */ okCallBack: any page: DesignerPageBase /** *公式类型数组 */ types: FormulaBase[] value: string /** *变量数组 */ variables: Variable[] } /** *公式自定义类型件窗口 */ class FormulaForm { /** *公式的编辑的语言 */ language: CodeEditorLang /** *标题 */ title: string /** *公式类型数组 */ types: FormulaBase[] /** *获取公式类型,公式名,变量,公式说明的地址 */ url: string /** *公式值 */ value: any /** *变量数组 */ variables: Variable[] } /** *输入框的的公式组件 */ class FormulaInput extends FormulaCmpBase { /** * 静态组件的渲染函数 * @param config 组件的属性配置 */ static render(config: IFormulaInput): void } /** *输入框组件接口 */ interface IFormulaInput { /** *绑定的属性编辑器的input的jquery对象 */ $input: JQuery /** *获取需要展示的公式值回调函数 */ getValueCallBack: any id: string name: string /** *公式设计器点击确定时候回调函数 */ okCallBack: any page: DesignerPageBase /** *公式的返回数据类型 校验公式需要用到 */ returnType: any /** *公式类型数组 */ types: FormulaBase[] value: string /** *变量数组 */ variables: Variable[] } /** *属性编辑器注册器服务 */ class AttributeEditorRegediterService extends ServiceBase { /** * 获取组件实例的属性编辑器数组, 包含父类的 * @param compnent 组件实例* @returns 属性编辑器数组 */ static getComponentEditors(compnent: ComponentBase): AttributeEditorBase[] /** * 通过类名和组件实例 获取的属性编辑器数组 * @param compnentInst 组件实例 * @param clazzName 类名* @returns 属性编辑器数组 */ static getComponentEditorsByClassName(compnentInst: ComponentBase,clazzName: string): AttributeEditorBase[] /** * 获取组件实例的属性编辑器数组, 通过递归祖先来获取整个属性数组 * @param compnent 属性编辑器数组 * @param proto 组件类* @returns 组件实例的属性编辑器数组, */ static getComponentEditorsRecursion(compnent: ComponentBase,proto: any): AttributeEditorBase[] /** * 注册属性编辑器 * @param opts 编辑器配置 */ static regedit(opts: AttrEditorOptions): void } declare type AttrEditorHandle = (cmp: ComponentBase) => AttributeEditorBase[] declare type AttrEditorOptions = /** *组件序列化服务类 */ class CompnentSerializerService extends ServiceBase { } /** *组件注册服务类 主要是一些共用的静态函数 */ class CompomentRegediterService extends ServiceBase { /** * 构造新的组件 * @param xtype 组件类型唯一标识(类名) * @param parentCmp 父组件实例 * @param before 在什么组件之前 * @param config 参数* @returns 组件实例 */ static builderCompoment(xtype: string,parentCmp: ComponentBase,before: ComponentBase,config: IComponentBase): SerializeComponetBase /** * 获取组件注册缓存对象 * @returns */ static getCompomentRegediter(): any /** * 通过xtype获取定义的类 * @param xtype 组件的唯一类型标志 * @param ignoreCase 是否忽略大小写 默认:false* @returns 已注册的类 */ static getComponentClass(xtype: string,ignoreCase: boolean): any /** * 通过htm元素的tag获取定义的类 * @param tag html元素的tag* @returns 已注册的类 */ static getComponentClassFormTag(tag: string): any /** * 获取已经注册的组件 * @returns 已经注册的组件对象 */ static getComponentClasses(): object /** * 得到组件的组的数组 * @returns 组的数组 */ static getComponentGroups(): ICompomentGroup[] /** * 得到经过排序后的组件的组的数组 * @returns 组的数组 */ static getComponentGroupsBySort(): ICompomentGroup[] /** * 得到组的层次 * @param group 组件组的实例* @returns 返回组件的层次 */ static getGroupLev(group: ICompomentGroup): number /** * 获取注册的组件的数组 * @returns 返回注册的组件配置数组 */ static getRegeditConfigs(): IRegeditComponentConfig[] /** * 获取注册的组件的信息,分组,图标等信息。。。 * @param className 组件类名* @returns 非空 组件的注册信息 则返回undefine */ static getRegeditsConfigByClassName(className: string): IRegeditComponentConfig /** * 通过唯一id获取组件的注册信息 ,分组,图标等信息。。。 * @param id 组件注册信息的唯一id* @returns 非空注册的组件信息 ,则返回undefine */ static getRegeditsConfigById(id: string): IRegeditComponentConfig /** * 注册组件 * @param componentClass 组件的class * @param regeditConfig 注册的参数: { icon: 'fa fa-film', gourp: "layout", title: '输入选项卡个数', name: '选项卡',visiable:true } icon支持 字体图标,css图标,base64图标 */ static regedit(componentClass: object,regeditConfig: IRegeditComponentConfig | IRegeditComponentConfig[]): void /** * 注册组件群组 by gk * @param group group = {name:"行列布局",id:"form",desc:"可以设置界面的行列布局", help:"", visiable:true}* @returns 返回增加或者存在的group对象 */ static regeditGroup(group: ICompomentGroup): ICompomentGroup } /** *组件分组 */ interface ICompomentGroup { /** *描述 */ desc: string /** *是否展开 */ expand: boolean /** *帮助信息 */ help: string /** * 组id */ id: string /** *子组 */ items: ICompomentGroup[] /** *名称 */ name: string /** *父组 */ parentGroup: ICompomentGroup /** *排序 */ sort: number /** *可见 */ visiable: boolean } /** *组件注册服务类配置接口 */ interface IRegeditComponentConfig { /** *组件的创建时配置项 构造函数的参数 */ config: object /** *组件的分组 */ gourp: string /** *帮助信息 */ help: string /** * 组件再界面设计器上的图标 */ icon: string /** *唯一id 动态生成的每次刷新都不一样 */ id: string /** *名称 */ name: string /** *排序,数字越小排位越靠前 */ sort: number /** *组件的hit */ title: string /** *是否可见 */ visiable: Boolean /** *类名组件唯一标识 */ xtype: string } /** *组件的静态渲染服务 由于html会吧大写属性变成小写属性.对于驼峰命名的属性大写字母前需要用横杠代替 例子: ```typescript let htm=[ '', '', ].join('') */ class ComponentRenderService extends ServiceBase { /** * 渲染组件 * @param page 页面实例 * @param config 组件配置 */ static render(page: DesignerPageBase,config: IComponentRenderServiceConfig): void } interface IComponentRenderServiceConfig { /** *需要静态渲染根节点 */ el: JQuery } /** *组件属性序列化辅助类 */ class ComponetSerializerPropoty { /** *需要序列化的属性对象 后面继承的组件需要设置保存的属性 */ static serializePropertys: any /** * 获取组件实例的序列化属性 * @param compnent 组件实例* @returns 需要组件的属性对象 例如:{ pop1:String,pop2:Boolean} */ static getComponentSerializePropertys(compnent: any): any /** * 设置序列化属性 * @param compnent 组件 * @param propertyName 属性名 * @param dataTytpe 数据类型 * @param defaultValue 默认值 */ static setSerializePropertys(compnent: any,propertyName: string,dataTytpe: any,defaultValue: any): void } interface ICompnentSerializerPropoty { dataType: any defalut: any } /** *平台全局配置类型 包含了api接口 请求的地址 */ class ConfigService extends ServiceBase { /** * 获取全局的配置对象 * @returns 全局的配置对象 */ getConfig(): any } /** *导出文件类型 */ enum DataExportFileType { /** *csv文件格式 */ csv = ".csv", /** *excel文件格式 */ excel = ".xls" } enum DataExportFormat { /** *输出csv格式 */ csv = "csv", /** *输出excel 97-2003格式 */ excel2003 = "xls", /** *输出excel 2003以后的版本格式 */ excel2007 = "xlsx", /** *输出html格式 */ html = "html", /** *输出pdf格式 */ pdf = "pdf" } /** *导出的数据范围 */ enum DataExportRange { /** *全部去导出 */ all = "2", /** *选中数据 */ checked = "1", /** *当前页 */ page = "0" } class DataExportService extends ServiceBase { } /** *导出参数接口 */ interface IDataExportConfig { /** *表名称,如果没有list,将会按照这个表名去查询数据 */ MAINTABLENAME_ZLFW: string /** *勾选的列表 */ checkRwid: string[] /** *要导出的列名数组 */ columns: object /** *扩展的参数 */ extraMap: any /** *文件名 */ fileName: string /** *导出的文件类型 */ fileType: DataExportFileType /** *文件标题 */ filetitle: string /** *模型id */ modelId: string modelPath: string /** *选择导出的范围 */ range: DataExportRange /** *模板路径? */ url: string } interface IDataExportFormConfig { /** *文件类型 */ fileFormat: DataExportFileType /** *导出的文件名称 */ fileName: string /** *导出文件标题 */ filetitle: string /** *导出的范围 */ range: DataExportRange } declare type DataExportCallBack = (filetitle: string,fileName: string,range: DataExportRange,fileType: DataExportFileType,error: string) => void /** *设计器服务类 */ class DesignerService extends ServiceBase { } class MessageServices extends ServiceBase { /** * 注销监听 */ clear(): void /** * 反注册处理 * @param handle 注册过的事件字符串 * @param msgFilter 消息字符串 * @param fn 消息处理函数 */ off(handle: string,msgFilter: string,fn: Function): void /** * 注册对象的消息处理 * @param handle 接收消息来源的对象id或者组件实例...等等. * @param msg 消息字符串 * @param callback 消息回调 * @param override 是否覆盖之前注册的消息处理函数 默认值 = false * @param isGlobal 是否全局监听(跨域iframe监听) 默认值 = false */ on(handle: string | IComponent,msg: string,callback: Function,override: boolean,isGlobal: boolean): void /** * 发送消息给对象 * @param handle 接收消息来源的对象id...等等. * @param msg 消息值 * @param parms 附带到消息的参数对象 注意消息参数对象不能是组件的实例,这是因为发送会序列化操作会导致死循环 * @param isGlobal 是否全局监听(跨域iframe监听) 默认值 = false */ send(handle: string | IComponent,msg: string,parms: any,isGlobal: boolean): void /** * 判断浏览器是否支持postMessage * @returns true 支持;则反之 */ static getSupportPostMessage(): boolean } /** *组件的取名服务类 */ class NameGenerateService extends ServiceBase { } /** *页面的状态 */ enum PageServiceEditState { /** *新增 */ add = "add", /** *编辑 */ edit = "edit", /** *无 */ none = "none", /** *查看 */ view = "view" } /** * 弹出页面的Page对象保留占位接口 代码编辑器内类似components.table1 无下拉代码提示,但是components.table1是可以生效 */ class IFormPageHolder extends DesignerPageBase { /** *代码编辑器内类似components.table1 无下拉代码提示,但是components.table1是可以生效 */ components: IDesignerPageComponentsHolder } /** *页面操作服务类 */ class PageService { /** * 根据表单的编号弹出表单 * @param pageModelCode 表单设计的界面模型编号 * @param params 页面参数(包含了全局和自定义的参数) * @param pageCoinfg 弹出的编辑界面的参数设置默认:{} 这里可以设置窗口的各种属性 弹出的窗口大小,标题, 以及各种回调 onSuccess,onYes,onCancel,onMin,onClosed ... * @param onPageShowCallBack 界面加载完成回调* @returns 返回弹出窗口页面唯一索引 */ static openFormPageByCode(pageModelCode: string,params: Object | IParam[],pageCoinfg: IPageFormOptions,onPageShowCallBack: any): number /** * 根据表单的id弹出表单 * @param pageModelId 表单设计的界面模型id * @param params 页面参数(包含了全局和自定义的参数) * @param pageCoinfg 弹出的编辑界面的参数设置默认:{} 这里可以设置窗口的各种属性 弹出的窗口大小,标题, 以及各种回调 onSuccess,onYes,onCancel,onMin,onClosed ... * @param onPageShowCallBack 界面加载完成回调* @returns 返回弹出窗口页面唯一索引 */ static openFormPageById(pageModelId: string,params: Object | IParam[],pageCoinfg: IPageFormOptions,onPageShowCallBack: any): number /** * 在浏览器开启新页面 这个与菜单关联受权限的管理 * @param menuCode 菜单的编号(注意唯一性) * @param param 参数对象 */ static openNewPageByMenuCode(menuCode: string,param: object): void /** * 通过菜单的编号在主框架上的页签开启一个页面 * @param menuCode 菜单的唯一编号(菜单管理内必须保证编号的唯一性) * @param param 可选附带的参数。注意 这个参数由于是拼接到URL后面因此存在了长度限制。 */ static openNewTabPageByMenuCode(menuCode: string,param: object): void /** * 通过表单的编号在主框架上的页签开启一个页面 * @param pageModelCode 表单唯一编号(表单管理内必须保证编号的唯一性) * @param title 可选参数。页签的标题 * @param resid 可选参数。资源ID * @param param 可选参数。附带参数 例如: param={XXXid:'xxxxx', YYYid:'xxxxxyyyyy'} */ static openNewTabPageByPageCode(pageModelCode: string,title: string,resid: string,param: object): void /** * 通过表单的编号在系统最顶层弹出一个页面 * @param pageModelCode 表单唯一编号(表单管理内必须保证编号的唯一性) * @param title 可选参数。页签的标题也可以在 formConfig内的title设置弹出标题 * @param resid 可选参数。资源ID. 与资源权限相关,无权限控制传:null. 一般是:菜单资源id * @param pageCoinfg 可选参数。类型IFormOptions 可以设置弹出的窗口大各种属性 例如: pageCoinfg={title:'窗口标题' ,area:['100px','200px']} * @param param 可选参数。附带参数,param ={ xxx:xxxyyyy,aaabbb:cccddd} */ static openNewTopPageByPageCode(pageModelCode: string,title: string,resid: string,pageCoinfg: IPageFormOptions,param: any): void /** * 在浏览器新的页签打开页面 注意这个无权限管理 * @param pageModelCode 页面模型编号(注意唯一性) * @param param 这个参数由于是拼接到URL后面因此存在了 默认值:{} */ static openNewUrlPageByCode(pageModelCode: string,param: object): void /** * 在的主框架上开启页签页面 * @param url 连接地址 * @param title 页签标题 * @param resid 资源id * @param param 可选参数 拼接到URL后面 */ static openTabPage(url: string,title: string,resid: string,param: Object): void } /** *组件的实例占位接口 */ interface IDesignerPageComponentsHolder { } interface IPageFormOptions { anim: FormAnimType /** *区域范围 例如: area: ['100px','200px'] 或者 area: ['100%x','200%'] 或者 area: '100px' */ area: string | string[] /** *按钮 例如: btn: ['确定','取消'] */ btn: string | boolean | string[] /** *按钮的排列 默认:FormBtnAlign.right 你可以快捷定义按钮的排列位置,btnAlign的默认值为r,即右对齐。该参数可支持的赋值如下: */ btnAlign: FormBtnAlign /** *关闭按钮 两种风格的关闭按钮,可通过配置1和2来展示,如果不显示,则closeBtn: 0 */ closeBtn: string | boolean /** *内容 */ content: string | JQuery | string[] /** *固定 默认:true */ fixed: boolean /** *输入框的样式主题 */ formType: FormInputType /** *显示的图标 */ icon: FormIcon /** *html元素id */ id: string /** *是否全屏开启 */ isFull: boolean /** *关闭动画 默认:true */ isOutAnim: boolean /** *最大高度 */ maxHeight: number /** * 最大宽度 */ maxWidth: number /** *允许最大最小化 默认:false */ maxmin: boolean /** *触发拖动的元素 */ move: string | boolean | HTMLElement /** *是否允许拖拽到窗口外 */ moveOut: boolean /** *位置 默认:垂直水平居中 offset: 'auto' 默认坐标,即垂直水平居中 offset: '100px' 只定义top坐标,水平保持居中 offset: ['100px', '50px'] 同时定义top、left坐标 offset: 't' 快捷设置顶部坐标 offset: 'r' 快捷设置右边缘坐标 offset: 'b' 快捷设置底部坐标 offset: 'l' 快捷设置左边缘坐标 offset: 'lt' 快捷设置左上角 offset: 'lb' 快捷设置左下角 offset: 'rt' 快捷设置右上角 offset: 'rb' 快捷设置右下角 */ offset: string /** *是否允许关闭回调 注意在弹出最顶层的窗口是无效的 返回 true允许关闭窗口,则反之 */ onCanClose: PageFormHandle /** *右上角关闭按钮触发的回调 */ onCancel: PageFormHandle /** *关闭回调 */ onClosed: PageFormHandle /** *最大化回调 */ onFull: PageFormHandle /** *最小化回调 */ onMin: PageFormHandle /** *拖动完毕后的回调方法 */ onMoveEnd: PageFormHandle /** *监听窗口拉伸动作 */ onResizing: PageFormHandle /** *还原回调 */ onRestore: PageFormHandle /** *弹出完全成功弹出的回调 */ onSuccess: PageFormHandle /** *点击确定的回调 返回false不允许关闭,否则允许 */ onYes: PageFormHandle /** *路径 */ path: any /** *允许改不大小 */ resize: boolean /** *是否允许浏览器出现滚动条 默认:true */ scrollbar: boolean /** *遮罩层的透明度颜色 即弹层外区域。默认是0.3透明度的黑色背景('#000')。如果你想定义别的颜色,可以shade: [0.8, '#393D49'];如果你不想显示遮罩,可以 */ shade: string | number | boolean | any[] /** *主题 */ theme: string /** *是否允许多个tips */ tipsMore: boolean /** *标题 */ title: string | boolean | any[] /** *弹出窗口的类型 */ type: FormType /** *层叠顺序 */ zIndex: number } declare type PageFormHandle = (page: IFormPageHolder) => boolean | void /** *服务器服务类 可以获取服务器的一些配置信息 如:时间格式 等等 */ class ServerService extends ServiceBase { } /** *单实例服务基类 */ class ServiceBase { } /** *ajax请求内容的格式 */ enum ContentType { applicationJson = "application/json",applicationXwwwFormUrlencoded = "application/x-www-form-urlencoded",textHtml = "text/html",textPlain = "text/plain" } /** *ajax请求参数的格式 */ enum DataType { html = "html",json = "json",text = "text" } /** *http的请求类型 'GET','POST','DELETE','PUT' */ enum MethodType { DELTE = "DELETE",GET = "GET",POST = "POST",PUT = "PUT" } /** *返回结果的状态 */ enum RetState { /** *错误 */ ERROR = "ERROR", /** *成功 */ OK = "OK" } /** *通用函数类 */ class Common { /** *一般的通用校验规则 */ static Verifys: any /** * 开启弹出的页面 * @param options 参考open的参数* @returns 返回弹出层的唯一index */ static Form(options: IFormOptions): number /** * 添加script标签并执行代码 * @param id 唯一字符串 * @param javascript 脚本字符串* @returns false执行失败. true执行成功 */ static addJavaScript(id: string,javascript: string): boolean /** * 任意值转成boolean类型 true: 'true', 11 false : 'false', 0 ,'0',undefine,null,[] * @param val 值* @returns 返回 true/false */ static anyToBoolean(val: any): boolean /** * 属性复制,但是覆盖C已经存在的 * @param C 需要合并的目标对象 * @param D 源对象1 * @param B 源对象2* @returns 返回合并后的对象 */ static apply(C: any,D: any,B: object): any /** * 属性复制,但是不会覆盖o已经存在的,只会复制o没有的属性 * @param o 目标对象 * @param c 源对象* @returns 返回合并后的对象 */ static applyIf(o: any,c: any): any /** * 同步ajax请求 * @param url 请求的路径 * @param metho 请求的类型 get post put delete * @param param 请求的参数对象 不能是字符串 * @param callBackFunc 完成请求回调 * @param showLoading 是否显示加载进度条 默认值false */ static asyncAjax(url: string,metho: MethodType,param: any,callBackFunc: Function,showLoading: boolean): void /** * 根据数据填充Layuiform * @param frmElem html元素 * @param data 数据 * @param options 设置 */ static autoFill(frmElem: HTMLElement,data: string[],options: object): void /** * 关闭指定的弹出层 * @param index 层的唯一索引 * @param force 强制关闭* @returns 返回false关闭失败,其他都成功 */ static closeForm(index: number,force: boolean): boolean /** * 关闭所有的layer * @param type 类型 (tips,....) */ static closeFormAll(type: FormType): void /** * 压缩图片 * @param file file对象 * @param type 压缩后转换的文件类型 * @param mx 压缩的图片最大宽度限制 * @param mh 压缩的图片最大高度限制* @returns 返回压缩后的图片Blod */ static compressImg(file: any,type: any,mx: any,mh: any): Promise /** * 弹出确定取消的对话框 * @param text 提示信息 * @param callBackFunc 确定后回调函数 返回false是不关闭窗口,否则都关闭 * @param title 提示框的标题* @returns 返回弹出层的唯一index */ static confirm(text: string,callBackFunc: any,title: string): number /** * 简单数据类型转换 * @param fromType 从什么类型 * @param toType 到真没类型 * @param value 值* @returns 返回对应的toType类型的值 */ static convert(fromType: any,toType: any,value: any): any /** * 异步delete 方式提交数据 * @param url 请求的路径 * @param param 请求的参数对象 不能是字符串 * @param callBackFunc 完成请求回调 * @param showLoading 是否显示加载进度条 默认值false */ static deletePost(url: string,param: any,callBackFunc: Function,showLoading: boolean): void /** * 获取当前的设备浏览器的版本信息 * @param key os,ie,weixin,android,ios,mobile* @returns 设备信息 */ static device(key: any): DeviceInfo /** * 禁用AMD加载 */ static disableAmd(): void /** * 下载文件 * @param url 下载地址 * @param completeCallback 完成回调函数 */ static download(url: string,completeCallback: any): void /** * 生效AMD加载 */ static enableAmd(): void /** * 浏览器的控制台输出错误 * @param msg 错误消息字符串 */ static error(msg: any): void /** * 弹出错误提示信息框. * @param errorTxt 提示的信息* @returns 返回弹出层的唯一index */ static errorMsg(errorTxt: string): number /** * 解析typeScript/javascript脚本 * @param script typeScript脚本字符串* @returns 返回 脚本的对象,否则返回null */ static evalScript(script: string): any /** * 执行一个javascript 字符串 * @param script javascript 字符串 * @param thisArg 脚本内部的this对象 * @param strArg 传递的参数字符串说明可以在脚本中直接使用a,b参数 如: 'a,b' * @param ArgModel 传递的参数值model 不如{a:xxxx,b:yyyyy}* @returns script执行的脚本内的 return语句返回的结果 */ static execJavaScript(script: any,thisArg: any,strArg: any,ArgModel: any): any /** * 表单提交 context-Type ='application/x-www-form-urlencoded' * @param url 提交的地址 * @param method http的get / post * @param param 请求的参数对象 不能是字符串 * @param callBackFunc 回调 * @param showLoading 是否显示正在加载进度框 默认值false */ static formPost(url: string,method: MethodType,param: object,callBackFunc: Function,showLoading: boolean): void /** * 模拟form 提交 * @param url 提交的地址 * @param params 参数数组 * @param newTab 是否在新页签开启 默认:true */ static formSubmit(url: string,params: IParam[],newTab: boolean): void /** * 格式化数字显示方式 用法 formatNumber(12345.999,'#,##0.00'); 货币类型 小数不足两位补零 formatNumber(12345.999,'#,##0.##'); 货币类型 保留两位小数,不足也不补 formatNumber(123,'000000'); * @param num 数字 * @param pattern 格式化模板字符串 '#,##0.00 #,##0.##'* @returns 格式化后的数字字符串 */ static formatNumber(num: number,pattern: string): string /** * 最大化弹出层 * @param index 弹出层的唯一索引* @returns 返回弹出层的唯一index */ static fullForm(index: number): void /** * 生成一个全球唯一id 注意:这个与uuid有差别,全局全球唯一,缺点就是比较长 * @returns 全球唯一的id字符串 */ static generalGUID(): string /** * 异步http获取get请求数据 * @param url 请求的路径 * @param param 请求的参数对象 注意:不能是字符串 * @param callBackFunc 完成请求回调 * @param showLoading 是否显示加载进度条 默认值false */ static get(url: string,param: any,callBackFunc: Function,showLoading: boolean): void /** * 获取当前激活的iframe * @returns 当前激活的iframe */ static getActiveIframe(): JQuery /** * 浏览器版本号 * @returns 版本号字符串 */ static getBrowserVersion(): string /** * 获取实例的类名 * @param obj 类的实例 或者 类 或者 类名字符* @returns 返回类名 错误返回null */ static getClassName(obj: any): any /** * 得到组件的属性帮助的url * @param cmp 组件实例 * @param attr 属性名称* @returns 返回组件的帮组url */ static getComponentHelpUrl(cmp: IComponent,attr: string): string /** * 得到全局配置对象 * @returns 全局配置对象实例 */ static getConfig(): any /** * 获取contentPath * @returns 返回contentPath */ static getContextPath(): string /** * 获取cookie值 * @param cookieName 键值* @returns 对应的cookiename的值 */ static getCookieValue(cookieName: string): any /** * 获取cookie * @returns 返回cookies */ static getCookies(): object /** * 获取完整url的路径包含http,https * @param url 相对路径/绝对路径* @returns 返回处理过的路径.没有contextpath就加上,完整的路径http,https开头的原路返回 */ static getFullUrl(url: string): string /** * 得到当前功能的菜单资源ID * @returns 资源id */ static getMenuId(): string /** * 获取当前页面的url 的参数值. 也就是就是问号后面的参数值 注意:这只有请求方式是 get 时候才有效 * @param name 参数名* @returns 对应的参数值 */ static getQueryString(name: string): string /** * 获取url的参数对象 * @param url 请求的路径* @returns 对应的参数对象 */ static getQueryStrings(url: string): object /** * 得到tokenid * @returns 返回tokenid / sessionid 字符串 */ static getTokenId(): any /** * 获取服务器的txt文件 * @param url url * @param callback 回调函数 */ static getTxtFile(url: string,callback: any): void /** * 获取url的路径 * @param url 相对路径/绝对路径* @returns 返回处理过的路径.没有contextpath就加上,完整的路径http,https开头的原路返回 */ static getUrl(url: string): string /** * 得到url的部分参数 * @param fullUrl 请求连接* @returns 返回参数数组 */ static getUrlExcludeQueryString(fullUrl: string): string /** * 得到用户信息 * @returns 返回用户信息对象 */ static getUserInfo(): any /** * 获取数据保存到浏览器的本地缓存 * @param key 唯一key* @returns 返回本地缓存的值 */ static getlocalCache(key: any): string /** * 判断是否ie * @returns 是否ie浏览器 */ static ie(): string | number | boolean /** * 绑定input与树模糊查找,该函数来自ztree官方的demo * @param treeObj ztree树的对象 * @param inputId 输入框id * @param isHighLight 是否选择高亮 * @param isExpand 是否展开* @returns true / false */ static initTreeSearch(treeObj: any,inputId: any,isHighLight: any,isExpand: any): void /** * 判断对象是否继承与接口 * @param object 对象 * @param interfaceName 接口的名称字符* @returns true继承,则反之 */ static instanceOfInf(object: any,interfaceName: string): boolean /** * lodash的加强版, 空对象,集合,映射或者set .排除了 boolean 和 number有值情况返回true, 比如arguments对象,array,buffer,string或者类jQuery集合的length 为 0,被认为是空。类似的,map(映射)和set 的size 为 0,被认为是空。 Common.isEmpty(0); => false Common.isEmpty(1); => false Common.isEmpty(null); // => true Common.isEmpty([1, 2, 3]); // => false Common.isEmpty({ 'a': 1 }); // => false * @param value 需要判断的值* @returns true说明是空值,则反之 */ static isEmpty(value: any): boolean /** * 判断是否公式 * @param text 需要判断字符串* @returns true 说明是公式/脚本 */ static isFormula(text: string): boolean /** * 检查 value 是否是 null 或者 undefined。 * @param value 需要检查的值* @returns true null,undefined,则反之 */ static isNil(value: any): boolean /** * 判断是否非空值 isEmpty反义函数 * @param value 需要判断的值* @returns true非空值,则反之 */ static isNotEmpty(value: any): boolean /** * 检查 value 是否非 null 或者 undefined。 * @param value 需要检查的值* @returns false null,undefined,则反之 */ static isNotNil(value: any): boolean /** * 动态增加Css * @param cssUrl css的路径 * @param cssname 可选参数 css的唯一名称 */ static linkCss(cssUrl: string,cssname: string): void /** * 动态创建scritp的,根据id来决定是否新增代码节点 * @param id 唯一id * @param code javascript代码 * @param type 类型 默认:'text/html' */ static loadScript(id: string,code: string,type: string): void /** * 浏览器的控制台输出日志 * @param msg 消息字符串 */ static log(msg: any): void /** * 匹配两者之间的内容 * @param context 被人 * @param s1 开头 * @param s2 结尾* @returns 返回 */ static matchsBetween(context: string,s1: string,s2: string): string[] /** * 警告弹出提示框 * @param text 警告信息 * @param options 可选参数 弹出提示框的配置项* @returns 返回弹出层的唯一index */ static msg(text: string,options: IFormMsgOptions): number /** * 弹出没有数据提示 * @param dom 提示信息的目标 * @param isremove 是否删除掉 */ static noData(dom: JQuery,isremove: boolean): void /** * 反注册消息处理 * @param cmpId 目标组件ID * @param msgFilter 消息字符串 用于过滤 * @param callback */ static off(cmpId: string,msgFilter: string,callback: Function): void /** * 注册消息处理 * @param cmpId 目标组件ID或者组件实例 * @param msgName 消息常量值 * @param callback 消息处理函数 * @param override 是否覆盖原来注册的处理函数 */ static on(cmpId: string | IComponent,msgName: string,callback: Function,override: boolean): void /** * 显示图片 * @param options 弹出页签的参数* @returns 返回弹出层的唯一index */ static photo(options: IFormPhotoOptions): number /** * 汉字转拼音 * @param str 汉字全拼* @returns 返回拼音字母 */ static pingYA(str: string): string /** * 汉字转拼音首字母缩写+大写 * @param str 汉字字符串* @returns 返回拼音字母 */ static pingYB(str: string): string /** * 汉字转拼音第一个全拼+后面缩写+大写 * @param str 汉字字符串* @returns 返回拼音字母 */ static pingYC(str: string): string /** * 异步 ajaxPost 提交数据 * @param url 请求的路径 * @param param 请求的参数对象 不能是字符串 * @param callBackFunc 完成请求回调 * @param showLoading 是否显示加载进度条 默认值false */ static post(url: string,param: any,callBackFunc: Function,showLoading: boolean): void /** * 异步 put 方式提交数据 * @param url 请求的路径 * @param param 请求的参数对象 不能是字符串 * @param callBackFunc 完成请求回调 * @param showLoading 是否显示加载进度条 默认值false */ static put(url: string,param: any,callBackFunc: Function,showLoading: boolean): void /** * 动态增加 js 如果之前已经增加了就直接调用onFinishCallBack回调 * @param jsUrl js的路径 * @param onFinishCallBack js的加载完毕回调函数 * @param attrs 属性对象 */ static require(jsUrl: string,onFinishCallBack: Function,attrs: object): void /** * js文件的加载 * @param jsUrls js路径数组 * @param onFinishCallBack 完成回调 * @param attrs 附带的属性对象 * @param isSequence 是否按jsUrls数组顺序加载 */ static requires(jsUrls: string[],onFinishCallBack: Function,attrs: object,isSequence: boolean): void /** * 发送消息 * @param cmpId 目标组件ID或者组件实例 * @param msgName 消息常量值 * @param params 参数 */ static send(cmpId: string | IComponent,msgName: string,params: any): void /** * 保存用户信息 * @param userInfo */ static setUserInfo(userInfo: any): void /** * 数据保存到浏览器的本地缓存,永久存在 * @param key 唯一key * @param value 值 */ static setlocalCache(key: any,value: any): void /** * 对象转化成 json的字符串. 该函数排除了循环引用的问题. * @param o 需要转化的对象 * @param excludes 排除的属性数组* @returns 返回的对象实例 */ static stringify(o: Object,excludes: string[]): string /** * 成功 alert提示框 * @param text 提示标题 * @param callBackFunc 点击确定回调函数 */ static successAlert(text: string,callBackFunc: Function): void /** * 弹出成功msg提示框 * @param text 提示信息* @returns 返回弹出层的唯一index */ static successMsg(text: string): number /** * 数组元素位置互换 * @param arr 数组 * @param index1 位置1 * @param index2 位置2* @returns 返回互换完毕后的数组 */ static swap(arr: any[],index1: number,index2: number): any[] /** * 弹出页签的 * @param options 弹出页签的参数* @returns 返回弹出层的唯一index */ static tabForm(options: IFormTabOptions): number /** * 显示一个 tips 提示层. * @param content tips 层的提示内容. * @param $follow tips 层跟随的定位元素 jquery 包装的DOM元素对象. * @param options tips 层的选项.* @returns 返回弹出层的唯一index */ static tips(content: string,$follow: JQuery,options: IFormTipsOptions): number /** * 生成一个当前页面唯一的id 注意:这只能使用在动态生产id的情况,优点就是长度短缺点就是不能保存 * @param prefix 前缀* @returns 当前页面唯一的id字符串 */ static uuid(prefix: string): string /** * 弹出警告弹出提示框 * @param text 警告信息* @returns 返回弹出层的唯一index */ static warnMsg(text: string): number /** * ajax请求 * @param url 请求的路径 * @param method 请求的方式 get,post ,put,delete * @param param 请求的参数对象 不能是字符串 * @param dataType http头的 dataType * @param callBackFunc 完成请求回调 * @param async 是否异步 * @param showLoading 是否显示加载进度条 默认值false */ static zlajax(url: string,method: MethodType,param: any,dataType: DataType,callBackFunc: Function,async: boolean,showLoading: boolean): void } /** *按键值 */ class KEYS { } interface DeviceInfo { /** *安卓系统 */ android: string /** *ie版本 */ ie: string | boolean /** *水果机 */ ios: string /** *是否chrome */ isChrome: boolean /** *是否Edge */ isEdge: boolean /** *是否ie */ isIE: boolean /** *是否iosChrome */ isIOSChrome: boolean /** *是否safari */ isSafari: boolean /** *操作系统 */ os: string /** *微信 */ wechart: string } /** *组件的最基础的接口 */ interface IComponent { /** *组件的唯一id */ id: string /** *组件的名称 */ name: string /** *组件的唯一标识 */ xtype: string } /** *公式格式 */ interface IFormulaRaw { /** *是否公式 */ isFormula: boolean /** *公式内容/一般常量 */ text: any } /** *观察者接口 事件的注册,反注册,触发,暂停 */ interface IObserver { /** * 注册消息绑定的 * @param args 消息唯一标志字符串 */ addEvents(args: any[]): void /** * 取消注册时间 * @param eventName 事件名称 * @param fn 处理函数 * @param scope this取值 */ off(eventName: string,fn: Function,scope: any): void /** * 注册事件 * @param eventName 事件名称 * @param fn 处理函数 * @param scope this取值 * @param o 绑定对象 */ on(eventName: string,fn: Function,scope: any,o: IObserver): void /** * 触发事件 * @param eventName 事件名称 * @param params 参数 */ raiseEvent(eventName: string,params: any[]): void /** * 启动事件 */ resumeEvents(): void /** * 暂停事件 */ suspendEvents(): void } /** *参数属性格式接口 */ interface IParam { /** *参数名称 */ name: string /** *参数标题说明 */ title: string /** * 参数值 */ value: any } /** *返回分页结果的格式接口 */ interface IRetPageVo { /** *信息 错误时候这个是错误信息, 否则成功时候作为成功信息传递 */ msg: string /** *数据封装的对象信息,一般是json字符串 */ obj: any /** *状态 */ state: RetState /** *总记录数 */ total: number } /** *返回结果的格式接口 */ interface IRetVo { /** *信息 错误时候这个是错误信息, 否则成功时候作为成功信息传递 */ msg: string /** *数据封装的对象信息,一般是json字符串 */ obj: any /** *状态 */ state: RetState } /** *文件上传的数据格式 */ interface IUploadFile { /** *错误 */ error: string /** *是否已经上传 */ hasUpload: boolean /** *新的文件名 */ newFileName: string /** *原始文件名 */ oldFileName: string } enum FileDownloaderMethodType { GET = "GET",POST = "POST" } class DownloadException extends Error { } class FileDownloader { /** * 开始下载 * @returns 返回本组件实例 */ start(): Promise } interface IFileDownloaderConfig { body: string | Document | Blob | ArrayBufferView | ArrayBuffer | FormData | URLSearchParams | ReadableStream /** *content-type */ contentType: string | any contentTypeDetermination: any | any | any | any customFileSignatures: any /** *文件名 */ filename: string forceDesktopMode: boolean /** *设置请求头 */ headers: any /** *请求的html方式 GET, POST */ method: FileDownloaderMethodType nameCallback: any nativeFallbackOnError: boolean /** *下载进度事件 */ onProcess: any /** *开始下载事件 */ onloadstart: any /** *超时 */ timeout: number /** *下载地址 */ url: string withCredentials: boolean } /** *泛型的hashMap对象 键值对 */ class HashMap { } /** *消息盒子 用于跨iframe的消息处理和发送 使用说明: 父窗口中: 初始化Messenger对象 推荐指定项目名称, 避免Mashup类应用中, 多个开发商之间的冲突 let messenger = new Messenger('Parent', 'zl-core'); iframe: iframe中 - 初始化Messenger对象 注意! Messenger之间必须保持项目名称一致, 否则无法匹配通信 let messenger = new Messenger('iframe1', 'zl-core'); */ class Messenger { } /** *解析参数helper */ class ParamHelper { } /** *汉字与拼音转换的干活 */ class PinYin { /** * 汉字转拼音 * @param str 汉字* @returns 返回拼音字符串 */ static A(str: string): string /** * 汉字转拼音首字母缩写 大写 * @param str 汉字* @returns 返回拼音字符串 */ static B(str: string): string /** * 汉字转拼音第一个全拼+后面缩写 大写 * @param str 汉字字符串* @returns 返回拼音字符串 */ static C(str: string): string } /** *脚本执行的上下文 */ class ScriptContext { /** * 获取单实例对象 * @returns 返回类的实例 */ static getInstance(): ScriptContext } class Utils { /** * 处理PARENTS树形字符串 * @param columns 列数组* @returns 返回最 { maxRow: maxRow, cols: columns } */ static buildParents(columns: T[]): any /** * 通过数据源名称或id获取数据源实例 * @param page 页面组件实例 * @param idOrNameOrObj 名称或者id或者实例* @returns 返回对应的数据源实例 */ static getDataSourceById(page: DesignerPageBase,idOrNameOrObj: string | DataSourceBase): DataSourceBase /** * 返回页面的所有的数据源数组 * @param page 页面实例* @returns 数据源数组 */ static getDataSources(page: DesignerPageBase): DataSourceBase[] /** * table的列 并计算多表头 * @param fields 数据库保存的字段类* @returns 返回table组件的col 所需的二维数组 */ static processTableColumn(fields: T[]): any /** * tableColumn转数据源的字段 * @param cols 列组件数组* @returns */ static tableColumnToField(cols: any): IField[] } /** *用户信息类 */ interface IUser { /** *当前部门 ID */ currentDeptId: string /** *当前部门名称 */ currentDeptName: string /** *当前组织机构的代号(预算码) */ currentOrgCode: string /** *当前组织机构 ID */ currentOrgId: string /** *当前组织机构简称 */ currentOrgJianName: string /** *当前组织机构名称 */ currentOrgName: string /** *当前角色编号 */ currentRoleCode: string /** *当前角色 ID */ currentRoleId: string /** *当前角色名称 */ currentRoleName: string /** *用户编号 */ currentUserCode: string /** *用户 ID */ id: string /** *用户姓名 */ name: string } /** *流程日志审核实体 */ interface Workflowlog { /** *审核一意见 */ AUDITMEMO: string /** *审核路径? */ AUDITPATH: string /** *操作 */ AUDITRLT: string /** *审核时间 */ AUDITTIME: string /** *审核用户 */ AUDITUSER: string } class PopInputTable extends PopInputTableBase { } class PopInputTree extends PopInputTreeBase { } class SelectMultiple extends SelectMultipleBase { } class SelectTree extends SelectTreeBase { } class Tree extends TreeBase { } /** *链接跳转 */ class ALabel extends DbComponentBase { /** * 获取组件值 子类重载这个方法实现自定义取值赋值过程 * @returns 返回组件值 */ getValue(): any /** * 设置组件值 子类重载这个方法实现自定义赋值过程 * @param text 标题 * @param href 路径 */ setValue(text: string,href: string): void } enum BadgeShape { dot = "dot",normal = "normal",rim = "rim" } /** *徽章组件 */ class Badge extends DbComponentBase { /** *形状 */ shape: BadgeShape /** * 设置组件值 * @param value 值 */ setValue(value: string): void } /** *面包屑 */ class Breadcrumb extends ContainerBase { } class Button extends YHButtonBase { } /** *切换箭头默认显示状态 */ enum CarouseArrow { /** *悬停显示 */ default = "hover", /** *始终不显示 */ none = "none", /** *始终显示 */ updown = "always" } /** *指示器位置 */ enum CarouseIndicator { /** *悬停显示 */ inside = "inside", /** *始终不显示 */ none = "none", /** *始终显示 */ outside = "outside" } /** *轮播切换动画方式 */ enum CarouselAnim { /** *左右切换 */ default = "default", /** *渐隐渐显切换 */ fade = "fade", /** *上下切换 */ updown = "updown" } /** *轮播组件 */ class Carousel extends ContainerBase { /** *主题 */ theme: string /** * 重置轮播 * @param options 配置项 */ reload(options: ICarouselConfig): void } /** * 组件参数操作的属性编辑器 */ class CarouselItemsAttrEditor extends AttributeEditorBase { } /** *轮播组件配置 */ interface ICarouselConfig { /** *轮播切换动画方式 */ anim: CarouselAnim /** *指示器位置( 默认 CarouseArrow.default ='hover') */ arrow: CarouseArrow /** *是否自动切换 */ autoplay: boolean elemItem: any /** *是否全屏轮播 */ full: boolean haveSlide: boolean /** *评设定轮播容器宽度,支持像素和百分比 */ height: string /** *初始开始的条目索引 */ index: number /** *指示器位置:inside/outside/none */ indicator: CarouseIndicator /** *自动切换的时间间隔,单位:ms(毫秒),不能低于800 */ interval: number /** *主题 */ theme: string timer: number /** *处罚方式 默认(click) */ trigger: string /** *评设定轮播容器宽度,支持像素和百分比 */ width: string } /** *轮播的item */ interface ICarouselItem { /** *jquery 元素 */ $elemt: JQuery /** *唯一id */ id: string /** *地址 */ url: string } /** *复选框风格 */ enum checkboxStyle { /** *默认 */ default = "", /** *原始 */ primary = "primary" } interface ICheckItem { /** *是否打钩 */ checked: boolean /** *标题 */ title: string /** *值 */ val: string } /** *折叠面板 */ enum NavTheme { /** *蓝色 */ blue = "yh-bg-blue", /** *墨绿 */ cyan = "yh-bg-cyan", /** *绿色 */ green = "yh-bg-green" } /** *Combox 下拉框组件 */ class Combox extends DropDownBase { /** * 获取弹出的编辑器 * @returns 弹出的编辑器 */ getPopEdior(): DropDownInputEditorBase /** * 得到组件选择的值对应的名称 * @returns 返回选择中值对应的显示的名称,没有值返回null; */ getValueTitle(): any /** * select 值发生点击时候触发事件 * @param callback 回调 */ onSelectChanged(callback: onSelectChangedHandle): void } /** *自定义的html组件 可以是任何html组件 */ class Custom extends ContainerBase { /** * 注册点击确定的回调 * @param callback 回调 */ onLoadScript(callback: onCustomHandle): void } /** *点击确定时候的回调函数 *@param cmp 组件实例 *@param value 车牌值 */ declare type onCustomHandle = (cmp: Custom) => void class DatePicker extends YHDatePickerBase { } /** *分隔符组件 */ class Fieldset extends ContainerBase { } /** *表单的主题 */ enum formTheme { /** *默认 */ default = "", /** *方框风格 */ pane = "layui-form-pane" } /** *form容器组件 */ class FormContainer extends ContainerBase { /** * 得到form的内的所有组件的值 * @returns 组件的所有组件的值对象 */ getFieldValues(): any /** * 组件提交函数 * @returns true 校验通过了.则反之 */ submit(): Boolean } /** *图片组件 */ class ImgLabel extends FieldDbComponentBase { /** * 得到组件值 * @returns 得到组件值 */ getValue(): string } /** *label input 输入框组件 This comment _supports_ [Markdown](https://marked.js.org/) */ class InputEdit extends InputBase { inputId: string } /** *label 单选框组件 */ class InputRadio extends InputBase { /** * 增加选项 * @param item 新选项 */ addRadioItem(item: IRadioItem): void /** * 得到组件值 * @returns 得到组件值 */ getValue(): string /** * 值发生变化的事件 * @param callback 事件回调函数 */ onValueChanged(callback: onRadioChangeHandle): void /** * 执行界面编辑器设置的监听radio单选事件 */ raiseOnRadioScript(): void /** * 移除选项 * @param v 值或名称 */ removeRadioItem(v: string): void /** * 设置组件值 * @param value 组件值 */ setValue(value: string): void } interface IRadioItem { /** *是否打钩 */ checked: boolean /** *标题 */ title: string /** *值 */ val: string } /** *单选组件选中回调 */ declare type onRadioHandle = (cxt: ScriptContext,cmp: InputRadio) => void /** *label 开关组件 */ class InputSwitch extends InputBase { /** * 得到组件值 * @returns 得到组件值 */ getValue(): string /** * 设置组件值 * @param value 组件值 */ setValue(value: any): void } /** *基础组件 label标签 */ class Label extends FieldDbComponentBase { /** *点击事件js脚本字符串 */ onClickScript: string /** * 点击事件 * @param handle 事件回调函数 */ onClick(handle: onLabelClick): void } declare type onLabelClick = (cxt: ScriptContext,sender: ComponentBase) => void /** *表模板组件的弹出页面的工具栏 */ class Panel extends ContainerBase { } /** *进度条主题 */ enum ProgressTheme { /** *粗进度条 */ big = "hy-progress-big", /** *正常 */ normal = "default" } /** *二维码组件 */ class QrCode extends FieldDbComponentBase { } enum SliderType { default = "default",vertical = "vertical" } /** *评分组件 */ class Rate extends InputBase { /** *自定义显示的Title的字符串 可以修改该值用于显示不同标题 */ getTitleText: any /** *评分组件中具体星星的个数。个数当然是整数啦,残缺的星星很可怜的,所以设置了小数点的组件我们会默认向下取整默认为 0 */ length: number /** *星星的颜色 */ startColor: String /** * 设置组件值 * @param value 组件值 */ setValue(value: number): void } enum SliderType { /** *水平滑块 */ default = "default", /** *垂直滑块 */ vertical = "vertical" } /** *滑块组件 */ class Slider extends DbComponentBase { /** *移动的颜色 */ barColor: String /** *高度 默认(200) */ height: number /** *是否显示输入框 (若 range 参数为 true 则无效) */ input: boolean /** *滑动条最大值 */ max: number /** *滑动条最小值,正整数,默认为 0 */ min: number /** *是否开启滑块的范围拖拽, */ range: boolean /** *是否显示间断点 */ showstep: boolean /** *步长 */ step: number /** *是否显示文字提示 */ tips: boolean /** *s 滑块初始值,默认为数字 */ value: number | number[] } /** *按钮的主题 */ enum tabTheme { /** *简约风格 */ brief = "yh-tab-brief", /** *卡片风格 */ card = "yh-tab-card", /** *默认 */ default = "" } /** *Tab组件tabs集合属性编辑器 */ class TabItemsAttrEditor extends ButtonAttrEditor { } /** *页签内容容器 */ class TabPanel extends ContainerBase { /** * 得到页签的索引号 * @returns 页签索引号 不存在parentCmp时候返回-1 */ getTabIndex(): number /** * 注册标题点击事件 * @param handle 事件回调 */ onTitleClick(handle: TablePanelTitleClickHandle): void /** * 注册页签被关闭时候触发 * @param handle 事件回调 */ onTitleCloseClick(handle: TablePanelTitleClickHandle): void /** * 移除页签 */ remove(): void /** * 设置页签为激活状态 */ setActive(): void } /** *Tabs 选项卡 */ class Tabs extends ContainerBase { /** * 激活第几个页签从零开始(0 代表第一个页签,1 代表第二个... ) * @param tabPanel 页签的组件 */ activeTab(tabPanel: TabPanel): void /** * 激活第几个页签从零开始(0 代表第一个页签,1 代表第二个... ) * @param tabIndex 页签的组件的位置索引 */ activeTabByIndex(tabIndex: number): void /** * 增加新的tab * @param tab */ addTab(tab: TabPanel): void /** * 返回激活的页签 * @returns 页签的实例 */ getActiveTabPanel(): TabPanel /** * 得到所有的页签不管 可见/隐藏 * @returns 返回可见/隐藏页签数组 */ getTabs(): TabPanel[] /** * 得到可见的页签 * @returns 返回可见页签的数组 */ getVisableTabs(): TabPanel[] /** * 删除tab * @param tab */ removeTab(tab: TabPanel): void } /** *Tab组件tabs集合属性编辑器配置接口 */ interface TabItemsAttrEditorConfig { } /** *文本域组件 */ class TextareaEdit extends InputBase { } /** *时间线 */ class Timeline extends DbComponentBase { contentField: string iconField: string /** *自定渲染item的函数脚本 */ onRenderItemScript: any titleField: string } /** *循环定时器 */ class Timer extends InvisibleBase { /** * 间隔时间刷新事件 * @param callback onChooseHandel事件处理函数 */ onInterval(callback: onIntervalHandle): void /** * 开始 */ start(): void /** * 停止 */ stop(): void } /** *文件上传类型 */ enum UploadAccept { audio = "audio",file = "file",images = "images",video = "video" } class uploadpicture extends DbComponentBase { } /** *列间距 */ enum space { /** *默认间距 */ default = "", /** *1px */ space1 = "grid-col-space1", /** *10px */ space10 = "grid-col-space10", /** *12px */ space12 = "grid-col-space12", /** *15px */ space15 = "grid-col-space15", /** *18px */ space18 = "grid-col-space18", /** *2px */ space2 = "grid-col-space2", /** *10px */ space20 = "grid-col-space20", /** *22px */ space22 = "grid-col-space22", /** *28px */ space28 = "grid-col-space28", /** *30px */ space30 = "grid-col-space30", /** *5px */ space5 = "grid-col-space5", /** *8px */ space8 = "grid-col-space8" } /** *grid 布局系统 */ class Grid extends ContainerBase { /** * 获取列的数组 * @returns 返回列的数组 */ getColumns(): ComponentBase[] } /** *列的组件 */ class GridColumn extends ContainerBase { } class Layout extends LayoutItemBase { } /** *脚 */ class LayoutFooter extends LayoutItemBase { } /** *头 */ class LayoutHeader extends LayoutItemBase { } /** *布局基类 */ class LayoutItemBase extends ContainerBase { } /** *主要内容 */ class LayoutMain extends LayoutItemBase { } /** *左右停靠 */ class LayoutSider extends LayoutItemBase { } class SqlCommand extends InvisibleBase { /** *参数对象 例如{param1:value1,param2:value2} */ param: object /** * 执行SqlCommand * @param callback 执行完成的回调函数 * @param paramObj 可选参数 参数对象 */ exce(callback: SqlCommandHandle,paramObj: object): void } /** *undefined *@param err err非空有错误,否则执行成功 *@param effectRow 执行语句影响的行 */ declare type SqlCommandHandle = (err: string,effectRow: number) => void /** *SQL数据源基类 数据查询,更新,新增,删除 */ class SqlDataSetBase extends DataSourceBase { /** *异步获取,更新数据 true 异步请求,false同步请求 默认值:ture */ async: boolean /** * 设置数据是否异步请求 * @param val true 异步请求,false同步请求 */ setAsync(val: boolean): void } /** * 数据源的参数格式 */ interface ISqlParam { field: string type: string val: string } /** *sql查询类型的数据源编辑器 */ class SqlDataSetEditor extends DataSetEditorBase { } /** *table渲染完成函数类型 */ class Table extends DbComponentBase { /** * 设置视图是默认视图 * @param view */ activeView(view: TableViewBase): void /** * 添加view * @param view view实例 */ addView(view: TableViewBase): void /** * 删除打勾的行modify by gk */ deleteCheckRows(): void /** * 获取当前获取的所选数组 * @returns 返回当前获取的所选数组 */ getChecks(): Row[] /** * 获取数据数量,本页 * @returns 返回当前数据源的本页的记录数 */ getCount(): any /** * 得到当前的view * @returns 返回非空 是当前激活的view实例 否则返回null */ getCurrentView(): TableViewBase /** * 获取数据 * @returns 返回当前数据源的数组 */ getRows(): Row[] /** * 获取分页组件 * @returns 分页组件的实例 */ getTablePage(): TablePage /** * 获取工具栏的组件实例 * @returns 工具栏的组件实例 */ getToolBar(): TableToolBar /** * 获取所有的视图 * @returns 当前的视图数组 */ getViews(): TableViewBase[] /** * 从后台加载数据 * @param paramObj 参数对象 * @param isNew 可选参数 默认值:false 重新一次查询清掉所有的以前查的参数 */ loadData(paramObj: IDsLoadOptions,isNew: boolean): void /** * 注册复选框选择事件 * @param handle */ onCheck(handle: OnCheckHandle): void /** * 注册列点击事件 * @param handle */ onColumnClick(handle: OnColumnClickHandle): void /** * 注册列双击事件 * @param handle */ onColumnDoubleClick(handle: OnColumnDoubleClickHandle): void /** * 注册行按钮点击事件 * @param handle */ onToolButtonClick(handle: OnToolButtonClickHandle): void /** * 刷新数据 只是刷新本地数据源,如果需要刷新后台的数据使用loadData */ refresh(): void /** * 刷新指定的行(局部刷新) 全局刷新使用: loadData * @param row 行的数据 */ refreshRow(row: Row): void /** * 移除view * @param viewId view的id */ removeView(viewId: string): void /** * 切换视图 * @param view */ setCurrentView(view: TableViewBase): void /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: ITableConfig): void } /** *view构造者 */ class ViewBuldler { } interface ITableConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *列二维数组 */ cols: any /** *配置头部工具栏右侧的图标按钮 */ defaultToolbar: TableToolBarButton[] /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** * 开启背景行的奇偶行的颜色 若不开启奇偶背景,不设置该参数即可 */ event: boolean /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *索引名称 */ indexName: string /** *是否允许拖拽 */ isColumnDrag: any /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *是否显示工具栏 */ isShowToolbar: boolean /** *子组件数组 */ items: ComponentBase[] /** *每页显示的条数(默认:10) */ limit: number /** *每页条数的选择项 默认 [10,20,30,40,50,60,70,80,90] */ limits: number[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string /** *排序的列数组 */ sortcols: any[] /** *是否开启统计行 */ totalRow: boolean /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *分页组件的布局类型 */ enum TablePageLayout { /** *总条目输区域 */ count = "count", /** *每页记录数 */ limit = "limit", /** *下一页按钮 */ next = "next", /** *分页按钮 */ page = "page", /** *上一页按钮 */ prev = "prev", /** *页面刷新按钮 */ refresh = "refresh", /** *快捷跳页输入框 */ skip = "skip" } /** *table的分页组件 */ class TablePage extends DbComponentBase { /** * 注册currPage,limit , 发生修改事件 * @param callback */ onChanged(callback: onChangeHandle): void /** * 注册修改每页记录数触发的事件 * @param callback 事件回调 */ onLimitChange(callback: onLimitChangeHandle): void /** * 注册点击确定按钮触发的事件 * @param callback 事件回调 */ onOkClick(callback: OnOkClickHandle): void /** * 注册修改页面触发的事件 * @param callback 事件回调 */ onPageChange(callback: onPageChangekHandle): void /** * 静态渲染组件 */ renderStatic(): void /** * 修改当前页 * @param value */ setCurrPage(value: number): void /** * 修改每页的记录数量 * @param value */ setLimit(value: number): void } interface ITablePageConfig { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *数据总数。一般通过服务端得到 */ count: number /** *当前页 */ currPage: number /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType elem: JQuery /** *自定义“首页”的内容,支持传入普通文本和HTML 默认值:首页 */ firstTitle: string /** *组件字体 */ font: Font /** *返回组件关联的数据源 */ getDataSource: any /** *连续出现的页码个数 默认值 5 */ groups: number /** *开启location.hash,并自定义 hash 值。如果开启,在触发分页时,会自动对url追加:#!hash值={curr} 利用这个,可以在页面载入时就定位到指定页 */ hash: boolean /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *自定义“尾页”的内容,支持传入普通文本和HTML 默认值:尾页 */ lastTitle: string /** *自定义排版。可选值有:count(总条目输区域)、prev(上一页区域)、page(分页区域)、next(下一页区域)、limit(条目选项区域)、refresh(页面刷新区域。注意:layui 2.3.0 新增) 、skip(快捷跳页区域) ['prev', 'page', 'next'] */ layout: TablePageLayout[] /** *每页记录数 默认值 10 */ limit: number /** *下拉分页的数组 [10, 20, 30, 40, 50] */ limits: number[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *自定义“下一页”的内容 ,支持传入普通文本和HTML 默认值:下一页 */ nextTitle: string /** *父组件 */ parentCmp: ComponentBase /** *自定义“上一页”的内容,支持传入普通文本和HTML 默认值:上一页 */ prevTitle: string /** *权限资源的标题 */ rightTitle: string table: Table /** *自定义主题。支持传入:颜色值,或任意普通字符。如: */ theme: string /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** * 高级查询属性编辑器 */ class AdvQueryAtrrEditor extends ButtonAttrEditor { } class TableSeacher extends ContainerBase { /** *高级查询规则 */ advQuerys: IAdvQueryItem[] /** *快速查询的字段 */ quickQuery: string[] /** * 得到高级查询提交的值 * @returns */ getAdvSearchParams(): IAdvQueryItem[] /** * 得到快速查询的参数数组 * @returns 快速查询的参数数组 */ getQuickSearchParams(): IAdvQueryItem[] /** * 得到Table的组件实例 * @returns Table的组件实例 */ getTable(): Table /** * 得到view组件实例 * @returns view组件实例 */ getView(): TableViewBase /** * 注册点击高级查询的确定按钮事件 * @param handle */ onAdvSearch(handle: onAdvSearchHandle): void /** * 注册点击查询按钮事件 * @param handle */ onSearch(handle: onSearchHandle): void } enum TableToolBarButton { card = "TableCardView",export = "export",filter = "filter",image = "TableImageListView",list = "TableListView",none = "",search = "search" } /** *table的工具栏 */ class TableToolBar extends ContainerBase { /** * 得到查询的字符串 * @returns 返回快速查询的值,否则返回 null */ getLikeValue(): string /** * 注册按钮点击事件 * @param handle 事件回调 */ onButtonClick(handle: OnTableToolBarButtonClick): void } interface ITableComponent { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string table: Table /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } /** *tablelistView集合属性编辑器 */ class TableViewCollectionAttrEditor extends AttributeEditorBase { } /** *tablelistView集合属性编辑器配置接口 */ interface TableViewCollectionAttrEditorConfig { /** *组件的属性 */ attr: string /** *关联的组件实例 */ component: IComponent /** *获取返回的值 */ getValue: any /** *属性设置的帮助地址 */ helpUrl: string /** *唯一id */ id: string /** *属性label标题 */ labelCaption: string /** *修改值的完成回调 */ onChanged: any /** *属性值改变事件回调 */ onChanging: any /** *事件 */ onRenderCallBackObj: object /** *未输入值时候的提示信息 */ placeholder: string /** *是否可读 */ readOnly: boolean /** *修改组件值时候的回调 给一个时机出来赋值给组件的属性时候的机会自定义处理值的格式 */ setValueCallBack: any /** * 鼠标移到属性编辑器显示的帮助内容 */ title: string /** *类型 */ type: string } class Utils { /** * 处理PARENTS树形字符串 * @param columns ITableColumn 数组* @returns 返回parents字符串 */ static buildFieldParents(columns: ITableColumn[]): object /** * 处理PARENTS树形字符串 * @param columns 列数组* @returns 返回最大的lev */ static buildParents(columns: T[]): any /** * table的列 并计算多表头 * @param fields 数据库保存的字段类* @returns 返回table组件的col 所需的数组 */ static processTableColumnEx(fields: T[]): T[] } enum TabelScrollBarType { x = "x",y = "y" } /** *自定义的滚动栏 */ class TabelScrollBar { } /** *卡片视图 */ class TableCardView extends TableViewBase { /** * 注册卡片单击事件 * @param handle */ onCardClick(handle: OnRowClickHandle): void /** * 注册行双击事件 * @param handle */ onCardDoubleClick(handle: OnRowDoubleClickHandle): void /** * 刷新行 * @param row 需要刷新的行 */ refreshRow(row: Row): void } /** *TableCardView 属性编辑器 */ class TableCardViewAttrEditor extends ButtonAttrEditor { } /** *图片列表视图 */ class TableImageListView extends TableViewBase { } /** *Table组件的 settings属性编辑器 */ class TableImageListViewAttrEditor extends ButtonAttrEditor { } /** *表格主题 */ enum TableListTheme { /** *行边框风格 */ line = "line", /** *无边框风格 */ nob = "nob", /** * 列边框风格 */ row = "row" } /** *表格视图 */ class TableListView extends TableViewBase { /** * 注册单元格改变事件 * @param handle 事件回调 */ onCellChanged(handle: OnCellChangedHandle): void /** * 注册单元格单击事件 * @param handle 事件回调 */ onCellClick(handle: OnCellClickHandle): void /** * 注册单元格双击事件 * @param handle 事件回调 */ onCellDoubleClick(handle: OnCellDoubleChickHandle): void /** * 注册行单击事件 * @param handle 事件回调 */ onRowClick(handle: OnRowClickHandle): void /** * 注册行双击事件 * @param handle 事件回调 */ onRowDoubleClick(handle: OnRowDoubleClickHandle): void } /** *Table组件的 settings属性编辑器 */ class TableListViewAttrEditor extends ButtonAttrEditor { } /** *视图基类 */ class TableViewBase extends ContainerBase { /** * 关闭弹出的某些提示 */ closeTips(): void /** * 得到选择的行 * @returns 返回选择的行对象 { rows: rows //选中的数据 , isAll: true //true全选 }; */ getChecks(): any /** * 获取列实例 * @param fieldNameOrId 字段名称获取列的id* @returns 返回列的实例 */ getColumn(fieldNameOrId: string): TableColumn /** * 通过列的id得到列实例 * @param columnId 列的id* @returns 返回列的实例 */ getColumnById(columnId: string): TableColumn /** * 得到列的组数 * @returns 列的组数 */ getColumns(): TableColumn[] /** * 获取数据数量,本页 * @returns 返回数据源的行数 */ getCount(): number /** * 通过主键id获取行 * @param rowId 行的id* @returns 返回行 */ getRowById(rowId: string): Row /** * 获取行数组 * @returns 返回行 */ getRows(): Row[] /** * 通过主键/字段名获取值 * @param rowId 行的id * @param fileName 字段名* @returns 返回字段值 */ getValueById(rowId: string,fileName: string): Row /** * 注册复选框选择事件 * @param handle 事件回调 */ onCheck(handle: OnCheckHandle): void /** * 注册列表头单击事件 * @param handle 事件回调 */ onColumnClick(handle: OnColumnClickHandle): void /** * 注册列表头双击事件 * @param handle 事件回调 */ onColumnDoubleClick(handle: OnColumnDoubleClickHandle): void /** * 注册当列的宽度发生变化事件 * @param handle 事件回调 */ onColumnResize(handle: onColumnResizeHandle): void /** * 注册操作列按钮点击事件 * @param handle 事件回调 */ onToolButtonClick(handle: OnToolButtonClickHandle): void /** * 增量刷新行 子类覆盖自定义刷新逻辑 * @param row */ refreshRow(row: Row): void /** * 设置类数组 * @param columns 列数组 */ setColumns(columns: TableColumn[]): void /** * 同步选中值状态 * @param rowIndex 行实例位置序号 * @param checked 是否打钩 */ setRowCheck(rowIndex: number,checked: boolean): void /** * 设置选中/未选中的行 * @param row 行实例 * @param checked 是否打钩 */ setRowCheckByRow(row: Row,checked: boolean): void } interface ITableComponent { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string table: Table /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } interface ITableViewBase { /** *对应的jquery对象 */ $elemt: JQuery /** *焦点状态 */ active: boolean /** *背景色 */ background: string /** *组件的样式class */ class: string /** *组件停靠方式 当设置了dock full 后 height,width 将会失效 */ dock: DockType /** *组件字体 */ font: Font /** *组件的高度 */ height: string | number /** *组件显示隐藏 */ hide: boolean /** *hit标题 鼠标停留时候提示信息 */ hitTitle: string /** *组件的唯一id */ id: string /** *是否权限资源 true可以在用户权限内看到改资源的控制,false 则看不到资源 */ isRightRes: boolean /** *子组件数组 */ items: ComponentBase[] limit: any limits: number[] /** *组件间隔 */ margin: string /** *组件的名称 */ name: string /** *父组件 */ parentCmp: ComponentBase /** *权限资源的标题 */ rightTitle: string table: Table tablePage: TablePage /** *组件的宽度 */ width: string | number /** *组件的唯一标识 */ xtype: string } declare type OnCellChangedHandle = (sender: TableViewBase,row: Row,column: TableColumn,value: any) => void declare type OnCellClickHandle = (sender: TableViewBase,row: Row,column: TableColumn,value: any) => void declare type OnCellDoubleChickHandle = (sender: TableViewBase,row: Row,column: TableColumn,value: any) => void declare type OnCheckHandle = (sender: TableViewBase,row: Row,check: boolean,isAll: boolean) => void declare type OnColumnClickHandle = (sender: TableViewBase,col: TableColumn) => void declare type OnColumnDoubleClickHandle = (sender: TableViewBase,col: TableColumn) => void declare type OnRowClickHandle = (sender: TableViewBase,row: Row) => void declare type OnRowDoubleClickHandle = (sender: TableViewBase,row: Row) => void declare type OnToolButtonClickHandle = (sender: TableViewBase,row: Row,button: ButtonBase) => void declare type onColumnResizeHandle = (sender: TableViewBase,col: TableColumn) => void class TableCardViewCheckColumn extends TableCardViewColumnBase { } /** *卡片视图的列基类 */ class TableCardViewColumnBase extends TableColumn { } /** *设计模式下禁止的行为枚举 主要是渲染table的某些单元格不允许修改 */ enum TableColumnProhibitType { algin = "algin",allowNull = "allowNull",edit = "edit",fix = "fix",format = "format",hide = "hide",mergeColumn = "mergeColumn",null = "null",resize = "resize",search = "search",sort = "sort",subCols = "subCols",total = "total",type = "type",unique = "unique" } /** *table组件列的基类 */ class TableColumn extends ComponentBase { /** *对齐 默认 left */ align: TableColumnAlginType /** *允许为空 true 允许 则反之 */ allowNull: boolean /** *是否允许修改宽度 */ canResize: boolean /** *列合并跨度 */ colspan: number /** *字段的数据类型 */ dataType: FieldType /** *字段编号 */ field: string /** * 是否固定 注意:如果是固定在左,该列必须放在表头最前面;如果是固定在右,该列必须放在表头最后面。 */ fixed: TableColumnFixType /** *字体 */ font: string /** *格式化字符 */ format: string /** *是否显示下拉提示 */ griddown: boolean /** *是否隐藏 如果需设置值使用 setHide */ hide: boolean /** *长度 */ length: number /** *是否合并列 如果需设置值使用 */ mergeColumn: boolean /** *最小宽度 默认值40像素 */ minWidth: number /** *父列 */ parents: string /** *只读 */ readonly: boolean /** *行合并跨度 */ rowspan: number /** *查询类型 */ searchType: TableColumnSearchTtype /** *是否排序字段 */ sort: boolean /** *排序的方向 */ sortDirection: TableColumnSortDirection /** *样式 */ style: string /** *子列,都好隔开的列名字符串 */ subCols: string /** *自定义的模板javascript脚本 脚本内必须含有retrun 语句返回是html 字符串, 脚本预设的变量: row 是当前数据行的变量.可以通过row.get(filename)获取列的值 */ templet: string /** *标题 */ title: string /** *是否开启合计行 */ totalRow: boolean /** *自定义的合计脚本 */ totalRowScript: any type: TableColumnColType /** *唯一 */ unique: boolean /** *宽度 如果需设置宽度使用 setWidth */ width: string /** * 添加子列 函数还修改了parentId,parents * @param column */ addChildColumn(column: ITableColumn): void /** * 清除排序 */ clearSort(): void /** * 获取子列 注意返回的是只读,如果需要增加修改子列参考 addChildColumn removeChildColumn * @returns 返回子列数组 */ getChildColumns(): ITableColumn[] /** * 获取列的隐藏/显示 * @returns 返回是否隐藏/显示 true 隐藏,则反之 */ getHide(): boolean /** * 得到多表头的层数 * @returns 层数 */ getLev(): number /** * 获取视图实例 * @returns 返回视图实例 */ getView(): TableViewBase /** * 获取列的宽度 * @returns 返回列的宽度 */ getWidth(): string /** * 注册改变大小事件 * @param onResizeHandle 事件回调 */ onColumnResize(onResizeHandle: OnTableColumnResizeHandle): void /** * 注册编辑框发生值改变事件 * @param handle 生值改变事件回调 */ onEditorValueChanged(handle: OnEditorValueChanged): void /** * 注册编辑框发生值改变中事件 * @param handle 改变中事件回调 */ onEditorValueChanging(handle: OnEditorValueChanging): void /** * 注册排序事件 * @param onSortHandle 事件回调 */ onSort(onSortHandle: OnSortHandle): void /** * 触发编辑器修改事件 * @param column 列 * @param row 行 * @param value 修改的值 */ raiseOnEditorValueChanged(column: TableColumn,row: Row,value: any): void /** * 触发编辑器修改中事件 * @param column 列 * @param row 行 * @param newValue 新值 * @param oldValue 旧值* @returns true允许修改,false不允许修改 */ raiseOnEditorValueChanging(column: TableColumn,row: Row,newValue: any,oldValue: any): boolean /** * 移除子列 * @param column 需要删除的列 */ removeChildColumn(column: ITableColumn): void /** * 设置列隐藏/显示 * @param value */ setHide(value: boolean): void /** * 关联view * @param view 对应的view */ setView(view: TableViewBase): void /** * 设置列的宽度 * @param value */ setWidth(value: string | number): void } declare type OnEditorValueChanged = (column: TableColumn,row: Row,value: any) => void declare type OnEditorValueChanging = (column: TableColumn,row: Row,newvalue: any,oldvalue: any) => boolean class TableImageListViewCheckColumn extends TableImageListViewColumnBase { } /** *ImageList视图的列基类 */ class TableImageListViewColumnBase extends TableColumn { } /** * TableImageListView 的图片列 */ class TableImageListViewImageColumn extends TableColumn { } class TableImageListViewNoColumn extends TableImageListViewColumnBase { } /** *TableListView 的 checkbox类型的的列 */ class TableListViewCheckBoxColumn extends TableListViewColumnBase { } class TableListViewColumnBase extends TableColumn { } /** * 自定义列 可自定义展示的格式 */ class TableListViewCustomColumn extends TableListViewColumnBase { } /** * TableListView 的时间类型列 */ class TableListViewDateTimeColumn extends TableListViewColumnBase { } /** * TableListView 的浮点列 数据显示的优先级: 1.templete 2.format 3.scale */ class TableListViewFloatColumn extends TableListViewColumnBase { } /** *TableListView 的多表头列 */ class TableListViewHeaderColumn extends TableListViewColumnBase { } /** * TableListView 的整数列 */ class TableListViewIntegerColumn extends TableListViewColumnBase { } /** *TableListView 的行号列 */ class TableListViewNoColumn extends TableListViewColumnBase { } /** *TableListView的操作列 */ class TableListViewOptionColumn extends TableListViewColumnBase { } /** * 图片展示列 展示IUploadFile结构的图片或者文件 */ class TableListViewPictureColumn extends TableListViewColumnBase { } /** *radio类型的 TableListView 的列 */ class TableListViewRadioColumn extends TableListViewColumnBase { } /** *TableListView 的 checkbox类型的标记行选择的的列 */ class TableListViewRowCheckColumn extends TableListViewColumnBase { } /** *radio类型的 TableListView 的列 */ class TableListViewRowRadioColumn extends TableListViewColumnBase { } /** *通用的Switch TableListView的列 */ class TableListViewSwitchColumn extends TableListViewColumnBase { } /** *通用的 TableListView的列 */ class TableListViewTextColumn extends TableListViewColumnBase { } /** *数据导出组件 */ class DataExport extends InvisibleBase { /** * 导出数据 * @param params 参数数组 */ export(params: IParam[]): void } /** *数据导入组件 */ class DataImport extends InvisibleBase { /** * 下载数据导入的模板文件 */ downloadTemplte(): void /** * 导入数据 */ importData(): void } enum DataRightType { /** *所有 */ all = "all", /** *本部门 */ benbm = "benbm", /** *本部门以下的部门 */ benbmzs = "benbmzs", /** *本单位 */ bendw = "bendw", /** *所有 */ none = "", /** *某些部门 */ someDept = "someDept", /** *自己 */ zij = "zij" } /** *数据权限组件 一般是: 1.所有的 2.自己的 3.本部门的 4.本部门下级单位 5.本单位的 6.自定义(脚本) */ class DataRight extends InvisibleBase { } /** *权限项 */ interface IDataRightItem { /** *某些部门 */ deptIds: string[] /** *单位id */ orgid: string /** *角色id */ roleId: string /** * 权限的类型 */ type: DataRightType } class DataRightAttrEditor extends ButtonAttrEditor { } /** *点击按钮弹出服务端的脚本编辑框 */ interface IDataRightAttrEditor { /** *按钮标题 */ btnText: string /** *点击ok回调函数 */ okCallBack: any } /** *弹出的编辑页面组件 指定数据源 */ class EditorPage extends PageBase { /** * 是否允许关闭 * @returns true允许关闭,则反之 */ canClosePage(): boolean /** * 获取数据源的实例 * @returns 数据源的实例 */ getDataSource(): DataSourceBase /** * 获取当前页面的编辑状态 * @returns 页面的编辑状态 add 新增 /edit 修改/view 查看/none 无 */ getEditState(): ZlPageEditState /** * 确定并关闭页面 这个会吧当前修改行的修改返回到调用的页面 */ ok(): void /** * 保存 * @param callback 完成提交数据到后台后的回调 */ post(callback: DataSourcePostHandle): void /** * 多数据源合并保存 这样做的好处是主从表的数据源的提交是在一个数据库的事务内.可以用于保证数据的完整性 * @param dss 从表数据源的数组 * @param callback 完成提交数据到后台后的回调 */ unionPost(dss: DataSourceBase[],callback: DataSourcePostHandle): void } /** *页面服务 页面各种技能/绝技/武林秘籍 */ class KDPage extends InvisibleBase { /** * 根据表单的模型编号弹出表单窗口 * @param pageModelCode 表单设计的界面模型编号 * @param params 页面参数(包含了全局和自定义的参数) * @param pageCoinfg 可选参数 弹出的编辑界面的参数设置 默认:{} * @param onPageShowCallBack 可选参数 界面加载完成回调 function(refPage: IFormPageHolder) => void 参数refPage 是弹出的页面的page实例,可以通过这个实例来获取弹出的页面的page的各种参数值等操作* @returns 返回弹出的表单的窗口的handle */ openFormPageByCode(pageModelCode: string,params: Object,pageCoinfg: IPageFormOptions,onPageShowCallBack: OnPageShowCallBack): number /** * 根据表单的模型id弹出表单窗口 * @param pageModelId 表单设计的界面模型id * @param params 页面参数(包含了全局和自定义的参数) * @param pageCoinfg 可选参数 弹出的编辑界面的参数设置 默认:{} * @param onPageShowCallBack 可选参数 界面加载完成回调 function(refPage: IFormPageHolder) => void 参数refPage 是弹出的页面的page实例,可以通过这个实例来获取弹出的页面的page的各种参数值等操作* @returns 返回弹出的表单窗口的handle */ openFormPageById(pageModelId: string,params: Object,pageCoinfg: IPageFormOptions,onPageShowCallBack: OnPageShowCallBack): number /** * 在浏览器开启新页面 这个与菜单关联受权限的管理 * @param menuCode 菜单的编号(注意唯一性) * @param param 可选参数 参数对象 */ openNewPageByMenuCode(menuCode: string,param: object): void /** * 通过菜单的编号来打开主框架上的页签 * @param menuCode 菜单的唯一编号(菜单管理内必须保证编号的唯一性) * @param param 可选参数 可选附带的参数。注意 这个参数由于是拼接到URL后面因此存在了长度限制。 */ openNewTabPageByMenuCode(menuCode: string,param: object): void /** * 通过的表单编号来打开主框架上的页签 * @param pageModelCode 菜单的唯一编号(菜单管理内必须保证编号的唯一性) * @param title 可选参数 标题 * @param resid 可选参数 资源id * @param param 可选参数 可选附带的参数。注意 这个参数由于是拼接到URL后面因此存在了长度限制。 */ openNewTabPageByPageCode(pageModelCode: string,title: string,resid: string,param: object): void /** * 通过的表单编号开启一个最顶层的页面 * @param pageModelCode 菜单的唯一编号(菜单管理内必须保证编号的唯一性) * @param pageConfig 可选参数 可选附带的参数.类型IFormOptions 可以设置弹出的窗口大各种属性 例如: pageConfig={XXXid:'xxxxx', YYYid:'xxxxxyyyyy',title:'窗口标题' ,area:['100px','200px']} * @param param 可选参数。附带参数,param ={ xxx:xxxyyyy,aaabbb:cccddd} */ openNewTopPageByPageCode(pageModelCode: string,pageConfig: IPageFormOptions,param: any): void /** * 在浏览器新的页签打开页面 注意这个无权限管理 * @param pageModelCode 页面模型编号(注意唯一性) * @param param 可选参数 这个参数由于是拼接到URL后面因此存在了 默认:{} */ openNewUrlPageByCode(pageModelCode: string,param: object): void /** * 在的主框架上开启页签页面 * @param url 连接地址 * @param title 页签标题 * @param resid 资源id * @param param 可选参数 拼接到URL后面 */ openTabPage(url: any,title: any,resid: string,param: Object): void } /** *undefined *@param page 弹出的页面对象 */ declare type OnPageShowCallBack = (page: IFormPageHolder) => void /** *页面基类 一般用于封装一些页面的框架或者后台的工作操作 */ class PageBase extends InvisibleBase { /** * 获取一个后台生成的编号 * @param format 生成的编号格式格式: ORD[yyyyMMdd][000] -> ORD20211019001* @returns 返回的编号字符串 */ getCode(format: string): string /** * 在pc的主框架上开启页签页面 * @param url 连接地址 * @param title 页签标题 * @param resid 资源id * @param param 可选参数 拼接到URL后面 */ openNewTabPage(url: any,title: any,resid: string,param: Object): void /** * 通过菜单的编号来代开页签 * @param menuCode 菜单的唯一编号(菜单管理内必须保证编号的唯一性) * @param param 可选附带的参数。注意 这个参数由于是拼接到URL后面因此存在了长度限制。 */ openNewTabPageByMenuCode(menuCode: string,param: object): void } /** *页面引用组件 用于在某个容器内渲染出功能 */ class PageQuote extends ContainerBase { } /** *页面引用组件配置参数接口 */ interface IPageQuoteConfig { /** *界面模型的id */ modelId: string /** *保存界面的传递参数 */ params: IParam[] } /** *报表的输出格式 */ enum ReportFormat { /** *输出csv格式 */ csv = "csv", /** *输出excel 97-2003格式 */ excel2003 = "xls", /** *输出excel 2003以后的版本格式 */ excel2007 = "xlsx", /** *输出html格式 */ html = "html", /** *输出pdf格式 */ pdf = "pdf" } /** *打印组件 */ class Print extends InvisibleBase { /** * 报表打印 * @param paramsObj 可选参数 参数数组 默认:{} * @param format 可选参数 报表的输出格式 默认:pdf , 可选择: pdf, xls,xls,xlsx,csv,html * @param isNewTab 可选参数 是否在新页签开启 默认:true */ print(paramsObj: Object,format: ReportFormat,isNewTab: boolean): void /** * 根据报表地址打印报表 * @param reportTempeteUrl 报表模板路径 * @param paramsObj 可选参数 报表输入参数 默认:{} * @param outformat 可选参数 输出格式 默认:pdf * @param isNewTab 可选参数 是否开启新页签 默认:true */ printReport(reportTempeteUrl: string,paramsObj: Object,outformat: ReportFormat,isNewTab: boolean): void } class PrintEditorAttrEditor extends AttributeEditorBase { } /** *资源权限组件 */ class Right extends InvisibleBase { /** *权限项数组 */ rights: IRigtItem[] /** * 获取组件的权限值 * @param cmp 组件* @returns 返回权限的值 */ getRight(cmp: ComponentBase): boolean /** * 获取组件的权限值 * @param name 权限名* @returns 返回权限的值 */ getRightByName(name: string): boolean } /** *权限项接口 */ interface IRigtItem { /** *关联的组件id */ cmpId: string /** *唯一id */ id: string /** *名称 */ name: string /** *自定义的权限前端脚本 */ script: string /** *权限值 */ value: boolean } /** * 组件参数操作的属性编辑器 */ class RightItemsAttrEditor extends AttributeEditorBase { } /** *用户组件 */ class User extends InvisibleBase { /** * 得到登录以后的用户信息类 * @returns 返回当前登录的用户信息 */ getUser(): IUser } /** *流程的查询类型 */ enum WorkFlowSearchType { /** *所有,参与流程都可以 */ all = "all", /** *待审核 */ daish = "daish", /** *待提交 */ daitj = "daitj", /** *忽略流程的查询语句 */ none = "none", /** *审核中 */ shenhz = "shenhz", /** *已审核 */ yish = "yish" } /** *流程审核常量 */ enum WorkflowConfirmResult { /** *部分同意 */ cfBufty = 7, /** *不同意 */ cfButy = 3, /** *待处理 */ cfDaicl = 8, /** *开始 */ cfKais = 6, /** *取回 */ cfQuhui = 4, /** *提交/送审 */ cfTij = 1, /** *同意 */ cfTongy = 2,cfTuih = 0, /** *完成 */ cfWanc = 5 } /** *工作流组件 */ class WorkFlow extends InvisibleBase { /** * 审核关联数据源当前行的流程 * @param finishCallBack 完成回调 */ confirm(finishCallBack: WorkflowCallBack): void /** * 审核指定行的流程 * @param row 行 * @param finishCallBack 审核完成的事件回调 */ confirmByRow(row: Row,finishCallBack: WorkflowCallBack): void /** * 得到关联数据源实例 * @returns 得到数据源实例 */ getDataSource(): DataSourceBase /** * 查看关联的数据源的当前行的流程日志 */ getLog(): void /** * 查看流程日志 * @param pid 流程实例id */ getLogByPid(pid: string): void /** * 查看流程 * @param row 记录行* @returns */ getLogByRow(row: Row): void /** * 代办事项 */ getToDoList(): void /** * 查看流程图 * @param processId 流程实例id */ getWorkFlowPic(processId: string): void /** * 启动关联的数据源的当前行的流程 * @param finishCallBack 完成回调函数 */ start(finishCallBack: WorkflowCallBack): void /** * 启动指定行的流程 * @param row 行 * @param finishCallBack 完成的回调函数 */ startByRow(row: Row,finishCallBack: WorkflowCallBack): void } /** *流程回调函数 *@param audFlag 审核结果的值 *@param audName 审核结果名称 *@param auditMemo 审核备注 *@param error 错误信息 非空就是无错误,则反之 */ declare type WorkflowCallBack = (audFlag: string,audName: string,auditMemo: string,error: string) => void declare type WorkflowConfirmCallBack = (audFlag: string,auditMemo: string,error: string) => void /** *工作流属性编辑器 */ class WorkFlowAttrEditor extends AttributeEditorBase { } /** *页面的状态 */ enum ZlPageEditState { /** *新增 */ add = "add", /** *编辑 */ edit = "edit", /** *无 */ none = "none", /** *查看 */ view = "view" } /** *页面操作服务类 */ class ZlPage extends PageBase { /** * 新增行 * @param params 参数数组或者参数对象 默认[] * @param pageCoinfg 可选 弹出的编辑界面的参数设置默认{} * @param finishCallback 完成时回调 err为非空说明有错误 * @param isTransferRow 可选参数 是否传递行到打开的page的页面参数里面 ```javascript btn.getPage().components.ZlPageDetail1.addRow( { ZHUBID: btn.getPage().getParamByName('MASTERID').value }, { fixed: true, maxmin: false, isFull: false, area:['300px','400px'], }, function () { btn.getPage().components.tabDetail1.loadData(); }); ``` */ addRow(params: Object | IParam[],pageCoinfg: IPageFormOptions,finishCallback: onOperateCallbackHandle,isTransferRow: boolean): void /** * 得到数据源的实例 * @returns 数据源实例 */ getDataSource(): DataSourceBase /** * 编辑行 * @param row 数据行对象实例 * @param params 可选参数 参数数组或者参数对象 默认:[] * @param pageCoinfg 可选参数 弹出的编辑界面的参数设置 默认:{} * @param finishCallback 完成时回调 err为非空说明有错误 * @param isTransferRow 可选参数 是否传递行到打开的page的页面参数里面 例子: ```javascript var rows = btn.getPage().components.tabDetail1.getChecks(); if (rows.length == 0) { Common.warnMsg('请选择行'); return; } btn.getPage().components.ZlPageDetail1.modifyRow(rows[0], { ZHUBID:'XXXYYY', RWID:'YYYYXXX' }, {}, function (err) { btn.getPage().components.tabDetail1.refreshRow(rows[0]); }); ``` */ modifyRow(row: Row,params: Object | IParam[],pageCoinfg: IPageFormOptions,finishCallback: onOperateCallbackHandle,isTransferRow: boolean): void /** * 删除选择的行 * @param rows 删除的行 * @param callback 可选参数 完成时回调 err为非空说明有错误 * @param autoCommit 可选参数 是否自动提交到后台 默认:true 例子: ``` javascript cmp.getPage().components.ZlPage1.removeRow([row], cmp.getPage().components.ds0, function () { cmp.getPage().components.Table1.loadData(); }) ``` */ removeRow(rows: Row[],callback: onOperateCallbackHandle,autoCommit: boolean): void /** * 查看行 * @param row 数据行对象实例 * @param params 可选参数 参数数组或者参数对象 默认:[] * @param pageCoinfg 可选参数 弹出的编辑界面的参数设置 默认:{} * @param finishCallback 完成时回调 err为非空说明有错误 * @param isTransferRow 可选参数 是否传递行到打开的page的页面参数里面 例子: var rows = btn.getPage().components.tabDetail1.getChecks(); if (rows.length == 0) { Common.warnMsg('请选择行'); return; } btn.getPage().components.ZlPageDetail1.viewRow(rows[0], { ZHUBID:'XXXYYY', RWID:'YYYYXXX' }, {}, function (err) { btn.getPage().components.tabDetail1.refreshRow(rows[0]); }); ``` */ viewRow(row: Row,params: Object | IParam[],pageCoinfg: IPageFormOptions,finishCallback: onOperateCallbackHandle,isTransferRow: boolean): void } declare type onOperateCallbackHandle = (err: string,changes: any) => void /** *车牌输入器 */ class LicensePlate extends ContainerBase { /** * 得到组件选择的车牌号 * @returns 车牌号字符串 */ getValue(): string /** * 注册点击确定的回调 * @param callback 回调 */ onOk(callback: onOkdHandle): void } /** *点击确定时候的回调函数 *@param cmp 组件实例 *@param value 车牌值 */ declare type onOkdHandle = (cmp: LicensePlate,value: string) => void /** *大屏绑定数据源图表基类 */ class BsComponentBase extends DbComponentBase { /** *边框的样式 */ broderStyle: BsBroderStyle /** *刷新的脚本 */ onRefreshTimeScript: string /** *内部间隔 */ padding: string /** * 间隔时间刷新事件 * @param callback onChooseHandel事件处理函数 */ onRefreshTime(callback: onRefreshTimeHandle): void } /** *大屏存在的枚举 */ interface IBigscreenComponent { /** *主题组件Id */ themeId: string } /** *自定义主题属性编辑器 */ class BsCustomThemeAttrEditor extends ButtonAttrEditor { } interface IBsCustomThemeAttrEditor { /** *帮助的路径 */ helpUrl: string } /** *大屏翻牌器 */ class BsFlipper extends BsComponentBase { } /** *图片组件 */ class BsImage extends BsComponentBase { /** * 修改连接值 * @param url 连接字符串 */ setStaticUrl(url: string): void } /** *大屏滚动公告 */ class BsMarquee extends BsComponentBase { } /** *大屏时间标题 */ class BsPanel extends BsComponentBase { } class BsTableScroll extends BsComponentBase { } /** *主题设置 */ enum bcTheme { /** *高级黑 */ black = "black", /** *科技蓝 */ blue = "blue", /** *自定义 */ custom = "custom", /** *默认 */ default = "blue" } /** *大屏颜色,样式主题组件 */ class BsTheme extends InvisibleBase { } /** *大屏时间标题 */ class BsTime extends BsComponentBase { } /** *大屏标题 */ class BsTitle extends BsComponentBase { } class BsBarChart extends BsEcCommonChartBase { } /** *图表基类 */ class BsChartBase extends BsComponentBase { } class BsCustomChart extends BsEchartBase { } /** *坐标轴类型 */ enum AxisType { /** *类目轴,适用于离散的类目数据。为该类型时类目数据可自动从 series.data 或 dataset.source 中取,或者可通过 xAxis.data 设置类目数据。 */ category = "category", /** *对数轴。适用于对数数据。 */ log = "log", /** *时间轴,适用于连续的时序数据,与数值轴相比时间轴带有时间的格式化,在刻度计算上也有所不同,例如会根据跨度的范围来决定使用月,星期,日还是小时范围的刻度。 */ time = "time", /** *数值轴,适用于连续数据。 */ value = "value" } /** *饼图,柱状,曲线 图表基类 */ class BsEcCommonChartBase extends BsEchartBase { } class BsEcLineChart extends BsEcCommonChartBase { } /** *大屏时间标题 */ class BsEcMapChina extends BsEchartBase { } enum triggerType { /** *坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。 */ axis = "axis", /** *数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用 */ item = "item", /** *什么都不触发。 */ none = "none" } /** *对齐方式 */ enum EchartAlignment { /** *居中 */ center = "center", /** *左对齐 */ left = "left", /** *右对齐 */ right = "right" } /** *工具栏朝向类型 */ enum EchartToolboxOrient { /** *横向展示 */ horizontal = "horizontal", /** *竖向展示 */ vertical = "vertical" } /** *Echart图表的基类 */ class BsEchartBase extends BsChartBase { /** * 得到默认配置好的配置项 * @returns 返回默认配置javasvript字符串 */ getDefalutOptions(): object /** * 获取Echart实例对象 * @returns 成功返回图标实例,否则返回null */ getEchart(): any } /** *自定义图表配置属性编辑器 */ class BsEchartCustomOptionsAttrEditor extends ButtonAttrEditor { } interface IBsEchartCustomOptionsAttrEditor { /** *帮助的路径 */ helpUrl: string language: CodeEditorLang /** *参数字符串 */ parameter: string } /** *图表基类 */ class ChartBase extends DbComponentBase { /** *刷新的脚本 */ onRefreshTimeScript: string /** * 间隔时间刷新事件 * @param callback onChooseHandel事件处理函数 */ onRefreshTime(callback: onRefreshTimeHandle): void } class EcBarChart extends EcCommonChartBase { } /** *坐标轴类型 */ enum AxisType { /** *类目轴,适用于离散的类目数据。为该类型时类目数据可自动从 series.data 或 dataset.source 中取,或者可通过 xAxis.data 设置类目数据。 */ category = "category", /** *对数轴。适用于对数数据。 */ log = "log", /** *时间轴,适用于连续的时序数据,与数值轴相比时间轴带有时间的格式化,在刻度计算上也有所不同,例如会根据跨度的范围来决定使用月,星期,日还是小时范围的刻度。 */ time = "time", /** *数值轴,适用于连续数据。 */ value = "value" } /** *饼图,柱状,曲线 图表基类 */ class EcCommonChartBase extends EchartBase { } class EcCustomChart extends EchartBase { } /** *曲线图 */ class EcLineChart extends EcCommonChartBase { } enum triggerType { /** *坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。 */ axis = "axis", /** *数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用 */ item = "item", /** *什么都不触发。 */ none = "none" } /** *图表组件-饼状图 */ class EcPieChart extends EcCommonChartBase { } /** *对齐方式 */ enum EchartAlignment { /** *居中 */ center = "center", /** *左对齐 */ left = "left", /** *右对齐 */ right = "right" } /** *工具栏朝向类型 */ enum EchartToolboxOrient { /** *横向展示 */ horizontal = "horizontal", /** *竖向展示 */ vertical = "vertical" } /** *Echart图表的基类 */ class EchartBase extends ChartBase { /** * 得到默认配置好的配置项 */ getDefalutOptions(): any /** * 获取Echart实例对象 */ getEchart(): any } /** *自定义图表配置属性编辑器 */ class EchartCustomOptionsAttrEditor extends ButtonAttrEditor { } interface IEchartCustomOptionsAttrEditor { /** *帮助的路径 */ helpUrl: string language: CodeEditorLang /** *参数字符串 */ parameter: string } /** *自定义主题属性编辑器 */ class EchartCustomThemeAttrEditor extends ButtonAttrEditor { } interface IEchartCustomThemeAttrEditor { /** *帮助的路径 */ helpUrl: string } /** *自定义图表配置属性编辑器 */ class EchartOptionsAttrEditor extends ButtonAttrEditor { } interface IEchartOptionsAttrEditor { /** *帮助的路径 */ helpUrl: string } /** *主题枚举 */ enum EcTheme { /** *粉笔 */ chalk = "chalk", /** *自定义 */ custom = "custom", /** *深色 */ dark = "dark",default = "macarons", /** *麦卡龙 */ macarons = "macarons", /** *紫色激情 */ purplePassion = "purplePassion", /** *复古 */ vintage = "vintage", /** *沃尔登 */ walden = "walden", /** *维斯特洛 */ westeros = "westeros", /** *仙境 */ wonderland = "wonderland" } /** *大屏主题组件 */ class EchartTheme extends InvisibleBase { } /** *高德地图组件 */ class GaodeMap extends PopInputBase { /** * 注册点击并选中任意日期时触发 * @param val 地址json */ onRenderDisplayValue(val: AddressValueJson): void } /** *分析组件 */ class GaodeMapDistribution extends FieldDbComponentBase { cityInfo: any currMarker:any[] districtInfo: any districtSearch: any geocoder: any getMapAddressInfo:any[] infoWindow: any map: any mapId: string mapInputId: string marker: any markers:any[] markersFour:any[] markersThree:any[] markersTwo:any[] provinceInfo: any /** * 获取组件经纬度的值 子类重载这个方法实现自定义取值赋值过程 */ getLngLat(): any /** * 加载数据 * @param paramObj 参数对象 * @param isNew 可选参数 默认值:false 重新一次查询清掉所有的以前查的参数 */ loadData(paramObj: any,isNew: boolean): void /** * 加载数据 * @param ret 返回的结果集 参数对象 */ packageData(ret: IRetVo): void } /** *设置组件的大小 */ enum SizeType { default = "default",large = "large",small = "small" } /** *箭头方向 */ enum arrowDirectionType { down = "down",left = "left",right = "right",up = "up" } class MobileComponentBase extends MobileComponentyBase { isNoNewVue: Boolean /** *初始化定义的vue返回data的值 */ retdata: object } /** *数据编辑组件接口 在提交时候能获取其值,并校验它 */ interface IMobileFieldComponent { /** *数据源关联的字段值 */ field: string /** *校验规则 */ verify: string /** *校验后的信息 */ verifyText: string /** * 开始校验 * @returns true 校验通过,否则反之 不通过后verifyText保存了校验的错误信息 */ doVerify(): Boolean /** * 获取组件的值. * @returns 返回的值 */ getValue(): any /** * 校验的处理 一般用于弹出或者显示保存时候返回的错误信息 */ verifyTips(): void } /** *带数据源属性的组件基类 */ class MobileDbComponentBase extends MobileComponentBase { /** * 获取数据源实例 * @returns 返回数据源的实例 */ getDataSource(): DataSourceBase /** * 设置数据源 * @param value 可以是数据源实例或者id */ setDataSource(value: string | DataSourceBase): void } interface IDbComponentBaseConfig { } /** *下拉编辑器基类 */ class DropDownInputEditorBase extends DropDownEditorBase { /** * 渲染组件的值刷新下拉组件的元素的状态 */ renderValues(): void } /** *下拉组件基类 */ class MobileDropDownBase extends MobileVantInputBase { /** * 得到弹出编辑器 * @returns 弹出编辑器实例 */ getPopEdior(): DropDownInputEditorBase /** * 得到组件的值数组 * @returns 返回数组 */ getValues(): string[] /** * 静态渲染组件 * @param setting 设置的属性 */ staticRender(setting: IDropDownBaseConifg): void } interface IDropDownBaseConifg { /** *组件宽度 */ componentWidth: string /** *是否显示label */ isShowLabel: boolean /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean staticDatas: any[] /** *校验规则 */ verify: string } /** *弹出的选择框接口 */ interface IDropDownEditor { /** * 隐藏弹出框 */ hide(): void /** * 显示弹出框 */ show(): void } /** *数据源编辑组件基类 具备选择数据源和绑定的数据源字段属性 filed, setValue ,getValue */ class MobileFieldDbComponentBase extends MobileDbComponentBase { /** * 得到组件的值 * @returns 返回的组件的值 */ getValue(): any /** * 注册值发生变动时候的事件 注意,数据源第一次给组件赋值初始化时候是无法触发该事件,否则会死循环 * @param callback 值修改事件回调函数 */ onValueChanged(callback: onValueChangeHandle): void /** * 设置组件的值 * @param value 值 */ setValue(value: any): void } /** *label input 输入框组件 */ class MobileInputBase extends InputBase { } /** *对齐 */ enum TextAlign { center = "center",left = "left",right = "right" } /** *箭头方向 */ enum arrowDirectionType { down = "down",left = "left",right = "",up = "up" } /** *form的校验规则模板 */ class FormVerify { /** *一般的校验规则 */ static _verifys: any /** * 增加校验规则 * @param name 规则名称 * @param funcVer 验证函数 */ static add(name: string,funcVer: FormVerifyCallBack): void } /** *输入组件基类 */ class MobileVantInputBase extends MobileFieldDbComponentBase { /** * 校验数据是否通过设置的校验规则 * @returns true通过,则反之 */ doVerify(): boolean /** * 输入框得到输入焦点 */ focuse(): void /** * 获取编辑输入框的jquery 对象 这个应该在所有继承的子类需要重载该函数,不然无法实现校验弹出提示. * @returns 输入框的jquery 对象 */ getInputElem(): JQuery /** * 获取label标题 * @returns 返回label标题 */ getLabelCaption(): string /** * 注册输入框内容变化时触发 * @param event 时间对象 */ onBlur(event: Event): void /** * 注册输入框内容变化时触发 * @param val 返回当前输入的值 */ onInput(val: string): void /** * 设置label标题 * @param caption label的标题 */ setLabelCaption(caption: string): void /** * 显示的提示校验信息 当 verifyText 非空时候显示"危险"的样式, 空则去除"危险"的样式 */ verifyTips(): void } interface IInputBaseConfig { /** *组件宽度 */ componentWidth: string /** *是否显示label */ isShowLabel: boolean /** *label标题 */ labelCaption: string /** *标题宽度 */ labelWidth: string /** *空白时候的提示字符串 */ placeholder: string /** *只读 */ readonly: boolean /** *是否必填 */ required: boolean /** *校验规则 */ verify: string } declare type FormVerifyCallBack = (value: any) => string /** *手机端的表单处理类 功能: 按表单的编号打开页面,并传递参数 */ class MobelPageService extends InvisibleBase { /** * 获取一个后台生成的编号 * @param format 生成的编号格式格式: ORD[yyyyMMdd][000] -> ORD20211009001 * @param orgid 可选参数 单位ID* @returns 返回的编号字符串 */ getCode(format: string,orgid: string): string /** * 通过菜单的编号打开页面 与 openPage的差别在于,这个与菜单关联受权限的管理 openPage无权限管理 页面会带上对应tokenId * @param menuCode 表单模型的编号 * @param param 附带参数对象 */ openPageByMenuCode(menuCode: string,param: object): void /** * 通过表单的编号打开页面 注意这个无权限管理 页面会带上对应tokenId * @param pageModelCode 表单模型的编号 * @param param 附带参数对象 */ openPageByPageModelCode(pageModelCode: string,param: object): void } /** * 头像/图片 上传选择组件 */ class MAvatar extends MobileInputBase { /** * 注册选择文件事件 * @param handle 事件处理函数 */ onSelectFile(handle: onSelectFileHandle): void } /** *label input 输入框组件 */ class MInputCode extends MobileInputBase { btnId: string inputId: string } /** *label input 输入框组件 */ class MInputEdit extends MobileInputBase { inputId: string } /** *label input 输入框组件 */ class MRadio extends MobileInputBase { inputId: string } /** *手机端开关主键 */ class MSwitch extends MobileInputBase { inputId: string /** * 获取值 * @returns 值字符串 */ getValue(): string /** * 设置值 * @param value 值 */ setValue(value: any): void } /** *展示列 */ enum AreaColumnsType { city = "2",county = "3",province = "1" } /** *展示文字 */ enum AreaTextType { all = "all",city = "city",county = "county",province = "province" } /** *顶部栏位置,可选值为bottom */ enum ToolbarPositionType { bottom = "bottom",top = "top" } /** *VantArea 地区组件 */ class VantArea extends MobileVantInputBase { /** *input的id */ inputId: string /** *picker的id */ pickerId: string /** *静态数据源 */ staticData: any[] } /** *获取值的对象 */ interface IGetValueObj { /** *选中地区的编号 */ code: string /** *选中地区的名字 */ name: string } /** *设置组件的类型 */ enum CalendarType { multiple = "multiple",range = "range",single = "single" } /** *弹出位置 */ enum PositionType { bottom = "bottom",left = "left",right = "right",top = "top" } /** *label input 输入框组件 */ class VantCalendar extends MobileVantInputBase { /** *input的id */ inputId: string /** *picker的id */ showCalendarId: string /** * 得到日期,格式化为字符串 * @param date 日期时间* @returns 返回字符串日期 */ getFormatDate(date: Date): string /** * 得到日期,格式化为字符串 * @param str 日期时间* @returns 返回字符串日期 */ getFormatStrTime(str: string): string /** * 注册点击并选中任意日期时触发 */ onCalendarClick(): void /** * 注册确定事件 * @param val 返回日期的时间 */ onConfirm(val: Date): void /** * 注册点击并选中任意日期时触发 * @param val 返回日期的时间 */ onSelect(val: Date): void /** * 当日历组件的 type 为 multiple 时,取消选中日期时触发 * @param val 返回日期的时间 */ onUnselect(val: Date): void } /** *设置组件的类型 */ enum DatetimePickerType { date = "date",datetime = "datetime",time = "time" } /** *弹出位置 */ enum PositionType { bottom = "bottom",left = "left",right = "right",top = "top" } /** *label input 输入框组件 */ class VantDatetimePicker extends MobileVantInputBase { /** *picker的id */ datetimePickerValue: string /** *input的id */ inputId: string /** * 关闭弹出层且动画结束后触发 */ closed(): void /** * 关闭弹出层时触发 */ onClose(): void /** * 打开弹出层时触发 */ onOpen(): void /** * 打开弹出层且动画结束后触发 */ onOpened(): void /** * 当日历组件的 type 为 multiple 时,取消选中日期时触发 * @param val 返回日期的时间 */ onUnselect(val: Date): void } /** *设置组件的类型 */ enum FieldType { digit = "digit",number = "number",password = "password",tel = "tel",text = "text" } /** *label input 输入框组件 */ class VantField extends MobileVantInputBase { inputId: string } /** *单选项排列方向 */ enum DirectionType { horizontal = "horizontal",vertical = "vertical" } /** *label input 输入框组件 */ class VantFieldRadio extends MobileVantInputBase { /** * 获取值 * @returns 返回值 */ getValue(): string } interface IRadioItem { /** *是否打钩 */ checked: boolean /** *标题 */ title: string /** *值 */ val: string } /** *顶部栏位置,可选值为bottom */ enum ToolbarPositionType { bottom = "bottom",top = "top" } /** *label input 输入框组件 */ class VantGaodeMap extends MobileVantInputBase { /** * 返回组件详细地址 * @returns 返回详细地址 */ getAddressDetails(): string /** * 获取组件经纬度的值 子类重载这个方法实现自定义取值赋值过程 * @returns 返回经纬度的值 */ getLngLat(): any /** * 获取详细的地址信息,行政区、城市、地区 * @returns 返回信息,行政区、城市、地区 */ getMapValue(): string /** * 获取搜索列表 * @returns 返回搜索列表 */ getSearchListHtml(): string } /** *顶部栏位置,可选值为bottom */ enum ToolbarPositionType { bottom = "bottom",top = "top" } /** *label input 输入框组件 */ class VantPicker extends MobileDropDownBase { /** *input的id */ inputId: string /** *picker的id */ pickerId: string /** *静态数据源 */ staticData: any[] /** * 根据值得到组件的值数组 * @returns 返回值的数组 */ getCurrtValArry(): any[] /** * 得到组件的值数组 * @returns 返回数组下标 */ getDefaultIndex(): string | number } /** *设置组件的类型 */ enum FieldType { digit = "digit",number = "number",password = "password",tel = "tel",text = "text" } /** *label VantRate 评价组件 */ class VantRate extends MobileVantInputBase { inputId: string /** * 选择星星改变事件 * @param val 返回日期的时间 */ onRateChange(val: String | Number): void } /** *label input 输入框组件 */ class VantTextarea extends MobileVantInputBase { inputId: string } /** *菜单元素 */ class VantCell extends MobileFieldDbComponentBase { } /** *页签内容容器 */ class ItemPanel extends ContainerBase { /** * 得到页签的索引号 * @returns 页签索引号 不存在parentCmp时候返回-1 */ getTabIndex(): number } /** *菜单元素 */ class VantTabbarItem extends MobileComponentBase { } interface ITabbarItem { /** * 图标右上角徽标的内容 */ badge: string /** *是否显示图标右上角小红点 */ dot: boolean /** *点击后跳转的链接地址 */ href: string /** *图标名称或图片链接 */ icon: string /** *标签名称,作为匹配的标识符 */ itemName: string } /** *菜单元素 */ class VantTabbarItem extends MobileComponentBase { } interface ITabbarItem { /** * 图标右上角徽标的内容 */ badge: string /** *是否显示图标右上角小红点 */ dot: boolean /** *点击后跳转的链接地址 */ href: string /** *图标名称或图片链接 */ icon: string /** *标签名称,作为匹配的标识符 */ itemName: string } /** *微信工具组件 验证, 上传 扫一扫 , 分享 ,微信支付 */ class WeChartTools extends InvisibleBase { /** * 选择图片 * @param maxCount 最大选择的数量 * @param callback 完成回调 */ chooseImage(maxCount: any,callback: any): void /** * 微信权限签名数据 * @returns 微信权限签名数据 */ getSignData(): IWeixSignData /** * 微信支付 这函数未完成不要使用 * @param callback */ pay(callback: any): void /** * 扫码 * @param callback 完成回调 */ scanRqCode(callback: any): void /** * 分享 * @param callback */ share(callback: any): void } interface IDeviceTools { /** *选择图片 */ chooseImage: any inf_type: any /** *支付 */ pay: any /** *扫码 */ scanRqCode: any /** *分享 */ share: any } /** *微信的共用类 权限签名,选择文件,扫码,分享,支付 */ class WechartUtils { static SIGNDATA: string /** * 选择图片 * @param maxCount 最大选择的图片数量 * @param callback 完成回调 */ static chooseImage(maxCount: any,callback: any): void /** * 微信权限签名数据 * @returns 微信权限签名数据 */ static getSignData(): IWeixSignData /** * 微信支付 这函数未完成不要使用 * @param callback */ static pay(callback: any): void /** * 扫码 * @param callback 完成回调 */ static scanRqCode(callback: any): void /** * 分享 * @param callback */ static share(callback: any): void /** * 权限签名 如果需要微信的功能 必须先签名,比如:选择文件,扫码,分享,支付 * @param appId 申请的 appi * @param appSecret 申请的秘钥 * @param orgId 单位id * @param signUrl 需要前面的地址 */ static sign(appId: any,appSecret: any,orgId: any,signUrl: any): void } interface IWeixSignData { appId: string jsApiList: any nonceStr: string payData: any /** *分享信息 */ shareInfo: any signature: string timestamp: string } /** *播放视频组件 依赖: ckPlayer.js */ class YhPlayer extends ContainerBase { } /** *html编辑组件 */ class WangEditor extends InputBase { }