vo re commit

This commit is contained in:
hylee 2023-11-27 12:12:39 +09:00
parent 4c671acf57
commit 7f380f2a3d
7 changed files with 355 additions and 12 deletions

View File

@ -405,6 +405,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
private String docFormAtchFileId; //요청 서류 양식 파일 아이디
private String sbmtAtchFileId; //제출 서류 파일 아이디
private String sbmtId; //제출자
private Boolean qestRsltExists; //설문여부
@ -1771,6 +1773,12 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
public void setExtraPayYn(String extraPayYn) {
this.extraPayYn = extraPayYn;
}
public Boolean getQestRsltExists() {
return qestRsltExists;
}
public void setQestRsltExists(Boolean qestRsltExists) {
this.qestRsltExists = qestRsltExists;
}
}

View File

@ -158,6 +158,9 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
private String start;
private String send;
private String chrgNm;
private String insttNm;
@ -771,6 +774,18 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
public void setSend(String send) {
this.send = send;
}
public String getChrgNm() {
return chrgNm;
}
public void setChrgNm(String chrgNm) {
this.chrgNm = chrgNm;
}
public String getInsttNm() {
return insttNm;
}
public void setInsttNm(String insttNm) {
this.insttNm = insttNm;
}
}

View File

@ -123,12 +123,22 @@
<select id="VEEduMIXDAO.selectList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
/* VEEduMIXDAO.selectList */
SELECT
qe.QESTNR_ID AS qestnrId , /* 설문했으면 ID가 있음 */
vadi.APLCT_STATE_CD AS aplctStateCd, /* 이수 상태 */
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
vadi.CNCL_CN AS cnclCn,
le.MBER_NM AS userNm,
<include refid="VEEduMIXDAO.select_column_name"/>
<include refid="VEEduMIXDAO.select_column_name"/>,
CASE
WHEN EXISTS (/* 설문조사 */
SELECT
1
FROM
LETTNQESTNRRSLTDETAIL lersltD
WHERE
lersltD.respond_id = a.USER_ID
AND a.edu_aplct_ord = lersltD.edu_aplct_ord ) THEN 1
ELSE 0
END AS qestRsltExists
FROM
<include refid="VEEduMIXDAO.table_name"/> a
JOIN ve_prcs_aplct_prd vpap ON
@ -138,8 +148,6 @@
/* AND vpap.PRCS_APLCT_PRD_ORD = vadi.PRCS_APLCT_PRD_ORD */
JOIN LETTNGNRLMBER le ON
a.USER_ID = le.MBER_ID
LEFT JOIN LETTNQESTNRINFO qe ON
a.USER_ID = qe.FRST_REGISTER_ID
WHERE
1=1
<isNotEmpty property="prcsOrd">

View File

@ -418,6 +418,8 @@
<th>신청자</th>
<th>교육이수여부</th>
<th>교육이수상태변경</th>
<th>설문조사</th>
<th>이수증</th>
</tr>
</thead>
<tbody>
@ -438,6 +440,26 @@
<button type="button" class="btn_type04" onclick="fn_statusChg('<c:out value="${list.eduAplctOrd }" />', '20')">이수</button>
<button type="button" class="btn_type05" onclick="fn_statusChg('<c:out value="${list.eduAplctOrd }" />', '10')">미이수</button>
</td>
<td>
<c:choose>
<c:when test="${list.qestRsltExists }">
<button type="button" class="btn_type04" onclick="fn_qestnr('<c:out value="${list.qestnrId }"/>');">설문결과</button>
</c:when>
<c:otherwise>
미입력
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${list.qestRsltExists }">
<button type="button" title="이수증" class="btn_type04" onclick="fncCmpltCrtfc('<c:out value="${info.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증</button>
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
</tr>
</c:forEach>
</c:when>
@ -471,5 +493,26 @@
</div>
</form:form>
<!-- //cont -->
<script src="http://119.193.215.98:8093/ReportingServer/html5/js/crownix-viewer.min.js"></script>
<link rel="stylesheet" type="text/css" href="http://119.193.215.98:8093/ReportingServer/html5/css/crownix-viewer.min.css">
<script>
/*
* 오버레이 방식
*/
function fncCmpltCrtfc(p_prcsAplctPrdOrd, p_eduAplctOrd){
var viewer = new m2soft.crownix.Viewer('http://119.193.215.98:8093/ReportingServer/service');
viewer.hideToolbarItem(["save"]);
viewer.showToolbarItem(["print_pdf"]);
//viewer.openFile('cmplt_crtfc_20231030.mrd');
//viewer.openFile('cmplt_crtfc_20231030.mrd', '/rfn [cmplt_crtfc_20231030.json]');
viewer.openFile('cmplt_crtfc_20231030.mrd', '/rf [http://119.193.215.98:9989/offedu/ve/aplct/fndtnEnhanceTrn/fndtnEduAplctCmpltCrtfcAjax.do?prcsAplctPrdOrd='+p_prcsAplctPrdOrd+'&eduAplctOrd='+p_eduAplctOrd+']');
}
</script>
</body>
</html>

View File

@ -470,8 +470,8 @@
<th>신청일</th>
<th>확정여부</th>
<th>이수여부</th>
<th>설문조사</th>
<th>이수증</th>
<!-- <th>설문조사</th>
<th>이수증</th> -->
</tr>
</thead>
<tbody>
@ -495,26 +495,26 @@
<td>
<ve:code codeId="VEA003" code="${list.aplctStateCd}"/>
</td>
<td>
<%-- <td>
<c:choose>
<c:when test="${list.qestnrId }">
<c:when test="${list.qestRsltExists }">
<button type="button" class="btn_type04" onclick="fn_qestnr('<c:out value="${list.qestnrId }"/>');">설문결과</button>
</c:when>
<c:otherwise>
미입력
미입력
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${list.qestnrId }">
<%-- <button type="button" class="btnType04" onclick="fn_qestnr('<c:out value="${list.qestnrId }"/>');">출력</button> --%>
<button type="button" class="btnType04" onclick="fn_qestnr('<c:out value="${list.qestnrId }"/>');">출력</button>
<button type="button" class="btn_type04">출력</button>
</c:when>
<c:otherwise>
</c:otherwise>
</c:choose>
</td>
</td> --%>
</tr>
</c:forEach>
</c:when>

View File

@ -0,0 +1,267 @@
<!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"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%
/**
* @Class Name : instrCostPopup.jsp
* @Description : 강사비용 팝업
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2021.08.09 김봉호 최초 생성
* @author 안주영
* @since 2022.01.04
* @version 1.0
* @see
*
*/
%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
</script>
<title>강의배정팝업</title>
<script type="text/javaScript" language="javascript">
$(document).ready(function(){
numberSum();
$("input:text[numberOnly]").on("keyup", function() {
$(this).val($(this).val().replace(/[^0-9]/g,""));
$(this).val($(this).val().replace(/\B(?=(\d{3})+(?!\d))/g, ','));
numberSum();
});
});
function numberSum(){
// 강사료 계산 [시작]
var instrFee = $("#instrFee").val();
instrFee = instrFee.replaceAll(",", "");
var trafficFee = $("#trafficFee").val();
trafficFee = trafficFee.replaceAll(",", "");
var instrFeeSum = Number(instrFee) + Number(trafficFee);
$("#instrFeeSum").val(instrFeeSum);
$("#instrFeeSum").val($("#instrFeeSum").val().replace(/\B(?=(\d{3})+(?!\d))/g, ','));
// 강사료 계산 [끝]
// 전체 계산 [시작]
var totalSum;
$("#totalSum").val(instrFeeSum);
$("#totalSum").val($("#totalSum").val().replace(/\B(?=(\d{3})+(?!\d))/g, ','));
// 전체 계산 [끝]
}
function fnSaveFee(flag){
var msg = "";
var msgDetail = "";
$("#instrFee").val($("#instrFee").val().replaceAll(',',''));
$("#trafficFee").val($("#trafficFee").val().replaceAll(',',''));
if(flag == 'Y') {
msg = "확정";
msgDetail = "(확정 후에는 수정이 불가능합니다.)"
} else {
msg = "저장(미확정)"
}
$("#sbmtYn").val(flag);
var data1 = new FormData(document.getElementById("createForm"));
if (confirm(msg+" 하시겠습니까?" +"\n"+msgDetail)) {
$.ajax({
type: "POST",
url: "${pageContext.request.contextPath}/kccadr/oprtn/adultVisitEdu/popup/instrFeeRegAjax.do",
//data: JSON.stringify(data),
data: data1,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
if(returnData.result == 'success'){
alert("정상적으로 "+ msg +" 되었습니다.");
opener.location.reload();
self.close();
}else{
alert(returnData.message);
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fncPopClose(){
self.close();
}
</script>
</head>
<body>
<form:form id="createForm" name="createForm" method="post" commandName="vEInstrFeeAcmdtVO" onsubmit="return false;">
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="<c:out value="${info.eduAplctOrd}" />">
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value="${info.eduChasiOrd}" />">
<input type="hidden" name="instrFeeOrd" id="instrFeeOrd" value="<c:out value="${info.instrFeeOrd}" />" />
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
<div class="area_popup">
<div class="cont_popup">
<c:if test="${empty info or info.sbmtYn ne 'Y'}">
<div class="pop_tb_tit01">
<p>강사료</p>
</div>
<table class="pop_tb_type02">
<colgroup>
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>강사료</p>
</th>
<td><input type="text" numberOnly id="instrFee" name="instrFee" value="<fmt:formatNumber value="${info.instrFee}" pattern="#,###"/>"/></td>
</tr>
<tr>
<th scope="row">
<p>교통비</p>
</th>
<td><input type="text" numberOnly id="trafficFee" name="trafficFee" value="<fmt:formatNumber value="${info.trafficFee}" pattern="#,###"/>"/></td>
</tr>
<tr>
<th scope="row">
<p>강사료 합계</p>
</th>
<td><!-- 합계 -->
<input type="text" id="instrFeeSum" name="instrFeeSum" disabled="disabled" value=""/>
</td>
</tr>
</tbody>
</table>
<div class="pop_tb_tit01">
<p>지급 총액</p>
※ 지급 총액은 세전 금액입니다.
</div>
<table class="pop_tb_type02">
<colgroup>
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>강사료 합계
</th>
<td><!-- 강사료합계-세금합계 -->
<input type="text" id="totalSum" name="totalSum" disabled="disabled" value=""/>
</td>
</tr>
</tbody>
</table>
</c:if>
<c:if test="${!empty info and info.sbmtYn eq 'Y'}">
<div class="pop_tb_tit01">
<p>강사료</p>
</div>
<table class="pop_tb_type02">
<colgroup>
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>강사료</p>
</th>
<td>
<fmt:formatNumber value="${info.instrFee}" pattern="#,###"/>
</td>
</tr>
<tr>
<th scope="row">
<p>교통비</p>
</th>
<td>
<fmt:formatNumber value="${info.trafficFee}" pattern="#,###"/>
</td>
</tr>
<tr>
<th scope="row">
<p>강사료 합계</p>
</th>
<td><!-- 합계 -->
<fmt:formatNumber value="${info.instrFeeSum}" pattern="#,###"/>
</td>
</tr>
</tbody>
</table>
<div class="pop_tb_tit01">
<p>지급 총액</p>
※ 지급 총액은 세전 금액입니다.
</div>
<table class="pop_tb_type02">
<colgroup>
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>강사료 합계
<!-- <br>-세금 합계 -->
</p>
</th>
<td><!-- 강사료 합계 - 세금 합계 -->
<fmt:formatNumber value="${info.totalSum}" pattern="#,###"/>
</td>
</tr>
<tr>
<th scope="row">
<p>확정여부</p>
</th>
<td>
<c:if test="${info.sbmtYn eq 'Y'}">확정</c:if>
<c:if test="${info.sbmtYn eq 'N'}">미확정</c:if>
</td>
</tr>
</tbody>
</table>
</c:if>
<div class="btn_wrap_pop btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
<c:if test="${info != null }">
<c:if test="${info.sbmtYn ne 'Y'}">
<button type="button" class="btn_type04" onclick="fnSaveFee('Y')">확정</button>
<button type="button" class="btn_type04" onclick="fnSaveFee('N')">저장</button>
</c:if>
</c:if>
<button type="button" class="btn_type02" onclick="fncPopClose()">닫기</button>
</div>
<div class="btn_right">
</div>
</div>
</div>
</div>
</form:form>
</body>
</html>

View File

@ -494,7 +494,9 @@ $(document).ready(function(){
* 오버레이 방식
*/
function fncCmpltCrtfc(p_prcsAplctPrdOrd, p_eduAplctOrd){
console.log('p_eduAplctOrd : ', p_eduAplctOrd);
console.log('p_prcsAplctPrdOrd : ', p_prcsAplctPrdOrd);
var viewer = new m2soft.crownix.Viewer('http://119.193.215.98:8093/ReportingServer/service');
viewer.hideToolbarItem(["save"]);