package com.defaultcompany.external.repository;
import java.io.Serializable;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.BatchPreparedStatementSetter;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import com.defaultcompany.external.model.ApprovalLine;
import com.defaultcompany.external.model.Approver;
import com.defaultcompany.external.repository.ApproverDAO.ApproverRowMapper;
public class ApprovalLineDAO {
private JdbcTemplate jt;
public ApprovalLineDAO(DataSource ds) {
jt = new JdbcTemplate(ds);
}
public ApprovalLine get(Serializable approvalKey) {
StringBuffer sql = new StringBuffer();
sql.append(" SELECT ");
sql.append(" APPR_KEY, INSTID, VERSION, LINE_STATUS ");
sql.append(" FROM BPM_APPRREG ");
sql.append(" WHERE APPR_KEY = ? ");
try {
return (ApprovalLine) jt.queryForObject(sql.toString(), new Object[] { approvalKey }, new ApprovalLineMapper());
} catch (DataAccessException e) {
return null;
}
}
public void update(ApprovalLine al) {
StringBuffer sql = new StringBuffer();
sql.append(" UPDATE BPM_APPRREG ");
sql.append(" SET INSTID = ?, VERSION = ?, LINE_STATUS = ? WHERE APPR_KEY = ? ");
this.jt.update(sql.toString(), new Object[] { al.getInstanceId(), al.getVersion(), al.getLineStatus(), al.getApprovalKey() });
}
class ApprovalLineMapper implements RowMapper {
public Object mapRow(ResultSet rs, int arg1) throws SQLException {
ApprovalLine al = new ApprovalLine();
al.setApprovalKey(rs.getString("APPR_KEY"));
al.setInstanceId(rs.getInt("INSTID"));
al.setVersion(rs.getInt("VERSION"));
al.setLineStatus(rs.getString("LINE_STATUS"));
return al;
}
}
}