관리자 기소유예 - 첨부파일기능, 관할청 공통코드 추가
This commit is contained in:
parent
79c001f4b6
commit
b6e4effa14
File diff suppressed because it is too large
Load Diff
@ -1,280 +1,280 @@
|
|||||||
package kcc.let.utl.fcc.service;
|
package kcc.let.utl.fcc.service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* paging 에 대한 Util 클래스
|
* paging 에 대한 Util 클래스
|
||||||
* @author 사업기술본부 조용준(ITN)
|
* @author 사업기술본부 조용준(ITN)
|
||||||
* @since 2021.07.16
|
* @since 2021.07.16
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @see
|
* @see
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
* << 개정이력(Modification Information) >>
|
* << 개정이력(Modification Information) >>
|
||||||
*
|
*
|
||||||
* 수정일 수정자 수정내용
|
* 수정일 수정자 수정내용
|
||||||
* ------- -------- ---------------------------
|
* ------- -------- ---------------------------
|
||||||
* 2021.07.16 조용준 최초 생성 *
|
* 2021.07.16 조용준 최초 생성 *
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
@Component("vEPagingUtil")
|
@Component("vEPagingUtil")
|
||||||
public class VEPagingUtil {
|
public class VEPagingUtil {
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(VEPagingUtil.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(VEPagingUtil.class);
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// VEInstrAsgnmVO paging
|
// VEInstrAsgnmVO paging
|
||||||
//
|
//
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
public PaginationInfo setPagingStep1_VEInstrAsgnmVO(
|
public PaginationInfo setPagingStep1_VEInstrAsgnmVO(
|
||||||
PaginationInfo p_paginationInfo,
|
PaginationInfo p_paginationInfo,
|
||||||
VEInstrAsgnmVO p_VEInstrAsgnmVO
|
VEInstrAsgnmVO p_VEInstrAsgnmVO
|
||||||
){
|
){
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep1_VEInstrAsgnmVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep1_VEInstrAsgnmVO()");
|
||||||
|
|
||||||
// pageing step1
|
// pageing step1
|
||||||
p_paginationInfo.setCurrentPageNo(p_VEInstrAsgnmVO.getPageIndex());
|
p_paginationInfo.setCurrentPageNo(p_VEInstrAsgnmVO.getPageIndex());
|
||||||
p_paginationInfo.setRecordCountPerPage(p_VEInstrAsgnmVO.getPageUnit());
|
p_paginationInfo.setRecordCountPerPage(p_VEInstrAsgnmVO.getPageUnit());
|
||||||
p_paginationInfo.setPageSize(p_VEInstrAsgnmVO.getPageSize());
|
p_paginationInfo.setPageSize(p_VEInstrAsgnmVO.getPageSize());
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
public VEInstrAsgnmVO setPagingStep2_VEInstrAsgnmVO(
|
public VEInstrAsgnmVO setPagingStep2_VEInstrAsgnmVO(
|
||||||
VEInstrAsgnmVO p_VEInstrAsgnmVO
|
VEInstrAsgnmVO p_VEInstrAsgnmVO
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep2_VEInstrAsgnmVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep2_VEInstrAsgnmVO()");
|
||||||
|
|
||||||
// pageing step2
|
// pageing step2
|
||||||
p_VEInstrAsgnmVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
p_VEInstrAsgnmVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
p_VEInstrAsgnmVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
p_VEInstrAsgnmVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
p_VEInstrAsgnmVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
p_VEInstrAsgnmVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
if("".equals(p_VEInstrAsgnmVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
if("".equals(p_VEInstrAsgnmVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
p_VEInstrAsgnmVO.setSearchSortCnd("prcs_ord");
|
p_VEInstrAsgnmVO.setSearchSortCnd("prcs_ord");
|
||||||
p_VEInstrAsgnmVO.setSearchSortOrd("desc");
|
p_VEInstrAsgnmVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_VEInstrAsgnmVO;
|
return p_VEInstrAsgnmVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
public PaginationInfo setPagingStep3_VEInstrAsgnmVO(
|
public PaginationInfo setPagingStep3_VEInstrAsgnmVO(
|
||||||
List<VEInstrAsgnmVO> p_VEInstrAsgnmVOList
|
List<VEInstrAsgnmVO> p_VEInstrAsgnmVOList
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep3_VEInstrAsgnmVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep3_VEInstrAsgnmVO()");
|
||||||
|
|
||||||
// pageing step3
|
// pageing step3
|
||||||
int totCnt = 0;
|
int totCnt = 0;
|
||||||
if(p_VEInstrAsgnmVOList.size() > 0) totCnt = p_VEInstrAsgnmVOList.get(0).getTotCnt();
|
if(p_VEInstrAsgnmVOList.size() > 0) totCnt = p_VEInstrAsgnmVOList.get(0).getTotCnt();
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// VELctrDetailVO paging
|
// VELctrDetailVO paging
|
||||||
//
|
//
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
public PaginationInfo setPagingStep1_VELctrDetailVO(
|
public PaginationInfo setPagingStep1_VELctrDetailVO(
|
||||||
PaginationInfo p_paginationInfo,
|
PaginationInfo p_paginationInfo,
|
||||||
VELctrDetailVO p_VELctrDetailVO
|
VELctrDetailVO p_VELctrDetailVO
|
||||||
){
|
){
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep1_VELctrDetailVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep1_VELctrDetailVO()");
|
||||||
|
|
||||||
// pageing step1
|
// pageing step1
|
||||||
p_paginationInfo.setCurrentPageNo(p_VELctrDetailVO.getPageIndex());
|
p_paginationInfo.setCurrentPageNo(p_VELctrDetailVO.getPageIndex());
|
||||||
p_paginationInfo.setRecordCountPerPage(p_VELctrDetailVO.getPageUnit());
|
p_paginationInfo.setRecordCountPerPage(p_VELctrDetailVO.getPageUnit());
|
||||||
p_paginationInfo.setPageSize(p_VELctrDetailVO.getPageSize());
|
p_paginationInfo.setPageSize(p_VELctrDetailVO.getPageSize());
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
public VELctrDetailVO setPagingStep2_VELctrDetailVO(
|
public VELctrDetailVO setPagingStep2_VELctrDetailVO(
|
||||||
VELctrDetailVO p_VELctrDetailVO
|
VELctrDetailVO p_VELctrDetailVO
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep2_VEInstrAsgnmVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep2_VEInstrAsgnmVO()");
|
||||||
|
|
||||||
// pageing step2
|
// pageing step2
|
||||||
p_VELctrDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
p_VELctrDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
p_VELctrDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
p_VELctrDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
p_VELctrDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
p_VELctrDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
if("".equals(p_VELctrDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
if("".equals(p_VELctrDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
p_VELctrDetailVO.setSearchSortCnd("prcs_ord");
|
p_VELctrDetailVO.setSearchSortCnd("prcs_ord");
|
||||||
p_VELctrDetailVO.setSearchSortOrd("desc");
|
p_VELctrDetailVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_VELctrDetailVO;
|
return p_VELctrDetailVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
public PaginationInfo setPagingStep3_VELctrDetailVO(
|
public PaginationInfo setPagingStep3_VELctrDetailVO(
|
||||||
List<VELctrDetailVO> p_VELctrDetailVOList
|
List<VELctrDetailVO> p_VELctrDetailVOList
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep3_VELctrDetailVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep3_VELctrDetailVO()");
|
||||||
|
|
||||||
// pageing step3
|
// pageing step3
|
||||||
int totCnt = 0;
|
int totCnt = 0;
|
||||||
if(p_VELctrDetailVOList.size() > 0) totCnt = p_VELctrDetailVOList.get(0).getTotCnt();
|
if(p_VELctrDetailVOList.size() > 0) totCnt = p_VELctrDetailVOList.get(0).getTotCnt();
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// VEInstrDetailVO paging
|
// VEInstrDetailVO paging
|
||||||
//
|
//
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
public PaginationInfo setPagingStep1_VEInstrDetailVO(
|
public PaginationInfo setPagingStep1_VEInstrDetailVO(
|
||||||
PaginationInfo p_paginationInfo,
|
PaginationInfo p_paginationInfo,
|
||||||
VEInstrDetailVO p_VEInstrDetailVO
|
VEInstrDetailVO p_VEInstrDetailVO
|
||||||
){
|
){
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep1_VEInstrDetailVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep1_VEInstrDetailVO()");
|
||||||
|
|
||||||
// pageing step1
|
// pageing step1
|
||||||
p_paginationInfo.setCurrentPageNo(p_VEInstrDetailVO.getPageIndex());
|
p_paginationInfo.setCurrentPageNo(p_VEInstrDetailVO.getPageIndex());
|
||||||
p_paginationInfo.setRecordCountPerPage(p_VEInstrDetailVO.getPageUnit());
|
p_paginationInfo.setRecordCountPerPage(p_VEInstrDetailVO.getPageUnit());
|
||||||
p_paginationInfo.setPageSize(p_VEInstrDetailVO.getPageSize());
|
p_paginationInfo.setPageSize(p_VEInstrDetailVO.getPageSize());
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
public VEInstrDetailVO setPagingStep2_VEInstrDetailVO(
|
public VEInstrDetailVO setPagingStep2_VEInstrDetailVO(
|
||||||
VEInstrDetailVO p_VEInstrDetailVO
|
VEInstrDetailVO p_VEInstrDetailVO
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep2_p_VEInstrDetailVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep2_p_VEInstrDetailVO()");
|
||||||
|
|
||||||
// pageing step2
|
// pageing step2
|
||||||
p_VEInstrDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
p_VEInstrDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
p_VEInstrDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
p_VEInstrDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
p_VEInstrDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
p_VEInstrDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
if("".equals(p_VEInstrDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
if("".equals(p_VEInstrDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
p_VEInstrDetailVO.setSearchSortCnd("prcs_ord");
|
p_VEInstrDetailVO.setSearchSortCnd("prcs_ord");
|
||||||
p_VEInstrDetailVO.setSearchSortOrd("desc");
|
p_VEInstrDetailVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_VEInstrDetailVO;
|
return p_VEInstrDetailVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
public PaginationInfo setPagingStep3_VEInstrDetailVO(
|
public PaginationInfo setPagingStep3_VEInstrDetailVO(
|
||||||
List<VEInstrDetailVO> p_VEInstrDetailVO
|
List<VEInstrDetailVO> p_VEInstrDetailVO
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
|
|
||||||
try {
|
try {
|
||||||
LOGGER.debug("VEPagingUtil-setPagingStep3_VEInstrDetailVO()");
|
LOGGER.debug("VEPagingUtil-setPagingStep3_VEInstrDetailVO()");
|
||||||
|
|
||||||
// pageing step3
|
// pageing step3
|
||||||
int totCnt = 0;
|
int totCnt = 0;
|
||||||
if(p_VEInstrDetailVO.size() > 0) totCnt = p_VEInstrDetailVO.get(0).getTotCnt();
|
if(p_VEInstrDetailVO.size() > 0) totCnt = p_VEInstrDetailVO.get(0).getTotCnt();
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
} catch(IllegalArgumentException e) {
|
} catch(IllegalArgumentException e) {
|
||||||
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
LOGGER.error("[IllegalArgumentException] Try/Catch...usingParameters Runing : "+ e.getMessage());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
LOGGER.error("[" + e.getClass() +"] :" + e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,498 +1,498 @@
|
|||||||
package kcc.ve.oprtn.adultVisitEdu.eduRsltMng.web;
|
package kcc.ve.oprtn.adultVisitEdu.eduRsltMng.web;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpSession;
|
import javax.servlet.http.HttpSession;
|
||||||
|
|
||||||
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
|
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
|
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import kcc.com.cmm.LoginVO;
|
import kcc.com.cmm.LoginVO;
|
||||||
import kcc.com.cmm.service.EgovCmmUseService;
|
import kcc.com.cmm.service.EgovCmmUseService;
|
||||||
import kcc.com.cmm.service.EgovFileMngService;
|
import kcc.com.cmm.service.EgovFileMngService;
|
||||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||||
import kcc.com.cmm.service.FileVO;
|
import kcc.com.cmm.service.FileVO;
|
||||||
import kcc.com.cmm.spring.data.util.ExcelUtil;
|
import kcc.com.cmm.spring.data.util.ExcelUtil;
|
||||||
import kcc.com.cmm.util.IpUtil;
|
import kcc.com.cmm.util.IpUtil;
|
||||||
import kcc.com.cmm.util.StringUtil;
|
import kcc.com.cmm.util.StringUtil;
|
||||||
import kcc.com.utl.user.service.CheckAdrProcessUtil;
|
import kcc.com.utl.user.service.CheckAdrProcessUtil;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
|
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
|
||||||
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
|
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
|
||||||
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
||||||
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
import kcc.ve.cmm.VeConstants;
|
import kcc.ve.cmm.VeConstants;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduPnltyService;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduPnltyService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService;
|
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService;
|
||||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiVO;
|
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiVO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육보고관리(관리자-성인찾아가는저작권교육)
|
* 교육보고관리(관리자-성인찾아가는저작권교육)
|
||||||
* 교육보고관리에 관한 controller 클래스를 정의한다.
|
* 교육보고관리에 관한 controller 클래스를 정의한다.
|
||||||
* @author 조용준
|
* @author 조용준
|
||||||
* @since 2021.12.16
|
* @since 2021.12.16
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @see
|
* @see
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
* << 개정이력(Modification Information) >>
|
* << 개정이력(Modification Information) >>
|
||||||
*
|
*
|
||||||
* 수정일 수정자 수정내용
|
* 수정일 수정자 수정내용
|
||||||
* ------- -------- ---------------------------
|
* ------- -------- ---------------------------
|
||||||
* 2021.12.16 조용준 최초 생성
|
* 2021.12.16 조용준 최초 생성
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@RequestMapping("/kccadr/oprtn/adultVisitEdu")
|
@RequestMapping("/kccadr/oprtn/adultVisitEdu")
|
||||||
public class EduRsltMngAdultController {
|
public class EduRsltMngAdultController {
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(EduRsltMngAdultController.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(EduRsltMngAdultController.class);
|
||||||
|
|
||||||
//로그인 체크 util
|
//로그인 체크 util
|
||||||
@Resource(name = "checkLoginUtil")
|
@Resource(name = "checkLoginUtil")
|
||||||
private CheckLoginUtil checkLoginUtil;
|
private CheckLoginUtil checkLoginUtil;
|
||||||
|
|
||||||
//과정 관리
|
//과정 관리
|
||||||
@Resource(name = "vEPrcsService")
|
@Resource(name = "vEPrcsService")
|
||||||
private VEPrcsService vEPrcsService;
|
private VEPrcsService vEPrcsService;
|
||||||
|
|
||||||
//신청과정 관리
|
//신청과정 관리
|
||||||
@Resource(name = "vEEduMIXService")
|
@Resource(name = "vEEduMIXService")
|
||||||
private VEEduMIXService vEEduMIXService;
|
private VEEduMIXService vEEduMIXService;
|
||||||
|
|
||||||
//교육신청
|
//교육신청
|
||||||
@Resource(name = "vEEduAplctService")
|
@Resource(name = "vEEduAplctService")
|
||||||
private VEEduAplctService vEEduAplctService;
|
private VEEduAplctService vEEduAplctService;
|
||||||
|
|
||||||
//교육과정신청
|
//교육과정신청
|
||||||
@Resource(name = "vEPrcsMIXService")
|
@Resource(name = "vEPrcsMIXService")
|
||||||
private VEPrcsMIXService vEPrcsMIXService;
|
private VEPrcsMIXService vEPrcsMIXService;
|
||||||
|
|
||||||
//차시
|
//차시
|
||||||
@Resource(name = "vEEduChasiService")
|
@Resource(name = "vEEduChasiService")
|
||||||
private VEEduChasiService vVEEduChasiService;
|
private VEEduChasiService vVEEduChasiService;
|
||||||
|
|
||||||
// eGov 공통코드
|
// eGov 공통코드
|
||||||
@Resource(name = "EgovCmmUseService")
|
@Resource(name = "EgovCmmUseService")
|
||||||
private EgovCmmUseService cmmUseService;
|
private EgovCmmUseService cmmUseService;
|
||||||
|
|
||||||
@Resource(name = "EgovFileMngService")
|
@Resource(name = "EgovFileMngService")
|
||||||
private EgovFileMngService fileService;
|
private EgovFileMngService fileService;
|
||||||
|
|
||||||
// global 프로퍼티
|
// global 프로퍼티
|
||||||
@Resource(name="globalSettings")
|
@Resource(name="globalSettings")
|
||||||
protected Properties propertiesService;
|
protected Properties propertiesService;
|
||||||
|
|
||||||
//첨부파일 경로, realPath 설정
|
//첨부파일 경로, realPath 설정
|
||||||
@Resource(name="EgovFileMngUtil")
|
@Resource(name="EgovFileMngUtil")
|
||||||
private EgovFileMngUtil fileUtil;
|
private EgovFileMngUtil fileUtil;
|
||||||
|
|
||||||
// 첨부파일 정보
|
// 첨부파일 정보
|
||||||
@Resource(name="EgovFileMngService")
|
@Resource(name="EgovFileMngService")
|
||||||
private EgovFileMngService fileMngService;
|
private EgovFileMngService fileMngService;
|
||||||
|
|
||||||
//암복호화 유틸
|
//암복호화 유틸
|
||||||
@Resource(name = "egovCryptoUtil")
|
@Resource(name = "egovCryptoUtil")
|
||||||
EgovCryptoUtil egovCryptoUtil;
|
EgovCryptoUtil egovCryptoUtil;
|
||||||
|
|
||||||
|
|
||||||
@Resource(name="KccadrMgrUdtService")
|
@Resource(name="KccadrMgrUdtService")
|
||||||
private KccadrMgrUdtService kccadrMgrUdtService;
|
private KccadrMgrUdtService kccadrMgrUdtService;
|
||||||
|
|
||||||
// 교육신청 서비스단
|
// 교육신청 서비스단
|
||||||
@Resource(name = "checkAdrProcessUtil")
|
@Resource(name = "checkAdrProcessUtil")
|
||||||
private CheckAdrProcessUtil checkAdrProcessUtil;
|
private CheckAdrProcessUtil checkAdrProcessUtil;
|
||||||
|
|
||||||
// 교육패널티
|
// 교육패널티
|
||||||
@Resource(name = "vEEduPnltyService")
|
@Resource(name = "vEEduPnltyService")
|
||||||
private VEEduPnltyService vEEduPnltyService;
|
private VEEduPnltyService vEEduPnltyService;
|
||||||
|
|
||||||
// 강의배정정보
|
// 강의배정정보
|
||||||
@Resource(name = "vEAsgnmMIXService")
|
@Resource(name = "vEAsgnmMIXService")
|
||||||
private VEAsgnmMIXService vEAsgnmMIXService;
|
private VEAsgnmMIXService vEAsgnmMIXService;
|
||||||
|
|
||||||
@Resource(name = "egovQustnrRespondInfoService")
|
@Resource(name = "egovQustnrRespondInfoService")
|
||||||
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
||||||
|
|
||||||
//NOTI 서비스
|
//NOTI 서비스
|
||||||
@Resource(name="vEAsgnmNotiService")
|
@Resource(name="vEAsgnmNotiService")
|
||||||
private VEAsgnmNotiService vEAsgnmNotiService;
|
private VEAsgnmNotiService vEAsgnmNotiService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육결과관리 목록 화면
|
* 교육결과관리 목록 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduRsltMngList.do")
|
@RequestMapping("eduRsltMngList.do")
|
||||||
public String eduRsltMngList(
|
public String eduRsltMngList(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, HttpSession session
|
, HttpSession session
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
//String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||||
//if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
//if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||||
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
// 검색자가 '강사이름'일 때, 암호화하여 검색자에 set한다.
|
// 검색자가 '강사이름'일 때, 암호화하여 검색자에 set한다.
|
||||||
if("2".equals(vEEduAplctVO.getSearchCondition())) {
|
if("2".equals(vEEduAplctVO.getSearchCondition())) {
|
||||||
vEEduAplctVO.setSearchKeyword(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchKeyword()));
|
vEEduAplctVO.setSearchKeyword(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchKeyword()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//1.pageing step1
|
//1.pageing step1
|
||||||
PaginationInfo paginationInfo = this.setPagingStep1(vEEduAplctVO);
|
PaginationInfo paginationInfo = this.setPagingStep1(vEEduAplctVO);
|
||||||
|
|
||||||
//2. pageing step2
|
//2. pageing step2
|
||||||
vEEduAplctVO = this.setPagingStep2(vEEduAplctVO, paginationInfo);
|
vEEduAplctVO = this.setPagingStep2(vEEduAplctVO, paginationInfo);
|
||||||
vEEduAplctVO.setInstrDiv("20"); // 성인 교육 코드
|
vEEduAplctVO.setInstrDiv("20"); // 성인 교육 코드
|
||||||
vEEduAplctVO.setLctrDivCd("20");
|
vEEduAplctVO.setLctrDivCd("20");
|
||||||
vEEduAplctVO.setAprvlCd("60");
|
vEEduAplctVO.setAprvlCd("60");
|
||||||
vEEduAplctVO.setNotiUserId(user.getUniqId());
|
vEEduAplctVO.setNotiUserId(user.getUniqId());
|
||||||
vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString());
|
vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||||
|
|
||||||
vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
|
|
||||||
|
|
||||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||||
VEEduAplctVO vo = new VEEduAplctVO();
|
VEEduAplctVO vo = new VEEduAplctVO();
|
||||||
for(int i=0; i < vEEduAplctVOList.size(); i++) {
|
for(int i=0; i < vEEduAplctVOList.size(); i++) {
|
||||||
vo = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVOList.get(i));
|
vo = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVOList.get(i));
|
||||||
vEEduAplctVOList.get(i).setChrgNm(vo.getChrgNm());
|
vEEduAplctVOList.get(i).setChrgNm(vo.getChrgNm());
|
||||||
}
|
}
|
||||||
|
|
||||||
//3.pageing step3
|
//3.pageing step3
|
||||||
paginationInfo = this.setPagingStep3(vEEduAplctVOList, paginationInfo);
|
paginationInfo = this.setPagingStep3(vEEduAplctVOList, paginationInfo);
|
||||||
|
|
||||||
// 검색자가 '강사이름'일 때, 복호화하여 검색자에 set 한다.
|
// 검색자가 '강사이름'일 때, 복호화하여 검색자에 set 한다.
|
||||||
if("2".equals(vEEduAplctVO.getSearchCondition())) {
|
if("2".equals(vEEduAplctVO.getSearchCondition())) {
|
||||||
vEEduAplctVO.setSearchKeyword(egovCryptoUtil.decrypt(vEEduAplctVO.getSearchKeyword()));
|
vEEduAplctVO.setSearchKeyword(egovCryptoUtil.decrypt(vEEduAplctVO.getSearchKeyword()));
|
||||||
}
|
}
|
||||||
|
|
||||||
model.addAttribute("paginationInfo", paginationInfo);
|
model.addAttribute("paginationInfo", paginationInfo);
|
||||||
|
|
||||||
|
|
||||||
//대상 리스트, 페이징 정보 전달
|
//대상 리스트, 페이징 정보 전달
|
||||||
model.addAttribute("list", vEEduAplctVOList);
|
model.addAttribute("list", vEEduAplctVOList);
|
||||||
|
|
||||||
|
|
||||||
//대상 리스트, 페이징 정보 전달
|
//대상 리스트, 페이징 정보 전달
|
||||||
//model.addAttribute("resultList", vEEduAplctVOList);
|
//model.addAttribute("resultList", vEEduAplctVOList);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduRsltMngList";
|
return "oprtn/adultVisitEdu/eduRsltMngList";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육결과관리 등록 화면
|
* 교육결과관리 등록 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduRsltMngReg.do")
|
@RequestMapping("eduRsltMngReg.do")
|
||||||
public String eduRsltMngReg(
|
public String eduRsltMngReg(
|
||||||
@ModelAttribute("searchVO") AdjReqMgrVO adjReqMgrVO
|
@ModelAttribute("searchVO") AdjReqMgrVO adjReqMgrVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||||
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduRsltMngReg";
|
return "oprtn/adultVisitEdu/eduRsltMngReg";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육결과관리 상세 화면
|
* 교육결과관리 상세 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduRsltMngDetail.do")
|
@RequestMapping("eduRsltMngDetail.do")
|
||||||
public String eduRsltMngDetail(
|
public String eduRsltMngDetail(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
, HttpSession session
|
, HttpSession session
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||||
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
String chasiOrd = vEEduAplctVO.getEduChasiOrd();
|
String chasiOrd = vEEduAplctVO.getEduChasiOrd();
|
||||||
|
|
||||||
//기본데이터 불러오기
|
//기본데이터 불러오기
|
||||||
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||||
vEEduAplctVO.setEduChasiOrd(chasiOrd);
|
vEEduAplctVO.setEduChasiOrd(chasiOrd);
|
||||||
|
|
||||||
//데이터 복호화 - VO 단위로 만들어서 사용
|
//데이터 복호화 - VO 단위로 만들어서 사용
|
||||||
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
|
|
||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 과정 리스트
|
//사용자 교육신청 과정 리스트
|
||||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||||
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
||||||
model.addAttribute("list", vEPrcsDetailVOList);
|
model.addAttribute("list", vEPrcsDetailVOList);
|
||||||
|
|
||||||
//사용자 교육신청 차시 리스트
|
//사용자 교육신청 차시 리스트
|
||||||
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
|
|
||||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);// 청소년교육 코드
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);// 청소년교육 코드
|
||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
vEEduChasiVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
vEEduChasiVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
||||||
|
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
||||||
VEEduChasiVO vo = new VEEduChasiVO();
|
VEEduChasiVO vo = new VEEduChasiVO();
|
||||||
for(int i=0; i < vEEduChasiVOList.size(); i++) {
|
for(int i=0; i < vEEduChasiVOList.size(); i++) {
|
||||||
vo = egovCryptoUtil.decryptVEEduChasiVO(vEEduChasiVOList.get(i));
|
vo = egovCryptoUtil.decryptVEEduChasiVO(vEEduChasiVOList.get(i));
|
||||||
vEEduChasiVOList.get(i).setInstrNm(vo.getInstrNm());
|
vEEduChasiVOList.get(i).setInstrNm(vo.getInstrNm());
|
||||||
}
|
}
|
||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
// 설문조사 정보
|
// 설문조사 정보
|
||||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||||
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_20);
|
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_20);
|
||||||
QustnrRespondInfoVO info = egovQustnrRespondInfoService.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
|
QustnrRespondInfoVO info = egovQustnrRespondInfoService.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
|
||||||
|
|
||||||
// 설문조사 문항리스트 조회
|
// 설문조사 문항리스트 조회
|
||||||
Map <String, Object> commandMap =new HashMap<String, Object>();
|
Map <String, Object> commandMap =new HashMap<String, Object>();
|
||||||
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
|
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
|
||||||
commandMap.put("qestnrId",info.getQestnrId()); //문제 ID
|
commandMap.put("qestnrId",info.getQestnrId()); //문제 ID
|
||||||
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
||||||
|
|
||||||
// 설문조사 결과 조회
|
// 설문조사 결과 조회
|
||||||
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
||||||
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList(qustnrRespondInfoVO);
|
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList(qustnrRespondInfoVO);
|
||||||
if(chasiSrvyList.size() > 0) {
|
if(chasiSrvyList.size() > 0) {
|
||||||
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
||||||
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
||||||
model.addAttribute("chasiSrvyList",chasiSrvyList);
|
model.addAttribute("chasiSrvyList",chasiSrvyList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
System.out.println("------------------------");
|
System.out.println("------------------------");
|
||||||
//전체 차시 배정 강사 정보
|
//전체 차시 배정 강사 정보
|
||||||
vEInstrAsgnmVO.setEduChasiOrd("");
|
vEInstrAsgnmVO.setEduChasiOrd("");
|
||||||
List<VEInstrAsgnmVO> selectAsgnmInstrList = vEAsgnmMIXService.selectAsgnmInstrList(vEInstrAsgnmVO);
|
List<VEInstrAsgnmVO> selectAsgnmInstrList = vEAsgnmMIXService.selectAsgnmInstrList(vEInstrAsgnmVO);
|
||||||
model.addAttribute("listChasi", selectAsgnmInstrList);
|
model.addAttribute("listChasi", selectAsgnmInstrList);
|
||||||
System.out.println("------------------------=======================");
|
System.out.println("------------------------=======================");
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//20220223 우영두 추가
|
//20220223 우영두 추가
|
||||||
//강의내역 NOTI 입력
|
//강의내역 NOTI 입력
|
||||||
VEAsgnmNotiVO vEAsgnmNotiVO = new VEAsgnmNotiVO();
|
VEAsgnmNotiVO vEAsgnmNotiVO = new VEAsgnmNotiVO();
|
||||||
String tblUnitOrd = "";
|
String tblUnitOrd = "";
|
||||||
if(StringUtil.isNotEmpty(vEEduAplctVO.getEduChasiOrd())) {
|
if(StringUtil.isNotEmpty(vEEduAplctVO.getEduChasiOrd())) {
|
||||||
tblUnitOrd = vEEduAplctVO.getEduChasiOrd();
|
tblUnitOrd = vEEduAplctVO.getEduChasiOrd();
|
||||||
}else {
|
}else {
|
||||||
tblUnitOrd = vEEduAplctVO.getEduAplctOrd();
|
tblUnitOrd = vEEduAplctVO.getEduAplctOrd();
|
||||||
}
|
}
|
||||||
|
|
||||||
vEAsgnmNotiVO.setTblUniqOrd(tblUnitOrd);
|
vEAsgnmNotiVO.setTblUniqOrd(tblUnitOrd);
|
||||||
vEAsgnmNotiVO.setFrstRegisterId(user.getUniqId());
|
vEAsgnmNotiVO.setFrstRegisterId(user.getUniqId());
|
||||||
vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString());
|
vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||||
vEAsgnmNotiVO.setUrlPath(IpUtil.getRequestURI(request));
|
vEAsgnmNotiVO.setUrlPath(IpUtil.getRequestURI(request));
|
||||||
|
|
||||||
vEAsgnmNotiService.insertAsgnmNotiInfo(vEAsgnmNotiVO);
|
vEAsgnmNotiService.insertAsgnmNotiInfo(vEAsgnmNotiVO);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduRsltMngDetail";
|
return "oprtn/adultVisitEdu/eduRsltMngDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육결과반려 처리 팝업
|
* 교육결과반려 처리 팝업
|
||||||
*/
|
*/
|
||||||
@RequestMapping("popup/eduRsltMngDetailRfslSecurityPopup.do")
|
@RequestMapping("popup/eduRsltMngDetailRfslSecurityPopup.do")
|
||||||
public String eduRsltMngDetailRfslSecurityPopup(
|
public String eduRsltMngDetailRfslSecurityPopup(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
//기본데이터 불러오기
|
//기본데이터 불러오기
|
||||||
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||||
|
|
||||||
//데이터 복호화 - VO 단위로 만들어서 사용
|
//데이터 복호화 - VO 단위로 만들어서 사용
|
||||||
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
|
|
||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 과정 리스트
|
//사용자 교육신청 과정 리스트
|
||||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||||
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
||||||
|
|
||||||
model.addAttribute("list", vEPrcsDetailVOList);
|
model.addAttribute("list", vEPrcsDetailVOList);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 차시 리스트
|
//사용자 교육신청 차시 리스트
|
||||||
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/popup/eduRsltMngDetailRfslSecurityPopup";
|
return "oprtn/adultVisitEdu/popup/eduRsltMngDetailRfslSecurityPopup";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@SuppressWarnings("rawtypes")
|
@SuppressWarnings("rawtypes")
|
||||||
@RequestMapping(value = "eduRsltSrvyExcelDownLoad.do")
|
@RequestMapping(value = "eduRsltSrvyExcelDownLoad.do")
|
||||||
public ModelAndView eduRsltSrvyExcelDownLoad(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO, ModelMap model) throws Exception {
|
public ModelAndView eduRsltSrvyExcelDownLoad(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO, ModelMap model) throws Exception {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// 설문조사 정보
|
// 설문조사 정보
|
||||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||||
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
||||||
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyExcelList(qustnrRespondInfoVO);
|
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyExcelList(qustnrRespondInfoVO);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
System.out.println("out-list-1");
|
System.out.println("out-list-1");
|
||||||
|
|
||||||
List<Object> excelData = new ArrayList<>();
|
List<Object> excelData = new ArrayList<>();
|
||||||
excelData.addAll(chasiSrvyList);
|
excelData.addAll(chasiSrvyList);
|
||||||
|
|
||||||
// 세팅값
|
// 세팅값
|
||||||
String title = "성인 찾아가는 저작권 교육";
|
String title = "성인 찾아가는 저작권 교육";
|
||||||
int[] width = {
|
int[] width = {
|
||||||
18000, 4000, 4000, 4000, 4000, 4000
|
18000, 4000, 4000, 4000, 4000, 4000
|
||||||
}; // 너비
|
}; // 너비
|
||||||
|
|
||||||
//33개 항목
|
//33개 항목
|
||||||
String[] header = {
|
String[] header = {
|
||||||
"평가문항", "매우만족", "만족", "보통", "불만족", "매우불만족"
|
"평가문항", "매우만족", "만족", "보통", "불만족", "매우불만족"
|
||||||
};
|
};
|
||||||
|
|
||||||
String[] order = {
|
String[] order = {
|
||||||
"RespondAnswerCn","VerySatisfied","Satisfied","Neither","Dissatisfied","VeryDissatisfied"
|
"RespondAnswerCn","VerySatisfied","Satisfied","Neither","Dissatisfied","VeryDissatisfied"
|
||||||
};
|
};
|
||||||
|
|
||||||
// 호출
|
// 호출
|
||||||
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(excelData , header, order, width, title);
|
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(excelData , header, order, width, title);
|
||||||
model.addAttribute("locale", Locale.KOREA);
|
model.addAttribute("locale", Locale.KOREA);
|
||||||
model.addAttribute("workbook", workbook);
|
model.addAttribute("workbook", workbook);
|
||||||
model.addAttribute("workbookName", title);
|
model.addAttribute("workbookName", title);
|
||||||
|
|
||||||
}catch(Exception ep) {
|
}catch(Exception ep) {
|
||||||
ep.getStackTrace();
|
ep.getStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
modelAndView.setViewName("excelDownloadView");
|
modelAndView.setViewName("excelDownloadView");
|
||||||
modelAndView.addObject(model);
|
modelAndView.addObject(model);
|
||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// private function
|
// private function
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
private PaginationInfo setPagingStep1(
|
private PaginationInfo setPagingStep1(
|
||||||
VEEduAplctVO p_vEEduAplctVO
|
VEEduAplctVO p_vEEduAplctVO
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step1
|
// pageing step1
|
||||||
PaginationInfo paginationInfo = new PaginationInfo();
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex());
|
paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex());
|
||||||
paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit());
|
paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit());
|
||||||
paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize());
|
paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize());
|
||||||
|
|
||||||
return paginationInfo;
|
return paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
private VEEduAplctVO setPagingStep2(
|
private VEEduAplctVO setPagingStep2(
|
||||||
VEEduAplctVO p_vEEduAplctVO
|
VEEduAplctVO p_vEEduAplctVO
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step2
|
// pageing step2
|
||||||
p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
p_vEEduAplctVO.setSearchSortCnd("prcs_ord");
|
p_vEEduAplctVO.setSearchSortCnd("prcs_ord");
|
||||||
p_vEEduAplctVO.setSearchSortOrd("desc");
|
p_vEEduAplctVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_vEEduAplctVO;
|
return p_vEEduAplctVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
private PaginationInfo setPagingStep3(
|
private PaginationInfo setPagingStep3(
|
||||||
List<VEEduAplctVO> p_vEEduAplctVOList
|
List<VEEduAplctVO> p_vEEduAplctVOList
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step3
|
// pageing step3
|
||||||
int totCnt = 0;
|
int totCnt = 0;
|
||||||
if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt();
|
if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt();
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,355 +1,355 @@
|
|||||||
package kcc.ve.oprtn.adultVisitEdu.eduSchdlMng.web;
|
package kcc.ve.oprtn.adultVisitEdu.eduSchdlMng.web;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import kcc.com.cmm.service.EgovCmmUseService;
|
import kcc.com.cmm.service.EgovCmmUseService;
|
||||||
import kcc.com.cmm.service.EgovFileMngService;
|
import kcc.com.cmm.service.EgovFileMngService;
|
||||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||||
import kcc.com.utl.user.service.CheckAdrProcessUtil;
|
import kcc.com.utl.user.service.CheckAdrProcessUtil;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
import kcc.kccadr.adjreqmgr.service.AdjReqMgrService;
|
import kcc.kccadr.adjreqmgr.service.AdjReqMgrService;
|
||||||
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
|
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
|
||||||
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
|
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
import kcc.ve.cmm.VeConstants;
|
import kcc.ve.cmm.VeConstants;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육일정관리(관리자-성인찾아가는저작권교육)
|
* 교육일정관리(관리자-성인찾아가는저작권교육)
|
||||||
* 교육일정관리에 관한 controller 클래스를 정의한다.
|
* 교육일정관리에 관한 controller 클래스를 정의한다.
|
||||||
* @author 조용준
|
* @author 조용준
|
||||||
* @since 2021.12.16
|
* @since 2021.12.16
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @see
|
* @see
|
||||||
*
|
*
|
||||||
* <pre>
|
* <pre>
|
||||||
* << 개정이력(Modification Information) >>
|
* << 개정이력(Modification Information) >>
|
||||||
*
|
*
|
||||||
* 수정일 수정자 수정내용
|
* 수정일 수정자 수정내용
|
||||||
* ------- -------- ---------------------------
|
* ------- -------- ---------------------------
|
||||||
* 2021.12.16 조용준 최초 생성
|
* 2021.12.16 조용준 최초 생성
|
||||||
*
|
*
|
||||||
* </pre>
|
* </pre>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@RequestMapping("/kccadr/oprtn/adultVisitEdu")
|
@RequestMapping("/kccadr/oprtn/adultVisitEdu")
|
||||||
public class EduSchdlMngAdultController {
|
public class EduSchdlMngAdultController {
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(EduSchdlMngAdultController.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(EduSchdlMngAdultController.class);
|
||||||
|
|
||||||
//로그인 체크 util
|
//로그인 체크 util
|
||||||
@Resource(name = "checkLoginUtil")
|
@Resource(name = "checkLoginUtil")
|
||||||
private CheckLoginUtil checkLoginUtil;
|
private CheckLoginUtil checkLoginUtil;
|
||||||
|
|
||||||
//과정 관리
|
//과정 관리
|
||||||
@Resource(name = "vEPrcsService")
|
@Resource(name = "vEPrcsService")
|
||||||
private VEPrcsService vEPrcsService;
|
private VEPrcsService vEPrcsService;
|
||||||
|
|
||||||
//신청과정 관리
|
//신청과정 관리
|
||||||
@Resource(name = "vEEduMIXService")
|
@Resource(name = "vEEduMIXService")
|
||||||
private VEEduMIXService vEEduMIXService;
|
private VEEduMIXService vEEduMIXService;
|
||||||
|
|
||||||
//교육신청
|
//교육신청
|
||||||
@Resource(name = "vEEduAplctService")
|
@Resource(name = "vEEduAplctService")
|
||||||
private VEEduAplctService vEEduAplctService;
|
private VEEduAplctService vEEduAplctService;
|
||||||
|
|
||||||
//교육과정신청
|
//교육과정신청
|
||||||
@Resource(name = "vEPrcsMIXService")
|
@Resource(name = "vEPrcsMIXService")
|
||||||
private VEPrcsMIXService vEPrcsMIXService;
|
private VEPrcsMIXService vEPrcsMIXService;
|
||||||
|
|
||||||
//차시
|
//차시
|
||||||
@Resource(name = "vEEduChasiService")
|
@Resource(name = "vEEduChasiService")
|
||||||
private VEEduChasiService vVEEduChasiService;
|
private VEEduChasiService vVEEduChasiService;
|
||||||
|
|
||||||
|
|
||||||
// 교육신청 서비스단
|
// 교육신청 서비스단
|
||||||
@Resource(name = "AdjReqMgrService")
|
@Resource(name = "AdjReqMgrService")
|
||||||
private AdjReqMgrService adjReqMgrService;
|
private AdjReqMgrService adjReqMgrService;
|
||||||
|
|
||||||
// eGov 공통코드
|
// eGov 공통코드
|
||||||
@Resource(name = "EgovCmmUseService")
|
@Resource(name = "EgovCmmUseService")
|
||||||
private EgovCmmUseService cmmUseService;
|
private EgovCmmUseService cmmUseService;
|
||||||
|
|
||||||
@Resource(name = "EgovFileMngService")
|
@Resource(name = "EgovFileMngService")
|
||||||
private EgovFileMngService fileService;
|
private EgovFileMngService fileService;
|
||||||
|
|
||||||
// global 프로퍼티
|
// global 프로퍼티
|
||||||
@Resource(name="globalSettings")
|
@Resource(name="globalSettings")
|
||||||
protected Properties propertiesService;
|
protected Properties propertiesService;
|
||||||
|
|
||||||
//첨부파일 경로, realPath 설정
|
//첨부파일 경로, realPath 설정
|
||||||
@Resource(name="EgovFileMngUtil")
|
@Resource(name="EgovFileMngUtil")
|
||||||
private EgovFileMngUtil fileUtil;
|
private EgovFileMngUtil fileUtil;
|
||||||
|
|
||||||
// 첨부파일 정보
|
// 첨부파일 정보
|
||||||
@Resource(name="EgovFileMngService")
|
@Resource(name="EgovFileMngService")
|
||||||
private EgovFileMngService fileMngService;
|
private EgovFileMngService fileMngService;
|
||||||
|
|
||||||
//암복호화 유틸
|
//암복호화 유틸
|
||||||
@Resource(name = "egovCryptoUtil")
|
@Resource(name = "egovCryptoUtil")
|
||||||
EgovCryptoUtil egovCryptoUtil;
|
EgovCryptoUtil egovCryptoUtil;
|
||||||
|
|
||||||
|
|
||||||
@Resource(name="KccadrMgrUdtService")
|
@Resource(name="KccadrMgrUdtService")
|
||||||
private KccadrMgrUdtService kccadrMgrUdtService;
|
private KccadrMgrUdtService kccadrMgrUdtService;
|
||||||
|
|
||||||
// 교육신청 서비스단
|
// 교육신청 서비스단
|
||||||
@Resource(name = "checkAdrProcessUtil")
|
@Resource(name = "checkAdrProcessUtil")
|
||||||
private CheckAdrProcessUtil checkAdrProcessUtil;
|
private CheckAdrProcessUtil checkAdrProcessUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육일정관리 목록 화면
|
* 교육일정관리 목록 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduSchdlMngList.do")
|
@RequestMapping("eduSchdlMngList.do")
|
||||||
public String eduSchdlMngList(
|
public String eduSchdlMngList(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
//String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||||
//if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
//if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_20); //청소년
|
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_20); //청소년
|
||||||
|
|
||||||
//1.pageing step1
|
//1.pageing step1
|
||||||
PaginationInfo paginationInfo = this.setPagingStep1(vEEduAplctVO);
|
PaginationInfo paginationInfo = this.setPagingStep1(vEEduAplctVO);
|
||||||
//2. pageing step2
|
//2. pageing step2
|
||||||
vEEduAplctVO = this.setPagingStep2(vEEduAplctVO, paginationInfo);
|
vEEduAplctVO = this.setPagingStep2(vEEduAplctVO, paginationInfo);
|
||||||
//vEEduAplctVO.setLctrDivCd("30");
|
//vEEduAplctVO.setLctrDivCd("30");
|
||||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO);
|
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO);
|
||||||
|
|
||||||
//3.pageing step3
|
//3.pageing step3
|
||||||
paginationInfo = this.setPagingStep3(vEEduAplctVOList, paginationInfo);
|
paginationInfo = this.setPagingStep3(vEEduAplctVOList, paginationInfo);
|
||||||
|
|
||||||
|
|
||||||
model.addAttribute("paginationInfo", paginationInfo);
|
model.addAttribute("paginationInfo", paginationInfo);
|
||||||
|
|
||||||
|
|
||||||
//대상 리스트, 페이징 정보 전달
|
//대상 리스트, 페이징 정보 전달
|
||||||
model.addAttribute("list", vEEduAplctVOList);
|
model.addAttribute("list", vEEduAplctVOList);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
//1.pageing step1
|
//1.pageing step1
|
||||||
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
||||||
|
|
||||||
//2. pageing step2
|
//2. pageing step2
|
||||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||||
|
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
|
||||||
|
|
||||||
//3.pageing step3
|
//3.pageing step3
|
||||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||||
|
|
||||||
|
|
||||||
model.addAttribute("paginationInfo", paginationInfo);
|
model.addAttribute("paginationInfo", paginationInfo);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
//대상 리스트, 페이징 정보 전달
|
//대상 리스트, 페이징 정보 전달
|
||||||
//model.addAttribute("resultList", vEEduAplctVOList);
|
//model.addAttribute("resultList", vEEduAplctVOList);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduSchdlMngList";
|
return "oprtn/adultVisitEdu/eduSchdlMngList";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육일정관리 등록 화면
|
* 교육일정관리 등록 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduSchdlMngReg.do")
|
@RequestMapping("eduSchdlMngReg.do")
|
||||||
public String eduSchdlMngReg(
|
public String eduSchdlMngReg(
|
||||||
@ModelAttribute("searchVO") AdjReqMgrVO adjReqMgrVO
|
@ModelAttribute("searchVO") AdjReqMgrVO adjReqMgrVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||||
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduSchdlMngReg";
|
return "oprtn/adultVisitEdu/eduSchdlMngReg";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육신청관리 상세 화면
|
* 교육신청관리 상세 화면
|
||||||
*/
|
*/
|
||||||
@RequestMapping("eduSchdlMngDetail.do")
|
@RequestMapping("eduSchdlMngDetail.do")
|
||||||
public String eduSchdlMngDetail(
|
public String eduSchdlMngDetail(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
//기본데이터 불러오기
|
//기본데이터 불러오기
|
||||||
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||||
|
|
||||||
//데이터 복호화 - VO 단위로 만들어서 사용
|
//데이터 복호화 - VO 단위로 만들어서 사용
|
||||||
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
|
|
||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 과정 리스트
|
//사용자 교육신청 과정 리스트
|
||||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||||
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
||||||
|
|
||||||
model.addAttribute("list", vEPrcsDetailVOList);
|
model.addAttribute("list", vEPrcsDetailVOList);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 차시 리스트
|
//사용자 교육신청 차시 리스트
|
||||||
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/eduSchdlMngDetail";
|
return "oprtn/adultVisitEdu/eduSchdlMngDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육일정반려 처리 팝업
|
* 교육일정반려 처리 팝업
|
||||||
*/
|
*/
|
||||||
@RequestMapping("popup/eduSchdlMngDetailRfslSecurityPopup.do")
|
@RequestMapping("popup/eduSchdlMngDetailRfslSecurityPopup.do")
|
||||||
public String eduSchdlMngDetailRfslSecurityPopup(
|
public String eduSchdlMngDetailRfslSecurityPopup(
|
||||||
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
//로그인 정보 가져오기
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||||
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
//기본데이터 불러오기
|
//기본데이터 불러오기
|
||||||
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||||
|
|
||||||
//데이터 복호화 - VO 단위로 만들어서 사용
|
//데이터 복호화 - VO 단위로 만들어서 사용
|
||||||
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
|
|
||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 과정 리스트
|
//사용자 교육신청 과정 리스트
|
||||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||||
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectMberEduAplctPrcsList(vEPrcsDetailVO);
|
||||||
|
|
||||||
model.addAttribute("list", vEPrcsDetailVOList);
|
model.addAttribute("list", vEPrcsDetailVOList);
|
||||||
|
|
||||||
|
|
||||||
//사용자 교육신청 차시 리스트
|
//사용자 교육신청 차시 리스트
|
||||||
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);
|
||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
|
|
||||||
return "oprtn/adultVisitEdu/popup/eduSchdlMngDetailRfslSecurityPopup";
|
return "oprtn/adultVisitEdu/popup/eduSchdlMngDetailRfslSecurityPopup";
|
||||||
}
|
}
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
// private function
|
// private function
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
private PaginationInfo setPagingStep1(
|
private PaginationInfo setPagingStep1(
|
||||||
VEEduAplctVO p_vEEduAplctVO
|
VEEduAplctVO p_vEEduAplctVO
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step1
|
// pageing step1
|
||||||
PaginationInfo paginationInfo = new PaginationInfo();
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex());
|
paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex());
|
||||||
paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit());
|
paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit());
|
||||||
paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize());
|
paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize());
|
||||||
|
|
||||||
return paginationInfo;
|
return paginationInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
private VEEduAplctVO setPagingStep2(
|
private VEEduAplctVO setPagingStep2(
|
||||||
VEEduAplctVO p_vEEduAplctVO
|
VEEduAplctVO p_vEEduAplctVO
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step2
|
// pageing step2
|
||||||
p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
p_vEEduAplctVO.setSearchSortCnd("prcs_ord");
|
p_vEEduAplctVO.setSearchSortCnd("prcs_ord");
|
||||||
p_vEEduAplctVO.setSearchSortOrd("desc");
|
p_vEEduAplctVO.setSearchSortOrd("desc");
|
||||||
}
|
}
|
||||||
|
|
||||||
return p_vEEduAplctVO;
|
return p_vEEduAplctVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
private PaginationInfo setPagingStep3(
|
private PaginationInfo setPagingStep3(
|
||||||
List<VEEduAplctVO> p_vEEduAplctVOList
|
List<VEEduAplctVO> p_vEEduAplctVOList
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
, PaginationInfo p_paginationInfo
|
||||||
)throws Exception{
|
)throws Exception{
|
||||||
// pageing step3
|
// pageing step3
|
||||||
int totCnt = 0;
|
int totCnt = 0;
|
||||||
if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt();
|
if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt();
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
return p_paginationInfo;
|
return p_paginationInfo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,6 +38,7 @@ public class CndtnTrgtMngVO extends ComDefaultVO implements Serializable {
|
|||||||
private String prsctrNm; // 검사성명
|
private String prsctrNm; // 검사성명
|
||||||
private String reqStateCd; // 의뢰상태코드
|
private String reqStateCd; // 의뢰상태코드
|
||||||
private String prcsAplctPrdOrdCmplt;// 중복확인을 위한 신청강의 PK
|
private String prcsAplctPrdOrdCmplt;// 중복확인을 위한 신청강의 PK
|
||||||
|
private String atchFileId;// 첨부파일 ID
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -183,6 +184,12 @@ public class CndtnTrgtMngVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setPrcsAplctPrdOrdCmplt(String prcsAplctPrdOrdCmplt) {
|
public void setPrcsAplctPrdOrdCmplt(String prcsAplctPrdOrdCmplt) {
|
||||||
this.prcsAplctPrdOrdCmplt = prcsAplctPrdOrdCmplt;
|
this.prcsAplctPrdOrdCmplt = prcsAplctPrdOrdCmplt;
|
||||||
}
|
}
|
||||||
|
public String getAtchFileId() {
|
||||||
|
return atchFileId;
|
||||||
|
}
|
||||||
|
public void setAtchFileId(String atchFileId) {
|
||||||
|
this.atchFileId = atchFileId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -13,12 +13,16 @@ import org.springframework.stereotype.Controller;
|
|||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import kcc.com.cmm.LoginVO;
|
import kcc.com.cmm.LoginVO;
|
||||||
|
import kcc.com.cmm.service.EgovFileMngService;
|
||||||
|
import kcc.com.cmm.service.FileVO;
|
||||||
import kcc.com.cmm.util.StringUtil;
|
import kcc.com.cmm.util.StringUtil;
|
||||||
|
import kcc.com.utl.user.service.CheckFileUtil;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
||||||
@ -85,6 +89,18 @@ public class CndtnTrgtMngController {
|
|||||||
//과정차시 관리
|
//과정차시 관리
|
||||||
@Resource(name = "vEPrcsAplctPrdService")
|
@Resource(name = "vEPrcsAplctPrdService")
|
||||||
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
||||||
|
|
||||||
|
|
||||||
|
//파일 체크 util
|
||||||
|
@Resource(name = "checkFileUtil")
|
||||||
|
private CheckFileUtil checkFileUtil;
|
||||||
|
|
||||||
|
|
||||||
|
//파일정보의 관리
|
||||||
|
@Resource(name = "EgovFileMngService")
|
||||||
|
private EgovFileMngService fileService;
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
||||||
// 교육신청 서비스단
|
// 교육신청 서비스단
|
||||||
@ -283,8 +299,8 @@ public class CndtnTrgtMngController {
|
|||||||
public ModelAndView cndtnEduPrcsMngRegAjax(
|
public ModelAndView cndtnEduPrcsMngRegAjax(
|
||||||
@ModelAttribute("cndtnTrgtInfoMngVO") CndtnTrgtMngVO cndtnTrgtInfoMngVO
|
@ModelAttribute("cndtnTrgtInfoMngVO") CndtnTrgtMngVO cndtnTrgtInfoMngVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
//, RedirectAttributes redirectAttributes
|
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
|
, final MultipartHttpServletRequest multiRequest
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
@ -304,8 +320,29 @@ public class CndtnTrgtMngController {
|
|||||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||||
|
|
||||||
|
|
||||||
|
//step2.파일 처리====================================
|
||||||
|
//파일 정상 처리 여부와 첨부 파일 정보
|
||||||
|
//String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO);
|
||||||
|
//파일 제한 수량 가져오기, 없으면 기본값 사용
|
||||||
|
int i_file_limit = checkFileUtil.getLimitCount(request); // file count
|
||||||
|
int i_limit_size = checkFileUtil.getLimitSize(request); // file MB
|
||||||
|
String s_file_exts = checkFileUtil.getS_exts(); // file exts
|
||||||
|
|
||||||
|
String s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbInsert(
|
||||||
|
multiRequest, modelAndView
|
||||||
|
, "APLCT_" //file_name_prefix
|
||||||
|
, s_file_exts
|
||||||
|
, i_limit_size
|
||||||
|
, i_file_limit
|
||||||
|
); //EXT, MB size and ea
|
||||||
|
|
||||||
|
if ("ERROR".equals(s_scholSealAtchFileId)) return modelAndView;
|
||||||
|
System.out.println("s_scholSealAtchFileId :: "+ s_scholSealAtchFileId);
|
||||||
|
|
||||||
|
|
||||||
cndtnTrgtInfoMngVO.setSspnIdtmtTrgtOrd(trgtOrdService.getNextStringId());
|
cndtnTrgtInfoMngVO.setSspnIdtmtTrgtOrd(trgtOrdService.getNextStringId());
|
||||||
|
cndtnTrgtInfoMngVO.setAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
|
||||||
cndtnTrgtInfoMngVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
cndtnTrgtInfoMngVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
||||||
// vEPrcsDetailVO.setPrcsOrd(prcsOrd);
|
// vEPrcsDetailVO.setPrcsOrd(prcsOrd);
|
||||||
// vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
// vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||||
@ -331,6 +368,7 @@ public class CndtnTrgtMngController {
|
|||||||
, ModelMap model
|
, ModelMap model
|
||||||
//, RedirectAttributes redirectAttributes
|
//, RedirectAttributes redirectAttributes
|
||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
|
, final MultipartHttpServletRequest multiRequest
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
@ -351,6 +389,56 @@ public class CndtnTrgtMngController {
|
|||||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||||
|
|
||||||
|
|
||||||
|
//step2.첨부파일 체크 후 저장 하기
|
||||||
|
String s_scholSealAtchFileId = "";
|
||||||
|
s_scholSealAtchFileId = cndtnTrgtInfoMngVO.getAtchFileId();
|
||||||
|
|
||||||
|
//DB에서 실제 첨부파일 존재 여부 확인
|
||||||
|
FileVO fileVO = new FileVO();
|
||||||
|
fileVO.setAtchFileId(s_scholSealAtchFileId);
|
||||||
|
List<FileVO> result = fileService.selectFileInfs(fileVO);
|
||||||
|
if (result.size()<=0) {
|
||||||
|
s_scholSealAtchFileId = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//step3.파일 처리====================================
|
||||||
|
//파일 정상 처리 여부와 첨부 파일 정보
|
||||||
|
//String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO);
|
||||||
|
//파일 제한 수량 가져오기, 없으면 기본값 사용
|
||||||
|
int i_file_limit = checkFileUtil.getLimitCount(request); // file count
|
||||||
|
int i_limit_size = checkFileUtil.getLimitSize(request); // file MB
|
||||||
|
String s_file_exts = checkFileUtil.getS_exts(); // file exts
|
||||||
|
|
||||||
|
|
||||||
|
//기존 파일 존재 여부에 따라서 insert or update 처리
|
||||||
|
if ("".equals(s_scholSealAtchFileId)) {
|
||||||
|
//atchFileId = this.fileValCheckNdbInsert(multiRequest, modelAndView, checkFileUtil.getS_exts(), i_limit_size, i_file_limit); //EXT, MB size and ea
|
||||||
|
s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbInsert(
|
||||||
|
multiRequest, modelAndView
|
||||||
|
, "APLCT_"
|
||||||
|
, s_file_exts
|
||||||
|
, i_limit_size
|
||||||
|
, i_file_limit
|
||||||
|
); //EXT, MB size and ea
|
||||||
|
cndtnTrgtInfoMngVO.setAtchFileId(s_scholSealAtchFileId);
|
||||||
|
}else {
|
||||||
|
//atchFileId = this.fileValCheckNdbUpdate(multiRequest, modelAndView, checkFileUtil.getS_exts(), i_limit_size, i_file_limit, atchFileId); //EXT, MB size and ea
|
||||||
|
s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbUpdate(
|
||||||
|
multiRequest, modelAndView
|
||||||
|
, "APLCT_"
|
||||||
|
, s_file_exts
|
||||||
|
, i_limit_size
|
||||||
|
, i_file_limit
|
||||||
|
, s_scholSealAtchFileId
|
||||||
|
); //EXT, MB size and ea
|
||||||
|
}
|
||||||
|
|
||||||
|
if ("ERROR".equals(s_scholSealAtchFileId)) return modelAndView;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
cndtnTrgtInfoMngVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id
|
cndtnTrgtInfoMngVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id
|
||||||
cndtnTrgtInfoMngService.update(cndtnTrgtInfoMngVO);
|
cndtnTrgtInfoMngService.update(cndtnTrgtInfoMngVO);
|
||||||
|
|
||||||
@ -383,7 +471,14 @@ public class CndtnTrgtMngController {
|
|||||||
//과정 조회
|
//과정 조회
|
||||||
CndtnTrgtMngVO cndtnTrgtInfoVO = cndtnTrgtInfoMngService.selectDetail(cndtnTrgtInfoMngVO);
|
CndtnTrgtMngVO cndtnTrgtInfoVO = cndtnTrgtInfoMngService.selectDetail(cndtnTrgtInfoMngVO);
|
||||||
model.addAttribute("info", cndtnTrgtInfoVO);
|
model.addAttribute("info", cndtnTrgtInfoVO);
|
||||||
//세부과정 목록 조회
|
|
||||||
|
|
||||||
|
//파일 정보 가져오기
|
||||||
|
FileVO fileVO = new FileVO();
|
||||||
|
fileVO.setAtchFileId(cndtnTrgtInfoVO.getAtchFileId());
|
||||||
|
List<FileVO> result = fileService.selectFileInfs(fileVO);
|
||||||
|
model.addAttribute("fileList", result);
|
||||||
|
model.addAttribute("fileListCnt", result.size());
|
||||||
|
|
||||||
return "oprtn/cndtnSspnIdtmt/trgtDetail";
|
return "oprtn/cndtnSspnIdtmt/trgtDetail";
|
||||||
}
|
}
|
||||||
@ -449,6 +544,14 @@ public class CndtnTrgtMngController {
|
|||||||
CndtnTrgtMngVO cndtnTrgtInfoVO = cndtnTrgtInfoMngService.selectDetail(cndtnTrgtInfoMngVO);
|
CndtnTrgtMngVO cndtnTrgtInfoVO = cndtnTrgtInfoMngService.selectDetail(cndtnTrgtInfoMngVO);
|
||||||
model.addAttribute("info", cndtnTrgtInfoVO);
|
model.addAttribute("info", cndtnTrgtInfoVO);
|
||||||
|
|
||||||
|
|
||||||
|
//파일 정보 가져오기
|
||||||
|
FileVO fileVO = new FileVO();
|
||||||
|
fileVO.setAtchFileId(cndtnTrgtInfoVO.getAtchFileId());
|
||||||
|
List<FileVO> result = fileService.selectFileInfs(fileVO);
|
||||||
|
model.addAttribute("fileList", result);
|
||||||
|
model.addAttribute("fileListCnt", result.size());
|
||||||
|
|
||||||
return "oprtn/cndtnSspnIdtmt/trgtMdfy";
|
return "oprtn/cndtnSspnIdtmt/trgtMdfy";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,32 +1,32 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
xmlns:egov-crypto="http://www.egovframe.go.kr/schema/egov-crypto"
|
xmlns:egov-crypto="http://www.egovframe.go.kr/schema/egov-crypto"
|
||||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
||||||
http://www.egovframe.go.kr/schema/egov-crypto http://www.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.8.xsd">
|
http://www.egovframe.go.kr/schema/egov-crypto http://www.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.8.xsd">
|
||||||
<!--
|
<!--
|
||||||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
xmlns:egov-crypto="http://maven.egovframe.go.kr/schema/egov-crypto"
|
xmlns:egov-crypto="http://maven.egovframe.go.kr/schema/egov-crypto"
|
||||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
||||||
http://maven.egovframe.go.kr/schema/egov-crypto http://maven.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.10.0.xsd">
|
http://maven.egovframe.go.kr/schema/egov-crypto http://maven.egovframe.go.kr/schema/egov-crypto/egov-crypto-3.10.0.xsd">
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
initial : globals.properties 연계 Url, UserName, Password 값 로드 여부(설정값 : true, false)
|
initial : globals.properties 연계 Url, UserName, Password 값 로드 여부(설정값 : true, false)
|
||||||
crypto : 계정 암호화 여부(설정값 : true, false)
|
crypto : 계정 암호화 여부(설정값 : true, false)
|
||||||
algorithm : 계정 암호화 알고리즘
|
algorithm : 계정 암호화 알고리즘
|
||||||
algorithmKey : 계정 암호화키 키
|
algorithmKey : 계정 암호화키 키
|
||||||
cryptoBlockSize : 계정 암호화키 블록사이즈
|
cryptoBlockSize : 계정 암호화키 블록사이즈
|
||||||
cryptoPropertyLocation : 설정파일 암복호화 경로 (선택) 기본값은 'classpath:/egovframework/egovProps/globals.properties'
|
cryptoPropertyLocation : 설정파일 암복호화 경로 (선택) 기본값은 'classpath:/egovframework/egovProps/globals.properties'
|
||||||
-->
|
-->
|
||||||
<egov-crypto:config id="egovCryptoConfig"
|
<egov-crypto:config id="egovCryptoConfig"
|
||||||
initial="false"
|
initial="false"
|
||||||
crypto="false"
|
crypto="false"
|
||||||
algorithm="SHA-256"
|
algorithm="SHA-256"
|
||||||
algorithmKey="egovframe"
|
algorithmKey="egovframe"
|
||||||
algorithmKeyHash="gdyYs/IZqY86VcWhT8emCYfqY1ahw2vtLG+/FzNqtrQ="
|
algorithmKeyHash="gdyYs/IZqY86VcWhT8emCYfqY1ahw2vtLG+/FzNqtrQ="
|
||||||
cryptoBlockSize="1024"
|
cryptoBlockSize="1024"
|
||||||
cryptoPropertyLocation="classpath:/egovframework/egovProps/globals.properties"
|
cryptoPropertyLocation="classpath:/egovframework/egovProps/globals.properties"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</beans>
|
</beans>
|
||||||
@ -1,27 +1,27 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
|
||||||
http://www.springframework.org/schema/util
|
http://www.springframework.org/schema/util
|
||||||
http://www.springframework.org/schema/util/spring-util-3.0.xsd"
|
http://www.springframework.org/schema/util/spring-util-3.0.xsd"
|
||||||
xmlns:util="http://www.springframework.org/schema/util" >
|
xmlns:util="http://www.springframework.org/schema/util" >
|
||||||
|
|
||||||
<!-- 프로퍼티 정보 설정 -->
|
<!-- 프로퍼티 정보 설정 -->
|
||||||
<bean name="propertiesService" class="egovframework.rte.fdl.property.impl.EgovPropertyServiceImpl" destroy-method="destroy">
|
<bean name="propertiesService" class="egovframework.rte.fdl.property.impl.EgovPropertyServiceImpl" destroy-method="destroy">
|
||||||
<property name="properties">
|
<property name="properties">
|
||||||
<map>
|
<map>
|
||||||
<entry key="pageUnit" value="10"/>
|
<entry key="pageUnit" value="10"/>
|
||||||
<entry key="pageSize" value="10"/>
|
<entry key="pageSize" value="10"/>
|
||||||
<entry key="posblAtchFileSize" value="5242880"/>
|
<entry key="posblAtchFileSize" value="5242880"/>
|
||||||
<entry key="posblResveThumbAtchFileNum" value="1"/>
|
<entry key="posblResveThumbAtchFileNum" value="1"/>
|
||||||
<entry key="posblResveImgAtchFileNum" value="3"/>
|
<entry key="posblResveImgAtchFileNum" value="3"/>
|
||||||
<entry key="posblResvePortpolioAtchFileNum" value="3"/>
|
<entry key="posblResvePortpolioAtchFileNum" value="3"/>
|
||||||
<!-- <entry key="Globals.fileStorePath" value="/user/file/sht/"/>
|
<!-- <entry key="Globals.fileStorePath" value="/user/file/sht/"/>
|
||||||
<entry key="Globals.addedOptions" value="false"/> -->
|
<entry key="Globals.addedOptions" value="false"/> -->
|
||||||
<entry key="Globals.fileStorePath" value="/app/doc/offedu/sht/"/>
|
<entry key="Globals.fileStorePath" value="/app/doc/offedu/sht/"/>
|
||||||
<entry key="Globals.resveFileStorePath" value="/app/doc/offedu/resve/"/>
|
<entry key="Globals.resveFileStorePath" value="/app/doc/offedu/resve/"/>
|
||||||
<entry key="Globals.addedOptions" value="false"/>
|
<entry key="Globals.addedOptions" value="false"/>
|
||||||
</map>
|
</map>
|
||||||
</property>
|
</property>
|
||||||
</bean>
|
</bean>
|
||||||
<util:properties id="globalSettings" location="classpath:/egovframework/egovProps/globals.properties" />
|
<util:properties id="globalSettings" location="classpath:/egovframework/egovProps/globals.properties" />
|
||||||
</beans>
|
</beans>
|
||||||
|
|||||||
@ -1,236 +1,236 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
|
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
|
||||||
|
|
||||||
<sqlMap namespace="File">
|
<sqlMap namespace="File">
|
||||||
|
|
||||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||||
<typeAlias alias="FileVO" type="kcc.com.cmm.service.FileVO"/>
|
<typeAlias alias="FileVO" type="kcc.com.cmm.service.FileVO"/>
|
||||||
|
|
||||||
<resultMap id="fileList" class="kcc.com.cmm.service.FileVO">
|
<resultMap id="fileList" class="kcc.com.cmm.service.FileVO">
|
||||||
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
|
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
|
||||||
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
|
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
|
||||||
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
|
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
|
||||||
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
|
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
|
||||||
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
|
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
|
||||||
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
|
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
|
||||||
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
|
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
|
||||||
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
|
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
|
||||||
<result property="creatDt" column="CREAT_DT" columnIndex="9"/>
|
<result property="creatDt" column="CREAT_DT" columnIndex="9"/>
|
||||||
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
|
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<resultMap id="fileDetail" class="kcc.com.cmm.service.FileVO">
|
<resultMap id="fileDetail" class="kcc.com.cmm.service.FileVO">
|
||||||
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
|
<result property="atchFileId" column="ATCH_FILE_ID" columnIndex="1"/>
|
||||||
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
|
<result property="fileCn" column="FILE_CN" columnIndex="2"/>
|
||||||
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
|
<result property="fileExtsn" column="FILE_EXTSN" columnIndex="3"/>
|
||||||
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
|
<result property="fileMg" column="FILE_SIZE" columnIndex="4"/>
|
||||||
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
|
<result property="fileSn" column="FILE_SN" columnIndex="5"/>
|
||||||
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
|
<result property="fileStreCours" column="FILE_STRE_COURS" columnIndex="6"/>
|
||||||
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
|
<result property="orignlFileNm" column="ORIGNL_FILE_NM" columnIndex="7"/>
|
||||||
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
|
<result property="streFileNm" column="STRE_FILE_NM" columnIndex="8"/>
|
||||||
<result property="thumbFileNm" column="THUMB_FILE_NM" />
|
<result property="thumbFileNm" column="THUMB_FILE_NM" />
|
||||||
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
|
<result property="fileSize" column="FILE_SIZE" columnIndex="10"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
<select id="FileManageDAO.selectFileList" parameterClass="FileVO" resultMap="fileList" >
|
<select id="FileManageDAO.selectFileList" parameterClass="FileVO" resultMap="fileList" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT
|
SELECT
|
||||||
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
||||||
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
||||||
FROM
|
FROM
|
||||||
LETTNFILE a, LETTNFILEDETAIL b
|
LETTNFILE a, LETTNFILEDETAIL b
|
||||||
WHERE 1=1
|
WHERE 1=1
|
||||||
AND
|
AND
|
||||||
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
||||||
AND
|
AND
|
||||||
a.ATCH_FILE_ID = #atchFileId#
|
a.ATCH_FILE_ID = #atchFileId#
|
||||||
AND
|
AND
|
||||||
a.USE_AT = 'Y'
|
a.USE_AT = 'Y'
|
||||||
ORDER BY b.FILE_SN
|
ORDER BY b.FILE_SN
|
||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="FileManageDAO.selectZipFileList" parameterClass="FileVO" resultMap="fileList" >
|
<select id="FileManageDAO.selectZipFileList" parameterClass="FileVO" resultMap="fileList" >
|
||||||
SELECT
|
SELECT
|
||||||
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
||||||
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
||||||
FROM
|
FROM
|
||||||
LETTNFILE a, LETTNFILEDETAIL b
|
LETTNFILE a, LETTNFILEDETAIL b
|
||||||
WHERE
|
WHERE
|
||||||
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
||||||
AND
|
AND
|
||||||
a.USE_AT = 'Y'
|
a.USE_AT = 'Y'
|
||||||
|
|
||||||
|
|
||||||
<isEqual property="downloadType" compareValue="A">
|
<isEqual property="downloadType" compareValue="A">
|
||||||
AND a.ATCH_FILE_ID IN
|
AND a.ATCH_FILE_ID IN
|
||||||
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
|
<iterate property="atchFileIdList" open="(" close=")" conjunction=",">
|
||||||
#atchFileIdList[]#
|
#atchFileIdList[]#
|
||||||
</iterate>
|
</iterate>
|
||||||
<isNotEmpty property="fileSn">
|
<isNotEmpty property="fileSn">
|
||||||
AND b.FILE_SN = #fileSn#
|
AND b.FILE_SN = #fileSn#
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
|
|
||||||
<isEqual property="downloadType" compareValue="B">
|
<isEqual property="downloadType" compareValue="B">
|
||||||
AND a.ATCH_FILE_ID = #atchFileId#
|
AND a.ATCH_FILE_ID = #atchFileId#
|
||||||
AND b.FILE_SN IN
|
AND b.FILE_SN IN
|
||||||
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
|
<iterate property="atchFileSnList" open="(" close=")" conjunction=",">
|
||||||
#atchFileSnList[]#
|
#atchFileSnList[]#
|
||||||
</iterate>
|
</iterate>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
|
|
||||||
ORDER BY b.FILE_SN
|
ORDER BY b.FILE_SN
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<insert id="FileManageDAO.insertFileMaster" parameterClass="FileVO" >
|
<insert id="FileManageDAO.insertFileMaster" parameterClass="FileVO" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
INSERT INTO LETTNFILE
|
INSERT INTO LETTNFILE
|
||||||
(ATCH_FILE_ID, CREAT_DT, USE_AT)
|
(ATCH_FILE_ID, CREAT_DT, USE_AT)
|
||||||
VALUES
|
VALUES
|
||||||
( #atchFileId#, NOW(), 'Y')
|
( #atchFileId#, NOW(), 'Y')
|
||||||
]]>
|
]]>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<insert id="FileManageDAO.insertFileDetail" parameterClass="FileVO" >
|
<insert id="FileManageDAO.insertFileDetail" parameterClass="FileVO" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
INSERT INTO LETTNFILEDETAIL
|
INSERT INTO LETTNFILEDETAIL
|
||||||
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
||||||
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN, THUMB_FILE_NM )
|
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN, THUMB_FILE_NM )
|
||||||
VALUES
|
VALUES
|
||||||
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
|
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
|
||||||
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn#, #thumbFileNm# )
|
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn#, #thumbFileNm# )
|
||||||
]]>
|
]]>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
<delete id="FileManageDAO.deleteFileDetail" parameterClass="FileVO" >
|
<delete id="FileManageDAO.deleteFileDetail" parameterClass="FileVO" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
DELETE FROM LETTNFILEDETAIL
|
DELETE FROM LETTNFILEDETAIL
|
||||||
WHERE
|
WHERE
|
||||||
ATCH_FILE_ID = #atchFileId#
|
ATCH_FILE_ID = #atchFileId#
|
||||||
AND
|
AND
|
||||||
FILE_SN = #fileSn#
|
FILE_SN = #fileSn#
|
||||||
]]>
|
]]>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
|
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT IFNULL(MAX(FILE_SN),0)+1 AS FILE_SN
|
SELECT IFNULL(MAX(FILE_SN),0)+1 AS FILE_SN
|
||||||
FROM LETTNFILEDETAIL
|
FROM LETTNFILEDETAIL
|
||||||
WHERE ATCH_FILE_ID = #atchFileId#
|
WHERE ATCH_FILE_ID = #atchFileId#
|
||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="FileManageDAO.selectFileInf" parameterClass="FileVO" resultMap="fileDetail" >
|
<select id="FileManageDAO.selectFileInf" parameterClass="FileVO" resultMap="fileDetail" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT
|
SELECT
|
||||||
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
||||||
FILE_EXTSN, ORIGNL_FILE_NM, FILE_SIZE, THUMB_FILE_NM
|
FILE_EXTSN, ORIGNL_FILE_NM, FILE_SIZE, THUMB_FILE_NM
|
||||||
FROM
|
FROM
|
||||||
LETTNFILEDETAIL
|
LETTNFILEDETAIL
|
||||||
WHERE
|
WHERE
|
||||||
ATCH_FILE_ID = #atchFileId#
|
ATCH_FILE_ID = #atchFileId#
|
||||||
AND
|
AND
|
||||||
FILE_SN = #fileSn#
|
FILE_SN = #fileSn#
|
||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<update id="FileManageDAO.deleteCOMTNFILE" parameterClass="FileVO" >
|
<update id="FileManageDAO.deleteCOMTNFILE" parameterClass="FileVO" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
UPDATE LETTNFILE
|
UPDATE LETTNFILE
|
||||||
SET USE_AT = 'N'
|
SET USE_AT = 'N'
|
||||||
WHERE ATCH_FILE_ID = #atchFileId#
|
WHERE ATCH_FILE_ID = #atchFileId#
|
||||||
]]>
|
]]>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<select id="FileManageDAO.selectFileListByFileNm" parameterClass="FileVO" resultMap="fileList" >
|
<select id="FileManageDAO.selectFileListByFileNm" parameterClass="FileVO" resultMap="fileList" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT
|
SELECT
|
||||||
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
||||||
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, DATE_FORMAT(a.CREAT_DT, '%Y-%m-%d %h:%m:%s' ) AS CREAT_DT
|
||||||
FROM
|
FROM
|
||||||
LETTNFILE a, LETTNFILEDETAIL b
|
LETTNFILE a, LETTNFILEDETAIL b
|
||||||
WHERE
|
WHERE
|
||||||
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
||||||
AND
|
AND
|
||||||
a.USE_AT = 'Y'
|
a.USE_AT = 'Y'
|
||||||
]]>
|
]]>
|
||||||
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
|
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
|
||||||
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
|
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
|
||||||
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
ORDER BY a.ATCH_FILE_ID, b.FILE_SN
|
ORDER BY a.ATCH_FILE_ID, b.FILE_SN
|
||||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="FileManageDAO.selectFileListCntByFileNm" parameterClass="FileVO" resultClass="java.lang.Integer" >
|
<select id="FileManageDAO.selectFileListCntByFileNm" parameterClass="FileVO" resultClass="java.lang.Integer" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT
|
SELECT
|
||||||
COUNT(a.ATCH_FILE_ID)
|
COUNT(a.ATCH_FILE_ID)
|
||||||
FROM
|
FROM
|
||||||
LETTNFILE a, LETTNFILEDETAIL b
|
LETTNFILE a, LETTNFILEDETAIL b
|
||||||
WHERE
|
WHERE
|
||||||
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
||||||
AND
|
AND
|
||||||
a.USE_AT = 'Y'
|
a.USE_AT = 'Y'
|
||||||
]]>
|
]]>
|
||||||
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
|
<isEqual prepend="AND" property="searchCnd" compareValue="streFileNm">
|
||||||
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
<![CDATA[ b.STRE_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
|
<isEqual prepend="AND" property="searchCnd" compareValue="orignlFileNm">
|
||||||
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
<![CDATA[ b.ORIGNL_FILE_NM LIKE CONCAT ('%', #searchWrd#,'%') ]]>
|
||||||
</isEqual>
|
</isEqual>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="FileManageDAO.selectImageFileList" parameterClass="FileVO" resultMap="fileList" >
|
<select id="FileManageDAO.selectImageFileList" parameterClass="FileVO" resultMap="fileList" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
SELECT
|
SELECT
|
||||||
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
|
||||||
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, a.CREAT_DT
|
b.FILE_EXTSN, b.ORIGNL_FILE_NM, b.FILE_SIZE, a.CREAT_DT
|
||||||
FROM
|
FROM
|
||||||
LETTNFILE a, LETTNFILEDETAIL b
|
LETTNFILE a, LETTNFILEDETAIL b
|
||||||
WHERE
|
WHERE
|
||||||
a.ATCH_FILE_ID = #atchFileId#
|
a.ATCH_FILE_ID = #atchFileId#
|
||||||
AND
|
AND
|
||||||
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
a.ATCH_FILE_ID = b.ATCH_FILE_ID
|
||||||
AND
|
AND
|
||||||
UPPER(b.FILE_EXTSN) IN ('GIF','JPG','BMP','PNG')
|
UPPER(b.FILE_EXTSN) IN ('GIF','JPG','BMP','PNG')
|
||||||
AND
|
AND
|
||||||
a.USE_AT = 'Y'
|
a.USE_AT = 'Y'
|
||||||
ORDER BY b.FILE_SN
|
ORDER BY b.FILE_SN
|
||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<update id="FileManageDAO.updateFileInfo" parameterClass="FileVO" >
|
<update id="FileManageDAO.updateFileInfo" parameterClass="FileVO" >
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
INSERT INTO LETTNFILEDETAIL
|
INSERT INTO LETTNFILEDETAIL
|
||||||
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
( ATCH_FILE_ID, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
|
||||||
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN )
|
ORIGNL_FILE_NM, FILE_EXTSN, FILE_SIZE, FILE_CN )
|
||||||
VALUES
|
VALUES
|
||||||
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
|
( #atchFileId#, #fileSn#, #fileStreCours#, #streFileNm#,
|
||||||
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn# )
|
#orignlFileNm#, #fileExtsn#, #fileMg#, #fileCn# )
|
||||||
ON DUPLICATE KEY UPDATE ATCH_FILE_ID = #atchFileId#,
|
ON DUPLICATE KEY UPDATE ATCH_FILE_ID = #atchFileId#,
|
||||||
FILE_STRE_COURS = #fileStreCours#,
|
FILE_STRE_COURS = #fileStreCours#,
|
||||||
STRE_FILE_NM = #streFileNm#,
|
STRE_FILE_NM = #streFileNm#,
|
||||||
ORIGNL_FILE_NM = #orignlFileNm#,
|
ORIGNL_FILE_NM = #orignlFileNm#,
|
||||||
FILE_EXTSN = #fileExtsn#,
|
FILE_EXTSN = #fileExtsn#,
|
||||||
FILE_SIZE = #fileMg#,
|
FILE_SIZE = #fileMg#,
|
||||||
FILE_CN = #fileCn#
|
FILE_CN = #fileCn#
|
||||||
]]>
|
]]>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<update id="FileManageDAO.updateFileName" parameterClass="FileVO" >
|
<update id="FileManageDAO.updateFileName" parameterClass="FileVO" >
|
||||||
UPDATE
|
UPDATE
|
||||||
LETTNFILEDETAIL
|
LETTNFILEDETAIL
|
||||||
SET
|
SET
|
||||||
ORIGNL_FILE_NM = #orignlFileNm#
|
ORIGNL_FILE_NM = #orignlFileNm#
|
||||||
WHERE 1=1
|
WHERE 1=1
|
||||||
AND ATCH_FILE_ID = #atchFileId#
|
AND ATCH_FILE_ID = #atchFileId#
|
||||||
AND FILE_SN = #fileSn#
|
AND FILE_SN = #fileSn#
|
||||||
</update>
|
</update>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -35,6 +35,7 @@
|
|||||||
, req_nmbr
|
, req_nmbr
|
||||||
, prsctr_nm
|
, prsctr_nm
|
||||||
, req_state_cd
|
, req_state_cd
|
||||||
|
, atch_file_id
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 조회용 공통 컬럼 명 -->
|
<!-- 조회용 공통 컬럼 명 -->
|
||||||
@ -62,6 +63,7 @@
|
|||||||
, a.req_nmbr AS reqNmbr
|
, a.req_nmbr AS reqNmbr
|
||||||
, a.prsctr_nm AS prsctrNm
|
, a.prsctr_nm AS prsctrNm
|
||||||
, a.req_state_cd AS reqStateCd
|
, a.req_state_cd AS reqStateCd
|
||||||
|
, a.atch_file_id AS atchFileId
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
|
||||||
@ -93,6 +95,7 @@
|
|||||||
, #reqNmbr#
|
, #reqNmbr#
|
||||||
, #prsctrNm#
|
, #prsctrNm#
|
||||||
, #reqStateCd#
|
, #reqStateCd#
|
||||||
|
, #atchFileId#
|
||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@ -131,7 +134,8 @@
|
|||||||
, sex = #sex#
|
, sex = #sex#
|
||||||
, req_nmbr = #reqNmbr#
|
, req_nmbr = #reqNmbr#
|
||||||
, prsctr_nm = #prsctrNm#
|
, prsctr_nm = #prsctrNm#
|
||||||
, req_state_cd = #reqStateCd#
|
, req_state_cd = #reqStateCd#
|
||||||
|
, atch_file_id = #atchFileId#
|
||||||
WHERE
|
WHERE
|
||||||
sspn_idtmt_trgt_ord = #sspnIdtmtTrgtOrd#
|
sspn_idtmt_trgt_ord = #sspnIdtmtTrgtOrd#
|
||||||
</update>
|
</update>
|
||||||
|
|||||||
@ -1,352 +1,352 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
|
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
|
||||||
<!-- 찾교 강사, 강사상세 테이블 -->
|
<!-- 찾교 강사, 강사상세 테이블 -->
|
||||||
<sqlMap namespace="VELctrMIX">
|
<sqlMap namespace="VELctrMIX">
|
||||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||||
<typeAlias alias="VELctrDetailVO" type="kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO"/>
|
<typeAlias alias="VELctrDetailVO" type="kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO"/>
|
||||||
|
|
||||||
|
|
||||||
<!-- 공통 테이블 명 -->
|
<!-- 공통 테이블 명 -->
|
||||||
<sql id="VELctrMIXDAO.table_name">
|
<sql id="VELctrMIXDAO.table_name">
|
||||||
ve_lctr_stng
|
ve_lctr_stng
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 저장용 공통 컬럼 명 -->
|
<!-- 저장용 공통 컬럼 명 -->
|
||||||
<sql id="VELctrMIXDAO.column_name">
|
<sql id="VELctrMIXDAO.column_name">
|
||||||
instr_div,
|
instr_div,
|
||||||
user_id,
|
user_id,
|
||||||
lctr_stng_ord,
|
lctr_stng_ord,
|
||||||
|
|
||||||
sun_lctr_yn,
|
sun_lctr_yn,
|
||||||
mon_lctr_yn,
|
mon_lctr_yn,
|
||||||
tue_lctr_yn,
|
tue_lctr_yn,
|
||||||
wed_lctr_yn,
|
wed_lctr_yn,
|
||||||
thu_lctr_yn,
|
thu_lctr_yn,
|
||||||
fri_lctr_yn,
|
fri_lctr_yn,
|
||||||
sat_lctr_yn,
|
sat_lctr_yn,
|
||||||
zoom_yn,
|
zoom_yn,
|
||||||
yr_mxmm_asgnm_tm,
|
yr_mxmm_asgnm_tm,
|
||||||
mnt_mnmm_tm,
|
mnt_mnmm_tm,
|
||||||
prfrn_fld_cd,
|
prfrn_fld_cd,
|
||||||
onln_psbl_yn,
|
onln_psbl_yn,
|
||||||
|
|
||||||
sbmt_yn,
|
sbmt_yn,
|
||||||
sbmt_pnttm,
|
sbmt_pnttm,
|
||||||
aprvl_cd,
|
aprvl_cd,
|
||||||
aprvl_pnttm,
|
aprvl_pnttm,
|
||||||
aprvl_id,
|
aprvl_id,
|
||||||
aprvl_cn,
|
aprvl_cn,
|
||||||
|
|
||||||
frst_regist_pnttm,
|
frst_regist_pnttm,
|
||||||
frst_register_id,
|
frst_register_id,
|
||||||
last_updt_pnttm,
|
last_updt_pnttm,
|
||||||
last_updusr_id,
|
last_updusr_id,
|
||||||
|
|
||||||
use_yn,
|
use_yn,
|
||||||
|
|
||||||
isltn_psbl_yn,
|
isltn_psbl_yn,
|
||||||
cntns_lctr_psbl_yn,
|
cntns_lctr_psbl_yn,
|
||||||
|
|
||||||
lctr_stng_yr,
|
lctr_stng_yr,
|
||||||
asgnm_tm_1,
|
asgnm_tm_1,
|
||||||
asgnm_tm_2,
|
asgnm_tm_2,
|
||||||
asgnm_tm_3,
|
asgnm_tm_3,
|
||||||
asgnm_tm_4,
|
asgnm_tm_4,
|
||||||
asgnm_tm_5,
|
asgnm_tm_5,
|
||||||
asgnm_tm_6,
|
asgnm_tm_6,
|
||||||
asgnm_tm_7,
|
asgnm_tm_7,
|
||||||
asgnm_tm_8,
|
asgnm_tm_8,
|
||||||
asgnm_tm_9,
|
asgnm_tm_9,
|
||||||
asgnm_tm_10,
|
asgnm_tm_10,
|
||||||
asgnm_tm_11,
|
asgnm_tm_11,
|
||||||
asgnm_tm_12
|
asgnm_tm_12
|
||||||
|
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 조회용 공통 컬럼 명 -->
|
<!-- 조회용 공통 컬럼 명 -->
|
||||||
<sql id="VELctrMIXDAO.select_column_name">
|
<sql id="VELctrMIXDAO.select_column_name">
|
||||||
a.instr_div AS instrDiv,
|
a.instr_div AS instrDiv,
|
||||||
a.user_id AS userId,
|
a.user_id AS userId,
|
||||||
a.lctr_stng_ord AS lctrStngOrd,
|
a.lctr_stng_ord AS lctrStngOrd,
|
||||||
|
|
||||||
a.sun_lctr_yn AS sunLctrYn,
|
a.sun_lctr_yn AS sunLctrYn,
|
||||||
a.mon_lctr_yn AS monLctrYn,
|
a.mon_lctr_yn AS monLctrYn,
|
||||||
a.tue_lctr_yn AS tueLctrYn,
|
a.tue_lctr_yn AS tueLctrYn,
|
||||||
a.wed_lctr_yn AS wedLctrYn,
|
a.wed_lctr_yn AS wedLctrYn,
|
||||||
a.thu_lctr_yn AS thuLctrYn,
|
a.thu_lctr_yn AS thuLctrYn,
|
||||||
a.fri_lctr_yn AS friLctrYn,
|
a.fri_lctr_yn AS friLctrYn,
|
||||||
a.sat_lctr_yn AS satLctrYn,
|
a.sat_lctr_yn AS satLctrYn,
|
||||||
a.zoom_yn AS zoomYn,
|
a.zoom_yn AS zoomYn,
|
||||||
a.yr_mxmm_asgnm_tm AS yrMxmmAsgnmTm,
|
a.yr_mxmm_asgnm_tm AS yrMxmmAsgnmTm,
|
||||||
a.mnt_mnmm_tm AS mntMnmmTm,
|
a.mnt_mnmm_tm AS mntMnmmTm,
|
||||||
a.prfrn_fld_cd AS prfrnFldCd,
|
a.prfrn_fld_cd AS prfrnFldCd,
|
||||||
a.onln_psbl_yn AS onlnPsblYn,
|
a.onln_psbl_yn AS onlnPsblYn,
|
||||||
|
|
||||||
a.sbmt_yn AS sbmtYn,
|
a.sbmt_yn AS sbmtYn,
|
||||||
a.sbmt_pnttm AS sbmtPnttm,
|
a.sbmt_pnttm AS sbmtPnttm,
|
||||||
a.aprvl_cd AS aprvlCd,
|
a.aprvl_cd AS aprvlCd,
|
||||||
a.aprvl_pnttm AS aprvlPnttm,
|
a.aprvl_pnttm AS aprvlPnttm,
|
||||||
|
|
||||||
a.aprvl_id AS aprvlId,
|
a.aprvl_id AS aprvlId,
|
||||||
a.aprvl_cn AS aprvlCn,
|
a.aprvl_cn AS aprvlCn,
|
||||||
|
|
||||||
DATE_FORMAT(a.frst_regist_pnttm,'%Y-%m-%d') AS frstRegistPnttm,
|
DATE_FORMAT(a.frst_regist_pnttm,'%Y-%m-%d') AS frstRegistPnttm,
|
||||||
a.frst_register_id AS frstRegisterId,
|
a.frst_register_id AS frstRegisterId,
|
||||||
DATE_FORMAT(a.last_updt_pnttm,'%Y-%m-%d') AS lastUpdtPnttm,
|
DATE_FORMAT(a.last_updt_pnttm,'%Y-%m-%d') AS lastUpdtPnttm,
|
||||||
a.last_updusr_id AS lastUpdusrId,
|
a.last_updusr_id AS lastUpdusrId,
|
||||||
|
|
||||||
a.use_yn AS useYn,
|
a.use_yn AS useYn,
|
||||||
|
|
||||||
a.isltn_psbl_yn AS isltnPsblYn,
|
a.isltn_psbl_yn AS isltnPsblYn,
|
||||||
a.cntns_lctr_psbl_yn AS cntnsLctrPsblYn,
|
a.cntns_lctr_psbl_yn AS cntnsLctrPsblYn,
|
||||||
|
|
||||||
a.lctr_stng_yr AS lctrStngYr,
|
a.lctr_stng_yr AS lctrStngYr,
|
||||||
a.asgnm_tm_1 AS asgnmTm1,
|
a.asgnm_tm_1 AS asgnmTm1,
|
||||||
a.asgnm_tm_2 AS asgnmTm2,
|
a.asgnm_tm_2 AS asgnmTm2,
|
||||||
a.asgnm_tm_3 AS asgnmTm3,
|
a.asgnm_tm_3 AS asgnmTm3,
|
||||||
a.asgnm_tm_4 AS asgnmTm4,
|
a.asgnm_tm_4 AS asgnmTm4,
|
||||||
a.asgnm_tm_5 AS asgnmTm5,
|
a.asgnm_tm_5 AS asgnmTm5,
|
||||||
a.asgnm_tm_6 AS asgnmTm6,
|
a.asgnm_tm_6 AS asgnmTm6,
|
||||||
a.asgnm_tm_7 AS asgnmTm7,
|
a.asgnm_tm_7 AS asgnmTm7,
|
||||||
a.asgnm_tm_8 AS asgnmTm8,
|
a.asgnm_tm_8 AS asgnmTm8,
|
||||||
a.asgnm_tm_9 AS asgnmTm9,
|
a.asgnm_tm_9 AS asgnmTm9,
|
||||||
a.asgnm_tm_10 AS asgnmTm10,
|
a.asgnm_tm_10 AS asgnmTm10,
|
||||||
a.asgnm_tm_11 AS asgnmTm11,
|
a.asgnm_tm_11 AS asgnmTm11,
|
||||||
a.asgnm_tm_12 AS asgnmTm12
|
a.asgnm_tm_12 AS asgnmTm12
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 강의 설정 정보 R -->
|
<!-- 강의 설정 정보 R -->
|
||||||
<select id="VELctrMIXDAO.selectDetail" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectDetail" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
/* 강의 설정 정보 테이블 */
|
/* 강의 설정 정보 테이블 */
|
||||||
SELECT
|
SELECT
|
||||||
<include refid="VELctrMIXDAO.select_column_name"/>
|
<include refid="VELctrMIXDAO.select_column_name"/>
|
||||||
FROM
|
FROM
|
||||||
<include refid="VELctrMIXDAO.table_name"/> a
|
<include refid="VELctrMIXDAO.table_name"/> a
|
||||||
WHERE
|
WHERE
|
||||||
a.instr_div = #instrDiv#
|
a.instr_div = #instrDiv#
|
||||||
AND a.user_id = #userId#
|
AND a.user_id = #userId#
|
||||||
|
|
||||||
<isNotEmpty property="useYn">
|
<isNotEmpty property="useYn">
|
||||||
AND a.use_yn=#useYn# /*사용중인 설정값을 가져온다. Y 로 설정*/
|
AND a.use_yn=#useYn# /*사용중인 설정값을 가져온다. Y 로 설정*/
|
||||||
</isNotEmpty><isNotEmpty property="lctrStngOrd">
|
</isNotEmpty><isNotEmpty property="lctrStngOrd">
|
||||||
AND a.lctr_stng_ord=#lctrStngOrd# /*사용자가 저장중인 row를 가져오는 설정*/
|
AND a.lctr_stng_ord=#lctrStngOrd# /*사용자가 저장중인 row를 가져오는 설정*/
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
ORDER BY lctr_stng_ord desc
|
ORDER BY lctr_stng_ord desc
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강의설정 수정화면 정보 -->
|
<!-- 강의설정 수정화면 정보 -->
|
||||||
<select id="VELctrMIXDAO.selectLctrStngDetail" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectLctrStngDetail" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
|
|
||||||
SELECT
|
SELECT
|
||||||
<include refid="VELctrMIXDAO.select_column_name"/>
|
<include refid="VELctrMIXDAO.select_column_name"/>
|
||||||
FROM
|
FROM
|
||||||
<include refid="VELctrMIXDAO.table_name"/> a
|
<include refid="VELctrMIXDAO.table_name"/> a
|
||||||
WHERE
|
WHERE
|
||||||
a.instr_div = #instrDiv#
|
a.instr_div = #instrDiv#
|
||||||
AND a.user_id = #userId#
|
AND a.user_id = #userId#
|
||||||
AND a.sbmt_yn IS NULL
|
AND a.sbmt_yn IS NULL
|
||||||
AND a.use_yn = 'N'
|
AND a.use_yn = 'N'
|
||||||
ORDER BY lctr_stng_ord desc
|
ORDER BY lctr_stng_ord desc
|
||||||
LIMIT 1
|
LIMIT 1
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강의설정 요청 리스트 불러오기 -->
|
<!-- 강의설정 요청 리스트 불러오기 -->
|
||||||
<select id="VELctrMIXDAO.selectLctrStngSbmtList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectLctrStngSbmtList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
|
|
||||||
SELECT
|
SELECT
|
||||||
<include refid="VELctrMIXDAO.select_column_name"/>
|
<include refid="VELctrMIXDAO.select_column_name"/>
|
||||||
FROM
|
FROM
|
||||||
<include refid="VELctrMIXDAO.table_name"/> a
|
<include refid="VELctrMIXDAO.table_name"/> a
|
||||||
WHERE
|
WHERE
|
||||||
a.instr_div = #instrDiv#
|
a.instr_div = #instrDiv#
|
||||||
AND a.user_id = #userId#
|
AND a.user_id = #userId#
|
||||||
AND a.sbmt_yn ='Y'
|
AND a.sbmt_yn ='Y'
|
||||||
|
|
||||||
<isNotEmpty property="aprvlCd">
|
<isNotEmpty property="aprvlCd">
|
||||||
AND a.aprvl_cd = #aprvlCd#
|
AND a.aprvl_cd = #aprvlCd#
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
<isEmpty property="aprvlCd">
|
<isEmpty property="aprvlCd">
|
||||||
AND a.aprvl_cd IS NOT NULL
|
AND a.aprvl_cd IS NOT NULL
|
||||||
</isEmpty>
|
</isEmpty>
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강사 정보 R -->
|
<!-- 강사 정보 R -->
|
||||||
<select id="VELctrMIXDAO.selectDupCheck" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectDupCheck" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT
|
SELECT
|
||||||
count(*) totCnt
|
count(*) totCnt
|
||||||
FROM
|
FROM
|
||||||
ve_lctr_area_mng
|
ve_lctr_area_mng
|
||||||
WHERE
|
WHERE
|
||||||
1=1
|
1=1
|
||||||
|
|
||||||
<isNotEmpty property="selectPagingListQuery">
|
<isNotEmpty property="selectPagingListQuery">
|
||||||
$selectPagingListQuery$
|
$selectPagingListQuery$
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강사 정보 L -->
|
<!-- 강사 정보 L -->
|
||||||
<select id="VELctrMIXDAO.selectList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT
|
SELECT
|
||||||
<include refid="VELctrMIXDAO.select_column_name"/>
|
<include refid="VELctrMIXDAO.select_column_name"/>
|
||||||
FROM
|
FROM
|
||||||
<include refid="VELctrMIXDAO.table_name"/> a
|
<include refid="VELctrMIXDAO.table_name"/> a
|
||||||
WHERE
|
WHERE
|
||||||
1=1
|
1=1
|
||||||
|
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강사 정보 L page -->
|
<!-- 강사 정보 L page -->
|
||||||
<select id="VELctrMIXDAO.selectPagingList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectPagingList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT
|
SELECT
|
||||||
COUNT(1) OVER() AS totCnt ,
|
COUNT(1) OVER() AS totCnt ,
|
||||||
<include refid="VELctrMIXDAO.select_column_name"/>
|
<include refid="VELctrMIXDAO.select_column_name"/>
|
||||||
|
|
||||||
FROM
|
FROM
|
||||||
<include refid="VELctrMIXDAO.table_name"/> a
|
<include refid="VELctrMIXDAO.table_name"/> a
|
||||||
|
|
||||||
WHERE
|
WHERE
|
||||||
1=1
|
1=1
|
||||||
|
|
||||||
|
|
||||||
<isNotEmpty property="selectPagingListQuery">
|
<isNotEmpty property="selectPagingListQuery">
|
||||||
$selectPagingListQuery$
|
$selectPagingListQuery$
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
<isNotEmpty property="userId">
|
<isNotEmpty property="userId">
|
||||||
AND a.user_id=#userId#
|
AND a.user_id=#userId#
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
<isNotEmpty property="instrDiv">
|
<isNotEmpty property="instrDiv">
|
||||||
AND a.instr_div=#instrDiv#
|
AND a.instr_div=#instrDiv#
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ORDER BY 1=1
|
ORDER BY 1=1
|
||||||
|
|
||||||
<isEmpty property="orderByQuery">
|
<isEmpty property="orderByQuery">
|
||||||
, a.user_id desc
|
, a.user_id desc
|
||||||
</isEmpty>
|
</isEmpty>
|
||||||
<isNotEmpty property="orderByQuery">
|
<isNotEmpty property="orderByQuery">
|
||||||
, $orderByQuery$
|
, $orderByQuery$
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
|
|
||||||
|
|
||||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 설정 년월L -->
|
<!-- 설정 년월L -->
|
||||||
<select id="VELctrMIXDAO.selectStngYrMntList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectStngYrMntList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT CONCAT(aa.stndrd_yr,bb.stndrd_mnt) AS stngYrMnt
|
SELECT CONCAT(aa.stndrd_yr,bb.stndrd_mnt) AS stngYrMnt
|
||||||
FROM (
|
FROM (
|
||||||
SELECT a.stndrd_yr*1+b.stndrd_mnt*1 stndrd_yr
|
SELECT a.stndrd_yr*1+b.stndrd_mnt*1 stndrd_yr
|
||||||
FROM (
|
FROM (
|
||||||
SELECT '2022' stndrd_yr
|
SELECT '2022' stndrd_yr
|
||||||
)a
|
)a
|
||||||
,
|
,
|
||||||
(
|
(
|
||||||
SELECT '01' stndrd_mnt
|
SELECT '01' stndrd_mnt
|
||||||
UNION ALL SELECT '02'
|
UNION ALL SELECT '02'
|
||||||
UNION ALL SELECT '03'
|
UNION ALL SELECT '03'
|
||||||
UNION ALL SELECT '04'
|
UNION ALL SELECT '04'
|
||||||
UNION ALL SELECT '05'
|
UNION ALL SELECT '05'
|
||||||
UNION ALL SELECT '06'
|
UNION ALL SELECT '06'
|
||||||
UNION ALL SELECT '07'
|
UNION ALL SELECT '07'
|
||||||
UNION ALL SELECT '08'
|
UNION ALL SELECT '08'
|
||||||
UNION ALL SELECT '09'
|
UNION ALL SELECT '09'
|
||||||
UNION ALL SELECT '10'
|
UNION ALL SELECT '10'
|
||||||
UNION ALL SELECT '11'
|
UNION ALL SELECT '11'
|
||||||
UNION ALL SELECT '12'
|
UNION ALL SELECT '12'
|
||||||
)b
|
)b
|
||||||
)aa
|
)aa
|
||||||
,(
|
,(
|
||||||
SELECT '01' stndrd_mnt
|
SELECT '01' stndrd_mnt
|
||||||
UNION ALL SELECT '02'
|
UNION ALL SELECT '02'
|
||||||
UNION ALL SELECT '03'
|
UNION ALL SELECT '03'
|
||||||
UNION ALL SELECT '04'
|
UNION ALL SELECT '04'
|
||||||
UNION ALL SELECT '05'
|
UNION ALL SELECT '05'
|
||||||
UNION ALL SELECT '06'
|
UNION ALL SELECT '06'
|
||||||
UNION ALL SELECT '07'
|
UNION ALL SELECT '07'
|
||||||
UNION ALL SELECT '08'
|
UNION ALL SELECT '08'
|
||||||
UNION ALL SELECT '09'
|
UNION ALL SELECT '09'
|
||||||
UNION ALL SELECT '10'
|
UNION ALL SELECT '10'
|
||||||
UNION ALL SELECT '11'
|
UNION ALL SELECT '11'
|
||||||
UNION ALL SELECT '12'
|
UNION ALL SELECT '12'
|
||||||
)bb
|
)bb
|
||||||
WHERE 1=1
|
WHERE 1=1
|
||||||
AND DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 month),'%Y%m')>=CONCAT(aa.stndrd_yr,bb.stndrd_mnt)
|
AND DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 month),'%Y%m')>=CONCAT(aa.stndrd_yr,bb.stndrd_mnt)
|
||||||
ORDER BY CONCAT(aa.stndrd_yr,bb.stndrd_mnt) DESC
|
ORDER BY CONCAT(aa.stndrd_yr,bb.stndrd_mnt) DESC
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 설정 년월L -->
|
<!-- 설정 년월L -->
|
||||||
<select id="VELctrMIXDAO.selectStngYrList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectStngYrList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT concat(round(a.stndrd_yr*1+b.stndrd_mnt*1),'') stngYr
|
SELECT concat(round(a.stndrd_yr*1+b.stndrd_mnt*1),'') stngYr
|
||||||
, IF (DATE_FORMAT(NOW(),'%Y')= concat(round(a.stndrd_yr*1+b.stndrd_mnt*1),''),1,0) useYn
|
, IF (DATE_FORMAT(NOW(),'%Y')= concat(round(a.stndrd_yr*1+b.stndrd_mnt*1),''),1,0) useYn
|
||||||
FROM (
|
FROM (
|
||||||
SELECT '2022' stndrd_yr
|
SELECT '2022' stndrd_yr
|
||||||
)a
|
)a
|
||||||
,
|
,
|
||||||
(
|
(
|
||||||
SELECT '01' stndrd_mnt
|
SELECT '01' stndrd_mnt
|
||||||
UNION ALL SELECT '02'
|
UNION ALL SELECT '02'
|
||||||
UNION ALL SELECT '03'
|
UNION ALL SELECT '03'
|
||||||
UNION ALL SELECT '04'
|
UNION ALL SELECT '04'
|
||||||
UNION ALL SELECT '05'
|
UNION ALL SELECT '05'
|
||||||
UNION ALL SELECT '06'
|
UNION ALL SELECT '06'
|
||||||
UNION ALL SELECT '07'
|
UNION ALL SELECT '07'
|
||||||
UNION ALL SELECT '08'
|
UNION ALL SELECT '08'
|
||||||
UNION ALL SELECT '09'
|
UNION ALL SELECT '09'
|
||||||
UNION ALL SELECT '0'
|
UNION ALL SELECT '0'
|
||||||
)b
|
)b
|
||||||
ORDER BY a.stndrd_yr*1+b.stndrd_mnt*1
|
ORDER BY a.stndrd_yr*1+b.stndrd_mnt*1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 설정 년월L -->
|
<!-- 설정 년월L -->
|
||||||
<select id="VELctrMIXDAO.selectStngMntList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectStngMntList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT b.stngMnt
|
SELECT b.stngMnt
|
||||||
, IF (DATE_FORMAT(NOW(),'%m')= b.stngMnt, 1, 0) useYn
|
, IF (DATE_FORMAT(NOW(),'%m')= b.stngMnt, 1, 0) useYn
|
||||||
FROM
|
FROM
|
||||||
(
|
(
|
||||||
SELECT '01' stngMnt
|
SELECT '01' stngMnt
|
||||||
UNION ALL SELECT '02'
|
UNION ALL SELECT '02'
|
||||||
UNION ALL SELECT '03'
|
UNION ALL SELECT '03'
|
||||||
UNION ALL SELECT '04'
|
UNION ALL SELECT '04'
|
||||||
UNION ALL SELECT '05'
|
UNION ALL SELECT '05'
|
||||||
UNION ALL SELECT '06'
|
UNION ALL SELECT '06'
|
||||||
UNION ALL SELECT '07'
|
UNION ALL SELECT '07'
|
||||||
UNION ALL SELECT '08'
|
UNION ALL SELECT '08'
|
||||||
UNION ALL SELECT '09'
|
UNION ALL SELECT '09'
|
||||||
UNION ALL SELECT '10'
|
UNION ALL SELECT '10'
|
||||||
UNION ALL SELECT '11'
|
UNION ALL SELECT '11'
|
||||||
UNION ALL SELECT '12'
|
UNION ALL SELECT '12'
|
||||||
)b
|
)b
|
||||||
ORDER BY b.stngMnt
|
ORDER BY b.stngMnt
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 일자중복여부 체크 -->
|
<!-- 일자중복여부 체크 -->
|
||||||
<select id="VELctrMIXDAO.selectDupDateCount" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
<select id="VELctrMIXDAO.selectDupDateCount" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
|
||||||
SELECT count(*) AS totCnt
|
SELECT count(*) AS totCnt
|
||||||
FROM ve_lctr_rsrch_mng a
|
FROM ve_lctr_rsrch_mng a
|
||||||
WHERE 1=1
|
WHERE 1=1
|
||||||
AND (
|
AND (
|
||||||
(a.rsrch_strt_dt BETWEEN #rsrchStrtDt# AND #rsrchEndDt#)
|
(a.rsrch_strt_dt BETWEEN #rsrchStrtDt# AND #rsrchEndDt#)
|
||||||
OR
|
OR
|
||||||
(a.rsrch_end_dt BETWEEN #rsrchStrtDt# AND #rsrchEndDt#)
|
(a.rsrch_end_dt BETWEEN #rsrchStrtDt# AND #rsrchEndDt#)
|
||||||
OR
|
OR
|
||||||
(#rsrchStrtDt# BETWEEN a.rsrch_strt_dt AND a.rsrch_end_dt)
|
(#rsrchStrtDt# BETWEEN a.rsrch_strt_dt AND a.rsrch_end_dt)
|
||||||
OR
|
OR
|
||||||
(#rsrchEndDt# BETWEEN a.rsrch_strt_dt AND a.rsrch_end_dt)
|
(#rsrchEndDt# BETWEEN a.rsrch_strt_dt AND a.rsrch_end_dt)
|
||||||
)
|
)
|
||||||
AND CONCAT(a.rsrch_instr_div, a.stng_yr_mnt)!=CONCAT(#rsrchInstrDiv#, #stngYrMnt#)
|
AND CONCAT(a.rsrch_instr_div, a.stng_yr_mnt)!=CONCAT(#rsrchInstrDiv#, #stngYrMnt#)
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -1,46 +1,46 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<Configuration>
|
<Configuration>
|
||||||
<Appenders>
|
<Appenders>
|
||||||
<Console name="console" target="SYSTEM_OUT">
|
<Console name="console" target="SYSTEM_OUT">
|
||||||
<PatternLayout pattern="[%d{HH:mm:ss.SSS}] %p{length=1} %c %M %L | %m%n" />
|
<PatternLayout pattern="[%d{HH:mm:ss.SSS}] %p{length=1} %c %M %L | %m%n" />
|
||||||
</Console>
|
</Console>
|
||||||
</Appenders>
|
</Appenders>
|
||||||
<Loggers>
|
<Loggers>
|
||||||
<Logger name="org.apache" level="ERROR"></Logger>
|
<Logger name="org.apache" level="ERROR"></Logger>
|
||||||
<Logger name="org.springframework" level="ERROR"></Logger>
|
<Logger name="org.springframework" level="ERROR"></Logger>
|
||||||
|
|
||||||
<Logger name="egovframework" level="ERROR"></Logger>
|
<Logger name="egovframework" level="ERROR"></Logger>
|
||||||
<Logger name="egovframework.rte" level="DEBUG"></Logger>
|
<Logger name="egovframework.rte" level="DEBUG"></Logger>
|
||||||
|
|
||||||
<Logger name="com.ibatis.sqlmap" level="INFO"></Logger>
|
<Logger name="com.ibatis.sqlmap" level="INFO"></Logger>
|
||||||
|
|
||||||
|
|
||||||
<Logger name="egovframework.let" level="DEBUG"></Logger>
|
<Logger name="egovframework.let" level="DEBUG"></Logger>
|
||||||
<Logger name="egovframework.com.cmm" level="DEBUG"></Logger>
|
<Logger name="egovframework.com.cmm" level="DEBUG"></Logger>
|
||||||
<Logger name="egovframework.kccadr" level="DEBUG"></Logger>
|
<Logger name="egovframework.kccadr" level="DEBUG"></Logger>
|
||||||
|
|
||||||
<!-- <Logger name="jdbc.sqlonly" level="DEBUG">
|
<!-- <Logger name="jdbc.sqlonly" level="DEBUG">
|
||||||
<RegexFilter regex="(?s).*NOT_SQL_LOG.*" onMatch="DENY" onMismatch="NEUTRAL" useRawMsg="true" />
|
<RegexFilter regex="(?s).*NOT_SQL_LOG.*" onMatch="DENY" onMismatch="NEUTRAL" useRawMsg="true" />
|
||||||
</Logger> -->
|
</Logger> -->
|
||||||
|
|
||||||
<Logger name="jdbc.sqltiming" level="WARN" additivity="false">
|
<Logger name="jdbc.sqltiming" level="WARN" additivity="false">
|
||||||
<AppenderRef ref="console" />
|
<AppenderRef ref="console" />
|
||||||
</Logger>
|
</Logger>
|
||||||
|
|
||||||
<Logger name="jdbc.audit" level="OFF"></Logger>
|
<Logger name="jdbc.audit" level="OFF"></Logger>
|
||||||
<Logger name="jdbc.resultset" level="OFF"></Logger>
|
<Logger name="jdbc.resultset" level="OFF"></Logger>
|
||||||
<Logger name="jdbc.resultsettable" level="OFF"></Logger>
|
<Logger name="jdbc.resultsettable" level="OFF"></Logger>
|
||||||
<Logger name="jdbc.connection" level="OFF"></Logger>
|
<Logger name="jdbc.connection" level="OFF"></Logger>
|
||||||
<logger name="java.sql.ResultSet" level="OFF"></logger>
|
<logger name="java.sql.ResultSet" level="OFF"></logger>
|
||||||
<logger name="java.sql.PreparedStatement" level="OFF"></logger>
|
<logger name="java.sql.PreparedStatement" level="OFF"></logger>
|
||||||
<logger name="java.sql.Connection" level="OFF"></logger>
|
<logger name="java.sql.Connection" level="OFF"></logger>
|
||||||
<logger name="org.quartz.core.QuartzSchedulerThread" level="OFF"></logger>
|
<logger name="org.quartz.core.QuartzSchedulerThread" level="OFF"></logger>
|
||||||
<logger name="org.quartz.core.JobRunShell" level="OFF"></logger>
|
<logger name="org.quartz.core.JobRunShell" level="OFF"></logger>
|
||||||
<logger name="log4jdbc.debug" level="OFF"></logger>
|
<logger name="log4jdbc.debug" level="OFF"></logger>
|
||||||
|
|
||||||
<Root level="DEBUG">
|
<Root level="DEBUG">
|
||||||
<AppenderRef ref="console" />
|
<AppenderRef ref="console" />
|
||||||
</Root>
|
</Root>
|
||||||
|
|
||||||
</Loggers>
|
</Loggers>
|
||||||
</Configuration>
|
</Configuration>
|
||||||
@ -107,7 +107,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th scope="row">관할청</th>
|
<th scope="row">관할청</th>
|
||||||
<td>
|
<td>
|
||||||
<c:out value="${info.cmptntAthrt }" />
|
<ve:code codeId="VEA008" code="${info.cmptntAthrt }"/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -170,6 +170,17 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>첨부파일</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
|
||||||
|
<c:param name="param_atchFileId" value="${info.atchFileId}" />
|
||||||
|
<c:param name="pdf_view" value="Y" />
|
||||||
|
</c:import>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -303,7 +303,7 @@
|
|||||||
<c:out value="${list.vntYear }" />형제<c:out value="${list.vntNmbr }" />
|
<c:out value="${list.vntYear }" />형제<c:out value="${list.vntNmbr }" />
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:out value="${list.cmptntAthrt }" />
|
<ve:code codeId="VEA008" code="${list.cmptntAthrt }"/>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:out value="${list.dBirth }" />
|
<c:out value="${list.dBirth }" />
|
||||||
|
|||||||
@ -29,7 +29,16 @@
|
|||||||
<title>교육과정관리</title>
|
<title>교육과정관리</title>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
//세부과정 추가 버튼 클릭 시 세부과정 추가
|
$(document).ready(function() {
|
||||||
|
//파일첨부관련 설정들===============================================
|
||||||
|
$(".btn_type01").on('click', function(){
|
||||||
|
$("#file_temp").click();
|
||||||
|
});
|
||||||
|
|
||||||
|
//파일첨부관련 설정들===============================================
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
function addPro() {
|
function addPro() {
|
||||||
var addQuest = $(".addPro_wrap");
|
var addQuest = $(".addPro_wrap");
|
||||||
var questLen = addQuest.children("div").length;
|
var questLen = addQuest.children("div").length;
|
||||||
@ -105,28 +114,36 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
var data = new FormData(document.getElementById("createForm"));
|
var data = new FormData(document.getElementById("createForm"));
|
||||||
if(confirm("수정하시겠습니까?")){
|
|
||||||
var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/trgtMdfyAjax.do'/>";
|
//첨부파일 등록 처리-step2
|
||||||
$.ajax({
|
_fileForm2.forEach(function(obj, idx) {
|
||||||
type:"POST",
|
if (obj) data.append("file"+idx, obj.fileObj);
|
||||||
url: url,
|
});
|
||||||
data: data,
|
|
||||||
dataType:'json',
|
if(confirm("수정하시겠습니까?")){
|
||||||
async: false,
|
var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/trgtMdfyAjax.do'/>";
|
||||||
processData: false,
|
$.ajax({
|
||||||
contentType: false,
|
type:"POST",
|
||||||
cache: false,
|
enctype: 'multipart/form-data',
|
||||||
success:function(returnData){
|
url: url,
|
||||||
if(returnData.result == "success"){
|
data: data,
|
||||||
alert("수정되었습니다.");
|
dataType:'json',
|
||||||
fncGoList();
|
async: false,
|
||||||
}
|
processData: false,
|
||||||
},
|
contentType: false,
|
||||||
error:function(request , status, error){
|
cache: false,
|
||||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
success:function(returnData){
|
||||||
|
if(returnData.result == "success"){
|
||||||
|
alert("수정되었습니다.");
|
||||||
|
fncGoList();
|
||||||
}
|
}
|
||||||
});
|
},
|
||||||
}
|
error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -147,7 +164,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 관할청 검사
|
// 관할청 검사
|
||||||
if($("input[name='cmptntAthrt']").val().trim() == ""){
|
if($("input[name='cmptntAthrt']").val()){
|
||||||
alert("관할청을 입력해주세요.");
|
alert("관할청을 입력해주세요.");
|
||||||
$("input[name='cmptntAthrt']").focus();
|
$("input[name='cmptntAthrt']").focus();
|
||||||
return true;
|
return true;
|
||||||
@ -181,11 +198,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 의뢰상태 검사
|
// 의뢰상태 검사
|
||||||
if($("#reqStateCd").val().trim() == ""){
|
/* if($("#reqStateCd").val().trim() == ""){
|
||||||
alert("의뢰상태를 입력해주세요.");
|
alert("의뢰상태를 입력해주세요.");
|
||||||
$("input[name='reqStateCd']").focus();
|
$("input[name='reqStateCd']").focus();
|
||||||
return true;
|
return true;
|
||||||
}
|
} */
|
||||||
|
|
||||||
// 교육상태 검사
|
// 교육상태 검사
|
||||||
/* if($("input[name='eduStateCd']").val().trim() == ""){
|
/* if($("input[name='eduStateCd']").val().trim() == ""){
|
||||||
@ -219,6 +236,39 @@
|
|||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 파일등록 */
|
||||||
|
var _fileIdx = 0;
|
||||||
|
var _fileForm2 = new Array();
|
||||||
|
function handleFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
var limitsize = 20*1024*1024; //파일 제한 체크(1개, 20MB)
|
||||||
|
for (var i = 0; i < files.length; i++){
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 20MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _fileIdx;
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_fileForm2.push(tmpObj);
|
||||||
|
sendFileToServer(fd, obj, files[i], _fileIdx);
|
||||||
|
_fileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.totalfileCount').text($('.item_file_size').length) ;
|
||||||
|
$('.item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
@ -227,6 +277,7 @@
|
|||||||
</form:form>
|
</form:form>
|
||||||
<form:form id="createForm" name="createForm" commandName="vEPrcsDetailVO" method="post">
|
<form:form id="createForm" name="createForm" commandName="vEPrcsDetailVO" method="post">
|
||||||
<input type="hidden" name="sspnIdtmtTrgtOrd" value="<c:out value='${info.sspnIdtmtTrgtOrd}' />"/>
|
<input type="hidden" name="sspnIdtmtTrgtOrd" value="<c:out value='${info.sspnIdtmtTrgtOrd}' />"/>
|
||||||
|
<input type="hidden" name="atchFileId" value="<c:out value='${info.atchFileId}' />" />
|
||||||
<!-- cont -->
|
<!-- cont -->
|
||||||
<div class="cont_wrap">
|
<div class="cont_wrap">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
@ -281,7 +332,10 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th scope="row">관할청</th>
|
<th scope="row">관할청</th>
|
||||||
<td>
|
<td>
|
||||||
<input type="text" name="cmptntAthrt" value="<c:out value="${info.cmptntAthrt }" />" />
|
<ve:select codeId="VEA008" name="cmptntAthrt" id="cmptntAthrt" css="class='sel_type1'"
|
||||||
|
selectedText="${info.cmptntAthrt }" defaultValue=""
|
||||||
|
defaultText='선택'
|
||||||
|
/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -358,6 +412,87 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||||
|
<p>첨부파일</p>
|
||||||
|
</th>
|
||||||
|
<td class="upload_area" colspan="3">
|
||||||
|
<!-- <input type="text" id="fileNm" size="30" class="file_input" readonly> --><!-- <button type="button" class="btnType01 btn_add_file">파일 첨부하기</button> -->
|
||||||
|
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
<button type="button" id="filebutton" class="btn_type01">파일 첨부하기</button>
|
||||||
|
<p style="padding-left:30px;">첨부파일 가능 용량은 20MB입니다. </p><p style="color:red;font-weight:500">업로드 순서는 1.신청서 2.안내문 입니다.</p>
|
||||||
|
<div class="file_wrap file_upload_box no_img_box">
|
||||||
|
<table class="tbType02">
|
||||||
|
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 60%;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 20%;">
|
||||||
|
<col style="width: 10%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<!-- <th>
|
||||||
|
<input type="checkbox" id="all_check"><label for="all_check"></label>
|
||||||
|
</th> -->
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before">
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap fileAfter file_list_div">
|
||||||
|
<table class="tbType02">
|
||||||
|
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 60%">
|
||||||
|
<col style="width: 10%">
|
||||||
|
<col style="width: 20%">
|
||||||
|
<col style="width: 10%">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<!-- <th>
|
||||||
|
<input type="checkbox" id="all_check"><label for="all_check"></label>
|
||||||
|
</th> -->
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||||
|
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||||
|
<tr class="item_<c:out value='${fileList.atchFileId}' />_<c:out value='${fileList.fileSn}' /> uploaded_obj">
|
||||||
|
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
|
||||||
|
<span class="file_name_text"><c:out value='${fileList.orignlFileNm}' /></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<button type="button" class="btn_del" onclick="delAtchFile('<c:out value='${fileList.atchFileId}' />', '<c:out value='${fileList.fileSn}' />'); return false;" title="파일삭제"><i></i></button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -31,22 +31,9 @@
|
|||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
//세부과정 추가 버튼 클릭 시 세부과정 추가
|
//세부과정 추가 버튼 클릭 시 세부과정 추가
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
/* $('#dBirth').on('input', function() {
|
$(".btn_type01").on('click', function(){
|
||||||
var input = $(this).val();
|
$("#file_temp").click();
|
||||||
var length = input.length;
|
});
|
||||||
var lastChar = input.charAt(length - 1);
|
|
||||||
|
|
||||||
// 숫자만 입력되도록 검사
|
|
||||||
if (!lastChar.match(/[0-9]/)) {
|
|
||||||
$(this).val(input.substring(0, length - 1));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 포맷 적용
|
|
||||||
if (length === 4 || length === 7) {
|
|
||||||
$(this).val(input + '-');
|
|
||||||
}
|
|
||||||
}); */
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function fncSave(){
|
function fncSave(){
|
||||||
@ -57,29 +44,40 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
var data = new FormData(document.getElementById("createForm"));
|
var data = new FormData(document.getElementById("createForm"));
|
||||||
if(confirm("저장하시겠습니까?")){
|
|
||||||
var url = "${pageContext.request.contextPath}/kccadr/oprtn/cndtnSspnIdtmt/trgtRegAjax.do";
|
//첨부파일 등록 처리-step2
|
||||||
console.log(data);
|
_fileForm2.forEach(function(obj, idx) {
|
||||||
$.ajax({
|
if (obj) data.append("file"+idx, obj.fileObj);
|
||||||
type:"POST",
|
|
||||||
url: url,
|
});
|
||||||
data: data,
|
|
||||||
dataType:'json',
|
if(confirm("저장하시겠습니까?")){
|
||||||
async: false,
|
var url = "${pageContext.request.contextPath}/kccadr/oprtn/cndtnSspnIdtmt/trgtRegAjax.do";
|
||||||
processData: false,
|
console.log(data);
|
||||||
contentType: false,
|
$.ajax({
|
||||||
cache: false,
|
type:"POST",
|
||||||
success:function(returnData){
|
enctype: 'multipart/form-data',
|
||||||
if(returnData.result == "success"){
|
url: url,
|
||||||
alert("저장되었습니다.");
|
data: data,
|
||||||
fncGoList();
|
dataType:'json',
|
||||||
}
|
async: false,
|
||||||
},
|
processData: false,
|
||||||
error:function(request , status, error){
|
contentType: false,
|
||||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
cache: false,
|
||||||
|
success:function(returnData){
|
||||||
|
console.log('returnData :: ', returnData);
|
||||||
|
if(returnData.result == "success"){
|
||||||
|
alert("저장되었습니다.");
|
||||||
|
fncGoList();
|
||||||
|
}else if(returnData.result == "fail"){
|
||||||
|
alert(returnData.message);
|
||||||
}
|
}
|
||||||
});
|
},
|
||||||
}
|
error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -107,7 +105,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 관할청 검사
|
// 관할청 검사
|
||||||
if($("input[name='cmptntAthrt']").val().trim() == ""){
|
if($("input[name='cmptntAthrt']").val()){
|
||||||
alert("관할청을 입력해주세요.");
|
alert("관할청을 입력해주세요.");
|
||||||
$("input[name='cmptntAthrt']").focus();
|
$("input[name='cmptntAthrt']").focus();
|
||||||
return true;
|
return true;
|
||||||
@ -179,6 +177,40 @@
|
|||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 파일등록 */
|
||||||
|
var _fileIdx = 0;
|
||||||
|
var _fileForm2 = new Array();
|
||||||
|
function handleFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
console.log('files', files);
|
||||||
|
var limitsize = 20*1024*1024; //파일 제한 체크(1개, 20MB)
|
||||||
|
for (var i = 0; i < files.length; i++){
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 20MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _fileIdx;
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_fileForm2.push(tmpObj);
|
||||||
|
sendFileToServer(fd, obj, files[i], _fileIdx);
|
||||||
|
_fileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.totalfileCount').text($('.item_file_size').length) ;
|
||||||
|
$('.item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
@ -239,7 +271,10 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th scope="row">관할청</th>
|
<th scope="row">관할청</th>
|
||||||
<td>
|
<td>
|
||||||
<input type="text" name="cmptntAthrt" />
|
<ve:select codeId="VEA008" name="cmptntAthrt" id="cmptntAthrt" css="class='sel_type1'"
|
||||||
|
selectedText="" defaultValue=""
|
||||||
|
defaultText='선택'
|
||||||
|
/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -316,6 +351,88 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||||
|
<p>첨부파일</p>
|
||||||
|
</th>
|
||||||
|
<td class="upload_area" colspan="3">
|
||||||
|
<!-- <input type="text" id="fileNm" size="30" class="file_input" readonly> --><!-- <button type="button" class="btnType01 btn_add_file">파일 첨부하기</button> -->
|
||||||
|
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
<button type="button" id="filebutton" class="btn_type01">파일 첨부하기</button>
|
||||||
|
<p style="padding-left:30px;">첨부파일 가능 용량은 20MB입니다. </p><!-- <p style="color:red;font-weight:500">업로드 순서는 1.신청서 2.안내문 입니다.</p> -->
|
||||||
|
<div class="file_wrap file_upload_box no_img_box">
|
||||||
|
<table class="tbType02">
|
||||||
|
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 60%;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 20%;">
|
||||||
|
<col style="width: 10%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<!-- <th>
|
||||||
|
<input type="checkbox" id="all_check"><label for="all_check"></label>
|
||||||
|
</th> -->
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before">
|
||||||
|
<tr>
|
||||||
|
<td colspan="4">
|
||||||
|
<p>첨부하실 파일을 <span>마우스로 끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap fileAfter file_list_div">
|
||||||
|
<table class="tbType02">
|
||||||
|
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 60%">
|
||||||
|
<col style="width: 10%">
|
||||||
|
<col style="width: 20%">
|
||||||
|
<col style="width: 10%">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<!-- <th>
|
||||||
|
<input type="checkbox" id="all_check"><label for="all_check"></label>
|
||||||
|
</th> -->
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||||
|
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||||
|
<tr class="item_<c:out value='${fileList.atchFileId}' />_<c:out value='${fileList.fileSn}' /> uploaded_obj">
|
||||||
|
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<!-- <img src="/direct/img/upload_hwp_img.png" alt="" /> -->
|
||||||
|
<span class="file_name_text"><c:out value='${fileList.orignlFileNm}' /></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<button type="button" class="btn_del" onclick="delAtchFile('<c:out value='${fileList.atchFileId}' />', '<c:out value='${fileList.fileSn}' />'); return false;" title="파일삭제"><i></i></button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,379 +1,379 @@
|
|||||||
$(document).ready(function(){ //공통 js
|
$(document).ready(function(){ //공통 js
|
||||||
/* 목록 정렬 항목 아이콘 표시 */
|
/* 목록 정렬 항목 아이콘 표시 */
|
||||||
var searchSortCnd = $("[name='searchSortCnd']").val();
|
var searchSortCnd = $("[name='searchSortCnd']").val();
|
||||||
var searchSortOrd = $("[name='searchSortOrd']").val();
|
var searchSortOrd = $("[name='searchSortOrd']").val();
|
||||||
if (searchSortCnd != "" && searchSortOrd != "" && searchSortCnd != undefined && searchSortOrd != undefined) {
|
if (searchSortCnd != "" && searchSortOrd != "" && searchSortCnd != undefined && searchSortOrd != undefined) {
|
||||||
var $sort_div = $("#sort_"+ searchSortCnd);
|
var $sort_div = $("#sort_"+ searchSortCnd);
|
||||||
var sortClass = 'sortBtnAsc' ;
|
var sortClass = 'sortBtnAsc' ;
|
||||||
if (searchSortOrd == "desc") sortClass = "sortBtnDesc";
|
if (searchSortOrd == "desc") sortClass = "sortBtnDesc";
|
||||||
$sort_div.replaceClass('btn_sort' , sortClass) ;
|
$sort_div.replaceClass('btn_sort' , sortClass) ;
|
||||||
$sort_div.attr("btn_sort", searchSortOrd);
|
$sort_div.attr("btn_sort", searchSortOrd);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 정렬 항목 이벤트
|
// 정렬 항목 이벤트
|
||||||
$(".sort").click(function(e) {
|
$(".sort").click(function(e) {
|
||||||
listSortOrd(this);
|
listSortOrd(this);
|
||||||
});
|
});
|
||||||
|
|
||||||
//파일업로드 드래그앤 드롭
|
//파일업로드 드래그앤 드롭
|
||||||
var objDragAndDrop = $(".upload_area");
|
var objDragAndDrop = $(".upload_area");
|
||||||
$(document).on("dragenter",".upload_area",function(e){
|
$(document).on("dragenter",".upload_area",function(e){
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
//$(this).css('border', '2px solid #0B85A1');
|
//$(this).css('border', '2px solid #0B85A1');
|
||||||
});
|
});
|
||||||
$(document).on("dragover",".upload_area",function(e){
|
$(document).on("dragover",".upload_area",function(e){
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
});
|
});
|
||||||
$(document).on("drop",".upload_area",function(e){
|
$(document).on("drop",".upload_area",function(e){
|
||||||
//$(this).css('border', '2px dotted #0B85A1');
|
//$(this).css('border', '2px dotted #0B85A1');
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var files = e.originalEvent.dataTransfer.files;
|
var files = e.originalEvent.dataTransfer.files;
|
||||||
handleFileUpload(files,objDragAndDrop); //파일업로드
|
handleFileUpload(files,objDragAndDrop); //파일업로드
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('dragenter', function (e){
|
$(document).on('dragenter', function (e){
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
});
|
});
|
||||||
$(document).on('dragover', function (e){
|
$(document).on('dragover', function (e){
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
//objDragAndDrop.css('border', '2px dotted #0B85A1');
|
//objDragAndDrop.css('border', '2px dotted #0B85A1');
|
||||||
});
|
});
|
||||||
$(document).on('drop', function (e){
|
$(document).on('drop', function (e){
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
});
|
});
|
||||||
|
|
||||||
drawUploadArea()
|
drawUploadArea()
|
||||||
$(function(){ //단일 파일업로드
|
$(function(){ //단일 파일업로드
|
||||||
$('#file_temp').change(function(e){
|
$('#file_temp').change(function(e){
|
||||||
var objUpload = $(".upload_area");
|
var objUpload = $(".upload_area");
|
||||||
var files = $('#file_temp')[0].files;
|
var files = $('#file_temp')[0].files;
|
||||||
handleFileUpload(files,objUpload); //파일업로드
|
handleFileUpload(files,objUpload); //파일업로드
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
//최대 업로드 파일갯수 화면 노출 세팅
|
//최대 업로드 파일갯수 화면 노출 세팅
|
||||||
if($("[name='limitcount']").length>0){
|
if($("[name='limitcount']").length>0){
|
||||||
if($('.limitcount_li').length > 0){
|
if($('.limitcount_li').length > 0){
|
||||||
$('.limitcount_li').text($("[name='limitcount']").val());
|
$('.limitcount_li').text($("[name='limitcount']").val());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//프린트 워커 마크
|
//프린트 워커 마크
|
||||||
$('.printBtn').click(function(e){
|
$('.printBtn').click(function(e){
|
||||||
if(!confirm("프린트 하시겠습니까?")){
|
if(!confirm("프린트 하시겠습니까?")){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
var printPopup ;
|
var printPopup ;
|
||||||
printPopup= window.open("/tempPrint.html","print_open","width=760,height=750,top=0,left=0,noresizable,toolbar=no,status=no,scrollbars=yes,directory=n");
|
printPopup= window.open("/tempPrint.html","print_open","width=760,height=750,top=0,left=0,noresizable,toolbar=no,status=no,scrollbars=yes,directory=n");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
//목록 정렬 항목 클릭
|
//목록 정렬 항목 클릭
|
||||||
function listSortOrd(obj){
|
function listSortOrd(obj){
|
||||||
var sortOrd = $(obj).attr("sortOrd");
|
var sortOrd = $(obj).attr("sortOrd");
|
||||||
var sortCnd = $(obj).attr("id");
|
var sortCnd = $(obj).attr("id");
|
||||||
|
|
||||||
$("[name='searchSortCnd']").val(sortCnd.substring(5)); // 구분자 제거
|
$("[name='searchSortCnd']").val(sortCnd.substring(5)); // 구분자 제거
|
||||||
if (sortOrd == "desc") $("[name='searchSortOrd']").val("asc");
|
if (sortOrd == "desc") $("[name='searchSortOrd']").val("asc");
|
||||||
else $("[name='searchSortOrd']").val("desc");
|
else $("[name='searchSortOrd']").val("desc");
|
||||||
linkPage('1'); //각 JSP마다 다를때 메소드 정의해 줘야됨
|
linkPage('1'); //각 JSP마다 다를때 메소드 정의해 줘야됨
|
||||||
}
|
}
|
||||||
|
|
||||||
//인쇄 영역 공통
|
//인쇄 영역 공통
|
||||||
function printDiv(divName) {
|
function printDiv(divName) {
|
||||||
var printContents = $("."+divName).html();
|
var printContents = $("."+divName).html();
|
||||||
var originalContents = document.body.innerHTML;
|
var originalContents = document.body.innerHTML;
|
||||||
document.body.innerHTML = printContents;
|
document.body.innerHTML = printContents;
|
||||||
window.print();
|
window.print();
|
||||||
document.body.innerHTML = originalContents;
|
document.body.innerHTML = originalContents;
|
||||||
|
|
||||||
//originalContents 다시 그려줘서 이전의 메소드 다시 재지정
|
//originalContents 다시 그려줘서 이전의 메소드 다시 재지정
|
||||||
$(".sort").click(function(e) {
|
$(".sort").click(function(e) {
|
||||||
listSortOrd(this);
|
listSortOrd(this);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function printDiv2(divName) {
|
function printDiv2(divName) {
|
||||||
var printContents = document.getElementById(divName).innerHTML;
|
var printContents = document.getElementById(divName).innerHTML;
|
||||||
var originalContents = document.body.innerHTML;
|
var originalContents = document.body.innerHTML;
|
||||||
document.body.innerHTML = printContents;
|
document.body.innerHTML = printContents;
|
||||||
window.print();
|
window.print();
|
||||||
document.body.innerHTML = originalContents;
|
document.body.innerHTML = originalContents;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 파일사이즈 가져오기 */
|
/* 파일사이즈 가져오기 */
|
||||||
function getStrFileSize(filesize){
|
function getStrFileSize(filesize){
|
||||||
var sizeStr="";
|
var sizeStr="";
|
||||||
var sizeKB = filesize/1024;
|
var sizeKB = filesize/1024;
|
||||||
if(parseInt(sizeKB) > 1024){
|
if(parseInt(sizeKB) > 1024){
|
||||||
var sizeMB = sizeKB/1024;
|
var sizeMB = sizeKB/1024;
|
||||||
sizeStr = sizeMB.toFixed(2)+" MB";
|
sizeStr = sizeMB.toFixed(2)+" MB";
|
||||||
}else{
|
}else{
|
||||||
sizeStr = sizeKB.toFixed(2)+" KB";
|
sizeStr = sizeKB.toFixed(2)+" KB";
|
||||||
}
|
}
|
||||||
return sizeStr;
|
return sizeStr;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 파일 이미지 가져오기 */
|
/* 파일 이미지 가져오기 */
|
||||||
function getfile_img(file_name){
|
function getfile_img(file_name){
|
||||||
var img_type = file_name.split('.')[file_name.split('.').length-1].toLowerCase();
|
var img_type = file_name.split('.')[file_name.split('.').length-1].toLowerCase();
|
||||||
if(img_type == "xlsx"){
|
if(img_type == "xlsx"){
|
||||||
img_type = "xls";
|
img_type = "xls";
|
||||||
}else if(img_type == "jpeg" || img_type == "png" || img_type == "bmp"){
|
}else if(img_type == "jpeg" || img_type == "png" || img_type == "bmp"){
|
||||||
img_type = "jpg";
|
img_type = "jpg";
|
||||||
}else if(img_type == "doc"){
|
}else if(img_type == "doc"){
|
||||||
img_type = "hwp";
|
img_type = "hwp";
|
||||||
}
|
}
|
||||||
|
|
||||||
var img_url = "";
|
var img_url = "";
|
||||||
switch (img_type) {
|
switch (img_type) {
|
||||||
case "pdf" :
|
case "pdf" :
|
||||||
img_url = "/direct/img/enroll_pdf_file.png" ;
|
img_url = "/direct/img/enroll_pdf_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "xls" :
|
case "xls" :
|
||||||
img_url = "/direct/img/enroll_exel_file.png" ;
|
img_url = "/direct/img/enroll_exel_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "hwp" :
|
case "hwp" :
|
||||||
img_url = "/direct/img/enroll_hwp_file.png" ;
|
img_url = "/direct/img/enroll_hwp_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "jpg" :
|
case "jpg" :
|
||||||
img_url = "/direct/img/enroll_jpg_file.png" ;
|
img_url = "/direct/img/enroll_jpg_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "mp4" :
|
case "mp4" :
|
||||||
img_url = "/direct/img/enroll_mp4_file.png" ;
|
img_url = "/direct/img/enroll_mp4_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "ppt" :
|
case "ppt" :
|
||||||
img_url = "/direct/img/enroll_ppt_file.png" ;
|
img_url = "/direct/img/enroll_ppt_file.png" ;
|
||||||
break;
|
break;
|
||||||
case "zip" :
|
case "zip" :
|
||||||
img_url = "/direct/img/enroll_zip_file.png" ;
|
img_url = "/direct/img/enroll_zip_file.png" ;
|
||||||
break;
|
break;
|
||||||
default :
|
default :
|
||||||
img_url = "/direct/img/enroll_jpg_file.png" ;
|
img_url = "/direct/img/enroll_jpg_file.png" ;
|
||||||
}
|
}
|
||||||
|
|
||||||
return img_url ;
|
return img_url ;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*등록 시간 가져오기 */
|
/*등록 시간 가져오기 */
|
||||||
function getDate(){
|
function getDate(){
|
||||||
var d = new Date();
|
var d = new Date();
|
||||||
var year = d.getFullYear();
|
var year = d.getFullYear();
|
||||||
var month = d.getMonth() + 1 ; month.toString().length < 2 ? month = "0"+month : month;
|
var month = d.getMonth() + 1 ; month.toString().length < 2 ? month = "0"+month : month;
|
||||||
var date = d.getDate() ; date.toString().length < 2 ? date = "0"+date : date;
|
var date = d.getDate() ; date.toString().length < 2 ? date = "0"+date : date;
|
||||||
var currentDate = year+"-"+month+"-"+date+" ";
|
var currentDate = year+"-"+month+"-"+date+" ";
|
||||||
var hour = d.getHours(); hour.toString().length < 2 ? hour = "0"+hour : hour;
|
var hour = d.getHours(); hour.toString().length < 2 ? hour = "0"+hour : hour;
|
||||||
var minutes = d.getMinutes() ; minutes.toString().length < 2 ? minutes = "0"+minutes : minutes;
|
var minutes = d.getMinutes() ; minutes.toString().length < 2 ? minutes = "0"+minutes : minutes;
|
||||||
var seconds = d.getSeconds() ; seconds.toString().length < 2 ? seconds = "0"+seconds : hour;
|
var seconds = d.getSeconds() ; seconds.toString().length < 2 ? seconds = "0"+seconds : hour;
|
||||||
currentTime = hour+"-"+minutes+"-"+seconds ;
|
currentTime = hour+"-"+minutes+"-"+seconds ;
|
||||||
return currentDate + currentTime ;
|
return currentDate + currentTime ;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*파일 드래그앤 드롭*/
|
/*파일 드래그앤 드롭*/
|
||||||
/* 파일등록 */
|
/* 파일등록 */
|
||||||
var _fileIdx = 0;
|
var _fileIdx = 0;
|
||||||
var _fileForm2 = new Array();
|
var _fileForm2 = new Array();
|
||||||
function handleFileUpload(files,obj) //업로드 function
|
function handleFileUpload(files,obj) //업로드 function
|
||||||
{
|
{
|
||||||
var limitsize = 50*1024*1024; //파일 제한 체크(50개, 50MB)
|
var limitsize = 50*1024*1024; //파일 제한 체크(50개, 50MB)
|
||||||
var limitcount = $("input[name=limitcount]").val()*1 ;
|
var limitcount = $("input[name=limitcount]").val()*1 ;
|
||||||
if($('#tbody_fiielist').find('tr').length + files.length > limitcount ){
|
if($('#tbody_fiielist').find('tr').length + files.length > limitcount ){
|
||||||
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
for (var i = 0; i < files.length; i++){
|
for (var i = 0; i < files.length; i++){
|
||||||
if(files[i].size > limitsize){
|
if(files[i].size > limitsize){
|
||||||
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 50MB이하만 업로드 가능합니다.");
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 50MB이하만 업로드 가능합니다.");
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = 0; i < files.length; i++)
|
for (var i = 0; i < files.length; i++)
|
||||||
{
|
{
|
||||||
var fd = new FormData();
|
var fd = new FormData();
|
||||||
fd.append('file', files[i]);
|
fd.append('file', files[i]);
|
||||||
var tmpObj = new Object();
|
var tmpObj = new Object();
|
||||||
tmpObj.name = "file_" + _fileIdx;
|
tmpObj.name = "file_" + _fileIdx;
|
||||||
tmpObj.fileObj = files[i];
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
_fileForm2.push(tmpObj);
|
_fileForm2.push(tmpObj);
|
||||||
sendFileToServer(fd, obj, files[i], _fileIdx);
|
sendFileToServer(fd, obj, files[i], _fileIdx);
|
||||||
_fileIdx++;
|
_fileIdx++;
|
||||||
|
|
||||||
var totalfileSize = 0;
|
var totalfileSize = 0;
|
||||||
$('.totalfileCount').text($('.item_file_size').length) ;
|
$('.totalfileCount').text($('.item_file_size').length) ;
|
||||||
$('.item_file_size').each(function(){
|
$('.item_file_size').each(function(){
|
||||||
totalfileSize += $(this).val()*1 ;
|
totalfileSize += $(this).val()*1 ;
|
||||||
});
|
});
|
||||||
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendFileToServer(formData, obj , fileObj, _fileIdx)
|
function sendFileToServer(formData, obj , fileObj, _fileIdx)
|
||||||
{
|
{
|
||||||
$('.no_img_box').hide(); //list 박스 형식 변경
|
$('.no_img_box').hide(); //list 박스 형식 변경
|
||||||
$('.file_list_div').show();
|
$('.file_list_div').show();
|
||||||
var list_html = "";
|
var list_html = "";
|
||||||
var tt = "";
|
var tt = "";
|
||||||
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
||||||
|
|
||||||
list_html += '<td class="file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
list_html += '<td class="file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
||||||
list_html += '<td class="file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
list_html += '<td class="file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
||||||
list_html += '<td class="file_date">'+getDate()+'</td>';
|
list_html += '<td class="file_date">'+getDate()+'</td>';
|
||||||
list_html += '<td class="file_del"><input type="button" class="delBtn" alt="" onclick="delete_item(this, '+_fileIdx+')" ></td>';
|
list_html += '<td class="file_del"><input type="button" class="delBtn" alt="" onclick="delete_item(this, '+_fileIdx+')" ></td>';
|
||||||
list_html += '<input type="hidden" class="item_file_size" value="'+fileObj.size+'">';
|
list_html += '<input type="hidden" class="item_file_size" value="'+fileObj.size+'">';
|
||||||
list_html += '<input type="hidden" name="atchFileIds" class="imsi" value="'+tt+'">';
|
list_html += '<input type="hidden" name="atchFileIds" class="imsi" value="'+tt+'">';
|
||||||
list_html += '</tr>';
|
list_html += '</tr>';
|
||||||
$('#tbody_fiielist').append(list_html);
|
$('#tbody_fiielist').append(list_html);
|
||||||
}
|
}
|
||||||
|
|
||||||
function resetFileZone(){
|
function resetFileZone(){
|
||||||
$('.file_size').each(function(index, element){
|
$('.file_size').each(function(index, element){
|
||||||
$(this).text(getStrFileSize($(this).text())) ;
|
$(this).text(getStrFileSize($(this).text())) ;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 등록되어 있는 파일 삭제버튼 클릭시 */
|
/* 등록되어 있는 파일 삭제버튼 클릭시 */
|
||||||
function delAtchFile(itemId , fileSn){
|
function delAtchFile(itemId , fileSn){
|
||||||
if(!confirm("삭제하시겠습니까?")){
|
if(!confirm("삭제하시겠습니까?")){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
url: "/uss/ion/fms/fmsfileDeleteAjax.do",
|
url: "/uss/ion/fms/fmsfileDeleteAjax.do",
|
||||||
data:{ "atchFileId" : itemId , "fileSn" : fileSn},
|
data:{ "atchFileId" : itemId , "fileSn" : fileSn},
|
||||||
dataType:'json',
|
dataType:'json',
|
||||||
cache: false,
|
cache: false,
|
||||||
async: false,
|
async: false,
|
||||||
timeout: 600000,
|
timeout: 600000,
|
||||||
success: function (returnData, status) {
|
success: function (returnData, status) {
|
||||||
if(status == 'success'){
|
if(status == 'success'){
|
||||||
if(returnData.result == 'fail'){
|
if(returnData.result == 'fail'){
|
||||||
alert("삭제처리가 실패하였습니다.");
|
alert("삭제처리가 실패하였습니다.");
|
||||||
}else if(returnData.result == 'auth_fail'){
|
}else if(returnData.result == 'auth_fail'){
|
||||||
alert("세션이 종료되었습니다.");
|
alert("세션이 종료되었습니다.");
|
||||||
}else if(returnData.result =='success'){
|
}else if(returnData.result =='success'){
|
||||||
$('.item_'+returnData.fmsFileVO.atchFileId+"_"+returnData.fmsFileVO.fileSn).remove();
|
$('.item_'+returnData.fmsFileVO.atchFileId+"_"+returnData.fmsFileVO.fileSn).remove();
|
||||||
alert("삭제되었습니다.");
|
alert("삭제되었습니다.");
|
||||||
drawUploadArea();
|
drawUploadArea();
|
||||||
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
|
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
alert("삭제처리에 실패하였습니다.");
|
alert("삭제처리에 실패하였습니다.");
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
error: function (e) {
|
error: function (e) {
|
||||||
console.log("ERROR : ", e);
|
console.log("ERROR : ", e);
|
||||||
alert("삭제처리에 실패하였습니다.");
|
alert("삭제처리에 실패하였습니다.");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 임시파일 삭제버튼 클릭시 */
|
/* 임시파일 삭제버튼 클릭시 */
|
||||||
function delete_item(obj, fileIdx){
|
function delete_item(obj, fileIdx){
|
||||||
$(obj).closest("tr").remove();
|
$(obj).closest("tr").remove();
|
||||||
_fileForm2.forEach(function(fobj, idx) {
|
_fileForm2.forEach(function(fobj, idx) {
|
||||||
if (fobj.name == ("file_" + fileIdx)) _fileForm2[idx] = "";
|
if (fobj.name == ("file_" + fileIdx)) _fileForm2[idx] = "";
|
||||||
});
|
});
|
||||||
|
|
||||||
if($('.item_file_size').length == 0){
|
if($('.item_file_size').length == 0){
|
||||||
$('.file_upload_box ').show();
|
$('.file_upload_box ').show();
|
||||||
$('.upload_box_text').show();
|
$('.upload_box_text').show();
|
||||||
$('.fileAfter').hide();
|
$('.fileAfter').hide();
|
||||||
}else{
|
}else{
|
||||||
var totalfileSize = 0;
|
var totalfileSize = 0;
|
||||||
$('.totalfileCount').text($('.item_file_size').length) ;
|
$('.totalfileCount').text($('.item_file_size').length) ;
|
||||||
$('.item_file_size').each(function(){
|
$('.item_file_size').each(function(){
|
||||||
totalfileSize += $(this).val()*1 ;
|
totalfileSize += $(this).val()*1 ;
|
||||||
});
|
});
|
||||||
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function drawUploadArea(){
|
function drawUploadArea(){
|
||||||
$('.no_img_box').hide(); //list 박스 형식 변경
|
$('.no_img_box').hide(); //list 박스 형식 변경
|
||||||
$('.file_list_div').show();
|
$('.file_list_div').show();
|
||||||
|
|
||||||
$('.file_name_text').each(function(index, item){
|
$('.file_name_text').each(function(index, item){
|
||||||
$(this).parent().find('img').attr('src', getfile_img($(this).text())) ; //이미지 변경
|
$(this).parent().find('img').attr('src', getfile_img($(this).text())) ; //이미지 변경
|
||||||
});
|
});
|
||||||
$('.file_size_text').each(function(index, item){
|
$('.file_size_text').each(function(index, item){
|
||||||
$(this).text(getStrFileSize($(this).attr('value')))
|
$(this).text(getStrFileSize($(this).attr('value')))
|
||||||
});
|
});
|
||||||
|
|
||||||
var totalfileSize = 0;
|
var totalfileSize = 0;
|
||||||
$('.totalfileCount').text($('.item_file_size').length) ;
|
$('.totalfileCount').text($('.item_file_size').length) ;
|
||||||
$('.item_file_size').each(function(){
|
$('.item_file_size').each(function(){
|
||||||
totalfileSize += $(this).val()*1 ;
|
totalfileSize += $(this).val()*1 ;
|
||||||
});
|
});
|
||||||
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
$('.totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
|
||||||
|
|
||||||
if( $("#tbody_fiielist > [class^=item]").length == 0 && $("#tbody_fiielist > [class^=item]").size() == 0 ){
|
if( $("#tbody_fiielist > [class^=item]").length == 0 && $("#tbody_fiielist > [class^=item]").size() == 0 ){
|
||||||
$('.no_img_box').show();
|
$('.no_img_box').show();
|
||||||
$('.file_list_div ').hide();
|
$('.file_list_div ').hide();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 글 저장 function */
|
/* 글 저장 function */
|
||||||
function goSave(method_parm ){ //method_parm :관리자로그 메소드에서 사용.(파일업로드 부분 공통으로 사용하여, 페이지 구분을 위해)
|
function goSave(method_parm ){ //method_parm :관리자로그 메소드에서 사용.(파일업로드 부분 공통으로 사용하여, 페이지 구분을 위해)
|
||||||
if(undefined !=$("input[name=limitcount]").val() && ""!=$("input[name=limitcount]").val() ){
|
if(undefined !=$("input[name=limitcount]").val() && ""!=$("input[name=limitcount]").val() ){
|
||||||
if($('#tbody_fiielist').find('tr').length == 0){
|
if($('#tbody_fiielist').find('tr').length == 0){
|
||||||
alert("첨부파일을 추가해 주십시오");
|
alert("첨부파일을 추가해 주십시오");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var msg;
|
var msg;
|
||||||
msg = "해당 첨부파일을 수정하시겠습니까?";
|
msg = "해당 첨부파일을 수정하시겠습니까?";
|
||||||
var data = new FormData(document.writeForm == undefined ? document.board : document.writeForm);
|
var data = new FormData(document.writeForm == undefined ? document.board : document.writeForm);
|
||||||
_fileForm2.forEach(function(obj, idx) {
|
_fileForm2.forEach(function(obj, idx) {
|
||||||
if (obj) data.append("file"+idx, obj.fileObj);
|
if (obj) data.append("file"+idx, obj.fileObj);
|
||||||
});
|
});
|
||||||
|
|
||||||
var url = "";
|
var url = "";
|
||||||
if($("#pageType").val() == "insert"){
|
if($("#pageType").val() == "insert"){
|
||||||
url = "/cop/bbs/insertBoardArticleAjax.do";
|
url = "/cop/bbs/insertBoardArticleAjax.do";
|
||||||
}else{
|
}else{
|
||||||
url = document.writeForm == undefined ? "/kcc/mail/itnSendMailPro.do" : "/kcc/mail/itnSendMailPro.do";
|
url = document.writeForm == undefined ? "/kcc/mail/itnSendMailPro.do" : "/kcc/mail/itnSendMailPro.do";
|
||||||
}
|
}
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
enctype: 'multipart/form-data',
|
enctype: 'multipart/form-data',
|
||||||
url: url,
|
url: url,
|
||||||
data: data,
|
data: data,
|
||||||
dataType:'json',
|
dataType:'json',
|
||||||
async: false,
|
async: false,
|
||||||
processData: false,
|
processData: false,
|
||||||
contentType: false,
|
contentType: false,
|
||||||
cache: false,
|
cache: false,
|
||||||
//timeout: 600000,
|
//timeout: 600000,
|
||||||
success: function (returnData, status) {
|
success: function (returnData, status) {
|
||||||
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
||||||
if("fail"==returnData.result){
|
if("fail"==returnData.result){
|
||||||
alert(returnData.message);
|
alert(returnData.message);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
alert("저장 되었습니다.");
|
alert("저장 되었습니다.");
|
||||||
goList();
|
goList();
|
||||||
} else if(status== 'fail'){
|
} else if(status== 'fail'){
|
||||||
alert("저장에 실패하였습니다. !!");
|
alert("저장에 실패하였습니다. !!");
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
|
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
(function ($) {
|
(function ($) {
|
||||||
$.fn.replaceClass = function (pFromClass, pToClass) {
|
$.fn.replaceClass = function (pFromClass, pToClass) {
|
||||||
return this.removeClass(pFromClass).addClass(pToClass);
|
return this.removeClass(pFromClass).addClass(pToClass);
|
||||||
};
|
};
|
||||||
}(jQuery));
|
}(jQuery));
|
||||||
|
|||||||
@ -1,134 +1,134 @@
|
|||||||
String.prototype.bytes = function() {
|
String.prototype.bytes = function() {
|
||||||
var str = this;
|
var str = this;
|
||||||
var l = 0;
|
var l = 0;
|
||||||
for (var i=0; i<str.length; i++) l += (str.charCodeAt(i) > 128) ? 3 : 1;
|
for (var i=0; i<str.length; i++) l += (str.charCodeAt(i) > 128) ? 3 : 1;
|
||||||
return l;
|
return l;
|
||||||
};
|
};
|
||||||
|
|
||||||
String.prototype.cut = function(len) {
|
String.prototype.cut = function(len) {
|
||||||
var str = this;
|
var str = this;
|
||||||
var l = 0;
|
var l = 0;
|
||||||
for (var i=0; i<str.length; i++) {
|
for (var i=0; i<str.length; i++) {
|
||||||
l += (str.charCodeAt(i) > 128) ? 3 : 1;
|
l += (str.charCodeAt(i) > 128) ? 3 : 1;
|
||||||
if (l > len) return str.substring(0,i);
|
if (l > len) return str.substring(0,i);
|
||||||
}
|
}
|
||||||
return str;
|
return str;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* object empty check
|
* object empty check
|
||||||
* */
|
* */
|
||||||
|
|
||||||
function emptyObject(param){
|
function emptyObject(param){
|
||||||
return Object.keys(param).length === 0;
|
return Object.keys(param).length === 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function isEmptyList(data){
|
function isEmptyList(data){
|
||||||
if(data == undefined || data == null || data.length == 0){
|
if(data == undefined || data == null || data.length == 0){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function dateFormatStr (dateStr) {
|
function dateFormatStr (dateStr) {
|
||||||
var refinedDateStr;
|
var refinedDateStr;
|
||||||
var rv;
|
var rv;
|
||||||
|
|
||||||
if (dateStr == null) {
|
if (dateStr == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
refinedDateStr = dateStr.match(/\d+/g);
|
refinedDateStr = dateStr.match(/\d+/g);
|
||||||
if (refinedDateStr == null || refinedDateStr.length == 0) {
|
if (refinedDateStr == null || refinedDateStr.length == 0) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
refinedDateStr = refinedDateStr + "";
|
refinedDateStr = refinedDateStr + "";
|
||||||
switch (refinedDateStr.length) {
|
switch (refinedDateStr.length) {
|
||||||
case 4:
|
case 4:
|
||||||
rv = moment(refinedDateStr, "HHmm");
|
rv = moment(refinedDateStr, "HHmm");
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
rv = moment(refinedDateStr, "HHmmss");
|
rv = moment(refinedDateStr, "HHmmss");
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
rv = moment(refinedDateStr, "YYYYMMDD");
|
rv = moment(refinedDateStr, "YYYYMMDD");
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
rv = moment(refinedDateStr, "YYYYMMDDHHmm");
|
rv = moment(refinedDateStr, "YYYYMMDDHHmm");
|
||||||
break;
|
break;
|
||||||
case 14:
|
case 14:
|
||||||
rv = moment(refinedDateStr, "YYYYMMDDHHmmss");
|
rv = moment(refinedDateStr, "YYYYMMDDHHmmss");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
throw new Error("invalid date str " + dateStr);
|
throw new Error("invalid date str " + dateStr);
|
||||||
}
|
}
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
function dateFormat(str, type) {
|
function dateFormat(str, type) {
|
||||||
var date = dateFormatStr(str);
|
var date = dateFormatStr(str);
|
||||||
if (date == null) {
|
if (date == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == "slash") {
|
if (type == "slash") {
|
||||||
return date.format("YYYY/MM/DD");
|
return date.format("YYYY/MM/DD");
|
||||||
} else if (type == "date") {
|
} else if (type == "date") {
|
||||||
return date.format("YYYY.MM.DD");
|
return date.format("YYYY.MM.DD");
|
||||||
} else if (type == "colon") {
|
} else if (type == "colon") {
|
||||||
return date.format("YYYY:MM:DD");
|
return date.format("YYYY:MM:DD");
|
||||||
} else if (type == "dash") {
|
} else if (type == "dash") {
|
||||||
return date.format("YYYY-MM-DD");
|
return date.format("YYYY-MM-DD");
|
||||||
}else if(type == "normal"){
|
}else if(type == "normal"){
|
||||||
return date.format("YYYYMMDD");
|
return date.format("YYYYMMDD");
|
||||||
} else {
|
} else {
|
||||||
return date.format("YYYY-MM-DD");
|
return date.format("YYYY-MM-DD");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function timeFomat (value, type) {
|
function timeFomat (value, type) {
|
||||||
var date = dateFormatStr(value);
|
var date = dateFormatStr(value);
|
||||||
if (date == null) {
|
if (date == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == "slash") {
|
if (type == "slash") {
|
||||||
return date.format("HH:mm:ss");
|
return date.format("HH:mm:ss");
|
||||||
} else if (type == "date") {
|
} else if (type == "date") {
|
||||||
return date.format("HH:mm:ss");
|
return date.format("HH:mm:ss");
|
||||||
} else if (type == "colon") {
|
} else if (type == "colon") {
|
||||||
return date.format("HH:mm:ss");
|
return date.format("HH:mm:ss");
|
||||||
} else if (type == "dash") {
|
} else if (type == "dash") {
|
||||||
return date.format("HH:mm:ss");
|
return date.format("HH:mm:ss");
|
||||||
} else {
|
} else {
|
||||||
return date.format("HH:mm");
|
return date.format("HH:mm");
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function countBytes(obj, len, target){
|
function countBytes(obj, len, target){
|
||||||
var cnt = obj.value.bytes();
|
var cnt = obj.value.bytes();
|
||||||
var txtSplit;
|
var txtSplit;
|
||||||
var ieVersion;
|
var ieVersion;
|
||||||
if(cnt > 0){
|
if(cnt > 0){
|
||||||
txtSplit = (obj.value).split("\n");
|
txtSplit = (obj.value).split("\n");
|
||||||
if(navigator.appName == "Microsoft Internet Explorer"){
|
if(navigator.appName == "Microsoft Internet Explorer"){
|
||||||
ieVersion = navigator.appVersion.substring(navigator.appVersion.indexOf("MSIE")+5,navigator.appVersion.indexOf("MSIE")+8);
|
ieVersion = navigator.appVersion.substring(navigator.appVersion.indexOf("MSIE")+5,navigator.appVersion.indexOf("MSIE")+8);
|
||||||
if(ieVersion >= "9.0"){
|
if(ieVersion >= "9.0"){
|
||||||
cnt += txtSplit.length - 1
|
cnt += txtSplit.length - 1
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
cnt += txtSplit.length - 1
|
cnt += txtSplit.length - 1
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(cnt <= len){
|
if(cnt <= len){
|
||||||
target.textContent = cnt;
|
target.textContent = cnt;
|
||||||
}else{
|
}else{
|
||||||
alert("허용 글자수를 초과하였습니다.");
|
alert("허용 글자수를 초과하였습니다.");
|
||||||
obj.value = obj.value.cut(len - txtSplit.length + 1);
|
obj.value = obj.value.cut(len - txtSplit.length + 1);
|
||||||
target.textContent = obj.value.bytes();
|
target.textContent = obj.value.bytes();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user