feat : PMS:#3225 강사 특이사항 메모 기능 구현 완료
This commit is contained in:
parent
beac342f23
commit
bf04903d9e
@ -34,6 +34,8 @@ public interface VEInstrDetailService {
|
||||
VEInstrDetailVO selectSlctnTeacher(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
int updateInstrMemo(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
int updateInstrSigMemo(VEInstrDetailVO vEInstrDetailVO) throws Exception;
|
||||
|
||||
|
||||
//EgovMap selectAdrRpplInfo(AdjstChangeDateVO adjstChangeDateVO) throws Exception;
|
||||
|
||||
@ -157,7 +157,9 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String mngNmbrYr;
|
||||
|
||||
private String memo;
|
||||
private String memo; // 비공개 메모
|
||||
|
||||
private String sigMemo; // 특이사항 메모
|
||||
|
||||
public String getLrnTmSum() {
|
||||
return lrnTmSum;
|
||||
@ -795,4 +797,11 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setMngNmbrYr(String mngNmbrYr) {
|
||||
this.mngNmbrYr = mngNmbrYr;
|
||||
}
|
||||
public String getSigMemo() {
|
||||
return sigMemo;
|
||||
}
|
||||
public void setSigMemo(String sigMemo) {
|
||||
this.sigMemo = sigMemo;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -81,10 +81,14 @@ public class VEInstrDetailDAO extends EgovAbstractDAO {
|
||||
public VEInstrDetailVO selectSlctnTeacher(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
return (VEInstrDetailVO) select("VEInstrDetailDAO.selectSlctnTeacher", vEInstrDetailVO);
|
||||
}
|
||||
|
||||
|
||||
public int updateInstrMemo(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
return update("VEInstrDetailDAO.updateInstrMemo", vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public int updateInstrSigMemo(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
return update("VEInstrDetailDAO.updateInstrSigMemo", vEInstrDetailVO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -85,6 +85,11 @@ public class VEInstrDetailServiceImpl implements VEInstrDetailService {
|
||||
return vEInstrDetailDAO.updateInstrMemo(vEInstrDetailVO);
|
||||
|
||||
}
|
||||
|
||||
public int updateInstrSigMemo(VEInstrDetailVO vEInstrDetailVO) throws Exception {
|
||||
return vEInstrDetailDAO.updateInstrSigMemo(vEInstrDetailVO);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -146,6 +146,14 @@ public class EduAplctMngAdultController {
|
||||
vEEduAplctVO = this.setPagingStep2(vEEduAplctVO, paginationInfo);
|
||||
vEEduAplctVO.setNotiUserId(user.getUniqId());
|
||||
vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
|
||||
System.out.println("orderByQuery getOrderByQuery :: "+ vEEduAplctVO.getOrderByQuery());
|
||||
|
||||
// OrderByQuery(교육희망일자) 값이 비여있으면 desc로 초기화 함 => hylee
|
||||
if(StringUtils.isEmpty(vEEduAplctVO.getOrderByQuery())) {
|
||||
vEEduAplctVO.setOrderByQuery("desc");
|
||||
}
|
||||
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO);
|
||||
vEEduAplctVOList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduAplctVOList);
|
||||
//3.pageing step3
|
||||
|
||||
@ -2514,6 +2514,49 @@ public class OprtnInstrTngrPrflContoller {
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
/**
|
||||
* 특이 사항 메모저장
|
||||
*/
|
||||
@RequestMapping("/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrSigMemoUpdateAjax.do")
|
||||
public ModelAndView instrSigMemoUpdateAjax(
|
||||
@ModelAttribute("vEInstrDetailVO") VEInstrDetailVO vEInstrDetailVO
|
||||
, 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", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
//로그인 처리====================================
|
||||
|
||||
//LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
|
||||
int successCnt = 0;
|
||||
try {
|
||||
|
||||
vEInstrDetailService.updateInstrSigMemo(vEInstrDetailVO);
|
||||
|
||||
successCnt = successCnt+1;
|
||||
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
if (successCnt == 0) {
|
||||
modelAndView.addObject("result", "fail");
|
||||
} else {
|
||||
modelAndView.addObject("result", "success");
|
||||
}
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
|
||||
@ -778,8 +778,18 @@
|
||||
, A.EDU_APLCT_ORD DESC
|
||||
</isEmpty>
|
||||
<isNotEmpty property="orderByQuery">
|
||||
, $orderByQuery$
|
||||
<isEqual property="orderByQuery" compareValue="desc">
|
||||
, CC.EDU_HOPE_DT desc
|
||||
</isEqual>
|
||||
<isEqual property="orderByQuery" compareValue="asc">
|
||||
, CC.EDU_HOPE_DT asc
|
||||
</isEqual>
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
<!-- <isNotEmpty property="orderByQuery"> -->
|
||||
<!-- , $orderByQuery$ -->
|
||||
<!-- </isNotEmpty> -->
|
||||
<isNotEqual property="mode" compareValue="EXCEL">
|
||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||
</isNotEqual>
|
||||
|
||||
@ -127,7 +127,8 @@
|
||||
a.appt_dt AS apptDt,
|
||||
a.hchk_dt AS hchkDt,
|
||||
a.rmrks AS rmrks,
|
||||
a.memo AS memo
|
||||
a.memo AS memo,
|
||||
a.sig_memo AS sigMemo
|
||||
|
||||
</sql>
|
||||
|
||||
@ -550,4 +551,18 @@
|
||||
INSTR_DIV = #instrDiv#
|
||||
</update>
|
||||
|
||||
<!-- 강사 메모 수정 U -->
|
||||
<update id="VEInstrDetailDAO.updateInstrSigMemo" parameterClass="VEInstrDetailVO">
|
||||
UPDATE
|
||||
VE_INSTR_DETAIL
|
||||
SET
|
||||
SIG_MEMO = #sigMemo#
|
||||
WHERE
|
||||
USER_ID = #userId#
|
||||
AND
|
||||
INSTR_DETAIL_ORD = #instrDetailOrd#
|
||||
AND
|
||||
INSTR_DIV = #instrDiv#
|
||||
</update>
|
||||
|
||||
</sqlMap>
|
||||
|
||||
@ -22,6 +22,12 @@
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
$('.eduHope').click(function(){
|
||||
var $tag = $('#orderByQuery');
|
||||
$tag.val($(this).data('info'));
|
||||
linkPage(1);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function linkPage(pageNo){
|
||||
@ -70,7 +76,8 @@
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="orderByQuery" id="orderByQuery" value="<c:out value="${vEEduAplctVO.orderByQuery}" />" />
|
||||
<!-- <input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" /> -->
|
||||
|
||||
<div class="cont_wrap">
|
||||
<div class="box">
|
||||
@ -180,7 +187,16 @@
|
||||
<thead>
|
||||
<tr>
|
||||
<th>번호</th>
|
||||
<th>교육희망일자</th>
|
||||
<th>교육희망일자
|
||||
<c:choose>
|
||||
<c:when test="${vEEduAplctVO.orderByQuery eq 'asc' }">
|
||||
<img style="cursor:pointer;" class="eduHope" data-info="desc" src="<c:url value='/images/sortUp.png' />" />
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<img style="cursor:pointer;" class="eduHope" data-info="asc" src="<c:url value='/images/sortDown.png' />" />
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</th>
|
||||
<th>신청일자</th>
|
||||
<th>신청유형</th>
|
||||
<th>기관(단체)명</th>
|
||||
|
||||
@ -289,6 +289,32 @@
|
||||
});
|
||||
}
|
||||
|
||||
function updateHiddenSigMemo(){
|
||||
$("#sigMemo").val($("#sigMemoCn").val());
|
||||
|
||||
var data1 = new FormData(document.getElementById("hiddenSigMemoForm"));
|
||||
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url:"${pageContext.request.contextPath}/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrSigMemoUpdateAjax.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>
|
||||
</head>
|
||||
@ -300,6 +326,13 @@
|
||||
<input type="hidden" name="memo" id="memo" value="" />
|
||||
</form>
|
||||
|
||||
<form id="hiddenSigMemoForm" name="hiddenSigMemoForm" 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="sigMemo" id="sigMemo" value="" />
|
||||
</form>
|
||||
|
||||
<form:form id="detailForm" name="detailForm" commandName="vEInstrDetailVO" method="post" >
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrDetailVO.pageIndex}'/>"/>
|
||||
<input type="hidden" name="searchStartDt" value="<c:out value="${vEInstrDetailVO.searchStartDt}" />" />
|
||||
@ -564,6 +597,31 @@
|
||||
</tbody>
|
||||
</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="sigMemoCn" id="sigMemoCn"><c:out value="${info.sigMemo}" /></textarea>
|
||||
<button type="button" class="btn_type08" onclick="updateHiddenSigMemo(); return false;">메모 저장</button>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- 비공개 메보 정보 끝-->
|
||||
<div id="importDiv">
|
||||
<c:import url="/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrLctrStngPopup.do" charEncoding="utf-8"></c:import>
|
||||
|
||||
BIN
src/main/webapp/images/sortDown.png
Normal file
BIN
src/main/webapp/images/sortDown.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1018 B |
BIN
src/main/webapp/images/sortUp.png
Normal file
BIN
src/main/webapp/images/sortUp.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1012 B |
Loading…
Reference in New Issue
Block a user