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

QQ登录

只需一步,快速开始

查看: 19604|回复: 11

[结贴] 下一条待办获取当前部门编码

[复制链接]

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
发表于 2020-6-11 15:09:07 | 显示全部楼层 |阅读模式
版本: X5.2.7 小版本号:
数据库: MS SQLServer 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 其它 浏览器: Chrome
人员设置主部门和兼职部门,应该由兼职部门审批的流程,从代办中打开,获取当前部门为兼职部门;但是从点击自动下一条待办打开,获取当前部门就变成主部门
如何能在从下一条待办自动打开的环节,提取到正确的当前部门

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2020-6-11 17:39:39 | 显示全部楼层
分配权限的时候默认就只分给兼职部门,或者流转的时候就直接流转给兼职部门
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2020-6-11 17:57:53 | 显示全部楼层
jishuang 发表于 2020-6-11 17:39
分配权限的时候默认就只分给兼职部门,或者流转的时候就直接流转给兼职部门 ...

目前分配权限时,当人员有主部门和兼职部门时,只分配给默认部门,流程流转的执行人范围也会规定组织id,但是在下一步代办自动打开时,会取到主部门
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2020-6-11 19:37:12 | 显示全部楼层
看SA_Task中生成的执行者的fid是什么?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2020-6-12 09:37:14 | 显示全部楼层
jishuang 发表于 2020-6-11 19:37
看SA_Task中生成的执行者的fid是什么?

fid取到的是兼职部门下人员的FID
回复 支持 反对

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2020-6-12 09:40:00 | 显示全部楼层
jishuang 发表于 2020-6-11 19:37
看SA_Task中生成的执行者的fid是什么?

但是从下一步代办打开的流程,获取到的当前部门是主部门的,怎么解决呢?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2020-6-12 11:16:02 | 显示全部楼层
下一步代办是什么意思?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2020-6-12 14:12:28 | 显示全部楼层
本帖最后由 doreamon 于 2020-6-12 14:13 编辑
jishuang 发表于 2020-6-12 11:16
下一步代办是什么意思?

在流程提交成功的函数里面写的,自动提取下一条待办,
//        流转成功,执行下一条代办        
        Model.prototype.processAdvanceCommit = function(event){
                var userid = this.getContext().getCurrentPersonID();// 当前人的id
                var process = this.getContext().getCurrentProcess();// 当前process
                var act = this.getContext().getCurrentActivity();// 当前的activity
                var zbid = this.comp("mainData").getCurrentRowID();// sData1

                var param = new biz.Request.ActionParam();
                param.setString("userid", userid);
                param.setString("process", process);
                param.setString("act", act);
                param.setString("zbid", zbid);

                var r = biz.Request.sendBizRequest({
                        "context" : this.getContext(),
                        "action" : "rtNextTask2",
                        "parameters" : param,
                        "directExecute" : true,
                        "callback" : function(data) {
                                data.ignoreError = false;
                                if (data.state) {
                                } else {
                                        alert("提取下一条待办失败!!!");
                                }
                        }
                });

                var fidh = eval('(' + r.responseText + ')').data.value + "";// 获取JSON的值,浏览器兼容,JSON方式。
                var list = fidh.split(',');
//                var sid = list[0]; // 返回的task
//                var eurl = list[1]; // 返回的eurl
//                var title = list[2]; // 返回的标题
                var sEURL = list[0];
                var sID = list[1];
                var sExecutorPersonID = list[2];
                var sProcess = list[3];
                var sActivity = list[4];
                var sData1 = list[5];
                var sName = list[6];

                //alert("fidh:"+fidh+";sName:"+sName);

                //this.executeTask('/CCTCERP/Project/schemaChange/process/inputWorkOrder/businessActivity1.a',taskid[0],taskid[1],'/CCTCERP/Project/schemaChange/process/inputWorkOrder/inputWorkOrderProcess','businessActivity1',taskid[2]);
                if (sEURL && sID && sExecutorPersonID && sProcess && sActivity && sData1) {
                        if (!confirm("是否确定办理下一条?")) {
                                return;
                        }
                        var that1 = this;
                        exeTask2.execute(sEURL,sID,sExecutorPersonID,sProcess,sActivity,sData1,sName,that1); // 打开流程界面        --- 方法2:调用公共js
                }        
        };

代码调用的是公用的方法
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2020-6-12 17:28:39 | 显示全部楼层
取出来的fid直接用,不要用人的id取操作
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

47

主题

125

帖子

511

积分

高级会员

Rank: 4

积分
511
QQ
 楼主| 发表于 2020-6-12 18:01:36 | 显示全部楼层
本帖最后由 doreamon 于 2020-6-12 18:16 编辑
jishuang 发表于 2020-6-12 17:28
取出来的fid直接用,不要用人的id取操作

是修改这个action么,取人员的fid??
而且在组织表里,使用人员的fid查出来的人员id和使用action获取的人员id是一样的
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-28 18:34 , Processed in 0.073332 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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