2023-12-20 18:16 강사활동확인서 문서번호 수정

This commit is contained in:
myname 2023-12-20 18:17:22 +09:00
parent 02be7a4723
commit 9245fd93e9
12 changed files with 1333 additions and 903 deletions

View File

@ -69,6 +69,13 @@ public class AdrInnorixFileVO extends ComDefaultVO implements Serializable {
public String instrDetailOrd = "";//강사 고유PK
//강의활동확인서 컬럼 추가
private String sex = ""; //성별
private String purpose = ""; //용도
private String bsnsNmbr = ""; //사업자등록번호
private String bsnsNm = ""; //사업자명
private String docuNmbr = ""; //문서번호
public String getFileType() {
return fileType;
@ -190,6 +197,46 @@ public class AdrInnorixFileVO extends ComDefaultVO implements Serializable {
this.instrDetailOrd = instrDetailOrd;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPurpose() {
return purpose;
}
public void setPurpose(String purpose) {
this.purpose = purpose;
}
public String getBsnsNm() {
return bsnsNm;
}
public void setBsnsNm(String bsnsNm) {
this.bsnsNm = bsnsNm;
}
public String getBsnsNmbr() {
return bsnsNmbr;
}
public void setBsnsNmbr(String bsnsNmbr) {
this.bsnsNmbr = bsnsNmbr;
}
public String getDocuNmbr() {
return docuNmbr;
}
public void setDocuNmbr(String docuNmbr) {
this.docuNmbr = docuNmbr;
}

View File

@ -545,6 +545,14 @@ public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements I
vEInstrActvtHstryVO.setFrstRegisterId(adrInnorixFileVO.getUniqId());
vEInstrActvtHstryVO.setLastUpdusrId(adrInnorixFileVO.getUniqId());
vEInstrActvtHstryVO.setSex(adrInnorixFileVO.getSex());
vEInstrActvtHstryVO.setPurpose(adrInnorixFileVO.getPurpose());
vEInstrActvtHstryVO.setBsnsNmbr(adrInnorixFileVO.getBsnsNmbr());
vEInstrActvtHstryVO.setBsnsNm(adrInnorixFileVO.getBsnsNm());
vEInstrActvtHstryVO.setDocuNmbr(adrInnorixFileVO.getDocuNmbr());
vEInstrDetailActvtHstryDAO.insert(vEInstrActvtHstryVO);
} catch (Exception e) {

View File

@ -47,6 +47,16 @@ public class VEInstrDetailActvtHstryVO extends ComDefaultVO implements Serializa
private String selectPagingListQuery;
private String userId;
//강의활동확인서 컬럼 추가
private String sex = ""; //성별
private String purpose = ""; //용도
private String bsnsNmbr = ""; //사업자등록번호
private String bsnsNm = ""; //사업자명
private String docuNmbr = ""; //문서번호
private String docuNmbrDp = ""; //문서번호-표시용
public String getInstrDetailActvtHstryOrd() {
return instrDetailActvtHstryOrd;
@ -162,6 +172,42 @@ public class VEInstrDetailActvtHstryVO extends ComDefaultVO implements Serializa
public void setUserId(String userId) {
this.userId = userId;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPurpose() {
return purpose;
}
public void setPurpose(String purpose) {
this.purpose = purpose;
}
public String getBsnsNmbr() {
return bsnsNmbr;
}
public void setBsnsNmbr(String bsnsNmbr) {
this.bsnsNmbr = bsnsNmbr;
}
public String getBsnsNm() {
return bsnsNm;
}
public void setBsnsNm(String bsnsNm) {
this.bsnsNm = bsnsNm;
}
public String getDocuNmbr() {
return docuNmbr;
}
public void setDocuNmbr(String docuNmbr) {
this.docuNmbr = docuNmbr;
}
public String getDocuNmbrDp() {
return docuNmbrDp;
}
public void setDocuNmbrDp(String docuNmbrDp) {
this.docuNmbrDp = docuNmbrDp;
}

View File

@ -6,7 +6,6 @@ import java.util.Properties;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
@ -24,7 +23,6 @@ import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.cmm.VeConstants;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryVO;

View File

@ -26,6 +26,12 @@
, last_updt_pnttm
, last_updusr_id
, docu_nmbr
, sex
, purpose
, bsns_nmbr
, bsns_nm
</sql>
<!-- 조회용 공통 컬럼 명 -->
@ -42,6 +48,12 @@
, a.frst_register_id as frstRegisterId
, TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS frstRegistPnttm
, a.last_updusr_id as lastUpdusrId
, a.docu_nmbr AS docuNmbr
, a.sex
, a.purpose
, a.bsns_nmbr AS bsnsNmbr
, a.bsns_nm AS bsnsNm
</sql>
<insert id="VEInstrDetailActvtHstryDAO.insert" parameterClass="VEInstrDetailActvtHstryVO">
@ -61,6 +73,12 @@
, #frstRegisterId#
, ''
, #lastUpdusrId#
, #docuNmbr#
, #sex#
, #purpose#
, #bsnsNmbr#
, #bsnsNm#
)
</insert>
@ -79,6 +97,7 @@
/* VEInstrDetailActvtHstryDAO.selectPagingList */
SELECT
COUNT(1) OVER() AS totCnt ,
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
b.INSTR_NM AS instrNm ,
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
FROM
@ -110,6 +129,7 @@
<select id="VEInstrDetailActvtHstryDAO.findById" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
/*VEInstrDetailActvtHstryDAO.findById */
SELECT
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
b.user_id AS userId ,
b.instr_nm as instrNm ,
b.phone ,
@ -117,6 +137,8 @@
b.addr ,
b.addr_detail as addrDetail ,
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
FROM
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
JOIN ve_instr_detail b
@ -133,6 +155,22 @@
<include refid="VEInstrDetailActvtHstryDAO.table_name" />
SET
state_cd = #stateCd#
<isEqual property="stateCd" compareValue="30">
, docu_nmbr = NVL(
(
SELECT nvl(max(docu_nmbr),0) AS docuNmbr
FROM ve_instr_detail_actvt_hstry a
WHERE state_cd='30'
AND to_char(a.state_pnttm,'YYYY')=(
SELECT to_char(sysdate,'YYYY')
FROM dual
)
GROUP BY to_char(a.state_pnttm,'YYYY')
),0
)+1
</isEqual>
<isNotEmpty property="cmpnnCn">
, cmpnn_cn = #cmpnnCn#
</isNotEmpty>

View File

@ -89,6 +89,11 @@
</head>
<body>
<form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrActvtHstryVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrActvtHstryVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrActvtHstryVO.searchSortOrd}" />" />
</form>
<form id="updateForm" name="updateForm">
<input type="hidden" name="instrDetailActvtHstryOrd" id="instrDetailActvtHstryOrd" value="${info.instrDetailActvtHstryOrd }"/>
<input type="hidden" name="stateCd" id="stateCd" value=""/>
@ -144,6 +149,7 @@
<th scope="row">상태</th>
<td>
<ve:code codeId="VEA011" code="${info.stateCd}"/>
(${info.stateCd})
</td>
</tr>
<c:if test="${info.stateCd eq 20 }">
@ -167,6 +173,43 @@
<c:out value='${info.addr}'/> <c:out value='${info.addrDetail}'/>
</td>
</tr>
<tr>
<th scope="row">문서번호</th>
<td>
<c:choose>
<c:when test="${info.docuNmbr ne '' and not empty info.docuNmbr}">
<c:out value="${info.docuNmbrDp }" />
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
</tr>
<tr>
<th scope="row">성별</th>
<td>
<c:out value='${info.sex }' />
</td>
</tr>
<tr>
<th scope="row">용도</th>
<td>
<c:out value='${info.purpose }' />
</td>
</tr>
<tr>
<th scope="row">사업자명</th>
<td>
<c:out value='${info.bsnsNm }' />
</td>
</tr>
<tr>
<th scope="row">사업자등록번호</th>
<td>
<c:out value='${info.bsnsNmbr }' />
</td>
</tr>
</tbody>
</table>
</div>
@ -181,8 +224,11 @@
<div class="btn_center">
</div>
<div class="btn_right">
<c:if test="${info.stateCd eq 10}">
<button type="button" class="btn_type05" onclick="fnCnclPopup()">반려</button>
<button type="button" class="btn_type04" onclick="fn_updateCnclUpdate('30');"; return false;">승인</button>
</c:if>
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>

View File

@ -153,7 +153,15 @@
<div class="tb_type01">
<table>
<colgroup>
<col style="width: 5%;">
<col style="width: 60px;">
<col style="width: 150px;">
<col style="width: 60px;">
<col style="width: auto;">
<col style="width: 150px;">
<col style="width: 120px;">
<col style="width: 120px;">
<col style="width: 120px;">
<col style="width: 120px;">
<%-- <col style="width: 10%;"> --%>
<%-- <col style="width: 10%;"> --%>
<%-- <col style="width: 15%;"> --%>
@ -162,8 +170,12 @@
<tr>
<th>번호</th>
<th>강사명</th>
<th>성별</th>
<th>용도</th>
<th>사업자명<br/>사업자등록번호</th>
<th>신청일</th>
<th>처리일</th>
<th>문서번호</th>
<th>발급상태</th>
</tr>
</thead>
@ -176,6 +188,17 @@
<td>
${list.instrNm }
</td>
<td>
<c:out value="${list.sex }" />
</td>
<td>
<c:out value="${list.purpose }" />
</td>
<td>
<c:out value="${list.bsnsNm }" />
<br/>
(<c:out value="${list.bsnsNmbr }" />)
</td>
<td>
${list.aplctPnttm }
</td>
@ -189,6 +212,16 @@
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${list.docuNmbr ne '' and not empty list.docuNmbr}">
<c:out value="${list.docuNmbrDp }" />
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
<td>
<ve:code codeId="VEA011" code="${list.stateCd}"/>
</td>

View File

@ -89,6 +89,11 @@
</head>
<body>
<form id="listForm" name="listForm" method="post">
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrActvtHstryVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrActvtHstryVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrActvtHstryVO.searchSortOrd}" />" />
</form>
<form id="updateForm" name="updateForm">
<input type="hidden" name="instrDetailActvtHstryOrd" id="instrDetailActvtHstryOrd" value="${info.instrDetailActvtHstryOrd }"/>
<input type="hidden" name="stateCd" id="stateCd" value=""/>
@ -144,6 +149,7 @@
<th scope="row">상태</th>
<td>
<ve:code codeId="VEA011" code="${info.stateCd}"/>
(${info.stateCd})
</td>
</tr>
<c:if test="${info.stateCd eq 20 }">
@ -167,6 +173,43 @@
<c:out value='${info.addr}'/> <c:out value='${info.addrDetail}'/>
</td>
</tr>
<tr>
<th scope="row">문서번호</th>
<td>
<c:choose>
<c:when test="${info.docuNmbr ne '' and not empty info.docuNmbr}">
<c:out value="${info.docuNmbrDp }" />
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
</tr>
<tr>
<th scope="row">성별</th>
<td>
<c:out value='${info.sex }' />
</td>
</tr>
<tr>
<th scope="row">용도</th>
<td>
<c:out value='${info.purpose }' />
</td>
</tr>
<tr>
<th scope="row">사업자명</th>
<td>
<c:out value='${info.bsnsNm }' />
</td>
</tr>
<tr>
<th scope="row">사업자등록번호</th>
<td>
<c:out value='${info.bsnsNmbr }' />
</td>
</tr>
</tbody>
</table>
</div>
@ -181,8 +224,11 @@
<div class="btn_center">
</div>
<div class="btn_right">
<c:if test="${info.stateCd eq 10}">
<button type="button" class="btn_type05" onclick="fnCnclPopup()">반려</button>
<button type="button" class="btn_type04" onclick="fn_updateCnclUpdate('30');"; return false;">승인</button>
</c:if>
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>

View File

@ -54,14 +54,14 @@
listForm.pageIndex.value = pageNo ;
listForm.searchCondition.value = $('#searchCondition').val();
listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/oprtn/adultVisitEdu/instrActvtHstryMngList.do'/>";
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/instrActvtHstryMngList.do'/>";
listForm.submit();
}
function fn_goDetail(instrDetailActvtHstryOrd){
var form = document.detailForm;
form.instrDetailActvtHstryOrd.value = instrDetailActvtHstryOrd ;
form.action = "<c:url value='/kccadr/oprtn/adultVisitEdu/instrActvtHstryMngDetail.do'/>";
form.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/instrActvtHstryMngDetail.do'/>";
form.submit();
}
@ -153,7 +153,16 @@
<div class="tb_type01">
<table>
<colgroup>
<col style="width: 5%;">
<col style="width: 60px;">
<col style="width: 150px;">
<col style="width: 60px;">
<col style="width: auto;">
<col style="width: 150px;">
<col style="width: 120px;">
<col style="width: 120px;">
<col style="width: 120px;">
<col style="width: 120px;">
<%-- <col style="width: 10%;"> --%>
<%-- <col style="width: 10%;"> --%>
<%-- <col style="width: 15%;"> --%>
@ -162,8 +171,12 @@
<tr>
<th>번호</th>
<th>강사명</th>
<th>성별</th>
<th>용도</th>
<th>사업자명<br/>사업자등록번호</th>
<th>신청일</th>
<th>처리일</th>
<th>문서번호</th>
<th>발급상태</th>
</tr>
</thead>
@ -174,10 +187,23 @@
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
</td>
<td>
${list.instrNm }
<c:out value="${list.instrNm }" />
</td>
<td>
${list.aplctPnttm }
<c:out value="${list.sex }" />
</td>
<td>
<c:out value="${list.purpose }" />
</td>
<td>
<c:out value="${list.bsnsNm }" />
<br/>
(<c:out value="${list.bsnsNmbr }" />)
</td>
<td>
<c:out value="${list.aplctPnttm }" />
</td>
<td>
<c:choose>
@ -189,13 +215,23 @@
</c:otherwise>
</c:choose>
</td>
<td>
<c:choose>
<c:when test="${list.docuNmbr ne '' and not empty list.docuNmbr}">
<c:out value="${list.docuNmbrDp }" />
</c:when>
<c:otherwise>
-
</c:otherwise>
</c:choose>
</td>
<td>
<ve:code codeId="VEA011" code="${list.stateCd}"/>
</td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
<tr><td colspan="9"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>

View File

@ -1159,6 +1159,11 @@
onclick="fncQustnrPrintList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
)" title="팝업 열림">설문출력</button>
<button type="button" class="btnType04" data-tooltip="sub37_pop20"
onclick="fncQustnrQRPrintList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
)" title="팝업 열림">설문QR</button>
</c:when>
<c:otherwise>
해당설문없음

View File

@ -189,6 +189,15 @@
// 강사활동확인서 신청
function insetDocReq(){
var v_sex = $("input:radio[name=sex]:checked").val();
var v_purpose = $('#purpose').val();
if (v_purpose==''){
alert("용도는 필수입력값 입니다.");
return;
}
//첨부파일 체크 및 요청
if(confirm("신청 하시겠습니까?")){
if(control.getUploadFiles().length > 0){
@ -209,11 +218,20 @@
var url = "<c:url value='/web/common/insertInnorixInstrActvtAjax.do' />";
//선택된 강사 ID
var v_sex = $("input:radio[name=sex]:checked").val();
var sendData = {
"instrDetailOrd": $('#instrDetailOrd').val()
, "innorixFileListVO": data
, "sex": v_sex
, "purpose": $('#purpose').val()
, "bsnsNmbr": $('#bsnsNmbr').val()
, "bsnsNm": $('#bsnsNm').val()
, "successMsg" : "신청이 완료되었습니다."
}
/*
* 공통 : innorixCommon.js
* fn_innorixCmmAjax() 호출 후 status가 성공(OK)이면 실행
@ -794,21 +812,67 @@
<div class="popup_cont">
<div class="cont_body">
<div class="popup_table_top">
<button type="button" class="btnType06">신청서양식 다운로드</button>
<button type="button" class="btnType06"
onclick="location.href='${pageContext.request.contextPath}/cmm/fms/FileDown.do?atchFileId=FILE_000000000001230&amp;fileSn=1'">신청서양식 다운로드</button>
</div>
<%-- <div class="pop_tb_type01">
<div class="pop_tb_type01">
<table>
<colgroup>
<col style="width: 22%;">
<col style="">
</colgroup>
<tr>
<!-- <tr>
<th>취소사유</th>
<td><textarea id="cnclCn" name="cnclCn"></textarea></td>
</tr> -->
<tr>
<th>
<p class="req_text">
<span>필수입력 항목</span>*
</p>
<p>성별</p>
</th>
<td>
<div>
<input type="radio" id="sex_m" name="sex" value="M" checked="checked"
style="margin-top: -4px;"
>남</label>
<input type="radio" id="sex_f" name="sex" value="F"
style="margin-top: -4px;"
>여</label>
</div>
</td>
</tr>
<tr>
<th>
<p class="req_text">
<span>필수입력 항목</span>*
</p>
<p>용도</p>
</th>
<td>
<input type="text" id="purpose" name="purpose" value="" maxlength="30"/>
ex)기관제출용
</td>
</tr>
<tr>
<th>사업자명</th>
<td>
<input type="text" id="bsnsNm" name="bsnsNm" value="" maxlength="50"/>
</td>
</tr>
<tr>
<th>사업자등록번호</th>
<td>
<input type="text" id="bsnsNmbr" name="bsnsNmbr" value="" maxlength="20"/>
</td>
</tr>
</table>
</div> --%>
</div>
<div class="popup_cont upload_area">
<div>
<div class="pop_search_wrap">

View File

@ -217,6 +217,15 @@
// 강사활동확인서 신청
function insetDocReq(){
var v_sex = $("input:radio[name=sex]:checked").val();
var v_purpose = $('#purpose').val();
if (v_purpose==''){
alert("용도는 필수입력값 입니다.");
return;
}
//첨부파일 체크 및 요청
if(confirm("신청 하시겠습니까?")){
if(control.getUploadFiles().length > 0){
@ -237,9 +246,17 @@
var url = "<c:url value='/web/common/insertInnorixInstrActvtAjax.do' />";
//선택된 강사 ID
var v_sex = $("input:radio[name=sex]:checked").val();
var sendData = {
"instrDetailOrd": $('#instrDetailOrd').val()
, "innorixFileListVO": data
, "sex": v_sex
, "purpose": $('#purpose').val()
, "bsnsNmbr": $('#bsnsNmbr').val()
, "bsnsNm": $('#bsnsNm').val()
, "successMsg" : "신청이 완료되었습니다."
}
/*
@ -1021,21 +1038,67 @@
<div class="popup_cont">
<div class="cont_body">
<div class="popup_table_top">
<button type="button" class="btnType06">신청서양식 다운로드</button>
<button type="button" class="btnType06"
onclick="location.href='${pageContext.request.contextPath}/cmm/fms/FileDown.do?atchFileId=FILE_000000000001230&amp;fileSn=1'">신청서양식 다운로드</button>
</div>
<%-- <div class="pop_tb_type01">
<div class="pop_tb_type01">
<table>
<colgroup>
<col style="width: 22%;">
<col style="">
</colgroup>
<tr>
<!-- <tr>
<th>취소사유</th>
<td><textarea id="cnclCn" name="cnclCn"></textarea></td>
</tr> -->
<tr>
<th>
<p class="req_text">
<span>필수입력 항목</span>*
</p>
<p>성별</p>
</th>
<td>
<div>
<input type="radio" id="sex_m" name="sex" value="M" checked="checked"
style="margin-top: -4px;"
>남</label>
<input type="radio" id="sex_f" name="sex" value="F"
style="margin-top: -4px;"
>여</label>
</div>
</td>
</tr>
<tr>
<th>
<p class="req_text">
<span>필수입력 항목</span>*
</p>
<p>용도</p>
</th>
<td>
<input type="text" id="purpose" name="purpose" value="" maxlength="30"/>
ex)기관제출용
</td>
</tr>
<tr>
<th>사업자명</th>
<td>
<input type="text" id="bsnsNm" name="bsnsNm" value="" maxlength="50"/>
</td>
</tr>
<tr>
<th>사업자등록번호</th>
<td>
<input type="text" id="bsnsNmbr" name="bsnsNmbr" value="" maxlength="20"/>
</td>
</tr>
</table>
</div> --%>
</div>
<div class="popup_cont upload_area">
<div>
<div class="pop_search_wrap">