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

- 수수료 납부 개발
This commit is contained in:
LJH 2022-12-05 16:25:52 +09:00
parent 46718fcf56
commit a243f41438
3 changed files with 124 additions and 8 deletions

View File

@ -16,15 +16,25 @@ 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.mvc.support.RedirectAttributes;
import org.springframework.web.servlet.support.RequestContextUtils;
import com.inicis.std.util.SignatureUtil;
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.utl.fcc.service.EgovStringUtil;
import kcc.kccadr.accdnt.apm.service.AdjstPayMentService;
import kcc.kccadr.accdnt.apm.service.AdjstPayMentVO;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrService;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
import kcc.kccadr.adjst.service.PayService;
import kcc.kccadr.adjst.service.PayVO;
import kcc.kccadr.cmm.CmmUtil;
import kcc.kccadr.cmm.KccadrConstants;
import kcc.kccadr.kccadrCom.service.KccadrMgrUdtService;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
@ -64,6 +74,20 @@ public class AdjstPayMentController {
@Value("#{globalSettings['Globals.pay.siteDomain']}")
private String global_siteDomain;
@Resource(name="PayService")
private PayService payService;
//조정사건 이력관리 일련번호
@Resource(name="adrHstryMgrSeqGnrService")
private EgovIdGnrService adrHstryMgrSeqGnrService;
// 조정신청 서비스단
@Resource(name = "AdjReqMgrService")
private AdjReqMgrService adjReqMgrService;
@Resource(name="KccadrMgrUdtService")
private KccadrMgrUdtService kccadrMgrUdtService;
/**
* 기일변경신청 목록
@ -176,7 +200,9 @@ public class AdjstPayMentController {
String orderNumber = mid+"_"+SignatureUtil.getTimestamp(); // 가맹점 주문번호(가맹점에서 직접 설정)
//결제요금
String price = String.valueOf(totalPrice); // 상품가격(특수기호 제외, 가맹점에서 직접 설정)
//테스트를 위한 요금 수정
// price = "50";
Map<String, String> signParam = new HashMap<String, String>();
signParam.put("oid", orderNumber);
@ -198,7 +224,7 @@ public class AdjstPayMentController {
String requestUrl = scheme + "://" + serverName + serverPort;
//고객사 임의데이터 ("요청URL" + "§" + "pk")
String merchantData = requestUrl + "/web/kccadr/accdnt/ai/doclssReqProcess.do" + "§";
String merchantData = requestUrl + "/web/kccadr/accdnt/apm/adjstPayMentProcess.do" + "§";
model.addAttribute("mid", mid);
model.addAttribute("signKey", signKey);
@ -216,5 +242,100 @@ public class AdjstPayMentController {
model.addAttribute("ssoLoginVO", ssoLoginVO);
return "/web/kccadr/accdnt/apm/adjstPayMentDetail";
}
/**
*
*/
@RequestMapping("/web/kccadr/accdnt/apm/adjstPayMentProcess.do")
public String adjstPayMentProcess(HttpServletRequest request, RedirectAttributes rttr) throws Exception {
Map<String, ?> flashMap =RequestContextUtils.getInputFlashMap(request);
String pk = "";
/*
* netCancleTorF
* true = 정상결제
* false = 정상결제 망취소
*
* */
String netCancleTorF = "true";
if(flashMap != null) {
pk = (String)flashMap.get("pk");
netCancleTorF = (String)flashMap.get("netCancleTorF");
}
/*
* 1. netCancleTorF를 통해 망취소여부를 체크한다.
* 2. 전닯받은 pk로 adr_pay select resultcode가 0000인지 여부체크
* 3. 0000이라면 'asctn_table' 컬럼의 테이블의 asctn_table_pk1 또는 pk2를 통해 해당 테이블에 처리
*
* */
//1.
if(Boolean.valueOf(netCancleTorF)) {
//2.
PayVO payVO = payService.selectPayForPk(pk);
if("0000".equals(payVO.getResultcode())) {
//3.
// adrRecordReadingService.updatePrcsnStatCd(payVO);
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
AdjReqMgrVO adjReqMgrVO = new AdjReqMgrVO();
adjReqMgrVO.setAdrSeq(pk);
adjReqMgrVO.setAdrSn("1");
adjReqMgrVO.setLastUpdusrId(userId);
adjReqMgrVO.setApprId(userId);
adjReqMgrVO.setFrstRegisterId(userId);
String statCd = KccadrConstants.ADR_PAY_COMP;
// 결제 상세테이블 변경
// 결제 마스터 테이블 변경
//step1.조정이력일련번호 - updateAdrMgrUdt와 세트 adr_hstry_mgr insert
//이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 controller #1
String s_adrHstryMgrSeq = adrHstryMgrSeqGnrService.getNextStringId();
System.out.println("s_adrHstryMgrSeq===================");
System.out.println(s_adrHstryMgrSeq);
//이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09
//이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 controller #3
int rs = adjReqMgrService.updateAdjReqPaymentConfirm(adjReqMgrVO
, "사용자>>조정신청상세>납부처리" //String p_code_desc - CC199
, "A005" //String p_stat_cd
, s_adrHstryMgrSeq //값이 있으면 detail에만 추가로 저장, 없으면 생성 사용(hstry, detail 추가 저장)
);
if(rs > 0 ){
AdjReqMgrVO arv = new AdjReqMgrVO();
arv.setAdrSeq(adjReqMgrVO.getAdrSeq()); //조정일련번호
arv.setStatCd(statCd); //최종 변경 상태값
//arv.setLastUpdusrId(loginVO.getId()); //최종 변경자
arv.setLastUpdusrId(loginVO.getUniqId()); //최종 변경자
//이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 controller #2
kccadrMgrUdtService.updateAdrMgrUdt(arv
, s_adrHstryMgrSeq
);
}
}else {
//fail
rttr.addFlashAttribute("result", "fail");
}
}
return "redirect:/web/kccadr/accdnt/apm/adjstPayMentList.do";
}
}

View File

@ -186,7 +186,7 @@ Globals.Innorix.FilePath=D:\\usr\\local\\tomcat\\file\\sht\\
#\uac1c\ubc1c\uc11c\ubc84
Globals.pay.mid=INIpayTest
Globals.pay.signKey=SU5JTElURV9UUklQTEVERVNfS0VZU1RS
Globals.pay.siteDomain=http://119.193.215.98:8087/web/kccadr/payment/inipay
Globals.pay.siteDomain=http://119.193.215.98:8081/web/kccadr/payment/inipay
#\uc2e4\uc11c\ubc84
#inipay \uacb0\uc81c
#Globals.pay.mid=crosorkr01

View File

@ -49,16 +49,11 @@
<script type="text/javaScript" language="javascript">
$(document).ready(function() {
document.cookie = 'same-site-cookie=foo; SameSite=Lax';
document.cookie = 'cross-site-cookie=bar; SameSite=None; Secure';
var searchCondition = "${adrRecordReadingVO.searchCondition}";
if(searchCondition == "6") {
$(".select_wrap").show();
}
});