fairnet/src/main/java/seed/com/gtm/base/BaseController.java

866 lines
35 KiB
Java

package seed.com.gtm.base;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.ibatis.logging.Log;
import org.apache.ibatis.logging.LogFactory;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
import org.json.JSONObject;
import org.json.XML;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.clipsoft.clipreport.export.option.PDFOption;
import com.clipsoft.clipreport.oof.OOFDocument;
import com.clipsoft.clipreport.oof.OOFFile;
import egovframework.rte.psl.dataaccess.util.EgovMap;
import seed.com.gtm.code.CodeService;
import seed.com.gtm.join.MemberJoinService;
import seed.com.gtm.seedfile.SeedFileService;
import seed.com.gtm.service.BaseService;
import seed.com.gtm.util.Criteria;
import seed.com.gtm.util.JSONView;
import seed.com.gtm.util.JSPUtil;
import seed.com.gtm.util.Nanum;
import seed.com.gtm.util.Nice;
import seed.com.gtm.util.PageMaker;
import seed.utils.ApplicationProperty;
import seed.utils.SeedUtils;
@Controller
/*@RequestMapping("/gtm/case")*/
public class BaseController {
protected Log log = LogFactory.getLog(this.getClass());
@Autowired
private MemberJoinService memberService;
@Autowired
private CodeService service;
@Autowired
private BaseService bservice;
@Autowired
private SeedFileService fileService;
public void setSessionMessageRemove(HttpSession session){
session.removeAttribute("sSiteIdx");
session.removeAttribute("url");
session.removeAttribute("message");
session.removeAttribute("opener");
session.removeAttribute("append");
session.removeAttribute("self");
}
///gtm/case/nanum/ajax/SanctnhistoryIns.do
///gtm/case/common/ajax/NICE.do
@RequestMapping(value = "/gtm/case/{pageFolder}/{pageName}/{pageAction}.do")
public ModelAndView getManagerPage(HttpServletRequest request,
HttpSession session, Map<String, Object> map,
Criteria cri,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@PathVariable(value="pageAction") String pageAction
) throws Exception {
//log.debug("BaseController URI = " + request.getRequestURI());
System.out.println("sql=1");
System.out.println(pageFolder);
System.out.println(pageAction);
String memberId = SeedUtils.setReplaceNull(session.getAttribute("memberId"));
if(memberId.equals("")){
return new ModelAndView("redirect:/gtm/login.do");
}
EgovMap params;
request.setCharacterEncoding("UTF-8");
ModelAndView mav = new ModelAndView();
ModelAndView mavjson = new ModelAndView(new JSONView());
String tempDir = ApplicationProperty.get("url.referrer");
params = JSPUtil.makeRequestParams(request, session, true);
session.setAttribute("siteIdx", "case");
System.out.println("sql=1");
System.out.println(pageFolder);
System.out.println(pageAction);
//System.out.println(params.get("sql").toString());
//시큐어코딩 관련 파라미터는 삭제
params.remove("SpringSecurityFiltersecurityinterceptorFilterapplied");
params.remove("SpringSecuritySessionMgmtFilterApplied");
params.remove("springSecurityContext");
params.remove("SpringSecurityScpfApplied");
params.remove("springSecuritySavedRequest");
String type = "";
String customsql = "";
if(!"".equals((String) params.get("type")) && (String) params.get("type") != null){
type = (String) params.get("type");
}else{
//type이 없을 경우 default 리스트 출력
type = "L";
}
System.out.println("sql=12");
//System.out.println(params.get("sql").toString());
//기안자 GW ID 받아오기
try {
//params.put("gwData", JSPUtil.fixNull(service.memberNewOne(params)));
Map<String, Object> tmap = (Map<String, Object>) JSPUtil.fixNull(memberService.memberNewOne(params));
params.put("gwId", tmap.get("MEMBER_ITEM_F6").toString());
}catch(Exception ex) {
ex.printStackTrace();
}
if(pageAction.indexOf("Paging") != -1){
//*Paging*.do 가 호출될 경우 페이징 기본값 셋팅
params.put("pageStart", cri.getPageStart());
params.put("perPageNum", cri.getPerPageNum());
PageMaker pageMaker = new PageMaker();
pageMaker.setCri(cri);
System.out.println("sql=3");
//System.out.println(params.get("sql").toString());
params.put("sql", pageFolder+pageAction+"Tot");
int totcnt = (Integer) bservice.select(params);
pageMaker.setTotalCount(totcnt);
params.put("pageMaker", pageMaker);
if(pageAction.equals("AdministPagingList")){
String searchMa = SeedUtils.setReplaceNull(request.getParameter("searchMa")) ;
if(searchMa.equals("")){
searchMa = "N";
}
params.put("searchMa", searchMa);
}
System.out.println("sql=14");
//System.out.println(params.get("sql").toString());
}
log.warn(">>>>>>type<<<<<<"+type);
System.out.println("sql=3");
//System.out.println(params.get("sql").toString());
if(params.get("arrList") != null && !"".equals(params.get("arrList"))){
log.warn("arrList<<<<<<<<<<<<<<<in");
Map<String, Object> emap = new HashMap<String, Object> ();
String arr = (String)params.get("arrList");
String[] arrArg = arr.split(","); // 콤마를 구분자로 배열 파싱
//emap.put("arrList", arr);
params.put("arrList", arrArg);
log.warn("arrList1<<<<<<<<<<<<<<<out"+params.get("arrList"));
}
System.out.println("sql=3");
//System.out.println(params.get("sql").toString());
if("common".equals(pageFolder) && "ajax".equals(type)){
params.put("sql", pageFolder+"."+pageFolder+pageAction);
}else{
params.put("sql", pageFolder+pageAction);
}
System.out.println("sql=34");
System.out.println(params.get("sql").toString());
//System.out.println(params.get("pageFolder").toString());
System.out.println(pageFolder);
System.out.println(pageAction);
log.warn(">>>>>>>>params1<<<<<<<<<"+params);
if("L".equals(type)){
//mav.addObject("data", bservice.list(params));
params.put("data", JSPUtil.fixNull(bservice.list(params)));
}else if("S".equals(type)){
//기안자 GW ID 받아오기
//params.put("sql", "join.selectNewOne");
try {
//params.put("gwData", JSPUtil.fixNull(service.memberNewOne(params)));
Map<String, Object> tmap = (Map<String, Object>) JSPUtil.fixNull(memberService.memberNewOne(params));
//params.put("gwId", tmap.get("MEMBER_ITEM_F6").toString());
params.put("gwId", this.getGWID(tmap));
}catch(Exception ex) {
ex.printStackTrace();
}
//mav.addObject("data", bservice.select(params));
params.put("data", JSPUtil.fixNull(bservice.select(params)));
}else if("I".equals(type)){
params.put("data", JSPUtil.fixNull(bservice.insert(params)));
}else if("U".equals(type)){
//mav.addObject("data", bservice.update(params));
params.put("data", JSPUtil.fixNull(bservice.update(params)).toString());
}else if("D".equals(type)){
//mav.addObject("data", bservice.delete(params));
params.put("data", JSPUtil.fixNull(bservice.delete(params)).toString());
}else if("NICELOOKUP".equals(type)){
Nice nice = new Nice();
params.put("niceLookup", nice.Lookup2(((String) params.get("bizno")).trim().replaceAll("-", "")));
//params.put("niceLookup", nice.Lookup("1248100998"));
}else if("NICESEARCH".equals(type)){
Nice nice = new Nice();
// params.put("niceSearch", nice.Search((String)params.get("niceNm"), (String)params.get("niceCnt")));
params.put("niceSearch", nice.Search2((String)params.get("niceNm"), (String)params.get("niceCnt")));
}else if("NANUM".equals(type)){
Nanum nanum = new Nanum();
params.put("nanumCall", nanum.NanumCall(params));
log.warn("nanumCall>>>>"+params.get("nanumCall"));
}else if("NANUM_GW".equals(type)){
Nanum nanum = new Nanum();
params.put("nanumCall", nanum.NanumCall(params));
log.warn("nanumCall>>>>"+params.get("nanumCall"));
}else if("FILE".equals(type)){
fileService.fileInsertEgov(params, request, session);
}else if("SAMETIME_FILE".equals(type)){ //동시기안 파일 첨부
fileService.fileInsertSameTime(params, request, session);
}else if("TRS_EDIT".equals(type)){
//사건마스터
params.put("sql", pageFolder+".selectRceptms");
params.put("recptmsData", JSPUtil.fixNull(bservice.select(params)));
//신청인
params.put("sql", pageFolder+".selectApplcnt");
params.put("applcntData", JSPUtil.fixNull(bservice.list(params)));
//피신청인
params.put("sql", pageFolder+".selectRespondent");
params.put("respondentData", JSPUtil.fixNull(bservice.list(params)));
//신청인 대리인
params.put("sql", pageFolder+".selectAppagent");
params.put("appagentData", JSPUtil.fixNull(bservice.list(params)));
//피신청인 대리인
params.put("sql", pageFolder+".selectResagent");
params.put("selectResagent", JSPUtil.fixNull(bservice.list(params)));
//접수현황
params.put("sql", pageFolder+".selectRceptsttus");
params.put("selectRceptsttus", JSPUtil.fixNull(bservice.select(params)));
//신청경로
params.put("sql", pageFolder+".selectReason");
params.put("selectReason", JSPUtil.fixNull(bservice.select(params)));
//신청인 하도급대급 내역 리스트
params.put("sql", pageFolder+".selectSubcntrsttusA");
params.put("selectSubcntrsttusA", JSPUtil.fixNull(bservice.list(params)));
//신청인 하도급대급 소계(계) 그룹
params.put("sql", pageFolder+".selectSubcntrsttusTotA");
params.put("selectSubcntrsttusTotA", JSPUtil.fixNull(bservice.list(params)));
//피신청인 하도급대급 내역 리스트
params.put("sql", pageFolder+".selectSubcntrsttusR");
params.put("selectSubcntrsttusR", JSPUtil.fixNull(bservice.list(params)));
//피신청인 하도급대급 소계(계) 그룹
params.put("sql", pageFolder+".selectSubcntrsttusTotR");
params.put("selectSubcntrsttusTotR", JSPUtil.fixNull(bservice.list(params)));
params.put("sql", pageFolder+".trublreqstmngCaseFileList");
map.put("trublreqstmngCaseFileList", JSPUtil.fixNull(bservice.list(params)));//파일 리스트
//협의회 이관 내역
if(pageFolder.equals("trubltrnsfer")) {
params.put("sql", pageFolder + ".selectCfrnctrnsfer");
params.put("selectCfrnctrnsfer", JSPUtil.fixNull(bservice.select(params)));
}
}else if("TP_RCEPTEDIT".equals(type)){
//사건마스터
params.put("sql", pageFolder+".selectMaster");
params.put("masterData", JSPUtil.fixNull(bservice.select(params)));
//사건 신청인
params.put("sql", pageFolder+".selectCaseApplcnt");
params.put("caseApplcntData", JSPUtil.fixNull(bservice.list(params)));
//사건 신청인 대리인
params.put("sql", pageFolder+".selectCaseAppagent");
params.put("caseAppagentData", JSPUtil.fixNull(bservice.list(params)));
//사건 피신청인
params.put("sql", pageFolder+".selectCaseRespondent");
params.put("caseRespondentData", JSPUtil.fixNull(bservice.list(params)));
//사건 피신청인 대리인
params.put("sql", pageFolder+".selectCaseResagent");
params.put("caseResagentData", JSPUtil.fixNull(bservice.list(params)));
//사건 접수현황
params.put("sql", pageFolder+".selectCaseRceptsttus");
params.put("selectRceptsttus", JSPUtil.fixNull(bservice.select(params)));
//사건 신청인 하도급대급 내역 리스트
params.put("sql", pageFolder+".selectCaseSubcntrsttusA");
params.put("selectSubcntrsttusA", JSPUtil.fixNull(bservice.list(params)));
//신청인 하도급대급 소계(계) 그룹
params.put("sql", pageFolder+".selectCaseSubcntrsttusTotA");
params.put("selectSubcntrsttusTotA", JSPUtil.fixNull(bservice.list(params)));
//피신청인 하도급대급 내역 리스트
params.put("sql", pageFolder+".selectCaseSubcntrsttusR");
params.put("selectSubcntrsttusR", JSPUtil.fixNull(bservice.list(params)));
//피신청인 하도급대급 소계(계) 그룹
params.put("sql", pageFolder+".selectCaseSubcntrsttusTotR");
params.put("selectSubcntrsttusTotR", JSPUtil.fixNull(bservice.list(params)));
EgovMap eMap = (EgovMap)params.get("masterData");
params.put("rceptNo", SeedUtils.setReplaceNull(eMap.get("rceptNo")));
params.put("sql", pageFolder+".trublprocessmngCaseFileList");
map.put("trublreqstmngCaseFileList", JSPUtil.fixNull(bservice.list(params)));//파일 리스트
//종료사건 조회에서만 쓰는 협의회 결과
if(pageFolder.equals("trublend")){
params.put("sql", pageFolder+".selectCaseTrublResult");
params.put("selectCaseTrublResult", JSPUtil.fixNull(bservice.list(params)));
}
//사건 승인권한 조회
if("trublprocessmng".equals(pageFolder)) {
params.put("sql", pageFolder+".selectCaseAuth");
params.put("selectCaseAuthData", JSPUtil.fixNull(bservice.list(params)));
}
//내부결제 첨부파일 조회
params.put("sql", pageFolder+".selectGWFileList");
params.put("selectGWFileList", JSPUtil.fixNull(bservice.list(params)));
}
log.warn("arrList2<<<<<<<<<<<<<<<"+params.get("arrList"));
if(params.get("arrList") != null && !"".equals(params.get("arrList"))){
//params.remove("arrList");
}
if(!"ajax".equals(pageName)){
mav.setViewName("/seed/_extra/gtm/"+pageFolder+"/"+pageName);
}
log.warn(">>>>>>>>params2<<<<<<<<<"+params);
log.warn(">>>>>>>>params2<<<<<<<<<"+mav.getViewName());
if("ajax".equals(pageName)){
log.warn("===================[[ ajax! ]]=================");
mavjson.addAllObjects(params);
return mavjson;
}else{
mav.addAllObjects(params);
return mav;
}
}
@RequestMapping(value = "/clip/{pageFolder}/{pageName}/ClipReport4.do")
public String ClipReport4(HttpServletRequest request,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName) throws Exception {
request.setCharacterEncoding("UTF-8");
String requstUrl = request.getServerName();
String parmes = "";
Enumeration<?> e = request.getParameterNames();
while (e.hasMoreElements()) {
String key = (String) e.nextElement();
String Values = request.getParameter(key);
if (key.startsWith("CLIPDATA_")) {
if(parmes.equals("")) {
parmes += key + "=" + Values;
} else {
parmes += "&" + key + "=" + Values;
}
}
}
session.setAttribute("query_clip", URLEncoder.encode(parmes));
// String requestQuery = URLDecoder.decode(session.getAttribute("query_clip").toString());
// return "redirect:http://" + requstUrl + "/" + pageFolder + "/" + pageName + ".jsp?crfNm="+request.getParameter("crfNm")+"&" + URLEncoder.encode(parmes);
return "/ClipReport4/ClipReportViewer";
}
@RequestMapping(value = "/clip/{pageFolder}/{pageName}/ClipReport4PdfDown.do")
public String ClipReport4PdfDown(HttpServletRequest request,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName) throws Exception {
request.setCharacterEncoding("UTF-8");
String requstUrl = request.getServerName();
String parmes = "";
Enumeration<?> e = request.getParameterNames();
while (e.hasMoreElements()) {
String key = (String) e.nextElement();
String Values = request.getParameter(key);
if (key.startsWith("CLIPDATA_")) {
if(parmes.equals("")) {
parmes += key + "=" + Values;
} else {
parmes += "&" + key + "=" + Values;
}
}
}
session.setAttribute("query_clip", URLEncoder.encode(parmes));
// String requestQuery = URLDecoder.decode(session.getAttribute("query_clip").toString());
// return "redirect:http://" + requstUrl + "/" + pageFolder + "/" + pageName + ".jsp?crfNm="+request.getParameter("crfNm")+"&" + URLEncoder.encode(parmes);
return "/ClipReport4/ClipReportViewer_pdf_down";
}
@RequestMapping(value = "/clip/ClipReport4/ClipReportViewer/ClipReport4_clip.do")
public String ClipReport4_clip(HttpServletRequest request,
HttpSession session, Map<String, Object> map) throws Exception {
request.setCharacterEncoding("UTF-8");
return "/ClipReport4/Clip";
}
@RequestMapping(value = "/pop/{pageFolder}/{pageName}/popup.do")
public ModelAndView getManagerLayOutPage(HttpServletRequest request,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName)throws Exception{
request.setCharacterEncoding("UTF-8");
ModelAndView mav = new ModelAndView();
EgovMap params;
//setSessionMessageRemove(session);
session.setAttribute("siteIdx", "case");
params = JSPUtil.makeRequestParams(request, session, true);
//시큐어코딩 관련 파라미터는 삭제
params.remove("SpringSecurityFiltersecurityinterceptorFilterapplied");
params.remove("SpringSecuritySessionMgmtFilterApplied");
params.remove("springSecurityContext");
params.remove("SpringSecurityScpfApplied");
params.remove("springSecuritySavedRequest");
log.warn(">>>>>>>>params<<<<<<<<<"+params);
mav.addAllObjects(params);
mav.setViewName("/seed/_extra/gtm/"+pageFolder+"/"+pageName);
//return new ModelAndView("/_extra/gtm/"+pageFolder+"/"+pageName);
return mav;
}
@RequestMapping(value = "/nanum/NanumCallback.do")
public void NanumCallback(HttpServletRequest request,
HttpServletResponse response,
HttpSession session, Map<String, Object> map){
ModelAndView mav = new ModelAndView();
EgovMap params;
//xml 생성
Document doc = new Document();
Element ndata = new Element("ndata");
Element status = new Element("status");
Element code = new Element("code");
ndata.addContent(status);
ndata.addContent(code);
JSONObject jsonObj = null;
StringBuilder html = new StringBuilder();
try{
request.setCharacterEncoding("UTF-8");
params = JSPUtil.makeRequestParams1(request, session, true);
//시큐어코딩 관련 파라미터는 삭제
params.remove("SpringSecurityFiltersecurityinterceptorFilterapplied");
params.remove("SpringSecuritySessionMgmtFilterApplied");
params.remove("springSecurityContext");
params.remove("SpringSecurityScpfApplied");
params.remove("springSecuritySavedRequest");
//
params.put("document", params.get("document").toString().replace("&lt;", "<"));
params.put("document", params.get("document").toString().replace("&gt;", ">"));
params.put("document", params.get("document").toString().replace("&quot;", "\""));
log.warn(">>>>>>>>params<<<<<<<<<"+params);
log.warn(">>>request-gwDocID>>"+request.getParameter("gwDocID"));
log.warn(">>>request-userID>>"+request.getParameter("userID"));
log.warn(">>>request-document>>"+request.getParameter("document"));
jsonObj = XML.toJSONObject(params.get("document").toString());
html = new StringBuilder();
html.append(jsonObj);
log.warn(">>>html.toString()>>>>>"+html.toString());
//그룹웨어 연계 callback insert
//그룹웨어에서 삭제,회수등등 번튼을 눌렀을때 null값임
if(params.get("status") != null){
params.put("sql", "nanumSanctnhistoryCallbackIns");
bservice.insert(params);
}
if("processed".equals(params.get("status"))){
params.put("sql", "nanumSanctnhistorySel");
params.put("data", JSPUtil.fixNull(bservice.select(params)));
EgovMap emap = new EgovMap();
emap = (EgovMap) params.get("data");
if("5301000000".equals(emap.get("codeNo")) || "5201000000".equals(emap.get("codeNo")) ||
"5401000000".equals(emap.get("codeNo")) || "5501000000".equals(emap.get("codeNo")) ||
"5601000000".equals(emap.get("codeNo")) || "5801000000".equals(emap.get("codeNo"))
){
//분쟁사건 처리관리 사건착수보고
params.put("caseNo", emap.get("caseNo"));
params.put("statePro", "0402000000");
params.put("sql", "nanumMasterUpdt1");
bservice.update(params);
}else if("5211000000".equals(emap.get("codeNo")) || "5212000000".equals(emap.get("codeNo")) ||
"5311000000".equals(emap.get("codeNo")) || "5312000000".equals(emap.get("codeNo")) ||
"5411000000".equals(emap.get("codeNo")) || "5412000000".equals(emap.get("codeNo")) ||
"5511000000".equals(emap.get("codeNo")) || "5512000000".equals(emap.get("codeNo")) ||
"5611000000".equals(emap.get("codeNo")) || "5612000000".equals(emap.get("codeNo")) ||
"5811000000".equals(emap.get("codeNo")) || "5812000000".equals(emap.get("codeNo"))
){
//분쟁사건 조정종료일 등록 (단 null일 경우만)
params.put("caseNo", emap.get("caseNo"));
params.put("sql", "nanumMasterEndDtSelect");
params.put("data2", JSPUtil.fixNull(bservice.select(params)));
EgovMap emap2 = new EgovMap();
emap2 = (EgovMap) params.get("data2");
SimpleDateFormat fm = new SimpleDateFormat("yyyy-MM-dd");
Date caseDate = null;//사건접수일
Date endDt = null;//조정 종료일
int appReqTerm = 0;//사건 보완기간
int currDay = 24 * 60 * 60 * 1000;
long pendencyPeriod = 0;
if("5211000000".equals(emap.get("codeNo")) || "5311000000".equals(emap.get("codeNo")) ||
"5411000000".equals(emap.get("codeNo")) || "5511000000".equals(emap.get("codeNo")) ||
"5611000000".equals(emap.get("codeNo")) || "5811000000".equals(emap.get("codeNo"))
){
params.put("sql", "nanumMasterEndDt2");
bservice.update(params);
}
if(emap2.get("mediationEndDt") == null || SeedUtils.setReplaceNull(emap2.get("mediationEndDt")).equals("")){
params.put("sql", "nanumMasterEndDt");
bservice.update(params);
//종료일자 등록 안되어 있으면 현재날짜로 구해
endDt = fm.parse(fm.format(new Date()));
}else{
//등록 되어있으면 등록되어 있는 잘짜로
endDt = fm.parse(SeedUtils.setReplaceNull(emap2.get("mediationEndDt")).toString());
}
caseDate = fm.parse(SeedUtils.setReplaceNull(emap2.get("caseDate")).toString());
if(SeedUtils.setReplaceNull(emap2.get("appReqTerm")) != ""){
appReqTerm = Integer.parseInt(SeedUtils.setReplaceNull(emap2.get("appReqTerm")).toString());
}
pendencyPeriod = ((endDt.getTime() - caseDate.getTime()) / currDay) - appReqTerm +1;
params.put("pendencyPeriod", pendencyPeriod);
params.put("sql", "nanumMasterPendencyPeriodUp");
bservice.update(params);
}else if("5223000000".equals(emap.get("codeNo")) || "5323000000".equals(emap.get("codeNo"))
|| "5430000000".equals(emap.get("codeNo")) || "5523000000".equals(emap.get("codeNo"))
|| "5623000000".equals(emap.get("codeNo")) || "5823000000".equals(emap.get("codeNo"))){
//협의회관리 결과보고
params.put("cfrncNo", emap.get("caseNo"));
params.put("statePro", "0503000000");
params.put("sql", "nanumCfrncmanageResultUpdt");
bservice.update(params);
//심의 안건이 아닌경우(권고수락 제외) 사건처리쪽 종료사유 변경
params.put("sql", "trublcfrncmngDlbrtmtrSel");
params.put("data3", JSPUtil.fixNull(bservice.list(params)));
List<?> emap3 = (List<?>) params.get("data3");
for(int i = 0; i < emap3.size(); i++){
EgovMap emap4 = (EgovMap)emap3.get(i);
if(!emap4.get("mediationSmallCode").equals("0616000000") && !emap4.get("mediationSmallCode").equals("0618000000")){
params.put("mediationSmall", emap4.get("mediationSmallCode"));
params.put("mediationBig", emap4.get("mediationBigCode"));
params.put("caseNo", emap4.get("caseNo"));
params.put("sql", "nanumMasterMediationResultUpdt");
bservice.update(params);
}else if(emap4.get("mediationSmallCode").equals("0618000000")){
//재심의일 경우 마스트테이블 재심의 여부 Y
params.put("caseNo", emap4.get("caseNo"));
params.put("sql", "nanumMasterReconsiderationUpdt");
bservice.update(params);
}
}
/*params.put("sql", "nanumMasterResultUpdt");
bservice.update(params);*/
}else if("5214000000".equals(emap.get("codeNo")) || "5215000000".equals(emap.get("codeNo")) || "5216000000".equals(emap.get("codeNo")) ||
"5217000000".equals(emap.get("codeNo")) || "5218000000".equals(emap.get("codeNo")) || "5219000000".equals(emap.get("codeNo")) ||
"5314000000".equals(emap.get("codeNo")) || "5315000000".equals(emap.get("codeNo")) || "5316000000".equals(emap.get("codeNo")) ||
"5317000000".equals(emap.get("codeNo")) || "5318000000".equals(emap.get("codeNo")) || "5319000000".equals(emap.get("codeNo")) ||
"5414000000".equals(emap.get("codeNo")) || "5415000000".equals(emap.get("codeNo")) || "5416000000".equals(emap.get("codeNo")) ||
"5417000000".equals(emap.get("codeNo")) || "5418000000".equals(emap.get("codeNo")) || "5419000000".equals(emap.get("codeNo")) ||
"5420000000".equals(emap.get("codeNo")) || "5421000000".equals(emap.get("codeNo")) || "5422000000".equals(emap.get("codeNo")) ||
"5423000000".equals(emap.get("codeNo")) || "5424000000".equals(emap.get("codeNo")) || "5425000000".equals(emap.get("codeNo")) ||
"5426000000".equals(emap.get("codeNo")) || "5514000000".equals(emap.get("codeNo")) || "5515000000".equals(emap.get("codeNo")) ||
"5516000000".equals(emap.get("codeNo")) || "5517000000".equals(emap.get("codeNo")) || "5518000000".equals(emap.get("codeNo")) ||
"5519000000".equals(emap.get("codeNo")) || "5614000000".equals(emap.get("codeNo")) || "5615000000".equals(emap.get("codeNo")) ||
"5616000000".equals(emap.get("codeNo")) || "5617000000".equals(emap.get("codeNo")) || "5618000000".equals(emap.get("codeNo")) ||
"5619000000".equals(emap.get("codeNo")) || "5814000000".equals(emap.get("codeNo")) || "5815000000".equals(emap.get("codeNo")) || "5816000000".equals(emap.get("codeNo")) ||
"5817000000".equals(emap.get("codeNo")) || "5818000000".equals(emap.get("codeNo")) || "5819000000".equals(emap.get("codeNo")))
{
params.put("caseNo", emap.get("caseNo"));
params.put("sql", "nanumMasterEndUpdt");
bservice.update(params);
}else if("5204000000".equals(emap.get("codeNo")) || "5304000000".equals(emap.get("codeNo"))
|| "5404000000".equals(emap.get("codeNo")) || "5504000000".equals(emap.get("codeNo"))
|| "5604000000".equals(emap.get("codeNo")) || "5209000000".equals(emap.get("codeNo"))
|| "5309000000".equals(emap.get("codeNo")) || "5409000000".equals(emap.get("codeNo"))
|| "5509000000".equals(emap.get("codeNo")) || "5609000000".equals(emap.get("codeNo"))
|| "5227000000".equals(emap.get("codeNo")) || "5327000000".equals(emap.get("codeNo"))
|| "5434000000".equals(emap.get("codeNo")) || "5527000000".equals(emap.get("codeNo"))
|| "5627000000".equals(emap.get("codeNo")) || "5804000000".equals(emap.get("codeNo"))
|| "5809000000".equals(emap.get("codeNo")) || "5827000000".equals(emap.get("codeNo"))
){
params.put("caseNo", emap.get("caseNo"));
params.put("fileReqTarget", "2601000000");
params.put("memberId", "nanumCallBack");
params.put("sql", "trublprocessmngDataRequest");
bservice.insert(params);
}else if("5205000000".equals(emap.get("codeNo")) || "5305000000".equals(emap.get("codeNo"))
|| "5405000000".equals(emap.get("codeNo")) || "5505000000".equals(emap.get("codeNo"))
|| "5605000000".equals(emap.get("codeNo")) || "5210000000".equals(emap.get("codeNo"))
|| "5310000000".equals(emap.get("codeNo")) || "5410000000".equals(emap.get("codeNo"))
|| "5510000000".equals(emap.get("codeNo")) || "5610000000".equals(emap.get("codeNo"))
|| "5228000000".equals(emap.get("codeNo")) || "5328000000".equals(emap.get("codeNo"))
|| "5435000000".equals(emap.get("codeNo")) || "5528000000".equals(emap.get("codeNo"))
|| "5628000000".equals(emap.get("codeNo")) || "5805000000".equals(emap.get("codeNo"))
|| "5810000000".equals(emap.get("codeNo")) || "5828000000".equals(emap.get("codeNo"))
){
params.put("caseNo", emap.get("caseNo"));
params.put("fileReqTarget", "2602000000");
params.put("memberId", "nanumCallBack");
params.put("sql", "trublprocessmngDataRequest");
bservice.insert(params);
}else if("5207000000".equals(emap.get("codeNo")) || "5208000000".equals(emap.get("codeNo"))
|| "5307000000".equals(emap.get("codeNo")) || "5308000000".equals(emap.get("codeNo"))
|| "5407000000".equals(emap.get("codeNo")) || "5408000000".equals(emap.get("codeNo"))
|| "5507000000".equals(emap.get("codeNo")) || "5508000000".equals(emap.get("codeNo"))
|| "5607000000".equals(emap.get("codeNo")) || "5608000000".equals(emap.get("codeNo"))
|| "5807000000".equals(emap.get("codeNo")) || "5808000000".equals(emap.get("codeNo"))
){
params.put("caseNo", emap.get("caseNo"));
params.put("memberId", "nanumCallBack");
params.put("sql", "trublprocessmngAtentRequest");
bservice.insert(params);
}
}else if("returned".equals(params.get("status"))){
params.put("sql", "nanumSanctnhistorySel");
params.put("data", JSPUtil.fixNull(bservice.select(params)));
EgovMap emap = new EgovMap();
emap = (EgovMap) params.get("data");
if(emap != null && emap.size() > 0){
params.put("codeNo", emap.get("codeNo"));
params.put("caseNo", emap.get("caseNo"));
params.put("memberId", "nanumCallBack");
params.put("sql", "nanumRetrunHisDel");
bservice.delete(params);
}
}
//나눔쪽에 success보내면 처리완료
status.setText("Success");
code.setText("0");
}catch(Exception e){
status.setText("Error");
code.setText("1");
e.printStackTrace();
}
doc.setRootElement(ndata);
String document = "";
//String으로 xml 출력
XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat().setEncoding("UTF-8")) ;
document = outputter.outputString(doc);
log.warn("document??????????????????????>>>>>>>>>>>"+document);
try{
PrintWriter out = response.getWriter();
out.write(document);
out.flush();
out.close();
}catch(Exception e){
}
}
@RequestMapping(value = "/gtm/proc/{siteIdx}/trublend/trublendMemoUpdate.do")
public String trublendMemoUpdate(HttpServletRequest request,
HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx
) throws Exception {
EgovMap params;
request.setCharacterEncoding("UTF-8");
ModelAndView mav = new ModelAndView();
session.setAttribute("siteIdx", siteIdx);
int successCheck = 0;
String message = "";
String hrefUrl = "";
String memoType = SeedUtils.setReplaceNull(request.getParameter("memoType"));
if(!"".equals(memoType)){
params = JSPUtil.makeRequestParams(request, session, true);
//시큐어코딩 관련 파라미터는 삭제
params.remove("SpringSecurityFiltersecurityinterceptorFilterapplied");
params.remove("SpringSecuritySessionMgmtFilterApplied");
params.remove("springSecurityContext");
params.remove("SpringSecurityScpfApplied");
params.remove("springSecuritySavedRequest");
if("1".equals(memoType)){
params.put("sql", "updateCaseTrublMemo1");
}else if("2".equals(memoType)){
params.put("sql", "updateCaseTrublMemo2");
}
hrefUrl = "/gtm/case/trublend/trublendView/View.do?type=TP_RCEPTEDIT&caseNo="+params.get("caseNo");
successCheck = Integer.parseInt(SeedUtils.setReplaceNull(bservice.update(params), "0"));
}
if(successCheck == 1){
message = "작업에 성공 하였습니다.";
}else{
message = "작업에 실패 하였습니다.";
}
session.setAttribute("sSiteIdx", siteIdx);
session.setAttribute("message", "(message)"+message);
session.setAttribute("url", hrefUrl);
return "/_common/jsp/message";
}
private String getGWID(Map<String, Object> p_tmap) {
//Map<String, Object> tmap = (Map<String, Object>) JSPUtil.fixNull(memberService.memberNewOne(params));
//return p_tmap.get("MEMBER_ITEM_F6").toString();
if ("seed".equals(p_tmap.get("MEMBER_ID").toString())) {
return "test04";
}
return p_tmap.get("MEMBER_ID").toString();
//params.put("gwId", tmap.get("MEMBER_ID").toString());
//params.put("gwId", tmap.get("MEMBER_ITEM_F6").toString());
}
@RequestMapping(value = "/clip/{pageFolder}/{pageName}/ClipReport4PdfDown2.do")
public void ClipReport4PdfDown2(HttpServletRequest request,HttpServletResponse response,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName) throws Exception {
request.setCharacterEncoding("UTF-8");
// ReportUtil.createEx
String propertyPath = request.getSession().getServletContext().getRealPath("/") + "WEB-INF" + File.separator + "clipreport4" + File.separator + "clipreport4.properties";
String crfNm = request.getParameter("crfNm");
OOFDocument oof = OOFDocument.newOOF();
OOFFile file = oof.addFile("crf.root", "%root%/crf/"+crfNm+".crf");
// oof.addConnectionData("*","oracle1");
oof.addConnectionData("*","XE");
// String requestQuery = URLDecoder.decode(request.getQueryString());
// String requestQuery = URLDecoder.decode(session.getAttribute("query_clip").toString());
String parmes = "";
Enumeration<?> e = request.getParameterNames();
while (e.hasMoreElements()) {
String key = (String) e.nextElement();
String Values = request.getParameter(key);
if (key.startsWith("CLIPDATA_")) {
if(parmes.equals("")) {
parmes += key + "=" + Values;
} else {
parmes += "&" + key + "=" + Values;
}
}
}
String[] queryList = parmes.split("&");
for(int i=0; i<queryList.length; i++) {
String[] query = queryList[i].split("=");
if (query[0].startsWith("CLIPDATA_")) {
if(query.length == 2) {
oof.addField(query[0], query[1]);
} else if(query.length == 1) {
oof.addField(query[0], "");
}
}
}
PDFOption pdfOption = new PDFOption();
// com.clipsoft.clipreport.server.service.ClipReportExport.createExportForPDF(request, response.getOutputStream(), propertyPath, oof, pdfOption);
// com.clipsoft.clipreport.server.service.ClipReportExport.createExportForPDF(request, new FileOutputStream("test"), propertyPath, oof, pdfOption);
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "attachment; filename=\"report.pdf\"");
response.setCharacterEncoding("UTF-8");
// HttpServletResponse의 OutputStream 사용
try (OutputStream outputStream = response.getOutputStream()) {
int errorType = com.clipsoft.clipreport.server.service.ClipReportExport.createExportForPDF(request, outputStream, propertyPath, oof, pdfOption);
if (errorType != 0) {
throw new RuntimeException("PDF 생성 중 오류 발생: ErrorType " + errorType);
}
}
// return "";
}
}