fix : 외사모니터링 지정보고 중간저장

master
TaehunPark 2023-01-11 12:14:41 +09:00
parent 658f9cf8bb
commit 56f77c7170
7 changed files with 97 additions and 48 deletions

View File

@ -103,6 +103,7 @@ public class MonitoringController { // 첩보수집활동 > 해양외사모니
md.setContentCnt(monitoringService.selectDesignationListCnt(md)); md.setContentCnt(monitoringService.selectDesignationListCnt(md));
md.setPaginationInfo(); md.setPaginationInfo();
mav.addObject("type", type); mav.addObject("type", type);
mav.addObject("searchUrl", "/monitoring/designationList/"+type);
mav.addObject("searchParams", md); mav.addObject("searchParams", md);
return mav; return mav;
} }
@ -111,7 +112,7 @@ public class MonitoringController { // 첩보수집활동 > 해양외사모니
public ModelAndView planEditModal(@AuthenticationPrincipal UserInfo loginUser, MonitoringDesignation md){ public ModelAndView planEditModal(@AuthenticationPrincipal UserInfo loginUser, MonitoringDesignation md){
ModelAndView mav = new ModelAndView("igActivities/fpiMgt/monitoring/designationEditModal"); ModelAndView mav = new ModelAndView("igActivities/fpiMgt/monitoring/designationEditModal");
if(md.getMdKey()!=null){ if(md.getMdKey()!=null){
md = monitoringService.selectDesignation(md.getMdKey());
} }
mav.addObject("md", md); mav.addObject("md", md);

View File

@ -107,10 +107,11 @@ public class MonitoringService extends BaseService {
} }
return savedDesignation; return savedDesignation;
} }
@Transactional
public Integer designationStateChange(MonitoringDesignationApprv apprv) { public Integer designationStateChange(MonitoringDesignationApprv apprv) {
MonitoringDesignation saveddesignation = monitoringDesignationRepository.findById(apprv.getMdKey()).orElse(null); MonitoringDesignation saveDesignation = monitoringDesignationRepository.findById(apprv.getMdKey()).orElse(null);
saveddesignation.setMdState(apprv.getState()); saveDesignation.setMdState(apprv.getState());
MonitoringDesignationApprv lastApprv = monitoringDesignationApprvRepository.findTopByMdKeyOrderByApprvSeqDesc(apprv.getMdKey()).orElse(null); MonitoringDesignationApprv lastApprv = monitoringDesignationApprvRepository.findTopByMdKeyOrderByApprvSeqDesc(apprv.getMdKey()).orElse(null);
apprv.setApprvSeq(lastApprv==null?1:lastApprv.getApprvSeq()+1); apprv.setApprvSeq(lastApprv==null?1:lastApprv.getApprvSeq()+1);
monitoringDesignationApprvRepository.save(apprv); monitoringDesignationApprvRepository.save(apprv);
@ -118,17 +119,17 @@ public class MonitoringService extends BaseService {
switch (apprv.getState()){ switch (apprv.getState()){
case "DST004": case "DST004":
// 계장승인시 부장 결재권자에게 알림 발송. // 계장승인시 부장 결재권자에게 알림 발송.
userAlarmService.sendAlarmToApprvUser(saveddesignation.getMdKey(), saveddesignation.getWrtOrgan(), "APC001", 36, "해양외사 모니터링 지정보고에 결재대기 문서가 있습니다."); userAlarmService.sendAlarmToApprvUser(saveDesignation.getMdKey(), saveDesignation.getWrtOrgan(), "APC001", 36, "해양외사 모니터링 지정보고에 결재대기 문서가 있습니다.");
userAlarmService.sendAlarmToApprvUser(saveddesignation.getMdKey(), saveddesignation.getWrtOrgan(), "APC002", 36, "해양외사 모니터링 지정보고에 결재대기 문서가 있습니다."); userAlarmService.sendAlarmToApprvUser(saveDesignation.getMdKey(), saveDesignation.getWrtOrgan(), "APC002", 36, "해양외사 모니터링 지정보고에 결재대기 문서가 있습니다.");
break; break;
case "DST003": case "DST003":
case "DST005": case "DST005":
// 반려시 작성자에게 반려 알림 발송 // 반려시 작성자에게 반려 알림 발송
userAlarmService.sendAlarmToWrtUser(saveddesignation.getMdKey(), saveddesignation.getWrtUserSeq(), 36, saveddesignation.getMdTitle()+" 문서가 반려되었습니다."); userAlarmService.sendAlarmToWrtUser(saveDesignation.getMdKey(), saveDesignation.getWrtUserSeq(), 36, saveDesignation.getMdTitle()+" 문서가 반려되었습니다.");
break; break;
case "DST006": case "DST006":
// 부장승인시 작성자에게 승인 알림 발송 // 부장승인시 작성자에게 승인 알림 발송
userAlarmService.sendAlarmToWrtUser(saveddesignation.getMdKey(), saveddesignation.getWrtUserSeq(), 36, saveddesignation.getMdTitle()+" 문서가 승인되었습니다."); userAlarmService.sendAlarmToWrtUser(saveDesignation.getMdKey(), saveDesignation.getWrtUserSeq(), 36, saveDesignation.getMdTitle()+" 문서가 승인되었습니다.");
break; break;
} }
return apprv.getMdKey(); return apprv.getMdKey();

View File

@ -21,12 +21,12 @@
<if test='mdState != null and mdState != ""'> <if test='mdState != null and mdState != ""'>
and md.md_state = #{mdState} and md.md_state = #{mdState}
</if> </if>
<if test='dateSelector == "planDt"'> <if test='dateSelector == "mdDt"'>
<if test='startDate != null and startDate != ""'> <if test='startDate != null and startDate != ""'>
and md.md_dt >= #{startDate}::date and md.md_dt >= #{startDate}::date
</if> </if>
<if test='endDate != null and endDate != ""'> <if test='endDate != null and endDate != ""'>
and md.md_dt &lt;= #{endDate}::date+1 and md.md_dt &lt;= #{endDate}::date
</if> </if>
</if> </if>
<if test='dateSelector == "wrtDt"'> <if test='dateSelector == "wrtDt"'>

View File

@ -1,5 +1,12 @@
$(function(){
$("#dateSelectorDiv").datepicker({
format: "yyyy-mm-dd",
language: "ko",
autoclose: true
});
})
$(document).on('click', '#planTab', function (){ $(document).on('click', '#allTab', function (){
location.href = "/monitoring/designationList/all"; location.href = "/monitoring/designationList/all";
}) })
$(document).on('click', '#stayTab', function (){ $(document).on('click', '#stayTab', function (){
@ -10,7 +17,7 @@ $(document).on('click', '#commitTab', function (){
}) })
$(document).on('click', '#addBtn', function (){ $(document).on('click', '#addBtn', function (){
getDesignationEditModal(null) getDesignationEditModal(null);
}) })
function getDesignationEditModal(mdKey){ function getDesignationEditModal(mdKey){
@ -41,12 +48,43 @@ function getDesignationEditModal(mdKey){
}); });
} }
$(document).on('click', '#editBtn', function (){
$("#designationViewModal").modal('hide');
getDesignationEditModal($(this).attr("data-mdkey"));
})
$(document).on('click', '#saveBtn', function (){ $(document).on('click', '#saveBtn', function (){
if(!$("#mdDt").val()){
alert("대상지정일을 입력해주세요.");
$('#mdDt').focus();
return false;
}
if(!$("#mdName").val()){
alert("성명을 입력해주세요.");
$('#mdName').focus();
return false;
}
if(!$("#mdBirth").val()){
alert("생년월일을 입력해주세요.");
$('#mdBirth').focus();
return false;
}
if(!$("#mdReason").val()){
alert("대상지정 사유를 입력해주세요.");
$('#mdReason').focus();
return false;
}
if(confirm("저장하시겠습니까?")){ if(confirm("저장하시겠습니까?")){
saveDesignation('DST002'); saveDesignation('DST002');
} }
}) })
$(document).on('click', '#saveTempBtn', function (){
if(confirm("임시저장 하시겠습니까?")){
saveDesignation('DST001');
}
})
function saveDesignation(mdState){ function saveDesignation(mdState){
contentFade("in"); contentFade("in");
const formData = new FormData($("#designationEditForm")[0]); const formData = new FormData($("#designationEditForm")[0]);
@ -99,7 +137,8 @@ function getDesignationViewModal(mdKey){
$(document).on('click', '.apprvBtn', function (){ $(document).on('click', '.apprvBtn', function (){
$("#viewModalApprvValue").val($(this).attr("data-planstate")); $("#viewModalApprvValue").val($(this).attr("data-planstate"));
if(confirm($(this).val()+"하시겠습니까?")){ const approval = $(this).val();
if(confirm(approval+"하시겠습니까?")){
const formData = new FormData($("#apprvForm")[0]); const formData = new FormData($("#apprvForm")[0]);
contentFade("in") contentFade("in")
$.ajax({ $.ajax({
@ -112,12 +151,12 @@ $(document).on('click', '.apprvBtn', function (){
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val()); xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
}, },
success : function(result) { success : function(result) {
alert($(this).val()+"되었습니다"); alert(approval+"되었습니다");
getDesignationViewModal(result); getDesignationViewModal(result);
contentFade("out"); contentFade("out");
}, },
error : function(xhr, status) { error : function(xhr, status) {
alert($(this).val()+"처리를 실패하였습니다."); alert(approval+"처리를 실패하였습니다.");
contentFade("out"); contentFade("out");
} }
}) })

View File

@ -8,17 +8,17 @@
<form action="#" method="post" id="designationEditForm"> <form action="#" method="post" id="designationEditForm">
<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}"/>
<!-- <input type="hidden" name="affairKey" th:value="${affair.affairKey}"> <input type="hidden" name="mdKey" th:value="${md.mdKey}">
<input type="hidden" name="affairCategory" th:value="${affair.affairCategory}"> <input type="hidden" name="wrtOrgan" th:value="${md.wrtOrgan}">
<input type="hidden" name="wrtOrgan" th:value="${affair.wrtOrgan}"> <input type="hidden" name="wrtPart" th:value="${md.wrtPart}">
<input type="hidden" name="wrtPart" th:value="${affair.wrtPart}"> <input type="hidden" name="wrtUserSeq" th:value="${md.wrtUserSeq}">
<input type="hidden" name="wrtUserSeq" th:value="${affair.wrtUserSeq}"> <input type="hidden" name="wrtUserGrd" th:value="${md.wrtUserGrd}">
<input type="hidden" name="affairStatus" id="affairStatus" th:value="${affair.affairStatus}"> <input type="hidden" name="wrtUserNm" th:value="${md.wrtUserNm}">
<input type="hidden" name="wrtDt" id="wrtDt" th:value="${#temporals.format(affair.wrtDt, 'yyyy-MM-dd HH:mm')}"> --> <input type="hidden" name="wrtDt" id="wrtDt" th:value="${#temporals.format(md.wrtDt, 'yyyy-MM-dd HH:mm')}">
<div class="row mb-1"> <div class="row mb-1">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">대상지정일</label> <label class="col-sm-1 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="mdDt" name="mdDt" readonly> <input type="text" class="form-control form-control-sm" id="mdDt" name="mdDt" th:value="${md.mdDt}" readonly>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">작성자</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">작성자</label>
<div class="col-sm-2"> <div class="col-sm-2">
@ -32,53 +32,53 @@
<div class="row mb-1"> <div class="row mb-1">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">제목</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">제목</label>
<div class="col-sm-11"> <div class="col-sm-11">
<input type="text" class="form-control form-control-sm" id="mdTitle" name="mdTitle"> <input type="text" class="form-control form-control-sm" id="mdTitle" name="mdTitle" th:value="${md.mdTitle}">
</div> </div>
</div> </div>
<div class="row mb-1"><h6 class="text-center">모니터링 대상자</h6></div> <div class="row mb-1"><h6 class="text-center">모니터링 대상자</h6></div>
<div class="row mb-1"> <div class="row mb-1">
<label for="affairType1" class="col-sm-1 col-form-label col-form-label-sm text-center">성명</label> <label for="affairType1" class="col-sm-1 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="mdName" name="mdName"> <input type="text" class="form-control form-control-sm" id="mdName" name="mdName" th:value="${md.mdName}">
</div> </div>
<label for="affairType2" class="col-sm-1 col-form-label col-form-label-sm text-center">생년월일</label> <label for="affairType2" class="col-sm-1 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="mdBirth" name="mdBirth"> <input type="text" class="form-control form-control-sm" id="mdBirth" name="mdBirth" th:value="${md.mdBirth}" readonly>
</div> </div>
<label for="affairType3" class="col-sm-1 col-form-label col-form-label-sm text-center">국적</label> <label for="affairType3" class="col-sm-1 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="mdNationality" name="mdNationality"> <input type="text" class="form-control form-control-sm" id="mdNationality" name="mdNationality" th:value="${md.mdNationality}">
</div> </div>
<label for="affairType4" class="col-sm-1 col-form-label col-form-label-sm text-center">주소지</label> <label for="affairType4" class="col-sm-1 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="mdAddress" name="mdAddress"> <input type="text" class="form-control form-control-sm" id="mdAddress" name="mdAddress" th:value="${md.mdAddress}">
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="affairType1" class="col-sm-1 col-form-label col-form-label-sm text-center">소속/계급<br>(직위)</label> <label for="affairType1" class="col-sm-1 col-form-label col-form-label-sm text-center">소속/계급<br>(직위)</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm" id="mdRank" name="mdRank"> <input type="text" class="form-control form-control-sm" id="mdRank" name="mdRank" th:value="${md.mdRank}">
</div> </div>
<label for="affairType2" class="col-sm-1 col-form-label col-form-label-sm text-center">주요경력</label> <label for="affairType2" class="col-sm-1 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="mdCareer" name="mdCareer"> <input type="text" class="form-control form-control-sm" id="mdCareer" name="mdCareer" th:value="${md.mdCareer}">
</div> </div>
<label for="affairType3" class="col-sm-1 col-form-label col-form-label-sm text-center">기타사항</label> <label for="affairType3" class="col-sm-1 col-form-label col-form-label-sm text-center">기타사항</label>
<div class="col-sm-5"> <div class="col-sm-5">
<input type="text" class="form-control form-control-sm" id="mdEtc" name="mdEtc"> <input type="text" class="form-control form-control-sm" id="mdEtc" name="mdEtc" th:value="${md.mdEtc}">
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="hashTags" class="col-sm-1 col-form-label col-form-label-sm text-center">대상지정<br>사유</label> <label for="hashTags" class="col-sm-1 col-form-label col-form-label-sm text-center">*대상지정<br>사유</label>
<div class="col-sm-11"> <div class="col-sm-11">
<textarea id="mdReason" name="mdReason" rows="5" cols="139"></textarea> <textarea id="mdReason" name="mdReason" rows="5" cols="139" th:utext="${md.mdReason}"></textarea>
</div> </div>
</div> </div>
<div class="row mb-1"> <div class="row mb-1">
<label for="editor" class="col-sm-1 col-form-label col-form-label-sm text-center">모니터링<br>추진계획</label> <label for="editor" class="col-sm-1 col-form-label col-form-label-sm text-center">모니터링<br>추진계획</label>
<div class="col-sm-11"> <div class="col-sm-11">
<div id="editor"></div> <div id="editor"></div>
<textarea id="content" class="d-none"></textarea> <textarea id="content" class="d-none" th:utext="${md.mdPlan}"></textarea>
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
@ -100,8 +100,12 @@
</div> </div>
</form> </form>
</div> </div>
<div class="modal-footer bg-light"> <div class="modal-footer justify-content-between bg-light">
<div class="col-auto">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>
</div>
<div class="col-auto">
<button type="button" class="btn btn-warning" id="saveTempBtn">임시저장</button> <button type="button" class="btn btn-warning" id="saveTempBtn">임시저장</button>
<button type="button" class="btn btn-primary" id="saveBtn">저장</button> <button type="button" class="btn btn-primary" id="saveBtn">저장</button>
</div>
</div> </div>

View File

@ -18,7 +18,7 @@
<div class="card-body"> <div class="card-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" th:classappend="${type eq 'all'?' active':''}" id="planTab" data-bs-toggle="tab" type="button" role="tab">전체 목록</button> <button class="nav-link" th:classappend="${type eq 'all'?' active':''}" id="allTab" data-bs-toggle="tab" type="button" role="tab">전체 목록</button>
</li> </li>
<li class="nav-item" role="presentation"> <li class="nav-item" role="presentation">
<button class="nav-link" th:classappend="${type eq 'stay'?' active':''}" id="stayTab" data-bs-toggle="tab" type="button" role="tab">결재대기목록</button> <button class="nav-link" th:classappend="${type eq 'stay'?' active':''}" id="stayTab" data-bs-toggle="tab" type="button" role="tab">결재대기목록</button>
@ -38,7 +38,7 @@
</th:block> </th:block>
</select> </select>
</div> </div>
<!-- <div class="col-8"> <div class="col-8">
<div class="row"> <div class="row">
<div class="col-11"> <div class="col-11">
<div class="row justify-content-end pb-1" th:if="${accessAuth eq 'ACC003'}"> <div class="row justify-content-end pb-1" th:if="${accessAuth eq 'ACC003'}">
@ -58,13 +58,13 @@
</div> </div>
<div class="row justify-content-end"> <div class="row justify-content-end">
<div class="col-2"> <div class="col-2">
<input type="text" class="form-control form-control-sm" placeholder="제목" name="contentTitle" th:value="${searchParams.contentTitle}"> <input type="text" class="form-control form-control-sm" placeholder="제목" name="mdTitle" th:value="${searchParams.mdTitle}">
</div> </div>
<div class="col-2"> <div class="col-2">
<select class="form-select form-select-sm" name="planState"> <select class="form-select form-select-sm" name="mdState">
<option value="">상태 선택</option> <option value="">상태 선택</option>
<th:block th:each="commonCode:${session.commonCode.get('DST')}"> <th:block th:each="commonCode:${session.commonCode.get('DST')}">
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.planState}"></option> <option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.mdState}"></option>
</th:block> </th:block>
</select> </select>
</div> </div>
@ -72,7 +72,7 @@
<div class="input-group input-daterange" id="dateSelectorDiv"> <div class="input-group input-daterange" id="dateSelectorDiv">
<select class="form-select form-select-sm w-30" name="dateSelector"> <select class="form-select form-select-sm w-30" name="dateSelector">
<option value="">조건선택</option> <option value="">조건선택</option>
<option value="planDt" th:selected="${searchParams.dateSelector eq 'planDt'}">시행일</option> <option value="mdDt" th:selected="${searchParams.dateSelector eq 'mdDt'}">시행일</option>
<option value="wrtDt" th:selected="${searchParams.dateSelector eq 'wrtDt'}">작성일</option> <option value="wrtDt" th:selected="${searchParams.dateSelector eq 'wrtDt'}">작성일</option>
</select> </select>
<input type="text" class="form-control form-control-sm w-35" id="startDate" name="startDate" placeholder="시작일" autocomplete="off" readonly th:value="${searchParams.startDate}"> <input type="text" class="form-control form-control-sm w-35" id="startDate" name="startDate" placeholder="시작일" autocomplete="off" readonly th:value="${searchParams.startDate}">
@ -85,7 +85,7 @@
<input type="submit" class="btn btn-sm btn-primary" id="searchBtn" value="검색"> <input type="submit" class="btn btn-sm btn-primary" id="searchBtn" value="검색">
</div> </div>
</div> </div>
</div> --> </div>
</div> </div>
</form> </form>
<div class="row justify-content-start"> <div class="row justify-content-start">

View File

@ -20,11 +20,15 @@
<label class="col-sm-1 col-form-label col-form-label-sm text-center">지정일자</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">지정일자</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${md.mdDt}"></label> <label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${md.mdDt}"></label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">작성자</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">작성자</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${md.wrtUserNm}"></label> <th:block th:each="commonCode:${session.commonCode.get('JT')}">
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:if="${commonCode.itemCd eq md.wrtUserGrd}" th:text="|${commonCode.itemValue} ${md.wrtUserNm}|"></label>
</th:block>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">작성일</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">작성일</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${#temporals.format(md.wrtDt, 'yyyy-MM-dd HH:mm')}"></label> <label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${#temporals.format(md.wrtDt, 'yyyy-MM-dd HH:mm')}"></label>
<label class="col-sm-1 col-form-label col-form-label-sm text-center">상태</label> <label class="col-sm-1 col-form-label col-form-label-sm text-center">상태</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:text="${md.mdState}"></label> <th:block th:each="commonCode:${session.commonCode.get('DST')}">
<label class="col-sm-2 col-form-label col-form-label-sm text-start" th:if="${commonCode.itemCd eq md.mdState}" th:text="${commonCode.itemValue}"></label>
</th:block>
</div> </div>
<hr> <hr>
<div class="row mb-1"> <div class="row mb-1">
@ -143,7 +147,7 @@
<div class="col-auto"> <div class="col-auto">
<th:block th:unless="${md.mdState eq 'DST004' or md.mdState eq 'DST006'}"><!--승인 상태일때는 수정 불가 --> <th:block th:unless="${md.mdState eq 'DST004' or md.mdState eq 'DST006'}"><!--승인 상태일때는 수정 불가 -->
<th:block th:if="${userSeq eq md.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용--> <th:block th:if="${userSeq eq md.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용-->
<button type="button" class="btn btn-warning" id="editAffairBtn">수정</button> <button type="button" class="btn btn-warning" th:data-mdkey="${md.mdKey}" id="editBtn">수정</button>
</th:block> </th:block>
</th:block> </th:block>
</div> </div>