Merge branch 'advc' of http://alfk8281@vcs.iten.co.kr:9999/hylee/offedu into advc
This commit is contained in:
commit
6f1584524e
@ -841,6 +841,7 @@ public class CommonWebController {
|
||||
|
||||
|
||||
System.out.println("===대상차시 가져오기===");
|
||||
System.out.println(s_query);
|
||||
|
||||
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
|
||||
vEEduAplctVO.setSelectPagingListQuery(s_query);
|
||||
@ -857,8 +858,9 @@ public class CommonWebController {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//modelAndView.addObject("rsCnt", rs);
|
||||
System.out.println("p");
|
||||
System.out.println(p);
|
||||
modelAndView.addObject("cnt", p); //처리된 수량
|
||||
modelAndView.addObject("result", "success");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
@ -187,7 +187,6 @@ public class ExprnClsrmEndController {
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEEduAplctVOList);
|
||||
model.addAttribute("cnt", vEEduAplctVOList.size());
|
||||
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList";
|
||||
}
|
||||
|
||||
|
||||
@ -139,7 +139,7 @@ public class SspnIdtmtServiceImpl implements SspnIdtmtService {
|
||||
|
||||
if (cndtnTrgtMngVOList==null || cndtnTrgtMngVOList.size()<=0) { //step3.기존 이력이 없으면 관리자에게 문의 하도록 한다.
|
||||
result = "fail";
|
||||
msg = "대상자 정보가 없습니다. 자세한 사항은 담당자에게 문의 바랍니다.";
|
||||
msg = "대상자 정보가 없습니다. 관리자에게 문의 바랍니다.";
|
||||
next = "Y"; //?
|
||||
|
||||
}else if (cndtnTrgtMngVOList.size()>0) {
|
||||
@ -148,7 +148,7 @@ public class SspnIdtmtServiceImpl implements SspnIdtmtService {
|
||||
msg = "기존 이력을 전달한다.------";
|
||||
|
||||
if ("20".equals(cndtnTrgtMngVOList.get(0).getEduStateCd())) {
|
||||
msg = "이미 이수한 이력이 있습니다. 자세한 사항은 담당자에게 문의 바랍니다.";
|
||||
msg = "이미 이수한 이력이 있습니다. 관리자에게 문의 바랍니다.";
|
||||
next = "Y"; //?
|
||||
|
||||
}else if ("25".equals(cndtnTrgtMngVOList.get(0).getEduStateCd())) {
|
||||
@ -160,11 +160,11 @@ public class SspnIdtmtServiceImpl implements SspnIdtmtService {
|
||||
next = ""; //?
|
||||
|
||||
}else if ("40".equals(cndtnTrgtMngVOList.get(0).getEduStateCd())) {
|
||||
msg = "미이수 상태입니다. 자세한 사항은 담당자에게 문의 바랍니다.";
|
||||
msg = "미이수한 이력이 있습니다. 관리자에게 문의 바랍니다.";
|
||||
next = "Y"; //?
|
||||
|
||||
}else if ("60".equals(cndtnTrgtMngVOList.get(0).getEduStateCd())) {
|
||||
msg = "교육취소 이력이 있습니다. 자세한 사항은 담당자에게 문의 바랍니다.";
|
||||
msg = "교육취소 이력이 있습니다. 관리자에게 문의 바랍니다.";
|
||||
next = "Y"; //?
|
||||
}
|
||||
|
||||
|
||||
@ -32,6 +32,8 @@ public class VEInstrExcelVO extends ComDefaultVO implements Serializable {
|
||||
private String YNowMtwoStsfc;
|
||||
private String YNowMthreeStsfc;
|
||||
private String YNowMfourStsfc;
|
||||
private String memo;
|
||||
|
||||
public String getInstrNm() {
|
||||
return instrNm;
|
||||
}
|
||||
@ -146,6 +148,12 @@ public class VEInstrExcelVO extends ComDefaultVO implements Serializable {
|
||||
public void setYNowMfourStsfc(String yNowMfourStsfc) {
|
||||
YNowMfourStsfc = yNowMfourStsfc;
|
||||
}
|
||||
public String getMemo() {
|
||||
return memo;
|
||||
}
|
||||
public void setMemo(String memo) {
|
||||
this.memo = memo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -115,7 +115,6 @@ public interface VEInstrMixService {
|
||||
List<VEInstrDetailVO> selectInstrExcelList(VEInstrDetailVO vEInstrDetailVO);
|
||||
|
||||
|
||||
//청소년 통계
|
||||
//교육실정통계- ①월별 횟수/교육인원(그래프 포함)
|
||||
List<VELctrDetailVO> selectEduPrfrmInfo_tngr_no1(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
|
||||
@ -259,6 +259,7 @@ public class VEInstrMixDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
|
||||
//교육실정통계- ④월별 강사종류별,강사별 교육횟수(그래프 포함)
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_tngr_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_tngr_no4", vEInstrDetailVO);
|
||||
@ -282,5 +283,4 @@ public class VEInstrMixDAO extends EgovAbstractDAO {
|
||||
List<VELctrDetailVO> tlist = (List<VELctrDetailVO>) list("VESttstMixDAO.selectEduPrfrmInfo_adult_no5_no6_no7", vEInstrDetailVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -713,13 +713,13 @@ public class EduAsgnmCnfrmMngAdultController {
|
||||
// 헤더
|
||||
String[] header = {
|
||||
"교육희망일자", "시간", "온·오프라인", "지역", "기관(단체)명"
|
||||
, "기관구분", "신청자명", "핸드폰", "전화번호", "강사명"
|
||||
, "기관구분", "신청자명", "핸드폰", "전화번호", "강사명", "강사료"
|
||||
};
|
||||
|
||||
// 컬럼명
|
||||
String[] order = {
|
||||
"EduHopeDt", "StrtTm", "EduSlctCd", "EduSlctAreaCd", "InsttNm"
|
||||
, "InsttDivCd", "ChrgNm", "Clphone", "Phone", "InstrNm"
|
||||
, "InsttDivCd", "ChrgNm", "Clphone", "Phone", "InstrNm", ""
|
||||
};
|
||||
|
||||
// 호출
|
||||
|
||||
@ -739,22 +739,26 @@ public class EduRsltMngAdultController {
|
||||
|
||||
// 너비
|
||||
int[] width = {
|
||||
4000, 4000, 4000, 6000, 6000
|
||||
, 4000, 4000, 4000, 4000, 4000, 4000, 4000
|
||||
// 4000, 4000, 4000, 6000, 6000
|
||||
4000, 4000, 6000, 6000
|
||||
// , 4000, 4000, 4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000, 4000
|
||||
, 4000, 4000
|
||||
};
|
||||
|
||||
// 헤더
|
||||
String[] header = {
|
||||
"교육일자", "차시", "학교구분", "지역", "학교(기관)명"
|
||||
, "강사이름", "강사료", "편도거리", "도서벽지 수당", "거리 수당", "교통비", "식비"
|
||||
"교육일자", "차시", "지역", "학교(기관)명"
|
||||
, "강사이름", "강사료", "교통비"
|
||||
,"숙박비", "강사료 합계"
|
||||
};
|
||||
|
||||
// 컬럼명
|
||||
String[] order = {
|
||||
"EduHopeDt", "ChasiCnt", "ScholDivCd", "EduSlctAreaCd", "ScholInsttNm"
|
||||
, "InstrNm", "InstrFeeOrd", "OnewayDstnc", "SpecialWorkAllow", "DistanceAllow" , "TrafficFee", "FoodExpenses"
|
||||
// "EduHopeDt", "ChasiCnt", "ScholDivCd", "EduSlctAreaCd", "ScholInsttNm"
|
||||
"EduHopeDt", "ChasiCnt", "EduSlctAreaCd", "ScholInsttNm"
|
||||
// , "InstrNm", "InstrFeeOrd", "OnewayDstnc", "SpecialWorkAllow", "DistanceAllow" , "TrafficFee", "FoodExpenses"
|
||||
, "InstrNm", "InstrFeeOrd", "TrafficFee"
|
||||
, "AcmdtFee", "InstrFeeSum"
|
||||
};
|
||||
|
||||
|
||||
@ -1164,6 +1164,7 @@ public class OprtnInstrAdultPrflContoller {
|
||||
vEInstrExcelVO.setYNowMtwoStsfc( aa.getyNowMtwoStsfc());
|
||||
vEInstrExcelVO.setYNowMthreeStsfc( aa.getyNowMthreeStsfc());
|
||||
vEInstrExcelVO.setYNowMfourStsfc( aa.getyNowMfourStsfc());
|
||||
vEInstrExcelVO.setMemo( aa.getMemo());
|
||||
|
||||
vEInstrExcelVOList.add(vEInstrExcelVO);
|
||||
}
|
||||
@ -1176,7 +1177,7 @@ public class OprtnInstrAdultPrflContoller {
|
||||
int[] width = {
|
||||
4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000, 4000, 4000, 4000
|
||||
, 4000, 4000, 4000, 4000, 4000, 4000
|
||||
}; // 너비
|
||||
|
||||
|
||||
@ -1185,14 +1186,14 @@ public class OprtnInstrAdultPrflContoller {
|
||||
|
||||
String[] header = {
|
||||
"강사명", "위촉년도", "생년월일", "소속", "직함"
|
||||
,"연락처", "이메일", "전문분야", "주소"
|
||||
,"연락처", "이메일", "전문분야", "주소", "비공개메모"
|
||||
, "교육횟수("+currentYear+")", "교육횟수("+(currentYear-1)+")", "교육횟수("+(currentYear-2)+")", "교육횟수("+(currentYear-3)+")", "교육횟수("+(currentYear-4)+")"
|
||||
, "교육만족도("+currentYear+")", "교육만족도("+(currentYear-1)+")", "교육만족도("+(currentYear-2)+")", "교육만족도("+(currentYear-3)+")", "교육만족도("+(currentYear-4)+")"
|
||||
};
|
||||
|
||||
String[] order = {
|
||||
"InstrNm", "ApptYr", "DBirth", "Blng", "Pstn"
|
||||
, "Phone", "Email", "PrfsnFld", "Addr"
|
||||
, "Phone", "Email", "PrfsnFld", "Addr", "Memo"
|
||||
, "YNowEduCnt", "YNowMoneEduCnt", "YNowMtwoEduCnt", "YNowMthreeEduCnt", "YNowMfourEduCnt"
|
||||
, "YNowStsfc", "YNowMoneStsfc", "YNowMtwoStsfc", "YNowMthreeStsfc", "YNowMfourStsfc"
|
||||
};
|
||||
|
||||
@ -377,6 +377,129 @@ public class NewEduCnfrmMngTngrController {
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 배정(전체)NEW
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
*/
|
||||
@RequestMapping("popup/instrMassAsgnm20240112Popup.do")
|
||||
public String instrMassAsgnm20240112Popup(
|
||||
ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
|
||||
//Step1.자동배정 차시 대상가져오기
|
||||
//List<VEEduAplctVO> vEEduAplctVOList = null;
|
||||
{
|
||||
String s_searchStartDt = request.getParameter("searchStartDt");
|
||||
String s_searchEndDt = request.getParameter("searchEndDt");
|
||||
String s_searchScholNm = request.getParameter("searchScholNm");
|
||||
|
||||
|
||||
|
||||
/*
|
||||
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
|
||||
vEEduAplctVO.setInstrDiv("10"); //청소년
|
||||
vEEduAplctVO.setLctrDivCd("10"); //청소년강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
vEEduAplctVO.setSearchStartDt(s_searchStartDt);
|
||||
vEEduAplctVO.setSearchEndDt(s_searchEndDt);
|
||||
|
||||
if(!"".equals(vEEduAplctVO.getSearchInstrNm())) {
|
||||
vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm()));
|
||||
}
|
||||
|
||||
//모든 리스트를 페이징 없이 다 가져온다.
|
||||
vEEduAplctVO.setPageIndex(0);
|
||||
|
||||
//강사가 할당안된 리스트만 가져온다.
|
||||
vEEduAplctVO.setSearchAsgnmAprvlCd("90");
|
||||
|
||||
//Step1.자동배정 대상 차시가져오기
|
||||
//강사할당이 없는 배정 대상 차시를 가져온다.
|
||||
vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
*/
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("searchStartDt", s_searchStartDt);
|
||||
model.addAttribute("searchEndDt", s_searchEndDt);
|
||||
model.addAttribute("searchScholNm", s_searchScholNm);
|
||||
}
|
||||
|
||||
return "oprtn/tngrVisitEdu/popup/instrMassAsgnm20240112Popup";
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 배정 조건 관리 팝업
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
*/
|
||||
|
||||
@RequestMapping("popup/instrMassAsgnm20240112PopupAjax.do")
|
||||
public ModelAndView instrMassAsgnm20240112PopupAjax(ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//Step1.자동배정 차시 대상가져오기
|
||||
List<VEEduAplctVO> vEEduAplctVOList = null;
|
||||
{
|
||||
String s_searchStartDt = request.getParameter("searchStartDt");
|
||||
String s_searchEndDt = request.getParameter("searchEndDt");
|
||||
String s_searchScholNm = request.getParameter("searchScholNm");
|
||||
|
||||
|
||||
System.out.println("s_searchStartDt");
|
||||
System.out.println(s_searchStartDt);
|
||||
System.out.println(s_searchEndDt);
|
||||
|
||||
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
|
||||
vEEduAplctVO.setInstrDiv("10"); //청소년
|
||||
vEEduAplctVO.setLctrDivCd("10"); //청소년강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
vEEduAplctVO.setSearchStartDt(s_searchStartDt);
|
||||
vEEduAplctVO.setSearchEndDt(s_searchEndDt);
|
||||
vEEduAplctVO.setSearchScholNm(s_searchScholNm);
|
||||
|
||||
if(!"".equals(vEEduAplctVO.getSearchInstrNm())) {
|
||||
vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm()));
|
||||
}
|
||||
|
||||
//모든 리스트를 페이징 없이 다 가져온다.
|
||||
vEEduAplctVO.setPageIndex(0);
|
||||
|
||||
//강사가 할당안된 리스트만 가져온다.
|
||||
vEEduAplctVO.setSearchAsgnmAprvlCd("90");
|
||||
|
||||
//Step1.자동배정 대상 차시가져오기
|
||||
//강사할당이 없는 배정 대상 차시를 가져온다.
|
||||
|
||||
if (!"".equals(s_searchStartDt) && !"".equals(s_searchEndDt)) {
|
||||
vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
modelAndView.addObject("vEEduAplctVOList", vEEduAplctVOList);
|
||||
}
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 강사 월별 시수계산 관리 팝업
|
||||
* fncSpcfcInstrAsgnmInfo
|
||||
|
||||
@ -5759,19 +5759,8 @@
|
||||
AND A.SBMT_YN = 'Y'
|
||||
AND A.LCTR_DIV_CD = #lctrDivCd#
|
||||
<isNotEmpty property="aprvlCd">
|
||||
AND A.APRVL_CD=#aprvlCd#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="searchCpyAprvlCd">
|
||||
AND A.APRVL_CD=#searchCpyAprvlCd#
|
||||
</isNotEmpty>
|
||||
<isEmpty property="searchCpyAprvlCd">
|
||||
<isNotEmpty property="searchClass">
|
||||
AND A.APRVL_CD >= 20
|
||||
</isNotEmpty>
|
||||
</isEmpty>
|
||||
<isNotEmpty property="searchYear">
|
||||
AND TO_CHAR(A.SBMT_PNTTM,'YYYY') = #searchYear#
|
||||
</isNotEmpty>
|
||||
AND A.APRVL_CD=#aprvlCd#
|
||||
</isNotEmpty>
|
||||
ORDER BY A.EDU_APLCT_ORD DESC
|
||||
</select>
|
||||
|
||||
|
||||
@ -1092,6 +1092,7 @@
|
||||
, vid.PHONE as phone /*연락처*/
|
||||
, vid.EMAIL as email /*이메일*/
|
||||
, vid.PRFSN_FLD as prfsnFld /*분야*/
|
||||
, vid.MEMO as memo /*비공개 메모*/
|
||||
, CASE
|
||||
WHEN vid.POST IS NOT NULL THEN '(' || vid.POST || ')'
|
||||
ELSE ''
|
||||
|
||||
@ -463,6 +463,11 @@ function jstreeRefresh() {
|
||||
//코드 정보 저장. 등록/수정
|
||||
function fn_save_menuInfo(menuNo) {
|
||||
|
||||
var special_pattern = /[`~!@#$%^&*|\\\'\";:\/?.]/gi;
|
||||
if(special_pattern.test(document.menuForm.menuNo.value) == true){
|
||||
alert("코드 코드는 특수문자를 쓸수 없습니다.") ;
|
||||
return;
|
||||
}
|
||||
|
||||
if(menuNo == null || "undefined"== menuNo){
|
||||
alert("저장 하려는 코드를 먼저 코드트리에서 생성해 주세요."); return ;
|
||||
|
||||
@ -34,6 +34,7 @@
|
||||
background-color: #ededed;
|
||||
}
|
||||
</style>
|
||||
<script src="<c:url value='/js/echarts.min.js' />"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
@ -321,7 +322,108 @@
|
||||
</div>
|
||||
<!-- //list -->
|
||||
|
||||
<!-- 월별 횟수/교육인원 차트 -->
|
||||
<!-- 횟수합계 - dataNOT / 인원합계 = dataNOP -->
|
||||
<c:forEach var="list" items="${list_no1}" varStatus="status">
|
||||
<c:if test="${status.count eq '3'}">
|
||||
<script type="text/javascript">
|
||||
var dataNOT = ['${list.mnt01}', '${list.mnt02}', '${list.mnt03}', '${list.mnt04}', '${list.mnt05}', '${list.mnt06}', '${list.mnt07}', '${list.mnt08}', '${list.mnt09}', '${list.mnt10}', '${list.mnt11}', '${list.mnt12}'];
|
||||
var dataNOTSum = 0;
|
||||
for(var i = 0; i<12; i++){
|
||||
dataNOTSum += parseInt(dataNOT[i]);
|
||||
}
|
||||
if(isNaN(dataNOTSum)){
|
||||
dataNOTSum = 0;
|
||||
}
|
||||
</script>
|
||||
</c:if>
|
||||
<c:if test="${status.count eq '6'}">
|
||||
<script type="text/javascript">
|
||||
var dataNOP = ['${list.mnt01}', '${list.mnt02}', '${list.mnt03}', '${list.mnt04}', '${list.mnt05}', '${list.mnt06}', '${list.mnt07}', '${list.mnt08}', '${list.mnt09}', '${list.mnt10}', '${list.mnt11}', '${list.mnt12}'];
|
||||
var dataNOPSum = 0;
|
||||
for(var x = 0; x<12; x++){
|
||||
dataNOPSum += parseInt(dataNOP[x]);
|
||||
}
|
||||
if(isNaN(dataNOPSum)){
|
||||
dataNOPSum = 0;
|
||||
}
|
||||
</script>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<!-- 횟수 차트 -->
|
||||
<div id="chartContainer" style="display:flex; width:100%;">
|
||||
<div id="chartNumOfTime" style="float:left; width: 50%; height:600px;">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOT = echarts.init(document.getElementById('chartNumOfTime'))
|
||||
var month = ['1', '2', '3', '4', '5','6','7','8', '9','10','11', '12'];
|
||||
<!-- 차트 옵션 지정하기 -->
|
||||
var optionNOT = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 횟수 차트 (총합 :' + dataNOTSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOT,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
<!-- 차트 옵션 적용 -->
|
||||
chartNOT.setOption(optionNOT);
|
||||
</script>
|
||||
<!-- /횟수 차트 -->
|
||||
|
||||
<!-- 인원 차트 -->
|
||||
<div id="chartNumOfPeople" style="float:right; width: 50%; height:600px;">
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOP = echarts.init(document.getElementById('chartNumOfPeople'))
|
||||
<!-- 차트 옵션 지정하기 -->
|
||||
var optionNOP = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 인원 차트(총합 :' + dataNOPSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOP,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
<!-- 차트 옵션 적용 -->
|
||||
chartNOP.setOption(optionNOP);
|
||||
</script>
|
||||
</div>
|
||||
<!-- /인원 차트 -->
|
||||
<!-- /월별 횟수/교육인원 차트 -->
|
||||
|
||||
|
||||
<!-- list util -->
|
||||
|
||||
@ -32,7 +32,6 @@
|
||||
<head>
|
||||
<link href="/offedu/visitEdu/adm/publish/css/select2.min.css" rel="stylesheet"/>
|
||||
<script type="text/javascript" src="https://code.jquery.com/jquery-1.10.2.min.js" /></script>
|
||||
<script src="${pageContext.request.contextPath}/js/ve/sendSmsEmailUtil.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
@ -266,53 +265,10 @@
|
||||
$(".memoTr").fadeIn();
|
||||
}
|
||||
}
|
||||
|
||||
function chkAll(thisObj){
|
||||
$("input[name=chk]").prop("checked" , $(thisObj).is(":checked"));
|
||||
}
|
||||
|
||||
function openSmsPopup(){
|
||||
var chkLen = $(listForm).find("input[name=chk]:checked").length;
|
||||
|
||||
if(chkLen == 0){
|
||||
alert("선택된 항목이 없습니다.");
|
||||
return;
|
||||
}
|
||||
document.popForm.action = "<c:url value='/oprtn/cndtnSspnIdtmt/popup/trgtSendSmsPopup.do'/>";
|
||||
window.open("#", "_trgtSendSmsPopup", "scrollbars = no, top=100px, left=100px, height=550px, width=750px");
|
||||
document.popForm.target = "_trgtSendSmsPopup";
|
||||
document.popForm.submit();
|
||||
|
||||
}
|
||||
|
||||
function chkSendSms(cn){
|
||||
var chkLen = $(listForm).find("input[name=chk]:checked").length;
|
||||
|
||||
if(chkLen == 0){
|
||||
alert("선택된 항목이 없습니다.");
|
||||
return;
|
||||
}
|
||||
$('input:checkbox[name="chk"]:checked').each(function() {
|
||||
sendSms(
|
||||
$(this).val(),
|
||||
cn,
|
||||
$(this).data('sspnidtmttrgtord'),
|
||||
$(this).data('userid'),
|
||||
"N"
|
||||
);
|
||||
});
|
||||
alert("발송되었습니다.");
|
||||
}
|
||||
</script>
|
||||
<title>교육과정관리</title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="popForm" name="popForm" method="post">
|
||||
<input type="hidden" name="sspnIdtmtTrgtOrd" value=""/>
|
||||
<input type="hidden" name="targetId" value=""/>
|
||||
<input type="hidden" name="type" value=""/>
|
||||
<input type="hidden" name="phone" value=""/>
|
||||
</form>
|
||||
<form id="detailForm" name="detailForm" method="post" >
|
||||
<input type="hidden" id="sspnIdtmtTrgtOrd" name="sspnIdtmtTrgtOrd" value="" />
|
||||
</form>
|
||||
@ -487,7 +443,6 @@
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 1px;">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 2px">
|
||||
@ -502,7 +457,6 @@
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th><input type="checkbox" name="checkAll" id="checkAll" onclick="chkAll(this);" /><label for="checkAll"></label></th>
|
||||
<th>의뢰일</th>
|
||||
<th>사건번호</th>
|
||||
<th>관할청</th>
|
||||
@ -532,11 +486,6 @@
|
||||
<%-- <td onclick="fncGoDetail('<c:out value="${list.sspnIdtmtTrgtOrd}"/>');" style="cursor:pointer;"> --%>
|
||||
<%-- <c:out value='${list.prcsNm}'/> --%>
|
||||
<!-- </td> -->
|
||||
<td onclick="event.cancelBubble=true">
|
||||
<input name="chk" class="${list.atchFileId}" value="${list.clphone}"
|
||||
data-userid="<c:out value='${list.userId}' />" data-sspnidtmttrgtord="<c:out value='${list.sspnIdtmtTrgtOrd}' />"
|
||||
title="Check" type="checkbox"/>
|
||||
</td>
|
||||
<td><!-- 의뢰일 -->
|
||||
|
||||
<c:set var="reqPnttm" value="${fn:substring(list.reqPnttm, 0, 10)}" />
|
||||
@ -584,7 +533,7 @@
|
||||
</tr>
|
||||
<c:if test="${!empty list.rmrks }">
|
||||
<tr class="memoTr" style="display:none;">
|
||||
<td colspan="12" style="text-align:left; background-color:#131de14a;">
|
||||
<td colspan="11" style="text-align:left; background-color:#131de14a;">
|
||||
<c:out value="${list.rmrks}" />
|
||||
</td>
|
||||
|
||||
@ -605,7 +554,6 @@
|
||||
</div>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btn_type06" onclick="openSmsPopup();">문자발송</button>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
|
||||
@ -144,7 +144,7 @@
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="searchClass" value="Y" /> <!-- 신청목록과 운영목록 엑셀 다운로드 구분을 위한 값. 운영 목록은 상태코드가 20 이상만 조회 -->
|
||||
<input type="hidden" name="aprvlCd" value="60" />
|
||||
<div class="cont_wrap">
|
||||
<div class="box">
|
||||
|
||||
|
||||
@ -534,7 +534,8 @@
|
||||
<c:out value="${list.fld}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.lctrYn}"/>
|
||||
<ve:code codeId="VEA018" code="${list.lctrYn}"/>
|
||||
<%-- <ve:code codeId="VEA003" code="${list.aplctStateCd}"/> --%>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.prvsQs}"/>
|
||||
|
||||
@ -28,11 +28,12 @@
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<script src="<c:url value='/js/echarts.min.js' />"></script>
|
||||
<script type="text/javascript">
|
||||
function linkPage(){
|
||||
var listForm = document.listForm ;
|
||||
listForm.year.value = $('#year').val();
|
||||
listForm.action = "<c:url value='/ve/stts/sttsEduCnt.do'/>";
|
||||
listForm.action = "<c:url value='/oprtn/stts/sttsEduCnt.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
</script>
|
||||
@ -151,6 +152,129 @@
|
||||
</div>
|
||||
<!-- //list_상세 -->
|
||||
|
||||
<!-- 월별 횟수/교육인원 차트 -->
|
||||
<!-- 횟수합계 - dataNOT / 인원합계 = dataNOP -->
|
||||
<script type="text/javascript">
|
||||
var dataNOT = [
|
||||
'${eduCntVO.jan}'
|
||||
, '${eduCntVO.feb}'
|
||||
, '${eduCntVO.mar}'
|
||||
, '${eduCntVO.apr}'
|
||||
, '${eduCntVO.may}'
|
||||
, '${eduCntVO.jun}'
|
||||
, '${eduCntVO.jul}'
|
||||
, '${eduCntVO.aug}'
|
||||
, '${eduCntVO.sep}'
|
||||
, '${eduCntVO.oct}'
|
||||
, '${eduCntVO.nov}'
|
||||
, '${eduCntVO.decm}'
|
||||
, '${eduCntVO.tot}' ];
|
||||
var dataNOTSum = 0;
|
||||
for(var i = 0; i<12; i++){
|
||||
dataNOTSum += parseInt(dataNOT[i]);
|
||||
}
|
||||
if(isNaN(dataNOTSum)){
|
||||
dataNOTSum = 0;
|
||||
}
|
||||
var dataNOP = [
|
||||
'${eduPrsnlCntVO.jan}'
|
||||
, '${eduPrsnlCntVO.feb}'
|
||||
, '${eduPrsnlCntVO.mar}'
|
||||
, '${eduPrsnlCntVO.apr}'
|
||||
, '${eduPrsnlCntVO.may}'
|
||||
, '${eduPrsnlCntVO.jun}'
|
||||
, '${eduPrsnlCntVO.jul}'
|
||||
, '${eduPrsnlCntVO.aug}'
|
||||
, '${eduPrsnlCntVO.sep}'
|
||||
, '${eduPrsnlCntVO.oct}'
|
||||
, '${eduPrsnlCntVO.nov}'
|
||||
, '${eduPrsnlCntVO.decm}'
|
||||
, '${eduPrsnlCntVO.tot}'
|
||||
|
||||
];
|
||||
var dataNOPSum = 0;
|
||||
for(var x = 0; x<12; x++){
|
||||
dataNOPSum += parseInt(dataNOP[x]);
|
||||
}
|
||||
if(isNaN(dataNOPSum)){
|
||||
dataNOPSum = 0;
|
||||
}
|
||||
</script>
|
||||
<!-- 횟수 차트 -->
|
||||
<div id="chartContainer" style="display:flex; width:100%;">
|
||||
<div id="chartNumOfTime" style="float:left; width: 50%; height:600px;">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOT = echarts.init(document.getElementById('chartNumOfTime'));
|
||||
var month = ['1', '2', '3', '4', '5','6','7','8', '9','10','11', '12'];
|
||||
<!-- 차트 옵션 지정하기 -->
|
||||
var optionNOT = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 횟수 차트 (총합 :' + dataNOTSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOT,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
<!-- 차트 옵션 적용 -->
|
||||
chartNOT.setOption(optionNOT);
|
||||
</script>
|
||||
<!-- /횟수 차트 -->
|
||||
|
||||
<!-- 인원 차트 -->
|
||||
<div id="chartNumOfPeople" style="float:right; width: 50%; height:600px;">
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOP = echarts.init(document.getElementById('chartNumOfPeople'));
|
||||
<!-- 차트 옵션 지정하기 -->
|
||||
var optionNOP = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 인원 차트(총합 :' + dataNOPSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOP,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
<!-- 차트 옵션 적용 -->
|
||||
chartNOP.setOption(optionNOP);
|
||||
</script>
|
||||
</div>
|
||||
<!-- /인원 차트 -->
|
||||
<!-- /월별 횟수/교육인원 차트 -->
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
|
||||
@ -376,8 +376,8 @@
|
||||
|
||||
//"searchStartDt"
|
||||
|
||||
varEduHopeDtStrt = $('#searchStartDt').val();
|
||||
varEduHopeDtEnd = $('#searchEndDt').val();
|
||||
varEduHopeDtStrt = $('#listForm #searchStartDt').val();
|
||||
varEduHopeDtEnd = $('#listForm #searchEndDt').val();
|
||||
|
||||
//alert(varEduHopeDtStrt);
|
||||
//alert(varEduHopeDtEnd);
|
||||
@ -428,6 +428,36 @@
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
//강사배정(전체)-팝업을 통한 수량 카운팅 기능 변환용
|
||||
function fncInstrMassAsgnm20240112Popup() {
|
||||
|
||||
|
||||
varEduHopeDtStrt = $('#listForm #searchStartDt').val();
|
||||
varEduHopeDtEnd = $('#listForm #searchEndDt').val();
|
||||
|
||||
varSearchScholNm = $('#listForm #searchScholNm').val();
|
||||
|
||||
if (varEduHopeDtStrt=='' || varEduHopeDtEnd==''){
|
||||
alert("대상의 교육일자 기간은 반드시 선택해야 합니다.");
|
||||
return ;
|
||||
}
|
||||
|
||||
var form = document.pop2Form;
|
||||
|
||||
form.searchStartDt.value = varEduHopeDtStrt;
|
||||
form.searchEndDt.value = varEduHopeDtEnd;
|
||||
form.searchScholNm.value = varSearchScholNm;
|
||||
|
||||
|
||||
form.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/instrMassAsgnm20240112Popup.do'/>";
|
||||
|
||||
window.open("#", "_instrMassAsgnm20240112Pop", "scrollbars = no, top=100px, left=100px, height=350px, width=800px");
|
||||
form.target = "_instrMassAsgnm20240112Pop";
|
||||
form.submit();
|
||||
}
|
||||
|
||||
//강사배정(전체)
|
||||
function fncInstrMassAsgnm20231109(){ //교육일자를 확인 해서 있는 경우만 처리한다.
|
||||
|
||||
var varEduHopeDtStrt = '';
|
||||
@ -437,8 +467,8 @@
|
||||
|
||||
//"searchStartDt"
|
||||
|
||||
varEduHopeDtStrt = $('#searchStartDt').val();
|
||||
varEduHopeDtEnd = $('#searchEndDt').val();
|
||||
varEduHopeDtStrt = $('#listForm #searchStartDt').val();
|
||||
varEduHopeDtEnd = $('#listForm #searchEndDt').val();
|
||||
|
||||
//alert(varEduHopeDtStrt);
|
||||
//alert(varEduHopeDtEnd);
|
||||
@ -561,6 +591,7 @@
|
||||
});
|
||||
}
|
||||
|
||||
//강사배정(개별)
|
||||
function fncInstrMassAsgnmEA20231115(){ //개별 선택한 경우만 처리한다.
|
||||
|
||||
|
||||
@ -881,6 +912,11 @@
|
||||
<title>신청관리</title>
|
||||
</head>
|
||||
<body>
|
||||
<form:form id="pop2Form" name="pop2Form" method="post" onsubmit="return false;">
|
||||
<input type="hidden" name="searchStartDt" id="searchStartDt" value=""/>
|
||||
<input type="hidden" name="searchEndDt" id="searchEndDt" value=""/>
|
||||
<input type="hidden" name="searchScholNm" id="searchScholNm" value=""/>
|
||||
</form:form>
|
||||
<form:form id="popForm" name="popForm" method="post" onsubmit="return false;">
|
||||
<input type="hidden" name="pageIndex" value="1"/>
|
||||
<input type="hidden" name="eduAplctOrd" value="" />
|
||||
@ -978,7 +1014,9 @@
|
||||
</div>
|
||||
<div class="right_box">
|
||||
<!-- <button type="button" class="btn_type06" onclick="fncInstrMassAsgnm(); return false;">강사배정(전체)X</button>-->
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnm20231109(); return false;">강사배정(전체)</button>
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnm20240112Popup(); return false;">강사배정(전체)</button>
|
||||
<!-- <button type="button" class="btn_type06" onclick="fncInstrMassAsgnm20231109(); return false;">강사배정(전체)</button> -->
|
||||
<!-- <button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA(); return false;">강사배정(개별)X</button> -->
|
||||
<button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA20231115(); return false;">강사배정(개별)</button>
|
||||
<button type="button" style="width:200px;" class="btn_type06" onclick="fncSpcfcInstrAsgnmInfo(); return false;">특정강사배정</button>
|
||||
|
||||
@ -34,10 +34,10 @@
|
||||
background-color: #ededed;
|
||||
}
|
||||
</style>
|
||||
<script src="<c:url value='/js/echarts.min.js' />"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
|
||||
});
|
||||
|
||||
function press(event) {
|
||||
@ -316,6 +316,108 @@
|
||||
<!-- //list -->
|
||||
|
||||
|
||||
<!-- 월별 횟수/교육인원 차트 -->
|
||||
<!-- 횟수합계 - dataNOT / 인원합계 = dataNOP -->
|
||||
<c:forEach var="list" items="${list_no1}" varStatus="status">
|
||||
<c:if test="${status.count eq '3'}">
|
||||
<script type="text/javascript">
|
||||
var dataNOT = ['${list.mnt01}', '${list.mnt02}', '${list.mnt03}', '${list.mnt04}', '${list.mnt05}', '${list.mnt06}', '${list.mnt07}', '${list.mnt08}', '${list.mnt09}', '${list.mnt10}', '${list.mnt11}', '${list.mnt12}'];
|
||||
var dataNOTSum = 0;
|
||||
for(var i = 0; i<12; i++){
|
||||
dataNOTSum += parseInt(dataNOT[i]);
|
||||
}
|
||||
if(isNaN(dataNOTSum)){
|
||||
dataNOTSum = 0;
|
||||
}
|
||||
</script>
|
||||
</c:if>
|
||||
<c:if test="${status.count eq '6'}">
|
||||
<script type="text/javascript">
|
||||
var dataNOP = ['${list.mnt01}', '${list.mnt02}', '${list.mnt03}', '${list.mnt04}', '${list.mnt05}', '${list.mnt06}', '${list.mnt07}', '${list.mnt08}', '${list.mnt09}', '${list.mnt10}', '${list.mnt11}', '${list.mnt12}'];
|
||||
var dataNOPSum = 0;
|
||||
for(var x = 0; x<12; x++){
|
||||
dataNOPSum += parseInt(dataNOP[x]);
|
||||
}
|
||||
if(isNaN(dataNOPSum)){
|
||||
dataNOPSum = 0;
|
||||
}
|
||||
</script>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<!-- 횟수 차트 -->
|
||||
<div id="chartContainer" style="display:flex; width:100%;">
|
||||
<div id="chartNumOfTime" style="float:left; width: 50%; height:600px;">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOT = echarts.init(document.getElementById('chartNumOfTime'));
|
||||
var month = ['1', '2', '3', '4', '5','6','7','8', '9','10','11', '12'];
|
||||
//차트 옵션 지정하기
|
||||
var optionNOT = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 횟수 차트 (총합 :' + dataNOTSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOT,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
//차트 옵션 적용
|
||||
chartNOT.setOption(optionNOT);
|
||||
</script>
|
||||
<!-- /횟수 차트 -->
|
||||
|
||||
<!-- 인원 차트 -->
|
||||
<div id="chartNumOfPeople" style="float:right; width: 50%; height:600px;">
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
<!-- 차트 선언 -->
|
||||
var chartNOP = echarts.init(document.getElementById('chartNumOfPeople'));
|
||||
<!-- 차트 옵션 지정하기 -->
|
||||
var optionNOP = {
|
||||
// 차트 제목
|
||||
title: {
|
||||
text: '월별 인원 차트(총합 :' + dataNOPSum +')',
|
||||
},
|
||||
// x축 라벨
|
||||
xAxis: {
|
||||
data: month,
|
||||
},
|
||||
yAxis: {},
|
||||
series: [
|
||||
{
|
||||
name: '개수',
|
||||
type: 'bar', // 막대 그래프
|
||||
data: dataNOP,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
<!-- 차트 옵션 적용 -->
|
||||
chartNOP.setOption(optionNOP);
|
||||
</script>
|
||||
</div>
|
||||
<!-- /인원 차트 -->
|
||||
<!-- /월별 횟수/교육인원 차트 -->
|
||||
|
||||
|
||||
<!-- list util -->
|
||||
|
||||
@ -0,0 +1,362 @@
|
||||
<!DOCTYPE html>
|
||||
<%@ 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"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%
|
||||
/**
|
||||
* @Class Name : instrMassAsgnm20240112Popup.jsp
|
||||
* @Description : 강사배정(전체) 수량카운트용 팝업
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2021.08.09 김봉호 최초 생성
|
||||
* @author 안주영
|
||||
* @since 2022.1.8
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
|
||||
<%-- <script type="text/javascript" src="<c:url value='/js/ve/tmapJS.js'/>"></script> --%>
|
||||
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
<title>강사배치 팝업</title>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
$(document).ready(function() {
|
||||
// ID를 alpreah_input로 가지는 곳에서 키를 누를 경우
|
||||
$("#instrNm").keydown(function(key) {
|
||||
if (key.keyCode == 13) {
|
||||
linkPage(1);
|
||||
return false;
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
function press(event) {
|
||||
//alert(event.keyCode);
|
||||
if (event.keyCode==13) {
|
||||
linkPage(1);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
function fncPopClose(){
|
||||
self.close();
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/spcfcInstrAsgnmPopup.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function reloadLinkPage(){
|
||||
$("#btnDstnc").show();
|
||||
/*
|
||||
var listForm = document.listForm ;
|
||||
//listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/spcfcInstrAsgnmPopup.do'/>";
|
||||
listForm.submit();
|
||||
*/
|
||||
}
|
||||
|
||||
function fncInstrAsgnmCndtnMng(p_yrMnt) {
|
||||
|
||||
$("#yrMnt").val(p_yrMnt);
|
||||
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmMngPopupAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
//opener.location.reload();
|
||||
//fncPopClose();
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
function fncInstrAsgnmCndtnInitMng(p_yrMnt) {
|
||||
|
||||
$("#yrMnt").val(p_yrMnt);
|
||||
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmInitMngPopupAjax.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == 'success'){
|
||||
alert("저장 되었습니다.");
|
||||
//opener.location.reload();
|
||||
//fncPopClose();
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
//동일 학교 여부 체크
|
||||
function fncInstrAsgnm_bef(id, p_rank) {
|
||||
$("#userId").val(id);
|
||||
$("#rmrks").val("배정기준"+p_rank+"순위");
|
||||
|
||||
var data1 = new FormData(document.getElementById("createForm"));
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrAsgnmAjax_bef.do",
|
||||
data: data1,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.message == ''){
|
||||
if(confirm("강사를 선택 하시겠습니까?")){
|
||||
fncInstrAsgnm(id, p_rank)
|
||||
}
|
||||
}else{
|
||||
if(confirm("동일한 일자에 다른 학교 강의가 있습니다.\n("+returnData.message+")\n강사를 선택 하시겠습니까?")){
|
||||
fncInstrAsgnm(id, p_rank);
|
||||
}
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
function reloadPage(){
|
||||
location.reload();
|
||||
}
|
||||
|
||||
function fncGoListReset(){
|
||||
$("#rndsOrd").val('');
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.createForm ;
|
||||
//listForm.searchCondition.value = $('#searchCondition').val();
|
||||
//listForm.searchKeyword.value = $('#searchKeyword').val();
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/popup/instrMntTmMngPopup.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncInstrMassAsgnmEA20231115_Bef(){
|
||||
$('#ingInfoBtn').html('');
|
||||
fncInstrMassAsgnmEA20231115(v_returnDatavEEduAplctVOList[v_asgnmCnt].eduAplctOrd+'@'+v_returnDatavEEduAplctVOList[v_asgnmCnt].eduChasiOrd);
|
||||
}
|
||||
|
||||
|
||||
//강사배정(개별)
|
||||
function fncInstrMassAsgnmEA20231115(p_varEduAplctOrd){ //개별 선택한 경우만 처리한다.
|
||||
|
||||
//alert(p_varEduAplctOrd);
|
||||
//return;
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/web/ve/comm/instrMassAsgnmEAAjax20231115.do",
|
||||
data: {
|
||||
"eduAplctOrd":p_varEduAplctOrd,
|
||||
//"strtOprtnDt" : varEduHopeDtStrt ,
|
||||
//"endOprtnDt" : varEduHopeDtEnd ,
|
||||
//"instrDiv" : "10" ,
|
||||
|
||||
},
|
||||
dataType:'json',
|
||||
success:function(returnData){
|
||||
if(returnData.result=="success"){
|
||||
//alert("상태가 변경 되었습니다.");
|
||||
//linkPage(pageIndex);
|
||||
v_cnt = v_cnt + returnData.cnt*1;
|
||||
v_asgnmCnt = v_asgnmCnt + 1;
|
||||
|
||||
if (v_asgnmCnt*1>=v_returnDatavEEduAplctVOList.length*1){
|
||||
alert("모든 내용을 처리했습니다.");
|
||||
|
||||
$('#ingInfo').text("자동 배정 완료..."+v_asgnmCnt+'/'+v_returnDatavEEduAplctVOList.length);
|
||||
$('#ingInfoBtn').html("<p>실제 배정된 수량 : "+v_cnt+"</p>");
|
||||
top.window.opener.location.reload();
|
||||
|
||||
}else{
|
||||
$('#ingInfo').text("자동 배정 진행 중..."+v_asgnmCnt+'/'+v_returnDatavEEduAplctVOList.length);
|
||||
fncInstrMassAsgnmEA20231115(v_returnDatavEEduAplctVOList[v_asgnmCnt].eduAplctOrd+'@'+v_returnDatavEEduAplctVOList[v_asgnmCnt].eduChasiOrd);
|
||||
}
|
||||
|
||||
}else{
|
||||
alert("강사 자동 배정 중에 오류가 발생 되었습니다.-in");
|
||||
//linkPage(pageIndex);
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//배정 대상 데이터 가져오기
|
||||
function fncGetAsgnmData(p_searchStartDt, p_searchEndDt, p_searchScholNm){ //개별 선택한 경우만 처리한다.
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/popup/instrMassAsgnm20240112PopupAjax.do",
|
||||
data: {
|
||||
"searchStartDt" :p_searchStartDt,
|
||||
"searchEndDt" :p_searchEndDt,
|
||||
"searchScholNm" :p_searchScholNm,
|
||||
//"strtOprtnDt" : varEduHopeDtStrt ,
|
||||
//"endOprtnDt" : varEduHopeDtEnd ,
|
||||
//"instrDiv" : "10" ,
|
||||
|
||||
},
|
||||
dataType:'json',
|
||||
success:function(returnData){
|
||||
if(returnData.result=="success"){
|
||||
//alert(returnData.vEEduAplctVOList.length);
|
||||
//alert("상태가 변경 되었습니다.");
|
||||
|
||||
v_returnDatavEEduAplctVOList = returnData.vEEduAplctVOList;
|
||||
|
||||
$('#ingInfo').text("배정 대상 확인..."+v_asgnmCnt+'/'+v_returnDatavEEduAplctVOList.length);
|
||||
|
||||
$('#ingInfoBtn').html('<button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA20231115_Bef(); return false;">자동배정시작</button>');
|
||||
//$('#ingInfoBtn').html('<button type="button" class="btn_type06" onclick="fncInstrMassAsgnmEA20231115(\''+v_returnDatavEEduAplctVOList[0].eduAplctOrd+'@'+v_returnDatavEEduAplctVOList[0].eduChasiOrd+'\'); return false;">자동배정시작</button>');
|
||||
//"배정 대상 확인..."+v_asgnmCnt+'/'+v_returnDatavEEduAplctVOList.length);
|
||||
|
||||
|
||||
//fncInstrMassAsgnmEA20231115(v_returnDatavEEduAplctVOList[0].eduAplctOrd+'@'+v_returnDatavEEduAplctVOList[0].eduChasiOrd);
|
||||
|
||||
}else{
|
||||
alert("강사 자동 배정 중에 오류가 발생 되었습니다.");
|
||||
//linkPage(pageIndex);
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var v_asgnmCnt = 0; //현재 처리 배열번호
|
||||
var v_cnt = 0; //실제 처리된 수량
|
||||
var v_returnDatavEEduAplctVOList; //처리할 전체 배열 정보
|
||||
|
||||
fncGetAsgnmData('${searchStartDt }','${searchEndDt }','${searchScholNm }');
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="area_popup supm_popup">
|
||||
<div class="cont_popup">
|
||||
|
||||
<form:form id="createForm" name="createForm" method="post" commandName="vEInstrAsgnmVO" onsubmit="return false;">
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEEduAplctVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEEduAplctVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="instrDiv" id="instrDiv" value="<c:out value="${vEEduAplctVO.instrDiv}" />">
|
||||
<input type="hidden" name="userId" id="userId" />
|
||||
<input type="hidden" name="rmrks" id="rmrks" />
|
||||
<input type="hidden" name="asgnmAprvlCd" value="${vEEduAplctVO.asgnmAprvlCd}"/>
|
||||
<input type="hidden" name="yrMnt" id="yrMnt" />
|
||||
|
||||
|
||||
<div class="area_popup">
|
||||
<div class="cont_popup">
|
||||
|
||||
<div class="pop_tb_tit01">
|
||||
<p>강사배정(전체)</p>
|
||||
</div>
|
||||
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<div class="list_top_1">
|
||||
<div class="util_left" style="width: 300px;">
|
||||
<p id="ingInfo">
|
||||
배정 대상 확인 중...
|
||||
</p>
|
||||
</div>
|
||||
<div class="util_right" id="ingInfoBtn">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!--
|
||||
<div class="btn_wrap_pop btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btn_type06" onclick="self.close();">저장</button>
|
||||
<button type="button" class="btn_type04" onclick="self.close();">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form:form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 강사 거리계산용 끝 -->
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -143,7 +143,7 @@
|
||||
<li>
|
||||
<div class="wrap">
|
||||
<div class="title">
|
||||
<p><img src="/offedu/visitEdu/usr/publish/images/content/mypage_icon03.png" alt="체험교실 마이페이지 아이콘"> 체험교실</p>
|
||||
<p><img src="/offedu/visitEdu/usr/publish/images/content/mypage_icon03.png" alt="체험교실 마이페이지 아이콘"> 찾교(체험교실)</p>
|
||||
</div>
|
||||
<div class="inner_text" style="text-align: left;">
|
||||
<a href="#" onclick="fn_goExprnListForm(20)">
|
||||
@ -200,8 +200,7 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${tngrList}" varStatus="status" begin="0" end="2">
|
||||
<tr onclick="goTngrDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');"
|
||||
tabindex="0" onkeypress="if(event.keyCode == 13){goTngrDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');}">
|
||||
<tr onclick="goTngrDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
|
||||
<!-- <tr > -->
|
||||
<td>${list.eduHopeDt}</td>
|
||||
<td><kc:code codeId="VE0007" code="${list.eduSlctCd}"/></td>
|
||||
@ -283,8 +282,7 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<c:forEach var="list" items="${adultList}" varStatus="status" begin="0" end="2">
|
||||
<tr onclick="goAdultDetail('<c:out value="${list.eduAplctOrd}"/>')"
|
||||
tabindex="0" onkeypress="if(event.keyCode == 13){goAdultDetail('<c:out value="${list.eduAplctOrd}"/>')}">
|
||||
<tr onclick="goAdultDetail('<c:out value="${list.eduAplctOrd}"/>')">
|
||||
<!-- <tr > -->
|
||||
<td>${list.eduHopeDt}</td>
|
||||
<td><kc:code codeId="VE0007" code="${list.eduSlctCd}"/></td>
|
||||
@ -369,7 +367,7 @@
|
||||
<c:forEach var="list" items="${exprnList}" varStatus="status" begin="0" end="2">
|
||||
<tr onclick="fncGoDetail('${list.eduAplctOrd}')">
|
||||
<td>
|
||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');">
|
||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
|
||||
<fmt:parseDate value="${list.frstRegistPnttm}" var="year" pattern="yyyy.MM.dd"/>
|
||||
<fmt:formatDate value="${year}" pattern="yyyy년"/>
|
||||
</a>
|
||||
@ -409,7 +407,7 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${fndtnList}" varStatus="status" begin="0" end="2">
|
||||
<tr onclick="fncFndtnGoDetail('${list.prcsAplctPrdOrd}')" tabindex="0" onkeypress="if(event.keyCode == 13){fncFndtnGoDetail('${list.prcsAplctPrdOrd}')}">
|
||||
<tr onclick="fncFndtnGoDetail('${list.prcsAplctPrdOrd}')">
|
||||
<td>
|
||||
<c:out value="${list.prcsNm}"/>
|
||||
</td>
|
||||
@ -462,10 +460,10 @@
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${qnaList}" varStatus="status" begin="0" end="2">
|
||||
<tr>
|
||||
<td onclick="qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');}">
|
||||
<td onclick="qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;">
|
||||
<ve:code codeId="VE0011" code="${list.lctrDivCd }" />
|
||||
</td>
|
||||
<td onclick="qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');}">
|
||||
<td onclick="qnaGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;">
|
||||
<c:out value="${list.qnaCn }" />
|
||||
</td>
|
||||
<td>
|
||||
|
||||
@ -94,10 +94,10 @@ function fncGoDetail(p_pk){
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}">
|
||||
<tr>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');}">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;">
|
||||
<ve:code codeId="VE0011" code="${list.lctrDivCd }" />
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');}">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdQnaOrd }" />');" style="cursor:pointer;">
|
||||
<c:out value="${list.qnaCn }" />
|
||||
</td>
|
||||
<td>
|
||||
|
||||
@ -1331,8 +1331,10 @@
|
||||
<!-- <th scope="col">대상</th> -->
|
||||
<th scope="col">배정강사</th>
|
||||
<!-- <th scope="col">인원</th> -->
|
||||
<th scope="col">만족도조사(학생)</th>
|
||||
<th scope="col">만족도조사(신청인)</th>
|
||||
<!-- <th scope="col">만족도조사(학생)</th> -->
|
||||
<!-- <th scope="col">만족도조사(신청인)</th> -->
|
||||
<th scope="col">설문조사(학생)</th>
|
||||
<th scope="col">설문조사(신청인)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@ -13,13 +13,6 @@
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
|
||||
<script type="text/javaScript" language="javascript">
|
||||
$(document).ready(function(){
|
||||
var cnt = ${cnt}
|
||||
if(cnt == 0){
|
||||
alert("운영 중인 체험교실이 없습니다.");
|
||||
location.href = "<c:url value='/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctGuide.do'/>";
|
||||
}
|
||||
});
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
<th scope="row">
|
||||
<p>교육일정</p>
|
||||
</th>
|
||||
<td>(신청) 2월말 ~ 3월초, (운영) 3월 ~ 11월</td>
|
||||
<td>연중</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
|
||||
@ -128,7 +128,7 @@
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
<caption>운영신청 상세 : 신청일, 처리상태 등의 정보제공</caption>
|
||||
<caption>운영신청 상세 (th 명)을 보여주는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
@ -209,7 +209,6 @@
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
<caption>신청자 정보 : 학교(기관)명, 학교지역특성, 교사명, 성별, 휴대폰, 전화, 이메일, 주소, 담당교과, 생년월일, 체험교실운영여부, 신청경로 등의 정보제공</caption>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
|
||||
@ -105,7 +105,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<c:out value="${fn:replace(fn:replace(fn:replace(detailVO.anncmCn, crlt , '<'), crgt , '>'), crlf , '<br/>')}" escapeXml="false"/>
|
||||
<c:out value="${fn:replace(fn:replace(fn:replace(info.anncmCn, crlt , '<'), crgt , '>'), crlf , '<br/>')}" escapeXml="false"/>
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_center" style="width: 100%;">
|
||||
|
||||
@ -72,9 +72,11 @@
|
||||
<li><span class="number">2.</span>신청 시 공문양식을 다운로드 받아서 반드시 학교장 직인된 공문을 첨부해야 합니다.</li>
|
||||
<li><span class="number">3.</span>신청 시 반드시 본인 계정으로 신청해야 하며, 타인 계정으로 신청 시 신청 취소 처리됩니다.</li>
|
||||
<li><span class="number">4.</span>체험교실 신규 운영 교사는 체험교실 운영 교사 연수(1일, 8시간)를 반드시 이수해야 하며, 체험교실 운영 기간내에 저작권 e-배움터에서 제공하는 온라인 강좌를 의무 이수해야 합니다.</li>
|
||||
<li><span class="number">5.</span>신청교사가 교내에서 확인 가능한 메일 계정을 기재해 주시기 바랍니다.</li>
|
||||
<li><span class="number">6.</span>선정 후 취소(신규 운영 교사 사전 연수 불참 등) 및 운영 포기교실은 차년도 참여를 제한합니다.<br>(해당 내용 학교 공문 발송 예정)</li>
|
||||
<li><span class="number">7.</span>신청 시작시간과 마감시간에 유의하시기 바라며, 문의사항은 위원회 업무시간(09:00~18:00) 중<br>체험교실 담당자(055-792-0234)에게 연락주시기 바랍니다.</li>
|
||||
<li><span class="number">5.</span>신청기간 내 위원회 업무시간(09:00 ~ 18:00)동안 이용이 가능합니다.</li>
|
||||
<!-- <li><span class="number">6.</span>신청기간 내 학교급별(초등, 중등, 고등) 게시판을 반드시 확인 후 신청해 주시기 바랍니다.</li> -->
|
||||
<li><span class="number">6.</span>신청교사가 교내에서 확인 가능한 메일 계정을 기재해 주시기 바랍니다.</li>
|
||||
<li><span class="number">7.</span>신청 중 문의사항은 위원회 체험교실 담당자에게 연락을 주시기 바랍니다(055-792-0234)</li>
|
||||
<li><span class="number">8.</span>선정 후 취소(신규 운영 교사 사전 연수 불참 등) 및 운영 포기교실은 차년도 참여를 제한합니다.<br>(해당 내용 학교 공문 발송 예정)</li>
|
||||
</ol>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
@ -445,7 +445,7 @@ $(document).ready(function(){
|
||||
<td>
|
||||
<kc:code codeId="VEA001" code="${list.prcsDiv}"/>
|
||||
</td>
|
||||
<td class="prcsNm_popNm" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');}">
|
||||
<td class="prcsNm_popNm" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.prcsNm}"/>(<c:out value="${list.prcsAplctPrdOrd}"/>)
|
||||
</td>
|
||||
<td>
|
||||
|
||||
@ -164,7 +164,7 @@ $(document).ready(function(){
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="pop_tb_type01" style="overflow:visible; margin-bottom: 15px;">
|
||||
<div class="pop_tb_type01" style="overflow:visible;">
|
||||
<table>
|
||||
<caption>신청인정보 : 성명, 생년월일, 핸드폰, 이메일, 소속기업, 분야, 저작권 교육 수강 여부, 교육관련 사전질의 등의 정보입력</caption>
|
||||
<colgroup>
|
||||
@ -179,7 +179,6 @@ $(document).ready(function(){
|
||||
<p>성명</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="chrgNm" class="label">성명 입력</label>
|
||||
<input type="text" class="twoRow" name="chrgNm" id="chrgNm"/>
|
||||
</td>
|
||||
<th scope="row">
|
||||
@ -196,14 +195,12 @@ $(document).ready(function(){
|
||||
<p>핸드폰</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="phone" class="label">핸드폰 번호 입력</label>
|
||||
<input type="text" class="twoRow" name="phone" id="phone"/>
|
||||
</td>
|
||||
<th scope="row">
|
||||
<p>이메일</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="email" class="label">이메일 입력</label>
|
||||
<input type="text" class="twoRow" name="email" id="email"/>
|
||||
</td>
|
||||
</tr>
|
||||
@ -212,7 +209,6 @@ $(document).ready(function(){
|
||||
<p>소속기업</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="insttNm" class="label">소속기업 입력</label>
|
||||
<input type="text" class="twoRow" name="insttNm" id="insttNm"/>
|
||||
</td>
|
||||
</tr>
|
||||
@ -221,7 +217,6 @@ $(document).ready(function(){
|
||||
<p>분야</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="fldSelect" class="label">분야 선택</label>
|
||||
<ve:select codeId="VEA014" id="fldSelect" css="class='selType1'"
|
||||
selectedValue="" defaultValue=''
|
||||
defaultText="선택"
|
||||
@ -236,8 +231,8 @@ $(document).ready(function(){
|
||||
<p>저작권 교육 수강 여부</p>
|
||||
</th>
|
||||
<td>
|
||||
<label for="lctrYn" class="label">저작권 교육 수강 여부 입력</label>
|
||||
<input type="text" class="lctrYn" name="lctrYn" id="lctrYn"/>
|
||||
<ve:radio name="lctrYn" id="lctrYn" codeId="VEA018"/>
|
||||
<!-- <input type="text" class="lctrYn" name="lctrYn" id="lctrYn"/> -->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -245,7 +240,6 @@ $(document).ready(function(){
|
||||
<p>교육관련 사전질의</p>
|
||||
</th>
|
||||
<td colspan="2">
|
||||
<label for="prvsQs" class="label">교육관련 사전질의 입력</label>
|
||||
<input type="text" name="prvsQs" id="prvsQs" style="width: 100%;"/>
|
||||
</td>
|
||||
</tr>
|
||||
@ -257,24 +251,17 @@ $(document).ready(function(){
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<pre>개인정보 처리 동의서
|
||||
|
||||
<div class="pop_text">
|
||||
<p class="title">개인정보 처리 동의서
|
||||
<p class="sub_te">한국저작권위원회에서는 귀하의 개인정보를 중요시하며, 개인정보보호법 제15조, 제17조, 제22조, 제23조 및 제24조에 따라 아래와 같이 개인정보 처리에 관하여 동의를 얻고자 합니다.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<개인정보 수집 및 이용에 대한 동의>
|
||||
<ul>
|
||||
<li>ο 개인정보의 수집 이용 목적 : 이수증 발급, 이수자 관리 </li>
|
||||
<li>ο 수집하는 개인정보 항목 : 성명, 생년월일, 휴대전화, 이메일</li>
|
||||
<li>ο 개인정보의 보유 및 이용기간 : 사업 종료시까지</li>
|
||||
<li>ο 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용 : 귀하의 개인정보 제공 및 동의를 거부할 권리가 있으며, 위 항목 동의 거부시 수강신청 및 이수증 발급이 어려워질 수 있음</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
한국저작권위원회에서는 귀하의 개인정보를 중요시하며, 개인정보보호법 제15조, 제17조, 제22조, 제23조 및 제24조에 따라 아래와 같이 개인정보 처리에 관하여 동의를 얻고자 합니다.
|
||||
|
||||
<div class="pop_btn_wrap btn_layout01 ar_bt">
|
||||
<개인정보 수집 및 이용에 대한 동의 >
|
||||
ο 개인정보의 수집 이용 목적 : 이수증 발급, 이수자 관리
|
||||
ο 수집하는 개인정보 항목 : 성명, 생년월일, 휴대전화, 이메일
|
||||
ο 개인정보의 보유 및 이용기간 : 사업 종료시까지
|
||||
ο 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용 : 귀하의 개인정보 제공 및 동의를 거부할 권리가 있으며, 위 항목 동의 거부시 수강신청 및 이수증 발급이 어려워질 수 있음
|
||||
</pre>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
|
||||
@ -618,7 +618,6 @@ $(document).ready(function(){
|
||||
<!-- list -->
|
||||
<div class="tb_list01">
|
||||
<table>
|
||||
<caption>강의목록 : 교육구분, 과정명, 신청기간, 교육일자, 신청자/정원, 상태, 교육신청 등의 정보제공</caption>
|
||||
<colgroup>
|
||||
<%-- <col style="width: 5%"> --%>
|
||||
<col style="width: 10%">
|
||||
@ -632,13 +631,13 @@ $(document).ready(function(){
|
||||
<thead>
|
||||
<tr>
|
||||
<!-- <th>NO</th> -->
|
||||
<th scope=“col”>교육구분</th>
|
||||
<th scope=“col”>과정명</th>
|
||||
<th scope=“col”>신청기간</th>
|
||||
<th scope=“col”>교육일자</th>
|
||||
<th scope=“col”>신청자/정원</th>
|
||||
<th scope=“col”>상태</th>
|
||||
<th scope=“col”>교육신청</th>
|
||||
<th>교육구분</th>
|
||||
<th>과정명</th>
|
||||
<th>신청기간</th>
|
||||
<th>교육일자</th>
|
||||
<th>신청자/정원</th>
|
||||
<th>상태</th>
|
||||
<th>교육신청</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -650,7 +649,7 @@ $(document).ready(function(){
|
||||
<td>
|
||||
<kc:code codeId="VEA001" code="${list.prcsDiv}"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;" tabindex="0" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');}">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.prcsNm}"/>(<c:out value="${list.prcsAplctPrdOrd}"/>)
|
||||
</td>
|
||||
<td>
|
||||
|
||||
45
src/main/webapp/js/echarts.min.js
vendored
Normal file
45
src/main/webapp/js/echarts.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -56,8 +56,8 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.gnb_wrap .top_link ul{display: inline-block;}
|
||||
.gnb_wrap .top_link ul li{display: inline-block;width: auto;}
|
||||
.gnb_wrap .top_link ul li a{display:block;font-size:15px;padding: 0 30px;line-height: 46px;text-align: center;color: #555555;transition: 0.1s;}
|
||||
.gnb_wrap .top_link ul li.on::after{content: '';display: block;width: 100%;height: 3px;background-color: #ed5908;}
|
||||
.gnb_wrap .top_link ul li.on a, .gnb_wrap .top_link ul li a:hover{color: #ed5908;font-weight: 500;}
|
||||
.gnb_wrap .top_link ul li.on::after{content: '';display: block;width: 100%;height: 3px;background-color: #d64309;}
|
||||
.gnb_wrap .top_link ul li.on a, .gnb_wrap .top_link ul li a:hover{color: #d64309;font-weight: 500;}
|
||||
|
||||
.header{padding: 0; box-sizing: border-box;}
|
||||
.header .header_top{width:100%; border-bottom:2px solid #f1f1f1;}
|
||||
@ -83,15 +83,15 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.header .dep_li_07 .depth01_li{width: auto;}
|
||||
.header .menu_link{font-size: 20px; font-weight: 300; letter-spacing: -0.5px; display: flex; align-items: center; justify-content: center;/* height: 100%; */position: relative;font-family: 'GmarketSansMedium'; line-height: 1.25;}
|
||||
.header .menu_link::before{position: absolute; content: " "; display: block; width: 0; /*height: 2px; background-color: #E95504; left: 50%; transform: translateX(-50%); transition: width .4s ease-in-out; top: 32px;*/ z-index: 1;}
|
||||
.header .menu_link .menu_link_br {color: #ed5908;font-family: 'GmarketSansMedium'; padding:0 0 0 5px;}
|
||||
.header .on .menu_link{color: #ed5908;}
|
||||
.header .menu_link .menu_link_br {color: #d64309;font-family: 'GmarketSansMedium'; padding:0 0 0 5px;}
|
||||
.header .on .menu_link{color: #d64309;}
|
||||
.on .nav_wrap .on .menu_link::before{width: 100%;}
|
||||
.header .depth02{position: absolute; top:53px; text-align: center; padding: 15px 0; width: 100%; left: 50%; transform: translateX(-50%);border-right: 1px solid #d5d5d5;}
|
||||
.header .depth01_li:first-child .depth02{border-left: 1px solid #d5d5d5;}
|
||||
.header .depth01_li:hover .depth02::after{position:absolute;content:"";width:calc(100% + 4px); height:100%; background-color:#fff8f4;left:-2px;top:0;}
|
||||
.header .depth01_li:hover .depth02 li{ position:relative;z-index:1;}
|
||||
.header .depth02 a{font-size: 17px; font-weight: 300; line-height: 1.3; height: 45px; display: flex; align-items: center; justify-content: center; word-break: keep-all;white-space:nowrap;}
|
||||
.header .depth02 a:hover,.header .depth02 a:focus{color: #ed5908;font-weight:500;}
|
||||
.header .depth02 a:hover,.header .depth02 a:focus{color: #d64309;font-weight:500;}
|
||||
|
||||
.header_inner button{width: 27px; height: 26px; background-repeat: no-repeat;}
|
||||
.header_inner .btn_search{background-image: url(../images/common/btn_search.png); margin-right: 25px; margin-top: -2px;}
|
||||
@ -124,7 +124,7 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.full_menu .depth01_li:first-child{padding: 0 0 20px 0;}
|
||||
.full_menu .depth01_li:last-child{border-bottom: 0;}
|
||||
.full_menu .depth01_li .menu_link{width:350px;font-size: 20px; font-weight: 500; color: #222;}
|
||||
.full_menu .depth01_li:hover .menu_link,.full_menu .depth01_li .depth02 li:hover{color: #ed5908;}
|
||||
.full_menu .depth01_li:hover .menu_link,.full_menu .depth01_li .depth02 li:hover{color: #d64309;}
|
||||
.full_menu .depth01_li .depth02 li:hover{font-weight: 500;}
|
||||
.full_menu .depth01_li .depth02{display: flex; width: calc(100% - 138px); font-size: 18px; font-weight: 300; color: #666; justify-content:flex-start; flex-wrap: wrap;}
|
||||
.full_menu .depth01_li .depth02 li{width:calc(100% / 4); height:40px;}
|
||||
@ -177,7 +177,7 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.navigation .list > li .navi_depth {display:none;position:absolute;left:-1px;top:50px;width:100%;border:1px solid #d5d5d5;background:#fff;z-index:2;}
|
||||
.navigation .list > li .navi_depth li a {display:block;height:40px;padding:0 20px;font-size:16px;line-height:40px;}
|
||||
.navigation .list > li .navi_depth li a:hover,
|
||||
.navigation .list > li .navi_depth li a:focus {font-weight:500;color:#ed5908;background:#fff3ec;}
|
||||
.navigation .list > li .navi_depth li a:focus {font-weight:500;color:#d64309;background:#fff3ec;}
|
||||
|
||||
/* footer */
|
||||
/* footer{width: 100%; background-color: #eef0f3; position: relative; padding: 0 10px; box-sizing: border-box; color: #666; position: relative; margin: 80px auto 0 auto;} */
|
||||
|
||||
@ -383,7 +383,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
||||
.ex_process {display:flex; justify-content:space-between;}
|
||||
.ex_process li {border-radius: 10px; width:13.5%; text-align: center; color:#fff; padding:15px 0 18px 0; font-size:22px;}
|
||||
.ex_process li.p {background-color: #a7acb6;}
|
||||
.ex_process li.p_on {background-color:#f37632;}
|
||||
.ex_process li.p_on {/*background-color:#f37632;*/ background-color:#f05f0f;}
|
||||
|
||||
|
||||
/* 첨부파일 */
|
||||
@ -839,7 +839,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
||||
.tb_type01 table tbody .short_bt{margin-top: 0px;}
|
||||
|
||||
/*알림마당 > 교육자료실 > 첨부파일 수정*/
|
||||
.fileView a{margin: 0 0 10px 0; white-space: normal; background-image: url(../images/content/file_img.png); background-repeat: no-repeat; background-position: left 48%; padding-left: 23px; letter-spacing: -0.5px; font-size: 18px; font-weight: 300;}
|
||||
.fileView a{margin: 0 0 10px 0; white-space: normal; background-image: url(../images/content/file_img.png); background-repeat: no-repeat; background-position: left 48%; padding-left: 23px; letter-spacing: -0.5px; font-size: 16px; font-weight: 400; color:#555; line-height:20px;}
|
||||
|
||||
@media all and (max-width: 1300px){
|
||||
/*교육소개 추가*/
|
||||
|
||||
@ -111,15 +111,6 @@
|
||||
/* 기소유예 - 교육취소 */
|
||||
.btnType01.right {float:right; margin:0 0 5px 0;}
|
||||
|
||||
|
||||
/*신청인 정보 팝업 수정 */
|
||||
.pop_text{border: 1px solid #d5d5d5; padding: 15px; margin: 0 0 -5px 0;}
|
||||
.pop_text .title{margin: 0 0 10px 0; font-weight: 500;}
|
||||
.pop_text .sub_te{font-size: 15px; color :#666; margin: 0 0 10px 0; line-height: 1.2;}
|
||||
.pop_text ul{color :#666; line-height: 1.4; font-size: 14px;}
|
||||
.ar_bt{background-color: #f5f5f5; padding: 10px 0; margin: 0 0 -5px 0;}
|
||||
|
||||
|
||||
@media all and (max-width: 767px){
|
||||
.popup_cont {padding: 10px;}
|
||||
.popup_wrap.popType02 {width: 360px;}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user