외사경찰현황 수정양식 변경.

master
강석 최 2023-02-22 14:44:22 +09:00
parent 36af4dae92
commit 4edbc824c8
11 changed files with 397 additions and 330 deletions

View File

@ -120,8 +120,10 @@ public class PoliceController {
@GetMapping("/policeHistoryView") @GetMapping("/policeHistoryView")
@ResponseBody @ResponseBody
public UserInfoHistory policeHistoryView(UserInfoHistory userInfoHistory){ public ModelAndView policeHistoryView(UserInfoHistory userInfoHistory){
return userInfoService.selectPoliceHistoryView(userInfoHistory); ModelAndView mav = new ModelAndView("police/police/historyValueDiv");
mav.addObject("userInfo", userInfoService.selectPoliceHistoryView(userInfoHistory));
return mav;
} }
@PostMapping("/policeStatusUpdate") @PostMapping("/policeStatusUpdate")

View File

@ -23,8 +23,6 @@ public interface UserInfoMapper {
List<UserInfoHistory> selectPoliceHisList(UserInfoHistory userInfoHistory); List<UserInfoHistory> selectPoliceHisList(UserInfoHistory userInfoHistory);
UserInfoHistory selectpoliceHistoryView(UserInfoHistory userInfoHistory);
List<PersonnelStatus> selectPersonnelStatusList(PersonnelStatus personnelStatus); List<PersonnelStatus> selectPersonnelStatusList(PersonnelStatus personnelStatus);
PersonnelStatus nowPersonnelStatus(String ogCd); PersonnelStatus nowPersonnelStatus(String ogCd);

View File

@ -4,7 +4,7 @@ import com.dbnt.faisp.main.userInfo.model.UserInfoHistory;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import java.util.Optional;
public interface UserInfoHistoryRepository extends JpaRepository<UserInfoHistory, UserInfoHistory.UserInfoHistoryId> { public interface UserInfoHistoryRepository extends JpaRepository<UserInfoHistory, UserInfoHistory.UserInfoHistoryId> {
@ -13,5 +13,5 @@ public interface UserInfoHistoryRepository extends JpaRepository<UserInfoHistory
UserInfoHistory findTopByUserSeqOrderByVersionNoDesc(Integer userSeq); UserInfoHistory findTopByUserSeqOrderByVersionNoDesc(Integer userSeq);
Optional<UserInfoHistory> findByUserSeqAndVersionNo(Integer userSeq, Integer versionNo);
} }

View File

@ -250,8 +250,9 @@ public class UserInfoService implements UserDetailsService {
} }
public UserInfoHistory selectPoliceHistoryView(UserInfoHistory userInfoHistory) { public UserInfoHistory selectPoliceHistoryView(UserInfoHistory userInfoHistory) {
return userInfoMapper.selectpoliceHistoryView(userInfoHistory); return userInfoHistoryRepository.findByUserSeqAndVersionNo(userInfoHistory.getUserSeq(), userInfoHistory.getVersionNo()).orElse(null);
} }
public String selectUserStatus(UserInfoHistory userInfoHistory) { public String selectUserStatus(UserInfoHistory userInfoHistory) {
return userInfoRepository.getUserStatus(userInfoHistory.getUserSeq()); return userInfoRepository.getUserStatus(userInfoHistory.getUserSeq());
} }

View File

@ -288,31 +288,6 @@
order by version_no desc order by version_no desc
</select> </select>
<select id="selectpoliceHistoryView" resultType="UserInfoHistory" parameterType="UserInfoHistory">
select user_seq,
version_no,
dic_code,
user_id,
user_nm,
phone_no,
email,
(select item_value from code_mgt where item_cd = sex) as sex,
birth_date,
police_in_date,
(select item_value from code_mgt where item_cd = og_cd) as og_cd,
organ_in_date,
ofc_cd,
ofc_in_date,
(select item_value from code_mgt where item_cd = title_cd) as title_cd,
title_in_date,
(select item_value from code_mgt where item_cd = duty_cd) as duty_cd,
(select item_value from code_mgt where item_cd = outturn_cd) as outturn_cd,
(select item_value from code_mgt where item_cd = series_cd) as series_cd,
(select item_value from code_mgt where item_cd = language_cd) as language_cd
from user_info_history
where user_seq = #{userSeq}
and version_no = #{versionNo}
</select>
<select id="selectPersonnelStatusList" parameterType="PersonnelStatus" resultType="PersonnelStatus"> <select id="selectPersonnelStatusList" parameterType="PersonnelStatus" resultType="PersonnelStatus">
select select
case case

View File

@ -19,7 +19,9 @@ function showModal(userSeq){
language: "ko", language: "ko",
autoclose: true autoclose: true
}); });
$("#policeEditModal").modal('show'); const policeEditModal = $("#policeEditModal");
policeEditModal.children().attr("class", "modal-dialog modal-lg modal-dialog-scrollable")
policeEditModal.modal('show');
}, },
error:function(e){ error:function(e){
ajaxErrorAction(e); ajaxErrorAction(e);
@ -92,7 +94,9 @@ $(document).on('click', '#historyTab', function (){
dataType:"html", dataType:"html",
success: function(html){ success: function(html){
$("#policeEditModalContent").empty().append(html); $("#policeEditModalContent").empty().append(html);
$("#policeEditModal").modal('show'); const policeEditModal = $("#policeEditModal")
policeEditModal.children().attr("class", "modal-dialog modal-xl modal-dialog-scrollable")
policeEditModal.modal('show');
}, },
error:function(e){ error:function(e){
ajaxErrorAction(e); ajaxErrorAction(e);
@ -118,26 +122,9 @@ $(document).on('click', '.historyInfoTr', function (){
versionNo : Number($(this).find(".verNo").val()) versionNo : Number($(this).find(".verNo").val())
}, },
type: 'GET', type: 'GET',
dataType:"json", dataType:"html",
success: function(data){ success: function(html){
$('#vDicCode').val(data.dicCode); $("#valueDiv").empty().append(html)
$('#vUserId').val(data.userId);
$('#vUserNm').val(data.userNm);
$('#vPhone').val(data.phoneNo);
$('#vEmail').val(data.email);
$('#vSex').val(data.sex);
$('#vBirth').val(data.birthDate);
$('#vPoliceInDate').val(data.policeInDate);
$('#vOgCd').val(data.ogCd);
$('#vOrganInDate').val(data.organInDate);
$('#vOfcCd').val(data.ofcCd);
$('#vOfcInDate').val(data.ofcInDate);
$('#vTitleCd').val(data.titleCd);
$('#vTitleInDate').val(data.titleInDate);
$('#vDutyCd').val(data.dutyCd);
$('#vOutturnCd').val(data.outturnCd);
$('#vSeriesCd').val(data.seriesCd);
$('#vLanguageCd').val(data.languageCd);
}, },
error:function(e){ error:function(e){
ajaxErrorAction(e); ajaxErrorAction(e);

View File

@ -0,0 +1,163 @@
<!DOCTYPE html>
<html lang="ko">
<div class="mb-3 mt-3 row">
<label class="col-sm-2 col-form-label col-form-label-sm text-center ">디지털식별코드</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white" autocomplete="off" th:value="${userInfo.dicCode}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center ">아이디</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white" autocomplete="off" th:value="${userInfo.userId}" disabled>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-2">
<input type="text" class=" form-control form-control-sm bg-white" autocomplete="off" th:value="${userInfo.userNm}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="SEX002" th:selected="${userInfo.sex eq 'SEX002'}"></option>
<option value="SEX001" th:selected="${userInfo.sex eq 'SEX001'}"></option>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">휴대전화</label>
<div class="col-sm-2">
<input type="tel" class="form-control form-control-sm bg-white" th:value="${userInfo.phoneNo}" disabled>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">이메일</label>
<div class="col-sm-2">
<input type="email" class="form-control form-control-sm bg-white" th:value="${userInfo.email}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">생년월일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white dateSelector" th:value="${userInfo.birthDate}" disabled>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">해양경찰배명일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white dateSelector" th:value="${userInfo.policeInDate}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">관서</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('OG')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ogCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">현관서전입일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white dateSelector" th:value="${userInfo.organInDate}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">부서</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('OFC')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ofcCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">현부서임용일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white dateSelector" th:value="${userInfo.ofcInDate}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">계급</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('JT')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.titleCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">현계급임용일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white dateSelector" th:value="${userInfo.titleInDate}" disabled>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">직책</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('DT')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.dutyCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">경과</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('OTC')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.outturnCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">직별</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get(userInfo.outturnCd)}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.seriesCd}"></option>
</th:block>
</select>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">외국어특채</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('LNG')}">
<option th:if="${code.useChk eq 'T'}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.languageCd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">구사 외국어</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white" th:value="${userInfo.useLanguage}" disabled>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">수준</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">해당없음</option>
<option value="1" th:selected="${userInfo.languageGrd eq '1'}"></option>
<option value="2" th:selected="${userInfo.languageGrd eq '2'}"></option>
<option value="3" th:selected="${userInfo.languageGrd eq '3'}"></option>
</select>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">학력사항</label>
<div class="col-sm-2">
<select class="form-select form-select-sm bg-white" disabled>
<option value="">해당없음</option>
<th:block th:each="code:${session.commonCode.get('UED')}">
<option th:if="${code.useChk eq 'T'}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.educationGrd}"></option>
</th:block>
</select>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">학교</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white" th:value="${userInfo.school}" disabled>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">전공</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm bg-white" th:value="${userInfo.specialism}" disabled>
</div>
</div>
</html>

View File

@ -1,10 +1,10 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> <html lang="ko" xmlns:th="http://www.thymeleaf.org">
<div class="modal-header bg-dark"> <div class="modal-header bg-dark">
<h5 class="modal-title text-white" th:text="${userInfo.userStatus eq 'USC003' ? '現 외사경찰 상세' : userInfo.userStatus eq 'USC006' ? '前 외사경찰 상세' : userInfo.userStatus eq 'USC007' ? '非 외사경찰 상세' : null}"></h5> <h5 class="modal-title text-white" th:text="|${userInfo.userStatus eq 'USC003'?'現':userInfo.userStatus eq 'USC006'?'前':userInfo.userStatus eq 'USC007'?'非':''} 외사경찰 상세|"></h5>
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button> <button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
</div> </div>
<div class="modal-body">
<ul class="nav nav-tabs" id="userTab" role="tablist"> <ul class="nav nav-tabs" id="userTab" role="tablist">
<li class="nav-item" role="presentation"> <li class="nav-item" role="presentation">
<button class="nav-link active" id="editTab" th:data-userseq="${userInfo.userSeq}" data-bs-toggle="tab" type="button" role="tab">현황 상세</button> <button class="nav-link active" id="editTab" th:data-userseq="${userInfo.userSeq}" data-bs-toggle="tab" type="button" role="tab">현황 상세</button>
@ -13,7 +13,8 @@
<button class="nav-link" id="historyTab" th:data-userseq="${userInfo.userSeq}" data-bs-toggle="tab" type="button" role="tab">수정이력</button> <button class="nav-link" id="historyTab" th:data-userseq="${userInfo.userSeq}" data-bs-toggle="tab" type="button" role="tab">수정이력</button>
</li> </li>
</ul> </ul>
<div class="modal-body"> <div class="tab-content bg-white border border-top-0 p-2">
<div class="tab-pane fade p-2 show active" role="tabpanel" tabindex="0">
<form id="userInfoUpdate" action="#" method="post"> <form id="userInfoUpdate" action="#" method="post">
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/> <input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/> <input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
@ -21,98 +22,95 @@
<input type="hidden" name="userStatus" th:value="${userInfo.userStatus}"> <input type="hidden" name="userStatus" th:value="${userInfo.userStatus}">
<div class="mb-3 mt-3 row"> <div class="mb-3 mt-3 row">
<label for="dicCode" class="col-sm-2 col-form-label col-form-label-sm text-center ">디지털식별코드</label> <label for="dicCode" class="col-sm-2 col-form-label col-form-label-sm text-center ">디지털식별코드</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm" id="dicCode" name="dicCode" autocomplete="off" th:value="${userInfo.dicCode}"> <input type="text" class="form-control form-control-sm" id="dicCode" name="dicCode" autocomplete="off" th:value="${userInfo.dicCode}" disabled>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="userId" class="col-sm-2 col-form-label col-form-label-sm text-center ">아이디</label> <label for="userId" class="col-sm-2 col-form-label col-form-label-sm text-center ">아이디</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm" id="userId" name="userId" autocomplete="off" th:value="${userInfo.userId}" readonly> <input type="text" class="form-control form-control-sm" id="userId" name="userId" autocomplete="off" th:value="${userInfo.userId}" disabled>
</div> </div>
<label for="userId" class="col-sm-2 p-1 fs-12">*아이디는 수정할 수 없습니다.</label>
<label for="userNm" class="col-sm-2 col-form-label col-form-label-sm text-center">이름</label> <label for="userNm" class="col-sm-2 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class=" form-control form-control-sm" id="userNm" name="userNm" autocomplete="off" th:value="${userInfo.userNm}"> <input type="text" class=" form-control form-control-sm" id="userNm" name="userNm" autocomplete="off" th:value="${userInfo.userNm}" disabled>
</div>
</div>
<div class="row mb-1">
<label for="phoneNo" class="col-sm-2 col-form-label col-form-label-sm text-center">휴대전화</label>
<div class="col-sm-4">
<input type="tel" class="form-control form-control-sm" id="phoneNo" name="phoneNo" th:value="${userInfo.phoneNo}">
</div>
<label for="email" class="col-sm-2 col-form-label col-form-label-sm text-center">이메일</label>
<div class="col-sm-4">
<input type="email" class="form-control form-control-sm" id="email" name="email" th:value="${userInfo.email}">
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="sex" class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label> <label for="sex" class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="sex" name="sex"> <select class="form-select form-select-sm" id="sex" name="sex" disabled>
<option value="SEX002" th:selected="${userInfo.sex eq 'SEX002'}"></option> <option value="SEX002" th:selected="${userInfo.sex eq 'SEX002'}"></option>
<option value="SEX001" th:selected="${userInfo.sex eq 'SEX001'}"></option> <option value="SEX001" th:selected="${userInfo.sex eq 'SEX001'}"></option>
</select> </select>
</div> </div>
<label for="phoneNo" class="col-sm-2 col-form-label col-form-label-sm text-center">휴대전화</label>
<div class="col-sm-2">
<input type="tel" class="form-control form-control-sm" id="phoneNo" name="phoneNo" th:value="${userInfo.phoneNo}">
</div>
<label for="email" class="col-sm-2 col-form-label col-form-label-sm text-center">이메일</label>
<div class="col-sm-2">
<input type="email" class="form-control form-control-sm" id="email" name="email" th:value="${userInfo.email}">
</div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="birthDate" class="col-sm-2 col-form-label col-form-label-sm text-center">생년월일</label> <label for="birthDate" class="col-sm-2 col-form-label col-form-label-sm text-center">생년월일</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm dateSelector" id="birthDate" name="birthDate" th:value="${userInfo.birthDate}" readonly> <input type="text" class="form-control form-control-sm dateSelector" id="birthDate" name="birthDate" th:value="${userInfo.birthDate}" disabled>
</div> </div>
<label for="policeInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">해양경찰배명일</label> <label for="policeInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">해양경찰배명일</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm dateSelector" id="policeInDate" name="policeInDate" th:value="${userInfo.policeInDate}" readonly> <input type="text" class="form-control form-control-sm dateSelector" id="policeInDate" name="policeInDate" th:value="${userInfo.policeInDate}" disabled>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="ogCd" class="col-sm-2 col-form-label col-form-label-sm text-center">관서</label> <label for="ogCd" class="col-sm-2 col-form-label col-form-label-sm text-center">관서</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="ogCd" name="ogCd"> <select class="form-select form-select-sm" id="ogCd" name="ogCd" disabled>
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${ogList}"> <th:block th:each="code:${session.commonCode.get('OG')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ogCd}"></option> <option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ogCd}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
<label for="organInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현관서전입일</label> <label for="organInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현관서전입일</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm dateSelector" id="organInDate" name="organInDate" th:value="${userInfo.organInDate}" readonly> <input type="text" class="form-control form-control-sm dateSelector" id="organInDate" name="organInDate" th:value="${userInfo.organInDate}" readonly>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="ofcCd" class="col-sm-2 col-form-label col-form-label-sm text-center">부서</label> <label for="ofcCd" class="col-sm-2 col-form-label col-form-label-sm text-center">부서</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="ofcCd" name="ofcCd"> <select class="form-select form-select-sm" id="ofcCd" name="ofcCd" disabled>
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${ofcList}"> <th:block th:each="code:${session.commonCode.get('OFC')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ofcCd}"></option> <option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.ofcCd}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
<label for="ofcInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현부서임용일</label> <label for="ofcInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현부서임용일</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm dateSelector" id="ofcInDate" name="ofcInDate" th:value="${userInfo.ofcInDate}" readonly> <input type="text" class="form-control form-control-sm dateSelector" id="ofcInDate" name="ofcInDate" th:value="${userInfo.ofcInDate}" disabled>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="titleCd" class="col-sm-2 col-form-label col-form-label-sm text-center">계급</label> <label for="titleCd" class="col-sm-2 col-form-label col-form-label-sm text-center">계급</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="titleCd" name="titleCd"> <select class="form-select form-select-sm" id="titleCd" name="titleCd" disabled>
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${titleList}"> <th:block th:each="code:${session.commonCode.get('JT')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.titleCd}"></option> <option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.titleCd}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
<label for="titleInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현계급임용일</label> <label for="titleInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현계급임용일</label>
<div class="col-sm-4"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm dateSelector" id="titleInDate" name="titleInDate" th:value="${userInfo.titleInDate}" readonly> <input type="text" class="form-control form-control-sm dateSelector" id="titleInDate" name="titleInDate" th:value="${userInfo.titleInDate}" disabled>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="outturnCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직책</label> <label for="outturnCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직책</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="dutyCd" name="dutyCd"> <select class="form-select form-select-sm" id="dutyCd" name="dutyCd">
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${session.commonCode.get('DT')}"> <th:block th:each="code:${session.commonCode.get('DT')}">
@ -120,22 +118,20 @@
</th:block> </th:block>
</select> </select>
</div> </div>
</div>
<div class="row mb-1">
<label for="outturnCd" class="col-sm-2 col-form-label col-form-label-sm text-center">경과</label> <label for="outturnCd" class="col-sm-2 col-form-label col-form-label-sm text-center">경과</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="outturnCd" name="outturnCd"> <select class="form-select form-select-sm" id="outturnCd" name="outturnCd" disabled>
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${outturnList}"> <th:block th:each="code:${session.commonCode.get('OTC')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.outturnCd}"></option> <option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.outturnCd}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
<label for="seriesCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직별</label> <label for="seriesCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직별</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="seriesCd" name="seriesCd"> <select class="form-select form-select-sm" id="seriesCd" name="seriesCd">
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${seriesList}"> <th:block th:each="code:${session.commonCode.get(userInfo.outturnCd)}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.seriesCd}"></option> <option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.seriesCd}"></option>
</th:block> </th:block>
</select> </select>
@ -143,17 +139,51 @@
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">외국어특채</label> <label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">외국어특채</label>
<div class="col-sm-4"> <div class="col-sm-2">
<select class="form-select form-select-sm" id="languageCd" name="languageCd"> <select class="form-select form-select-sm" id="languageCd" name="languageCd">
<option value="">--선택--</option> <option value="">--선택--</option>
<th:block th:each="code:${languageList}"> <th:block th:each="code:${session.commonCode.get('LNG')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.languageCd}"></option> <option th:if="${code.useChk eq 'T'}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.languageCd}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">구사 외국어</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm" name="useLanguage" th:value="${userInfo.useLanguage}">
</div>
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">수준</label>
<div class="col-sm-2">
<select class="form-select form-select-sm" name="languageGrd">
<option value="">해당없음</option>
<option value="1" th:selected="${userInfo.languageGrd eq '1'}"></option>
<option value="2" th:selected="${userInfo.languageGrd eq '2'}"></option>
<option value="3" th:selected="${userInfo.languageGrd eq '3'}"></option>
</select>
</div>
</div>
<div class="row mb-1">
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">학력사항</label>
<div class="col-sm-2">
<select class="form-select form-select-sm" name="educationGrd">
<option value="">해당없음</option>
<th:block th:each="code:${session.commonCode.get('UED')}">
<option th:if="${code.useChk eq 'T'}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq userInfo.educationGrd}"></option>
</th:block>
</select>
</div>
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">학교</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm" name="school" th:value="${userInfo.school}">
</div>
<label for="languageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">전공</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm" name="specialism" th:value="${userInfo.specialism}">
</div>
</div> </div>
</form> </form>
</div> </div>
</div>
</div>
<div class="modal-footer row justify-content-between bg-light"> <div class="modal-footer row justify-content-between bg-light">
<div class="col-auto"> <div class="col-auto">
<th:block th:if="${accessAuth eq 'ACC003'}"> <th:block th:if="${accessAuth eq 'ACC003'}">

View File

@ -3,7 +3,7 @@
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/> <input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/> <input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
<div class="modal-header bg-dark"> <div class="modal-header bg-dark">
<h5 class="modal-title text-white" th:text="${userStatus eq 'USC003' ? '現 외사경찰 상세' : userStatus eq 'USC006' ? '前 외사경찰 상세' : userStatus eq 'USC007' ? '非 외사경찰 상세' : null}"></h5> <h5 class="modal-title text-white" th:text="|${userStatus eq 'USC003'?'現':userStatus eq 'USC006'?'前':userStatus eq 'USC007'?'非':''} 외사경찰 상세|"></h5>
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button> <button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
@ -15,10 +15,9 @@
<button class="nav-link active" id="historyTab" th:data-userseq="${policeList[0].userSeq}" data-bs-toggle="tab" type="button" role="tab">수정이력</button> <button class="nav-link active" id="historyTab" th:data-userseq="${policeList[0].userSeq}" data-bs-toggle="tab" type="button" role="tab">수정이력</button>
</li> </li>
</ul> </ul>
<div class="tab-content bg-white border border-top-0 p-2">
<div class="tab-pane fade p-2 show active" role="tabpanel" tabindex="0">
<div class="row mx-0"> <div class="row mx-0">
<div class="col-100 card text-center">
<div class="row">
</div>
<div class="row justify-content-start"> <div class="row justify-content-start">
<div class="col-4"> <div class="col-4">
<div class="card"> <div class="card">
@ -49,99 +48,7 @@
</div> </div>
</div> </div>
<div class="col-8" id="valueDiv"> <div class="col-8" id="valueDiv">
<div class="mb-1 mt-3 row"> <h3 class="p-5 m-5 w-100 text-center">왼쪽 목록에서 선택해주세요</h3>
<label for="vDicCode" class="col-sm-2 col-form-label col-form-label-sm text-center ">디지털식별코드</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vDicCode" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vUserId" class="col-sm-2 col-form-label col-form-label-sm text-center ">아이디</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vUserId" readonly>
</div>
<label for="vUserNm" class="col-sm-2 col-form-label col-form-label-sm text-center">이름</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vUserNm" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vPhone" class="col-sm-2 col-form-label col-form-label-sm text-center">휴대전화</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vPhone" readonly>
</div>
<label for="vEmail" class="col-sm-2 col-form-label col-form-label-sm text-center">이메일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vEmail" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vSex" class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vSex" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vBirth" class="col-sm-2 col-form-label col-form-label-sm text-center">생년월일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vBirth" readonly>
</div>
<label for="vPoliceInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">해양경찰배명일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vPoliceInDate" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vOgCd" class="col-sm-2 col-form-label col-form-label-sm text-center">관서</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vOgCd" readonly>
</div>
<label for="vOrganInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현관서전입일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vOrganInDate" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vOfcCd" class="col-sm-2 col-form-label col-form-label-sm text-center">부서</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vOfcCd" readonly>
</div>
<label for="vOfcInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현부서임용일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vOfcInDate" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vTitleCd" class="col-sm-2 col-form-label col-form-label-sm text-center">계급</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vTitleCd" readonly>
</div>
<label for="vTitleInDate" class="col-sm-2 col-form-label col-form-label-sm text-center">현계급임용일</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vTitleInDate" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vDutyCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직책</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vDutyCd" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vOutturnCd" class="col-sm-2 col-form-label col-form-label-sm text-center">경과</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vOutturnCd" readonly>
</div>
<label for="vSeriesCd" class="col-sm-2 col-form-label col-form-label-sm text-center">직별</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vSeriesCd" readonly>
</div>
</div>
<div class="row mb-1">
<label for="vLanguageCd" class="col-sm-2 col-form-label col-form-label-sm text-center">외국어특채</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm dateSelector" id="vLanguageCd" readonly>
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -196,7 +196,7 @@
</main> </main>
<div class="modal fade" id="policeEditModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="userEditModalLabel" aria-hidden="true"> <div class="modal fade" id="policeEditModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="userEditModalLabel" aria-hidden="true">
<div class="modal-dialog modal-xl modal-dialog-scrollable"> <div class="modal-dialog modal-lg modal-dialog-scrollable">
<div class="modal-content" id="policeEditModalContent"> <div class="modal-content" id="policeEditModalContent">
</div> </div>

View File

@ -65,7 +65,7 @@
<input type="text" class=" form-control form-control-sm" id="userNm" name="userNm" autocomplete="off" th:value="${userInfo.userNm}" th:disabled="${!#strings.isEmpty(userInfo.dicCode)}"> <input type="text" class=" form-control form-control-sm" id="userNm" name="userNm" autocomplete="off" th:value="${userInfo.userNm}" th:disabled="${!#strings.isEmpty(userInfo.dicCode)}">
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row">
<label for="passwordChange" class="col-sm-2 col-form-label col-form-label-sm text-center">비밀번호</label> <label for="passwordChange" class="col-sm-2 col-form-label col-form-label-sm text-center">비밀번호</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="password" class="form-control form-control-sm" id="passwordChange" name="passwordChange" autocomplete="new-password"> <input type="password" class="form-control form-control-sm" id="passwordChange" name="passwordChange" autocomplete="new-password">
@ -75,6 +75,10 @@
<input type="password" class="form-control form-control-sm" id="passwordConfirm"> <input type="password" class="form-control form-control-sm" id="passwordConfirm">
</div> </div>
</div> </div>
<div class="row mb-1">
<div class="col-sm-2"></div>
<label for="passwordChange" class="col-sm-4 col-form-label col-form-label-sm" style="font-size: 12px">8~16자 사이의 알파벳, 숫자, 특수문자 조합</label>
</div>
<div class="row mb-1"> <div class="row mb-1">
<label for="sex" class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label> <label for="sex" class="col-sm-2 col-form-label col-form-label-sm text-center">성별</label>
<div class="col-sm-2"> <div class="col-sm-2">