unknown пре 5 година
родитељ
комит
9871b68079

+ 1 - 30
o2web/source/o2_core/o2/xScript/CMSEnvironment.js

@@ -32,35 +32,6 @@ MWF.xScript.CMSEnvironment = function(ev){
     //this.inquiredRouteList = null;
 
     //workContext
-    /**
-     * DocumentControl  内容管理的权限对象。
-     * @typedef {Object} DocumentControl
-     * @example
-     {
-        "allowRead": true,              //是否允许阅读文档
-        "allowPublishDocument": true,   //是否允许发布文档
-        "allowSave": true,              //是否允许保存文档
-        "allowPopularDocument": true,   //是否允许设置为热点
-        "allowEditDocument": true,      //是否允许编辑文档
-        "allowDeleteDocument": true     //是否允许删除文档
-    }
-     */
-    /**
-     * DocumentAttachmentData  内容管理的权限对象。
-     * @typedef {Object} DocumentAttachmentData
-     * @example
-     {
-        "id": "a5cc5858-cac5-445a-a0a5-888d224eb2f6",   //附件ID
-        "site": "attachment",                           //附件存储位置(一般用于区分附件在哪个表单元素中显示)
-        "name": "13145352_115454884000_2.jpg",          //附件名称
-        "appId": "c295f34c-9ce1-4122-b795-820267e32b68",  //栏目ID
-        "categoryId": "33fb19f0-0670-464d-875c-32fb86148f7a",  //分类ID
-        "documentId": "ca74cbef-2a7f-401a-80e3-577ac9839348",  //文档ID
-        "creatorUid": "XX@huqi@P",                      //附件上传人
-        "extension": "jpg",
-        "length": 364507,                               //附件大小
-    }
-     */
     /**
      * 你可以通过documentContext获取内容管理实例相关的对象数据。
      * @module documentContext
@@ -76,7 +47,7 @@ MWF.xScript.CMSEnvironment = function(ev){
          * @method getDocument
          * @static
          * @return {Document} 文档对象.
-         * @o2ActionOut x_cms_assemble_control.WoDocument
+         * @o2ActionOut x_cms_assemble_control.WoDocument|true
          * @o2syntax
          * var doc = this.documentContext.getDocument();
          */

+ 39 - 308
o2web/source/o2_core/o2/xScript/Environment.js

@@ -1,224 +1,3 @@
-/**
- * Work 数据结构,流程实例对象
- * @typedef {Object} Work
- * @example
- * {
-    "id": "854e2c22-718e-48bb-98db-96f4b43e7ee8",   //流程实例ID
-    "splitValue": "xxxxxxxxxxxxxx", //流程拆分后的拆分依据
-    "title": "xx7月北京出差报销审批",               //流程实例名称
-    "startTime": "2018-09-07 14:03:22",             //流程启动时间
-    "startTimeMonth": "2018-09",                    //流程启动的月份
-    "creatorPerson": "xx@huqi@P",                   //流程实例创建人
-    "creatorIdentity": "xx@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人身份
-    "creatorUnit": "xx@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",     //流程实例创建人所在组织
-    "creatorUnitLevelName": "浙江兰德纵横/开发部",          //流程实例创建人所在组织层次
-    "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-    "applicationName": "财务管理",                          //流程应用名称
-    "applicationAlias": "finance",                          //流程应用别名
-    "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-    "processName": "报销审批流程",                          //流程名称
-    "processAlias": "",                                     //流程别名
-    "activity": "13d15daf-2ac5-4c1b-a669-1607a0e5ed15",     //当前活动ID
-    "activityType": "manual",                               //当前活动类型
-    "activityName": "部门领导审核",                         //当前活动名称
-    "activityAlias": "",                                    //当前活动别名
-    "activityDescription": "",                              //当前活动描述
-    "activityArrivedTime": "2018-09-27 22:49:21",           //当前活动到达时间
-    "serial": "",                                           //编号
-    "workStatus": "processing",                             //流程实例状态
-    "errorRetry": 0,                                        //流转失败重试次数
-    "splitting": false,                                     //流程是否拆分
-    "form": "db3b2766-93a1-4058-b522-0edb922bd84f",          //流程展现所使用的表单
-    "manualTaskIdentityList" : "张三@db3b2766-93a1-4058-b522-0edb922bd84f@I", //预期的处理人
-    "manualTaskIdentityText" : "张三" //当前处理人身份合并文本,用','分割,超长截断,此字段仅用于显示当前工作的处理人,不索引.
-}
- */
-
-/**
- * WorkCompleted 数据结构,已结束流程实例对象
- * @typedef {Object} WorkCompleted
- * @example
- * {
-    "id": "be0195f1-f2e2-4eac-911c-99897a43ff8f",   //流程实例ID
-    "title": "xx7月北京出差报销审批",               //流程实例名称
-    "startTime": "2018-09-19 16:14:16",             //流程启动时间
-    "startTimeMonth": "2018-09",                    //流程启动的月份
-    "completedTime": "2018-09-19 16:15:28",         //流程完成时间
-    "completedTimeMonth": "2018-09",                //流程完成的月份
-    "creatorPerson": "xx@huqi@P",                   //流程实例创建人
-    "creatorIdentity": "xx@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人身份
-    "creatorUnit": "xx@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",     //流程实例创建人所在组织
-    "creatorUnitLevelName": "浙江兰德纵横/开发部",  //流程实例创建人所在组织层次
-    "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-    "applicationName": "财务管理",                          //流程应用名称
-    "applicationAlias": "finance",                          //流程应用别名
-    "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-    "processName": "报销审批流程",                          //流程名称
-    "processAlias": "",                                     //流程别名
-    "serial": "",                                           //编号
-    "form": "320be1ca-ee49-478f-a751-f65ab67cf818",         //流程展现所使用的表单
-}
- */
-
-/**
- * Task数据结构,待办任务对象
- * @typedef {Object} Task
- * @example
- * {
-    "id": "dd476045-7c79-44f7-9dba-f51d322de40f",   //待办ID
-    "title": "XX7月北京出差报销审批",               //流程实例标题
-    "startTime": "2018-09-27 22:49:22",             //待办到达时间
-    "startTimeMonth": "2018-09",                    //待办到达的月份
-    "work": "854e2c22-718e-48bb-98db-96f4b43e7ee8", //流程实例ID
-    "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-    "applicationName": "财务管理",                          //流程应用名称
-    "applicationAlias": "finance",                          //流程应用别名
-    "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-    "processName": "报销审批流程",                          //流程名称
-    "processAlias": "",                                     //流程别名
-    "serial": "",                                           //流程编号
-    "person": "XXX@huqi@P",                             //待办人名称
-    "identity": "XX@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I",    //待办人身份
-    "unit": "XX@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",        //待办人所在组织
-    "activity": "13d15daf-2ac5-4c1b-a669-1607a0e5ed15",         //当前活动的ID
-    "activityName": "部门领导审核",                             //当前活动的名称
-    "activityAlias": "",                                        //当前活动的别名
-    "activityDescription": "",                                  //当前活动描述
-    "activityType": "manual",                                   //当前活动类型
-    "creatorPerson": "XX@huqi@P",                               //流程实例创建人
-    "creatorIdentity": "XX@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人的身份
-    "creatorUnit": "XX@c448d8bb-98b8-4305-9d3f-12537723cfcc@U", //流程实例创建人所在组织
-    "expired": false,                                           //是否已超时
-    "urged": false,                                             //是否进行催办
-    "routeList": [                                              //可选的路由ID
-        "89b58fe0-6dcb-4fe7-8c2e-3f77204df6d4",
-        "f3105b7a-2929-4682-aab8-15fef5ea0f23"
-    ],
-    "routeNameList": [                                          //可选的路由名称
-        "退回申请人",
-        "送财务部门复审"
-    ],
-    "routeOpinionList": [                                       //可选路由的默认意见
-        "",
-        ""
-    ],
-    "first" : true,      //是否是第一条待办.
-    "properties": { //属性对象存储字段
-          "prevTaskIdentity": "张三@903dbb04-085c-4bb1-9c24-3009bd5f7372@I", //提交的处理人
-          "prevTaskIdentityList": [  //上一步处理人
-            "张三@903dbb04-085c-4bb1-9c24-3009bd5f7372@I"
-          ],
-          "prevTaskList": [ //上一步任务信息
-            {
-              "routeName": "送办理",
-              "unit": "产品研发组@320189216@U",
-              "identity": "张三@903dbb04-085c-4bb1-9c24-3009bd5f7372@I",
-              "person": "张三@zhangsan@P",
-              "opinion": "",
-              "startTime": "2020-09-29 17:03:14",
-              "completedTime": "2020-09-29 17:04:38"
-            }
-          ],
-          "prevTask": { //提交的任务信息
-            "routeName": "送办理",
-            "unit": "产品研发组@320189216@U",
-            "identity": "张三@903dbb04-085c-4bb1-9c24-3009bd5f7372@I",
-            "person": "张三@zhangsan@P",
-            "opinion": "",
-            "startTime": "2020-09-29 17:03:14",
-            "completedTime": "2020-09-29 17:04:38"
-          }
-        }
- * }
- */
-
-/**
- * Read 数据结构,待阅任务对象
- * @typedef {Object} Read
- * @example
- * {
-    "id": "dd476045-7c79-44f7-9dba-f51d322de40f",   //待阅ID
-    "title": "XX7月北京出差报销审批",               //流程实例标题
-    "startTime": "2018-09-27 22:49:22",             //待阅产生时间
-    "startTimeMonth": "2018-09",                    //待阅产生的月份
-    "work": "854e2c22-718e-48bb-98db-96f4b43e7ee8", //流程实例ID
-    "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-    "applicationName": "财务管理",                          //流程应用名称
-    "applicationAlias": "finance",                          //流程应用别名
-    "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-    "processName": "报销审批流程",                          //流程名称
-    "processAlias": "",                                     //流程别名
-    "completed": false,                             //流程是否已完成
-    "serial": "",                                   //流程编号
-    "person": "XXX@huqi@P",                         //待阅人名称
-    "identity": "XX@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I",    //待阅人身份
-    "unit": "XX@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",        //待阅人所在组织
-    "activity": "13d15daf-2ac5-4c1b-a669-1607a0e5ed15",         //当前活动的ID
-    "activityName": "部门领导审核",                             //当前活动的名称
-    "activityAlias": "",                                        //当前活动的别名
-    "activityDescription": "",                                  //当前活动描述
-    "activityType": "manual",                                   //当前活动类型
-    "creatorPerson": "XX@huqi@P",                               //流程实例创建人
-    "creatorIdentity": "XX@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人的身份
-    "creatorUnit": "XX@c448d8bb-98b8-4305-9d3f-12537723cfcc@U"  //流程实例创建人所在组织
-}
- */
-
-/**
-* Activity 数据结构,流程实例所在的活动节点对象
- * @typedef {Object} Activity
- * @example
-  *
-     {
-      "id": "801087c5-a4e6-4b91-bf4d-a81cdaa04471", //节点ID
-      "name": "办理",  //节点名称
-      "description": "", //节点描述
-      "alias": "",  //节点别名
-      "resetRange": "department", //重置处理人范围
-      "resetCount": 0,  //重置处理人数字
-      "allowReset": true, //是否允许重置
-      "manualMode": "single" //处理方式 单人single, 并行parallel, 串行queue, grab抢办
-    }
- */
-
-/**
-WorkControl  流程实例的权限对象。
- * @typedef {Object} WorkControl
- * @example
- *
-     {
-        "allowVisit": true,             //是否允许访问
-        "allowProcessing": true,        //是否允许流转
-        "allowReadProcessing": false,   //是否有待阅
-        "allowSave": true,              //是否允许保存业务数据
-        "allowReset": false,            //是否允许重置处理人
-        "allowRetract": false,          //是否允许撤回
-        "allowReroute": false,          //是否允许调度
-        "allowDelete": true,             //是否允许删除流程实例
-        "allowRollback": false,         //是否允许流程回溯
-        "allowAddSplit": false,         //是否允许增加分支
-        "allowPress": false,             //是否允许催办
-    }
- */
-
-
-
-/**
- * FormInfor  表单的基本信息。
- * @typedef {Object} FormInfor
- * @example
- {
-        "id": "db3b2766-93a1-4058-b522-0edb922bd84f",   //表单ID
-        "name": "报销申请表单",                         //表单名称
-        "alias": "报销申请表单",                        //表单别名
-        "description": "",                              //表单描述
-        "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //应用ID
-        "lastUpdatePerson": "XX@huqi@P",                //最后修改人
-        "lastUpdateTime": "2018-09-30 22:46:30",        //最后修改时间
-        "icon": "...",                                  //表单图标
-    }
- */
-
 MWF.xScript = MWF.xScript || {};
 MWF.xScript.Environment = function(ev){
     var _data = ev.data;
@@ -412,64 +191,10 @@ MWF.xScript.Environment = function(ev){
         /**
          * 获取当前流程实例对象:work对象或workCompleted对象。
          * @method getWork
-         * @o2ActionOut x_processplatform_assemble_surface.WorkAction.V2GetWorkOrWorkCompleted
          * @static
          * @return {(Work|WorkCompleted)} 流程实例对象;如果流程已结束,返回已结束的流程实例对象.
-         * <div>Work对象:</div>
-         * <pre><code class='language-js'>{
-         *     "id": "854e2c22-718e-48bb-98db-96f4b43e7ee8",   //流程实例ID
-         *     "splitValue": "xxxxxxxxxxxxxx", //流程拆分后的拆分依据
-         *     "title": "xx7月北京出差报销审批",               //流程实例名称
-         *     "startTime": "2018-09-07 14:03:22",             //流程启动时间
-         *     "startTimeMonth": "2018-09",                    //流程启动的月份
-         *     "creatorPerson": "xx@huqi@P",                   //流程实例创建人
-         *     "creatorIdentity": "xx@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人身份
-         *     "creatorUnit": "xx@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",     //流程实例创建人所在组织
-         *     "creatorUnitLevelName": "浙江兰德纵横/开发部",          //流程实例创建人所在组织层次
-         *     "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-         *     "applicationName": "财务管理",                          //流程应用名称
-         *     "applicationAlias": "finance",                          //流程应用别名
-         *     "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-         *     "processName": "报销审批流程",                          //流程名称
-         *     "processAlias": "",                                     //流程别名
-         *     "activity": "13d15daf-2ac5-4c1b-a669-1607a0e5ed15",     //当前活动ID
-         *     "activityType": "manual",                               //当前活动类型
-         *     "activityName": "部门领导审核",                         //当前活动名称
-         *     "activityAlias": "",                                    //当前活动别名
-         *     "activityDescription": "",                              //当前活动描述
-         *     "activityArrivedTime": "2018-09-27 22:49:21",           //当前活动到达时间
-         *     "serial": "",                                           //编号
-         *     "workStatus": "processing",                             //流程实例状态
-         *     "errorRetry": 0,                                        //流转失败重试次数
-         *     "splitting": false,                                     //流程是否拆分
-         *     "form": "db3b2766-93a1-4058-b522-0edb922bd84f",          //流程展现所使用的表单
-         *     "manualTaskIdentityList" : "张三@db3b2766-93a1-4058-b522-0edb922bd84f@I", //预期的处理人
-         *     "manualTaskIdentityText" : "张三" //当前处理人身份合并文本,用','分割,超长截断,此字段仅用于显示当前工作的处理人,不索引.
-         * }
-         * </pre></code>
-         * WorkCompleted对象:
-         * <pre><code class='language-js'>
-         * {
-         *    "id": "be0195f1-f2e2-4eac-911c-99897a43ff8f",   //流程实例ID
-         *    "title": "xx7月北京出差报销审批",               //流程实例名称
-         *    "startTime": "2018-09-19 16:14:16",             //流程启动时间
-         *    "startTimeMonth": "2018-09",                    //流程启动的月份
-         *    "completedTime": "2018-09-19 16:15:28",         //流程完成时间
-         *    "completedTimeMonth": "2018-09",                //流程完成的月份
-         *    "creatorPerson": "xx@huqi@P",                   //流程实例创建人
-         *    "creatorIdentity": "xx@481c9edc-5fb5-41f1-b5c2-6ea609082cdb@I", //流程实例创建人身份
-         *    "creatorUnit": "xx@c448d8bb-98b8-4305-9d3f-12537723cfcc@U",     //流程实例创建人所在组织
-         *    "creatorUnitLevelName": "浙江兰德纵横/开发部",  //流程实例创建人所在组织层次
-         *     "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //流程应用ID
-         *     "applicationName": "财务管理",                          //流程应用名称
-         *     "applicationAlias": "finance",                          //流程应用别名
-         *     "process": "2207db11-dddf-4ebd-864d-3819f3e173c6",      //流程ID
-         *     "processName": "报销审批流程",                          //流程名称
-         *     "processAlias": "",                                     //流程别名
-         *     "serial": "",                                           //编号
-         *     "form": "320be1ca-ee49-478f-a751-f65ab67cf818",         //流程展现所使用的表单
-         * }
-         * </pre></code>
+         * @o2ActionOut x_processplatform_assemble_surface.WoWork|true|Work对象:
+         * @o2ActionOut x_processplatform_assemble_surface.WorkCompletedAction.get|[properties]|WorkCompleted对象:
          * @o2syntax
          * var work = this.workContext.getWork();
          */
@@ -488,7 +213,7 @@ MWF.xScript.Environment = function(ev){
          *      "resetCount": 0,  //重置处理人数字
          *      "allowReset": true, //是否允许重置
          *      "manualMode": "single" //处理方式 单人single, 并行parallel, 串行queue, grab抢办
-         * }</pre></code>
+         * }</code></pre>
          * @o2syntax
          * var activity = this.workContext.getActivity();
          */
@@ -748,7 +473,7 @@ MWF.xScript.Environment = function(ev){
          *        "allowRollback": false,         //是否允许流程回溯
          *        "allowAddSplit": false,         //是否允许增加分支
          *        "allowPress": false,             //是否允许催办
-         * }</pre></code>
+         * }</code></pre>
          * @o2syntax
          * var control = this.workContext.getControl();
          */
@@ -2110,7 +1835,7 @@ MWF.xScript.Environment = function(ev){
      *  },
      *  "initScript2"
      * ])
-     * </pre></code>
+     * </code></pre>
      * @param {Function} [callback] 加载后执行的回调方法
      * @param {Boolean} [async] 是否异步加载
      * @o2syntax
@@ -2331,7 +2056,17 @@ MWF.xScript.Environment = function(ev){
          * 获取当前表单的基本信息。
          * @method getInfor
          * @static
-         * @return {FormInfor} 表单的基本信息.
+         * @return {Object} 表单的基本信息.
+         * <pre><code class='language-js'>{
+         *    "id": "db3b2766-93a1-4058-b522-0edb922bd84f",   //表单ID
+         *    "name": "报销申请表单",                         //表单名称
+         *    "alias": "报销申请表单",                        //表单别名
+         *    "description": "",                              //表单描述
+         *    "application": "1dc23336-6be6-402b-bed6-36e707a1dd17",  //应用ID
+         *    "lastUpdatePerson": "XX@huqi@P",                //最后修改人
+         *    "lastUpdateTime": "2018-09-30 22:46:30",        //最后修改时间
+         *    "icon": "...",                                  //表单图标
+         * }</code></pre>
          * @o2syntax
          * var form = this.form.getInfor();
          */
@@ -2964,20 +2699,18 @@ MWF.xScript.Environment = function(ev){
          * @param {String} id - 内容管理文档实例的ID。
          * @param {Boolean} [title] - 手机APP端打开时的窗口标题。
          * @param {Object} [options] - 其他参数,内容如下<br>
-         * <pre><code class="language-js">
-         {
-            "readonly": true, //是否以只读方式打开,默认为true
-             "saveOnClose" : true, //关闭的时候是否自动保存
-             "postPublish" : function( documentData ){ //发布前执行方法,但数据已经准备好
-                //documentData 为文档数据
-             },
-             "afterPublish" : function( form, documentData ){ //发布后执行的方法
-                //form为内容管理Form对象,documentData 为文档数据
-             },
-             "postDelete" : function(){ //删除文档后执行的方法
-             }
-         }
-         * </code></pre>
+         * <pre><code class="language-js">{
+         *   "readonly": true, //是否以只读方式打开,默认为true
+         *    "saveOnClose" : true, //关闭的时候是否自动保存
+         *    "postPublish" : function( documentData ){ //发布前执行方法,但数据已经准备好
+         *       //documentData 为文档数据
+         *    },
+         *    "afterPublish" : function( form, documentData ){ //发布后执行的方法
+         *       //form为内容管理Form对象,documentData 为文档数据
+         *    },
+         *    "postDelete" : function(){ //删除文档后执行的方法
+         *    }
+         * }</code></pre>
          * @example
          this.form.openDocument(id, "document title");
          */
@@ -3091,19 +2824,17 @@ MWF.xScript.Environment = function(ev){
          * 如果不传参数,则弹出范围为平台所有栏目的选中界面。<br/>
          * 当使用String时为内容管理应用(栏目)的名称、别名或ID。<br/>
          * 当使用Object时,本参数后面的参数省略,传入如下格式的内容:
-         * <pre><code class="language-js">
-         {
-            "column" : column, //(string)可选,内容管理应用(栏目)的名称、别名或ID
-            "category" : category, //(string)可选,要创建的文档所属的分类的名称、别名或ID
-            "data" : data, //(json object)可选,创建文档时默认的业务数据
-            "identity" : identity, //(string)可选,创建文档所使用的身份。如果此参数为空,且当前人有多个身份的情况下,会弹出身份选择对话框;否则使用默认身份。
-            "callback" : callback, //(funcation)可选,文档创建后的回调函数。
-            "target" : target, //(boolean)可选,为true时,在当前页面打开创建的文档;否则打开新窗口。默认false。
-            "latest" : latest, //(boolean)可选,为true时,如果当前用户已经创建了此分类的文档,并且没有发布过,直接调用此文档为新文档;否则创建一个新文档。默认true。
-            "selectColumnEnable" : selectColumnEnable, //(boolean)可选,是否可以选择应用和分类进行创建文档。有category参数时为默认false,否则默认为true。
-            "ignoreTitle" : ignoreTitle //(boolean)可选,值为false时,创建的时候需要强制填写标题,默认为false。
-        }
-         </code></pre>
+         * <pre><code class="language-js">{
+         *   "column" : column, //(string)可选,内容管理应用(栏目)的名称、别名或ID
+         *   "category" : category, //(string)可选,要创建的文档所属的分类的名称、别名或ID
+         *   "data" : data, //(json object)可选,创建文档时默认的业务数据
+         *   "identity" : identity, //(string)可选,创建文档所使用的身份。如果此参数为空,且当前人有多个身份的情况下,会弹出身份选择对话框;否则使用默认身份。
+         *   "callback" : callback, //(funcation)可选,文档创建后的回调函数。
+         *   "target" : target, //(boolean)可选,为true时,在当前页面打开创建的文档;否则打开新窗口。默认false。
+         *   "latest" : latest, //(boolean)可选,为true时,如果当前用户已经创建了此分类的文档,并且没有发布过,直接调用此文档为新文档;否则创建一个新文档。默认true。
+         *   "selectColumnEnable" : selectColumnEnable, //(boolean)可选,是否可以选择应用和分类进行创建文档。有category参数时为默认false,否则默认为true。
+         *   "ignoreTitle" : ignoreTitle //(boolean)可选,值为false时,创建的时候需要强制填写标题,默认为false。
+         * }</code></pre>
          * @param {String} [category] - 要创建的文档所属的分类的名称、别名或ID
          * @param {Object} [data] - 创建文档时默认的业务数据
          * @param {String} [identity] - 可选,创建文档所使用的身份。如果此参数为空,且当前人有多个身份的情况下,会弹出身份选择对话框;否则使用默认身份。

+ 61 - 72
o2web/source/o2_core/o2/xScript/ViewEnvironment.js

@@ -1,48 +1,3 @@
-/**
- * StatementInfor 查询配置信息
- * @typedef {Object} StatementInfor
- * @example
- * {
-    "query": "26d21c71-5114-4496-8ca1-a69e56324841", //所属应用id
-    "id": "ee334220-66d3-4f78-afce-8ccf6b995c8c", //查询id
-    "name": "测试查询", //名称
-    "alias": "", //别名
-    "description": "", //描述
-    "table": "", //自建表的id
-    "entityClassName": "com.x.processplatform.core.entity.content.Task", //系统表表名
-    "entityCategory": "official", //表类型 official(系统表) 或 dynamic(自建表)
-    "format": "jpql", //语句类型,jpql 或者 script(脚本)
-    "type": "select", //select/update/delete
-    "data": "SELECT o FROM Task o where o.person = :person", //查询语句
-    "countData": "SELECT count(o.id) FROM Task o where o.person = :person", //总数语句
-    "countScriptText" : "", //总数语句脚本
-    "scriptText" : "", //查询语句脚本
-    "viewJson": { ... } //视图相关信息
-}
- */
-
-/**
- * ViewInfor 视图配置信息
- * @typedef {Object} ViewInfor
- * @example
- * {
-      "application": "db9fc893-7dbc-4e0f-a617-99089d2c6323", //视图所在应用
-      "query": "db9fc893-7dbc-4e0f-a617-99089d2c6323",  //视图所在应用,同application
-      "name": "视图自定义测试", //视图名称
-      "viewName": "视图自定义测试",  //视图名称,同name
-      "isExpand": "no",  //如果有分类,默认是否展开开
-      "id": "705ce967-2f9c-425c-8873-3bd729249e1d", //视图id
-      "alias": "", //视图别名
-      "description": "",  //视图描述
-      "display": true, //视图是否显示
-      "type": "cms", //视图嵌入的数据类型, cms 或 process
-      "count": 2000, //最多返回2000条
-      "pageSize": 20, //每页的条数
-      "createTime": "2019-09-02 10:18:27",
-      "updateTime": "2020-03-26 15:53:03"
-    }
- */
-
 /**
  * @readonly
  * @enum {String} ViewFilterDataLogic
@@ -381,7 +336,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      * <div>如果对本应用的数据字典操作,将optionsOrName设置为string。</div>
      * <pre><code class='language-js'>
      *     var dict = new this.Dict("bulletinDictionary"); //数据字典的名称、别名或id
-     * </pre></code>
+     * </code></pre>
      * <div>如果需要对其他应用的数据字典进行操作,将options设置为JsonObject</div>
      * <pre><code class='language-js'>
      * var dict = new this.Dict({
@@ -393,7 +348,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      *    name : "bulletinDictionary", // 数据字典的名称、别名、id
      *    enableAnonymous : true //允许用户在未登录的情况下读取cms的数据字典, type为process的时候此参数无效,默认为false
      * });
-     * </pre></code>
+     * </code></pre>
      * @return {Object} Dict对象
      * @o2syntax
      * //您可以在页面、表单、流程各个嵌入脚本中,通过this.Dict()对本应用或其他应用的数据字典中的数据进行增删改查,如下:
@@ -883,6 +838,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          * @param {IdentityFlag|IdentityFlag[]} name - 身份的distinguishedName、name、id、unique属性值,身份对象,或上述属性值和对象的数组。
          * @param {(Boolean|Function)} [asyncOrCallback] 当参数为boolean,表示是否异步执行,默认为false。当参数为function,表示回调方法。
          * @return {Promise|IdentityData|IdentityData[]} 当async为true时,返回
+         * @o2ActionOut x_organization_assemble_express.IdentityAction.listObject
          * {@link https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise|Promise}。
          * 否则返回身份,单个是Object,多个是Array。
          * @o2syntax
@@ -2052,7 +2008,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *        }
          *    ]
          * }
-         * </pre></code>
+         * </code></pre>
          * @o2syntax
          * //同步执行,返回职务数组。
          * var dutyList = this.org.listUnitAllDuty( unit );
@@ -2974,7 +2930,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       }
          *  ]
          * }
-         * </pre></code>
+         * </code></pre>
          * @param {Function} callback - 访问成功后的回调函数
          * @param {Boolean} [async] - 同步或异步调用。true:异步;false:同步。默认为true。
          * @o2syntax
@@ -3076,7 +3032,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       }
          *  ]
          * }
-         * </pre></code>
+         * </code></pre>
          * @param {Function} callback - 必选,当选择完成,点击“确定”之后的回调函数。
          * @o2syntax
          * this.view.select(view, callback);
@@ -3222,7 +3178,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       "processName" : "test流程" //其他写确定的值
          *     }
          * }
-         * </pre></code>
+         * </code></pre>
          * @param {Function} callback - 访问成功后的回调函数
          * @param {Boolean} [async] - 同步或异步调用。true:异步;false:同步。默认为true。
          * @o2syntax
@@ -3338,7 +3294,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       "processName" : "test流程" //其他写确定的值
          *     }
          * }
-         * </pre></code>
+         * </code></pre>
          * @param {Function} callback - 访问成功后的回调函数
          * @o2syntax
          * this.statement.select(statement, callback);
@@ -3595,7 +3551,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      *     "perPageCount": 50, //每页的条数
      *     "currentPageNumber": 1 // 当前页数
      * }
-     * </pre></code>
+     * </code></pre>
      * @o2syntax
      * this.queryStatement.getPageInfor();
      */
@@ -3619,14 +3575,14 @@ MWF.xScript.ViewEnvironment = function (ev) {
     },
      ...
      *]
-     * </pre></code>
+     * </code></pre>
      * 如:"select id, title from table o" 返回 二维数组:
      *<pre><code class='language-js'>[
      ["id1", "title1"],
      ["id2", "title2"],
      ...
      *]
-     *</pre></code>
+     *</code></pre>
      * @o2syntax
      * var data = this.queryStatement.getPageData();
      */
@@ -3684,14 +3640,14 @@ MWF.xScript.ViewEnvironment = function (ev) {
     },
      ...
      *]
-     * </pre></code>
+     * </code></pre>
      * 如:"select id, title from table o" 返回 二维数组:
      *<pre><code class='language-js'>[
      ["id1", "title1"],
      ["id2", "title2"],
      ...
      *]
-     *</pre></code>
+     *</code></pre>
      * @o2syntax
      * var data = this.queryStatement.getSelectedData();
      */
@@ -3732,7 +3688,24 @@ MWF.xScript.ViewEnvironment = function (ev) {
          * @method getStatementInfor
          * @memberOf module:queryStatement
          * @static
-         * @return {StatementInfor} 查询的配置信息.
+         * @return {Object} 查询的配置信息.
+         * <pre><code class='language-js'>{
+         *    "query": "26d21c71-5114-4496-8ca1-a69e56324841", //所属应用id
+         *    "id": "ee334220-66d3-4f78-afce-8ccf6b995c8c", //查询id
+         *    "name": "测试查询", //名称
+         *    "alias": "", //别名
+         *    "description": "", //描述
+         *    "table": "", //自建表的id
+         *    "entityClassName": "com.x.processplatform.core.entity.content.Task", //系统表表名
+         *    "entityCategory": "official", //表类型 official(系统表) 或 dynamic(自建表)
+         *    "format": "jpql", //语句类型,jpql 或者 script(脚本)
+         *    "type": "select", //select/update/delete
+         *    "data": "SELECT o FROM Task o where o.person = :person", //查询语句
+         *    "countData": "SELECT count(o.id) FROM Task o where o.person = :person", //总数语句
+         *    "countScriptText" : "", //总数语句脚本
+         *    "scriptText" : "", //查询语句脚本
+         *    "viewJson": { ... } //视图相关信息
+         * }</code></pre>
          * @o2syntax
          * this.queryStatement.getStatementInfor();
          */
@@ -3743,7 +3716,23 @@ MWF.xScript.ViewEnvironment = function (ev) {
          * @method getViewInfor
          * @memberOf module:queryView
          * @static
-         * @return {ViewInfor} 视图的配置信息.
+         * @return {Object} 视图的配置信息.
+         * <pre><code class='language-js'>{
+         *      "application": "db9fc893-7dbc-4e0f-a617-99089d2c6323", //视图所在应用
+         *      "query": "db9fc893-7dbc-4e0f-a617-99089d2c6323",  //视图所在应用,同application
+         *      "name": "视图自定义测试", //视图名称
+         *      "viewName": "视图自定义测试",  //视图名称,同name
+         *      "isExpand": "no",  //如果有分类,默认是否展开开
+         *      "id": "705ce967-2f9c-425c-8873-3bd729249e1d", //视图id
+         *      "alias": "", //视图别名
+         *      "description": "",  //视图描述
+         *      "display": true, //视图是否显示
+         *      "type": "cms", //视图嵌入的数据类型, cms 或 process
+         *      "count": 2000, //最多返回2000条
+         *      "pageSize": 20, //每页的条数
+         *      "createTime": "2019-09-02 10:18:27",
+         *      "updateTime": "2020-03-26 15:53:03"
+         * }</code></pre>
          * @o2syntax
          * this.queryView.getViewInfor();
          */
@@ -3760,7 +3749,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *     "perPageCount": 50, //每页的条数
          *     "currentPageNumber": 1 // 当前页数
          * }
-         * </pre></code>
+         * </code></pre>
          * @o2syntax
          * this.queryView.getPageInfor();
          */
@@ -3783,7 +3772,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *    },
          *   ...
          *]
-         * </pre></code>
+         * </code></pre>
          * 有分类的时候,数据格式如下:
          *<pre><code class='language-js'>[
          *  {
@@ -3802,7 +3791,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *  },
          *  ...
          *]
-         *</pre></code>
+         *</code></pre>
          * @o2syntax
          * var data = this.queryView.getPageData();
          */
@@ -3863,7 +3852,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
           },
          ...
          * ]
-         </pre></code>
+         </code></pre>
          * @o2syntax
          * var data = this.queryView.getSelectedData();
          */
@@ -3886,7 +3875,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       "formatType":"textValue"
          *   }
          *]
-         * </pre></code>
+         * </code></pre>
          * @param {Function} [callback] 过滤完成并重新加载数据后的回调方法。
          * @o2syntax
          * this.queryView.setFilter( filter );
@@ -3909,7 +3898,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *      "formatType":"textValue"
          *  }
          *]
-         * </pre></code>
+         * </code></pre>
          * @param {StatementParameter} [parameter] 过滤条件。对查询语句where子句的形如":person"的参数部分进行赋值,参数如下:
          * <pre><code class='language-js'>
          * //假设语句为 select count(o.id) from Read o where (o.person = :person) and (o.startTime > :startTime) and (o.applicationName like :applicationName) and (o.processName = :processName)。
@@ -3920,7 +3909,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *    "applicationName" : "%test%", //如果运算符用的是 like, noLike,模糊查询
          *    "processName" : "test流程" //其他写确定的值
          * }
-         * </pre></code>
+         * </code></pre>
          * @param {Function} [callback] 过滤完成并重新加载数据后的回调方法。
          * @o2syntax
          * this.queryStatement.setStatementFilter( filter, parameter, callback );
@@ -3958,7 +3947,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *     }, //可选,内容行样式,如果不传,则使用原视图的配置
          *     "isExpand": "no", //可选,默认是否展开分类,如果不传,则使用原视图的配置, 可选值有:yes no
          *   }
-         * </pre></code>
+         * </code></pre>
          * @o2syntax
          * this.queryView.switchView( options );
          */
@@ -3995,7 +3984,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
          *       "processName" : "test流程" //其他写确定的值
          *     }
          *   })
-         * </pre></code>
+         * </code></pre>
          * @o2syntax
          * this.queryStatement.switchStatement( options );
          */
@@ -4505,7 +4494,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      *      }
      *    ]
      *  }
-     * </pre></code>
+     * </code></pre>
      */
     this.session = layout.desktop.session;
 
@@ -4531,7 +4520,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      * @param {String} root 平台RESTful服务根,具体服务列表参见:http://server:20030/x_program_center/jest/list.html。
      *如:<pre><code class='language-js'>
      *  "x_processplatform_assemble_surface" //流程平台相关服务根
-     * </pre></code>
+     * </code></pre>
      * @return {String} 对应服务根的host。如:http://127.0.0.1:20020
      * @o2syntax
      * var actions = this.Actions.getHost( root );
@@ -4546,7 +4535,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      * 如:
      *<pre><code class='language-js'>
      *  "x_processplatform_assemble_surface" //流程平台相关服务根
-     * </pre></code>
+     * </code></pre>
      * @return {Object} 返回action对象,用于后续服务调用
      * @o2syntax
      * var actions = o2.Actions.load( root );
@@ -4699,7 +4688,7 @@ MWF.xScript.ViewEnvironment = function (ev) {
      * @param {String} root 平台RESTful服务根,具体服务列表参见:http://server:20030/x_program_center/jest/list.html。
      *如:<pre><code class='language-js'>
      *  "x_processplatform_assemble_surface" //流程平台相关服务根
-     * </pre></code>
+     * </code></pre>
      * @return {String} 对应服务根的host。如:http://127.0.0.1:20020
      * @o2syntax
      * var actions = o2.Actions.get( root );

+ 16 - 33
o2web/source/x_component_process_Xform/Attachment.js

@@ -1035,38 +1035,7 @@ MWF.xApplication.process.Xform.AttachmentController = new Class({
     }
 
 });
-/**
- * 流程实例的附件数据结构.
- * @typedef {Object} WorkAttachmentData
- * @property {String} id - 附件id.
- * @property {String} name - 附件标题.
- * @property {String} person - 上传人.
- * @property {Number} orderNumber - 排序号.
- * @property {String} activityName - 上传的节点.
- * @property {Object} control - 当前登录人员对附件拥有的权限.
- * @property {Boolean} control.allowRead - 是否允许阅读.
- * @property {Boolean} control.allowEdit - 是否允许编辑.
- * @property {Boolean} control.allowControl - 是否允许设置.
- * @property {Number} length - 附件大小.
- * @property {String} createTime - 创建时间.
- * @property {String} updateTime - 修改时间.
- * @property {String} extension - 附件扩展名.
- * @example
- * {
-    "id": "56c4e86f-a4c8-4cc2-a150-1a0d2c5febcb",   //附件ID
-    "name": "133203a2-92e6-4653-9954-161b72ddb7f9.png", //附件名称
-    "extension": "png",                             //附件扩展名
-    "length": 43864,                                //附件大小
-    "person": "xx@huqi@P",                          //附件上传人
-    "lastUpdateTime": "2018-09-27 15:50:34",        //最后的修改时间
-    "lastUpdatePerson": "xx@huqi@P",                //最后的修改人
-    "activity": "e31ad938-c495-45a6-8d77-b8a9b61a165b", //附件上传的活动ID
-    "activityName": "申请人",                           //附件上传的活动名称
-    "activityType": "manual",                           //附件上传的活动类型
-    "site": "$mediaOpinion",                        //附件存储位置(一般用于区分附件在哪个表单元素中显示)
-    "type": "image/png"                             //附件类型(contentType)
-}
- */
+
 
 /** @class Attachment 附件组件。
  * @example
@@ -1723,7 +1692,21 @@ MWF.xApplication.process.Xform.Attachment = MWF.APPAttachment = new Class(
     },
     /**
      * @summary 为组件重新设置附件,该附件必须已经上传。
-     *  @param data{WorkAttachmentData} .
+     *  @param {Object} data.
+     *  <pre><code class='language-js'>{
+     *     "id": "56c4e86f-a4c8-4cc2-a150-1a0d2c5febcb",   //附件ID
+     *     "name": "133203a2-92e6-4653-9954-161b72ddb7f9.png", //附件名称
+     *     "extension": "png",                             //附件扩展名
+     *     "length": 43864,                                //附件大小
+     *     "person": "xx@huqi@P",                          //附件上传人
+     *     "lastUpdateTime": "2018-09-27 15:50:34",        //最后的修改时间
+     *     "lastUpdatePerson": "xx@huqi@P",                //最后的修改人
+     *     "activity": "e31ad938-c495-45a6-8d77-b8a9b61a165b", //附件上传的活动ID
+     *     "activityName": "申请人",                           //附件上传的活动名称
+     *     "activityType": "manual",                           //附件上传的活动类型
+     *     "site": "$mediaOpinion",                        //附件存储位置(一般用于区分附件在哪个表单元素中显示)
+     *     "type": "image/png"                             //附件类型(contentType)
+     * }</code></pre>
      */
     setData: function(data){
         this.attachmentController.clear();