This commit is contained in:
myname 2023-11-24 12:22:42 +09:00
commit 28c5f67766
20 changed files with 2611 additions and 25 deletions

View File

@ -100,8 +100,8 @@ public class ExcelUtil {
for (int i = 0; i < order.length; i++) {
for (Method method : methods) { // vo 내부 메소드 반복
//System.out.println("voList.method()");
//System.out.println(method.getName());
System.out.println("voList.method()");
System.out.println(method.getName());
if (method.getName().equals("get" + (order[i] == null ? "" : order[i]))) { // vo메소드 이름과 order의 이름 비교
// getter 호출 준비

View File

@ -799,6 +799,26 @@ public class UserQustnrManageController {
}
/**
* @methodName : UserQustnrManageQrCreate
* @author : JunHo Lee
* @date : 2023.11.23
* @description : qr코드 생성
* @param qustnrQestnManageVO
* @param model
* @return
* @throws Exception
*/
@RequestMapping(value="/uss/olp/qqm/UserQustnrManageQrCreate.do")
public String UserQustnrManageQrCreate(
@ModelAttribute("qustnrQestnManageVO") QustnrQestnManageVO qustnrQestnManageVO,
ModelMap model) throws Exception {
return "/uss/olp/qqm/UserQustnrManageQrCreate";
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
//

View File

@ -1,5 +1,6 @@
package kcc.ve.aplct.comweb;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
@ -31,6 +32,7 @@ import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
@ -86,6 +88,10 @@ public class CommonWebController {
@Resource(name = "vEAStngService")
private VEAStngService vEAStngService;
//강사상세 정보
@Resource(name="vEInstrDetailService")
private VEInstrDetailService vEInstrDetailService;
@RequestMapping("/popup/searchBeforeContent.do")
public String searchBeforeContentPopup(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO, ModelMap model, HttpServletRequest request) throws Exception{
@ -1027,6 +1033,7 @@ public class CommonWebController {
//step3-1.해당 차시에 강사 교육확정
vEInstrAsgnmVO.setAsgnmAprvlCd(veEduAplctVO.getAsgnmAprvlCd());
ArrayList<VEInstrDetailVO> vEInstrDetailVOList = new ArrayList<VEInstrDetailVO>();
for (int i=0;i<p_step01_list.size();i++) {
vEInstrAsgnmVO.setEduAplctOrd(p_step01_list.get(i).getEduAplctOrd());
vEInstrAsgnmVO.setEduChasiOrd(p_step01_list.get(i).getEduChasiOrd());
@ -1045,8 +1052,22 @@ public class CommonWebController {
vEEduChasiInstrAsgnmService.updateAsgnmY(vEInstrAsgnmVO);
vEEduChasiInstrAsgnmService.updateAsgnmN(vEInstrAsgnmVO);
//성인교육의 경우 배정 확정 강사의 ID와 메일 조회 안내 SMS, 메일 전송
if("20".equals(veEduAplctVO.getLctrDivCd())) {
VEInstrDetailVO vEInstrDetailVO = new VEInstrDetailVO();
vEInstrDetailVO.setInstrDiv("20");
vEInstrDetailVO.setUserId(p_step01_list.get(i).getUserId());
vEInstrDetailVO.setUseYn("Y"); //가장 최근 강사 정보
VEInstrDetailVO vEInstrDetailVODetail = vEInstrDetailService.selectDetail(vEInstrDetailVO);
vEInstrDetailVODetail = egovCryptoUtil.decryptVEInstrDetailVO(vEInstrDetailVODetail);
vEInstrDetailVODetail.setEduAplctOrd(p_step01_list.get(i).getEduAplctOrd());
vEInstrDetailVOList.add(vEInstrDetailVODetail);
}
}
modelAndView.addObject("vEInstrDetailVOList", vEInstrDetailVOList);
//modelAndView.addObject("rsCnt", rs);
modelAndView.addObject("result", "success");

View File

@ -769,6 +769,12 @@ public class InstrPrflController {
List<VEInstrDetailActvtHstryVO> vEInstrActvtHstryList = vEInstrDetailActvtHstryService.select(vEInstrDetailActvtHstryVO);
model.addAttribute("vEInstrActvtHstryList", vEInstrActvtHstryList);
// 이력관리 리스트
VEAStngVO vEAStngVO = new VEAStngVO();
vEAStngVO.setUserId(vEInstrDetailVO.getUserId());
List<VEAStngVO> selectList_VEAIHM = vEAStngService.selectList_VEAIHM(vEAStngVO);
model.addAttribute("selectListVEAIHM",selectList_VEAIHM);
return "/web/ve/instr/tngrVisitEdu/instrInfo/instrPrflDetail";
}

View File

@ -26,6 +26,7 @@ public class CndtnTrgtMngVO extends ComDefaultVO implements Serializable {
private String trgtNm; // 대상자성명
private String clphone; // 연락처
private String dBirth; // 생년월일
private String DBirth; // 생년월일
private String addr; // 주소
private String addrDetail; // 상세주소
private String email; // 이메일주소
@ -210,6 +211,12 @@ public class CndtnTrgtMngVO extends ComDefaultVO implements Serializable {
public void setSearchSelStatusToList(String searchSelStatus) {
this.searchSelStatusList = Arrays.asList(searchSelStatus.split(","));
}
public String getDBirth() {
return DBirth;
}
public void setDBirth(String dBirth) {
DBirth = dBirth;
}

View File

@ -5,12 +5,16 @@ import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
@ -29,6 +33,7 @@ import kcc.com.cmm.service.CmmnDetailCode;
import kcc.com.cmm.service.EgovCmmUseService;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.FileVO;
import kcc.com.cmm.spring.data.util.ExcelUtil;
import kcc.com.cmm.util.DateUtil;
import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckFileUtil;
@ -494,7 +499,7 @@ public class CndtnTrgtMngController {
private String getReqNmbr(CndtnTrgtMngVO cndtnTrgtInfoMngVO) {
//성인 미성년 구분
String adultWhether = getIsAdultInKorea(cndtnTrgtInfoMngVO.getdBirth());
String adultWhether = getIsAdultInKorea(cndtnTrgtInfoMngVO.getDBirth());
String reqNmbrTemp = adultWhether+"-"+cndtnTrgtInfoMngVO.getCmptntAthrt()+"-"+DateUtil.getStringToLocalDateYear();
int cnt = cndtnTrgtInfoMngService.findCntreqNmber("%" + reqNmbrTemp + "%");
@ -684,10 +689,10 @@ public class CndtnTrgtMngController {
List<CndtnTrgtMngVO> cndtnTrgtInfoMngVOList = new ArrayList<CndtnTrgtMngVO>();
System.out.println(StringUtils.isEmpty(cndtnTrgtInfoMngVO.getTrgtNm()) || StringUtils.isEmpty(cndtnTrgtInfoMngVO.getdBirth()));
System.out.println(StringUtils.isEmpty(cndtnTrgtInfoMngVO.getTrgtNm()) || StringUtils.isEmpty(cndtnTrgtInfoMngVO.getDBirth()));
System.out.println("StringUtils.isEmpty(cndtnTrgtInfoMngVO.getTrgtNm()) : "+ StringUtils.isEmpty(cndtnTrgtInfoMngVO.getTrgtNm()));
System.out.println("StringUtils.isEmpty(cndtnTrgtInfoMngVO.getdBirth()) : "+ StringUtils.isEmpty(cndtnTrgtInfoMngVO.getdBirth()));
if(StringUtils.isNotEmpty(cndtnTrgtInfoMngVO.getTrgtNm()) || StringUtils.isNotEmpty(cndtnTrgtInfoMngVO.getdBirth()))
System.out.println("StringUtils.isEmpty(cndtnTrgtInfoMngVO.getdBirth()) : "+ StringUtils.isEmpty(cndtnTrgtInfoMngVO.getDBirth()));
if(StringUtils.isNotEmpty(cndtnTrgtInfoMngVO.getTrgtNm()) || StringUtils.isNotEmpty(cndtnTrgtInfoMngVO.getDBirth()))
{
cndtnTrgtInfoMngVO.setFirstIndex(0);
cndtnTrgtInfoMngVO.setRecordCountPerPage(100000);
@ -910,6 +915,162 @@ public class CndtnTrgtMngController {
}
@RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/trgtMngExcel.do")
public ModelAndView trgtMngExcel(
@ModelAttribute("cndtnTrgtInfoMngVO") CndtnTrgtMngVO cndtnTrgtInfoMngVO
, ModelMap model
, HttpServletRequest request
) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("excelDownloadView");
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
System.out.println("loginVO.getAuthority() :: "+ loginVO.getAuthority());
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
if (!"".equals(s_oprtnLoginCheckNInfo)) {
modelAndView.addObject(model);
return modelAndView;
}
//로그인 처리====================================
//1.pageing step1
PaginationInfo paginationInfo = this.setCndtnPagingStep1(cndtnTrgtInfoMngVO);
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
//paginationInfo.setRecordCountPerPage(10000);
//2. pageing step2
cndtnTrgtInfoMngVO = this.setCndtnPagingStep2(cndtnTrgtInfoMngVO, paginationInfo);
//검색 조회
String selectCondition = "";
if(StringUtil.isNotEmpty(cndtnTrgtInfoMngVO.getSearchKeyword())){
String searchStatus = cndtnTrgtInfoMngVO.getSearchStatus();
// selectCondition = "AND a."+searchStatus+" LIKE CONCAT ('%', '" +cndtnTrgtInfoMngVO.getSearchKeyword() + "', '%')";
selectCondition = "AND a."+searchStatus+" LIKE '%" +cndtnTrgtInfoMngVO.getSearchKeyword() + "%'";
cndtnTrgtInfoMngVO.setSearchQuery(selectCondition);
}
if(StringUtils.isNotEmpty(cndtnTrgtInfoMngVO.getSearchSelStatus()))
{
cndtnTrgtInfoMngVO.setSearchSelStatusToList(cndtnTrgtInfoMngVO.getSearchSelStatus());
}
List<CndtnTrgtMngVO> cndtnTrgtInfoMngVOList = null;
try {
cndtnTrgtInfoMngVOList = cndtnTrgtInfoMngService.selectPagingList(cndtnTrgtInfoMngVO);
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
ComDefaultCodeVO vo = new ComDefaultCodeVO();
for(CndtnTrgtMngVO tmp : cndtnTrgtInfoMngVOList) {
//의뢰읠
tmp.setReqPnttm(tmp.getReqPnttm().substring(0, 10));
//사건번호
tmp.setVntYear(tmp.getVntYear()+"형제"+tmp.getVntNmbr());
//관할청
if(StringUtil.isNotEmpty(tmp.getCmptntAthrt())) {
vo.setCodeId("VEA008");
vo.setCode(tmp.getCmptntAthrt());
CmmnDetailCode cmmnDetailCode= egovCmmUseService.selectCmmCodeDetailValue(vo);
tmp.setCmptntAthrt(StringUtil.escapeXml(cmmnDetailCode.getCodeNm()));
}
//생년월일
if(StringUtil.isNotEmpty(tmp.getdBirth())) {
tmp.setDBirth(tmp.getdBirth());
}
//성별
if(StringUtil.isNotEmpty(tmp.getSex())) {
vo.setCodeId("COM014");
vo.setCode(tmp.getSex());
CmmnDetailCode cmmnDetailCodeSex= egovCmmUseService.selectCmmCodeDetailValue(vo);
tmp.setSex((StringUtil.escapeXml(cmmnDetailCodeSex.getCodeNm())));
}
//의뢰상태
if(StringUtil.isNotEmpty(tmp.getReqStateCd())) {
vo.setCodeId("VEA005");
vo.setCode(tmp.getReqStateCd());
CmmnDetailCode cmmnDetailCodeReqState= egovCmmUseService.selectCmmCodeDetailValue(vo);
tmp.setReqStateCd((StringUtil.escapeXml(cmmnDetailCodeReqState.getCodeNm())));
}
//교육상태
if(StringUtil.isNotEmpty(tmp.getEduStateCd())) {
vo.setCodeId("VEA002");
vo.setCode(tmp.getEduStateCd());
CmmnDetailCode cmmnDetailCodeEduState= egovCmmUseService.selectCmmCodeDetailValue(vo);
tmp.setEduStateCd((StringUtil.escapeXml(cmmnDetailCodeEduState.getCodeNm())));
}
//주소
if(StringUtil.isNotEmpty(tmp.getAddr()) && StringUtil.isNotEmpty(tmp.getAddrDetail())) {
tmp.setAddr(tmp.getAddr()+" "+tmp.getAddrDetail());
}
}
int[] width = {
4000, 5000, 5000, 5000, 3000
, 3000, 5000, 4000, 5000, 13000
, 3500
}; // 너비
String[] header = {
"의뢰일", "사건번호", "관할청", "생년월일", "성명"
, "성별" , "의뢰번호", "의뢰상태", "교육상태", "주소"
, "검사명"
}; // 헤더에 들어갈 이름
String[] order = {
"ReqPnttm", "VntYear", "CmptntAthrt", "DBirth", "TrgtNm"
, "Sex", "ReqNmbr", "ReqStateCd", "EduStateCd", "Addr"
, "PrsctrNm"
}; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용)
excelDown(
cndtnTrgtInfoMngVOList,
"대상자 목록",
width,
header,
order,
model
);
//3.pageing step3
// paginationInfo = this.setCndtnPagingStep3(cndtnTrgtInfoMngVOList, paginationInfo);
//
// model.addAttribute("paginationInfo", paginationInfo);
//
//
// //대상 리스트, 페이징 정보 전달
// model.addAttribute("list", cndtnTrgtInfoMngVOList);
//
// ComDefaultCodeVO codeParam = new ComDefaultCodeVO();
// codeParam.setCodeId("VEA008");
// List<CmmnDetailCode> CmmnDetailCodeList = egovCmmUseService.selectCmmCodeDetailOrderByCode(codeParam);
// model.addAttribute("CmmnDetailCodeList", CmmnDetailCodeList);
modelAndView.addObject(model);
return modelAndView;
}
@ -1010,4 +1171,26 @@ public class CndtnTrgtMngController {
return p_paginationInfo;
}
@SuppressWarnings("unused")
private void excelDown(
List list,
String title,
int[] width,
String[] header,
String[] order,
ModelMap model
){
// 호출
SXSSFWorkbook workbook;
try {
workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title);
model.addAttribute("locale", Locale.KOREA);
model.addAttribute("workbook", workbook);
model.addAttribute("workbookName", title);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

View File

@ -701,11 +701,14 @@
AND AA.asgnmAprvlCd = #asgnmAprvlCd#
AND AA.userId = #userId#
AND AA.instrDiv = #instrDiv#
<isNotEmpty property="searchKeyword">
AND scholInsttNm LIKE '%' || #searchKeyword# || '%'
</isNotEmpty>
<isNotEmpty property="searchEduHopeStartDt">
AND AA.eduHopeDt <![CDATA[ >= ]]> REPLACE(#searchEduHopeStartDt#, '.' , '')
AND REPLACE(AA.eduHopeDt, '.' , '') <![CDATA[ >= ]]> REPLACE(#searchEduHopeStartDt#, '.' , '')
</isNotEmpty>
<isNotEmpty property="searchEduHopeEndDt">
AND AA.eduHopeDt <![CDATA[ <= ]]> REPLACE(#searchEduHopeEndDt#, '.' , '')
AND REPLACE(AA.eduHopeDt, '.' , '') <![CDATA[ <= ]]> REPLACE(#searchEduHopeEndDt#, '.' , '')
</isNotEmpty>
<isNotEmpty property="searchSubmitYn">
<isEqual property="searchSubmitYn" compareValue="Y">

View File

@ -100,7 +100,7 @@
,TRGT_PRSNL = #trgtPrsnl#
,OPRTN_STRT_DT = #oprtnStrtDt#
,OPRTN_END_DT = #oprtnEndDt#
,LAST_UPDT_PNTTM = NOW()
,LAST_UPDT_PNTTM = SYSDATE
,LAST_UPDUSR_ID = #lastUpdusrId#
,ISLANDS_YN = #islandsYn#
,REMOTE_YN = #remoteYn#

View File

@ -39,6 +39,7 @@
white-space : nowrap;
}
</style>
<script src="${pageContext.request.contextPath}/js/ve/sendSmsEmailUtil.js"></script>
<script type="text/javascript">
$(document).ready(function(){
// $("input[name=searchStatusArr]").on("click" , function(){
@ -350,13 +351,37 @@
data: {
"eduAplctOrd" : varEduAplctOrd ,
"asgnmAprvlCd" : "30" ,
//"instrDiv" : "10" ,
"lctrDivCd" : "20"
},
dataType:'json',
success:function(returnData){
if(returnData.result=="success"){
alert("상태가 변경 되었습니다.");
//sms, 메일 발송
if(returnData.vEInstrDetailVOList != null){
for(var i=0; i<returnData.vEInstrDetailVOList.length; i++){
try{
sendSms(
returnData.vEInstrDetailVOList[i].phone,
"교육운영 관리 시스템입니다. 찾아가는 성인 교육에 배정되셨습니다.",
returnData.vEInstrDetailVOList[i].eduAplctOrd,
returnData.vEInstrDetailVOList[i].userId,
"N"
);
sendEmail(
returnData.vEInstrDetailVOList[i].email,
"교육운영 관리 시스템입니다. 찾아가는 성인 교육에 배정되셨습니다.",
returnData.vEInstrDetailVOList[i].eduAplctOrd,
returnData.vEInstrDetailVOList[i].userId,
"S",
"N"
);
}
catch (e) {
}
}
}
fncGoList();
}else{
alert("강사 자동 배정 중에 오류가 발생 되었습니다.");

View File

@ -306,6 +306,32 @@ function getYears(getYear){
});
}
}
function updateHiddenMemo(){
$("#memo").val($("#detailForm #memoCn").val());
var data1 = new FormData(document.getElementById("hiddenMemoForm"));
$.ajax({
type:"POST",
url:"${pageContext.request.contextPath}/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrMemoUpdateAjax.do",
data:data1,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success:function(returnData){
if(returnData.result == "success"){
alert("저장 되었습니다.");
location.reload();
}
},
error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
</script>
<%-- <form id="pop" name="pop" method="post">
<input type="hidden" name="userId" id="userId" value="<c:out value='${info.userId}'/>"/> <!-- 사용자 아이디 -->
@ -313,6 +339,12 @@ function getYears(getYear){
<input type="hidden" name="instrDetailOrd" id="instrDetailOrd" value="<c:out value='${info.instrDetailOrd}'/>"/> <!-- 강사구분 -->`
<input type="hidden" name="aprvlCd" id="aprvlCd" value=""/> <!-- 승인코드 -->
</form> --%>
<form id="hiddenMemoForm" name="hiddenMemoForm" method="post">
<input type="hidden" name="userId" id="userId" value="<c:out value='${info.userId}'/>"/> <!-- 사용자 아이디 -->
<input type="hidden" name="instrDetailOrd" id="instrDetailOrd" value="<c:out value='${info.instrDetailOrd}'/>"/>
<input type="hidden" name="instrDiv" id="instrDiv" value="<c:out value='${info.instrDiv}'/>"/> <!-- 강사구분 -->
<input type="hidden" name="memo" id="memo" value="" />
</form>
<form:form id="detailForm" name="detailForm" commandName="vEInstrDetailVO" method="post" >
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrDetailVO.pageIndex}'/>"/>
@ -515,7 +547,30 @@ function getYears(getYear){
</table>
</div>
<!-- 비공개 메보 정보 -->
<div class="tb_tit01">
<p>비공개 메모</p>
</div>
<div class="tb_type02">
<table>
<colgroup>
<col style="width: 220px;">
<col style="width: auto;">
</colgroup>
<tr>
<th scope="row">
<p>내용</p>
</th>
<td class="tb_alram">
<div>
<textarea name="memoCn" id="memoCn"><c:out value="${info.memo}" /></textarea>
<button type="button" class="btn_type08" onclick="updateHiddenMemo(); return false;">메모 저장</button>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="tb_type02">
<table>

View File

@ -207,7 +207,7 @@
<td>
<c:if test='${empty list.chrgNm}'>
<button class="btn_type06"
onclick="fncInstrAsgnm('<c:out value="${list.eduAplctOrd}" />', '<c:out value="${list.eduChasiOrd}" />', '<c:out value="${list.userId}" />'); return false;">선택</button>
onclick="fncInstrAsgnm('<c:out value="${vEInstrAsgnmVO.eduAplctOrd}" />', '<c:out value="${vEInstrAsgnmVO.eduChasiOrd}" />', '<c:out value="${list.userId}" />'); return false;">선택</button>
</c:if>
</td>

View File

@ -30,7 +30,7 @@
<html lang="ko">
<head>
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet"/>
<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="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">
@ -215,6 +215,13 @@
}
function fncExcel(){
var listForm = document.listForm ;
// listForm.searchCondition.value = $("#searchCondition").val() ;
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/trgtMngExcel.do'/>";
listForm.submit();
}
</script>
<title>교육과정관리</title>
</head>
@ -309,6 +316,14 @@
<button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button>
</div>
</div>
<div class="list_top_2">
<div class="util_left">
<p>엑셀 다운로드</p>
</div>
<div class="util_right">
<button type="button" class="btn_type08" onclick="fncExcel();">엑셀 다운로드</button>
</div>
</div>
</div>
<div class="list_util">

View File

@ -0,0 +1,239 @@
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ 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="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<title>qr 생성</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-language" content="ko">
<script type="text/javaScript" language="javascript">
$( document ).ready(function(){
});
function fnList() {
document.searchForm.submit();
}
</script>
<!-- 자바스크립트 경고 태그 -->
<noscript class="noScriptTitle">자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript>
<div class="cont_wrap">
<div class="box">
<div class="cont_tit">
<h2>설문문항 등록</h2>
</div>
<div class="cont">
<div class="tbType02">
<table>
<colgroup>
<col style="width: 20%">
<col style="width: 80%">
</colgroup>
<tbody>
<tr>
<th><span class="reqArea">설문지정보(제목)</span></th>
<td>
<c:out value="${qestnrInfo.qustnrSj}" escapeXml="true"/>
<input type="hidden" name="qestnrCn" id="qestnrCn" value="${qestnrInfo.qustnrSj}" />
</td>
</tr>
<tr>
<th><span class="reqArea">질문 내용</span></th>
<td>
<textarea id="qestnCn" name="qestnCn">${qestnrInfo.qestnCn}</textarea>
</td>
</tr>
<tr>`
<th><span class="reqArea">질문 순번</span></th>
<td>
${qustnrQestnManageVO.qestnSn}
<input type="hidden" name="qestnSn" id="qestnSn" value="${qustnrQestnManageVO.qestnSn}">
</td>
</tr>
<tr>
<th><span class="reqArea">질문 유형</span></th>
<td>
<kc:select codeId="COM018" id="appPlaceTy" name="qestnTyCode" selectedValue="${qestnrInfo.qestnTyCode}" styleClass="sel_type1" onChange="selectTyCode()"/>
</td>
</tr>
<tr style="display: none;">
<th><span class="reqArea">최대선택건수</span></th>
<td>
<select id="mxmmChoiseCo" name="mxmmChoiseCo" title="최대선택건수 선택" class="sel_type1">
<option value="1" <c:if test="${qestnrInfo.mxmmChoiseCo == '1' }"> selected="selected" </c:if>>1</option>
<option value="2" <c:if test="${qestnrInfo.mxmmChoiseCo == '2' }"> selected="selected" </c:if>>2</option>
<option value="3" <c:if test="${qestnrInfo.mxmmChoiseCo == '3' }"> selected="selected" </c:if>>3</option>
<option value="4" <c:if test="${qestnrInfo.mxmmChoiseCo == '4' }"> selected="selected" </c:if>>4</option>
<option value="5" <c:if test="${qestnrInfo.mxmmChoiseCo == '5' }"> selected="selected" </c:if>>5</option>
<option value="6" <c:if test="${qestnrInfo.mxmmChoiseCo == '6' }"> selected="selected" </c:if>>6</option>
<option value="7" <c:if test="${qestnrInfo.mxmmChoiseCo == '7' }"> selected="selected" </c:if>>7</option>
<option value="8" <c:if test="${qestnrInfo.mxmmChoiseCo == '8' }"> selected="selected" </c:if>>8</option>
<option value="9" <c:if test="${qestnrInfo.mxmmChoiseCo == '9' }"> selected="selected" </c:if>>9</option>
<option value="10" <c:if test="${qestnrInfo.mxmmChoiseCo == '10' }"> selected="selected" </c:if>>10</option>
</select>
</td>
</tr>
</tbody>
</table>
</div>
<div class="tbType02">
<table id="itemTable">
<colgroup>
<col style="width: 20%">
<col style="width: 80%">
</colgroup>
<tbody id="itemTableTbody">
<c:choose>
<c:when test="${fn:length(qustnrItemList) < 1}">
<tr>
<th>1</th>
<td>
<input type="text" name="iemCn" style='width:90%; float:left;' maxlength="50" />
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" name="iemCn" style='width:90%; float:left;' maxlength="50" />
</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="resultList" items="${qustnrItemList}" varStatus="status">
<tr>
<th>${status.count}</th>
<td>
<input type="text" name="iemCn" maxlength="50" style='width:90%; float:left;' value="${resultList.iemCn}"/>
</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="area_left">
<input type="button" class="btnType04" value="문항추가" onclick="addRow(); return false;">
<input type="button" class="btnType04" value="문항삭제" onclick="delRow(); return false;">
</div>
<div class="area_right">
<input type="button" class="btnType03" value="이전페이지" onclick="fnList(); return false;">
<c:choose>
<c:when test="${fn:length(qustnrItemList) == 0}">
<input type="button" class="btnType06" value="저장" onclick="fn_egov_save_QustnrItemManage('regi'); return false; ">
</c:when>
<c:otherwise>
<input type="button" class="btnType06" value="수정" onclick="fn_egov_save_QustnrItemManage('upda'); return false; ">
</c:otherwise>
</c:choose>
</div>
</div>
</div>
</div>
</div>
</form>
<div style="display: none;">
<table id="tempTable">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50"/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50"/>
</td>
</tr>
</table>
<table id="tempTable_10">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우만족" readonly/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="만족" readonly/>
</td>
</tr>
<tr>
<th>3</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="보통" readonly/>
</td>
</tr>
<tr>
<th>4</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="불만족" readonly/>
</td>
</tr>
<tr>
<th>5</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우 불만족" readonly/>
</td>
</tr>
</table>
<table id="tempTable_30">
<tr>
<th>1</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="전혀 그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>2</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>3</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="약간 그렇지 않다" readonly/>
</td>
</tr>
<tr>
<th>4</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="보통이다" readonly/>
</td>
</tr>
<tr>
<th>5</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="약간 그렇다" readonly/>
</td>
</tr>
<tr>
<th>6</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="그렇다" readonly/>
</td>
</tr>
<tr>
<th>7</th>
<td>
<input type="text" style='width:90%; float:left;' maxlength="50" value="매우 그렇다" readonly/>
</td>
</tr>
</table>
</div>
<form name="searchForm" id="searchForm" method="get" action="<c:url value='/uss/olp/qmc/UserQustnrManageModify.do'/>" >
<input name="qestnrId" type="hidden" value="${qustnrQestnManageVO.qestnrId}" />
</form>

View File

@ -149,6 +149,9 @@
</td>
<td>
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
<!-- 프로세스 변경 후 적용. 신청단계에서는 운영계획이 없어서 등록일을 기준으로 운영년도 보여주기 -->
<%-- <fmt:parseDate value="${list.frstRegistPnttm}" var="frstRegistPnttm" pattern="yyyy.MM.dd"/>
<fmt:formatDate value="${frstRegistPnttm}" pattern="yyyy년"/> --%>
<fmt:parseDate value="${list.oprtnStrtDt}" var="oprtnStrtDt" pattern="yyyyMMdd"/>
<fmt:formatDate value="${oprtnStrtDt}" pattern="yyyy년"/>
</a>
@ -171,6 +174,34 @@
</td>
<td>
<c:choose>
<!-- 프로세스 변경 후 적용-->
<%-- <c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_10}">
<span class="app_status1">운영신청</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_20}">
<span class="app_status3">운영확정</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_30}">
<span class="app_status3">서류제출 요청</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<span class="app_status1">서류제출</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_50}">
<span class="app_status1">운영 진행중</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_60}">
<span class="app_status1">결과보고 완료</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_70}">
<span class="app_status1">검토중</span>
</c:when>
<c:when test="${list.aprvlCd eq VeConstants.EXPRN_APRVL_CD_80}">
<span class="app_status1">운영 종료</span>
</c:when>
<c:otherwise>
-
</c:otherwise> --%>
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_10}">
<span class="app_status1">운영신청</span>
</c:when>

View File

@ -56,7 +56,7 @@
</div>
</div>
<div class="list_top">
<div class="list_top top_longver">
<div class="list_top_left">
</div>
<div class="btn_wrap">
@ -70,6 +70,8 @@
<duet-date-picker identifier="date" name="searchEduHopeEndDt" class="endDate" value="${vEInstrAsgnmVO.searchEduHopeEndDt}"></duet-date-picker>
</div>
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker.js"></script>
<label for="searchKeyword" class="searchKeyword">학교(기관)명 :</label>
<input type="text" name="searchKeyword" id="searchKeyword" value="<c:out value='${vEInstrAsgnmVO.searchKeyword}' />" onkeyDown="press(event);"/>
<button type="button" class="btnType01" onclick="linkPage(1); return false;">검색</button>
<button type="button" class="btnType02" onclick="fncReset(this);">초기화</button>
</div>
@ -219,7 +221,7 @@
<c:set var = "fee" value="정산중" />
</c:when>
<c:otherwise>
<%-- <c:set var = "fee" value="${list.instrFee + list.specialWorkAllow + list.distanceAllow + list.trafficFee + list.acmdtFee}" /> --%>
<c:set var = "fee" value="${list.instrFee + list.specialWorkAllow + list.distanceAllow + list.trafficFee + list.acmdtFee}" />
</c:otherwise>
</c:choose>

View File

@ -951,6 +951,47 @@
</tbody>
</table>
</div>
<div class="tb_tit01">
<div class="tb_tit01_left">
<p>강사 이력</p>
</div>
</div>
<div class="tb_type02">
<table>
<caption>강사 이력</caption>
<colgroup>
<col style="width: 18%;">
<col style="width: 18%;">
<col style="width: auto;">
<col style="width: 18%;">
<col style="width: 18%;">
</colgroup>
<thead>
<tr>
<th scope="col">교육명</th>
<th scope="col">교육기간</th>
<th scope="col">비고</th>
<th scope="col">등록자</th>
<th scope="col">등록일</th>
</tr>
</thead>
<tbody>
<c:forEach var="pList" items="${selectListVEAIHM}" varStatus="status">
<tr>
<td><c:out value="${pList.sbjct}" /></td>
<td><c:out value="${pList.strtDt}" />~<c:out value="${pList.ddlnDt}" /></td>
<td><c:out value="${pList.cn}" /></td>
<td><c:out value="${pList.userNm}" /></td>
<td><c:out value="${pList.frstRegistPnttm}" /></td>
</tr>
</c:forEach>
<c:if test="${empty selectListVEAIHM}">
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- 하단 버튼 -->
<div class="btn_wrap btn_layout01">
<div class="btn_left"></div>

View File

@ -25,7 +25,7 @@
/* list_top */
.list_top{margin-bottom: 30px; background-color: #f1f2f4; padding:0 25px; border: 1px solid #dbdcdd; border-radius: 5px; box-sizing: border-box;}
.list_top>div {display: flex; align-items: center; height: 64px; border-bottom: 1px solid #e3e4e5; box-sizing: border-box;}
.list_top>div {display: flex; align-items: center; min-height: 64px; border-bottom: 1px solid #e3e4e5; box-sizing: border-box;padding:10px 0;}
.list_top>div:last-child {border-bottom: 0;}
.list_top .util_left {width: 150px;}
.list_top .util_left p{padding-left: 10px; font-size: 18px; font-weight: 500; color: #222; position: relative;}

View File

@ -0,0 +1,670 @@
.select2-container {
box-sizing: border-box;
display: inline-block;
margin: 0;
position: relative;
vertical-align: middle
}
.select2-container button{height:auto;}
.select2-container .select2-selection--single {
box-sizing: border-box;
cursor: pointer;
display: block;
height: 28px;
user-select: none;
-webkit-user-select: none
}
.select2-container .select2-selection--single .select2-selection__rendered {
display: block;
padding-left: 8px;
padding-right: 20px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}
.select2-container .select2-selection--single .select2-selection__clear {
background-color: transparent;
border: none;
font-size: 1em
}
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
padding-right: 8px;
padding-left: 20px
}
.select2-container .select2-selection--multiple {
box-sizing: border-box;
cursor: pointer;
display: block;
min-height: 32px;
user-select: none;
-webkit-user-select: none
}
.select2-container .select2-selection--multiple .select2-selection__rendered {
display: inline;
list-style: none;
padding: 0
}
.select2-container .select2-selection--multiple .select2-selection__clear {
background-color: transparent;
border: none;
font-size: 1em
}
.select2-container .select2-search--inline .select2-search__field {
box-sizing: border-box;
border: none;
font-size: 100%;
padding: 0 5px;
height:100%;
}
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none
}
.select2-dropdown {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
box-sizing: border-box;
display: block;
position: absolute;
left: -100000px;
width: 100%;
z-index: 1051
}
.select2-results {
display: block
}
.select2-results__options {
list-style: none;
margin: 0;
padding: 0
}
.select2-results__option {
padding: 6px;
user-select: none;
-webkit-user-select: none
}
.select2-results__option--selectable {
cursor: pointer
}
.select2-container--open .select2-dropdown {
left: 0
}
.select2-container--open .select2-dropdown--above {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0
}
.select2-container--open .select2-dropdown--below {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0
}
.select2-search--dropdown {
display: block;
padding: 4px
}
.select2-search--dropdown .select2-search__field {
padding: 4px;
width: 100%;
box-sizing: border-box
}
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none
}
.select2-search--dropdown.select2-search--hide {
display: none
}
.select2-close-mask {
border: 0;
margin: 0;
padding: 0;
display: block;
position: fixed;
left: 0;
top: 0;
min-height: 100%;
min-width: 100%;
height: auto;
width: auto;
opacity: 0;
z-index: 99;
background-color: #fff;
filter: alpha(opacity=0)
}
.select2-hidden-accessible {
border: 0 !important;
clip: rect(0 0 0 0) !important;
-webkit-clip-path: inset(50%) !important;
clip-path: inset(50%) !important;
height: 1px !important;
overflow: hidden !important;
padding: 0 !important;
position: absolute !important;
width: 1px !important;
white-space: nowrap !important
}
.select2-container--default .select2-selection--single {
background-color: #fff;
border: 1px solid #aaa;
border-radius: 4px
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px
}
.select2-container--default .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
height: 26px;
margin-right: 20px;
padding-right: 0px
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
color: #999
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height: 26px;
position: absolute;
top: 1px;
right: 1px;
width: 20px
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
border-width: 5px 4px 0 4px;
height: 0;
left: 50%;
margin-left: -4px;
margin-top: -2px;
position: absolute;
top: 50%;
width: 0
}
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
float: left
}
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
left: 1px;
right: auto
}
.select2-container--default.select2-container--disabled .select2-selection--single {
background-color: #eee;
cursor: default
}
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
display: none
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px
}
.select2-container--default .select2-selection--multiple {
background-color: white;
border: 1px solid #d5d5d5;
border-radius: 5px;
cursor: text;
min-height:40px;
padding:0 5px;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
height: 20px;
margin-right: 10px;
margin-top: 5px;
padding: 1px
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #aaa;
border-radius: 4px;
display: inline-block;
margin-left: 5px;
margin-top: 5px;
padding: 0
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
cursor: default;
padding-left: 2px;
padding-right: 5px;
font-size:15px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
background-color: transparent;
border: none;
border-right: 1px solid #aaa;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
color: #999;
cursor: pointer;
font-size: 16px;
font-weight: bold;
padding: 0 4px;
margin:0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
background-color: #f1f1f1;
color: #333;
outline: none
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
margin-left: 5px;
margin-right: auto
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
padding-left: 5px;
padding-right: 2px
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
border-left: 1px solid #aaa;
border-right: none;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px
}
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear {
float: left;
margin-left: 10px;
margin-right: auto
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
border: 1px solid #d5d5d5;
outline: 0;
}
.select2-container--default.select2-container--disabled .select2-selection--multiple {
background-color: #eee;
cursor: default
}
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
display: none
}
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
border-top-left-radius: 0;
border-top-right-radius: 0
}
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0
}
.select2-container--default .select2-search--dropdown .select2-search__field {
border: 1px solid #aaa
}
.select2-container--default .select2-search--inline .select2-search__field {
background: transparent;
border: none;
outline: 0;
box-shadow: none;
-webkit-appearance: textfield;
height:40px;
}
.select2-container--default .select2-search--inline .select2-search__field::placeholder{font-size:16px;}
.select2-container--default .select2-results>.select2-results__options {
max-height: 200px;
overflow-y: auto
}
.select2-container--default .select2-results__option .select2-results__option {
padding-left: 1em
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
padding-left: 0
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
margin-left: -1em;
padding-left: 2em
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -2em;
padding-left: 3em
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -3em;
padding-left: 4em
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -4em;
padding-left: 5em
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -5em;
padding-left: 6em
}
.select2-container--default .select2-results__option--group {
padding: 0
}
.select2-container--default .select2-results__option--disabled {
color: #999
}
.select2-container--default .select2-results__option--selected {
background-color: #f2f4f9;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
background-color: #5897fb;
color: white
}
.select2-container--default .select2-results__group {
cursor: default;
display: block;
padding: 6px
}
.select2-container--classic .select2-selection--single {
background-color: #f7f7f7;
border: 1px solid #aaa;
border-radius: 4px;
outline: 0;
background-image: -webkit-linear-gradient(top, #fff 50%, #eee 100%);
background-image: -o-linear-gradient(top, #fff 50%, #eee 100%);
background-image: linear-gradient(to bottom, #fff 50%, #eee 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)
}
.select2-container--classic .select2-selection--single:focus {
border: 1px solid #5897fb
}
.select2-container--classic .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px
}
.select2-container--classic .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
height: 26px;
margin-right: 20px
}
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
color: #999
}
.select2-container--classic .select2-selection--single .select2-selection__arrow {
background-color: #ddd;
border: none;
border-left: 1px solid #aaa;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
height: 26px;
position: absolute;
top: 1px;
right: 1px;
width: 20px;
background-image: -webkit-linear-gradient(top, #eee 50%, #ccc 100%);
background-image: -o-linear-gradient(top, #eee 50%, #ccc 100%);
background-image: linear-gradient(to bottom, #eee 50%, #ccc 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)
}
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
border-width: 5px 4px 0 4px;
height: 0;
left: 50%;
margin-left: -4px;
margin-top: -2px;
position: absolute;
top: 50%;
width: 0
}
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
float: left
}
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
border: none;
border-right: 1px solid #aaa;
border-radius: 0;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
left: 1px;
right: auto
}
.select2-container--classic.select2-container--open .select2-selection--single {
border: 1px solid #5897fb
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
background: transparent;
border: none
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0;
background-image: -webkit-linear-gradient(top, #fff 0%, #eee 50%);
background-image: -o-linear-gradient(top, #fff 0%, #eee 50%);
background-image: linear-gradient(to bottom, #fff 0%, #eee 50%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
background-image: -webkit-linear-gradient(top, #eee 50%, #fff 100%);
background-image: -o-linear-gradient(top, #eee 50%, #fff 100%);
background-image: linear-gradient(to bottom, #eee 50%, #fff 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)
}
.select2-container--classic .select2-selection--multiple {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
cursor: text;
outline: 0;
padding-bottom: 5px;
padding-right: 5px
}
.select2-container--classic .select2-selection--multiple:focus {
border: 1px solid #5897fb
}
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
display: none
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #aaa;
border-radius: 4px;
display: inline-block;
margin-left: 5px;
margin-top: 5px;
padding: 0
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {
cursor: default;
padding-left: 2px;
padding-right: 5px
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
background-color: transparent;
border: none;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
color: #888;
cursor: pointer;
font-size: 1em;
font-weight: bold;
padding: 0 4px
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
color: #555;
outline: none
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
margin-left: 5px;
margin-right: auto
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
padding-left: 5px;
padding-right: 2px
}
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px
}
.select2-container--classic.select2-container--open .select2-selection--multiple {
border: 1px solid #5897fb
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0
}
.select2-container--classic .select2-search--dropdown .select2-search__field {
border: 1px solid #aaa;
outline: 0
}
.select2-container--classic .select2-search--inline .select2-search__field {
outline: 0;
box-shadow: none
}
.select2-container--classic .select2-dropdown {
background-color: #fff;
border: 1px solid transparent
}
.select2-container--classic .select2-dropdown--above {
border-bottom: none
}
.select2-container--classic .select2-dropdown--below {
border-top: none
}
.select2-container--classic .select2-results>.select2-results__options {
max-height: 200px;
overflow-y: auto
}
.select2-container--classic .select2-results__option--group {
padding: 0
}
.select2-container--classic .select2-results__option--disabled {
color: grey
}
.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {
background-color: #3875d7;
color: #fff
}
.select2-container--classic .select2-results__group {
cursor: default;
display: block;
padding: 6px
}
.select2-container--classic.select2-container--open .select2-dropdown {
border-color: #5897fb
}

View File

@ -3,7 +3,7 @@
/* sub layout */
.container {width: 100%; min-height: 650px; position: relative; display: inline-block; box-sizing: border-box; margin-top: 130px; }
.container .inner{max-width: 1440px; width: 100%; padding: 0 20px; margin: 60px auto 76px auto; display: flex; box-sizing: border-box; justify-content: space-between;}
.container .inner{max-width: 1440px; width: 100%; padding: 0 20px; margin: 60px auto 76px auto; /*display: flex;*/ box-sizing: border-box; justify-content: space-between;}
.container .inner .cont_wrap {width: 100%;}
.cont_nav{width: 100%; height: 60px; background-color: #2353b5; position: fixed; top: 134px; z-index: 10;}
@ -359,11 +359,29 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
.tb_list02 table .btnType04 {border-radius:5px; padding:5px 10px; font-size:15px;}
.tb_list02 table .btnType06 {border-radius:5px; padding:5px 10px; font-size:15px;}
/*체험교실대시보드*/
/*체험교실대시보드 - 5단계(감리용)*/
.ex_process {display:flex; justify-content:space-between; background:#f5f5f5; border:1px solid #cbcbcb; width:100%; border-radius:10px; margin: 0 0 40px 0; }
.ex_process li {position:relative; background-position:25 center; background-repeat: no-repeat; width:20%; color:#666; font-size:22px; font-weight:500; letter-spacing:-0.5; }
.ex_process li a {width:100%; padding:0; box-sizing: border-box; padding:45px 0 45px 125px ;}
.ex_process li.p_1 {background-image: url(../images/content/ex_process1.png); background-position:50px center;}
.ex_process li.p_2 {background-image: url(../images/content/ex_process2.png); background-position:50px center;}
.ex_process li.p_3 {background-image: url(../images/content/ex_process3.png); background-position:50px center;}
.ex_process li.p_4 {background-image: url(../images/content/ex_process4.png); background-position:50px center;}
.ex_process li.p_5 {background-image: url(../images/content/ex_process5.png); background-position:50px center;}
.ex_process li.p_1_on {background-image: url(../images/content/ex_process1_on.png); background-position:50px center; background-color:#f37632; border-radius:10px; color:#fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);}
.ex_process li.p_2_on {background-image: url(../images/content/ex_process2_on.png); background-position:50px center; background-color:#f37632; border-radius:10px; color:#fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);}
.ex_process li.p_3_on {background-image: url(../images/content/ex_process3_on.png); background-position:50px center; background-color:#f37632; border-radius:10px; color:#fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);}
.ex_process li.p_4_on {background-image: url(../images/content/ex_process4_on.png); background-position:50px center; background-color:#f37632; border-radius:10px; color:#fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);}
.ex_process li.p_5_on {background-image: url(../images/content/ex_process5_on.png); background-position:50px center; background-color:#f37632; border-radius:10px; color:#fff; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);}
.ex_process li::after {position:absolute; content:""; width:1px; height:60px; background-color: #d5d5d5; right: 0; align-items: center; margin:-85px 0 0 0;}
.ex_process li.p_1_on::after, li.p_2_on::after, li.p_3_on::after, li.p_4_on::after, li.p_5::after, li.p_5_on::after {display:none; }
/*체험교실대시보드 7단계
.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;}
*/
/* 첨부파일 */
.tb_type01.attach {margin-bottom: 10px;}
@ -830,6 +848,9 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
.mypage_wrap .mypage li{width: calc((100% - 45px)/2); margin: 0 0 40px 0;}
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 67px); height: calc(100% - 116px); padding: 7px 7px 11px 7px; margin: 21px auto 0 auto;}
.mypage_wrap .mypage_table .right{margin: 0 40px 0 0;}
.tb_tit01{display: block;}
.tb_tit01 .btn_wrap button{margin: 10px 0 0 0;}
}
@media all and (max-width: 1280px){
@ -854,9 +875,27 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
/* 강사유형 선택 */
.sel_tpye {margin: 100px 120px 24px 120px;}
/*체험교실대시보드*/
.ex_process li {font-size:18px; padding:8px 3px 10px 3px; border-radius:5px; width:12%; line-height:20px; display: flex; align-items: center; justify-content: center;}
/*체험교실대시보드 5단계 (감리용)*/
.ex_process {background:#f5f5f5; border:1px solid #cbcbcb; width:100%; border-radius:10px; margin: 0; margin:0 0 30px 0; }
.ex_process li {position:relative; background-position:25 center; background-repeat: no-repeat; width:20%; color:#666; font-size:17px; letter-spacing: -1px; font-weight:500;}
.ex_process li a { padding:20px 0; text-align:center;}
.ex_process li.p_1_on {background-image: none;}
.ex_process li.p_2_on {background-image: none;}
.ex_process li.p_3_on {background-image: none;}
.ex_process li.p_4_on {background-image: none;}
.ex_process li.p_5_on {background-image: none;}
.ex_process li.p_1 {background-image: none;}
.ex_process li.p_2 {background-image: none;}
.ex_process li.p_3 {background-image: none;}
.ex_process li.p_4 {background-image: none;}
.ex_process li.p_5 {background-image: none;}
.ex_process li::after {position:absolute; content:""; width:1px; height:30px; background-color: #d5d5d5; right: 0; margin:-45px 0 0 0;}
.ex_process li.p_1_on::after, li.p_2_on::after, li.p_3_on::after, li.p_4_on::after, li.p_5_on::after {display:none; }
/*체험교실대시보드 7단계
.ex_process li {font-size:18px; padding:8px 3px 10px 3px; border-radius:5px; width:12%; line-height:20px; display: flex; align-items: center; justify-content: center;}
*/
}
@media all and (max-width: 860px){
@ -881,7 +920,8 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
.tb_tit01 .tb_tit01_left p {font-size: 20px;}
.btn_wrap {position: relative;}
.btn_wrap button {display: none; height: 40px; padding: 0 20px; font-size: 16px;}
/*.btn_wrap button {display: none; height: 40px; padding: 0 20px; font-size: 16px;} 1123*/
.btn_wrap.btn_layout01 button {height: 40px; padding: 0 20px; font-size: 16px;}
.btn_wrap button.m_btn_block {display: inline-block;}
.btn_wrap.btn_layout01>.btn_right button.m_btn_block:nth-child(2) {margin-top: 5px;}
.survey_btn_wrap.btn_layout01>.btn_left {display: none;}
@ -1062,6 +1102,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
.mypage_wrap .mypage{margin: 0 0 -40px 0;}
.mypage_wrap .mypage li{width: calc((100% - 26px)/2); margin: 0 0 25px 0;}
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 63px); height: calc(100% - 113px); padding: 9px 7px 8px 7px; margin: 21px auto 0 auto;}
.time_layer.on{position:fixed; width:100%; top:calc(100% - 143px); left:0; border:0;}
}
@media all and (max-width: 560px){
@ -1071,6 +1112,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
.edu_wrap .tb_type01 table tbody .edu_sus_num li p b::after{display: none;}
.edu_wrap .tb_type01 table tbody .edu_sus_num li .num{margin: 10px 0 10px 5px;}
.edu_wrap .edu_img img{width: 100%;}
.btn_wrap.btn_layout01 button {padding:0 7px;}/*1123*/
}
@media all and (max-width: 520px) {