wfprocinstanceextdao.java

来自「公司自己开发的工作流引擎」· Java 代码 · 共 131 行

JAVA
131
字号
package cn.com.iaspec.workflow.engine.dao;

import cn.com.iaspec.workflow.vo.db.WfProcInstanceExt;
import org.apache.log4j.Logger;
import cn.com.iaspec.workflow.db.WorkflowDBConnectionManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Timestamp;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2006</p>
 * <p>Company: iASPEC Technologies</p>
 * @author xiesonglin
 * @version 1.5
 */
public class WfProcInstanceExtDAO{
  private static Logger logger=Logger.getLogger(WfProcInstanceExtDAO.class);
  public WfProcInstanceExtDAO(){
  }

  public WfProcInstanceExt getWfProcInstanceExt(long procInstanceId)
      throws Exception{
    Connection conn=null;
    Statement stm=null;
    WfProcInstanceExt procInstExt=null;
    try{
      conn=WorkflowDBConnectionManager.getInstance().getConnection();
      stm=conn.createStatement();
      String sql=" select * from wf_procinstance_ext where proc_instance_id="+
          procInstanceId;
      logger.info("......query sql:"+sql);
      ResultSet rs=stm.executeQuery(sql);
      if(rs.next()){
        procInstExt=new WfProcInstanceExt();
        procInstExt.setIfMaxTimeOut(rs.getString("if_max_timeout") == null ? false:(rs.getString("if_max_timeout").toUpperCase().equals("Y") ? true:false));
        procInstExt.setIfWarningTimeOut(rs.getString("if_warning_timeout") == null ? false:(rs.getString("if_warning_timeout").toUpperCase().equals("Y") ? true:false));
        procInstExt.setProcInstanceId(rs.getLong("proc_instance_id"));
        procInstExt.setProcMaxTime(rs.getLong("proc_max_time"));
        procInstExt.setProcMaxTimeOut(rs.getTimestamp("proc_max_timeout"));
        procInstExt.setProcPassTime(rs.getLong("proc_pass_time"));
        procInstExt.setProcTimeUnitType(rs.getString("proc_time_unit_type"));
        procInstExt.setProcWarningTime(rs.getLong("proc_warning_time"));
        procInstExt.setProcWarningTimeOut(rs.getTimestamp("proc_warning_timeout"));
      }
    }
    finally{
      WorkflowDBConnectionManager.getInstance().close(stm,false);
      WorkflowDBConnectionManager.getInstance().close(conn);
    }
    return procInstExt;
  }

  public void insertProceInstanceExt(WfProcInstanceExt procInstExt)
      throws Exception{

    Connection conn=null;
    PreparedStatement ptmt=null;
    String sql = " insert into wf_procinstance_ext (proc_instance_id,proc_max_time,proc_warning_time,"+
        " proc_time_unit_type,proc_max_timeout,proc_warning_timeout,if_max_timeout,if_warning_timeout"+
        ",proc_pass_time) values (?,?,?,?,?,?,?,?,?)";
    logger.info("......query sql:"+sql);

    try{
        System.out.println("----------debug---con");
      conn=WorkflowDBConnectionManager.getInstance().getConnection();
      System.out.println("----------debug---con1");
      ptmt=conn.prepareStatement(sql);
      System.out.println("----------debug---var");
      ptmt.setLong(1,procInstExt.getProcInstanceId());
      System.out.println("----------debug---var1");
      ptmt.setLong(2,procInstExt.getProcMaxTime());
      System.out.println("----------debug---var2");
      ptmt.setLong(3,procInstExt.getProcWarningTime());
      System.out.println("----------debug---var3");
      ptmt.setString(4,procInstExt.getProcTimeUnitType());
      System.out.println("----------debug---var4");
      ptmt.setTimestamp(5,procInstExt.getProcMaxTimeOut()==null ? null:(new Timestamp(procInstExt.getProcMaxTimeOut().getTime())));
      System.out.println("----------debug---var5");
      ptmt.setTimestamp(6,procInstExt.getProcWarningTimeOut()==null ? null:(new Timestamp(procInstExt.getProcWarningTimeOut().getTime())));
      System.out.println("----------debug---var6");
      ptmt.setString(7,procInstExt.isIfMaxTimeOut() ? "Y":"N");
      System.out.println("----------debug---var7");
      ptmt.setString(8,procInstExt.isIfWarningTimeOut() ? "Y":"N");
      System.out.println("----------debug---var8");
      ptmt.setLong(9,procInstExt.getProcPassTime());
      System.out.println("----------debug---var9");
      logger.info("......ptmt is:"+ptmt.toString());
      ptmt.execute();
      System.out.println("----------debug---con2");

    }finally{
      WorkflowDBConnectionManager.getInstance().close(ptmt,false);
      WorkflowDBConnectionManager.getInstance().close(conn);
      System.out.println("----------debug---con3");
    }
  }

  public int updateProceInstanceExt(WfProcInstanceExt procInstExt)
      throws Exception{
    Connection conn=null;
    PreparedStatement ptmt=null;
    String sql = " update wf_procinstance_ext set proc_max_time=?,proc_warning_time=?,"+
        " proc_time_unit_type=?,proc_max_timeout=?,proc_warning_timeout=?,if_max_timeout=?,"+
        "if_warning_timeout=?,proc_pass_time=? where proc_instance_id=?";
    logger.info("......query sql:"+sql);
    try{
      conn=WorkflowDBConnectionManager.getInstance().getConnection();
      ptmt=conn.prepareStatement(sql);
      ptmt.setLong(1,procInstExt.getProcMaxTime());
      ptmt.setLong(2,procInstExt.getProcWarningTime());
      ptmt.setString(3,procInstExt.getProcTimeUnitType());
      ptmt.setTimestamp(4,procInstExt.getProcMaxTimeOut() == null ? null:new Timestamp(procInstExt.getProcMaxTimeOut().getTime()));
      ptmt.setTimestamp(5,procInstExt.getProcWarningTimeOut() == null ? null:new Timestamp(procInstExt.getProcWarningTimeOut().getTime()));
      ptmt.setString(6,procInstExt.isIfMaxTimeOut() ? "Y":"N");
      ptmt.setString(7,procInstExt.isIfWarningTimeOut() ? "Y":"N");
      ptmt.setLong(8,procInstExt.getProcPassTime());
      ptmt.setLong(9,procInstExt.getProcInstanceId());
      logger.info("......ptmt is:"+ptmt.toString());
      return ptmt.executeUpdate();
    }finally{
      WorkflowDBConnectionManager.getInstance().close(ptmt,false);
      WorkflowDBConnectionManager.getInstance().close(conn);
    }
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?