Package com.sogou.qadev.service.cynthia.bean

Examples of com.sogou.qadev.service.cynthia.bean.Template


    boolean flag = false; //添加过程是否出错
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Map<String, Integer> excelValueNum = new HashMap<String, Integer>()//excel表单【字段名,列数】对应

    UUID templateId = DataAccessFactory.getInstance().createUUID(templateIdStr);
    Template template = das.queryTemplate(templateId)//得到表单
    Flow flow = das.queryFlow(template.getFlowId());

    Set<Field> allFields = GetAllFields(template);//表单所有字段,除出废弃字段

    String addUser = (String)session.getAttribute("userName");
    DataAccessSession das = DataAccessFactory.getInstance().createDataAccessSession(addUser, DataAccessFactory.magic);
View Full Code Here


   * @param requestPair
   * @param templateId
   * @return
   */
  public static List<QueryCondition> getQueryCondition(Map<String, List<String>> requestPair,UUID templateId){
    Template template = null;
    if (templateId != null) {
      template = DataAccessFactory.getInstance().getSysDas().queryTemplate(templateId);
    }
   
    List<QueryCondition> allQueryConditions = new ArrayList<QueryCondition>();
View Full Code Here

            }
           
            flowList.addAll(allFlows);
           
          }else{
            Template template = TemplateCache.getInstance().get(templateId);
            if(template == null){
              continue;
            }
            Flow flow = FlowCache.getInstance().get(template.getFlowId());
            if (flow == null) {
              continue;
            }
            flowList.add(flow);
          }
         
          for(Flow flow : flowList){
            if(flow == null){
              continue;
            }
           
            if(fieldValue.equals("[逻辑开始]") && flow.getBeginStats() != null){
              for(Stat stat : flow.getBeginStats()){
                if(statusIdStrb.length() > 0){
                  statusIdStrb.append(",");
                }
               
                statusIdStrb.append(stat.getId());
              }
            }
            else if(fieldValue.equals("[逻辑关闭]") && flow.getEndStats() != null){
              for(Stat stat : flow.getEndStats()){
                if(statusIdStrb.length() > 0){
                  statusIdStrb.append(",");
                }
               
                statusIdStrb.append(stat.getId());
              }
            }
          }
         
          if(statusIdStrb.length() == 0){
            continue;
          }
         
          if(fieldMethod.equals("=")){
            XMLUtil.setAttribute(whereFieldNode, "method", "in");
          }
          else if(fieldMethod.equals("!=")){
            XMLUtil.setAttribute(whereFieldNode, "method", "not in");
          }
         
          whereFieldNode.setTextContent(statusIdStrb.toString());
        }
       
       
        //创建人 指派人可以指派给角色
        if(userTypeFieldSet.contains(fieldId) && fieldValue.startsWith("role_")){
         
          String roleIdStr = fieldValue.substring(5);
         
          if (!CommonUtil.isPosNum(roleIdStr))
            continue;
         
          StringBuffer roleUsers = new StringBuffer();
          if (templateId != null) {
            Template template = TemplateCache.getInstance().get(templateId);
            if(template == null){
              continue;
            }
            Flow flow = FlowCache.getInstance().get(template.getFlowId());
            if (flow == null) {
              continue;
            }
            UUID roleId = DataAccessFactory.getInstance().createUUID(roleIdStr);
            Set<Right> allRoleRight = flow.queryRightsByRole(roleId);
View Full Code Here

    this.createTime = Timestamp.valueOf(XMLUtil.getSingleNodeTextContent(taskNode, "createTime"));
    this.assignUser = XMLUtil.getSingleNodeTextContent(taskNode, "assignUser");
    this.lastModifyTime = Timestamp.valueOf(XMLUtil.getSingleNodeTextContent(taskNode, "lastModifyTime"));
    this.statusId = dataAccessFactory.createUUID(XMLUtil.getSingleNodeTextContent(taskNode, "statusId"));

    Template template = TemplateCache.getInstance().get(this.templateId);
    if(template == null){
      throw new RuntimeException();
    }

    this.templateTypeId = template.getTemplateTypeId();

    List<Node> fieldNodeList = XMLUtil.getNodes(taskNode, "fields/field");

    for(Node fieldNode : fieldNodeList){
      List<Node> fieldDataNodeList = XMLUtil.getNodes(fieldNode, "data");
      if (fieldDataNodeList.size() == 0){
        continue;
      }

      UUID fieldId = dataAccessFactory.createUUID(XMLUtil.getSingleNodeTextContent(fieldNode, "id"));
      Field field = template.getField(fieldId);
      if(field == null){
        continue;
      }

      if(field.getType().equals(Type.t_selection)){
        if(field.getDataType().equals(DataType.dt_single)){
          this.setSingleSelection(fieldId, dataAccessFactory.createUUID(fieldDataNodeList.get(0).getTextContent()));
        }
        else if(field.getDataType().equals(DataType.dt_multiple)){
          Set<UUID> fieldDataSet = new LinkedHashSet<UUID>();

          for(Node fieldDataNode : fieldDataNodeList){
            fieldDataSet.add(dataAccessFactory.createUUID(fieldDataNode.getTextContent()));
          }

          this.setMultiSelection(fieldId, fieldDataSet.toArray(new UUID[fieldDataSet.size()]));
        }
      }
      else if(field.getType().equals(Type.t_reference)){
        if (field.getDataType().equals(DataType.dt_single)){
          this.setSingleReference(fieldId, dataAccessFactory.createUUID(fieldDataNodeList.get(0).getTextContent()));
        }
        else if(field.getDataType().equals(DataType.dt_multiple)){
          Set<UUID> fieldDataSet = new LinkedHashSet<UUID>();

          for(Node fieldDataNode : fieldDataNodeList){
            fieldDataSet.add(dataAccessFactory.createUUID(fieldDataNode.getTextContent()));
          }

          this.setMultiReference(fieldId, fieldDataSet.toArray(new UUID[fieldDataSet.size()]));
        }
      }
      else if(field.getType().equals(Type.t_attachment)){
        Set<UUID> fieldDataSet = new LinkedHashSet<UUID>();

        for(Node fieldDataNode : fieldDataNodeList){
          fieldDataSet.add(dataAccessFactory.createUUID(fieldDataNode.getTextContent()));
        }

        this.setAttachments(fieldId, fieldDataSet.toArray(new UUID[fieldDataSet.size()]));
      }
      else if(field.getType().equals(Type.t_input)){
        String fieldData = fieldDataNodeList.get(0).getTextContent();
        if(fieldData != null){
          if(field.getDataType().equals(DataType.dt_integer)){
            this.setInteger(fieldId, Integer.valueOf(fieldData));
          }
          else if(field.getDataType().equals(DataType.dt_double)){
            this.setDouble(fieldId, Double.valueOf(fieldData));
          }
          else if(field.getDataType().equals(DataType.dt_float)){
            this.setFloat(fieldId, Float.valueOf(fieldData));
          }
          else if(field.getDataType().equals(DataType.dt_long)){
            this.setLong(fieldId, Long.valueOf(fieldData));
          }
          else if(field.getDataType().equals(DataType.dt_timestamp)){
            this.setDate(fieldId, Date.valueOf(fieldData));
          }
          else if(field.getDataType().equals(DataType.dt_string) || field.getDataType().equals(DataType.dt_text)){
            this.setString(fieldId, fieldData);
          }
        }
      }
    }

    List<Node> logNodeList = XMLUtil.getNodes(taskNode, "logs/log");
    for(Node logNode : logNodeList){
      String logCreateUser = XMLUtil.getSingleNodeTextContent(logNode, "createUser");
      if(logCreateUser.equals("script@sogou-inc.com")){
        continue;
      }

      Timestamp logCreateTime = Timestamp.valueOf(XMLUtil.getSingleNodeTextContent(logNode, "createTime"));

      UUID actionId = null;
      String actionIdStr = XMLUtil.getSingleNodeTextContent(logNode, "actionId");
      if(actionIdStr != null){
        actionId = DataAccessFactory.getInstance().createUUID(actionIdStr);
      }

      String actionComment = XMLUtil.getSingleNodeTextContent(logNode, "actionComment");

      Map<String, Pair<Object, Object>> baseValueMap = new LinkedHashMap<String, Pair<Object, Object>>();

      List<Node> baseValueNodeList = XMLUtil.getNodes(logNode, "baseValues/baseValue");
      for(Node baseValueNode : baseValueNodeList){
        String base = XMLUtil.getSingleNodeTextContent(baseValueNode, "base");
        String previous = XMLUtil.getSingleNodeTextContent(baseValueNode, "previous");
        String current = XMLUtil.getSingleNodeTextContent(baseValueNode, "current");

        Pair<Object, Object> value = new Pair<Object, Object>();

        if(base.equals("id") || base.equals("statusId")){
          if(previous != null){
            value.setFirst(DataAccessFactory.getInstance().createUUID(previous));
          }

          if(current != null){
            value.setSecond(DataAccessFactory.getInstance().createUUID(current));
          }
        }
        else if(base.equals("createTime") || base.equals("lastModifyTime")){
          if(previous != null){
            value.setFirst(Timestamp.valueOf(previous));
          }

          if(current != null){
            value.setSecond(Timestamp.valueOf(current));
          }
        }
        else{
          value.setFirst(previous);
          value.setSecond(current);
        }

        baseValueMap.put(base, value);
      }

      Map<UUID, Pair<Object, Object>> extValueMap = new LinkedHashMap<UUID, Pair<Object, Object>>();

      List<Node> extValueNodeList = XMLUtil.getNodes(logNode, "extValues/extValue");
      for(Node extValueNode : extValueNodeList){
        UUID ext = DataAccessFactory.getInstance().createUUID(XMLUtil.getSingleNodeTextContent(extValueNode, "ext"));
        String previous = XMLUtil.getSingleNodeTextContent(extValueNode, "previous");
        String current = XMLUtil.getSingleNodeTextContent(extValueNode, "current");

        Field field = template.getField(ext);
        if(field == null){
          continue;
        }

        Pair<Object, Object> value = new Pair<Object, Object>();
View Full Code Here

    xmlb.append("<assignUser>").append(XMLUtil.toSafeXMLString(this.getAssignUsername())).append("</assignUser>");

    Set<Field> validFieldSet = new LinkedHashSet<Field>();
    if(this.getValidFieldIds() != null)
    {
      Template template = TemplateCache.getInstance().get(this.getTemplateId());
      if(template != null)
      {
        for(UUID validFieldId : this.getValidFieldIds())
        {
          Field validField = template.getField(validFieldId);
          if(validField != null)
            validFieldSet.add(validField);
        }
      }
    }
View Full Code Here

      Data task = allDatas[i];
      if (task == null) {
        continue;
      }
      if (templateMap.get(task.getTemplateId()) == null) {
        Template template = das.queryTemplate(task.getTemplateId());
        if (template != null) {
          templateMap.put(task.getTemplateId(), template);
        }
      }
     
      Template template = templateMap.get(task.getTemplateId());
     
      if (flowMap.get(template.getFlowId()) == null) {
        Flow flow = das.queryFlow(template.getFlowId());
        if (flow != null) {
          flowMap.put(flow.getId(), flow);
        }
      }
     
      Flow flow = flowMap.get(template.getFlowId());
     
      List<String> allShowList = new ArrayList<String>();
      allShowList.addAll(Arrays.asList(displayNames));
      allShowList.add(indentFieldName);
      Map<String, String> displayMap = FilterQueryManager.getShowFieldValueMap(allShowList.toArray(new String[0]), task , template ,flow ,das ,ExportType.html , userAliasMap , isSysFilter);
View Full Code Here

   */
  private static Map<String, String> createMapByTaskFieldValue(Data task,
      DataAccessSession das) {
    Map<String, String> dataMap = new HashMap<String, String>();

    Template template = das.queryTemplate(task.getTemplateId());
    if (template == null)
      return dataMap;

    for (Field field : template.getFields()) {
      if (field.getType().equals(Type.t_selection)) {
        if (field.getDataType().equals(DataType.dt_single)) {
          UUID optionId = task.getSingleSelection(field.getId());
          if (optionId != null) {
            Option option = field.getOption(optionId);
View Full Code Here

    return dataMap;
  }

  private static String getTaskBaseAttribute(Data task, String fieldName,
      DataAccessSession das) {
    Template template = das.queryTemplate(task.getTemplateId());

    if ("title".equals(fieldName) || "标题".equals(fieldName))
      return task.getTitle();
    else if ("status_id".equals(fieldName) || "状态".equals(fieldName))
      return DataManager.getInstance().getDataStatus(task, das);
    else if ("create_user".equals(fieldName) || "创建人".equals(fieldName))
      return task.getCreateUsername();
    else if ("create_time".equals(fieldName) || "创建时间".equals(fieldName)) {
      String createTime = task.getCreateTime().toString();
      if (createTime.indexOf(".") > 0)
        createTime = createTime.split("\\.")[0];

      return createTime;
    } else if ("description".equals(fieldName) || "描述".equals(fieldName))
      return task.getDescription();
    else if ("assign_user".equals(fieldName) || "指派人".equals(fieldName))
      return task.getAssignUsername();
    else if ("last_modify_time".equals(fieldName)
        || "修改时间".equals(fieldName)) {
      String lastModifyTime = task.getLastModifyTime().toString();
      if (lastModifyTime.indexOf(".") > 0)
        lastModifyTime = lastModifyTime.split("\\.")[0];

      return lastModifyTime;
    } else if ("node_id".equals(fieldName) || "项目".equals(fieldName)) {
      if (template != null)
        return template.getName();
      return null;
    } else if ("action_id".equals(fieldName) || "执行动作".equals(fieldName)) {
      if (task.getActionId() == null)
        return "编辑";

      Action action = das.queryAction(task.getActionId(),
          template.getFlowId());
      if (action != null)
        return action.getName();

      return null;
    } else if ("action_user".equals(fieldName) || "执行人".equals(fieldName))
View Full Code Here

    Element IDElement = document.createElement("field");
    IDElement.setAttribute("name", "ID");
    IDElement.setAttribute("value", task.getId().toString());
    taskElement.appendChild(IDElement);

    Template template = das.queryTemplate(task.getTemplateId());
    if (template != null) {
      Element templateElement = document.createElement("field");
      templateElement.setAttribute("name", "表单");
      templateElement.setAttribute("value", template.getFlowId()
          .toString());
      taskElement.appendChild(templateElement);
    }

    Map<String, String> map = createMapByTaskFieldValue(task, das);

    boolean hasPriority = false;

    for (String fieldName : fieldsName) {
      if (fieldName.equals("修改优先级"))
        hasPriority = true;

      element = document.createElement("field");
      element.setAttribute("name", fieldName);

      Field field = template.getField(fieldName);
      String fieldId = (field == null ? ConfigUtil.baseFieldIdMap
          .get(fieldName) : field.getId().toString());

      element.setAttribute("uuid", fieldId);
View Full Code Here

      if (task == null) {
        continue;
      }
      plainBuffer.append("<data>");
      if (templateMap.get(task.getTemplateId()) == null) {
        Template template = das.queryTemplate(task.getTemplateId());
        if (template != null) {
          templateMap.put(task.getTemplateId(), template);
        }
      }
     
      Template template = templateMap.get(task.getTemplateId());
     
      if (flowMap.get(template.getFlowId()) == null) {
        Flow flow = das.queryFlow(template.getFlowId());
        if (flow != null) {
          flowMap.put(flow.getId(), flow);
        }
      }
     
      Flow flow = flowMap.get(template.getFlowId());
     
      Map<String, String> displayMap = FilterQueryManager.getShowFieldValueMap(displayNames , task , template ,flow ,das ,ExportType.excel , userAliasMap ,isSysFilter);
     
      for(int j=0;j<displayNames.length;j++)
      {
View Full Code Here

TOP

Related Classes of com.sogou.qadev.service.cynthia.bean.Template

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.