mjon_git/src/main/java/itn/web/ContentController.java
2023-08-18 11:26:33 +09:00

773 lines
28 KiB
Java

package itn.web;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.google.gson.JsonObject;
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;
import com.mashape.unirest.http.exceptions.UnirestException;
import itn.com.uss.olh.hpc.service.HackIpService;
import itn.com.uss.olh.hpc.service.HackIpVO;
import itn.let.lett.service.LetterVO;
import itn.let.mjo.pay.service.MjonPayVO;
import itn.let.schdlr.service.SchdlrManageService;
import itn.let.sym.grd.service.MberGrdService;
import itn.let.sym.grd.service.MberGrdVO;
import itn.let.uss.ion.cnt.service.CntManageVO;
import itn.let.uss.ion.cnt.service.EgovCntManageService;
@Controller
public class ContentController{
@Resource(name = "egovCntManageService")
private EgovCntManageService egovCntManageService;
@Resource(name = "hackIpService")
private HackIpService hackIpService;
@Resource(name = "SchdlrManageService")
private SchdlrManageService schdlrManageService;
/*인사말*/
@RequestMapping(value="/web/intro/intro.do")
public String intro(@RequestParam Map<String, Object> commandMap, Model model) throws Exception {
//selectNaviList(68, model);
return "/web/intro/intro";
}
/* content*/
@RequestMapping(value="/web/content.do")
public String contentIntro(@RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
if(commandMap.get("proFn")==null){
return "blank";
}
cntManageVO.setProgrmFileNm((String)commandMap.get("proFn"));
cntManageVO = egovCntManageService.selectContentVo(cntManageVO);
if(cntManageVO==null){ //매뉴에 등록되지 않았으면 cnt_manage 에서라도 가져옴.(proFn 으로 무조건 content 가져옴)
cntManageVO = new CntManageVO();
cntManageVO.setProgrmFileNm((String)commandMap.get("proFn"));
cntManageVO = egovCntManageService.selectContentByProFn(cntManageVO) ;
if(cntManageVO == null){
return "blank";
}
return "cnt/"+cntManageVO.getCntId() ;
}
if(cntManageVO.getMenuCours()!=null){ //매뉴구조
cntManageVO.setMenuCours(cntManageVO.getMenuCours().replace("|" , " > "));
}
if(null != commandMap.get("proFn")) {
cntManageVO.setMenuNo((String)commandMap.get("proFn"));
}
model.addAttribute("cntManageVO", cntManageVO);
String sLocationUrl = "cnt/"+cntManageVO.getCntId();
return sLocationUrl ;
}
/* 관리자 컨텐츠 content*/
@RequestMapping(value="/web/adminContent.do")
public String adminContent(@RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
//selectNaviList(68, model);
String tempCntDtId = "" ;
if(cntManageVO.getCntDtId() != null){ //관리자 미리보기 화면
tempCntDtId = cntManageVO.getCntDtId();
//cntManageVO = egovCntManageService.selectContentByCntDtId(cntManageVO);
cntManageVO = egovCntManageService.selectCntDtDetail(cntManageVO);
if(cntManageVO!=null){
if(cntManageVO.getMenuCours()!=null){ //매뉴구조
cntManageVO.setMenuCours(cntManageVO.getMenuCours().replace("|" , " > "));
}
}
if(cntManageVO.getCntCn().contains("bbsLoad")) {
cntManageVO.setCntCn(cntManageVO.getCntCn().replace("id=\"bbsLoad\"" , ""));
}
model.addAttribute("cntManageVO", cntManageVO);
}
String sLocationUrl = "cntsource/ckeditorPriview";
return sLocationUrl ;
}
/* 관리자 컨텐츠 content*/
@RequestMapping(value="/{siteId}/web/adminContent.do")
public String siteAdminContent(@PathVariable("siteId") String siteId, @RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
//selectNaviList(68, model);
String tempCntDtId = "" ;
if(cntManageVO.getCntDtId() != null){ //관리자 미리보기 화면
tempCntDtId = cntManageVO.getCntDtId();
//cntManageVO = egovCntManageService.selectContentByCntDtId(cntManageVO);
cntManageVO = egovCntManageService.selectCntDtDetail(cntManageVO);
if(cntManageVO!=null){
if(cntManageVO.getMenuCours()!=null){ //매뉴구조
cntManageVO.setMenuCours(cntManageVO.getMenuCours().replace("|" , " > "));
}
}
model.addAttribute("cntManageVO", cntManageVO);
}
String sLocationUrl = "cntsource/ckeditorPriview";
return sLocationUrl ;
}
/* 컨텐츠 등록시 실제 파일로 테스트 해봄*/
@RequestMapping(value="/web/contentTemp.do")
public String contentTempWrite(@RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
cntManageVO.setMenuCours("기관소개|인사말".replace("|" , " > "));
model.addAttribute("cntManageVO", cntManageVO);
return "cntsource/contentTemp";
}
/* 컨텐츠 에디터 미리보기 해봄*/
@RequestMapping(value="/web/ckeditorPriview.do")
public String ckeditorPriview(@RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
model.addAttribute("cntManageVO", cntManageVO);
String sLocationUrl = "cntsource/ckeditorPriview";
return sLocationUrl ;
}
/* 컨텐츠 에디터 미리보기 해봄*/
@RequestMapping(value="/{siteId}/web/ckeditorPriview.do")
public String siteCkeditorPriview(@PathVariable("siteId") String siteId , @RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
model.addAttribute("cntManageVO", cntManageVO);
String sLocationUrl = "cntsource/siteIdCkeditorPriview";
return sLocationUrl ;
}
/* siteId content*/
@RequestMapping(value="/{siteId}/web/content.do")
public String siteContentIntro(@PathVariable("siteId") String siteId ,@RequestParam Map<String, Object> commandMap, CntManageVO cntManageVO , HttpServletRequest request, Model model) throws Exception {
if(commandMap.get("proFn")==null){
return "blank";
}
cntManageVO.setProgrmFileNm((String)commandMap.get("proFn"));
cntManageVO.setSiteId(""); //수퍼 관리자 등록시 siteId 안들어감.
cntManageVO = egovCntManageService.selectContentVo(cntManageVO);
if(cntManageVO==null){ //매뉴에 등록되지 않았으면 cnt_manage 에서라도 가져옴.(proFn 으로 무조건 content 가져옴)
cntManageVO = new CntManageVO();
cntManageVO.setProgrmFileNm((String)commandMap.get("proFn"));
cntManageVO = egovCntManageService.selectContentByProFn(cntManageVO) ;
if(cntManageVO == null){
return "blank";
}
return "cnt/"+cntManageVO.getCntId() ;
}
if(cntManageVO.getMenuCours()!=null){ //매뉴구조
cntManageVO.setMenuCours(cntManageVO.getMenuCours().replace("|" , " > "));
}
model.addAttribute("cntManageVO", cntManageVO);
model.addAttribute("siteId", siteId);
String siteFolder = "site/"+siteId ;
model.addAttribute("site_path", "/"+siteFolder);
String sLocationUrl = "cnt/"+cntManageVO.getCntId();
return sLocationUrl ;
}
/* siteId content*/
@RequestMapping(value="/web/pop/infoPop.do")
public String siteContentIntro(@ModelAttribute CntManageVO cntManageVO, HttpServletRequest request, Model model) throws Exception {
String test = cntManageVO.getPageType();
model.addAttribute("pageType", test);
return "/web/pop/infoListPop";
}
/**
* 금융결제원 통합API포털 Callback URL
* @param kisaVO
* @param model
* @return modelAndView
* @throws Exception
* /web/bank/bankingApiCallbackAjax.do
*/
@RequestMapping(value = {"/web/bank/bankingApiCallbackAjax.do"})
public ModelAndView updateKisaAjax(
HttpServletRequest request
, String code) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
modelAndView.addObject("code", code);
return modelAndView;
}
// 금융결제원 통합API포털 호출
@RequestMapping(value="/web/bank/bankingRealNameApiAccessTokenAjax.do")
public ModelAndView bankingRealNameApiAccessTokenAjax(@ModelAttribute("mjonPayVO") MjonPayVO mjonPayVO,
HttpServletRequest request) throws Exception {
boolean isSuccess = true;
String msg = "";
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
String rspCode = ""; // 최종 return 될 코드 값 Ex) O0002
String rspMessage = ""; // 최종 return 될 메시지 값 Ex) Access Token 거부
String accessToken = ""; // 토큰값
String accountHolderName = ""; // 예금주명
try {
// Step 1. Get Token
String client_id = "";
String client_secret = "";
String scope = "oob";
String grant_type = "client_credentials";
String bodyParams = "client_id=" + client_id + "&client_secret=" + client_secret + "&scope=" + scope + "&grant_type=" + grant_type;
// Unirest.post
HttpResponse<String> response = Unirest.post("https://testapi.openbanking.or.kr/oauth/2.0/token")
.header("content-type", "application/x-www-form-urlencoded; charset=UTF-8")
.header("cache-control", "no-cache")
.body(bodyParams)
.asString();
System.out.println("Step1 Web Response : " + response.getBody().toString());
// Response Parshing
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(response.getBody().toString());
accessToken = jsonObject.get("access_token").toString();
System.out.println("accessToken :: " + accessToken);
// Step 2. Real Name Check
Date now = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String nowTime = sdf.format(now);
SimpleDateFormat sdf2 = new SimpleDateFormat("ddHHmmss");
String nowTime2 = sdf2.format(now);
String bankCode = ""; // 은행코드
switch(mjonPayVO.getBankNm()) {
case "국민은행" :
bankCode = "004";
break;
case "기업은행" :
bankCode = "003";
break;
case "농협은행" :
bankCode = "011";
break;
case "신한은행" :
bankCode = "088";
break;
case "우리은행" :
bankCode = "020";
break;
case "하나은행" :
bankCode = "081";
break;
case "카카오뱅크" :
bankCode = "090";
break;
}
String bank_tran_id = "이용기관코드" + nowTime2 + "Z"; // 은행거래번호 (이용기관코드 => Ex:M000000000U) + 일련번호)
String bank_code_std = bankCode; // 은행코드
String account_num = mjonPayVO.getAccountNum(); // 계좌번호
String account_holder_info_type = " "; // 생년월일 비교방식
String account_holder_info = mjonPayVO.getBirthDate(); // 생년월일
String tran_dtime = nowTime;
JsonObject params = new JsonObject();
params.addProperty("bank_tran_id", bank_tran_id);
params.addProperty("bank_code_std", bank_code_std);
params.addProperty("account_num", account_num);
params.addProperty("account_holder_info_type", account_holder_info_type);
params.addProperty("account_holder_info", account_holder_info);
params.addProperty("tran_dtime", tran_dtime);
// Unirest.post
HttpResponse<String> response2 = Unirest.post("https://testapi.openbanking.or.kr/v2.0/inquiry/real_name")
.header("content-type", "application/json; charset=UTF-8")
.header("cache-control", "no-cache")
.header("Authorization", "Bearer " + accessToken)
.body(params.toString())
.asString();
//System.out.println("Step1 Web Response : " + response2.getBody().toString());
// Response Parshing
JSONParser jsonParser2 = new JSONParser();
JSONObject jsonObject2 = (JSONObject) jsonParser2.parse(response2.getBody().toString());
rspCode = jsonObject2.get("rsp_code").toString();
rspMessage = jsonObject2.get("rsp_message").toString();
accountHolderName = jsonObject2.get("account_holder_name").toString();
System.out.println("rspCode :: " + rspCode);
System.out.println("rspMessage :: " + rspMessage);
} catch (UnirestException e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
modelAndView.addObject("rspCode", rspCode);
modelAndView.addObject("rspMessage", rspMessage);
modelAndView.addObject("accountHolderName", accountHolderName);
return modelAndView;
}
/**
* Whois 국가코드 Check
* @param kisaVO
* @param model
* @return modelAndView
* @throws Exception
* https://www.data.go.kr => itn0202 계정 인코딩된 서비스키 사용
*/
@RequestMapping(value="/web/whois/whoisIpCountryAjax.do")
public ModelAndView whoisIpCountryAjax(
HttpServletRequest request) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
String response = "";
String result = "";
String whois = "";
String rspCode = "";
String countryCode = ""; // 국가코드
StringBuilder sb = new StringBuilder();
try {
String ipAddress = request.getHeader("X-Forwarded-For") == null ? request.getHeader("X-Forwarded-For") : request.getHeader("X-Forwarded-For").replaceAll("10.12.107.11", "").replaceAll(",", "").trim();
if (ipAddress == null) {
ipAddress = request.getRemoteAddr();
}
//ipAddress = "219.240.88.15"; // 국내IP
//ipAddress = "102.216.212.0"; // 해외IP
//ipAddress = "58.236.220.240";
System.out.println("ipAddress :: " + ipAddress);
// IP Check
if (StringUtils.isNotEmpty(ipAddress) && !ipAddress.equals("127.0.0.1") && !ipAddress.equals("0:0:0:0:0:0:0:1")) {
StringBuilder urlBuilder = new StringBuilder("http://apis.data.go.kr/B551505/whois/ipas_country_code");
// 인코딩된 서비스키
urlBuilder.append("?" + URLEncoder.encode("ServiceKey","UTF-8") + "=aEjBXkHxYU%2FVrzFOU22Zqujv8JEFJ0y2AmmxqkEv0O411NTNcpE2FbwvD7BxbG0sbepQbNp0%2FVj7HwbrrwV%2FOA%3D%3D");
urlBuilder.append("&" + URLEncoder.encode("query","UTF-8") + "=" + URLEncoder.encode(ipAddress, "UTF-8"));
urlBuilder.append("&" + URLEncoder.encode("answer","UTF-8") + "=" + URLEncoder.encode("JSON", "UTF-8"));
URL url = new URL(urlBuilder.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-type", "application/json");
//System.out.println("Response code: " + conn.getResponseCode());
BufferedReader rd;
if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
} else {
rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
}
String line;
while ((line = rd.readLine()) != null) {
sb.append(line);
}
rd.close();
conn.disconnect();
//System.out.println("Return: " + sb.toString());
// 전달받은 데이터 파싱
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(sb.toString());
response = jsonObject.get("response").toString();
JSONParser jsonParser2 = new JSONParser();
JSONObject jsonObject2 = (JSONObject) jsonParser2.parse(response.toString());
result = jsonObject2.get("result").toString();
JSONParser jsonParser3 = new JSONParser();
JSONObject jsonObject3 = (JSONObject) jsonParser3.parse(result.toString());
rspCode = jsonObject3.get("result_code").toString();
JSONParser jsonParser22 = new JSONParser();
JSONObject jsonObject22 = (JSONObject) jsonParser22.parse(response.toString());
whois = jsonObject22.get("whois").toString();
JSONParser jsonParser33 = new JSONParser();
JSONObject jsonObject33 = (JSONObject) jsonParser33.parse(whois.toString());
countryCode = jsonObject33.get("countryCode").toString();
System.out.println("rspCode :: " + rspCode);
System.out.println("countryCode :: " + countryCode);
}
else {
isSuccess = false;
msg = "ipNoCheck";
}
} catch (Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
modelAndView.addObject("rspCode", rspCode);
modelAndView.addObject("countryCode", countryCode);
return modelAndView;
}
/**
* Whois 국가코드 Check
* @param kisaVO
* @param model
* @return modelAndView
* @throws Exception
* https://www.data.go.kr => itn0202 계정 인코딩된 서비스키 사용
*/
@RequestMapping(value="/web/ipAjax.do")
public ModelAndView ipAjax(
HttpServletRequest request
, String ip) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
String response = "";
String result = "";
String whois = "";
String rspCode = "";
String countryCode = ""; // 국가코드
StringBuilder sb = new StringBuilder();
String ipAddress = ip;
try {
System.out.println("ipAddress :: " + ipAddress);
// IP Check
if (StringUtils.isNotEmpty(ipAddress) && !ipAddress.equals("127.0.0.1") && !ipAddress.equals("0:0:0:0:0:0:0:1")) {
StringBuilder urlBuilder = new StringBuilder("http://apis.data.go.kr/B551505/whois/ipas_country_code");
// 인코딩된 서비스키
urlBuilder.append("?" + URLEncoder.encode("ServiceKey","UTF-8") + "=aEjBXkHxYU%2FVrzFOU22Zqujv8JEFJ0y2AmmxqkEv0O411NTNcpE2FbwvD7BxbG0sbepQbNp0%2FVj7HwbrrwV%2FOA%3D%3D");
urlBuilder.append("&" + URLEncoder.encode("query","UTF-8") + "=" + URLEncoder.encode(ipAddress, "UTF-8"));
urlBuilder.append("&" + URLEncoder.encode("answer","UTF-8") + "=" + URLEncoder.encode("JSON", "UTF-8"));
URL url = new URL(urlBuilder.toString());
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-type", "application/json");
//System.out.println("Response code: " + conn.getResponseCode());
BufferedReader rd;
if(conn.getResponseCode() >= 200 && conn.getResponseCode() <= 300) {
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
} else {
rd = new BufferedReader(new InputStreamReader(conn.getErrorStream()));
}
String line;
while ((line = rd.readLine()) != null) {
sb.append(line);
}
rd.close();
conn.disconnect();
//System.out.println("Return: " + sb.toString());
// 전달받은 데이터 파싱
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(sb.toString());
response = jsonObject.get("response").toString();
JSONParser jsonParser2 = new JSONParser();
JSONObject jsonObject2 = (JSONObject) jsonParser2.parse(response.toString());
result = jsonObject2.get("result").toString();
JSONParser jsonParser3 = new JSONParser();
JSONObject jsonObject3 = (JSONObject) jsonParser3.parse(result.toString());
rspCode = jsonObject3.get("result_code").toString();
JSONParser jsonParser22 = new JSONParser();
JSONObject jsonObject22 = (JSONObject) jsonParser22.parse(response.toString());
whois = jsonObject22.get("whois").toString();
JSONParser jsonParser33 = new JSONParser();
JSONObject jsonObject33 = (JSONObject) jsonParser33.parse(whois.toString());
countryCode = jsonObject33.get("countryCode").toString();
System.out.println("rspCode :: " + rspCode);
System.out.println("countryCode :: " + countryCode);
}
else {
isSuccess = false;
msg = "ipNoCheck";
}
} catch (Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
modelAndView.addObject("rspCode", rspCode);
modelAndView.addObject("ipAddress", ipAddress);
modelAndView.addObject("countryCode", countryCode);
return modelAndView;
}
// 차단IP 여부
@RequestMapping(value = "/web/whois/ignoreIpCntAjax.do")
public ModelAndView ignoreIpCntAjax(
@ModelAttribute("hackIpVO") HackIpVO hackIpVO
, HttpServletRequest request) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
int ignoreIpCnt = 0;
// 0:0:0:0:0:0:0:1
String ipAddress = request.getHeader("X-Forwarded-For") == null ? request.getHeader("X-Forwarded-For") : request.getHeader("X-Forwarded-For").replaceAll("10.12.107.11", "").replaceAll(",", "").trim();
if (ipAddress == null) {
ipAddress = request.getRemoteAddr();
}
try {
hackIpVO.setIgnoreIp(ipAddress);
ignoreIpCnt = hackIpService.selectIgnoreIpCnt(hackIpVO);
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
modelAndView.addObject("ipAddress", ipAddress);
modelAndView.addObject("ignoreIpCnt", ignoreIpCnt);
return modelAndView;
}
/**
* IP Block 화면
* @param request
* @param model
* @param addrVO
* @param redirectAttributes
* @return
* @throws Exception
*/
@RequestMapping("/web/block/blockAjax.do")
public String blockAjax(HttpServletRequest request, ModelMap model) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
// 0:0:0:0:0:0:0:1
String ipAddress = request.getHeader("X-Forwarded-For") == null ? request.getHeader("X-Forwarded-For") : request.getHeader("X-Forwarded-For").replaceAll("10.12.107.11", "").replaceAll(",", "").trim();
if (ipAddress == null) {
ipAddress = request.getRemoteAddr();
}
model.addAttribute("ipAddress", ipAddress);
return "/block/Block";
}
/*서비스소개*/
@RequestMapping(value="/web/info/mjonInfo.do")
public String mjonInfo(@RequestParam Map<String, Object> commandMap, Model model) throws Exception {
//selectNaviList(68, model);
System.out.println("=====================mjonInfo");
model.addAttribute("url", "mjonInfo");
return "/cnt/mjonInfo";
}
/*주요기능*/
@RequestMapping(value="/web/info/mjonFunc.do")
public String mjonFunc(@RequestParam Map<String, Object> commandMap, Model model) throws Exception {
//selectNaviList(68, model);
System.out.println("=====================mjonFunc");
model.addAttribute("url", "mjonFunc");
return "/cnt/mjonFunc";
}
@RequestMapping(value = "/web/main/mainTest.do")
public String mainTest(HttpServletRequest request, ModelMap model, HttpSession session,
@RequestParam(value="message", defaultValue="0") String message, LetterVO letterVO) throws Exception{
return "web/main/mainTest";
}
// 배너 클릭 업데이트
@RequestMapping(value= {"/web/main/bannerClickUpdateAjax.do"})
public ModelAndView bannerClickUpdate(HttpServletRequest request,
ModelMap model) throws Exception{
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
try {
String mCode = request.getParameter("mCode");
String bCode = request.getParameter("bCode");
System.out.println("#############################################################");
System.out.println("mCode : " + mCode);
System.out.println("bCode : " + bCode);
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
// 전용계좌 스케줄러 실행
@RequestMapping(value= {"/web/main/vacsAutoChargeAjax.do"})
public ModelAndView vacsAutoCharge(HttpServletRequest request,
ModelMap model) throws Exception{
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
try {
schdlrManageService.vacsAutoCharge();
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
@Resource(name = "mberGrdService")
MberGrdService mberGrdService;
/*
// test
@RequestMapping(value= {"/web/main/testAjax.do"})
public ModelAndView testAjax(HttpServletRequest request,
ModelMap model) throws Exception{
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
try {
MberGrdVO mberGrdVO = new MberGrdVO();
mberGrdVO.setFirstIndex(0);
mberGrdVO.setLastIndex(1000);
mberGrdVO.setRecordCountPerPage(1000);
if("".equals(mberGrdVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
mberGrdVO.setSearchSortCnd("regDate");
mberGrdVO.setSearchSortOrd("desc");
}
List<MberGrdVO> resultList = mberGrdService.selectMberGrdList(mberGrdVO);
for (MberGrdVO item : resultList) {
mberGrdVO.setGrdNewDate("2022-01-01");
mberGrdVO.setMberId(item.getMberId());
// System.out.println("Step 3. 누적결제금액(이벤트금액 제외) 추출 및 등급 조회");
MberGrdVO mberGrdVO3 = new MberGrdVO();
mberGrdVO3 = mberGrdService.selectMberGrdAmtDetail(mberGrdVO);
System.out.println("MberId : " + item.getMberId());
System.out.println("MberGrdVO3 : " + mberGrdVO3);
if (null != mberGrdVO3) {
System.out.println("GrdSetNo() : " + mberGrdVO3.getGrdSetNo());
}
System.out.println("");
}
/*
MberGrdVO mberGrdVO1 = new MberGrdVO();
if (!StringUtils.isEmpty(mberGrdVO1.getMberId())) {
System.out.println("mberGrdVO1 : NOT NULL");
}
else {
System.out.println("mberGrdVO1 : NULL");
}
MberGrdVO mberGrdVO2 = new MberGrdVO();
mberGrdVO2.setMberId("nopay");
if (!StringUtils.isEmpty(mberGrdVO2.getMberId())) {
System.out.println("mberGrdVO2 : NOT NULL");
}
else {
System.out.println("mberGrdVO2 : NULL");
}
*/
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
*/
}