2025-10-27 10:38 이수증 관리
This commit is contained in:
parent
f51657303b
commit
97e4d7e031
@ -165,7 +165,7 @@ public class PreventMngController {
|
|||||||
//파일 처리 egov
|
//파일 처리 egov
|
||||||
@Resource(name="EgovFileMngUtil")
|
@Resource(name="EgovFileMngUtil")
|
||||||
private EgovFileMngUtil egovFileMngUtil;
|
private EgovFileMngUtil egovFileMngUtil;
|
||||||
|
|
||||||
//파일 체크 util
|
//파일 체크 util
|
||||||
@Resource(name = "checkFileUtil")
|
@Resource(name = "checkFileUtil")
|
||||||
private CheckFileUtil checkFileUtil;
|
private CheckFileUtil checkFileUtil;
|
||||||
|
|||||||
@ -3,6 +3,10 @@
|
|||||||
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
|
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
|
||||||
|
|
||||||
<sqlMapConfig>
|
<sqlMapConfig>
|
||||||
|
|
||||||
|
<!-- 강사 --><!-- 기본셋 -->
|
||||||
|
<sqlMap resource="egovframework/sqlmap/ve/instr/VEInstrDetailActvtHstry_SQL_Postgresql.xml"/><!-- 강사활동내역신청테이블 -->
|
||||||
|
|
||||||
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml"/>
|
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Postgresql.xml"/>
|
||||||
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcsOnlnCntnt_SQL_Postgresql.xml"/>
|
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcsOnlnCntnt_SQL_Postgresql.xml"/>
|
||||||
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Postgresql.xml"/>
|
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Postgresql.xml"/>
|
||||||
|
|||||||
@ -0,0 +1,311 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
|
||||||
|
<!-- 찾교 강사, 강사상세 테이블 -->
|
||||||
|
<sqlMap namespace="VEInstrDetailApptHchkHstry">
|
||||||
|
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||||
|
<typeAlias alias="VEInstrDetailActvtHstryVO" type="kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryVO"/>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 공통 테이블 명 -->
|
||||||
|
<sql id="VEInstrDetailActvtHstryDAO.table_name">
|
||||||
|
ve_instr_detail_actvt_hstry
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<!-- 저장용 공통 컬럼 명 -->
|
||||||
|
<sql id="VEInstrDetailActvtHstryDAO.column_name">
|
||||||
|
instr_detail_actvt_hstry_ord
|
||||||
|
, user_id
|
||||||
|
, instr_detail_ord
|
||||||
|
, aplct_pnttm
|
||||||
|
, state_cd
|
||||||
|
, state_pnttm
|
||||||
|
, aplct_atch_file_id
|
||||||
|
, cmpnn_cn
|
||||||
|
, frst_regist_pnttm
|
||||||
|
, frst_register_id
|
||||||
|
, last_updt_pnttm
|
||||||
|
, last_updusr_id
|
||||||
|
|
||||||
|
, docu_nmbr
|
||||||
|
, sex
|
||||||
|
, purpose
|
||||||
|
, bsns_nmbr
|
||||||
|
, bsns_nm
|
||||||
|
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<!-- 조회용 공통 컬럼 명 -->
|
||||||
|
<sql id="VEInstrDetailActvtHstryDAO.select_column_name">
|
||||||
|
a.instr_detail_actvt_hstry_ord as instrDetailActvtHstryOrd
|
||||||
|
, a.user_id as userId
|
||||||
|
, a.instr_detail_ord as instrDetailOrd
|
||||||
|
, TO_CHAR(a.aplct_pnttm,'YYYY-MM-DD') AS aplctPnttm
|
||||||
|
, a.state_cd as stateCd
|
||||||
|
, TO_CHAR(a.state_pnttm,'YYYY-MM-DD') AS statePnttm
|
||||||
|
, a.aplct_atch_file_id as aplctAtchFileId
|
||||||
|
, a.cmpnn_cn as cmpnnCn
|
||||||
|
, TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm
|
||||||
|
, a.frst_register_id as frstRegisterId
|
||||||
|
, TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS frstRegistPnttm
|
||||||
|
, a.last_updusr_id as lastUpdusrId
|
||||||
|
|
||||||
|
, a.docu_nmbr AS docuNmbr
|
||||||
|
, a.sex
|
||||||
|
, a.purpose
|
||||||
|
, a.bsns_nmbr AS bsnsNmbr
|
||||||
|
, a.bsns_nm AS bsnsNm
|
||||||
|
, a.actvt_period AS actvtPeriod
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<insert id="VEInstrDetailActvtHstryDAO.insert" parameterClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/* VEInstrDetailActvtHstryDAO.insert */
|
||||||
|
INSERT INTO <include refid="VEInstrDetailActvtHstryDAO.table_name"/> (
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.column_name"/>
|
||||||
|
)VALUES(
|
||||||
|
#instrDetailActvtHstryOrd#
|
||||||
|
, #userId#
|
||||||
|
, #instrDetailOrd#
|
||||||
|
, SYSDATE
|
||||||
|
, #stateCd#
|
||||||
|
, SYSDATE
|
||||||
|
, #aplctAtchFileId#
|
||||||
|
, #cmpnnCn#
|
||||||
|
, SYSDATE
|
||||||
|
, #frstRegisterId#
|
||||||
|
, ''
|
||||||
|
, #lastUpdusrId#
|
||||||
|
|
||||||
|
, #docuNmbr#
|
||||||
|
, #sex#
|
||||||
|
, #purpose#
|
||||||
|
, #bsnsNmbr#
|
||||||
|
, #bsnsNm#
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<select id="VEInstrDetailActvtHstryDAO.selectList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/* VEInstrDetailActvtHstryDAO.selectList */
|
||||||
|
SELECT
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||||
|
FROM
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||||
|
WHERE
|
||||||
|
user_id = #userId#
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="VEInstrDetailActvtHstryDAO.selectPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/* VEInstrDetailActvtHstryDAO.selectPagingList */
|
||||||
|
SELECT
|
||||||
|
COUNT(1) OVER() AS totCnt ,
|
||||||
|
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||||
|
b.INSTR_NM AS instrNm ,
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||||
|
FROM
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||||
|
JOIN ve_instr_detail b
|
||||||
|
ON a.user_id = b.user_id
|
||||||
|
AND a.instr_detail_ord = b.instr_detail_ord
|
||||||
|
AND b.INSTR_DIV = #instrDiv#
|
||||||
|
WHERE
|
||||||
|
1=1
|
||||||
|
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||||
|
b.INSTR_NM = #searchKeyword#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||||
|
a.state_cd = #searchSelStatus#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||||
|
TO_CHAR(a.aplct_pnttm,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||||
|
TO_CHAR(a.aplct_pnttm,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
ORDER BY a.aplct_pnttm desc
|
||||||
|
|
||||||
|
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="VEInstrDetailActvtHstryDAO.selectSignPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/* VEInstrDetailActvtHstryDAO.selectSignPagingList */
|
||||||
|
SELECT
|
||||||
|
COUNT(1) OVER() AS totCnt ,
|
||||||
|
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||||
|
b.INSTR_NM AS instrNm ,
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||||
|
|
||||||
|
, c.cnt
|
||||||
|
, c.chasiSum
|
||||||
|
FROM
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||||
|
JOIN ve_instr_detail b
|
||||||
|
ON a.user_id = b.user_id
|
||||||
|
AND a.instr_detail_ord = b.instr_detail_ord
|
||||||
|
left outer join
|
||||||
|
(
|
||||||
|
|
||||||
|
SELECT c.USER_ID AS userId
|
||||||
|
, count(*) AS cnt
|
||||||
|
, sum(b.chasi) AS chasiSum
|
||||||
|
FROM ve_edu_aplct a
|
||||||
|
, ve_edu_chasi b
|
||||||
|
, ve_edu_chasi_instr_asgnm c
|
||||||
|
WHERE a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
|
||||||
|
AND b.EDU_APLCT_ORD =c.EDU_APLCT_ORD
|
||||||
|
AND b.EDU_CHASI_ORD =c.EDU_CHASI_ORD
|
||||||
|
AND a.aprvl_cd='60'
|
||||||
|
AND c.asgnm_aprvl_Cd='30'
|
||||||
|
GROUP BY c.USER_ID
|
||||||
|
|
||||||
|
)c
|
||||||
|
on(
|
||||||
|
a.user_id=c.userId
|
||||||
|
)
|
||||||
|
WHERE
|
||||||
|
1=1
|
||||||
|
AND a.docu_nmbr IS not null
|
||||||
|
|
||||||
|
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||||
|
b.INSTR_NM = #searchKeyword#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||||
|
a.state_cd = #searchSelStatus#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||||
|
TO_CHAR(a.aplct_pnttm,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||||
|
TO_CHAR(a.aplct_pnttm,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="VEInstrDetailActvtHstryDAO.selectSignAndCmpltCrtfcPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/* VEInstrDetailActvtHstryDAO.selectSignAndCmpltCrtfcPagingList */
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
COUNT(1) OVER() AS totCnt
|
||||||
|
, a.PRCS_APLCT_PRD_ORD as prcsAplctPrdOrd
|
||||||
|
, b.LCTR_DIV_CD AS lctrDivCd
|
||||||
|
, b.EDU_STRT_PNTTM AS eduStrtPnttm
|
||||||
|
, a.EDU_APLCT_ORD as eduAplctOrd
|
||||||
|
, a.APLCT_STATE_CD as aplctStateCd
|
||||||
|
, a.EDU_CMPLT_CRTFC_NMBR as eduCmpltCrtfcNmbr
|
||||||
|
, c.PRCS_NM as prcsNm
|
||||||
|
, c.PRCS_DIV as prcsDiv
|
||||||
|
, d.USER_ID as userId
|
||||||
|
, e.MBER_NM as mberNm
|
||||||
|
, to_char( a.LAST_UPDT_PNTTM ,'YYYY.MM.DD' ) AS lastUpdtPnttm
|
||||||
|
FROM
|
||||||
|
vea_aplct_detail_info a
|
||||||
|
LEFT JOIN ve_prcs_aplct_prd b
|
||||||
|
ON a.PRCS_APLCT_PRD_ORD = b.PRCS_APLCT_PRD_ORD
|
||||||
|
LEFT JOIN ve_prcs c
|
||||||
|
ON b.PRCS_ORD = c.PRCS_ORD
|
||||||
|
LEFT JOIN VE_EDU_APLCT d
|
||||||
|
ON a.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||||
|
LEFT JOIN LETTNGNRLMBER e
|
||||||
|
ON e.MBER_ID = d.USER_ID
|
||||||
|
WHERE
|
||||||
|
a.APLCT_STATE_CD ='20'
|
||||||
|
AND
|
||||||
|
b.LCTR_DIV_CD !='60'
|
||||||
|
AND
|
||||||
|
a.EDU_CMPLT_CRTFC_NMBR IS NOT null
|
||||||
|
|
||||||
|
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||||
|
e.MBER_NM = #searchKeyword#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||||
|
a.state_cd = #searchSelStatus#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||||
|
TO_CHAR(a.LAST_UPDT_PNTTM,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||||
|
TO_CHAR(a.LAST_UPDT_PNTTM,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
ORDER BY a.EDU_CMPLT_CRTFC_NMBR desc
|
||||||
|
|
||||||
|
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="VEInstrDetailActvtHstryDAO.findById" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||||
|
/*VEInstrDetailActvtHstryDAO.findById */
|
||||||
|
SELECT
|
||||||
|
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||||
|
b.user_id AS userId ,
|
||||||
|
b.instr_nm as instrNm ,
|
||||||
|
b.phone ,
|
||||||
|
b.post ,
|
||||||
|
b.addr ,
|
||||||
|
b.addr_detail as addrDetail ,
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||||
|
|
||||||
|
|
||||||
|
FROM
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||||
|
JOIN ve_instr_detail b
|
||||||
|
ON a.user_id = b.user_id
|
||||||
|
AND a.instr_detail_ord = b.instr_detail_ord
|
||||||
|
WHERE
|
||||||
|
a.instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<update id="VEInstrDetailActvtHstryDAO.updateStateCd" parameterClass="VEInstrDetailActvtHstryVO">
|
||||||
|
UPDATE
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name" />
|
||||||
|
SET
|
||||||
|
state_cd = #stateCd#
|
||||||
|
|
||||||
|
<isEqual property="stateCd" compareValue="30">
|
||||||
|
, docu_nmbr = NVL(
|
||||||
|
(
|
||||||
|
SELECT nvl(max(docu_nmbr),0) AS docuNmbr
|
||||||
|
FROM ve_instr_detail_actvt_hstry a
|
||||||
|
WHERE state_cd='30'
|
||||||
|
AND to_char(a.state_pnttm,'YYYY')=(
|
||||||
|
SELECT to_char(sysdate,'YYYY')
|
||||||
|
FROM dual
|
||||||
|
)
|
||||||
|
GROUP BY to_char(a.state_pnttm,'YYYY')
|
||||||
|
),0
|
||||||
|
)+1
|
||||||
|
</isEqual>
|
||||||
|
|
||||||
|
<isNotEmpty property="cmpnnCn">
|
||||||
|
, cmpnn_cn = #cmpnnCn#
|
||||||
|
</isNotEmpty>
|
||||||
|
, state_pnttm = SYSDATE
|
||||||
|
, LAST_UPDT_PNTTM = SYSDATE
|
||||||
|
, LAST_UPDUSR_ID = #lastUpdusrId#
|
||||||
|
WHERE
|
||||||
|
instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||||
|
|
||||||
|
</update>
|
||||||
|
|
||||||
|
|
||||||
|
<update id="VEInstrDetailActvtHstryDAO.updateActvtPeriod" parameterClass="VEInstrDetailActvtHstryVO">
|
||||||
|
UPDATE
|
||||||
|
<include refid="VEInstrDetailActvtHstryDAO.table_name" />
|
||||||
|
SET
|
||||||
|
actvt_period = #actvtPeriod#
|
||||||
|
WHERE
|
||||||
|
instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||||
|
|
||||||
|
</update>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</sqlMap>
|
||||||
Loading…
Reference in New Issue
Block a user