/**
   * Description:客户修改工作流审批代办生成<br>
   *
   * @author pgj
   * @version 0.1 2014-4-11
   * @param transientVars
   * @param args
   * @param ps
   * @return
   */
  @SuppressWarnings({"rawtypes", "unchecked"})
  @Override
  public void execute(Map transientVars, Map args, PropertySet ps) throws WorkflowException {
    Set dateTypes = (Set) ps.getObject("dataTypes");
    String dateTypeStr = (String) args.get("dataType");
    String[] types = dateTypeStr.split(",");

    String owner = null;

    boolean hasNextStep = false;

    // 审批节点类型 与 审批节点名称 有一个 命名约束 映射
    for (String type : types) {
      if (dateTypes.contains(type)) {
        owner = ps.getString(type.replaceAll("Type", "Owner"));
        hasNextStep = true;
        break;
      }
    }

    String status;
    // 添加工作流状态
    if (hasNextStep) {
      status = Constant.APPROVING;
    } else {
      status = Constant.AGREED;
    }

    transientVars.put("owner", owner);
    transientVars.put("hasNextStep", hasNextStep);
    transientVars.put("workFlowStatus", status);
  }
 public Object getObject(String s) throws PropertyException {
   return ps.getObject(s);
 }