298 lines
16 KiB
HTML
298 lines
16 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
|
<div class="modal-header bg-dark">
|
|
<h5 class="modal-title text-white" id="menuEditModalLabel">통역인 정보</h5>
|
|
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</div>
|
|
<div id="KeyValue">
|
|
</div>
|
|
<div class="modal-body">
|
|
<ul class="nav nav-tabs" id="translatorTab" role="tablist">
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link active" id="infoTab" data-bs-toggle="tab" data-bs-target="#infoTabPanel" type="button" role="tab" aria-controls="infoTabPanel" aria-selected="true">인적사항</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation" th:if="${historyList ne null}">
|
|
<button class="nav-link" id="historyTab" data-bs-toggle="tab" data-bs-target="#historyTabPanel" type="button" role="tab" aria-controls="historyTabPanel" aria-selected="false">수정이력</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation" th:if="${kcgCareerList ne null or otherCareerList ne null}">
|
|
<button class="nav-link" id="careerTab" data-bs-toggle="tab" data-bs-target="#careerTabPanel" type="button" role="tab" aria-controls="careerTabPanel" aria-selected="false">경력</button>
|
|
</li>
|
|
</ul>
|
|
<div class="tab-content bg-white border border-top-0" id="configInfo">
|
|
<div class="tab-pane fade p-2 show active" id="infoTabPanel" role="tabpanel" tabindex="0">
|
|
<form id="trInfoForm" method="post">
|
|
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
|
|
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
|
|
<input type="hidden" class="translatorKey" name="translatorKey" th:value="${trInfo.translatorKey}"/>
|
|
<input type="hidden" class="versionNo" name="versionNo" th:value="${trInfo.versionNo}"/>
|
|
<br>
|
|
<div class="row justify-content-center">
|
|
<div class="col-8">
|
|
<div class="row mb-1">
|
|
<label for="eOgdp1" class="col-sm-1 col-form-label-sm text-center">관서</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eOgdp1" name="ogdp1" th:disabled="${!(trInfo.translatorKey eq null and accessAuth ne 'ACC001') and !(accessAuth eq 'ACC003')}">
|
|
<option value="">선택</option>
|
|
<th:block th:each="commonCode:${session.commonCode.get('OG')}">
|
|
<th:block th:if="${#lists.contains(mgtOrganList, commonCode.itemCd)}">
|
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd} == ${trInfo.ogdp1}"></option>
|
|
</th:block>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="eTrLang" class="col-sm-1 col-form-label-sm text-center">언어</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eTrLang" name="trLang">
|
|
<option value="">선택</option>
|
|
<th:block th:each="commonCode:${session.commonCode.get('LGG')}">
|
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd} == ${trInfo.trLang}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="eTrCareer" class="col-sm-1 col-form-label-sm text-center">경력</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="eTrCareer" name="trCareer" th:value="${trInfo.trCareer}">
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label for="eTrEname" class="col-sm-1 col-form-label-sm text-center">성명</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="eTrEname" name="trName" th:value="${trInfo.trName}">
|
|
</div>
|
|
<label for="eTrSex" class="col-sm-1 col-form-label-sm text-center">성별</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eTrSex" name="trSex">
|
|
<option value="">선택</option>
|
|
<th:block th:each="code:${session.commonCode.get('SEX')}">
|
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq trInfo.trSex}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="eTrPhone" class="col-sm-1 col-form-label-sm text-center">연락처</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="eTrPhone" name="trPhone" th:value="${trInfo.trPhone}">
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label for="eTrNny" class="col-sm-1 col-form-label-sm text-center">국적</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eTrNny" name="trNny">
|
|
<option value="">선택</option>
|
|
<th:block th:each="code:${session.commonCode.get('NNY')}">
|
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq trInfo.trNny}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="enaturalization" class="col-sm-1 col-form-label-sm text-center">귀화</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="enaturalization" name="naturalization" th:disabled="${trInfo.trNny ne 'NNY001'}">
|
|
<option value="">선택</option>
|
|
<option value="O" th:selected="${trInfo.naturalization eq 'O'}">O</option>
|
|
<option value="X" th:selected="${trInfo.naturalization eq 'X'}">X</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label for="eTrAge" class="col-sm-1 col-form-label-sm text-center">나이</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="eTrAge" name="trAge" th:value="${trInfo.trAge}">
|
|
</div>
|
|
<label for="eTrEdu" class="col-sm-1 col-form-label-sm text-center">학력</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eTrEdu" name="trEdu">
|
|
<option value="">선택</option>
|
|
<th:block th:each="code:${session.commonCode.get('EDU')}">
|
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq trInfo.trEdu}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="eTrCft" class="col-sm-1 col-form-label-sm text-center">자격증</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="eTrCft" name="trCft" th:value="${trInfo.trCft}">
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label for="eTrVisa" class="col-sm-1 col-form-label-sm text-center">비자</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eTrVisa" name="trVisa">
|
|
<option value="">선택</option>
|
|
<th:block th:each="code:${session.commonCode.get('VISA')}">
|
|
<option th:if="${code.useChk eq 'T' or code.itemCd eq trInfo.trVisa}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq trInfo.trVisa}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<label for="viewAptDt" class="col-sm-1 col-form-label-sm text-center">위촉일</label>
|
|
<div class="col-sm-3">
|
|
<input type="text" class="form-control" id="viewAptDt" name="aptDt" th:value="${trInfo.aptDt}" readonly>
|
|
</div>
|
|
<label for="eDmlYn" class="col-sm-1 col-form-label-sm text-center">해촉</label>
|
|
<div class="col-sm-3">
|
|
<select class="form-select" id="eDmlYn" name="dmlYn">
|
|
<option value="">선택</option>
|
|
<option value="O" th:selected="'O' == ${trInfo.dmlYn}">O</option>
|
|
<option value="X" th:selected="'X' == ${trInfo.dmlYn}">X</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="mb-2 row">
|
|
<label for="eRemark" class="col-sm-1 col-form-label-sm text-center">비고</label>
|
|
<div class="col-sm-11">
|
|
<input type="text" class="form-control" id="eRemark" name="remark" th:value="${trInfo.remark}">
|
|
</div>
|
|
</div>
|
|
<div class="row justify-content-end">
|
|
<button type="button" class="btn btn-secondary col-auto mx-1" id="trDeleteBtn" th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">삭제</button>
|
|
<button type="button" class="btn btn-warning col-auto mx-1" id="updateBtn" th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">수정</button>
|
|
<button type="button" class="btn btn-primary col-auto mx-1" id="saveBtn" th:if="${accessAuth ne 'ACC001' and trInfo.translatorKey eq null}">저장</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
<div class="tab-pane fade p-2" id="historyTabPanel" role="tabpanel" tabindex="0">
|
|
<div class="row mx-0">
|
|
<div class="col-100 card text-center">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
</div>
|
|
<div class="row justify-content-start">
|
|
<div class="col-4">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<table class="table table-sm table-hover table-bordered" id="categoryTable">
|
|
<thead>
|
|
<tr>
|
|
<th></th>
|
|
<th>작성자</th>
|
|
<th>등록일</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="table-group-divider overflow-scroll">
|
|
<tr class="historyInfoTr" th:each="trInfo:${historyList}">
|
|
<input type="hidden" class="trKey" th:value="${trInfo.translatorKey}">
|
|
<input type="hidden" class="verNo" th:value="${trInfo.versionNo}">
|
|
<td><input type="checkbox" class="hisChk"></td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get('JT')}">
|
|
<th:block th:if="${code.itemCd eq trInfo.wrtTitle}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
<th:block th:text="${trInfo.wrtNm}"></th:block>
|
|
</td>
|
|
<td th:text="${#temporals.format(trInfo.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-8" id="valueDiv">
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="tab-pane fade p-2" id="careerTabPanel" role="tabpanel" tabindex="0">
|
|
<div class="row">
|
|
<h6>해양경찰청 이력</h6>
|
|
<table class="table table-sm table-hover table-bordered text-center">
|
|
<colgroup>
|
|
<col style="width: 5%">
|
|
<col style="width: 10%">
|
|
<col style="width: 40%">
|
|
<col style="width: 35%">
|
|
<col style="width: 10%">
|
|
</colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th>연번</th>
|
|
<th>날짜</th>
|
|
<th>내용</th>
|
|
<th>비고</th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="overflow-scroll table-group-divider text-center" id="kcgCareerTbody">
|
|
<tr class="kcgCareerTr" th:each="crrInfo,i:${kcgCareerList}">
|
|
<input type="hidden" class="careerSeq" th:value="${crrInfo.careerSeq}">
|
|
<input type="hidden" class="hisGubun" th:value="${crrInfo.hisGubun}">
|
|
<input type="hidden" class="state" value="saved">
|
|
<td th:text="${kcgCareerList.size()-i.index}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo tcDt" th:value="${crrInfo.tcDt}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo contents" th:value="${crrInfo.contents}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo remark" th:value="${crrInfo.remark}"></td>
|
|
<td>
|
|
<button type="button" class="btn btn-danger m-0 deleteCareerBtn"
|
|
th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">삭제</button>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
<tfoot>
|
|
<tr>
|
|
<td colspan="5">
|
|
<button type="button" class="btn btn-sm btn-outline-primary addCareerBtn"
|
|
data-hisgubun="Y" th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">
|
|
<i class="bi bi-plus"></i>
|
|
</button>
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
<div class="row">
|
|
<h6>타기관 이력</h6>
|
|
<table class="table table-sm table-hover table-bordered text-center">
|
|
<colgroup>
|
|
<col style="width: 5%">
|
|
<col style="width: 10%">
|
|
<col style="width: 40%">
|
|
<col style="width: 35%">
|
|
<col style="width: 10%">
|
|
</colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th>연번</th>
|
|
<th>날짜</th>
|
|
<th>내용</th>
|
|
<th>비고</th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="overflow-scroll table-group-divider" id="otherCareerTbody">
|
|
<tr class="otherCareerTr" th:each="crrInfo,i:${otherCareerList}">
|
|
<input type="hidden" class="careerSeq" th:value="${crrInfo.careerSeq}">
|
|
<input type="hidden" class="hisGubun" th:value="${crrInfo.hisGubun}">
|
|
<input type="hidden" class="state" value="saved">
|
|
<td th:text="${otherCareerList.size()-i.index}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo tcDt" th:value="${crrInfo.tcDt}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo contents" th:value="${crrInfo.contents}"></td>
|
|
<td><input type="text" class="form-control form-control-sm careerInfo remark" th:value="${crrInfo.remark}"></td>
|
|
<td>
|
|
<button type="button" class="btn btn-danger m-0 deleteCareerBtn"
|
|
th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">삭제</button>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
<tfoot>
|
|
<tr>
|
|
<td colspan="5">
|
|
<button type="button" class="btn btn-sm btn-outline-primary addCareerBtn"
|
|
data-hisgubun="N" th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}">
|
|
<i class="bi bi-plus"></i>
|
|
</button>
|
|
</td>
|
|
</tr>
|
|
</tfoot>
|
|
</table>
|
|
</div>
|
|
<div class="row justify-content-end">
|
|
<button type="button" class="btn btn-primary col-auto" id="crrSaveBtn" th:if="${accessAuth eq 'ACC003' or wrtUserSeq eq userSeq}" th:data-translatorkey="${trInfo.translatorKey}">저장</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</html> |