Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.opendynamic.ff.service.impl.oracle.FfAdjustProcDefServiceImpl Maven / Gradle / Ivy
package com.opendynamic.ff.service.impl.oracle;
import java.io.InputStream;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.jdbc.core.support.SqlLobValue;
import org.springframework.jdbc.support.lob.DefaultLobHandler;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import com.opendynamic.OdSqlCriteria;
import com.opendynamic.ff.service.FfAdjustProcDefService;
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class FfAdjustProcDefServiceImpl implements FfAdjustProcDefService {
@Autowired
private JdbcTemplate ffJdbcTemplate;
@Override
public Map loadAdjustProcDef(String ADJUST_PROC_DEF_ID_) {
String sql = "select * from FFV_ADJUST_PROC_DEF where ADJUST_PROC_DEF_ID_ = ?";
List> result = ffJdbcTemplate.queryForList(sql, ADJUST_PROC_DEF_ID_);
if (result.size() == 1) {
return result.get(0);
}
else {
return null;
}
}
@Override
public InputStream loadProcDefDiagramFile(String ADJUST_PROC_DEF_ID_) {
String sql = "select PROC_DEF_DIAGRAM_FILE_ from FF_ADJUST_PROC_DEF where ADJUST_PROC_DEF_ID_ = ?";
return ffJdbcTemplate.queryForObject(sql, new Object[] { ADJUST_PROC_DEF_ID_ }, new RowMapper() {
public InputStream mapRow(ResultSet rs, int rowNum) throws SQLException {
return rs.getBinaryStream(1);
}
});
}
@Override
public List> selectAdjustProcDef(String ADJUST_PROC_DEF_ID_, String PROC_DEF_ID_, Integer page, Integer limit) {
OdSqlCriteria odSqlCriteria = buildSqlCriteriaAdjustProcDef(false, ADJUST_PROC_DEF_ID_, PROC_DEF_ID_);// 根据查询条件组装查询SQL语句
String sql = odSqlCriteria.getSql();
Map paramMap = odSqlCriteria.getParamMap();
if (page != null && limit != null && limit > 0) {// 分页
int start = (page - 1) * limit + 1;
int end = page * limit;
sql = "select * from (select FULLTABLE.*, ROWNUM RN from (" + sql + ") FULLTABLE where ROWNUM <= " + end + ") where RN >= " + start;
}
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(ffJdbcTemplate);
return namedParameterJdbcTemplate.queryForList(sql, paramMap);
}
@Override
public int countAdjustProcDef(String ADJUST_PROC_DEF_ID_, String PROC_DEF_ID_) {
OdSqlCriteria odSqlCriteria = buildSqlCriteriaAdjustProcDef(true, ADJUST_PROC_DEF_ID_, PROC_DEF_ID_);// 根据查询条件组装总数查询SQL语句
String sql = odSqlCriteria.getSql();
Map paramMap = odSqlCriteria.getParamMap();
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(ffJdbcTemplate);
return namedParameterJdbcTemplate.queryForObject(sql, paramMap, Integer.class);
}
private OdSqlCriteria buildSqlCriteriaAdjustProcDef(boolean count, String ADJUST_PROC_DEF_ID_, String PROC_DEF_ID_) {// 组装查询SQL语句
String sql;
Map paramMap = new HashMap();
if (count) {
sql = "select count(*) from FFV_ADJUST_PROC_DEF where 1 = 1";
}
else {
sql = "select * from FFV_ADJUST_PROC_DEF where 1 = 1";
}
if (StringUtils.isNotEmpty(ADJUST_PROC_DEF_ID_)) {
sql += " and ADJUST_PROC_DEF_ID_ = :ADJUST_PROC_DEF_ID_";
paramMap.put("ADJUST_PROC_DEF_ID_", ADJUST_PROC_DEF_ID_);
}
if (StringUtils.isNotEmpty(PROC_DEF_ID_)) {
sql += " and PROC_DEF_ID_ = :PROC_DEF_ID_";
paramMap.put("PROC_DEF_ID_", PROC_DEF_ID_);
}
return new OdSqlCriteria(sql, paramMap);
}
@Override
public List> selectAdjustProcDefByIdList(List ADJUST_PROC_DEF_ID_LIST) {
if (ADJUST_PROC_DEF_ID_LIST == null || ADJUST_PROC_DEF_ID_LIST.size() == 0) {
return new ArrayList<>();
}
StringBuilder sql = new StringBuilder(ADJUST_PROC_DEF_ID_LIST.size() * 50 + 200);
Map paramMap = new HashMap();
sql.append("select * from FFV_ADJUST_PROC_DEF where ADJUST_PROC_DEF_ID_ in (:ADJUST_PROC_DEF_ID_LIST)");
paramMap.put("ADJUST_PROC_DEF_ID_LIST", ADJUST_PROC_DEF_ID_LIST);
sql.append(" order by DECODE(ADJUST_PROC_DEF_ID_,");// 按主键列表顺序排序
for (int i = 0; i < ADJUST_PROC_DEF_ID_LIST.size(); i++) {
sql.append(" '").append(ADJUST_PROC_DEF_ID_LIST.get(i)).append("', ").append(i);
if (i < ADJUST_PROC_DEF_ID_LIST.size() - 1) {
sql.append(",");
}
else {
sql.append(")");
}
}
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(ffJdbcTemplate);
return namedParameterJdbcTemplate.queryForList(sql.toString(), paramMap);
}
@Override
public int insertAdjustProcDef(String ADJUST_PROC_DEF_ID_, String PROC_DEF_ID_, String PROC_DEF_MODEL_, InputStream PROC_DEF_DIAGRAM_FILE_, String PROC_DEF_DIAGRAM_FILE_NAME_, Integer PROC_DEF_DIAGRAM_FILE_LENGTH_, Integer PROC_DEF_DIAGRAM_WIDTH_, Integer PROC_DEF_DIAGRAM_HEIGHT_, Date CREATION_DATE_, Date UPDATE_DATE_, String OPERATOR_ID_, String OPERATOR_NAME_) {
String sql = "insert into FF_ADJUST_PROC_DEF (ADJUST_PROC_DEF_ID_, PROC_DEF_ID_, PROC_DEF_MODEL_, PROC_DEF_DIAGRAM_FILE_, PROC_DEF_DIAGRAM_FILE_NAME_, PROC_DEF_DIAGRAM_FILE_LENGTH_, PROC_DEF_DIAGRAM_WIDTH_, PROC_DEF_DIAGRAM_HEIGHT_, CREATION_DATE_, UPDATE_DATE_, OPERATOR_ID_, OPERATOR_NAME_) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
return ffJdbcTemplate.update(sql, new Object[] { ADJUST_PROC_DEF_ID_, PROC_DEF_ID_, PROC_DEF_MODEL_, new SqlLobValue(PROC_DEF_DIAGRAM_FILE_, PROC_DEF_DIAGRAM_FILE_LENGTH_, new DefaultLobHandler()), PROC_DEF_DIAGRAM_FILE_NAME_, PROC_DEF_DIAGRAM_FILE_LENGTH_, PROC_DEF_DIAGRAM_WIDTH_, PROC_DEF_DIAGRAM_HEIGHT_, CREATION_DATE_, UPDATE_DATE_, OPERATOR_ID_, OPERATOR_NAME_ }, new int[] { Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.BLOB, Types.VARCHAR, Types.INTEGER, Types.INTEGER, Types.INTEGER, Types.TIMESTAMP, Types.TIMESTAMP, Types.VARCHAR, Types.VARCHAR });
}
@Override
public int updateAdjustProcDef(String ADJUST_PROC_DEF_ID_, String PROC_DEF_MODEL_, InputStream PROC_DEF_DIAGRAM_FILE_, String PROC_DEF_DIAGRAM_FILE_NAME_, Integer PROC_DEF_DIAGRAM_FILE_LENGTH_, Integer PROC_DEF_DIAGRAM_WIDTH_, Integer PROC_DEF_DIAGRAM_HEIGHT_, Date UPDATE_DATE_, String OPERATOR_ID_, String OPERATOR_NAME_) {
String sql = "update FF_ADJUST_PROC_DEF set ADJUST_PROC_DEF_ID_ = :ADJUST_PROC_DEF_ID_";
MapSqlParameterSource parameterSource = new MapSqlParameterSource();
if (PROC_DEF_DIAGRAM_FILE_LENGTH_ != 0) {// 更新文件
sql += ", PROC_DEF_DIAGRAM_FILE_ = :PROC_DEF_DIAGRAM_FILE_, PROC_DEF_DIAGRAM_FILE_NAME_ = :PROC_DEF_DIAGRAM_FILE_NAME_, PROC_DEF_DIAGRAM_FILE_LENGTH_ = :PROC_DEF_DIAGRAM_FILE_LENGTH_";
parameterSource.addValue("PROC_DEF_DIAGRAM_FILE_", new SqlLobValue(PROC_DEF_DIAGRAM_FILE_, PROC_DEF_DIAGRAM_FILE_LENGTH_, new DefaultLobHandler()), Types.BLOB);
parameterSource.addValue("PROC_DEF_DIAGRAM_FILE_NAME_", PROC_DEF_DIAGRAM_FILE_NAME_, Types.VARCHAR);
parameterSource.addValue("PROC_DEF_DIAGRAM_FILE_LENGTH_", PROC_DEF_DIAGRAM_FILE_LENGTH_, Types.INTEGER);
}
sql += ", PROC_DEF_MODEL_ = :PROC_DEF_MODEL_, PROC_DEF_DIAGRAM_WIDTH_ = :PROC_DEF_DIAGRAM_WIDTH_, PROC_DEF_DIAGRAM_HEIGHT_ = :PROC_DEF_DIAGRAM_HEIGHT_, UPDATE_DATE_ = :UPDATE_DATE_, OPERATOR_ID_ = :OPERATOR_ID_, OPERATOR_NAME_ = :OPERATOR_NAME_ where ADJUST_PROC_DEF_ID_ = :ADJUST_PROC_DEF_ID_";
parameterSource.addValue("PROC_DEF_MODEL_", PROC_DEF_MODEL_, Types.VARCHAR);
parameterSource.addValue("PROC_DEF_DIAGRAM_WIDTH_", PROC_DEF_DIAGRAM_WIDTH_, Types.INTEGER);
parameterSource.addValue("PROC_DEF_DIAGRAM_HEIGHT_", PROC_DEF_DIAGRAM_HEIGHT_, Types.INTEGER);
parameterSource.addValue("UPDATE_DATE_", UPDATE_DATE_, Types.TIMESTAMP);
parameterSource.addValue("OPERATOR_ID_", OPERATOR_ID_, Types.VARCHAR);
parameterSource.addValue("OPERATOR_NAME_", OPERATOR_NAME_, Types.VARCHAR);
parameterSource.addValue("ADJUST_PROC_DEF_ID_", ADJUST_PROC_DEF_ID_, Types.VARCHAR);
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(ffJdbcTemplate);
return namedParameterJdbcTemplate.update(sql, parameterSource);
}
public int updateAdjustProcDefModel(String ADJUST_PROC_DEF_ID_, String PROC_DEF_MODEL_, Date UPDATE_DATE_, String OPERATOR_ID_, String OPERATOR_NAME_) {
String sql = "update FF_ADJUST_PROC_DEF set PROC_DEF_MODEL_ = ?, UPDATE_DATE_ = ?, OPERATOR_ID_ = ?, OPERATOR_NAME_ = ? where ADJUST_PROC_DEF_ID_ = ?";
return ffJdbcTemplate.update(sql, PROC_DEF_MODEL_, UPDATE_DATE_, OPERATOR_ID_, OPERATOR_NAME_, ADJUST_PROC_DEF_ID_);
}
@Override
public int deleteAdjustProcDef(String ADJUST_PROC_DEF_ID_, Date UPDATE_DATE_, String OPERATOR_ID_, String OPERATOR_NAME_) {
String sql = "delete from FF_ADJUST_PROC_DEF where ADJUST_PROC_DEF_ID_ = ?";
return ffJdbcTemplate.update(sql, ADJUST_PROC_DEF_ID_);
}
}