Package com.defaultcompany.wih.approvalhandler

Source Code of com.defaultcompany.wih.approvalhandler.ApprovalCommentService

package com.defaultcompany.wih.approvalhandler;

import java.sql.*;
import java.util.HashMap;

import org.uengine.kernel.Activity;
import org.uengine.kernel.FormApprovalActivity;
import org.uengine.kernel.HumanApprovalActivity;
import org.uengine.kernel.ProcessInstance;
import org.uengine.kernel.RoleMapping;
import org.uengine.persistence.dao.DAOFactory;
import org.uengine.persistence.dao.KeyGeneratorDAO;

public class ApprovalCommentService {

  public void saveComments(ProcessInstance instance,
              String comment,
              String apprStat,
              String tracingTag,
              RoleMapping loggedRoleMapping){
    Connection conn = null;
    PreparedStatement ps = null;
    String sql = "";
    String apprTitle = "";
    try {
      Activity act = instance.getProcessDefinition().getActivity(tracingTag);
     
      if (act instanceof FormApprovalActivity) {
        FormApprovalActivity formApprovalActivity=(FormApprovalActivity) instance.getProcessDefinition().getActivity(tracingTag);
        if(FormApprovalActivity.SIGN_DRAFT.equals("SIGN_"+apprStat.toUpperCase())){
          apprTitle = loggedRoleMapping.getResourceName() + " (상신)";
        }else{
          apprTitle = formApprovalActivity.getName().getText();
        }
      } else if (act instanceof HumanApprovalActivity) {
        HumanApprovalActivity humanApprovalActivity=(HumanApprovalActivity) instance.getProcessDefinition().getActivity(tracingTag);
        if(HumanApprovalActivity.SIGN_DRAFT.equals("SIGN_"+apprStat.toUpperCase())){
          apprTitle = loggedRoleMapping.getResourceName() + " (상신)";
        }else{
          apprTitle = humanApprovalActivity.getName().getText();
        }
      }
     
      conn = instance.getProcessTransactionContext().getConnection();

      DAOFactory daoFactory = DAOFactory.getInstance(instance.getProcessTransactionContext());
      Timestamp now = new Timestamp(daoFactory.getNow().getTimeInMillis());
      KeyGeneratorDAO kgd = daoFactory.createKeyGenerator("DOC_COMMENTS", new HashMap());
      kgd.select();
      kgd.next();
      Number seqresult = kgd.getKeyNumber();
     
      sql = (
          "INSERT INTO doc_comments ("
          + "id, instance_id, contents, opt_type, empno, empname, emptitle, "
          + "tracingtag, created_date, created_by, updated_date, updated_by, apprtitle"
          + ") VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)"
      );
     
      ps = conn.prepareStatement(sql);

      ps.setString(1, String.valueOf(seqresult));
      ps.setString(2, instance.getInstanceId());
      ps.setString(3, comment);
      ps.setString(4, apprStat);
      ps.setString(5, loggedRoleMapping.getEndpoint());
      ps.setString(6, loggedRoleMapping.getResourceName());
      ps.setString(7, loggedRoleMapping.getTitle());
      ps.setString(8, tracingTag);
      ps.setDate(9, new Date(now.getTime()));
      ps.setString(10, loggedRoleMapping.getEndpoint());
      ps.setDate(11, new Date(now.getTime()));
      ps.setString(12, loggedRoleMapping.getEndpoint());
      ps.setString(13, apprTitle);

      ps.executeUpdate();
      //System.out.println("---------------- 의견이 저장되었습니다. -----------------");
    } catch (Exception e) {
      e.printStackTrace();
      //System.out.println("---------------- 의견이 저장 되지 못하였습니다. -----------------");
    } finally {
      if (ps != null) try { ps.close(); } catch (Exception e1) {}
    }
  }
}
TOP

Related Classes of com.defaultcompany.wih.approvalhandler.ApprovalCommentService

TOP
Copyright © 2018 www.massapi.com. 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.