이지우 - 관리자 성인 교육 일정관리 > 상세팝업에 누가 정보 추가, 일정 엑셀 다운로드 시 정보 추가

This commit is contained in:
jiwoo 2023-07-28 11:35:21 +09:00
parent c8d84851f2
commit 7c22e00e4b
9 changed files with 225 additions and 14 deletions

View File

@ -96,6 +96,21 @@ public class SchduleManageVO extends ComDefaultVO {
private String lastUpdusrId; private String lastUpdusrId;
private Date todate; private Date todate;
//23.07.26 엑셀 다운로드 항목 추가
private String eduSlctCd; //교육구분
private String insttDivCd; //기관구분
private String eduMd; //교육매체
private String addr; // 주소
private String addrDetail; //상세주소
private String chrgNm; //담당자
private String jobNm; //담당자
private String clphone; //휴대폰
private String phone; //번호
private String email; //이메일
private String hopeSbjct; //희망주제
private String rqstCn; //교육 주제 관련 상세 요청사항 사전 질의
public Date getTodate() { public Date getTodate() {
@ -298,4 +313,102 @@ public class SchduleManageVO extends ComDefaultVO {
public void setTimeTxt(String timeTxt) { public void setTimeTxt(String timeTxt) {
this.timeTxt = timeTxt; this.timeTxt = timeTxt;
} }
public String getEduSlctCd() {
return eduSlctCd;
}
public void setEduSlctCd(String eduSlctCd) {
this.eduSlctCd = eduSlctCd;
}
public String getInsttDivCd() {
return insttDivCd;
}
public void setInsttDivCd(String insttDivCd) {
this.insttDivCd = insttDivCd;
}
public String getEduMd() {
return eduMd;
}
public void setEduMd(String eduMd) {
this.eduMd = eduMd;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public String getAddrDetail() {
return addrDetail;
}
public void setAddrDetail(String addrDetail) {
this.addrDetail = addrDetail;
}
public String getChrgNm() {
return chrgNm;
}
public void setChrgNm(String chrgNm) {
this.chrgNm = chrgNm;
}
public String getJobNm() {
return jobNm;
}
public void setJobNm(String jobNm) {
this.jobNm = jobNm;
}
public String getClphone() {
return clphone;
}
public void setClphone(String clphone) {
this.clphone = clphone;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getHopeSbjct() {
return hopeSbjct;
}
public void setHopeSbjct(String hopeSbjct) {
this.hopeSbjct = hopeSbjct;
}
public String getRqstCn() {
return rqstCn;
}
public void setRqstCn(String rqstCn) {
this.rqstCn = rqstCn;
}
} }

View File

@ -14,6 +14,7 @@ import kcc.com.cmm.ComDefaultCodeVO;
import kcc.com.cmm.ComDefaultVO; import kcc.com.cmm.ComDefaultVO;
import kcc.com.cmm.service.CmmnDetailCode; import kcc.com.cmm.service.CmmnDetailCode;
import kcc.com.cmm.service.EgovCmmUseService; import kcc.com.cmm.service.EgovCmmUseService;
import kcc.kccadr.sch.service.SchduleManageVO;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.umt.service.UserManageVO; import kcc.let.uss.umt.service.UserManageVO;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO; import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduExcelVO;
@ -454,6 +455,31 @@ public class EgovCryptoUtil {
return p_VEEduSatisfactionExcelVO; return p_VEEduSatisfactionExcelVO;
} }
//SchduleManageVO
//- 복호화
public List<SchduleManageVO> decryptSchduleManageVOList(List<SchduleManageVO> p_schduleManageVOList){
for (int i=0;i<p_schduleManageVOList.size();i++) {
SchduleManageVO schduleManageVO = this.decryptSchduleManageVOInfo(p_schduleManageVOList.get(i));
p_schduleManageVOList.set(i, schduleManageVO);
}
return p_schduleManageVOList;
}
//VEEduAplctVO - 복호화
public SchduleManageVO decryptSchduleManageVOInfo(SchduleManageVO p_schduleManageVO){
if (!"".equals(p_schduleManageVO.getChrgNm())) p_schduleManageVO.setChrgNm(this.decrypt(p_schduleManageVO.getChrgNm()));
if (!"".equals(p_schduleManageVO.getClphone())) p_schduleManageVO.setClphone(this.decrypt(p_schduleManageVO.getClphone()));
if (!"".equals(p_schduleManageVO.getPhone())) p_schduleManageVO.setPhone(this.decrypt(p_schduleManageVO.getPhone()));
if (!"".equals(p_schduleManageVO.getEmail())) p_schduleManageVO.setEmail(this.decrypt(p_schduleManageVO.getEmail()));
return p_schduleManageVO;
}
////////////////////////////////////////////////// //////////////////////////////////////////////////
// //
// 1.common // 1.common

View File

@ -492,6 +492,7 @@ public class EduAplctMngAdultController {
schduleManageVO.setSearchStartDt(schduleManageVO.getSearchStartDt().split("T")[0].replaceAll("-", "")); schduleManageVO.setSearchStartDt(schduleManageVO.getSearchStartDt().split("T")[0].replaceAll("-", ""));
List<SchduleManageVO> list= schduleManageService.selectSchManageStatusList(schduleManageVO); List<SchduleManageVO> list= schduleManageService.selectSchManageStatusList(schduleManageVO);
list = egovCryptoUtil.decryptSchduleManageVOList(list);
List<Object> excelData = new ArrayList<>(); List<Object> excelData = new ArrayList<>();
excelData.addAll(list); excelData.addAll(list);
@ -501,19 +502,49 @@ public class EduAplctMngAdultController {
4000 4000
, 4000 , 4000
, 4000 , 4000
, 4000
, 4000
, 12000
, 4000
, 4000
, 4000
, 4000
, 6000
, 8000
, 12000
}; // 너비 }; // 너비
String[] header = { String[] header = {
"교육일자" "교육일자"
, "교육구분"
, "기관(단체)명" , "기관(단체)명"
, "교육시간" , "기관구분"
, "교육매체"
, "장소"
, "담당자"
, "직함"
, "휴대폰"
, "전화"
, "이메일"
, "희망주제"
, "교육 주제 관련 상세 요청사항"
}; };
//VO name과 일치 시킨다. //VO name과 일치 시킨다.
String[] order = { String[] order = {
"DateTxt" "DateTxt"
, "EduSlctCd"
, "Title" , "Title"
, "TimeTxt" , "InsttDivCd"
, "EduMd"
, "AddrDetail"
, "ChrgNm"
, "JobNm"
, "Clphone"
, "Phone"
, "Email"
, "HopeSbjct"
, "RqstCn"
}; };
// 호출 // 호출

View File

@ -486,6 +486,7 @@ public class EduAplctMngTngrController {
//사용자 교육신청 차시 리스트 //사용자 교육신청 차시 리스트
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO(); VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO); List<VEEduChasiVO> vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO);

View File

@ -67,6 +67,17 @@
, to_char( TO_DATETIME(CONCAT(aa.edu_hope_dt, aa.strt_tm),'YYYYMMDDHH24MI'), 'HH24:MI:SS' ) AS timeTxt , to_char( TO_DATETIME(CONCAT(aa.edu_hope_dt, aa.strt_tm),'YYYYMMDDHH24MI'), 'HH24:MI:SS' ) AS timeTxt
, aa.url , aa.url
, aa.allDay , aa.allDay
, aa.eduSlctCd
, aa.insttDivCd
, aa.eduMd
, aa.addr + ' ' + aa.addrDetail AS addrDetail
, aa.chrgNm
, aa.jobNm
, aa.clphone
, aa.phone
, aa.email
, aa.hopeSbjct
, aa.rqstCn
FROM( FROM(
SELECT SELECT
@ -86,10 +97,24 @@
b.strt_tm, b.strt_tm,
b.end_tm, b.end_tm,
'' url , '' url ,
0 allDay 0 allDay,
c.code_nm eduSlctCd,
d.code_nm insttDivCd,
a.EDU_MD eduMd,
a.ADDR addr,
a.ADDR_DETAIL addrDetail,
a.CHRG_NM chrgNm,
a.JOB_NM jobNm,
a.CLPHONE clphone,
a.PHONE phone,
a.EMAIL email,
a.HOPE_SBJCT hopeSbjct,
a.RQST_CN rqstCn
FROM ve_edu_aplct a FROM ve_edu_aplct a
, ve_edu_chasi b , ve_edu_chasi b
, lettccmmndetailcode c
, lettccmmndetailcode d
WHERE 1=1 WHERE 1=1
AND IFNULL(A.USE_YN, 'Y') != 'N' AND IFNULL(A.USE_YN, 'Y') != 'N'
<isNotEmpty property="aprvlCd"> <isNotEmpty property="aprvlCd">
@ -106,7 +131,10 @@
<isNotEmpty property="searchStartDt"> <isNotEmpty property="searchStartDt">
AND SUBSTRING(b.edu_hope_dt,1,6) = SUBSTRING(DATE_FORMAT(DATE_ADD(TO_DATE(#searchStartDt#,'YYYYMMDD'), INTERVAL 7 day),'%Y%m%d'),1,6) AND SUBSTRING(b.edu_hope_dt,1,6) = SUBSTRING(DATE_FORMAT(DATE_ADD(TO_DATE(#searchStartDt#,'YYYYMMDD'), INTERVAL 7 day),'%Y%m%d'),1,6)
</isNotEmpty> </isNotEmpty>
AND c.code_id = 'VE0007'
AND c.code = a.edu_slct_cd
AND d.code_id = 'VE0012'
AND d.code = a.instt_div_cd
)aa )aa
ORDER BY START ORDER BY START

View File

@ -20,7 +20,6 @@
LEFT OUTER JOIN VE_INSTR_DETAIL D LEFT OUTER JOIN VE_INSTR_DETAIL D
ON (B.USER_ID = D.USER_ID ON (B.USER_ID = D.USER_ID
AND D.USE_YN = 'Y' AND D.USE_YN = 'Y'
AND D.instr_div = '10'
<isNotEmpty property="instrDiv"> <isNotEmpty property="instrDiv">
AND D.instr_div = #instrDiv# AND D.instr_div = #instrDiv#

View File

@ -79,7 +79,7 @@
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" /> <input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" /> <input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
<input type="hidden" name="orderByQuery" id="orderByQuery" value="<c:out value="${vEEduAplctVO.orderByQuery}" />" /> <input type="hidden" name="orderByQuery" id="orderByQuery" value="<c:out value="${vEEduAplctVO.orderByQuery}" />" />
<!-- <input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" /> --> <input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">

View File

@ -204,7 +204,10 @@
<th scope="row"><p>희망주제</p></th> <th scope="row"><p>희망주제</p></th>
<td><c:out value='${info.hopeSbjct}'/></td> <td><c:out value='${info.hopeSbjct}'/></td>
</tr> </tr>
<tr>
<th scope="row"><p style="font-size:14px;">교육 주제 관련 상세 요청사항<br/>및 사전 질의</p></th>
<td><p><c:out value='${fn:replace(info.rqstCn, replaceChar, "<br/>")}' escapeXml="false" /></p></td>
</tr>
</tbody> </tbody>

View File

@ -134,12 +134,22 @@
<td> <td>
<kc:code codeId="VE0012" code="${info.insttDivCd}"/> <kc:code codeId="VE0012" code="${info.insttDivCd}"/>
</td> </td>
<th scope="row"> <c:if test="${info.eduSlctCd eq '10'}">
<p>교육매체</p> <th scope="row">
</th> <p>교육매체</p>
<td> </th>
<c:out value="${info.eduMd}"/> <td>
</td> <c:out value="${info.eduMd}"/>
</td>
</c:if>
<c:if test="${info.eduSlctCd eq '20'}">
<th scope="row">
<p>주소</p>
</th>
<td>
<c:out value="${info.addr}"/> <c:out value="${info.addrDetail}"/>
</td>
</c:if>
</tr> </tr>
<!-- <!--
<tr> <tr>