외사경찰견문관리 > 견문관리 작업중.

강석 최 2022-09-22 11:25:44 +09:00
parent 3f8cf83644
commit 25158e2a1d
4 changed files with 88 additions and 59 deletions

View File

@ -52,6 +52,8 @@ public class AffairBoard extends BaseModel {
private Integer wrtUserSeq; private Integer wrtUserSeq;
@Transient
private Integer fileCnt;
@Transient @Transient
private String userType; private String userType;
@Transient @Transient

View File

@ -62,7 +62,7 @@ function getAffairEditModal(affairKey){
$("#affairEditModal").modal('show'); $("#affairEditModal").modal('show');
$("#content").summernote({ $("#content").summernote({
lang:'ko-KR', lang:'ko-KR',
height: 120, height: 390,
disableDragAndDrop: true, disableDragAndDrop: true,
toolbar: [ toolbar: [
['style', ['style']], ['style', ['style']],

View File

@ -24,28 +24,40 @@
</div> </div>
</div> </div>
<div class="mb-3 row"> <div class="mb-3 row">
<label for="wrtUserNm" class="col-sm-1 col-form-label text-center">분야1</label> <label for="affairType1" class="col-sm-1 col-form-label text-center">분야1</label>
<div class="col-sm-2"> <div class="col-sm-2">
<select class="form-select form-select-sm"> <select class="form-select form-select-sm" id="affairType1" name="affairType1">
<option value="">선택</option>
<th:block th:each="code:${session.commonCode.get('DC01')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq affair.affairType1}"></option>
</th:block>
</select> </select>
</div> </div>
<label for="wrtDt" class="col-sm-1 col-form-label text-center">분야2</label> <label for="affairType2" class="col-sm-1 col-form-label text-center">분야2</label>
<div class="col-sm-2"> <div class="col-sm-2">
<select class="form-select form-select-sm"> <select class="form-select form-select-sm" id="affairType2" name="affairType2">
<option value="">선택</option>
<th:block th:each="code:${session.commonCode.get('DC02')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq affair.affairType2}"></option>
</th:block>
</select> </select>
</div> </div>
<label for="wrtUserNm" class="col-sm-1 col-form-label text-center">분야3</label> <label for="affairType3" class="col-sm-1 col-form-label text-center">분야3</label>
<div class="col-sm-2"> <div class="col-sm-2">
<select class="form-select form-select-sm"> <select class="form-select form-select-sm" id="affairType3" name="affairType3">
<option value="">선택</option>
<th:block th:each="code:${session.commonCode.get('DC03')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq affair.affairType3}"></option>
</th:block>
</select> </select>
</div> </div>
<label for="wrtDt" class="col-sm-1 col-form-label text-center">분야4</label> <label for="affairType4" class="col-sm-1 col-form-label text-center">분야4</label>
<div class="col-sm-2"> <div class="col-sm-2">
<select class="form-select form-select-sm"> <select class="form-select form-select-sm" id="affairType4" name="affairType4">
<option value="">선택</option>
<th:block th:each="code:${session.commonCode.get('DC04')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq affair.affairType4}"></option>
</th:block>
</select> </select>
</div> </div>
</div> </div>

View File

@ -1,32 +1,62 @@
<!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"> <div class="modal-header">
<h5 class="modal-title" id="planViewModalLabel">월간 계획 열람</h5> <h5 class="modal-title" id="affairViewModalLabel">월간 계획 열람</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<input type="hidden" name="planKey" id="viewModalPlanKey" th:value="${plan.planKey}"> <input type="hidden" name="affairKey" id="viewModalAffairKey" th:value="${affair.affairKey}">
<input type="hidden" name="wrtOrgan" th:value="${plan.wrtOrgan}"> <input type="hidden" name="wrtOrgan" th:value="${affair.wrtOrgan}">
<input type="hidden" name="planState" id="planState" th:value="${plan.planState}"> <input type="hidden" name="affairStatus" id="affairStatus" th:value="${affair.affairStatus}">
<div class="mb-3 row"> <div class="mb-3 row">
<label for="wrtUserNm" class="col-sm-1 col-form-label text-center">작성자</label> <label for="wrtUserNm" class="col-sm-1 col-form-label text-center">작성자</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control border-0" id="wrtUserNm" name="wrtUserNm" th:value="${plan.wrtUserNm}" readonly> <input type="text" class="form-control border-0" id="wrtUserNm" name="wrtUserNm" th:value="${affair.wrtUserNm}" readonly>
</div> </div>
<label for="wrtDt" class="col-sm-1 col-form-label text-center">작성일시</label> <label for="wrtDt" class="col-sm-1 col-form-label text-center">작성일시</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control border-0" id="wrtDt" name="wrtDt" th:value="${#temporals.format(plan.wrtDt, 'yyyy-MM-dd HH:mm')}" readonly> <input type="text" class="form-control border-0" id="wrtDt" name="wrtDt" th:value="${#temporals.format(affair.wrtDt, 'yyyy-MM-dd HH:mm')}" readonly>
</div> </div>
<label for="planDt" class="col-sm-1 col-form-label text-center">시행일자</label> <label for="affairStatus" class="col-sm-1 col-form-label text-center">상태</label>
<div class="col-sm-2">
<input type="text" class="form-control border-0" id="planDt" name="planDt" th:value="${#temporals.format(plan.planDt, 'yyyy-MM-dd')}" readonly>
</div>
<label for="planState" class="col-sm-1 col-form-label text-center">상태</label>
<div class="col-sm-2"> <div class="col-sm-2">
<th:block th:each="commonCode:${session.commonCode.get('DST')}"> <th:block th:each="commonCode:${session.commonCode.get('DST')}">
<input type="text" class="form-control border-0" th:if="${commonCode.itemCd eq plan.planState}" th:value="${commonCode.itemValue}" readonly> <input type="text" class="form-control border-0" th:if="${commonCode.itemCd eq affair.affairStatus}" th:value="${commonCode.itemValue}" readonly>
</th:block>
</div>
</div>
<div class="mb-3 row">
<label for="affairType1" class="col-sm-1 col-form-label text-center">분야1</label>
<div class="col-sm-2">
<th:block th:each="code:${session.commonCode.get('DC01')}">
<th:block th:if="${code.itemCd eq affair.affairType1}">
<input type="text" class="form-control border-0" id="affairType1" th:value="${code.itemValue}">
</th:block>
</th:block>
</div>
<label for="affairType2" class="col-sm-1 col-form-label text-center">분야2</label>
<div class="col-sm-2">
<th:block th:each="code:${session.commonCode.get('DC02')}">
<th:block th:if="${code.itemCd eq affair.affairType2}">
<input type="text" class="form-control border-0" id="affairType2" th:value="${code.itemValue}">
</th:block>
</th:block>
</div>
<label for="affairType3" class="col-sm-1 col-form-label text-center">분야3</label>
<div class="col-sm-2">
<th:block th:each="code:${session.commonCode.get('DC03')}">
<th:block th:if="${code.itemCd eq affair.affairType3}">
<input type="text" class="form-control border-0" id="affairType3" th:value="${code.itemValue}">
</th:block>
</th:block>
</div>
<label for="affairType4" class="col-sm-1 col-form-label text-center">분야4</label>
<div class="col-sm-2">
<th:block th:each="code:${session.commonCode.get('DC04')}">
<th:block th:if="${code.itemCd eq affair.affairType4}">
<input type="text" class="form-control border-0" id="affairType4" th:value="${code.itemValue}">
</th:block>
</th:block> </th:block>
</div> </div>
</div> </div>
@ -34,31 +64,16 @@
<div class="row"> <div class="row">
<div class="col-8"> <div class="col-8">
<div class="mb-3 row"> <div class="mb-3 row">
<label for="contentTitle" class="col-sm-2 col-form-label text-center">제목</label> <label for="title" class="col-sm-2 col-form-label text-center">제목</label>
<div class="col-sm-10"> <div class="col-sm-10">
<input type="text" class="form-control border-0" id="contentTitle" name="contentTitle" th:value="${plan.contentTitle}" readonly> <input type="text" class="form-control border-0" id="title" name="title" th:value="${affair.title}" readonly>
</div> </div>
</div> </div>
<hr> <hr>
<div class="mb-3 row"> <div class="mb-3 row">
<label for="planDiv" class="col-sm-2 col-form-label text-center">주요<br>사업계획</label> <label for="contentDiv" class="col-sm-2 col-form-label text-center">내용</label>
<div class="col-sm-10" id="planDiv"> <div class="col-sm-10" id="contentDiv">
<th:block th:each="infoList:${plan.mainInfoList}"> <div th:utext="${affair.content}"></div>
<th:block th:if="${infoList.planType eq 'S'}">
<input type="text" class="form-control border-0" name="planInfo" th:value="${infoList.planInfo}" readonly>
</th:block>
</th:block>
</div>
</div>
<hr>
<div class="mb-3 row">
<label for="detailPlanDiv" class="col-sm-2 col-form-label text-center">사업개요<br><br>추진계획</label>
<div class="col-sm-10" id="detailPlanDiv">
<th:block th:each="infoList:${plan.mainInfoList}">
<th:block th:if="${infoList.planType eq 'D'}">
<div th:utext="${infoList.planInfo}"></div>
</th:block>
</th:block>
</div> </div>
</div> </div>
</div> </div>
@ -71,16 +86,16 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<th:block th:if="${#lists.isEmpty(plan.fileList)}"> <th:block th:if="${#lists.isEmpty(affair.fileList)}">
<tr> <tr>
<td colspan="2">파일이 없습니다.</td> <td colspan="2">파일이 없습니다.</td>
</tr> </tr>
</th:block> </th:block>
<th:block th:unless="${#lists.isEmpty(plan.fileList)}"> <th:block th:unless="${#lists.isEmpty(affair.fileList)}">
<th:block th:each="file:${plan.fileList}"> <th:block th:each="file:${affair.fileList}">
<tr class="fileInfoTr"> <tr class="fileInfoTr">
<td><a href="#" class="fileDownLink" data-board="monthPlan" <td><a href="#" class="fileDownLink" data-board="monthAffair"
th:data-parentkey="${file.planKey}" th:data-fileseq="${file.fileSeq}" th:text="|${file.origNm}.${file.fileExtn}|"></a></td> th:data-parentkey="${file.affairKey}" th:data-fileseq="${file.fileSeq}" th:text="|${file.origNm}.${file.fileExtn}|"></a></td>
<td th:text="${file.fileSize}"></td> <td th:text="${file.fileSize}"></td>
</tr> </tr>
</th:block> </th:block>
@ -89,9 +104,9 @@
</table> </table>
</div> </div>
</div> </div>
<th:block th:unless="${#lists.isEmpty(plan.apprvList)}"> <!--<th:block th:unless="${#lists.isEmpty(affair.apprvList)}">
<hr> <hr>
<th:block th:each="apprv,cnt:${plan.apprvList}"> <th:block th:each="apprv,cnt:${affair.apprvList}">
<div class="row justify-content-between py-1"> <div class="row justify-content-between py-1">
<div class="col-auto"> <div class="col-auto">
<th:block th:each="commonCode:${session.commonCode.get('DST')}"> <th:block th:each="commonCode:${session.commonCode.get('DST')}">
@ -107,22 +122,22 @@
</div> </div>
</div> </div>
</th:block> </th:block>
</th:block> </th:block>-->
</div> </div>
<div class="col-12" th:if="${apprvAuth ne null}"> <div class="col-12" th:if="${apprvAuth ne null}">
<form action="#" method="post" id="apprvForm"> <form action="#" method="post" id="apprvForm">
<div class="row"> <div class="row">
<div class="col-10"> <div class="col-10">
<input type="hidden" name="planKey" id="apprvFormPlanKey"> <input type="hidden" name="affairKey" id="apprvFormAffairKey">
<input type="hidden" name="state" id="viewModalApprvValue"> <input type="hidden" name="state" id="viewModalApprvValue">
<input type="text" class="form-control form-control-sm" name="etc" placeholder="추가의견, 반려사유 기입"> <input type="text" class="form-control form-control-sm" name="etc" placeholder="추가의견, 반려사유 기입">
<input type="text" class="d-none" id="submitPrevention"> <input type="text" class="d-none" id="submitPrevention">
</div> </div>
<div class="col-auto"> <div class="col-auto">
<input type="button" class="btn btn-sm btn-success apprvBtn" th:data-planstate="${apprvAuth eq 'APC004'||apprvAuth eq 'APC003'?'DST004':'DST006'}" value="승인"> <input type="button" class="btn btn-sm btn-success apprvBtn" th:data-affairstate="${apprvAuth eq 'APC004'||apprvAuth eq 'APC003'?'DST004':'DST006'}" value="승인">
</div> </div>
<div class="col-auto"> <div class="col-auto">
<input type="button" class="btn btn-sm btn-danger apprvBtn" th:data-planstate="${apprvAuth eq 'APC004'||apprvAuth eq 'APC003'?'DST003':'DST005'}" value="반려"> <input type="button" class="btn btn-sm btn-danger apprvBtn" th:data-affairstate="${apprvAuth eq 'APC004'||apprvAuth eq 'APC003'?'DST003':'DST005'}" value="반려">
</div> </div>
</div> </div>
</form> </form>
@ -130,9 +145,9 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<th:block th:unless="${plan.planState eq 'DST004' or plan.planState eq 'DST006'}"><!--승인 상태일때는 수정 불가--> <th:block th:unless="${affair.affairStatus eq 'DST004' or affair.affairStatus eq 'DST006'}"><!--승인 상태일때는 수정 불가-->
<th:block th:if="${userSeq eq plan.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용--> <th:block th:if="${userSeq eq affair.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용-->
<button type="button" class="btn btn-warning" id="editPlanBtn">수정</button> <button type="button" class="btn btn-warning" id="editAffairBtn">수정</button>
</th:block> </th:block>
</th:block> </th:block>
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>