起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5060|回复: 3

[处理中3] executeTaskAction

[复制链接]

138

主题

364

帖子

1339

积分

金牌会员

Rank: 6Rank: 6

积分
1339
QQ
发表于 2019-12-4 12:02:17 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
我想在process里动作设置添加executeTaskAction,要怎么加啊,找不到这个action

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2019-12-4 13:27:40 | 显示全部楼层
添加动作的时候把上面的“显示全局Action”勾选上
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

138

主题

364

帖子

1339

积分

金牌会员

Rank: 6Rank: 6

积分
1339
QQ
 楼主| 发表于 2019-12-4 14:07:30 | 显示全部楼层
//显示按钮:详细信息
        Model.prototype.mainGridCellRender = function(event){
          if(event.colName=="operate"){
                event.html="<a class='btn btn-link' onclick='justep.Bind.contextFor(this).$model.operate(event)'>详细信息</a>"
          }               
        };

   //打开详细信息
   Model.prototype.executeTask = function() {
                var mainData = this.comp("taskData");
                var name = mainData.val("sName");
                var url = mainData.val("sEURL");
                if (!url) {
                        throw new Error("任务: '" + name + "' 的处理页面(sEURL)不允许为空!");
                } else {
                       
                        if (url.charAt(0) === "/"){
                                if (url.indexOf(".a") !== -1){
                                        url = "$UI" + url;
                                }else{
                                        url = "$model/UI" + url;
                                }
                        }
                       
                        var id = mainData.getCurrentRowID();
                        var executorFID = mainData.val("sExecutorFID");
                        var process = mainData.val("sProcess");
                        var activity = mainData.val("sActivity");
                       
                        url += ((url.indexOf("?") == -1) ? "?" : "&");
                        url += 'task=' + id + '&_pagePattern=write&process=' + process + '&activity=' + activity;
                        url = this.addTaskData(url, mainData.getCurrentRow());
                        if (mainData.val("sStatusID") === "tesReady"){
                                var param = new biz.Request.ActionParam();
                                param.setString("task", id);
                                param.setString("executor", executorFID);
                                var self = this;
                                var options = {
                                        context : this.getContext(),
                                        parameters : param,
                                        process : process,
                                        activity : activity,
                                        action : "executeTaskAction",
                                        contentType : biz.Request.JSON_TYPE,
                                        dataType : biz.Request.JSON_TYPE,
                                        directExecute : true,
                                        callback : function(data) {
                                                if (data.state) {
                                                        justep.Shell.showPage({url:url,
                                                                title : name,
                                                                executor : data.response || ""
                                                        });
                                                } else {
                                                        data.ignoreError = false;
                                                }
                                        }
                                };
                                biz.Request.sendBizRequest(options);
                        }else{
                                justep.Shell.showPage({url:url, title : name, executor : executorFID || ""});
                        }
                }
        };
        Model.prototype.addTaskData = function(url, row){
                var data1 = row.val("sData1") || "";
                var data2 = row.val("sData2") || "";
                var data3 = row.val("sData3") || "";
                var data4 = row.val("sData4") || "";
                if (data1){
                        url += "&sData1=" + data1;
                }
                if (data2){
                        url += "&sData2=" + data2;
                }
                if (data3){
                        url += "&sData3=" + data3;
                }
                if (data4){
                        url += "&sData4=" + data4;
                }
                return url;
        }
        Model.prototype.operate = function(event){
        this.executeTask();
        
        };
当前行是通过什么指定的?我把详细信息按钮放在我的列表后面,怎么样才能打开它对应的行呢?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2019-12-4 14:44:52 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-28 11:34 , Processed in 0.075042 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表