2025-08-27 09:49 프로젝트 설정

This commit is contained in:
myname 2025-08-27 09:49:23 +09:00
parent 346c21bfc6
commit 72e201183b
10 changed files with 10540 additions and 47 deletions

View File

@ -17,6 +17,8 @@ public interface CndtnTrgtMngService {
CndtnTrgtMngVO selectDetail4Merge(CndtnTrgtMngVO cndtnTrgtInfoVO);
CndtnTrgtMngVO selectCheck4Merge(CndtnTrgtMngVO cndtnTrgtInfoVO);
//해당 지검의 관할청 코드값 가져오기
CndtnTrgtMngVO selectDetailReqNmbr(CndtnTrgtMngVO cndtnTrgtInfoVO);

View File

@ -110,6 +110,10 @@ public class CndtnTrgtMngDAO extends EgovAbstractDAO {
return (CndtnTrgtMngVO) select("cndtnTrgtInfoMngDAO.selectDetail4Merge", cndtnTrgtInfoVO);
}
public CndtnTrgtMngVO selectCheck4Merge(CndtnTrgtMngVO cndtnTrgtInfoVO) {
return (CndtnTrgtMngVO) select("cndtnTrgtInfoMngDAO.selectCheck4Merge", cndtnTrgtInfoVO);
}
public CndtnTrgtMngVO selectDetailReqNmbr(CndtnTrgtMngVO cndtnTrgtInfoVO) {
return (CndtnTrgtMngVO) select("cndtnTrgtInfoMngDAO.selectDetailReqNmbr", cndtnTrgtInfoVO);
}
@ -118,6 +122,10 @@ public class CndtnTrgtMngDAO extends EgovAbstractDAO {
update("cndtnTrgtInfoMngDAO.update", cndtnTrgtInfoMngVO);
}
public void update4Merge(CndtnTrgtMngVO cndtnTrgtInfoMngVO) {
update("cndtnTrgtInfoMngDAO.update4Merge", cndtnTrgtInfoMngVO);
}
public String findByTrgtNmAndDBirthAndEduStateCd(CndtnTrgtMngVO cndtnTrgtInfoMngVO) {
return (String) select("cndtnTrgtInfoMngDAO.findByTrgtNmAndDBirthAndEduStateCd", cndtnTrgtInfoMngVO);
}

View File

@ -39,7 +39,18 @@ public class CndtnTrgtMngServiceImpl implements CndtnTrgtMngService {
@Override
public int insert4Merge(CndtnTrgtMngVO cndtnTrgtInfoMngVO) {
return cndtnTrgtInfoMngDAO.insert4Merge(cndtnTrgtInfoMngVO);
//postgre에서는 tibero의 merge 구문이 없으므로 단계를 나눠서 처리한다.
//step1. 존재하는가?
CndtnTrgtMngVO cndtnTrgtMngVO = cndtnTrgtInfoMngDAO.selectCheck4Merge(cndtnTrgtInfoMngVO);
if (cndtnTrgtMngVO == null) { //step2-2.없으면 insert
cndtnTrgtInfoMngDAO.insert(cndtnTrgtInfoMngVO);
}else { //step2-1.있으면 update
cndtnTrgtInfoMngDAO.update4Merge(cndtnTrgtInfoMngVO);
}
//return cndtnTrgtInfoMngDAO.insert4Merge(cndtnTrgtInfoMngVO);
return 1;
}
@ -52,6 +63,11 @@ public class CndtnTrgtMngServiceImpl implements CndtnTrgtMngService {
public CndtnTrgtMngVO selectDetail4Merge(CndtnTrgtMngVO cndtnTrgtInfoVO) {
return cndtnTrgtInfoMngDAO.selectDetail4Merge(cndtnTrgtInfoVO);
}
@Override
public CndtnTrgtMngVO selectCheck4Merge(CndtnTrgtMngVO cndtnTrgtInfoVO) {
return cndtnTrgtInfoMngDAO.selectCheck4Merge(cndtnTrgtInfoVO);
}
@Override
public CndtnTrgtMngVO selectDetailReqNmbr(CndtnTrgtMngVO cndtnTrgtInfoVO) {

View File

@ -540,51 +540,63 @@ public class CndtnPrcsInfoMngController {
//로그인 처리====================================
//로그인 정보 가져오기
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
//로그인 처리====================================
System.out.println("로그인 처리====================================");
//과정 정보 가져오기
{
//1.pageing step1
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
paginationInfo.setRecordCountPerPage(10000);
//2. pageing step2
vEPrcsDetailVO.setOrderByQuery("a.prcs_nm asc");
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
//기반강화 조회
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
//3.pageing step3
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
//model.addAttribute("paginationInfo", paginationInfo);
try {
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
//로그인 처리====================================
System.out.println("로그인 처리====================================8");
//과정 정보 가져오기
{
//1.pageing step1
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
paginationInfo.setRecordCountPerPage(10000);
//2. pageing step2
vEPrcsDetailVO.setOrderByQuery("a.prcs_nm asc");
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
//기반강화 조회
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO);
//3.pageing step3
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
//model.addAttribute("paginationInfo", paginationInfo);
// 교육 부분 코드 가져오는 영역
ComDefaultCodeVO codeVO = new ComDefaultCodeVO();
codeVO.setCodeId("VEA001");//기관구분코드
codeVO.setCode(vEPrcsDetailVOList.get(0).getPrcsDiv());
model.addAttribute("prcsDivNm", cmmUseDAO.selectCmmCodeDetailValue(codeVO).getCodeNm());
// 상세교육과정 내용 가져오는 영역
VEPrcsDetailVO vEPrcsDetailVOPrcsCn = new VEPrcsDetailVO();
vEPrcsDetailVOPrcsCn.setPrcsOrd(vEPrcsDetailVOList.get(0).getPrcsOrd());
model.addAttribute("prcsCn", vEPrcsService.selectDetail(vEPrcsDetailVOPrcsCn).getPrcsCn());
// 교육 부분 코드 가져오는 영역
ComDefaultCodeVO codeVO = new ComDefaultCodeVO();
codeVO.setCodeId("VEA001");//기관구분코드
codeVO.setCode(vEPrcsDetailVOList.get(0).getPrcsDiv());
model.addAttribute("prcsDivNm", cmmUseDAO.selectCmmCodeDetailValue(codeVO).getCodeNm());
// 상세교육과정 내용 가져오는 영역
VEPrcsDetailVO vEPrcsDetailVOPrcsCn = new VEPrcsDetailVO();
vEPrcsDetailVOPrcsCn.setPrcsOrd(vEPrcsDetailVOList.get(0).getPrcsOrd());
model.addAttribute("prcsCn", vEPrcsService.selectDetail(vEPrcsDetailVOPrcsCn).getPrcsCn());
//대상 리스트, 페이징 정보 전달
model.addAttribute("listPrcs", vEPrcsDetailVOList);
//대상 리스트, 페이징 정보 전달
model.addAttribute("listPrcs", vEPrcsDetailVOList);
}
System.out.println("로그인 처리====================================2");
}catch(Exception ex) {
ex.printStackTrace();
}
System.out.println("로그인 처리====================================3");

View File

@ -18,5 +18,11 @@
<sqlMap resource="egovframework/sqlmap/ve/rsdnc/VERsdnc_MIX_SQL_Postgresql.xml"/>
<!-- 조건부기소유예관리 대상자 관리 -->
<sqlMap resource="egovframework/sqlmap/ve/cndtn/cndtnTrgtInfoMng_SQL_Postgresql.xml"/>
<sqlMap resource="egovframework/sqlmap/ve/cndtn/cndtnTrgtInfoMng_SQL_Postgresql.xml"/>
<!-- 교육신청복합쿼리 -->
<sqlMap resource="egovframework/sqlmap/ve/prcs/VEAPrcsAplctPrdInstrAsgnm_SQL_Postgresql.xml"/>
<sqlMap resource="egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Postgresql.xml"/>
</sqlMapConfig>

View File

@ -34,6 +34,7 @@
<select id="FileManageDAO.selectFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
@ -52,6 +53,7 @@
</select>
<select id="FileManageDAO.selectZipFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectZipFileList */
SELECT
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, TO_CHAR(a.CREAT_DT, 'YYYY-MM-DD HH24:MI:SS') AS CREAT_DT
@ -116,6 +118,7 @@
</delete>
<select id="FileManageDAO.getMaxFileSN" parameterClass="FileVO" resultClass="java.lang.Integer">
/* FileManageDAO.getMaxFileSN */
<![CDATA[
SELECT COALESCE(MAX(FILE_SN),0)+1 AS FILE_SN
FROM LETTNFILEDETAIL
@ -124,6 +127,7 @@
</select>
<select id="FileManageDAO.selectFileInf" parameterClass="FileVO" resultMap="fileDetail" >
/* FileManageDAO.selectFileInf */
<![CDATA[
SELECT
ATCH_FILE_ID, FILE_CN, FILE_SN, FILE_STRE_COURS, STRE_FILE_NM,
@ -133,7 +137,7 @@
WHERE
ATCH_FILE_ID = #atchFileId#
AND
FILE_SN = #fileSn#
FILE_SN = CAST(#fileSn# AS int)
]]>
</select>
@ -146,6 +150,7 @@
</update>
<select id="FileManageDAO.selectFileListByFileNm" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectFileListByFileNm */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,
@ -170,6 +175,7 @@
</select>
<select id="FileManageDAO.selectFileListCntByFileNm" parameterClass="FileVO" resultClass="java.lang.Integer" >
/* FileManageDAO.selectFileListCntByFileNm */
<![CDATA[
SELECT
COUNT(a.ATCH_FILE_ID)
@ -189,6 +195,7 @@
</select>
<select id="FileManageDAO.selectImageFileList" parameterClass="FileVO" resultMap="fileList" >
/* FileManageDAO.selectImageFileList */
<![CDATA[
SELECT
a.ATCH_FILE_ID, b.FILE_CN, b.FILE_SN, b.FILE_STRE_COURS, b.STRE_FILE_NM,

View File

@ -99,7 +99,7 @@
, #addrDetail#
, #post#
, #email#
, #reqPnttm#
, NOW()
, #vntYear#
, #vntNmbr#
, #cmptntAthrt#
@ -257,6 +257,26 @@
LIMIT 1
</select>
<!-- excel 데이터를 넣거나, 업데이트 진행을 위한 데이터 중복을 체크한다. -->
<select id="cndtnTrgtInfoMngDAO.selectCheck4Merge" parameterClass="CndtnPrcsInfoMngVO" resultClass="CndtnPrcsInfoMngVO">
/* cndtnTrgtInfoMngDAO.selectDetail4Merge */
SELECT
<include refid="CndtnTrgtInfoMngDAO.select_column_name"/>
FROM
<include refid="CndtnTrgtInfoMngDAO.table_name"/> a
WHERE
1=1
AND req_nmbr = #reqNmbr#
AND vnt_nmbr = #vntNmbr#
AND vnt_year = #vntYear#
AND trgt_nm=#trgtNm#
AND sex=#sex#
AND d_birth=#dBirth#
ORDER BY req_pnttm
LIMIT 1
</select>
<!-- 해당 지검의 관할청 코드값 가져오기 -->
<select id="cndtnTrgtInfoMngDAO.selectDetailReqNmbr" parameterClass="CndtnPrcsInfoMngVO" resultClass="CndtnPrcsInfoMngVO">
/* cndtnTrgtInfoMngDAO.selectDetailReqNmbr */
@ -322,6 +342,40 @@
sspn_idtmt_trgt_ord = #sspnIdtmtTrgtOrd#
</update>
<!-- 강사 수정 C -->
<update id="cndtnTrgtInfoMngDAO.update4Merge" parameterClass="CndtnPrcsInfoMngVO">
/* cndtnTrgtInfoMngDAO.update4Merge */
UPDATE
<include refid="CndtnTrgtInfoMngDAO.table_name"/>
SET
edu_state_cd = #eduStateCd#
, last_updt_pnttm = NOW()
, last_updusr_id = #frstRegisterId#
, clphone = #clphone#
, addr = #addr#
, addr_detail = #addrDetail#
, post = #post#
, email = #email#
, req_pnttm = NOW()
, cmptnt_athrt = #cmptntAthrt#
, prsctr_nm = #prsctrNm#
, req_state_cd = #reqStateCd#
, atch_file_id = #atchFileId#
, prcs_aplct_prd_ord_cmplt = #prcsAplctPrdOrdCmplt#
, rmrks = #rmrks#
, edu_aplct_ord = #eduAplctOrd#
WHERE
req_nmbr = #reqNmbr#
AND vnt_nmbr = #vntNmbr#
AND vnt_year = #vntYear#
AND trgt_nm = #trgtNm#
AND d_birth = #dBirth#
AND sex = #sex#
</update>
<update id="cndtnTrgtInfoMngDAO.updateTrgtDuplAjax" parameterClass="CndtnPrcsInfoMngVO">
/* cndtnTrgtInfoMngDAO.updateTrgtDuplAjax */

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,245 @@
<?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">
<!-- 찾교 과정 테이블 -->
<sqlMap namespace="VEAPrcsAplctPrdInstrAsgnm">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="VEAPrcsAplctPrdInstrAsgnmVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO"/>
<typeAlias alias="VEPrcsDetailVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO"/>
<!-- 공통 테이블 명 -->
<sql id="VEAPrcsAplctPrdInstrAsgnmDAO.table_name">
vea_prcs_aplct_prd_instr_asgnm
</sql>
<!-- 저장용 공통 컬럼 명 -->
<sql id="VEAPrcsAplctPrdInstrAsgnmDAO.column_name">
prcs_aplct_prd_ord
, user_id
, lctr_plan_atch_file_id
, doc_atch_file_id
, asgnm_aprvl_cd
, asgnm_aprvl_pnttm
, asgnm_aprvl_id
, rmrks
, frst_regist_pnttm
, frst_register_id
, last_updt_pnttm
, last_updusr_id
</sql>
<!-- 조회용 공통 컬럼 명 -->
<sql id="VEAPrcsAplctPrdInstrAsgnmDAO.select_column_name">
a.prcs_aplct_prd_ord as prcsAplctPrdOrd
, a.user_id as userId
, a.lctr_plan_atch_file_id as lctrPlanAtchFileId
, a.doc_atch_file_id as docAtchFileId
, a.asgnm_aprvl_cd as asgnmAprvlCd
, a.asgnm_aprvl_pnttm as asgnmAprvlPnttm
, a.asgnm_aprvl_id as asgnmAprvlId
, a.rmrks as rmrks
, a.frst_regist_pnttm as frstRegistPnttm
, a.frst_register_id as frstRegisterId
, a.last_updt_pnttm as lastUpdtPnttm
, a.last_updusr_id as lastUpdusrId
</sql>
<!-- 강사 배정 등록 -->
<insert id="VEAPrcsAplctPrdInstrAsgnmDAO.instrInsert" parameterClass="VEAPrcsAplctPrdInstrAsgnmVO">
INSERT INTO <include refid="VEAPrcsAplctPrdInstrAsgnmDAO.table_name"/> (
<include refid="VEAPrcsAplctPrdInstrAsgnmDAO.column_name"/>
)VALUES(
#prcsAplctPrdOrd#
, #userId#
, #lctrPlanAtchFileId#
, #docAtchFileId#
, #asgnmAprvlCd#
, SYSDATE
, #asgnmAprvlId#
, #rmrks#
, SYSDATE
, #frstRegisterId#
, SYSDATE
, #lastUpdusrId#
)
</insert>
<!-- 강사 배정 등록 -->
<insert id="VEAPrcsAplctPrdInstrAsgnmDAO.insertAprvlCdEduAplctDetail" parameterClass="VEPrcsDetailVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.insertAprvlCdEduAplctDetail */
INSERT INTO vea_aplct_detail_info
(
prcs_aplct_prd_ord
, edu_aplct_ord
, aplct_state_cd
, aplct_pnttm
, frst_regist_pnttm
, frst_register_id
)
VALUES
(
#prcsAplctPrdOrd#
, #eduAplctOrd#
, #aplctStateCd#
, SYSDATE
, SYSDATE
, #frstRegisterId#
)
</insert>
<select id="VEAPrcsAplctPrdInstrAsgnmDAO.selectAprvlCdEduAplctDetail" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.selectAprvlCdEduAplctDetail */
select
prcs_aplct_prd_ord as prcsAplctPrdOrd
, edu_aplct_ord as eduAplctOrd
, aplct_state_cd as aplctStateCd
, frst_regist_pnttm as frstRegistPnttm
, frst_register_id as frstRegisterId
from vea_aplct_detail_info
where edu_aplct_ord = #eduAplctOrd#
and prcs_aplct_prd_ord = #prcsAplctPrdOrd#
</select>
<delete id="VEAPrcsAplctPrdInstrAsgnmDAO.updateAprvlCdEduAplctDetail" parameterClass="VEPrcsDetailVO">
UPDATE vea_aplct_detail_info SET
aplct_state_cd = #aplctStateCd#
, aplct_pnttm = SYSDATE
WHERE
edu_aplct_ord = #eduAplctOrd#
AND prcs_aplct_prd_ord = #prcsAplctPrdOrd#
</delete>
<!-- 교육 신청자 상태 update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.udpateAprvlCdEduAplct" parameterClass="VEPrcsDetailVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.udpateAprvlCdEduAplct */
UPDATE VE_EDU_APLCT
SET aprvl_cd = #aprvlCd#
WHERE edu_aplct_ord IN
<iterate property="eduAplctOrdList" open="(" close=")" conjunction=",">
#eduAplctOrdList[]#
</iterate>
</update>
<!-- 교육 신청자 상태 update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updateAplctStateCdListAjax" parameterClass="VEPrcsDetailVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.updateAplctStateCdListAjax */
UPDATE VEA_APLCT_DETAIL_INFO
SET aplct_state_cd = #aplctStateCd#
,aplct_pnttm = SYSDATE
,edu_cmplt_crtfc_nmbr = #eduCmpltCrtfcNmbr#
,last_updusr_id = #lastUpdusrId#
,last_updt_pnttm = sysdate
WHERE edu_aplct_ord IN
<iterate property="eduAplctOrdList" open="(" close=")" conjunction=",">
#eduAplctOrdList[]#
</iterate>
</update>
<!-- 교육 신청자 상태 update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updateEduStateCdListAjax" parameterClass="VEPrcsDetailVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.updateEduStateCdListAjax */
UPDATE VEA_SSPN_IDMT_TRGT
SET edu_state_cd = #eduStateCd#
WHERE sspn_idtmt_trgt_ord IN
<iterate property="sspnIdtmtTrgtOrdList" open="(" close=")" conjunction=",">
#sspnIdtmtTrgtOrdList[]#
</iterate>
</update>
<!-- 강사 배정 등록 -->
<select id="VEAPrcsAplctPrdInstrAsgnmDAO.findByPrcsAplctPrdOrd" parameterClass="String" resultClass="VEAPrcsAplctPrdInstrAsgnmVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.findByPrcsAplctPrdOrd */
SELECT
<include refid="VEAPrcsAplctPrdInstrAsgnmDAO.select_column_name"/>
, vid.instr_nm as instrNm
, vid.phone
FROM
<include refid="VEAPrcsAplctPrdInstrAsgnmDAO.table_name"/> a
LEFT JOIN ve_instr_detail vid
ON a.user_id = vid.user_id
WHERE 1=1
AND a.prcs_aplct_prd_ord = #prcsAplctPrdOrd#
AND vid.aprvl_cd ='20' <!-- 변경 승인 -->
AND vid.instr_div ='20' <!-- 성인강사 -->
AND vid.use_yn ='Y'
</select>
<!-- 강의계획서 update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId" parameterClass="vEAPrcsAplctPrdInstrAsgnmVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId */
UPDATE VEA_PRCS_APLCT_PRD_INSTR_ASGNM
SET lctr_plan_atch_file_id = #lctrPlanAtchFileId#
, last_updusr_id = #lastUpdusrId#
, last_updt_pnttm = sysdate
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#
AND user_id = #userId#
</update>
<select id="VEAPrcsAplctPrdInstrAsgnmDAO.selectPrcsInstrAsgnmDetail" parameterClass="VEPrcsDetailVO" resultClass="VEAPrcsAplctPrdInstrAsgnmVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.selectPrcsInstrAsgnmDetail*/
SELECT
<include refid="VEAPrcsAplctPrdInstrAsgnmDAO.select_column_name"/>
, vid.instr_nm as instrNm
, vid.phone
FROM
<include refid="VEAPrcsAplctPrdInstrAsgnmDAO.table_name"/> a
LEFT JOIN ve_instr_detail vid
ON a.user_id = vid.user_id
WHERE 1=1
AND a.prcs_aplct_prd_ord = #prcsAplctPrdOrd#
AND vid.aprvl_cd ='20' <!-- 변경 승인 -->
AND vid.instr_div ='20' <!-- 성인강사 -->
AND vid.use_yn ='Y'
<isNotEmpty prepend="AND" property="userId">
a.user_id = #userId#
</isNotEmpty>
</select>
<!-- 결과보고 update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updatDocAtchFileId" parameterClass="vEAPrcsAplctPrdInstrAsgnmVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.updatDocAtchFileId */
UPDATE VEA_PRCS_APLCT_PRD_INSTR_ASGNM
SET doc_atch_file_id = #docAtchFileId#
, last_updusr_id = #lastUpdusrId#
, last_updt_pnttm = sysdate
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#
AND user_id = #userId#
</update>
<!-- 강의계획서/결과보고 reset update -->
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updateResetAtchFileId" parameterClass="vEAPrcsAplctPrdInstrAsgnmVO">
/* VEAPrcsAplctPrdInstrAsgnmDAO.updateResetAtchFileId */
UPDATE VEA_PRCS_APLCT_PRD_INSTR_ASGNM
SET last_updt_pnttm = sysdate
, last_updusr_id = #lastUpdusrId#
<isNotEmpty property="docAtchFileId">
, doc_atch_file_id = null
</isNotEmpty>
<isNotEmpty property="lctrPlanAtchFileId">
, lctr_plan_atch_file_id = null
</isNotEmpty>
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#
AND user_id = #userId#
</update>
</sqlMap>

View File

@ -112,7 +112,7 @@
,#deadLineDt#
,#prcsOrd#
,#eduPartCd#
,#nos#
,CAST(#nos# AS int)
,#ddlnCd#
,#eduStrtPnttm#
,#eduDdlnPnttm#
@ -439,7 +439,7 @@
</isNotEmpty>
<isNotEmpty property="lctrDivCd">
AND a.lctr_div_cd=#lctrDivCd#
AND b.lctr_div_cd=#lctrDivCd#
</isNotEmpty>
<isEqual property="lctrDivCd" compareValue="60">
@ -823,7 +823,7 @@
AS lctrPlanRsltAtchFileId -->
,'' AS lctrPlanRsltAtchFileId <!-- 임시 -->
,a.prvt_memo_cn AS prvtMemoCn
,b.cn_atch_file_id AS cnAtchFileId
,a.cn_atch_file_id AS cnAtchFileId
FROM ve_prcs_aplct_prd a
, ve_prcs b