이준호 전자조정시스템 커밋

- 법원연계 수정요청사항 적용
This commit is contained in:
leejunho 2024-02-08 09:43:39 +09:00
parent a2acf7e42b
commit a56899887d
12 changed files with 265 additions and 59 deletions

View File

@ -47,4 +47,6 @@ public interface AdjCourtCnctnService {
public RestResponse updateAdjCourtCnctnEndAfterPopAjax(AdjCourtCnctnVO adjCourtCnctnVO, AdjCourtDeptVO adjCourtDeptVO) throws Exception;
public AdjCourtDeptVO selectCourtDept(AdjCourtDeptVO adjCourtDeptVO) throws Exception;
public RestResponse insertAdjCourtRprtDePopAjax(AdjCourtCnctnVO adjCourtCnctnVO) throws Exception;
}

View File

@ -95,6 +95,10 @@ public class AdjCourtCnctnVO extends ComDefaultVO implements Serializable {
private int pageSize = 50;
private int recordCountPerPage = 50;
private String deptOrdinaryYn;
private String uniqId;
public String getCrtSeq() {
return crtSeq;
@ -450,6 +454,20 @@ public class AdjCourtCnctnVO extends ComDefaultVO implements Serializable {
public void setRecordCountPerPage(int recordCountPerPage) {
this.recordCountPerPage = recordCountPerPage;
}
public String getDeptOrdinaryYn() {
return deptOrdinaryYn;
}
public void setDeptOrdinaryYn(String deptOrdinaryYn) {
this.deptOrdinaryYn = deptOrdinaryYn;
}
public String getUniqId() {
return uniqId;
}
public void setUniqId(String uniqId) {
this.uniqId = uniqId;
}
}

View File

@ -99,6 +99,9 @@ public class AdjCourtCnctnDAO extends EgovAbstractDAO {
return (AdjCourtDeptVO) select("adjCourtCnctnDAO.selectCourtDept", adjCourtDeptVO);
}
public void insertAdjCourtRprtDePopAjax(AdjCourtCnctnVO adjCourtCnctnVO) throws Exception {
update("adjCourtCnctnDAO.insertAdjCourtRprtDePopAjax", adjCourtCnctnVO);
}
}

View File

@ -279,4 +279,16 @@ public class AdjCourtCnctnServiceImpl extends EgovAbstractServiceImpl implements
public AdjCourtDeptVO selectCourtDept(AdjCourtDeptVO adjCourtDeptVO) throws Exception {
return adjCourtCnctnDAO.selectCourtDept(adjCourtDeptVO);
}
@Override
public RestResponse insertAdjCourtRprtDePopAjax(AdjCourtCnctnVO adjCourtCnctnVO) throws Exception {
try {
adjCourtCnctnDAO.insertAdjCourtRprtDePopAjax(adjCourtCnctnVO);
}catch (Exception e) {
return new RestResponse(HttpStatus.BAD_REQUEST, "등록에 실패하였습니다.", LocalDateTime.now());
}
return new RestResponse(HttpStatus.OK, "등록 되었습니다.", LocalDateTime.now());
}
}

View File

@ -93,7 +93,10 @@ public class AdjCourtCnctnController {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
if(loginVO != null && (KccadrCourtConstants.CRT_DEPT_ORDINARY).equals(loginVO.getOfcpsNm()))
if(loginVO != null && (KccadrCourtConstants.CRT_DEPT_ORDINARY).equals(loginVO.getOfcpsNm())) {
adjCourtCnctnVO.setDeptOrdinaryYn("Y");
adjCourtCnctnVO.setUniqId(loginVO.getUniqId());
}
adjCourtCnctnVO.setSearchStatCd("list");
@ -155,20 +158,29 @@ public class AdjCourtCnctnController {
@RequestMapping("/kccadr/adjCourtCnctn/adjCourtCnctnDetail.do")
public String adjCourtCnctnDetail(@ModelAttribute("adjCourtCnctnVO") AdjCourtCnctnVO CourtVO, ModelMap model) throws Exception {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
AdjCourtCnctnVO adjCourtCnctnVO = adjCourtCnctnService.findByid(CourtVO);
if(StringUtil.isEmpty(adjCourtCnctnVO.getTabSeq())) {
adjCourtCnctnVO.setTabSeq("0");
}
model.addAttribute("courtVO", adjCourtCnctnVO);
model.addAttribute("loginVO", loginVO);
return "kccadr/adjCourtCnctn/adjCourtCnctnDetail";
}
@RequestMapping("/kccadr/adjCourtCnctn/adjCourtCnctnDetailTab0.do")
public String adjCourtCnctnDetailTab0(@ModelAttribute("adjCourtCnctnVO") AdjCourtCnctnVO CourtVO, ModelMap model) throws Exception {
AdjCourtCnctnVO adjCourtCnctnVO = adjCourtCnctnService.findByid(CourtVO);
model.addAttribute("courtVO", adjCourtCnctnVO);
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
model.addAttribute("loginVO", loginVO);
return "kccadr/adjCourtCnctn/adjCourtCnctnDetailTab0";
}
@ -180,6 +192,9 @@ public class AdjCourtCnctnController {
List<AdjCourtCnctnVO> list = adjCourtCnctnService.selectAdjCourtCnctniFileList(CourtVO);
model.addAttribute("list", list);
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
model.addAttribute("loginVO", loginVO);
return "kccadr/adjCourtCnctn/adjCourtCnctnDetailTab1";
}
@ -545,31 +560,26 @@ public class AdjCourtCnctnController {
model.addAttribute("isMember", "Y");
}
// //selectbox 미리 만들기
// LocVO locVO = new LocVO();
// locVO.setTopLocNo(topLocNo); //최상위 매뉴번호
// List<LocVO> orgHiddenList = orgChartManageService.selectOrgChartListAjax(locVO);
// String userOneDepth = "";
// String userTwoDepth = "";
//
// if(null != userManageVO.getPartIdx() && !"".equals(userManageVO.getPartIdx())) {
// for(LocVO tempLocVO : orgHiddenList) {
// if(userManageVO.getPartIdx().equals(tempLocVO.getId())){
// if(1==tempLocVO.getDepths()) { //1뎁스면 조회 안함
// userOneDepth = tempLocVO.getId();
// }else { //2뎁스면
// userTwoDepth = tempLocVO.getId() ;
// userOneDepth = tempLocVO.getParent() ;
// }
// }
// }
// }
// model.addAttribute("userOneDepth", userOneDepth);
// model.addAttribute("userTwoDepth", userTwoDepth);
// model.addAttribute("orgHiddenList", orgHiddenList);
return "kccadr/adjCourtCnctn/adjCourtUserDetail";
}
@RequestMapping(value = "/kccadr/adjCourtCnctn/popup/adjCourtRprtDePop.do")
public String adjCourtRprtDePop(@ModelAttribute("AdjCourtCnctnVO") AdjCourtCnctnVO adjCourtCnctnVO, ModelMap model) throws Exception {
return "kccadr/adjCourtCnctn/pop/adjCourtRprtDePop";
}
@RequestMapping(value = "/kccadr/adjCourtCnctn/insertAdjCourtRprtDePopAjax.do")
public ResponseEntity<RestResponse> insertAdjCourtRprtDePopAjax(AdjCourtCnctnVO adjCourtCnctnVO) throws Exception {
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
adjCourtCnctnVO.setLastUpdusrId(loginVO.getUniqId());
adjCourtCnctnVO.setFrstRegisterId(loginVO.getUniqId());
return ResponseEntity.ok().body(adjCourtCnctnService.insertAdjCourtRprtDePopAjax(adjCourtCnctnVO));
}
private List<Map<String, String>> deptNmArr(List<AdjCourtCnctnVO> list){
List<Map<String, String>> tmp1 = new ArrayList<Map<String, String>>();

View File

@ -393,7 +393,8 @@ public class EgovMainController {
&& (KccadrCourtConstants.CRT_DEPT_ORDINARY).equals(user.getOfcpsNm())) {
list_menulist = list_menulist.stream()
.filter(
t -> !"/kccadr/adjCourtAprvl/aprvlList.do".equals(t.get("chkURL"))
t -> (!"/kccadr/adjCourtAprvl/aprvlList.do".equals(t.get("chkURL"))
&& !"/kccadr/adjCourtCnctn/adjCourtSelectUserList.do".equals(t.get("chkURL")))
)
.collect(Collectors.toList());
}

View File

@ -91,8 +91,11 @@
b.esntl_id = #searchLoginId#
</isNotEqual>
</isNotEmpty>
<isNotEmpty property="deptOrdinaryYn" >
<isEqual property="deptOrdinaryYn" compareValue="Y" prepend="AND" >
b.esntl_id = #uniqId#
</isEqual>
</isNotEmpty>
</sql>
@ -968,4 +971,14 @@
</select>
<update id="adjCourtCnctnDAO.insertAdjCourtRprtDePopAjax" parameterClass="adjCourtCnctnVO">
UPDATE adr_court_mgr
SET crt_rprt_de = #crtRprtDe#
, last_updusr_id = #lastUpdusrId#
, last_updt_pnttm = now()
WHERE crt_seq = #crtSeq#
</update>
</sqlMap>

View File

@ -57,6 +57,10 @@ function DeptPop(){
commonPopWindowopenForm("/kccadr/adjCourtCnctn/popup/adjCourtCnctnDeptPop.do", "650", "400", "DeptPop", $("#popForm"));
}
function RprtDePop(){
commonPopWindowopenForm("/kccadr/adjCourtCnctn/popup/adjCourtRprtDePop.do", "650", "400", "RprtDePop", $("#popForm"));
}
function aprvlPop(pram){
document.popForm.crtStatCd.value = pram;
@ -107,6 +111,8 @@ function endAfterPop(){
<input type="hidden" name="crtDeptKng" value="<c:out value="${courtVO.crtDeptKng}" />" />
<input type="hidden" name="crtStatCd" id="crtStatCd" value=""/>
<input type="hidden" name="esntlId" value="<c:out value="${courtVO.esntlId}" />" />
<input type="hidden" name="crtRprtDe" value="<c:out value="${courtVO.crtRprtDe}" />" />
</form>
@ -132,7 +138,7 @@ function endAfterPop(){
<c:out value="${fn:substring(courtVO.crtDcsnDe, 0, 10)}"/>
</td>
<!-- <th>메일수신일(사건기록)</th> -->
<th>메일수신일(사건기록)(사건기록)</th>
<th>메일수신일(사건기록)</th>
<td>
<c:out value="${fn:substring(courtVO.crtRcptDe, 0, 10)}"/>
</td>
@ -164,6 +170,11 @@ function endAfterPop(){
<th>사무수행보고일</th>
<td>
<c:out value="${fn:substring(courtVO.crtRprtDe, 0, 10)}"/>
<c:if test="${loginVO.ofcpsNm eq '80'
or loginVO.ofcpsNm eq '90'
or loginVO.id eq 'admin'}">
<button type="button" class="btnType06" onclick="RprtDePop();">보고일자 선택</button>
</c:if>
</td>
</tr>
<tr>
@ -185,8 +196,17 @@ function endAfterPop(){
<th>조정위원</th>
<td>
<c:out value="${courtVO.crtDeptOrdi}"/>
<c:if test="${courtVO.crtStatCd*1 < 101050}">
<button type="button" class="btnType06" onclick="DeptPop();">사건배당</button>
<c:if test="${loginVO.ofcpsNm ne '80'}">
<c:if test="${courtVO.crtStatCd*1 < 101050}">
<button type="button" class="btnType06" onclick="DeptPop();">
<c:if test="${loginVO.ofcpsNm ne '90'}">
사건배당
</c:if>
<c:if test="${loginVO.ofcpsNm eq '90'}">
변경지정
</c:if>
</button>
</c:if>
</c:if>
</td>
</tr>
@ -210,12 +230,12 @@ function endAfterPop(){
<c:out value="${courtVO.crtClimntAgtPhone}"/>
</td>
</tr>
<tr>
<th>원고 정보</th>
<td colspan="3">
<c:out value="${courtVO.crtClimntInfo}"/>
</td>
</tr>
<!-- <tr> -->
<!-- <th>원고 정보</th> -->
<!-- <td colspan="3"> -->
<%-- <c:out value="${courtVO.crtClimntInfo}"/> --%>
<!-- </td> -->
<!-- </tr> -->
<tr>
<th>피고 이름</th>
<td>
@ -236,12 +256,12 @@ function endAfterPop(){
<c:out value="${courtVO.crtDfndntAgntPhone}"/>
</td>
</tr>
<tr>
<th>피고 정보</th>
<td colspan="3">
<c:out value="${courtVO.crtDfndntInfo}"/>
</td>
</tr>
<!-- <tr> -->
<!-- <th>피고 정보</th> -->
<!-- <td colspan="3"> -->
<%-- <c:out value="${courtVO.crtDfndntInfo}"/> --%>
<!-- </td> -->
<!-- </tr> -->
<tr>
<th>분야</th>
<td>
@ -262,21 +282,22 @@ function endAfterPop(){
<div class="area_left"></div>
<div class="area_right">
<!-- 프로세스 시간 순서대로 버튼 나열 -->
<!-- 접수 결재 승인 전까지만 -->
<c:if test="${courtVO.crtStatCd*1 < 101010}">
<button type="button" class="btnType06" onclick="fn_modyfi(); return false;">수정</button>
<button type="button" class="btnType06" onclick="aprvlPop('101010');">접수결재</button>
</c:if>
<c:if test="${courtVO.crtStatCd*1 >= 101050
&& courtVO.crtStatCd*1 < 201010}">
<button type="button" class="btnType06" onclick="endPop();">결과보고</button>
<button type="button" class="btnType06" onclick="appPop();">기일지정</button>
<button type="button" class="btnType06" onclick="aprvlPop('201010')">종결결재</button>
</c:if>
<c:if test="${courtVO.crtStatCd*1 eq 300000}">
<button type="button" class="btnType06" onclick="endAfterPop();">사후관리</button>
<c:if test="${loginVO.ofcpsNm ne '80'}">
<!-- 접수 결재 승인 전까지만 -->
<c:if test="${courtVO.crtStatCd*1 < 101010}">
<button type="button" class="btnType06" onclick="fn_modyfi(); return false;">수정</button>
<button type="button" class="btnType06" onclick="aprvlPop('101010');">접수결재</button>
</c:if>
<c:if test="${courtVO.crtStatCd*1 >= 101050
&& courtVO.crtStatCd*1 < 201010}">
<button type="button" class="btnType06" onclick="endPop();">결과보고</button>
<button type="button" class="btnType06" onclick="appPop();">기일지정</button>
<button type="button" class="btnType06" onclick="aprvlPop('201010')">종결결재</button>
</c:if>
<c:if test="${courtVO.crtStatCd*1 eq 300000}">
<button type="button" class="btnType06" onclick="endAfterPop();">사후관리</button>
</c:if>
</c:if>
<button type="button" class="btnType03" onclick="fn_GoList(); return false;">목록</button>
</div>

View File

@ -117,7 +117,9 @@
<!-- //list_상세 -->
<div class="btn_wrap btn_layout05" style="margin-top:30px;">
<div class="btn_left_box">
<button type="button" class="btnType02" onclick="adjCourtCnctnFilePop(); return false;">문서 등록</button>
<c:if test="${loginVO.ofcpsNm ne '80'}">
<button type="button" class="btnType02" onclick="adjCourtCnctnFilePop(); return false;">문서 등록</button>
</c:if>
</div>
</div>

View File

@ -229,7 +229,7 @@ function fn_GoList(){
<th>기한연장(1차)</th>
<td>
<div id="sel_date" class="sel_date">
<input readonly="readonly" type="text" class="crtAllctDdlDeAdd1st inp" title="배당일자" id="crtAllctDdlDeAdd1st" name="crtAllctDdlDeAdd1st" value="" data-datecontrol="true" onchange="test(this);">
<input readonly="readonly" type="text" class="crtAllctDdlDeAdd1st inp" title="기한연장(1차)" id="crtAllctDdlDeAdd1st" name="crtAllctDdlDeAdd1st" value="${fn:substring(courtVO.crtAllctDdlDeAdd1st, 0, 10)}" data-datecontrol="true" onchange="test(this);">
<div class="calendar_in" id="calendarName_endDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('crtAllctDdlDeAdd1st-lry','',this)" class="btn_cal" ></button>
<div id="crtAllctDdlDeAdd1st-lry" class="calendarPop" style="display: none;">
@ -241,7 +241,7 @@ function fn_GoList(){
<th>기한연장(2차)</th>
<td>
<div id="sel_date" class="sel_date">
<input readonly="readonly" type="text" class="crtAllctDdlDeAdd2nd inp" title="배당일자" id="crtAllctDdlDeAdd2nd" name="crtAllctDdlDeAdd2nd" value="" data-datecontrol="true" onchange="test(this);">
<input readonly="readonly" type="text" class="crtAllctDdlDeAdd2nd inp" title="기한연장(2차)" id="crtAllctDdlDeAdd2nd" name="crtAllctDdlDeAdd2nd" value="${fn:substring(courtVO.crtAllctDdlDeAdd2nd, 0, 10)}" data-datecontrol="true" onchange="test(this);">
<div class="calendar_in" id="calendarName_endDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('crtAllctDdlDeAdd2nd-lry','',this)" class="btn_cal" ></button>
<div id="crtAllctDdlDeAdd2nd-lry" class="calendarPop" style="display: none;">

View File

@ -0,0 +1,118 @@
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="validator"
uri="http://www.springmodules.org/tags/commons-validator"%>
<html lang="ko">
<head>
<title>조정위원검색</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
var admId = null;
$(document).ready(function() {
});
function fncClose() {
var tmpAdmId = $("input[name='admId']:checked").val();
if (typeof tmpAdmId == "undefined" || tmpAdmId == ""
|| tmpAdmId == null) {
alert('조정위원을 선택해주세요.')
return;
}
admId = tmpAdmId.split('§');
var targetId = $("#targetId").val();
window.opener
.setAdmId(admId[0], admId[1], admId[2], admId[3], targetId);
self.close();
}
function fn_insert() {
var form = document.insertForm;
form.crtRprtDe.value = document.listForm.crtRprtDe.value;
var msg = "선택 하시겠습니까?";
if(confirm(msg)){
//신청인 정보 입력
var data = new FormData(document.insertForm);
var url= "<c:url value='/kccadr/adjCourtCnctn/insertAdjCourtRprtDePopAjax.do' />";
$.ajax({
type: "POST",
url: url,
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (data) {
alert(data.data);
if(data.status == 'OK')
{
window.opener.location.reload();
window.close();
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
</script>
</head>
<body>
<form name="insertForm" id="insertForm">
<input type="hidden" id="crtSeq" name="crtSeq" value="${AdjCourtCnctnVO.crtSeq}" />
<input type="hidden" name="crtRprtDe" value="${AdjCourtCnctnVO.crtRprtDe}" />
</form>
<div class="area_popup search_list_popup" style="width: 640px;">
<form:form id="listForm" name="listForm" method="post" onsubmit="return false;">
<input type="hidden" name="targetId" id="targetId" value="<c:out value='${dtbVO.targetId}' />" />
<div class="cont_popup">
<p class="tit_text tt1">사무수행보고일</p>
<table class="pop_tbType02">
<colgroup>
<col style="width: 60%">
<col style="width: 40%">
</colgroup>
<thead>
<tr>
<th class="tt2">사무수행보고일</th>
<th class="tt2"></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div id="sel_date" class="sel_date">
<input readonly="readonly" type="text" class="crtRprtDe inp" title="사무수행보고일" id="crtRprtDe" name="crtRprtDe" value="${fn:substring(AdjCourtCnctnVO.crtRprtDe, 0, 10)}" data-datecontrol="true">
<div class="calendar_in" id="calendarName_crtRprtDe" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('crtRprtDe-lry','',this)" class="btn_cal" ></button>
<div id="crtRprtDe-lry" class="calendarPop" style="display: none;">
<!-- <div id="crtRprtDe-lry" class="calendarPop"> -->
<iframe id="crtRprtDe-ifrm" name="crtRprtDe-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html"title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div>
</div>
</td>
<td>
<button class="btnType06" onclick="fn_insert(); return false;">선택</button>
</td>
</tr>
</tbody>
</table>
</div>
</form:form>
</div>
</body>
</html>

View File

@ -22,6 +22,12 @@ $( document).ready(function() {
$("#top_href_"+subMenuNo).parents("ul").show();
$("#top_href_"+subMenuNo).attr('class', 'on');
// $(".menu_tit:contains('법원연계조정관리')").click(function(){
// alert("법원연계조정관리 버튼이 클릭되었습니다."); // 클릭 시 발생할 동작을 여기에 추가하세요.
// });
if(${user.ofcpsNm == '90'}){
$(".menu_tit:contains('법원연계조정관리')").click();
}
});