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

QQ登录

只需一步,快速开始

查看: 2519|回复: 7

[结贴] java自定义通知能否同时通知多个人?

  [复制链接]

71

主题

289

帖子

653

积分

高级会员

Rank: 4

积分
653
QQ
发表于 2014-6-13 10:58:46 | 显示全部楼层 |阅读模式
如代码:
  1. import java.util.HashMap;
  2. import java.util.Map;
  3. import com.justep.system.opm.OrgUnit;
  4. import com.justep.system.process.Task;
  5. import com.justep.system.process.TaskHelper;

  6. public class CommonAction {
  7.         //自定义通知
  8.         public static void sendNotice(String title,String process,String activity,String sCURL,
  9.                         String sEURL,OrgUnit orgUnit) {
  10.                 String sData1="0";//业务数据ID
  11.                 //OrgUnit orgUnit  执行者
  12.                 //设置通知为打开时抢占,打开后自动结束
  13.                   Map<String, Object> varMap = new HashMap<String, Object>();
  14.                   varMap.put("sExecuteMode2", com.justep.system.process.TaskExecuteMode2.FINISH_WHEN_OPEN );
  15.                   varMap.put("sPreemptMode", com.justep.system.process.TaskPreemptMode.OPEN );
  16.                   //创建通知,执行保存方法,发送通知
  17.                   Task task =TaskHelper.createNotice("title",
  18.                                   process, activity,
  19.                                   sCURL , sEURL , sData1, orgUnit, varMap);
  20.                   task.save();
  21.         }
  22. }
复制代码
只能放一个执行者吗?能不能同时通知多个人?难道要循环调用啊。。?
TaskHelper.createNotice参数:
String name 任务标题 String process 过程,指向某个process的全路径 String activity 环节,指向某个环节的标识 String sCURL 创建页面的URL,可以是某个.w的URL或其它合法的URL;从提交任务中点击这条任务时,将使用这个URL打开页面; String sEURL 处理页面的URL,可以是某个.w的URL或其它合法的URL;从待办任务中点击这条任务时,将使用这个URL打开页面; String sData1 业务数据的ID com.justep.system.opm.OrgUnit executor 执行者 Map options 其它关系的值
人生不能Debug。。。

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2014-6-13 13:30:09 | 显示全部楼层
可以用List<OrgUtil>http://bbs.justep.com/forum.php?mod=redirect&goto=findpost&ptid=41037&pid=164970944
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

71

主题

289

帖子

653

积分

高级会员

Rank: 4

积分
653
QQ
 楼主| 发表于 2014-6-16 09:08:09 | 显示全部楼层
本帖最后由 呵呵 于 2014-6-16 09:17 编辑

我不知道这个你是怎么通过编译的  X5版本是2.6版
  1. //获得通知接收者
  2. String sData1 = "AA9ACD6BDB8147ED9EE6A666FA26012F";
  3. List<OrgUnit> ls = new ArrayList<OrgUnit>();
  4. ls = OrgUtils.findPersonMembersByID("ORG01", "PSN01");
  5. //设置通知为打开时抢占、打开后自动结束
  6. Map<String, Object> varMap = new HashMap<String, Object>();
  7. varMap.put("sExecuteMode2", com.justep.system.process.TaskExecuteMode2.FINISH_WHEN_OPEN );
  8. varMap.put("sPreemptMode", com.justep.system.process.TaskPreemptMode.OPEN );
  9. //创建通知,执行保存方法,即发送通知               
  10. Task t = TaskHelper.createNotice("自定义通知", "/x5demo/rich/process/applyGoods/applyGoodsProcess", "applyActivity", "/x5demo/rich/process/applyGoods/applyActivity.w", "/x5demo/rich/process/applyGoods/applyActivity.w", sData1, ls, varMap);
  11. t.save();
复制代码
我复制过来说参数不匹配,难道要强转?
类型 TaskHelper 中的方法 createNotice(String, String, String, String, String, String, OrgUnit, Map<String,Object>)对于参数(String, String, String, String, String, String, List<OrgUnit>, Map<String,Object>)不适用

人生不能Debug。。。
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2014-6-16 09:54:46 | 显示全部楼层
倒数第二个参数是List<OrgUnit>,而不是OrgUnit
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

71

主题

289

帖子

653

积分

高级会员

Rank: 4

积分
653
QQ
 楼主| 发表于 2014-6-16 10:05:16 | 显示全部楼层
zhaixin 发表于 2014-6-16 09:54
倒数第二个参数是List,而不是OrgUnit

我用OrgUnit不报错,用List<OrgUnit>报参数不对。
人生不能Debug。。。
回复 支持 反对

使用道具 举报

71

主题

289

帖子

653

积分

高级会员

Rank: 4

积分
653
QQ
 楼主| 发表于 2014-6-16 10:06:39 | 显示全部楼层
zhaixin 发表于 2014-6-16 09:54
倒数第二个参数是List,而不是OrgUnit

这是API里的说明
public static Task createNotice(String name, String process, String activity, String sCURL, String sEURL, String sData1, Map options)
创建通知
        createNotice("任务标题", "/demo/process/process/and/andProcess", "bizActivity1",
                "/demo/process/process/and/bizActivity1", "/demo/process/process/and/bizActivity1",
                "业务数据ID", ContextHelper.getPersonMember(), new HashMap());参数:
String name 任务标题
String process 过程,指向某个process的全路径
String activity 环节,指向某个环节的标识
String sCURL 创建页面的URL,可以是某个.w的URL或其它合法的URL;从提交任务中点击这条任务时,将使用这个URL打开页面;
String sEURL 处理页面的URL,可以是某个.w的URL或其它合法的URL;从待办任务中点击这条任务时,将使用这个URL打开页面;
String sData1 业务数据的ID
com.justep.system.opm.OrgUnit executor 执行者
Map options 其它关系的值
返回:
Task
人生不能Debug。。。
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2014-6-16 10:44:40 | 显示全部楼层
刚才问了一下,createnotice只能发给一个人,使用createTask吧,可以发给多个人
Map<String, Object> varMap = new HashMap<String, Object>();
varMap.put("sKindID", com.justep.system.process.TaskKind.NOTICE );
这样赋值一下,就是通知 了
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

71

主题

289

帖子

653

积分

高级会员

Rank: 4

积分
653
QQ
 楼主| 发表于 2014-6-16 11:08:51 | 显示全部楼层
zhaixin 发表于 2014-6-16 10:44
刚才问了一下,createnotice只能发给一个人,使用createTask吧,可以发给多个人
Map varMap = new HashMap( ...

嗯 好的
人生不能Debug。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 18:36 , Processed in 0.058136 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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