2025-10-27 10:38 이수증 관리
This commit is contained in:
parent
f51657303b
commit
97e4d7e031
@ -165,7 +165,7 @@ public class PreventMngController {
|
||||
//파일 처리 egov
|
||||
@Resource(name="EgovFileMngUtil")
|
||||
private EgovFileMngUtil egovFileMngUtil;
|
||||
|
||||
|
||||
//파일 체크 util
|
||||
@Resource(name = "checkFileUtil")
|
||||
private CheckFileUtil checkFileUtil;
|
||||
|
||||
@ -3,6 +3,10 @@
|
||||
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
|
||||
|
||||
<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/VEPrcsOnlnCntnt_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