2023-09-21 12:32 관리자/사용자 로그 관리 수정

This commit is contained in:
myname 2023-09-21 12:32:52 +09:00
parent 5260e6699e
commit 963bd9ae8d
19 changed files with 808 additions and 268 deletions

View File

@ -60,6 +60,8 @@ public interface EgovLoginLogService {
public List<LoginLog> selectAmdinLog(LoginLog loginLog) throws Exception;
public List<LoginLog> selectNWebLog(LoginLog loginLog) throws Exception;
public int selectAmdinLogTotCnt(LoginLog loginLog) throws Exception;
public List<LoginLog> selectLogMethodList(LoginLog loginLog) throws Exception;

View File

@ -174,6 +174,11 @@ public class EgovLoginLogServiceImpl extends EgovAbstractServiceImpl implements
return loginLogDAO.selectAmdinLog(loginLog);
}
@Override
public List<LoginLog> selectNWebLog(LoginLog loginLog) throws Exception {
return loginLogDAO.selectNWebLog(loginLog);
}
@Override
public int selectAmdinLogTotCnt(LoginLog loginLog) throws Exception {
return loginLogDAO.selectAmdinLogTotCnt(loginLog);

View File

@ -103,6 +103,10 @@ public class LoginLogDAO extends EgovAbstractDAO {
return (List<LoginLog>)list("LoginLogDAO.selectAmdinLog", loginLog);
}
public List<LoginLog> selectNWebLog(LoginLog loginLog) throws Exception{
return (List<LoginLog>)list("LoginLogDAO.selectNWebLog", loginLog);
}
public int selectAmdinLogTotCnt(LoginLog loginLog) throws Exception{
return (Integer)select("LoginLogDAO.selectAmdinLogTotCnt", loginLog);
}

View File

@ -107,7 +107,7 @@ public class EgovLoginLogController {
loginLog.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
if("".equals(loginLog.getSearchSortCnd())){ //최초조회시 최신것 조회List
loginLog.setSearchSortCnd("b.ADMINLOG_ID");
loginLog.setSearchSortCnd("b.CREAT_DT");
loginLog.setSearchSortOrd("desc");
}
@ -555,6 +555,45 @@ public class EgovLoginLogController {
return "sym/log/clg/SelectWebLogList";
}
/**
* 로그인 로그 목록 조회(관리자)
*
* @param loginLog
* @return sym/log/clg/EgovLoginLogList
* @throws Exception
*/
@RequestMapping(value = "/sym/log/clg/NSelectWebLogList.do")
public String NSelectWebLogList(@ModelAttribute("searchVO") LoginLog loginLog, @RequestParam Map<String, Object> commandMap ,ModelMap model) throws Exception {
if(loginLog.getPageUnit() != 10) {
loginLog.setPageUnit(loginLog.getPageUnit());
}
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(loginLog.getPageIndex());
paginationInfo.setRecordCountPerPage(loginLog.getPageUnit());
paginationInfo.setPageSize(loginLog.getPageSize());
loginLog.setFirstIndex(paginationInfo.getFirstRecordIndex());
loginLog.setLastIndex(paginationInfo.getLastRecordIndex());
loginLog.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
if("".equals(loginLog.getSearchSortCnd())){ //최초조회시 최신것 조회List
loginLog.setSearchSortCnd("b.CREAT_DT");
loginLog.setSearchSortOrd("desc");
}
List<LoginLog> adminLogList = loginLogService.selectNWebLog(loginLog);
int adminLogListCnt = 0;
if (adminLogList.size()>0) {
adminLogListCnt = adminLogList.get(0).getTotCnt();
}
paginationInfo.setTotalRecordCount(adminLogListCnt);
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("adminLogList", adminLogList);
return "sym/log/clg/NSelectWebLogList";
}
/**
* 매뉴별 접속 로그 로그 목록 조회(사용자)
*

View File

@ -0,0 +1,15 @@
package kcc.ve.adv.tngr.stngInfo.service;
import java.util.List;
public interface VEAStngService {
//VEA_LCTR_YR_STNG - 강의년도설정
void insert_VEALYS(VEAStngVO paramVO) throws Exception; // C
VEAStngVO selectDetail_VEALYS(VEAStngVO paramVO) throws Exception; // R
int update_VEALYS(VEAStngVO paramVO) throws Exception; // U
int delete_VEALYS(VEAStngVO paramVO) throws Exception; // D
List<VEAStngVO> selectList_VEALYS(VEAStngVO paramVO) throws Exception; // LIST
List<VEAStngVO> selectPagingList_VEALYS(VEAStngVO paramVO) throws Exception; // Page List
}

View File

@ -12,99 +12,58 @@ public class VEAStngVO extends ComDefaultVO implements Serializable {
private static final long serialVersionUID = 1L;
//ve_prcs_onln_cntnt
private String prcsOrd; //과정순번
private String prcsAplctPrdOrd; //과정신청기간순번
private String prcsOnlnCntntOrd; //과정온라인콘텐츠순번
private String[] prcsOnlnCntntOrdArr; //과정온라인콘텐츠순번
private String[] prcsOrdArr; //과정순번
private String onlnCntntDivCd; //온라인콘텐츠구분코드
private String detailPrcsNm; //상세과정이름
private String chasi; //차시
private String useYn; //사용여부
//vea_lctr_yr_stng - 강의 년도 설정
private String yr; //년도
private String psblTmQntty; //가능시수
private String frstRegistPnttm; // 등록일시
private String frstRegisterId; // 등록자
private String lastUpdtPnttm; // 수정일시
private String lastUpdusrId; // 수정자
private String prcsNmTit; // 수정자
//ve_edu_aplct_onln
private String eduAplctOrd; //교육신청순번
//ve_prcs_cmplt_detail //과정이수상세
//vea_dt_psbl_tm_qntty_stng - 일별 가능시수설정
private String dtPsblTmQnttyOrd; //일별가능시수순번
private String trgtDt; //해당일자
private String eduStrtDt; //교육시작일자
private String eduEndDt; //교육마감일자
private String eduPrsnl; //교육인원
private String sbmtYn; //제출여부
private String sbmtPnttm; //제출일시
private String sbmtId; //제출자
private String aprvlCd; //승인코드
private String aprvlPnttm; //승인일시
private String aprvlId; //승인자
private String aprvlCn; //승인내용
//vea_lctr_rnds_stng - 강의회차설정
private String rndsOrd; //회차순번
private String rndsNm; //회차명
private String ord; //순번
private String rgstrStrtPnttm; //접수시작일시
private String rgstrDdlnPnttm; //접수마감일시
private String rgstrState; //접수상태
private String rgstrStateChngId; //접수상태변경자
private String prcsNm; //과정명
private String selectPagingListQuery;
private String orderByQuery;
public String getPrcsOrd() {
return prcsOrd;
//vea_lctr_psbl_prd_stng - 강의가능기간설정
private String lctrPsblPrdOrd; //강의가능기간순번
private String lctrPsblStrtDt; //강의가능시작일
private String lctrPsblDdlnDt; //강의가능종료일
private String lctrPsblYn; //강의가능여부
private String topLctrPsblPrdOrd; //상위강의가능기간순번
//vea_area_lctr_stng - 지역별강의설정
private String areaCd; //지역코드
private String lctrPsblStrtTm; //강의가능시작시간
private String lctrPsblDdlnTm; //강의가능종료시간
private String ttlEduCnfrmPsblChasi; //총교육확정가능차시
private String ttlRgstrChasi; //총접수차시
private String ttlRgstrChasiRegPnttm; //총접수차시등록일시
private String ttlRgstrChasiRegisterId; //총정수차시등록자
public String getYr() {
return yr;
}
public void setPrcsOrd(String prcsOrd) {
this.prcsOrd = prcsOrd;
public void setYr(String yr) {
this.yr = yr;
}
public String getPrcsAplctPrdOrd() {
return prcsAplctPrdOrd;
public String getPsblTmQntty() {
return psblTmQntty;
}
public void setPrcsAplctPrdOrd(String prcsAplctPrdOrd) {
this.prcsAplctPrdOrd = prcsAplctPrdOrd;
}
public String getPrcsOnlnCntntOrd() {
return prcsOnlnCntntOrd;
}
public void setPrcsOnlnCntntOrd(String prcsOnlnCntntOrd) {
this.prcsOnlnCntntOrd = prcsOnlnCntntOrd;
}
public String[] getPrcsOnlnCntntOrdArr() {
return prcsOnlnCntntOrdArr;
}
public void setPrcsOnlnCntntOrdArr(String[] prcsOnlnCntntOrdArr) {
this.prcsOnlnCntntOrdArr = prcsOnlnCntntOrdArr;
}
public String[] getPrcsOrdArr() {
return prcsOrdArr;
}
public void setPrcsOrdArr(String[] prcsOrdArr) {
this.prcsOrdArr = prcsOrdArr;
}
public String getOnlnCntntDivCd() {
return onlnCntntDivCd;
}
public void setOnlnCntntDivCd(String onlnCntntDivCd) {
this.onlnCntntDivCd = onlnCntntDivCd;
}
public String getDetailPrcsNm() {
return detailPrcsNm;
}
public void setDetailPrcsNm(String detailPrcsNm) {
this.detailPrcsNm = detailPrcsNm;
}
public String getChasi() {
return chasi;
}
public void setChasi(String chasi) {
this.chasi = chasi;
}
public String getUseYn() {
return useYn;
}
public void setUseYn(String useYn) {
this.useYn = useYn;
public void setPsblTmQntty(String psblTmQntty) {
this.psblTmQntty = psblTmQntty;
}
public String getFrstRegistPnttm() {
return frstRegistPnttm;
@ -130,96 +89,131 @@ public class VEAStngVO extends ComDefaultVO implements Serializable {
public void setLastUpdusrId(String lastUpdusrId) {
this.lastUpdusrId = lastUpdusrId;
}
public String getPrcsNmTit() {
return prcsNmTit;
public String getDtPsblTmQnttyOrd() {
return dtPsblTmQnttyOrd;
}
public void setPrcsNmTit(String prcsNmTit) {
this.prcsNmTit = prcsNmTit;
public void setDtPsblTmQnttyOrd(String dtPsblTmQnttyOrd) {
this.dtPsblTmQnttyOrd = dtPsblTmQnttyOrd;
}
public String getEduAplctOrd() {
return eduAplctOrd;
public String getTrgtDt() {
return trgtDt;
}
public void setEduAplctOrd(String eduAplctOrd) {
this.eduAplctOrd = eduAplctOrd;
public void setTrgtDt(String trgtDt) {
this.trgtDt = trgtDt;
}
public String getEduStrtDt() {
return eduStrtDt;
public String getRndsOrd() {
return rndsOrd;
}
public void setEduStrtDt(String eduStrtDt) {
this.eduStrtDt = eduStrtDt;
public void setRndsOrd(String rndsOrd) {
this.rndsOrd = rndsOrd;
}
public String getEduEndDt() {
return eduEndDt;
public String getRndsNm() {
return rndsNm;
}
public void setEduEndDt(String eduEndDt) {
this.eduEndDt = eduEndDt;
public void setRndsNm(String rndsNm) {
this.rndsNm = rndsNm;
}
public String getEduPrsnl() {
return eduPrsnl;
public String getOrd() {
return ord;
}
public void setEduPrsnl(String eduPrsnl) {
this.eduPrsnl = eduPrsnl;
public void setOrd(String ord) {
this.ord = ord;
}
public String getSbmtYn() {
return sbmtYn;
public String getRgstrStrtPnttm() {
return rgstrStrtPnttm;
}
public void setSbmtYn(String sbmtYn) {
this.sbmtYn = sbmtYn;
public void setRgstrStrtPnttm(String rgstrStrtPnttm) {
this.rgstrStrtPnttm = rgstrStrtPnttm;
}
public String getSbmtPnttm() {
return sbmtPnttm;
public String getRgstrDdlnPnttm() {
return rgstrDdlnPnttm;
}
public void setSbmtPnttm(String sbmtPnttm) {
this.sbmtPnttm = sbmtPnttm;
public void setRgstrDdlnPnttm(String rgstrDdlnPnttm) {
this.rgstrDdlnPnttm = rgstrDdlnPnttm;
}
public String getSbmtId() {
return sbmtId;
public String getRgstrState() {
return rgstrState;
}
public void setSbmtId(String sbmtId) {
this.sbmtId = sbmtId;
public void setRgstrState(String rgstrState) {
this.rgstrState = rgstrState;
}
public String getAprvlCd() {
return aprvlCd;
public String getRgstrStateChngId() {
return rgstrStateChngId;
}
public void setAprvlCd(String aprvlCd) {
this.aprvlCd = aprvlCd;
public void setRgstrStateChngId(String rgstrStateChngId) {
this.rgstrStateChngId = rgstrStateChngId;
}
public String getAprvlPnttm() {
return aprvlPnttm;
public String getLctrPsblPrdOrd() {
return lctrPsblPrdOrd;
}
public void setAprvlPnttm(String aprvlPnttm) {
this.aprvlPnttm = aprvlPnttm;
public void setLctrPsblPrdOrd(String lctrPsblPrdOrd) {
this.lctrPsblPrdOrd = lctrPsblPrdOrd;
}
public String getAprvlId() {
return aprvlId;
public String getLctrPsblStrtDt() {
return lctrPsblStrtDt;
}
public void setAprvlId(String aprvlId) {
this.aprvlId = aprvlId;
public void setLctrPsblStrtDt(String lctrPsblStrtDt) {
this.lctrPsblStrtDt = lctrPsblStrtDt;
}
public String getAprvlCn() {
return aprvlCn;
public String getLctrPsblDdlnDt() {
return lctrPsblDdlnDt;
}
public void setAprvlCn(String aprvlCn) {
this.aprvlCn = aprvlCn;
public void setLctrPsblDdlnDt(String lctrPsblDdlnDt) {
this.lctrPsblDdlnDt = lctrPsblDdlnDt;
}
public String getPrcsNm() {
return prcsNm;
public String getLctrPsblYn() {
return lctrPsblYn;
}
public void setPrcsNm(String prcsNm) {
this.prcsNm = prcsNm;
public void setLctrPsblYn(String lctrPsblYn) {
this.lctrPsblYn = lctrPsblYn;
}
public String getSelectPagingListQuery() {
return selectPagingListQuery;
public String getTopLctrPsblPrdOrd() {
return topLctrPsblPrdOrd;
}
public void setSelectPagingListQuery(String selectPagingListQuery) {
this.selectPagingListQuery = selectPagingListQuery;
public void setTopLctrPsblPrdOrd(String topLctrPsblPrdOrd) {
this.topLctrPsblPrdOrd = topLctrPsblPrdOrd;
}
public String getOrderByQuery() {
return orderByQuery;
public String getAreaCd() {
return areaCd;
}
public void setOrderByQuery(String orderByQuery) {
this.orderByQuery = orderByQuery;
public void setAreaCd(String areaCd) {
this.areaCd = areaCd;
}
public String getLctrPsblStrtTm() {
return lctrPsblStrtTm;
}
public void setLctrPsblStrtTm(String lctrPsblStrtTm) {
this.lctrPsblStrtTm = lctrPsblStrtTm;
}
public String getLctrPsblDdlnTm() {
return lctrPsblDdlnTm;
}
public void setLctrPsblDdlnTm(String lctrPsblDdlnTm) {
this.lctrPsblDdlnTm = lctrPsblDdlnTm;
}
public String getTtlEduCnfrmPsblChasi() {
return ttlEduCnfrmPsblChasi;
}
public void setTtlEduCnfrmPsblChasi(String ttlEduCnfrmPsblChasi) {
this.ttlEduCnfrmPsblChasi = ttlEduCnfrmPsblChasi;
}
public String getTtlRgstrChasi() {
return ttlRgstrChasi;
}
public void setTtlRgstrChasi(String ttlRgstrChasi) {
this.ttlRgstrChasi = ttlRgstrChasi;
}
public String getTtlRgstrChasiRegPnttm() {
return ttlRgstrChasiRegPnttm;
}
public void setTtlRgstrChasiRegPnttm(String ttlRgstrChasiRegPnttm) {
this.ttlRgstrChasiRegPnttm = ttlRgstrChasiRegPnttm;
}
public String getTtlRgstrChasiRegisterId() {
return ttlRgstrChasiRegisterId;
}
public void setTtlRgstrChasiRegisterId(String ttlRgstrChasiRegisterId) {
this.ttlRgstrChasiRegisterId = ttlRgstrChasiRegisterId;
}
}

View File

@ -0,0 +1,46 @@
package kcc.ve.adv.tngr.stngInfo.service.impl;
import java.util.List;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
@Repository("vEAStngDAO")
public class VEAStngDAO extends EgovAbstractDAO {
//VEA_LCTR_YR_STNG - 강의년도설정
public void insert_VEALYS(VEAStngVO paramVO) throws Exception {
insert("VEALctrYrStngDAO.insert", paramVO);
}
public VEAStngVO selectDetail_VEALYS(VEAStngVO paramVO) throws Exception {
return (VEAStngVO) select("VEALctrYrStngDAO.selectDetail", paramVO);
}
public int update_VEALYS(VEAStngVO paramVO) throws Exception {
return update("VEALctrYrStngDAO.update", paramVO);
}
public int delete_VEALYS(VEAStngVO paramVO) throws Exception {
return delete("VEALctrYrStngDAO.delete", paramVO);
}
//L
public List<VEAStngVO> selectList_VEALYS(VEAStngVO paramVO) throws Exception {
List<VEAStngVO> tlist = (List<VEAStngVO>) list("VEALctrYrStngDAO.selectList", paramVO);
return tlist;
}
/**
* L - Page
* @param addrVO
* @return
* @throws Exception
*/
public List<VEAStngVO> selectPagingList_VEALYS(VEAStngVO paramVO) throws Exception {
List<VEAStngVO> tlist = (List<VEAStngVO>) list("VEALctrYrStngDAO.selectPagingList", paramVO);
return tlist;
}
}

View File

@ -0,0 +1,60 @@
package kcc.ve.adv.tngr.stngInfo.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
@Service("vEAStngService")
public class VEAStngServiceImpl implements VEAStngService {
//과정
@Resource(name="vEAStngDAO")
private VEAStngDAO vEAStngDAO;
/*
* void insert_VEALYS(VEAStngVO paramVO) throws Exception; // C
VEAStngVO selectDetail_VEALYS(VEAStngVO paramVO) throws Exception; // R
int update_VEALYS(VEAStngVO paramVO) throws Exception; // U
int delete_VEALYS(VEAStngVO paramVO) throws Exception; // D
List<VEAStngVO> selectList_VEALYS(VEAStngVO paramVO) throws Exception; // LIST
List<VEAStngVO> selectPagingList_VEALYS(VEAStngVO paramVO) throws Exception; // Page List
* */
//VEA_LCTR_YR_STNG - 강의년도설정
//C
public void insert_VEALYS(VEAStngVO paramVO) throws Exception {
vEAStngDAO.insert_VEALYS(paramVO);
}
//R
public VEAStngVO selectDetail_VEALYS(VEAStngVO paramVO) throws Exception {
return vEAStngDAO.selectDetail_VEALYS(paramVO);
}
//U
public int update_VEALYS(VEAStngVO paramVO) throws Exception{
return vEAStngDAO.update_VEALYS(paramVO);
}
//D
public int delete_VEALYS(VEAStngVO paramVO) throws Exception{
return vEAStngDAO.delete_VEALYS(paramVO);
}
//List
public List<VEAStngVO> selectList_VEALYS(VEAStngVO paramVO) throws Exception{
return vEAStngDAO.selectList_VEALYS(paramVO);
}
//paging List
public List<VEAStngVO> selectPagingList_VEALYS(VEAStngVO paramVO) throws Exception{
return vEAStngDAO.selectPagingList_VEALYS(paramVO);
}
}

View File

@ -26,5 +26,10 @@ public interface VELctrAreaMngService {
//Page List
List<VELctrDetailVO> selectPagingList(VELctrDetailVO paramVO) throws Exception;
//년도 자동 생성 process
VELctrDetailVO selectCheckYr(VELctrDetailVO paramVO) throws Exception;
void insertNewYr(VELctrDetailVO paramVO) throws Exception;
}

View File

@ -91,4 +91,12 @@ public class VELctrAreaMngDAO extends EgovAbstractDAO {
return tlist;
}
public VELctrDetailVO selectCheckYr(VELctrDetailVO paramVO) throws Exception {
return (VELctrDetailVO) select("VELctrAreaMngDAO.selectCheckYr", paramVO);
}
public void insertNewYr(VELctrDetailVO paramVO) throws Exception {
insert("VELctrAreaMngDAO.insertNewYr", paramVO);
}
}

View File

@ -58,5 +58,14 @@ public class VELctrAreaMngServiceImpl implements VELctrAreaMngService {
public List<VELctrDetailVO> selectPagingList(VELctrDetailVO paramVO) throws Exception{
return vELctrAreaMngDAO.selectPagingList(paramVO);
}
//R
public VELctrDetailVO selectCheckYr(VELctrDetailVO paramVO) throws Exception {
return vELctrAreaMngDAO.selectCheckYr(paramVO);
}
public void insertNewYr(VELctrDetailVO paramVO) throws Exception {
vELctrAreaMngDAO.insertNewYr(paramVO);
}
}

View File

@ -1,7 +1,6 @@
package kcc.ve.oprtn.tngrVisitEdu.areaLctrMng.web;
import java.util.List;
import java.util.Properties;
import javax.annotation.Resource;
@ -13,30 +12,12 @@ import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.service.EgovCmmUseService;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.utl.user.service.CheckAdrProcessUtil;
import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrService;
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduPnltyService;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctUnqIsuesService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduCnfrmDsgnService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrMixService;
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrAreaMngService;
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
/**
* 교육신청관리(관리자-청소년찾아가는저작권교육)-고도화
@ -62,6 +43,7 @@ public class AdvAreaLctrMngTngrController {
private static final Logger LOGGER = LoggerFactory.getLogger(AdvAreaLctrMngTngrController.class);
/*
//로그인 체크 util
@Resource(name = "checkLoginUtil")
private CheckLoginUtil checkLoginUtil;
@ -74,9 +56,9 @@ public class AdvAreaLctrMngTngrController {
@Resource(name = "vEEduMIXService")
private VEEduMIXService vEEduMIXService;
//강의지역 관리
@Resource(name = "vELctrAreaMngService")
private VELctrAreaMngService vELctrAreaMngService;
@ -158,7 +140,20 @@ public class AdvAreaLctrMngTngrController {
@Resource(name = "CmmnDetailCodeManageService")
private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService;
*/
//로그인 체크 util
@Resource(name = "checkLoginUtil")
private CheckLoginUtil checkLoginUtil;
//강의지역 관리
@Resource(name = "vELctrAreaMngService")
private VELctrAreaMngService vELctrAreaMngService;
//강의설정 관리
@Resource(name = "vEAStngService")
private VEAStngService vEAStngService;
/**
* 지역별 강의관리 목록 화면
*/
@ -171,24 +166,46 @@ public class AdvAreaLctrMngTngrController {
//로그인 처리====================================
//로그인 정보 가져오기
//String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
//if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
//로그인 처리====================================
//년도 정보에 내년 값까지 없으면 자동 생성한다.
{
//1년후 데이터 있는지 확인
VELctrDetailVO selectCheckYr = vELctrAreaMngService.selectCheckYr(vELctrDetailVO);
if (selectCheckYr.getTotCnt()<=0) {
//없으면 생성
vELctrAreaMngService.insertNewYr(vELctrDetailVO);
}
}
//vEEduAplctVO.setLctrDivCd("30");
vELctrDetailVO.setInstrDiv("10");
//값을 선택한 경우만 상세 정보를 보여준다.
//년도, 회차, 지역
if (vELctrDetailVO.getStngYr()!=null && vELctrDetailVO.getPrdDivCd()!=null) {
List<VELctrDetailVO> vELctrDetailVOList = vELctrAreaMngService.selectList(vELctrDetailVO);
//대상 리스트, 페이징 정보 전달
//지역별 강의 시수 정보 리스트
model.addAttribute("list", vELctrDetailVOList);
VELctrDetailVO selectTimeSum = vELctrAreaMngService.selectTimeSum(vELctrDetailVO);
//해당 년도의 차시 정보
VELctrDetailVO selectTimeSum = vELctrAreaMngService.selectTimeSum(vELctrDetailVO);
//대상 리스트, 페이징 정보 전달
model.addAttribute("selectTimeSum", selectTimeSum);
//선택한 년도&차시의 교육가능시수 & 차시 정보
VEAStngVO vEAStngVO = new VEAStngVO();
VEAStngVO selectBasicInfo = vEAStngService.selectDetail_VEALYS(vEAStngVO);
model.addAttribute("selectBasicInfo", selectBasicInfo);
}

View File

@ -112,9 +112,9 @@
<sqlMap resource="egovframework/sqlmap/ve/asgnm/VEAsgnm_NOTI_SQL_Tibero.xml"/>
<!-- 청소년 추가 -->
<sqlMap resource="egovframework/sqlmap/ve/tngr/VEADtPsblTmQnttyStng_SQL_Tibero.xml"/> <!-- 일별가능시수설정 -->
<!-- <sqlMap resource="egovframework/sqlmap/ve/tngr/VEADtPsblTmQnttyStng_SQL_Tibero.xml"/> 일별가능시수설정 -->
<sqlMap resource="egovframework/sqlmap/ve/tngr/VEALctrYrStng_SQL_Tibero.xml"/> <!-- 강의년도설정 -->
<sqlMap resource="egovframework/sqlmap/ve/tngr/VEALctrRndsStng_SQL_Tibero.xml"/> <!-- 강의회차설정 -->
<sqlMap resource="egovframework/sqlmap/ve/tngr/VEALctrPsblPrdStng_SQL_Tibero.xml"/> <!-- 강의가능기간설정 -->
<sqlMap resource="egovframework/sqlmap/ve/tngr/VEAAreaLctrStng_SQL_Tibero.xml"/> <!-- 지역별강의설정 -->
<!-- <sqlMap resource="egovframework/sqlmap/ve/tngr/VEALctrRndsStng_SQL_Tibero.xml"/> 강의회차설정 -->
<!-- <sqlMap resource="egovframework/sqlmap/ve/tngr/VEALctrPsblPrdStng_SQL_Tibero.xml"/> 강의가능기간설정 -->
<!-- <sqlMap resource="egovframework/sqlmap/ve/tngr/VEAAreaLctrStng_SQL_Tibero.xml"/> 지역별강의설정 -->
</sqlMapConfig>

View File

@ -113,9 +113,9 @@
, #codeIdDc#
, #clCode#
, #useAt#
, NOW()
, SYSDATE
, #frstRegisterId#
, NOW()
, SYSDATE
, #frstRegisterId#
)
]]>
@ -127,7 +127,7 @@
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = NOW()
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>
@ -176,7 +176,7 @@
SET CODE_ID_NM = #codeIdNm#
, CODE_ID_DC = #codeIdDc#
, USE_AT = #useAt#
, LAST_UPDT_PNTTM = NOW()
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
, CODE_ID = #codeId#
WHERE CODE_ID = #tempCodeId#
@ -187,7 +187,7 @@
<![CDATA[
UPDATE LETTCCMMNCODE
SET CODE_ID_NM = #codeIdNm#
, LAST_UPDT_PNTTM = NOW()
, LAST_UPDT_PNTTM = SYSDATE
, LAST_UPDUSR_ID = #lastUpdusrId#
WHERE CODE_ID = #codeId#
]]>

View File

@ -375,6 +375,67 @@
</isNotEmpty>
</select>
<!-- 관리자 대쉬보드 접속 리스트 -->
<select id="LoginLogDAO.selectNWebLog" parameterClass="loginLog" resultClass="loginLog">
/* 임시.*NOT_SQL_LOG.* LoginLogDAO.selectNWebLog */
SELECT
COUNT(1) OVER() AS totCnt
, a.MENU_NM AS menuNm
, a.APPRO_NM AS approNm
, a.METHOD_NM AS methodNm
, b.URL AS url
, b.creat_dt AS creatDt
, b.CONECT_IP AS loginIp
, b.CONECT_ID AS conectId
, c.USER_ID AS loginId
, c.USER_NM AS userNm
FROM LETTNADMINMETHOD a
, lettnloginlog b
LEFT OUTER JOIN COMVNUSERMASTER c
ON(
1=1
AND b.CONECT_ID =c.ESNTL_ID
)
WHERE 1=1
AND a.use_yn='Y'
AND a.method_cd='U'
AND a.METHOD_NM =b.PROGRM_FILE_NM
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="">
( a.MENU_NM LIKE '%'||#searchKeyword#||'%' OR a.URL LIKE '%'||#searchKeyword#||'%' )
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="1">
a.MENU_NM LIKE '%'||#searchKeyword#||'%'
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
a.URL LIKE '%'||#searchKeyword#||'%'
</isEqual>
</isNotEmpty>
<isNotEmpty property="searchStartDt">
AND TO_CHAR(b.CREAT_DT, 'YYYY.MM.DD' ) >= #searchStartDt#
</isNotEmpty>
<isNotEmpty property="searchEndDt">
AND #searchEndDt# >= TO_CHAR(b.CREAT_DT, 'YYYY.MM.DD' )
</isNotEmpty>
ORDER BY 1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<!-- 관리자 로그설정 메소드 리스트 -->
<select id="LoginLogDAO.selectLogMethodList" parameterClass="loginLog" resultClass="loginLog">
/* 임시.*NOT_SQL_LOG.* LoginLogDAO.selectLogMethodList */

View File

@ -46,9 +46,9 @@
a.lctr_psbl_strt_tm AS lctrPsblStrtTm,
a.lctr_psbl_end_tm AS lctrPsblEndTm,
DATE_FORMAT(a.frst_regist_pnttm,'%Y-%m-%d') AS frstRegistPnttm,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
DATE_FORMAT(a.last_updt_pnttm,'%Y-%m-%d') AS lastUpdtPnttm,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId,
a.use_yn AS useYn,
@ -273,7 +273,7 @@
AND a.aprvl_cd IN ('10','60','230','120','20','70','80')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
@ -282,7 +282,7 @@
) AS sumOffCnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -292,14 +292,14 @@
AND a.aprvl_cd IN ('10')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOff10Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -309,14 +309,14 @@
AND a.aprvl_cd IN ('60')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOff60Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -326,7 +326,7 @@
AND a.aprvl_cd IN ('230')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
@ -334,7 +334,7 @@
) AS sumOff230Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -349,15 +349,15 @@
)
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOffEtcCnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -367,14 +367,14 @@
AND a.aprvl_cd IN ('10')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -384,14 +384,14 @@
AND a.aprvl_cd IN ('60')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -401,15 +401,15 @@
AND a.aprvl_cd IN ('230')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -424,10 +424,10 @@
)
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOffTtl
@ -442,15 +442,15 @@
AND a.aprvl_cd IN ('10','60','230','120','20','70','80')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOnCnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -460,15 +460,15 @@
AND a.aprvl_cd IN ('10')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOn10Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -478,14 +478,14 @@
AND a.aprvl_cd IN ('60')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOn60Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -495,14 +495,14 @@
AND a.aprvl_cd IN ('230')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOn230Cnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -517,15 +517,15 @@
)
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOnEtcCnt
, (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -535,14 +535,14 @@
AND a.aprvl_cd IN ('10')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -552,13 +552,13 @@
AND a.aprvl_cd IN ('60')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -568,13 +568,13 @@
AND a.aprvl_cd IN ('230')
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
)
+ (
SELECT ifnull(SUM(chasi),0) AS totalLrnTm
SELECT NVL(SUM(chasi),0) AS totalLrnTm
FROM ve_edu_aplct a
INNER JOIN ve_edu_chasi b
ON a.edu_aplct_ord = b.edu_aplct_ord
@ -589,10 +589,10 @@
)
AND b.edu_hope_dt BETWEEN REPLACE(bbb.aplct_prd_strt,'.','') AND REPLACE(bbb.aplct_prd_end,'.','')
AND IFNULL(a.use_yn,'Y')='Y'
AND NVL(a.use_yn,'Y')='Y'
AND A.SBMT_YN = 'Y'
AND DATE_FORMAT(a.frst_regist_pnttm,'%Y.%m.%d') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
AND TO_CHAR(a.frst_regist_pnttm,'YYYY.MM.DD') BETWEEN bbb.rgstr_strt_dt AND bbb.rgstr_end_dt
) AS sumOnTtl
FROM (
@ -614,7 +614,7 @@
AND aaa.area_cd=bbb.area_cd
<isEmpty property="stngYr">
AND DATE_FORMAT(SYSDATE, '%Y.%m.%d%H') BETWEEN CONCAT(bbb.rgstr_strt_dt,'09') AND CONCAT(bbb.rgstr_end_dt,'24')
AND TO_CHAR(SYSDATE, 'YYYY.MM.DDHH24') BETWEEN CONCAT(bbb.rgstr_strt_dt,'09') AND CONCAT(bbb.rgstr_end_dt,'24')
</isEmpty>
@ -686,11 +686,11 @@
SELECT
rgstr_strt_dt AS rgstrStrtDt
, rgstr_end_dt AS rgstrEndDt
, DATE_FORMAT(SYSDATE, '%Y.%m.%d%H')
, DATE_FORMAT(SYSDATE, '%H%i')
, TO_CHAR(SYSDATE, 'YYYY.MM.DDHH24')
, TO_CHAR(SYSDATE, 'HH24MI')
FROM ve_lctr_area_mng
WHERE DATE_FORMAT(SYSDATE, '%Y.%m.%d%H')
WHERE TO_CHAR(SYSDATE, 'YYYY.MM.DDHH24')
BETWEEN CONCAT(rgstr_strt_dt,'09') AND CONCAT(rgstr_end_dt,'24')
/*
@ -704,10 +704,10 @@
<select id="VELctrAreaMngDAO.selectNextDateList" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
SELECT rgstr_strt_dt AS rgstrStrtDt
, rgstr_end_dt AS rgstrEndDt
, DATE_FORMAT(SYSDATE, '%Y.%m.%d%H')
, DATE_FORMAT(SYSDATE, '%H%i')
, TO_CHAR(SYSDATE, 'YYYY.MM.DDHH24')
, TO_CHAR(SYSDATE, 'HH24MI')
FROM ve_lctr_area_mng
WHERE rgstr_strt_dt > DATE_FORMAT(SYSDATE, '%Y.%m.%d%H')
WHERE rgstr_strt_dt > TO_CHAR(SYSDATE, 'YYYY.MM.DDHH24')
ORDER BY rgstr_strt_dt ASC
LIMIT 1
@ -755,4 +755,36 @@
</select>
<!-- 해당 년도가 있는지 체크함 R -->
<select id="VELctrAreaMngDAO.selectCheckYr" parameterClass="VELctrDetailVO" resultClass="VELctrDetailVO">
/* VELctrAreaMngDAO.selectCheckYr */
SELECT count(*) AS totCnt
FROM LETTCCMMNDETAILCODE
WHERE code_id='VE0029'
AND code=TO_CHAR(SYSDATE+365*1,'YYYY')
</select>
<!-- 해당 년도 등록 C -->
<insert id="VELctrAreaMngDAO.insertNewYr" parameterClass="VELctrDetailVO">
/* VELctrAreaMngDAO.insertNewYr */
INSERT INTO LETTCCMMNDETAILCODE
SELECT CODE_ID
, (MAX(CODE)+1)*1
, MAX(CODE_NM)+1
, MAX(CODE_DC)
, 'Y'
, SYSDATE
, MAX(FRST_REGISTER_ID)
, NULL
, NULL
, MIN(SORT)-1
, 'Y'
FROM LETTCCMMNDETAILCODE
WHERE code_id='VE0029'
GROUP BY CODE_ID
</insert>
</sqlMap>

View File

@ -7,41 +7,42 @@
<!-- 공통 테이블 명 -->
<sql id="VEALctrYrStngDAO.table_name">
ve_edu_aplct_onln
vea_lctr_yr_stng
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEALctrYrStngDAO.column_name">
edu_aplct_ord,
prcs_ord,
yr,
psbl_tm_qntty,
frst_regist_pnttm,
frst_register_id,
last_updt_pnttm,
last_updusr_id
last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEALctrYrStngDAO.select_column_name">
a.edu_aplct_ord AS eduAplctOrd,
a.prcs_ord AS prcsOrd,
a.yr AS yr,
a.psbl_tm_qntty AS psblTmQntty,
DATE_FORMAT(a.frst_regist_pnttm,'%Y-%m-%d') AS frstRegistPnttm,
TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm,
a.frst_register_id AS frstRegisterId,
DATE_FORMAT(a.last_updt_pnttm,'%Y-%m-%d') AS lastUpdtPnttm,
TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS lastUpdtPnttm,
a.last_updusr_id AS lastUpdusrId
</sql>
<!--사 등록 C -->
<!--의년도설정 C -->
<insert id="VEALctrYrStngDAO.insert" parameterClass="VEAStngVO">
INSERT INTO <include refid="VEALctrYrStngDAO.table_name"/> (
<include refid="VEALctrYrStngDAO.column_name"/>
)VALUES(
#eduAplctOrd#,
#prcsOrd#,
#yr#,
#psblTmQntty#,
SYSDATE,
#frstRegisterId#,
SYSDATE,
@ -49,19 +50,18 @@
)
</insert>
<!--사 정보 R -->
<!--의년도설정 R -->
<select id="VEALctrYrStngDAO.selectDetail" parameterClass="VEAStngVO" resultClass="VEAStngVO">
SELECT
<include refid="VEALctrYrStngDAO.select_column_name"/>
FROM
<include refid="VEALctrYrStngDAO.table_name"/> a
WHERE
a.edu_aplct_ord = #eduAplctOrd#
AND a.prcs_ord = #prcsOrd#
a.yr = #yr#
</select>
<!--사 정보 U -->
<!--의년도설정 U -->
<update id="VEALctrYrStngDAO.update" parameterClass="VEAStngVO">
UPDATE
<include refid="VEALctrYrStngDAO.table_name"/>
@ -69,13 +69,17 @@
LAST_UPDT_PNTTM = SYSDATE
,LAST_UPDUSR_ID = #lastUpdusrId#
<isNotEmpty property="psblTmQntty">
, psbl_tm_qntty =#psblTmQntty#
</isNotEmpty>
WHERE
edu_aplct_ord = #eduAplctOrd#
AND prcs_ord = #prcsOrd#
a.yr = #yr#
</update>
<!-- 강사 정보 U -->
<!-- 강의년도설정 U -->
<!--
<update id="VEALctrYrStngDAO.updateBulk" parameterClass="VEAStngVO">
INSERT INTO <include refid="VEALctrYrStngDAO.table_name"/>
(
@ -96,22 +100,18 @@
</update>
-->
<!--사 정보 D -->
<!--의년도설정 D -->
<delete id="VEALctrYrStngDAO.delete" parameterClass="VEAStngVO">
DELETE FROM
<include refid="VEALctrYrStngDAO.table_name"/>
WHERE
edu_aplct_ord = #eduAplctOrd#
<isNotEmpty property="prcsOrd">
AND prcs_ord = #prcsOrd#
</isNotEmpty>
a.yr = #yr#
</delete>
<!--사 정보 L -->
<!-- 강의년도설정 L -->
<select id="VEALctrYrStngDAO.selectList" parameterClass="VEAStngVO" resultClass="VEAStngVO">
SELECT
<include refid="VEALctrYrStngDAO.select_column_name"/>
@ -123,7 +123,7 @@
</select>
<!--사 정보 L page -->
<!--의년도설정 L page -->
<select id="VEALctrYrStngDAO.selectPagingList" parameterClass="VEAStngVO" resultClass="VEAStngVO">
SELECT
COUNT(1) OVER() AS totCnt ,

View File

@ -90,7 +90,7 @@
listForm.pageIndex.value = pageNo ;
//listForm.searchCondition.value = $('#searchCondition').val();
//listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/areaLctrMngList.do'/>";
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/advAreaLctrMngList.do'/>";
listForm.submit();
}

View File

@ -0,0 +1,243 @@
<%--
Class Name : EgovLoginLogList.jsp
Description : 로그인 로그 정보목록 화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2009.03.11 이삼섭 최초 생성
2011.08.31 JJY 경량환경 버전 생성
author : 공통서비스 개발팀 이삼섭
since : 2009.03.11
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="ko" >
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js'/>" ></script>
<script type="text/javascript">
$( document ).ready(function(){
var tempSearchBgnDe = "${searchVO.searchBgnDe}" ;
var tempSearchEndDe = "${searchVO.searchEndDe}" ;
if(""!=tempSearchBgnDe && tempSearchBgnDe.length==8){
$('#searchBgnDe').val(tempSearchBgnDe.substring(0,4)+"-"+tempSearchBgnDe.substring(4,6)+"-"+tempSearchBgnDe.substring(6,8));
}
if(""!=tempSearchEndDe && tempSearchEndDe.length==8){
$('#searchEndDe').val(tempSearchEndDe.substring(0,4)+"-"+tempSearchEndDe.substring(4,6)+"-"+tempSearchEndDe.substring(6,8));
}
});
/* ********************************************************
* PROTOTYPE JS FUNCTION
******************************************************** */
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g, "");
}
String.prototype.replaceAll = function(src, repl){
var str = this;
if(src == repl){return str;}
while(str.indexOf(src) != -1) {
str = str.replace(src, repl);
}
return str;
}
function fn_select(pageNo){
<%--<c:if test="${!empty loginId}">
if(""!= document.frm.searchKeyword.value){
updateRecentSearch();//최근검색어 등록
}
</c:if>--%>
linkPage(1);
}
function fn_egov_select_loginLog(pageNo){
linkPage(1);
}
function fn_egov_inqire_loginLog(logId){
var url = "<c:url value ='/sym/log/clg/InqireLoginLog.do?logId='/>" + logId;
var openParam = "scrollbars=yes,toolbar=0,location=no,resizable=0,status=0,menubar=0,width=640,height=320,left=0,top=0";
window.open(url,"p_loginLogInqire", openParam);
}
function linkPage(pageNo){
var frm = document.frm;
frm.pageIndex.value = pageNo;
if($('#searchConditionSite').length != 0){
frm.searchConditionSite.value = $('#searchConditionSite').val();
}
frm.action = "<c:url value='/sym/log/clg/SelectLoginLogList.do'/>";
frm.submit();
}
//엑셀 다운로드
function logListExcelDownload(){
document.frm.method = "post";
document.frm.action = "<c:url value='/sym/log/clg/roleListExcelDownload.do'/>";
document.frm.submit();
}
</script>
<title>로그인 로그 목록</title>
</head>
<body>
<noscript>자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<form name="frm" id="frm" action ="<c:url value='/sym/log/clg/SelectLoginLogList.do'/>" method="post">
<input type="hidden" name="cal_url" value="<c:url value='/sym/cmm/EgovNormalCalPopup.do'/>" />
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" />
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>사용자로그 관리</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>로그관리</p>
</li>
<li><span class="cur_nav">사용자로그 관리</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top">
<div class="list_top_1">
<div class="util_left">
<p>조회조건</p>
</div>
<div class="util_right">
<select class="sel2 searchSel sel_type1" id="searchCondition" name="searchCondition" title="조회조건">
<option value='' <c:if test="${searchVO.searchCondition == ''}">selected</c:if> >전체</option>
<option value='1' <c:if test="${searchVO.searchCondition == '1'}">selected</c:if>>메뉴명</option>
<option value='2' <c:if test="${searchVO.searchCondition == '2'}">selected</c:if>>URL</option>
</select>
<input type="text" id="searchKeyword" name="searchKeyword" value="<c:out value='${searchVO.searchKeyword}'/>" class="search_input" placeholder="검색어를 입력하세요">
<button class="btn_type08" onclick="fn_select('1'); return false;">검색</button>
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
</div>
</div>
<div class="list_top_2">
<div class="util_left">
<p>접속일자</p>
</div>
<div class="util_right">
<div class="calendar_wrap">
<input type="text" class="calendar" title="시작일 선택" id="searchStartDt" name="searchStartDt" value="${searchVO.searchStartDt}">
</div>
~
<div class="calendar_wrap">
<input type="text" class="calendar" title="종료일 선택" id="endDate" name="searchEndDt" value="${searchVO.searchEndDt}">
</div>
</div>
</div>
</div>
<!-- //list_top -->
<!-- list util -->
<div class="list_util">
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
<div>
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
<option value='10' <c:if test="${searchVO.pageUnit == '10' or searchVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${searchVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${searchVO.pageUnit == '30'}">selected</c:if>>30줄</option>
<option value='100' <c:if test="${searchVO.pageUnit == '100'}">selected</c:if>>100줄</option>
</select>
<!--
<button type="button" class="btn_type03" onclick="fncPrintListPopup(); return false;">신청서 일괄출력</button>
<button type="button" class="btn_down_excel" onclick="excelDownLoad();">엑셀 다운로드</button>
-->
</div>
</div>
<!-- list -->
<div class="list tb_type01">
<table>
<colgroup>
<col style="width: 5%">
<col style="width: 12%">
<%-- <col style="width: 9%"> --%>
<col style="width: 6%">
<col style="width: 15%">
<col style="width: 10%">
<col style="width: 24%">
<col style="width: 15%">
</colgroup>
<thead>
<tr>
<th>번호 <button type="button" class="sortBtn sort" id="sort_logId"></button></th>
<th>메뉴명 <button type="button" class="sortBtn sort" id="sort_menuNm"></button></th>
<!-- <th>접근구분 <button type="button" class="sortBtn sort" id="sort_approNm"></button></th> -->
<th>메소드 <button type="button" class="sortBtn sort" id="sort_progrmFileNm"></button></th>
<th>접속ID <button type="button" class="sortBtn sort" id="sort_loginId"></button></th>
<th>접속IP <button type="button" class="sortBtn sort" id="sort_loginIp"></button></th>
<th>접속URL <button type="button" class="sortBtn sort" id="sort_url"></button></th>
<th>접속일자 <button type="button" class="sortBtn sort" id="sort_creatDt"></button></th>
</tr>
</thead>
<tbody>
<c:forEach var="result" items="${adminLogList}" varStatus="status">
<tr>
<td>
<c:if test="${searchVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
</c:if>
<c:if test="${searchVO.searchSortOrd eq 'asc' }">
<c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/>
</c:if>
</td>
<td><c:out value="${result.menuNm}"/></td>
<%-- <td><c:out value="${result.methodNm}"/></td> --%>
<td><c:out value="${result.approNm}"/></td>
<td><span class="privateInfo"><c:out value="${result.loginId}"/></span></td>
<td><c:out value="${result.loginIp}"/></td>
<td><c:out value="${result.url}"/></td>
<td><c:out value="${result.creatDt}"/></td>
</tr>
</c:forEach>
<c:if test="${empty adminLogList}">
<tr><td colspan="10"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
</form>
<form name="searchForm" method="get" action="<c:url value='/sym/log/clg/SelectLoginLogList.do'/>">
<input name="pageIndex" type="hidden" value="1" />
<input name="searchCondition" type="hidden" />
<input name="searchKeyword" type="hidden" />
<input name="searchConditionSite" type="hidden" />
</form>
</body>
</html>