diff --git a/src/main/webapp/WEB-INF/jsp/_extra/user/sms/process.jsp b/src/main/webapp/WEB-INF/jsp/_extra/user/sms/process.jsp index ba0d5624..c5858518 100644 --- a/src/main/webapp/WEB-INF/jsp/_extra/user/sms/process.jsp +++ b/src/main/webapp/WEB-INF/jsp/_extra/user/sms/process.jsp @@ -5,9 +5,12 @@ <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ page import="java.util.Date"%> <%@ page import="java.io.File"%> -<%@ include file="/WEB-INF/views/_extra/dao/smsDao.jsp"%> +<%-- <%@ include file="/WEB-INF/views/_extra/dao/smsDao.jsp"%> <%@ include file="/WEB-INF/views/_extra/dao/commonFileDao.jsp"%> -<%@ include file="/WEB-INF/views/_extra/common/commonFileUtil.jsp"%> +<%@ include file="/WEB-INF/views/_extra/common/commonFileUtil.jsp"%> --%> +<%@ include file="/WEB-INF/jsp/seed/_extra/dao/smsDao.jsp"%> +<%@ include file="/WEB-INF/jsp/seed/_extra/dao/commonFileDao.jsp"%> +<%@ include file="/WEB-INF/jsp/seed/_extra/common/commonFileUtil.jsp"%> <% diff --git a/src/main/webapp/WEB-INF/jsp/main/EgovMainView.jsp b/src/main/webapp/WEB-INF/jsp/main/EgovMainView.jsp index c35c39e4..d662bc5c 100644 --- a/src/main/webapp/WEB-INF/jsp/main/EgovMainView.jsp +++ b/src/main/webapp/WEB-INF/jsp/main/EgovMainView.jsp @@ -160,14 +160,13 @@ - ${caseList.proDate}일 - ${caseList.caseDate} + ${caseList.proDate}일 diff --git a/src/main/webapp/WEB-INF/jsp/seed/_extra/common/commonFileUtil.jsp b/src/main/webapp/WEB-INF/jsp/seed/_extra/common/commonFileUtil.jsp new file mode 100644 index 00000000..5ed44254 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/seed/_extra/common/commonFileUtil.jsp @@ -0,0 +1,28 @@ +<%@ page language="java" pageEncoding="utf-8"%> +<%@ page import="java.io.File" %> +<%! +public void deleteFileArray(String deleteFileName, String deleteFilePath){ + if(deleteFileName!=null && !deleteFileName.equals("")){ + String[] deleteFileNames = deleteFileName.split(","); + int iLoop = deleteFileNames.length; + for(int i=0; i \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/seed/_extra/dao/commonFileDao.jsp b/src/main/webapp/WEB-INF/jsp/seed/_extra/dao/commonFileDao.jsp new file mode 100644 index 00000000..56f17e53 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/seed/_extra/dao/commonFileDao.jsp @@ -0,0 +1,348 @@ +<%@ page language="java" pageEncoding="utf-8"%> +<%@ page import="seed.utils.*" %> +<%@ page import="java.sql.*" %> +<%@ page import="java.util.ArrayList" %> +<%@ page import="java.util.List" %> +<%@ page import="java.util.Map" %> +<%@ page import="java.sql.SQLException" %> +<%@ page import="org.apache.commons.dbutils.DbUtils" %> +<%@ page import="org.apache.commons.dbutils.QueryRunner" %> +<%@ page import="org.apache.commons.dbutils.ResultSetHandler" %> +<%@ page import="org.apache.commons.dbutils.handlers.MapListHandler" %> +<%@ page import="org.apache.commons.dbutils.handlers.MapHandler" %> + +<%! + + public List> getExtraFileList(SeedSqlCon seedSqlCon, String dataIdx, String funcType){ + + List> dataList = null; + + StringBuffer strSql = new StringBuffer(); + strSql.append(" SELECT * \n"); + strSql.append(" FROM T_EXTRA_FILE \n"); + strSql.append(" WHERE EXTRA_DATA_IDX = ? \n"); + strSql.append(" AND EXTRA_FUNC_TYPE = ? \n"); + strSql.append(" ORDER BY EXTRA_FILE_IDX DESC \n"); + + QueryRunner runner = new QueryRunner(); + try{ + dataList = runner.query(seedSqlCon.getConnection(), strSql.toString(), new MapListHandler(), new Object[]{dataIdx, funcType}); + }catch(SQLException e){ + e.printStackTrace(); + System.out.println("getExtraFileList(SeedSqlCon seedSqlCon, String dataIdx, String funcType)"); + } + return dataList; + } + + public Map getExtraFileInfo(SeedSqlCon seedSqlCon, String fileIdx){ + + Map dataInfo = null; + + StringBuffer strSql = new StringBuffer(); + strSql.append(" SELECT * \n"); + strSql.append(" FROM T_EXTRA_FILE \n"); + strSql.append(" WHERE EXTRA_FILE_IDX = ? \n"); + + QueryRunner runner = new QueryRunner(); + try{ + dataInfo = runner.query(seedSqlCon.getConnection(), strSql.toString(), new MapHandler(), new Object[]{fileIdx}); + }catch(SQLException e){ + System.out.println("getExtraFileInfo(SeedSqlCon seedSqlCon, String fileIdx)"); + } + return dataInfo; + } + + public Map getExtraFileDataIdx(SeedSqlCon seedSqlCon){ + + Map dataInfo = null; + + StringBuffer strSql = new StringBuffer(); + //dataIdx값을 가지고 오는 방식은 시퀀스를 사용한 경우와 자동증가 값을 사용한 경우 2가지로 나누어서 처리 합니다. + SeedProperties seedProperties = new SeedProperties(); + if("oracle".equals(seedProperties.getConfigValue("database")) || "tibero".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" SELECT SEQ_EXTRA_FILE.NEXTVAL AS DATA_IDX FROM DUAL \n"); + }else if("mssql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" SELECT IDENT_CURRENT('T_EXTRA_FILE') AS DATA_IDX \n"); + }else if("mysql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" SELECT LAST_INSERT_ID() AS DATA_IDX \n"); + }else if("cubrid".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" SELECT SEQ_EXTRA_FILE.NEXTVAL AS DATA_IDX \n"); + }else if("hsqldb".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" SELECT MAX(EXTRA_FILE_IDX) AS DATA_IDX FROM T_EXTRA_FILE \n"); + } + + QueryRunner runner = new QueryRunner(); + try{ + dataInfo = runner.query(seedSqlCon.getConnection(), strSql.toString(), new MapHandler()); + }catch(SQLException e){ + System.out.println("getExtraFileDataIdx(SeedSqlCon seedSqlCon)"); + } + return dataInfo; + } + + public boolean setExtraFileInsert(SeedSqlCon seedSqlCon, Object[] objData){ + + boolean success = false; + SeedProperties seedProperties = new SeedProperties(); + + StringBuffer strSql = new StringBuffer(); + if("oracle".equals(seedProperties.getConfigValue("database")) || "tibero".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" SYSDATE, ?, ?, ?, \n"); + strSql.append(" ?, ? \n"); + strSql.append(" ) \n"); + }else if("mssql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" GETDATE(), ?, ?, ?, \n"); + strSql.append(" ?, ? \n"); + strSql.append(" ) \n"); + //file_idx의 경우 자동증가로 설정 하게 되면 insert문에서 처리 하지 않습니다. + }else if("mysql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" NOW(), ?, ?, ?, \n"); + strSql.append(" ?, ? \n"); + strSql.append(" ) \n"); + //file_idx의 경우 자동증가로 설정 하게 되면 insert문에서 처리 하지 않습니다. + //mysql 현재 시간 가지고 오는 함수중 SYSDATE()를 사용하지 않도록 합니다. + //SYSDATE() 함수는 해당 함수가 실행 되는 시점의 시간을 가지고 오기 때문에 SQL문에 있더라도 + //시간 차이가 발생 될 수 있습니다. + }else if("cubrid".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" sysdatetime, ?, ?, ?, \n"); + strSql.append(" ?, ? \n"); + strSql.append(" ) \n"); + //sysdate 와 sysdatetime 2가지가 존재 합니다. 2가지의 차이는 time 즉 시간 정보를 가지고 오냐 아니냐의 차이 입니다. + }else if("hsqldb".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + //strSql.append(" default, ?, ?, ?, \n"); + strSql.append(" null, ?, ?, ?, \n"); + strSql.append(" SYSDATE, ?, ?, ?, \n"); + strSql.append(" ?, ? \n"); + strSql.append(" ) \n"); + } + + QueryRunner runner = new QueryRunner(); + try{ + if(runner.update(seedSqlCon.getConnection(), strSql.toString(), objData)>0){ + success = true; + } + }catch(SQLException e){ + System.out.println("setExtraFileInsert(SeedSqlCon seedSqlCon, Object[] objData)"); + } + return success; + } + + public boolean setExtraFileDelete(SeedSqlCon seedSqlCon, Object[] objData){ + + boolean success = true; + + StringBuffer strSql = new StringBuffer(); + strSql.append(" DELETE FROM T_EXTRA_FILE WHERE EXTRA_FILE_IDX = ? \n"); + + QueryRunner runner = new QueryRunner(); + try{ + runner.update(seedSqlCon.getConnection(), strSql.toString(), objData); + }catch(SQLException e){ + success = false; + System.out.println("setExtraFileDelete(SeedSqlCon seedSqlCon, Object[] objData)"); + } + return success; + } + + public boolean setExtraFileFuncDelete(SeedSqlCon seedSqlCon, Object[] objData){ + + boolean success = true; + + StringBuffer strSql = new StringBuffer(); + strSql.append(" DELETE FROM T_EXTRA_FILE WHERE EXTRA_DATA_IDX = ? AND EXTRA_FUNC_TYPE = ? \n"); + + QueryRunner runner = new QueryRunner(); + try{ + runner.update(seedSqlCon.getConnection(), strSql.toString(), objData); + }catch(SQLException e){ + success = false; + System.out.println("setExtraFileFuncDelete(SeedSqlCon seedSqlCon, Object[] objData)"); + } + return success; + } + + +//fileManagement때문에 추가 +public boolean setExtraFileInsertToYN(SeedSqlCon seedSqlCon, Object[] objData){ + + boolean success = false; + SeedProperties seedProperties = new SeedProperties(); + + StringBuffer strSql = new StringBuffer(); + if("oracle".equals(seedProperties.getConfigValue("database")) || "tibero".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE, EXTRA_THUM_YN \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" SYSDATE, ?, ?, ?, \n"); + strSql.append(" ?, ?, ? \n"); + strSql.append(" ) \n"); + }else if("mssql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE, EXTRA_THUM_YN \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" GETDATE(), ?, ?, ?, \n"); + strSql.append(" ?, ?, ? \n"); + strSql.append(" ) \n"); + //file_idx의 경우 자동증가로 설정 하게 되면 insert문에서 처리 하지 않습니다. + }else if("mysql".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE, EXTRA_THUM_YN \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" NOW(), ?, ?, ?, \n"); + strSql.append(" ?, ?, ? \n"); + strSql.append(" ) \n"); + //file_idx의 경우 자동증가로 설정 하게 되면 insert문에서 처리 하지 않습니다. + //mysql 현재 시간 가지고 오는 함수중 SYSDATE()를 사용하지 않도록 합니다. + //SYSDATE() 함수는 해당 함수가 실행 되는 시점의 시간을 가지고 오기 때문에 SQL문에 있더라도 + //시간 차이가 발생 될 수 있습니다. + }else if("cubrid".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE, EXTRA_THUM_YN \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + strSql.append(" ?, ?, ?, ?, \n"); + strSql.append(" sysdatetime, ?, ?, ?, \n"); + strSql.append(" ?, ?, ? \n"); + strSql.append(" ) \n"); + //sysdate 와 sysdatetime 2가지가 존재 합니다. 2가지의 차이는 time 즉 시간 정보를 가지고 오냐 아니냐의 차이 입니다. + }else if("hsqldb".equals(seedProperties.getConfigValue("database"))){ + strSql.append(" INSERT INTO T_EXTRA_FILE \n"); + strSql.append(" ( \n"); + strSql.append(" EXTRA_FILE_IDX, EXTRA_FILE_ENCRYPTION, EXTRA_FILE_NAME, EXTRA_FILE_RENAME, \n"); + strSql.append(" EXTRA_FILE_REGDATE, EXTRA_FILE_SIZE, EXTRA_FILE_TEXT, EXTRA_FILE_TYPE, \n"); + strSql.append(" EXTRA_DATA_IDX, EXTRA_FUNC_TYPE, EXTRA_THUM_YN \n"); + strSql.append(" ) \n"); + strSql.append(" VALUES \n"); + strSql.append(" ( \n"); + //strSql.append(" default, ?, ?, ?, \n"); + strSql.append(" null, ?, ?, ?, \n"); + strSql.append(" SYSDATE, ?, ?, ?, \n"); + strSql.append(" ?, ?, ? \n"); + strSql.append(" ) \n"); + } + + QueryRunner runner = new QueryRunner(); + try{ + if(runner.update(seedSqlCon.getConnection(), strSql.toString(), objData)>0){ + success = true; + } + }catch(SQLException e){ + System.out.println("setExtraFileInsertToYN(SeedSqlCon seedSqlCon, Object[] objData)"); + } + return success; + } + +//fileManagement때문에 추가 + +public List> getExtraFileLisToYN(SeedSqlCon seedSqlCon, String dataIdx, String funcType){ + + List> dataList = null; + + StringBuffer strSql = new StringBuffer(); + strSql.append(" SELECT * \n"); + strSql.append(" FROM T_EXTRA_FILE \n"); + strSql.append(" WHERE EXTRA_DATA_IDX = ? \n"); + strSql.append(" AND EXTRA_FUNC_TYPE = ? \n"); + strSql.append(" ORDER BY EXTRA_FILE_IDX DESC \n"); + + QueryRunner runner = new QueryRunner(); + try{ + dataList = runner.query(seedSqlCon.getConnection(), strSql.toString(), new MapListHandler(), new Object[]{dataIdx, funcType}); + }catch(SQLException e){ + e.printStackTrace(); + System.out.println("getExtraFileList(SeedSqlCon seedSqlCon, String dataIdx, String funcType)"); + } + return dataList; + } + +//공개범위 업데이트 추가 + +public boolean setExtraFileScop(SeedSqlCon seedSqlCon, Object[] objData){ + boolean isSuccess = false; + + StringBuffer strSql = new StringBuffer(); + + strSql.append("UPDATE T_EXTRA_FILE SET \n"); + strSql.append("EXTRA_THUM_YN = ? \n"); + strSql.append("WHERE EXTRA_FILE_IDX = ? \n"); + + QueryRunner runner = new QueryRunner(); + + try{ + if(runner.update(seedSqlCon.getConnection(), strSql.toString(), objData)>0){ + isSuccess = true; + } + }catch(SQLException e){ + System.out.println("setExtraFileScop(SeedSqlCon seedSqlCon, Object[] objData) : " + e.getMessage()); + } + + + return isSuccess; +} +%> \ No newline at end of file