|
我在第一个流程结束之后,根据条件判断自动发起第二个流程,这段代码是第一个流程的最后一个环节的processAfterAdvance事件的java代码。现在的问题是,点提交之后,这个件出现在已完成里面,但是代办里面没有出现新的件,请教一下错误在哪边....- public static String startDKPress(String pressName, String process, String sdata1) {
- // 开始发起dikuai流程:=================================
- // String sData1 = ProcessUtils.getProcessData1();
- // String process1 =
- // ContextHelper.getActionContext().getProcess().getFullName2();
- // logger.info(process1);
- logger.info("开始自動发起地块审核流程:=============asdfasdfsd====================" + pressName);
- logger.info("开始自動发起地块审核流程:=============asdfasdfsd====================" + sdata1);
- String scFID = ContextHelper.getPersonMember().getFID(); // 流程发起人
- // 为当前测量入库处理人
- process = "/app/business/ba/dksh/process/qsdlsh/qsdlshProcess";
- String kSql = "select a.* from CL_XMQKB a where a='" + sdata1 + "'";
- logger.info("------------------------------" + kSql);
- Table table = KSQL.select(kSql, null, "/app/business/ba/dksh/data", null);
- Iterator<Row> iter = table.iterator();
- String SSXZDM = "";
- String SZXZ = "";
- String XZQDM = "";
- String XZQMC = "";
- String ZDBH = "";
- String XMMC = "";
- String TDZL = "";
- while (iter.hasNext()) {
- Row row = iter.next();
- SSXZDM = row.getString("SSXZDM");
- SZXZ = row.getString("SSXZ");
- XZQDM = row.getString("XZQDM");
- XZQMC = row.getString("XZQMC");
- ZDBH = row.getString("ZDH");
- XMMC = row.getString("XMMC");
- TDZL = row.getString("XMSZD");
- logger.info("存 =SSXZDM=============" + SSXZDM);
- }
- // 根据所属乡镇代码,查询该乡镇的经办人的SFID
- String[] split = SSXZDM.split(",");
- List<String> sFidList = new ArrayList<String>();
- if (split.length > 0) {
- for (int i = 0; i < split.length; i++) {
- String sql1 = "select a.SID as SID, a.SFCODE as SFCODE, a.SFID as SFID from SA_OPORG a where a.SNAME like '经办人%' and SORGKINDID = 'pos' and a.SFCODE like '/320282/" + split[i] + "%'";
- Table table1 = SQL.select(sql1, null, "/system/data", null);
- String sfid = null;
- String sfcode = null;
- String sid = null;
- if (table1.size() > 0) {
- Iterator<Row> iterator = table1.iterator();
- Row next = iterator.next();
- sid = next.getString("SID");
- sfcode = next.getString("SFCODE");
- sfid = next.getString("SFID");
- }
- String sql2 = "select b.SFID as SFID, b.SNAME as SNAME from SA_OPORG b where b.SFID like '" + sfid + "%' and SORGKINDID = 'psm' ";
- Table table2 = SQL.select(sql2, null, "/system/data", null);
- if (table2.size() > 0) {
- Iterator<Row> iterator2 = table2.iterator();
- while (iterator2.hasNext()) {
- Row next = iterator2.next();
- sFidList.add(next.getString("SFID"));
- logger.info("经办人 ---->>>" + next.getString("SNAME"));
- }
- }
- }
- }
- if (sFidList.size() <= 0) {
- // /ORG01.ogn/PSN01@ORG01.psm
- sFidList.add("/ORG01.ogn/PSN01@ORG01.psm");
- logger.info("经办人 ---->>>system");
- }
- // 创建地块审核流程数据 DK_XMQKB
- String uuid = UUID.randomUUID().toString().replaceAll("-", "");// 32位地块审核流程的fid
- String kSq2 = "INSERT INTO DK_XMQKB a (a,a.SSXZDM,a.SZXZ,a.XZQDM,a.XZQMC,a.ZDBH,a.XMMC,a.TDZL,a.CLXMQKID,a.fSFHF,a.taskState,a.taskStateCode,"
- + "a.fCreatorOgnCode,a.fCreatorOgnName,a.fCreatorDeptCode,a.fCreatorDeptID,a.fCreatorDeptName,a.fCreatorPsnCode,a.fCreatorPsnID,a.fCreatorPsnName,a.fCreartPsnFID,a.fCreatTime,a.SJSJ,a.version,a.PZMJ,a.YWH )"
- + " VALUES"
- + "(:fID,:SSXZDM,:SZXZ,:XZQDM,:XZQMC,:ZDBH,:XMMC,:TDZL,:CLXMQKID,'是','编制中','Editing',:fCreatorOgnCode,:fCreatorOgnName,:fCreatorDeptCode,:fCreatorDeptID,:fCreatorDeptName,:fCreatorPsnCode,:fCreatorPsnID,:fCreatorPsnName,:fCreartPsnFID, stringToDateTime(:times), stringToDateTime(:times) , 0,0 ,:YWH) ";
- Map<String, Object> params = new HashMap<String, Object>();
- params.put("fID", uuid);
- params.put("SSXZDM", SSXZDM);
- params.put("SZXZ", SZXZ);
- params.put("XZQDM", XZQDM);
- params.put("XZQMC", XZQMC);
- params.put("ZDBH", ZDBH);
- params.put("XMMC", XMMC);
- params.put("TDZL", TDZL);
- params.put("CLXMQKID", sdata1);
- String fCreatorOgnCode = "";
- String fCreatorOgnName = "";
- String fCreatorDeptCode = "";
- String fCreatorDeptID = "";
- String fCreatorDeptName = "";
- if (ContextHelper.getPersonMember().getDept() != null) {
- fCreatorDeptCode = ContextHelper.getPersonMember().getDept().getCode();
- fCreatorDeptID = ContextHelper.getPersonMember().getDept().getID();
- /*
- * fCreatorDeptName = ContextHelper.getPersonMember().getDept()
- * .getName();
- */
- fCreatorDeptName = ContextHelper.getPersonMember().getOgn().getName();
- }
- if (ContextHelper.getPersonMember().getOgn() != null) {
- fCreatorOgnCode = ContextHelper.getPersonMember().getOgn().getCode();
- fCreatorOgnName = ContextHelper.getPersonMember().getOgn().getName();
- }
- // fCreatorDeptName
- params.put("fCreatorOgnCode", fCreatorOgnCode);
- params.put("fCreatorOgnName", fCreatorOgnName);
- params.put("fCreatorDeptCode", fCreatorDeptCode);
- params.put("fCreatorDeptID", fCreatorDeptID);
- params.put("fCreatorDeptName", fCreatorDeptName);
- params.put("fCreatorPsnCode", ContextHelper.getPersonMember().getCode());
- params.put("fCreatorPsnID", ContextHelper.getPersonMember().getID());
- params.put("fCreatorPsnName", ContextHelper.getPersonMember().getName());
- params.put("fCreartPsnFID", ContextHelper.getPersonMember().getFID());
- Date day = new Date();
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- params.put("times", df.format(day));
-
- String YWH = "";
- //获取YWH
- HttpInvoker httpInvoker = new HttpInvoker("utf-8", 3000, true, null, 0, null, null);
- Map<String, String> param = new HashMap<String, String>();
- param.put("BHGZMC", "YWH");
- String id = ContextHelper.getOperator().getID();
- String name = ContextHelper.getOperator().getName();
- param.put("CJR", id);
- param.put("CJRMC", WebUtils.encode(name));
- String url = UrlConfig.SERVICE_BIZZ + "/xt/getYwh";
- try {
- YWH = httpInvoker.invoke(url, param, false);
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- System.out.println("YWH"+YWH);
- params.put("YWH", YWH);
-
- KSQL.executeUpdate(kSq2, params, "/app/business/ba/dksh/data", null);
- logger.info(" 发起dik地流程--kSq2功--------------" + kSq2);
- // 发起供地流程-task
- List<Map<String, String>> list = ProcessUtils.startProcess(process, pressName, uuid, scFID);
- logger.info(" 。。。。。。。。。。。" + list.toString());
- for (Map<String, String> m : list) {
- String task = m.get("task");
- logger.info("獲取的。。。。。。000000000000000000000000。。。。。。。。" + task);
- // for (String sFid : sFidList) {
- // logger.info("sFid====================" + sFid);
- ProcessControl cur = ProcessUtils.advanceProcessQuery(task);
- ProcessControlItem flowTo = (ProcessControlItem) cur.getFlowTos().get(0);
- // 3、获取环节ID做判断
- String activity = flowTo.getUnit();
- // if (activity.equals("djscActivity")) {
- // 4、留下要流转的环节,并自定义执行者
- flowTo.clearExecutors();
- flowTo.addExecutors(OrgUtils.findOrgUnitsByFID(sFidList));
- // }
- ProcessUtils.advanceProcess(task, cur);
- // }
- }
- return uuid;
- }
复制代码
|
|