검찰연계목록 개발중

This commit is contained in:
itn 2023-10-24 15:28:21 +09:00
parent 1ed77b5d46
commit 1c137c66b6
9 changed files with 1220 additions and 0 deletions

View File

@ -0,0 +1,19 @@
package kcc.kccadr.adrpr.service;
import java.util.List;
public interface AdrPrsctLinkService {
AdrPrsctLinkVO selectAdrPrsctLinkDetail(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception;
List<AdrPrsctLinkVO> selectAdrPrsctLinkList(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception;
Integer selectAdrPrsctLinkListCount(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception;
void adrPrsctLinkInsert(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception;
int adrPrsctLinkUpdate(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception;
int adrPrsctLinkDelete(AdrPrsctLinkVO aprvlLineMgrVO) throws Exception;
}

View File

@ -0,0 +1,101 @@
package kcc.kccadr.adrpr.service;
import kcc.com.cmm.ComDefaultVO;
public class AdrPrsctLinkVO extends ComDefaultVO{
private static final long serialVersionUID = 1L;
private String prsctSeq; // 검찰연계 일련번호
private String dividendDate; // 배당일
private String prsctNo; // 본사건번호
private String prsctAdrNo; // 조정사건번호
private String plntfNm; // 원고-대리인 이름
private String plntfPhone; // 원고-대리인 연락처
private String dfndnNm; // 피고-대리인 이름
private String dfndnPhone; // 피고-대리인 연락처
private String prsctCn; // 사건내용
private String frstRegisterId; // 등록자
private String frstRegistPnttm; // 등록일시
private String lastUpdusrId; // 수정자
private String lastUpdtPnttm; // 수정일시
public String getPrsctSeq() {
return prsctSeq;
}
public void setPrsctSeq(String prsctSeq) {
this.prsctSeq = prsctSeq;
}
public String getDividendDate() {
return dividendDate;
}
public void setDividendDate(String dividendDate) {
this.dividendDate = dividendDate;
}
public String getPrsctNo() {
return prsctNo;
}
public void setPrsctNo(String prsctNo) {
this.prsctNo = prsctNo;
}
public String getPrsctAdrNo() {
return prsctAdrNo;
}
public void setPrsctAdrNo(String prsctAdrNo) {
this.prsctAdrNo = prsctAdrNo;
}
public String getPlntfNm() {
return plntfNm;
}
public void setPlntfNm(String plntfNm) {
this.plntfNm = plntfNm;
}
public String getPlntfPhone() {
return plntfPhone;
}
public void setPlntfPhone(String plntfPhone) {
this.plntfPhone = plntfPhone;
}
public String getDfndnNm() {
return dfndnNm;
}
public void setDfndnNm(String dfndnNm) {
this.dfndnNm = dfndnNm;
}
public String getDfndnPhone() {
return dfndnPhone;
}
public void setDfndnPhone(String dfndnPhone) {
this.dfndnPhone = dfndnPhone;
}
public String getPrsctCn() {
return prsctCn;
}
public void setPrsctCn(String prsctCn) {
this.prsctCn = prsctCn;
}
public String getFrstRegisterId() {
return frstRegisterId;
}
public void setFrstRegisterId(String frstRegisterId) {
this.frstRegisterId = frstRegisterId;
}
public String getFrstRegistPnttm() {
return frstRegistPnttm;
}
public void setFrstRegistPnttm(String frstRegistPnttm) {
this.frstRegistPnttm = frstRegistPnttm;
}
public String getLastUpdusrId() {
return lastUpdusrId;
}
public void setLastUpdusrId(String lastUpdusrId) {
this.lastUpdusrId = lastUpdusrId;
}
public String getLastUpdtPnttm() {
return lastUpdtPnttm;
}
public void setLastUpdtPnttm(String lastUpdtPnttm) {
this.lastUpdtPnttm = lastUpdtPnttm;
}
}

View File

@ -0,0 +1,73 @@
package kcc.kccadr.adrpr.service.impl;
import java.util.List;
import org.springframework.stereotype.Repository;
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
import kcc.kccadr.adrpr.service.AdrPrsctLinkVO;
@Repository("adrPrsctLinkDAO")
public class AdrPrsctLinkDAO extends EgovAbstractDAO {
/**
* 검찰연계 상세보기
* @param adrPrsctLinkVO
* @return
* @throws Exception
*/
public AdrPrsctLinkVO selectAdrPrsctLinkDetail(AdrPrsctLinkVO aprvlLineMgrVO) throws Exception {
return (AdrPrsctLinkVO) select("AdrPrsctLinkDAO.selectAdrPrsctLinkDetail", aprvlLineMgrVO);
}
/**
* 검찰연계 목록
* @param adrPrsctLinkVO
* @return
* @throws Exception
*/
@SuppressWarnings("unchecked")
public List<AdrPrsctLinkVO> selectAdrPrsctLinkList(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return (List<AdrPrsctLinkVO>) list("AdrPrsctLinkDAO.selectAdrPrsctLinkList", adrPrsctLinkVO);
}
/**
* 검찰연계 목록(토털카운트)
* @param adrPrsctLinkVO
* @return
* @throws Exception
*/
public Integer selectAdrPrsctLinkListCount(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return (Integer) select("AdrPrsctLinkDAO.selectAdrPrsctLinkListCount", adrPrsctLinkVO);
}
/**
* 검찰연계 등록
* @param adrPrsctLinkVO
* @throws Exception
*/
public void adrPrsctLinkInsert(AdrPrsctLinkVO aprvlLineMgrVO) throws Exception {
insert("AdrPrsctLinkDAO.adrPrsctLinkInsert", aprvlLineMgrVO);
}
/**
* 검찰연계 수정
* @param adrPrsctLinkVO
* @return
* @throws Exception
*/
public int adrPrsctLinkUpdate(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return update("AdrPrsctLinkDAO.adrPrsctLinkUpdate", adrPrsctLinkVO);
}
/**
* 검찰연계 삭제
* @param adrPrsctLinkVO
* @return
* @throws Exception
*/
public int adrPrsctLinkDelete(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return delete("AdrPrsctLinkDAO.adrPrsctLinkDelete", adrPrsctLinkVO);
}
}

View File

@ -0,0 +1,44 @@
package kcc.kccadr.adrpr.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
import kcc.kccadr.adrpr.service.AdrPrsctLinkService;
import kcc.kccadr.adrpr.service.AdrPrsctLinkVO;
@Service("adrPrsctLinkService")
public class AdrPrsctLinkServiceImpl extends EgovAbstractServiceImpl implements AdrPrsctLinkService {
@Resource(name = "adrPrsctLinkDAO")
private AdrPrsctLinkDAO adrPrsctLinkDAO;
public AdrPrsctLinkVO selectAdrPrsctLinkDetail(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return adrPrsctLinkDAO.selectAdrPrsctLinkDetail(adrPrsctLinkVO);
}
public List<AdrPrsctLinkVO> selectAdrPrsctLinkList(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
return adrPrsctLinkDAO.selectAdrPrsctLinkList(adrPrsctLinkVO);
}
@Override
public Integer selectAdrPrsctLinkListCount(AdrPrsctLinkVO aprvlLineMgrVO) throws Exception {
return adrPrsctLinkDAO.selectAdrPrsctLinkListCount(aprvlLineMgrVO);
}
public void adrPrsctLinkInsert(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception {
adrPrsctLinkDAO.adrPrsctLinkInsert(adrPrsctLinkVO);
}
public int adrPrsctLinkUpdate(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception{
return adrPrsctLinkDAO.adrPrsctLinkUpdate(adrPrsctLinkVO);
}
public int adrPrsctLinkDelete(AdrPrsctLinkVO adrPrsctLinkVO) throws Exception{
return adrPrsctLinkDAO.adrPrsctLinkDelete(adrPrsctLinkVO);
}
}

View File

@ -0,0 +1,196 @@
package kcc.kccadr.adrpr.web;
import java.util.List;
import java.util.Locale;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.spring.data.util.ExcelUtil;
import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.kccadr.adrpr.service.AdrPrsctLinkService;
import kcc.kccadr.adrpr.service.AdrPrsctLinkVO;
@Controller
public class AdrPrsctLinkController {
//로그인 체크 util
@Resource(name = "checkLoginUtil")
private CheckLoginUtil checkLoginUtil;
// 검찰연계
@Resource(name = "adrPrsctLinkService")
private AdrPrsctLinkService adrPrsctLinkService;
// PRSCT_SEQ
@Resource(name="adrPrsctLinkIdgenService")
private EgovIdGnrService adrPrsctLinkIdgenService;
/**
* 검찰연계 목록 화면
* date : 2023.10.23
*/
@RequestMapping("/kccadr/adrpr/adrPrsctLinkList.do")
public String adrPrsctLinkList(@ModelAttribute("adrPrsctLinkVO") AdrPrsctLinkVO adrPrsctLinkVO
, ModelMap model) throws Exception {
if(adrPrsctLinkVO.getPageUnit() != 10) {
adrPrsctLinkVO.setPageUnit(adrPrsctLinkVO.getPageUnit());
}
if("".equals(adrPrsctLinkVO.getSearchSortCnd())){
adrPrsctLinkVO.setSearchSortCnd("prsctSeq");
adrPrsctLinkVO.setSearchSortOrd("desc");
}
/** paging */
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(adrPrsctLinkVO.getPageIndex());
paginationInfo.setRecordCountPerPage(adrPrsctLinkVO.getPageUnit());
paginationInfo.setPageSize(adrPrsctLinkVO.getPageSize());
adrPrsctLinkVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
adrPrsctLinkVO.setLastIndex(paginationInfo.getLastRecordIndex());
adrPrsctLinkVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
paginationInfo.setTotalRecordCount(adrPrsctLinkService.selectAdrPrsctLinkListCount(adrPrsctLinkVO));
model.addAttribute("paginationInfo", paginationInfo);
List<AdrPrsctLinkVO> list = adrPrsctLinkService.selectAdrPrsctLinkList(adrPrsctLinkVO);
model.addAttribute("list", list);
return "kccadr/adrpr/adrPrsctLinkList";
}
/**
* 조정진행목록 목록 Excel
*
* @param apmVO
* @param model
* @return
* @throws Exception
*/
@SuppressWarnings("rawtypes")
@RequestMapping(value = "/kccadr/adrpr/adrPrsctLinkExcel.do")
public ModelAndView excel(@ModelAttribute("adrPrsctLinkVO") AdrPrsctLinkVO adrPrsctLinkVO
, ModelMap model) throws Exception {
adrPrsctLinkVO.setExcelYn("Y");
List list = adrPrsctLinkService.selectAdrPrsctLinkList(adrPrsctLinkVO);
// 세팅값
String title = "검찰연계목록리스트";
int[] width = {4000, 8000, 8000, 5000, 5000, 5000, 4000}; // 너비
String[] header = {"사건번호", "조정사건번호", "원고(대리인) 이름", "원고(대리인) 연락처", "피고(대리인) 이름", "피고(대리인) 연락처", "배당일"}; // 헤더에 들어갈 이름
String[] order = {"PrsctNo", "PrsctAdrNo", "PlntfNm", "PlntfPhone", "DfndnNm", "DfndnPhone", "DividendDate"}; // vo 내부의 필드 이름 (첫글자 대문자, 낙타체 사용)
// 호출
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(list, header, order, width, title);
model.addAttribute("locale", Locale.KOREA);
model.addAttribute("workbook", workbook);
model.addAttribute("workbookName", title);
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("excelDownloadView");
modelAndView.addObject(model);
return modelAndView;
}
/**
* 검찰연계 등록 화면
* date : 2023.10.23
*/
@RequestMapping("/kccadr/adrpr/adrPrsctLinkRegist.do")
public String adrPrsctLinkRegist(@ModelAttribute("adrPrsctLinkVO") AdrPrsctLinkVO adrPrsctLinkVO
, ModelMap model) throws Exception {
return "kccadr/adrpr/adrPrsctLinkRegist";
}
// 검찰연계 저장
@RequestMapping(value="/kccadr/adrpr/adrPrsctLinkSaveAjax.do")
public ModelAndView adrPrsctLinkSaveAjax(@ModelAttribute("adrPrsctLinkVO") AdrPrsctLinkVO adrPrsctLinkVO
, HttpServletRequest request) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
try {
//로그인 정보 획득 - ssoLoginVO 사용
LoginVO loginVO = checkLoginUtil.getLoginVO();
adrPrsctLinkVO.setFrstRegisterId(loginVO.getUniqId());
adrPrsctLinkVO.setLastUpdusrId(loginVO.getUniqId());
// 저장
if (StringUtil.isEmpty(adrPrsctLinkVO.getPrsctSeq())) {
// 인서트
String nextId =adrPrsctLinkIdgenService.getNextStringId();
adrPrsctLinkVO.setPrsctSeq(nextId);
adrPrsctLinkService.adrPrsctLinkInsert(adrPrsctLinkVO);
}
else {
// 업데이트
adrPrsctLinkService.adrPrsctLinkUpdate(adrPrsctLinkVO);
}
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
// 검찰연계 상세정보
@RequestMapping(value="/kccadr/adrpr/adrPrsctLinkDetailAjax.do")
public ModelAndView adrPrsctLinkDetailAjax(@ModelAttribute("adrPrsctLinkVO") AdrPrsctLinkVO adrPrsctLinkVO
, HttpServletRequest request) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
AdrPrsctLinkVO result = new AdrPrsctLinkVO();
try {
//로그인 정보 획득 - ssoLoginVO 사용
LoginVO loginVO = checkLoginUtil.getLoginVO();
adrPrsctLinkVO.setFrstRegisterId(loginVO.getUniqId());
adrPrsctLinkVO.setLastUpdusrId(loginVO.getUniqId());
result = adrPrsctLinkService.selectAdrPrsctLinkDetail(adrPrsctLinkVO);
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
modelAndView.addObject("result", result);
return modelAndView;
}
}

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<sqlMap resource="egovframework/sqlmap/kccadr/adrpr/AdrPrsctLink_SQL_Mysql.xml"/>
</sqlMapConfig>

View File

@ -0,0 +1,167 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
<!-- 검찰연계 -->
<sqlMap namespace="AdrPrsctLink">
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="AdrPrsctLinkVO" type="kcc.kccadr.adrpr.service.AdrPrsctLinkVO"/>
<!-- 검찰연계 상세보기 -->
<select id="AdrPrsctLinkDAO.selectAdrPrsctLinkDetail" parameterClass="AdrPrsctLinkVO" resultClass="AdrPrsctLinkVO">
SELECT
PRSCT_SEQ AS prsctSeq
,TO_CHAR(DIVIDEND_DATE,'YYYY-MM-DD') AS dividendDate
,PRSCT_NO AS prsctNo
,PRSCT_ADR_NO AS prsctAdrNo
,PLNTF_NM AS plntfNm
,PLNTF_PHONE AS plntfPhone
,DFNDN_NM AS dfndnNm
,DFNDN_PHONE AS dfndnPhone
,PRSCT_CN AS prsctCn
,FRST_REGISTER_ID AS frstRegisterId
,FRST_REGIST_PNTTM AS frstRegistPnttm
,LAST_UPDUSR_ID AS lastUpdusrId
,LAST_UPDT_PNTTM AS lastUpdtPnttm
FROM ADR_PRSCT_LINK
WHERE PRSCT_SEQ = #prsctSeq#
</select>
<!-- 검찰연계 목록 -->
<select id="AdrPrsctLinkDAO.selectAdrPrsctLinkList" parameterClass="AdrPrsctLinkVO" resultClass="AdrPrsctLinkVO">
SELECT
PRSCT_SEQ AS prsctSeq
,TO_CHAR(DIVIDEND_DATE,'YYYY-MM-DD') AS dividendDate
,PRSCT_NO AS prsctNo
,PRSCT_ADR_NO AS prsctAdrNo
,PLNTF_NM AS plntfNm
,PLNTF_PHONE AS plntfPhone
,DFNDN_NM AS dfndnNm
,DFNDN_PHONE AS dfndnPhone
,PRSCT_CN AS prsctCn
,FRST_REGISTER_ID AS frstRegisterId
,FRST_REGIST_PNTTM AS frstRegistPnttm
,LAST_UPDUSR_ID AS lastUpdusrId
,LAST_UPDT_PNTTM AS lastUpdtPnttm
FROM ADR_PRSCT_LINK
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
PRSCT_NO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
PRSCT_ADR_NO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
PLNTF_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
DFNDN_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
TO_CHAR(DIVIDEND_DATE,'YYYY-MM-DD') = #searchKeyword#
</isEqual>
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchStartDt">
TO_CHAR(FRST_REGIST_PNTTM,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '-' , '')
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchEndDt">
TO_CHAR(FRST_REGIST_PNTTM,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '-' , '')
</isNotEmpty>
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
</isNotEmpty>
<isNotEmpty property="searchSortOrd">
$searchSortOrd$
</isNotEmpty>
<isEmpty property="excelYn">
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</isEmpty>
</select>
<select id="AdrPrsctLinkDAO.selectAdrPrsctLinkListCount" parameterClass="AdrPrsctLinkVO" resultClass="Integer">
SELECT
COUNT(0) AS TOT
FROM ADR_PRSCT_LINK
WHERE 1=1
<isNotEmpty property="searchKeyword">
<isEqual prepend="AND" property="searchCondition" compareValue="1">
PRSCT_NO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="2">
PRSCT_ADR_NO LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="3">
PLNTF_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="4">
DFNDN_NM LIKE CONCAT('%' , #searchKeyword#, '%')
</isEqual>
<isEqual prepend="AND" property="searchCondition" compareValue="5">
TO_CHAR(DIVIDEND_DATE,'YYYY-MM-DD') = #searchKeyword#
</isEqual>
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchStartDt">
TO_CHAR(FRST_REGIST_PNTTM,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '-' , '')
</isNotEmpty>
<isNotEmpty prepend="AND" property="searchEndDt">
TO_CHAR(FRST_REGIST_PNTTM,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '-' , '')
</isNotEmpty>
</select>
<!-- 검찰연계 등록 -->
<insert id="AdrPrsctLinkDAO.adrPrsctLinkInsert" parameterClass="AdrPrsctLinkVO">
INSERT INTO ADR_PRSCT_LINK (
PRSCT_SEQ
,DIVIDEND_DATE
,PRSCT_NO
,PRSCT_ADR_NO
,PLNTF_NM
,PLNTF_PHONE
,DFNDN_NM
,DFNDN_PHONE
,PRSCT_CN
,FRST_REGISTER_ID
,FRST_REGIST_PNTTM
) VALUES (
#prsctSeq#
,#dividendDate#
,#prsctNo#
,#prsctAdrNo#
,#plntfNm#
,#plntfPhone#
,#dfndnNm#
,#dfndnPhone#
,#prsctCn#
,#frstRegisterId#
,NOW()
)
</insert>
<!-- 검찰연계 수정 -->
<update id="AdrPrsctLinkDAO.adrPrsctLinkUpdate" parameterClass="AdrPrsctLinkVO">
UPDATE ADR_PRSCT_LINK SET
PRSCT_SEQ = #prsctSeq#
,DIVIDEND_DATE = #dividendDate#
,PRSCT_NO = #prsctNo#
,PRSCT_ADR_NO = #prsctAdrNo#
,PLNTF_NM = #plntfNm#
,PLNTF_PHONE = #plntfPhone#
,DFNDN_NM = #dfndnNm#
,DFNDN_PHONE = #dfndnPhone#
,PRSCT_CN = #prsctCn#
,LAST_UPDUSR_ID = #lastUpdusrId#
,LAST_UPDT_PNTTM = NOW()
WHERE PRSCT_SEQ = #prsctSeq#
</update>
<!-- 검찰연계 삭제 -->
<delete id="AdrPrsctLinkDAO.adrPrsctLinkDelete" parameterClass="AdrPrsctLinkVO">
DELETE FROM ADR_PRSCT_LINK WHERE PRSCT_SEQ = #prsctSeq#
</delete>
</sqlMap>

View File

@ -0,0 +1,243 @@
<%
/**
* @Class Name : adrPrsctLinkList.jsp
* @Description : 검찰연계 목록
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2023.10.24 박진순 최초 생성
* @author 박진순
* @since 2023.10.24
* @version 1.0
* @see
*
*/
%>
<!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" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>
</style>
<script type="text/javascript">
$(document).ready(function() {
});
function fncGoList(){
linkPage(1);
}
function linkPage(pageNo){
var listForm = document.listForm;
listForm.pageIndex.value = pageNo;
listForm.searchCondition.value = $('#searchCondition').val();
listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/adrpr/adrPrsctLinkList.do'/>";
listForm.submit();
}
function fncCreate(){
var listForm = document.listForm;
listForm.action = "<c:url value='/kccadr/adrpr/adrPrsctLinkRegist.do'/>";
listForm.submit();
}
function fncGoDetail(prsctSeq){
var listForm = document.listForm;
listForm.prsctSeq.value = prsctSeq;
listForm.action = "<c:url value='/kccadr/adrpr/adrPrsctLinkRegist.do'/>";
listForm.submit();
}
function fncExcel() {
// Confirm
var cfm = confirm("엑셀다운로드 하시겠습니까?");
if (cfm == true) {
var listForm = document.listForm;
listForm.action = "<c:url value='/kccadr/adrpr/adrPrsctLinkExcel.do'/>";
listForm.submit();
}
}
function AppReq(){
var form = $('<form id="payform"></form>');
form.append($('<input/>', {type: 'hidden', name: 'mltApprSeq', value: 'test'}));
form.appendTo('body');
commonPopWindowopenForm("/kccadr/adrpr/adrPrsctLinkExcelPop.do" , "850", "700", "AppExcelPopup", form);
form.remove();
}
</script>
<title>검찰연계 목록</title>
</head>
<body>
<form id="listForm" name="listForm" method="post" onsubmit="return false;">
<input type="hidden" name="pageIndex" value="<c:out value='${adrPrsctLinkVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${adrPrsctLinkVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${adrPrsctLinkVO.searchSortOrd}" />" />
<input type="hidden" name="prsctSeq" value=""/>
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>검찰연계목록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>검찰연계관리</p>
</li>
<li><span class="cur_nav">검찰연계목록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_top -->
<div class="list_top">
<div class="list_util">
<div class="detail_search">
<ul>
<li>
<p class="tit_text">구분</p>
<select name="searchCondition" id="searchCondition">
<option value="1" ${adrPrsctLinkVO.searchCondition eq '1' ? 'selected' : '' }>사건번호</option>
<option value="2" ${adrPrsctLinkVO.searchCondition eq '2' ? 'selected' : '' }>조정사건번호</option>
<option value="3" ${adrPrsctLinkVO.searchCondition eq '3' ? 'selected' : '' }>원고(대리인)</option>
<option value="4" ${adrPrsctLinkVO.searchCondition eq '4' ? 'selected' : '' }>피고(대리인)</option>
<option value="5" ${adrPrsctLinkVO.searchCondition eq '5' ? 'selected' : '' }>배당일</option>
</select>
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${adrPrsctLinkVO.searchKeyword}'/>">
&nbsp;&nbsp;&nbsp;&nbsp;
<p class="tit_text">접수기간</p>
<div id="sel_date" class="sel_date">
<input type="text" class="startDate inp" title="검색시작일" id="startDate01" name="searchStartDt" value="${adrPrsctLinkVO.searchStartDt}" data-datecontrol="true">
<div class="calendar_in" id="calendarName_startDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('startDate01-lry','',this)" class="btn_cal"></button>
<div id="startDate01-lry" class="calendarPop" style="display: none;">
<iframe id="startDate01-ifrm" name="startDate01-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html" title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div> ~
<input type="text" class="endDate inp" title="검색시작일" id="endDate" name="searchEndDt" value="${adrPrsctLinkVO.searchEndDt}" data-datecontrol="true">
<div class="calendar_in" id="calendarName_endDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('endDate-lry','',this)" class="btn_cal" ></button>
<div id="endDate-lry" class="calendarPop" style="display: none;">
<iframe id="endDate-ifrm" name="endDate-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html"title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div>
</div>
<button class="btn_search" onclick="fncGoList(); return false;">검색</button>
</li>
</ul>
</div>
</div>
</div>
<!-- //list_top -->
<!-- list_top -->
<div class="list_top">
<div class="list_util">
<div class="btn_wrap right">
<button type="button" class="btn_down_excel" onclick="fncExcel(); return false;">엑셀 다운로드</button>
</div>
</div>
</div>
<!-- //list_top -->
<!-- list -->
<div class="list tbType01">
<table>
<colgroup>
<col style="width: 6%">
<col style="width: 16%">
<col style="width: *%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 11%">
<col style="width: 13%">
<col style="width: 10%">
</colgroup>
<thead>
<tr>
<th>번호<button class="sort btn_sort" id="sort_prsctSeq">▲</button></th>
<th>사건번호<button class="sort btn_sort" id="sort_prsctNo">▲</button></th>
<th>조정사건번호<button class="sort btn_sort" id="sort_prsctAdrNo">▲</button></th>
<th>원고<button class="sort btn_sort" id="sort_plntfNm">▲</button></th>
<th>피고<button class="sort btn_sort" id="sort_dfndnNm">▲</button></th>
<th>배당일<button class="sort btn_sort" id="sort_dividendDate">▲</button></th>
<th>조정위원<button class="sort btn_sort" id="sort_prsctSeq">▲</button></th>
<th>처리상태<button class="sort btn_sort" id="sort_prsctSeq">▲</button></th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<c:if test="${adrPrsctLinkVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((adrPrsctLinkVO.pageIndex -1)*adrPrsctLinkVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${adrPrsctLinkVO.searchSortOrd eq 'asc' }">
<c:out value="${(adrPrsctLinkVO.pageIndex - 1) * adrPrsctLinkVO.pageUnit + status.count}"/>
</c:if>
</td>
<td>
${list.prsctNo}
</td>
<td><a href="#none" onclick="fncGoDetail('${list.prsctSeq}');">${list.prsctAdrNo}</a></td>
<td>
${list.plntfNm}
</td>
<td>
${list.dfndnNm}
</td>
<td>
${list.dividendDate}
</td>
<td></td>
<td></td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<!-- //list -->
<div class="btn_wrap btn_layout02">
<button class="btnType02" onclick="fncCreate(); return false;" >등록</button>
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
<!-- //page -->
</div>
</div>
</div>
<!-- //cont -->
<!-- //cont -->
</form>
</body>
</html>

View File

@ -0,0 +1,370 @@
<%--
Class Name : adjReqMgrOffRegist.jsp
Description : 오프라인조정신청 화면
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2021.09.14 우영두 최초 생성
author : 우영두
since : 2021.09.14
--%>
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ 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" %>
<%@ taglib prefix="double-submit" uri="http://www.egovframe.go.kr/tags/double-submit/jsp" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="ko" >
<title>검찰연계 등록</title>
<script type="text/javaScript" language="javascript">
var prsctSeq = "${adrPrsctLinkVO.prsctSeq}";
$(document).ready(function () {
if (prsctSeq != null && prsctSeq != "" && prsctSeq != undefined) {
//검찰연계 상세정보
getAdrPrsctLinkDetail()
}
});
//검찰연계 상세정보
function getAdrPrsctLinkDetail() {
$.ajax({
type: "POST",
url: "/kccadr/adrpr/adrPrsctLinkDetailAjax.do",
data: {"prsctSeq" : prsctSeq},
dataType:'json',
async: false,
success: function (data) {
if (data.isSuccess) {
//alert(JSON.stringify(data.result));
var plntfPhone = data.result.plntfPhone.split('-');
var dfndnPhone = data.result.dfndnPhone.split('-');
$("#dividendDate").val(data.result.dividendDate); //배당일
$("#prsctNo").val(data.result.prsctNo); //본사건번호
$("#prsctAdrNo").val(data.result.prsctAdrNo); //조정사건번호
$("#plntfNm").val(data.result.plntfNm); //원고-대리인 이름
$("#plntfPhone1").val(plntfPhone[0]); //원고-대리인 연락처
$("#plntfPhone2").val(plntfPhone[1]);
$("#plntfPhone3").val(plntfPhone[2]);
$("#dfndnNm").val(data.result.dfndnNm); //피고-대리인 이름
$("#dfndnPhone1").val(dfndnPhone[0]); //피고-대리인 연락처
$("#dfndnPhone2").val(dfndnPhone[1]);
$("#dfndnPhone3").val(dfndnPhone[2]);
$("#prsctCn").val(data.result.prsctCn); //사건내용
}
else {
alert("Msg : " + data.msg);
}
},
error: function (e) {
alert("ERROR : " + JSON.stringify(e));
}
});
}
//등록창 Clear
function setAdrPrsctLinkClear() {
$("#dividendDate").val(""); //배당일
$("#prsctNo").val(""); //본사건번호
$("#prsctAdrNo").val(""); //조정사건번호
$("#plntfNm").val(""); //원고-대리인 이름
$("#plntfPhone1").val(""); //원고-대리인 연락처
$("#plntfPhone2").val("");
$("#plntfPhone3").val("");
$("#plntfPhone").val("");
$("#dfndnNm").val(""); //피고-대리인 이름
$("#dfndnPhone1").val(""); //피고-대리인 연락처
$("#dfndnPhone2").val("");
$("#dfndnPhone3").val("");
$("#dfndnPhone").val("");
$("#prsctCn").val(""); //사건내용
//검색조건 초기화
var listForm = document.listForm ;
listForm.pageIndex.value = "1";
listForm.searchSortCnd.value = "";
listForm.searchSortOrd.value = "";
listForm.searchCondition.value = "1";
listForm.searchKeyword.value = "";
listForm.searchStartDt.value = "";
listForm.searchEndDt.value = "";
}
//검찰연계 유효성 검사
function getValidCheck() {
if ($.trim($("#dividendDate").val()) == null || $.trim($("#dividendDate").val()) == "") {
alert("배당일을 입력하세요");
$("#dividendDate").focus();
return false;
}
else if ($.trim($("#prsctNo").val()) == null || $.trim($("#prsctNo").val()) == "") {
alert("본사건번호를 입력하세요");
$("#prsctNo").focus();
return false;
}
else if ($.trim($("#prsctAdrNo").val()) == null || $.trim($("#prsctAdrNo").val()) == "") {
alert("조정사건번호를 입력하세요");
$("#prsctAdrNo").focus();
return false;
}
else if ($.trim($("#prsctAdrNo").val()) == null || $.trim($("#prsctAdrNo").val()) == "") {
alert("조정사건번호를 입력하세요");
$("#prsctAdrNo").focus();
return false;
}
else if ($.trim($("#plntfNm").val()) == null || $.trim($("#plntfNm").val()) == "") {
alert("원고(대리인) 이름를 입력하세요");
$("#plntfNm").focus();
return false;
}
else if ($.trim($("#plntfPhone1").val()) == null || $.trim($("#plntfPhone1").val()) == "") {
alert("원고(대리인) 연락처를 입력하세요");
$("#plntfPhone1").focus();
return false;
}
else if ($.trim($("#plntfPhone2").val()) == null || $.trim($("#plntfPhone2").val()) == "") {
alert("원고(대리인) 연락처를 입력하세요");
$("#plntfPhone2").focus();
return false;
}
else if ($.trim($("#plntfPhone3").val()) == null || $.trim($("#plntfPhone3").val()) == "") {
alert("원고(대리인) 연락처를 입력하세요");
$("#plntfPhone3").focus();
return false;
}
else if ($.trim($("#dfndnNm").val()) == null || $.trim($("#dfndnNm").val()) == "") {
alert("피고(대리인) 이름를 입력하세요");
$("#dfndnNm").focus();
return false;
}
else if ($.trim($("#dfndnPhone1").val()) == null || $.trim($("#dfndnPhone1").val()) == "") {
alert("피고(대리인) 연락처를 입력하세요");
$("#dfndnPhone1").focus();
return false;
}
else if ($.trim($("#dfndnPhone2").val()) == null || $.trim($("#dfndnPhone2").val()) == "") {
alert("피고(대리인) 연락처를 입력하세요");
$("#dfndnPhone2").focus();
return false;
}
else if ($.trim($("#dfndnPhone3").val()) == null || $.trim($("#dfndnPhone3").val()) == "") {
alert("피고(대리인) 연락처를 입력하세요");
$("#dfndnPhone3").focus();
return false;
}
else if ($.trim($("#prsctCn").val()) == null || $.trim($("#prsctCn").val()) == "") {
alert("사건내용을 입력하세요");
$("#prsctCn").focus();
return false;
}
}
//검찰연계 저장 Confirm
function setAdrPrsctLinkSaveConfirm() {
// 유효성 검사
if (getValidCheck() == false) return;
// Confirm
var cfm = confirm("등록 하시겠습니까?");
if (cfm == true) {
// 주문 저장
setAdrPrsctLinkSave();
}
}
//검찰연계 저장
function setAdrPrsctLinkSave() {
$("#prsctSeq").val(prsctSeq); // 일련번호
// 연락처 대쉬처리
var plntfPhone = $("#plntfPhone1").val() + "-" + $("#plntfPhone2").val() + "-" + $("#plntfPhone3").val();
var dfndnPhone = $("#dfndnPhone1").val() + "-" + $("#dfndnPhone2").val() + "-" + $("#dfndnPhone3").val();
$("#plntfPhone").val(plntfPhone);
$("#dfndnPhone").val(dfndnPhone);
$.ajax({
type: "POST",
url: "/kccadr/adrpr/adrPrsctLinkSaveAjax.do",
data: $("#adrPrsctLinkForm").serialize(),
dataType:'json',
async: false,
success: function (data) {
if (data.isSuccess) {
alert("저장했습니다.");
// 수정모드 체크
if (prsctSeq != null && prsctSeq != "" && prsctSeq != undefined) {
//목록
goList();
}
else {
//등록창 Clear
setAdrPrsctLinkClear();
}
}
else {
alert("Msg : " + data.msg);
}
},
error: function (e) {
alert("ERROR : " + JSON.stringify(e));
}
});
}
//목록
function goList(){
var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/adrpr/adrPrsctLinkList.do'/>";
listForm.submit();
}
</script>
</head>
<body>
<form id="listForm" name="listForm" method="post" onsubmit="return false;">
<input type="hidden" name="pageIndex" value="<c:out value='${adrPrsctLinkVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${adrPrsctLinkVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${adrPrsctLinkVO.searchSortOrd}" />" />
<input type="hidden" name="searchCondition" value="<c:out value="${adrPrsctLinkVO.searchCondition}" />" />
<input type="hidden" name="searchKeyword" value="<c:out value="${adrPrsctLinkVO.searchKeyword}" />" />
<input type="hidden" name="searchStartDt" value="<c:out value="${adrPrsctLinkVO.searchStartDt}" />" />
<input type="hidden" name="searchEndDt" value="<c:out value="${adrPrsctLinkVO.searchEndDt}" />" />
</form>
<form id="adrPrsctLinkForm" name="adrPrsctLinkForm" method="post">
<input type="hidden" id="prsctSeq" name="prsctSeq" />
<!-- cont -->
<div class="cont_wrap">
<div class="box">
<!-- cont_tit -->
<div class="cont_tit">
<h2>검찰연계등록</h2>
<ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li>
<li>
<p>검찰연계관리</p>
</li>
<li>
<p>검찰연계목록</p>
</li>
<li><span class="cur_nav">검찰연계등록</span></li>
</ul>
</div>
<!-- //cont_tit -->
<div class="cont">
<!-- list_상세 -->
<div class="tbType02">
<table>
<colgroup>
<col style="width: 210px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th class="req_text">배당일</th>
<td>
<div class="sel_date">
<input type="text" title="송달완료일" id="dividendDate" name="dividendDate" data-datecontrol="true" onkeyup="setFormat('day',this)" maxlength="10" readonly>
<div class="calendar_in" id="calendarName_startDate" style="z-index: 9;">
<button type="button" value="달력 팝업 열기" onclick="return calendarOpen('dividendDate-lry','',this)" class="btn_cal calIcon"></button>
<div id="dividendDate-lry" class="calendarPop" style="display: none;">
<iframe id="dividendDate-ifrm" name="dividendDate-ifrm" class="calendar-frame" src="/kccadrPb/adm/calendar.html" title=" 달력 팝업" frameborder="0" scrolling="no"></iframe>
</div>
</div>
</div>
</td>
</tr>
<tr>
<th class="req_text">본사건번호</th>
<td>
<input type="text" id="prsctNo" name="prsctNo" size="30" />
</td>
</tr>
<tr>
<th class="req_text">조정사건번호</th>
<td>
<input type="text" id="prsctAdrNo" name="prsctAdrNo" size="30" />
</td>
</tr>
<tr>
<th class="req_text">원고(대리인)</th>
<td>
<input type="text" id="plntfNm" name="plntfNm" maxlength="30" size="30" />
</td>
</tr>
<tr>
<th class="req_text">원고 연락처</th>
<td>
<input type="text" id="plntfPhone1" maxlength="3" size="15" cssClass="number_input"/>
-<input type="text" id="plntfPhone2" maxlength="4" size="15" cssClass="number_input"/>
-<input type="text" id="plntfPhone3" maxlength="4" size="15" cssClass="number_input"/>
<input type="hidden" id="plntfPhone" name="plntfPhone" />
</td>
</tr>
<tr>
<th class="req_text">피고(대리인)</th>
<td>
<input type="text" id="dfndnNm" name="dfndnNm" maxlength="30" size="30" />
</td>
</tr>
<tr>
<th class="req_text">피고 연락처</th>
<td>
<input type="text" id="dfndnPhone1" maxlength="3" size="15" cssClass="number_input"/>
-<input type="text" id="dfndnPhone2" maxlength="4" size="15" cssClass="number_input"/>
-<input type="text" id="dfndnPhone3" maxlength="4" size="15" cssClass="number_input"/>
<input type="hidden" id="dfndnPhone" name="dfndnPhone" />
</td>
</tr>
<tr>
<th class="req_text">사건내용</th>
<td>
<textarea id="prsctCn" name="prsctCn" cols="30" rows="5" cssClass="purpose_text"></textarea>
</td>
</tr>
</tbody>
</table>
</div>
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="area_left">
</div>
<div class="area_right">
<button type="button" class="btnType06" onclick="setAdrPrsctLinkSaveConfirm(); return false;">등록</button>
<button class="btnType04" onclick="goList(); return false;">목록</button>
</div>
</div>
<!-- //btn_wrap -->
</div>
</div>
</div>
</form>
<!-- //cont -->
</body>
</html>