This commit is contained in:
name 2023-08-29 11:57:06 +09:00
commit ae7f9a9782
31 changed files with 2455 additions and 2184 deletions

View File

@ -243,7 +243,7 @@ public class MjonEventController {
* @return "/web/pay/PayView.do"
* @throws Exception
*/
@RequestMapping(value= {"/web/event/member/pay/PayView.do"})
@RequestMapping(value= {"/web/event/member/pay/PayView_OLD.do"})
public String PayView(@ModelAttribute("mjonPayVO") MjonPayVO mjonPayVO,
HttpServletRequest request, RedirectAttributes redirectAttributes,
ModelMap model) throws Exception{
@ -393,7 +393,7 @@ public class MjonEventController {
}
model.addAttribute("tabType", tabType);
return "/web/event/pay/EventPayView";
return "/web/event/pay/EventPayView_OLD";
}

View File

@ -55,10 +55,10 @@ public class MjonEventPayV2Controller {
* 이벤트 결제하기 화면
* @param searchVO
* @param model
* @return "/web/pay/PayView.do"
* @return "/web/event/member/pay/PayView.do"
* @throws Exception
*/
@RequestMapping(value= {"/web/event/member/pay/PayViewV2.do"})
@RequestMapping(value= {"/web/event/member/pay/PayView.do"})
public String PayViewV2(@ModelAttribute("mjonPayVO") MjonPayVO mjonPayVO,
HttpServletRequest request, RedirectAttributes redirectAttributes,
ModelMap model) throws Exception{
@ -216,7 +216,7 @@ public class MjonEventPayV2Controller {
}
model.addAttribute("tabType", tabType);
return "/web/event/pay/EventPayViewV2";
return "/web/event/pay/EventPayView";
}

View File

@ -203,6 +203,7 @@ public class MjonPayVO extends ComDefaultVO{
//매출 통계
private String amtCardSum; //신용카드 결제 금액
private String amtSpaySum; //간편결제 결제 금액
private String amtCellSum; //휴대폰 결제 금액
private String amtBankSum; //즉시이체 결제 금액
private String amtVbankSum; //전용계좌 결제 금액
@ -210,6 +211,7 @@ public class MjonPayVO extends ComDefaultVO{
private String amtTotSum; //결제 금액 총액
private String amtCardSumTot; //전체 신용카드 결제 금액
private String amtSpaySumTot; //전체 간편결제 결제 금액
private String amtCellSumTot; //전체 휴대폰 결제 금액
private String amtBankSumTot; //전체 즉시이체 결제 금액
private String amtVbankSumTot; //전체 전용계좌 결제 금액
@ -217,6 +219,7 @@ public class MjonPayVO extends ComDefaultVO{
private String amtTotSumTot; //전체 결제 금액 총액
private String amtCardCnt; //신용카드 결제
private String amtSpayCnt; //간편결제 결제
private String amtCellCnt; //휴대폰 결제
private String amtBankCnt; //즉시이체 결제
private String amtVbankCnt; //전용계좌 결제
@ -224,6 +227,7 @@ public class MjonPayVO extends ComDefaultVO{
private String amtTotCnt; //결제 총수
private String amtCardCntTot; //전체 신용카드 결제
private String amtSpayCntTot; //전체 신용카드 결제
private String amtCellCntTot; //전체 휴대폰 결제
private String amtBankCntTot; //전체 즉시이체 결제
private String amtVbankCntTot; //전체 전용계좌 결제
@ -253,6 +257,38 @@ public class MjonPayVO extends ComDefaultVO{
private String trdNo; // 모빌리언스 거래번호
private String spayMethod; // 간편결제 구분값
public String getAmtSpaySum() {
return amtSpaySum;
}
public void setAmtSpaySum(String amtSpaySum) {
this.amtSpaySum = amtSpaySum;
}
public String getAmtSpaySumTot() {
return amtSpaySumTot;
}
public void setAmtSpaySumTot(String amtSpaySumTot) {
this.amtSpaySumTot = amtSpaySumTot;
}
public String getAmtSpayCnt() {
return amtSpayCnt;
}
public void setAmtSpayCnt(String amtSpayCnt) {
this.amtSpayCnt = amtSpayCnt;
}
public String getAmtSpayCntTot() {
return amtSpayCntTot;
}
public void setAmtSpayCntTot(String amtSpayCntTot) {
this.amtSpayCntTot = amtSpayCntTot;
}
public String getSpayMethod() {
return spayMethod;

View File

@ -1682,6 +1682,8 @@ public class MjonPayServiceImpl extends EgovAbstractServiceImpl implements MjonP
if(s_paymethod.equals("CARD")){
s_paymethod = "신용카드" ; // 신용카드(정상 결과코드:3001)
}else if(s_paymethod.equals("SPAY")){
s_paymethod = "간편결제" ; // 간편결제
}else if(s_paymethod.equals("BANK")){
s_paymethod = "계좌이체" ; // 계좌이체(정상 결과코드:4000)
}else if(s_paymethod.equals("CELLPHONE")){
@ -1711,6 +1713,24 @@ public class MjonPayServiceImpl extends EgovAbstractServiceImpl implements MjonP
private MjonPayVO setPointVO(MjonPayVO mjonPayVO) throws Exception{
String s_paymethod = mjonPayVO.getPayMethod();
if(s_paymethod.equals("CARD")){
s_paymethod = "신용카드" ; // 신용카드(정상 결과코드:3001)
}else if(s_paymethod.equals("SPAY")){
s_paymethod = "간편결제" ; // 간편결제
}else if(s_paymethod.equals("BANK")){
s_paymethod = "계좌이체" ; // 계좌이체(정상 결과코드:4000)
}else if(s_paymethod.equals("CELLPHONE")){
s_paymethod = "휴대폰" ; // 휴대폰(정상 결과코드:A000)
}else if(s_paymethod.equals("VBANK")){
s_paymethod = "가상계좌" ; // 가상계좌(정상 결과코드:4100)
}else if(s_paymethod.equals("SSG_BANK")){
s_paymethod = "SSG은행계좌" ; // SSG은행계좌(정상 결과코드:0000)
}else if(s_paymethod.equals("CMS_BANK")){
s_paymethod = "계좌간편결제" ; // 계좌간편결제(정상 결과코드:0000)
}else {
s_paymethod = "";
}
String s_amt = mjonPayVO.getAmt();
// 부가세별도 충전금액
s_amt = setCashVatNotIncluded(s_amt);
@ -2080,8 +2100,8 @@ public class MjonPayServiceImpl extends EgovAbstractServiceImpl implements MjonP
//세금계산서,현금영수증 자동발행 체크 / 자동발행 'N'이며 10만원 이상 결제시 현금영수증 의무발행
//String uniqId = mberManageDAO.selectUniqId(mjonPayVO.getUserId());
MberManageVO mberManageVO = mberManageDAO.selectMber(mjonPayVO.getUserId()); //멤버ID에서 유니크ID로 수정 필요
// 세금계산서 자동발행이고,카드결제 아닐경우에만 자동발행
if(("B".equals(mberManageVO.getTaxbillAuto()) || "C".equals(mberManageVO.getTaxbillAuto())) && !"CARD".equals(mjonPayVO.getPayMethod())) {
// 세금계산서 자동발행이고,카드결제, 간편결제 아닐경우에만 자동발행
if(("B".equals(mberManageVO.getTaxbillAuto()) || "C".equals(mberManageVO.getTaxbillAuto())) && !"CARD".equals(mjonPayVO.getPayMethod()) && !"SPAY".equals(mjonPayVO.getPayMethod())) {
TaxVO taxVO = new TaxVO();
/*발행타입 1:소득공제 현금영수증 2:지출증빙 현금영수증 9:세금계산서*/
@ -2121,7 +2141,7 @@ public class MjonPayServiceImpl extends EgovAbstractServiceImpl implements MjonP
}
}
//세금계산서 자동발행 설정이 아니면서, 결제금액이 10만원 이상인 경우 현금영수증 의무발행 데이터 등록 필요
if("N".equals(mberManageVO.getTaxbillAuto()) && Integer.parseInt(mjonPayVO.getAmt()) >= 100000 && !"CARD".equals(mjonPayVO.getPayMethod())) {
if("N".equals(mberManageVO.getTaxbillAuto()) && Integer.parseInt(mjonPayVO.getAmt()) >= 100000 && !"CARD".equals(mjonPayVO.getPayMethod()) && !"SPAY".equals(mjonPayVO.getPayMethod())) {
//결제금액이 10만원 넘는 경우 : 현금영수증 의무발행 요청 등록
TaxVO taxVO = new TaxVO();

View File

@ -1756,7 +1756,7 @@ public class MjonPayController {
* @return "/web/pay/PayView.do"
* @throws Exception
*/
@RequestMapping(value= {"/web/member/pay/PayView.do"})
@RequestMapping(value= {"/web/member/pay/PayView_OLD.do"})
public String PayView(@ModelAttribute("mjonPayVO") MjonPayVO mjonPayVO,
HttpServletRequest request, RedirectAttributes redirectAttributes,
ModelMap model) throws Exception{
@ -1841,7 +1841,7 @@ public class MjonPayController {
List<MberGrdVO> mberGrdSettingList = mberGrdService.selectMberGrdSettingList(mberGrdVO);
model.addAttribute("mberGrdSettingList", mberGrdSettingList);
return "/web/pay/PayView";
return "/web/pay/PayView_OLD";
}
/**
@ -4709,6 +4709,7 @@ public class MjonPayController {
List<MjonPayVO> resultList2 = mjonPayService.selectPayDayChart(mjonPayVO);
// Total
long amtCardSumTot = 0; //전체 신용카드 결제 금액
long amtSpaySumTot = 0; //전체 간편결제 결제 금액
long amtCellSumTot = 0; //전체 휴대폰 결제 금액
long amtBankSumTot = 0; //전체 즉시이체 결제 금액
long amtVbankSumTot = 0; //전체 전용계좌 결제 금액
@ -4716,7 +4717,8 @@ public class MjonPayController {
long amtTotSumTot = 0; //전체 결제 금액 총액
for(MjonPayVO item: resultList2) {
amtCardSumTot += Long.parseLong(item.getAmtCardSum());
amtCardSumTot += Long.parseLong(item.getAmtCardSum());
amtSpaySumTot += Long.parseLong(item.getAmtSpaySum());
amtCellSumTot += Long.parseLong(item.getAmtCellSum());
amtBankSumTot += Long.parseLong(item.getAmtBankSum());
amtVbankSumTot += Long.parseLong(item.getAmtVbankSum());
@ -4725,6 +4727,7 @@ public class MjonPayController {
}
mjonPayVO.setAmtCardSumTot(amtCardSumTot + "");
mjonPayVO.setAmtSpaySumTot(amtSpaySumTot + "");
mjonPayVO.setAmtCellSumTot(amtCellSumTot + "");
mjonPayVO.setAmtBankSumTot(amtBankSumTot + "");
mjonPayVO.setAmtVbankSumTot(amtVbankSumTot + "");
@ -4780,6 +4783,7 @@ public class MjonPayController {
// Total
long amtCardSumTot = 0; //전체 신용카드 결제 금액
long amtSpaySumTot = 0; //전체 간편결제 결제 금액
long amtCellSumTot = 0; //전체 휴대폰 결제 금액
long amtBankSumTot = 0; //전체 즉시이체 결제 금액
long amtVbankSumTot = 0; //전체 전용계좌 결제 금액
@ -4787,7 +4791,8 @@ public class MjonPayController {
long amtTotSumTot = 0; //전체 결제 금액 총액
for(MjonPayVO item: resultList) {
amtCardSumTot += Long.parseLong(item.getAmtCardSum());
amtCardSumTot += Long.parseLong(item.getAmtCardSum());
amtSpaySumTot += Long.parseLong(item.getAmtSpaySum());
amtCellSumTot += Long.parseLong(item.getAmtCellSum());
amtBankSumTot += Long.parseLong(item.getAmtBankSum());
amtVbankSumTot += Long.parseLong(item.getAmtVbankSum());
@ -4796,6 +4801,7 @@ public class MjonPayController {
}
mjonPayVO.setAmtCardSumTot(amtCardSumTot + "");
mjonPayVO.setAmtSpaySumTot(amtSpaySumTot + "");
mjonPayVO.setAmtCellSumTot(amtCellSumTot + "");
mjonPayVO.setAmtBankSumTot(amtBankSumTot + "");
mjonPayVO.setAmtVbankSumTot(amtVbankSumTot + "");

View File

@ -104,10 +104,10 @@ public class MjonPayV2Controller {
* 결제하기
* @param searchVO
* @param model
* @return "/web/pay/PayViewV2.do"
* @return "/web/pay/PayView.do"
* @throws Exception
*/
@RequestMapping(value= {"/web/member/pay/PayViewV2.do"})
@RequestMapping(value= {"/web/member/pay/PayView.do"})
public String PayViewV2(@ModelAttribute("mjonPayVO") MjonPayVO mjonPayVO,
HttpServletRequest request, RedirectAttributes redirectAttributes,
ModelMap model) throws Exception{
@ -189,7 +189,7 @@ public class MjonPayV2Controller {
List<MberGrdVO> mberGrdSettingList = mberGrdService.selectMberGrdSettingList(mberGrdVO);
model.addAttribute("mberGrdSettingList", mberGrdSettingList);
return "/web/pay/PayViewV2";
return "/web/pay/PayView";
}
/**

View File

@ -271,114 +271,91 @@ public class SchedulerUtil {
}
// AGENT별 SMS LMS MMS 발송건수 , 카카오 알림톡 발송건수 통계 스케쥴러
// @Scheduled(cron = "0 */10 * * * *") //10분마다 실행(TEST)
@Scheduled(cron = "0 10 1 * * *") // 매일 새벽1시 10분 실행
// @Scheduled(cron = "0 */30 * * * *") // 30분마다 실행
@SchedulerLock(name = "insertAgentSmsCountStat", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void agentSmsCountStatInsert() throws Exception {
// agent별 sms lms mms 발송건수 통계 데이터 upsert
//System.out.println("insertAgentSmsCountStat scheduler RUN (YESTERDAY)");
// int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
//int minusDate =EgovDateUtil.dayMinusToInt("yyyyMMdd", 1);
// 전일 문자발송 통계 insert
//MjonMsgStatVO mjonMsgStatVO = new MjonMsgStatVO();
//mjonMsgStatVO.setStatStartDate(minusDate);
//mjonMsgStatVO.setStatEndDate(minusDate);
//mjonMsgService.insertAgentSmsCountStat(mjonMsgStatVO);
try {
System.out.println("=============EgovSysLogScheduling=====insertAgentSmsCountStat scheduler RUN (YESTERDAY) =============>");
// int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
int minusDate =EgovDateUtil.dayMinusToInt("yyyyMMdd", 1);
int minusSevenDays =EgovDateUtil.dayMinusToInt("yyyyMMdd", 7);
// 전일 문자발송 통계 insert
MjonMsgStatVO mjonMsgStatVO = new MjonMsgStatVO();
mjonMsgStatVO.setStatStartDate(minusSevenDays);
mjonMsgStatVO.setStatEndDate(minusDate);
// 전일 문자발송 통계 insert
mjonMsgService.insertAgentSmsCountStat(mjonMsgStatVO);
//================================================================
//================================================================
// 전일 알림톡발송 통계 insert
MjonKakaoAtStatVO kakaoAtStatVO = new MjonKakaoAtStatVO();
kakaoAtStatVO.setStatStartDate(minusSevenDays);
kakaoAtStatVO.setStatEndDate(minusDate);
// 전일 알림톡발송 통계 insert
kakaoStatisticsService.insertKakaoAtCountStat(kakaoAtStatVO);
//================================================================
//================================================================
// 전일 알림톡발송 통계 insert
FaxStatVO faxStatVO = new FaxStatVO();
faxStatVO.setStatStartDate(minusSevenDays);
faxStatVO.setStatEndDate(minusDate);
// 전일 알림톡발송 통계 insert
faxAdmService.insertFaxCountStat(faxStatVO);
// do something...
}catch(Exception ex) {
ex.printStackTrace();
}
}
// AGENT별 SMS LMS MMS 발송건수 통계 스케쥴러
// @Scheduled(cron = "0 */10 * * * *") //10분마다 실행(TEST)
// @Scheduled(cron = "0 0 1 * * *") // 매일 새벽1시 실행
@Scheduled(cron = "0 */30 * * * *") // 30분마다 실행
@SchedulerLock(name = "insertAgentSmsCountStat", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void agentSmsCountStatInsert2() throws Exception {
// agent별 sms lms mms 발송건수 통계 데이터 upsert
//System.out.println("insertAgentSmsCountStat scheduler RUN (EVERY 30 MINUTES)");
//int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
// int minusDate =EgovDateUtil.dayMinusToInt("yyyyMMdd", 1);
// 당일 문자발송 통계 insert
//MjonMsgStatVO mjonMsgStatVO = new MjonMsgStatVO();
//mjonMsgStatVO.setStatStartDate(nowDate);
//mjonMsgStatVO.setStatEndDate(nowDate);
//mjonMsgService.insertAgentSmsCountStat(mjonMsgStatVO);
// AGENT별 SMS 발송건수 통계 스케쥴러
@Scheduled(cron = "0 5,35 * * * *") // 5,35분마다 실행
@SchedulerLock(name = "insertAgentSmsCountStatByMinute", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void agentSmsCountStatByMinuteInsert() throws Exception {
try {
System.out.println("=============EgovSysLogScheduling=====agentSmsCountStatInsert2 =============>");
System.out.println("=============EgovSysLogScheduling=====insertAgentSmsCountStatByMinute =============>");
int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
// int minusDate =EgovDateUtil.dayMinusToInt("yyyyMMdd", 1);
// 당일 문자발송 통계 insert
MjonMsgStatVO mjonMsgStatVO = new MjonMsgStatVO();
mjonMsgStatVO.setStatStartDate(nowDate);
mjonMsgStatVO.setStatEndDate(nowDate);
mjonMsgService.insertAgentSmsCountStat(mjonMsgStatVO);
//================================================================
//================================================================
}catch(Exception ex) {
ex.printStackTrace();
}
}
// AGENT별 Kakao 발송건수 통계 스케쥴러
@Scheduled(cron = "0 10,40 * * * *") // 10,40분마다 실행
@SchedulerLock(name = "insertAgentKakaoCountStatByMinute", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void agentKakaoCountStatByMinuteInsert() throws Exception {
try {
System.out.println("=============EgovSysLogScheduling=====insertAgentKakaoCountStatByMinute =============>");
int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
// 당일 알림톡발송 통계 insert
MjonKakaoAtStatVO kakaoAtStatVO = new MjonKakaoAtStatVO();
kakaoAtStatVO.setStatStartDate(nowDate);
kakaoAtStatVO.setStatEndDate(nowDate);
// 당일 알림톡발송 통계 insert
kakaoStatisticsService.insertKakaoAtCountStat(kakaoAtStatVO);
//================================================================
}catch(Exception ex) {
ex.printStackTrace();
}
}
// AGENT별 Fax 발송건수 통계 스케쥴러
@Scheduled(cron = "0 15,45 * * * *") // 15,45분마다 실행
@SchedulerLock(name = "insertAgentFaxCountStatByMinute", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void agentFaxCountStatByMinuteInsert() throws Exception {
try {
System.out.println("=============EgovSysLogScheduling=====insertAgentFaxCountStatByMinute =============>");
int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd");
// 전일 알림톡발송 통계 insert
FaxStatVO faxStatVO = new FaxStatVO();
faxStatVO.setStatStartDate(nowDate);
faxStatVO.setStatEndDate(nowDate);
// 전일 알림톡발송 통계 insert
faxAdmService.insertFaxCountStat(faxStatVO);
// do something...
}catch(Exception ex) {
ex.printStackTrace();
}
@ -428,9 +405,9 @@ public class SchedulerUtil {
}
// 대시보드 어제/오늘 접속현황 & 접속통계
@Scheduled(cron = "0 */30 * * * *") // 30분마다 실행
@Scheduled(cron = "0 20,50 * * * *") // 20,50분마다 실행
@SchedulerLock(name = "updateDashBoardStat", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void DashBoardStatUpdate() throws Exception {
public void dashBoardStatUpdate() throws Exception {
try {
System.out.println("=============EgovSysLogScheduling=====DashBoardStatUpdate =============>");
@ -455,7 +432,7 @@ public class SchedulerUtil {
}
// 이용약관 메일발송
@Scheduled(cron = "0 */10 * * * *") // 10분마다 실행
@Scheduled(cron = "0 */15 * * * *") // 15분마다 실행
@SchedulerLock(name = "sendTermsEmail", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void TermsEmailSend() throws Exception {
@ -474,7 +451,7 @@ public class SchedulerUtil {
return new JdbcTemplateLockProvider(dataSource);
}
@Scheduled(cron = "20 * * * * ?")
@Scheduled(cron = "0 0/3 * * * ?") // 3분마다 실행
@SchedulerLock(name = "runKakaoOneTime", lockAtMostForString = ONE_MIN, lockAtLeastForString = ONE_MIN)
public void runKakaoOneTime() throws Exception {

View File

@ -37,7 +37,6 @@ import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import itn.com.cmm.EgovMessageSource;
import itn.com.cmm.LoginVO;
import itn.com.cmm.util.RedirectUrlMaker;
import itn.let.mjo.msg.service.MjonMsgVO;
import itn.let.sym.log.clg.service.EgovLoginLogService;
import itn.let.sym.log.clg.service.LoginLog;
import itn.let.sym.log.clg.service.MsgLog;
@ -511,7 +510,7 @@ public class EgovLoginLogController {
SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd", Locale.KOREA);
loginLog.setSearchEndDe(date.format(cal.getTime())); //오늘
Calendar mon = Calendar.getInstance(); //한달
mon.add(Calendar.MONTH , -1);
mon.add(Calendar.DATE , -7);
String beforeMonth = new java.text.SimpleDateFormat("yyyy-MM-dd").format(mon.getTime());
loginLog.setSearchBgnDe(beforeMonth);
}

View File

@ -5033,6 +5033,33 @@ public class EgovLoginController {
try {
mberManageVO.setSendSttus("N"); //주소록 전송 상태 'N'
mberManageService.updateReqeustAddr(mberManageVO);
// 법인폰 알람여부 체크
JoinSettingVO joinSettingVO = new JoinSettingVO();
joinSettingVO = egovSiteManagerService.selectAdminNotiDetail();
// 이메일 체크
if (joinSettingVO != null && joinSettingVO.getEmailNoti().equals("Y")) {
String emailTitle = "회원관리 > 이용정지회원 주소록 요청";
// CS관리자 이메일 알림전송
mjonNoticeSendUtil.csAdminEmailNoticeSend("", mberManageVO.getMberId(), emailTitle);
}
// SMS 체크
if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
String smsTitle = "이용정지회원 주소록 요청";
// CS관리자 SMS 알림전송
mjonNoticeSendUtil.csAdminSmsNoticeSend(mberManageVO.getMberId(), smsTitle);
}
// SLACK 체크
if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
// Slack 메시지 발송(단순본문)
String msg = "[문자온] 이용정지회원 주소록 요청 - " + mberManageVO.getMberId();
mjonCommon.sendSimpleSlackMsg(msg);
}
}catch(Exception e) {
modelAndView.addObject("message", "주소록 요청에 실패했습니다.");
modelAndView.addObject("result", "fail");

View File

@ -3382,6 +3382,37 @@ public class EgovUserManageController {
return redirectUrlMaker.getRedirectUrl();
}
// 법인폰알림 업데이트
@RequestMapping(value = "/uss/umt/user/smsNoticeUpdateAjax.do")
public ModelAndView smsNoticeUpdateAjax(
@ModelAttribute("userManageVO") UserManageVO userManageVO) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
boolean isSuccess = true;
String msg = "";
// 로그인VO에서 사용자 정보 가져오기
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
String frstRegisterId = loginVO == null ? "" : loginVO.getId();
try{
// 법인폰알림 업데이트
userManageService.updateUserAdminSmsNoticeYn(userManageVO, "");
}
catch(Exception e) {
isSuccess = false;
msg = e.getMessage();
}
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
/**
* 사용자의 스미싱의심 여부를 수정한 목록조회 화면으로 이동한다.
* @param checkedIdForDel update 아이디 정보

View File

@ -712,6 +712,7 @@
, UPDATEDATE = NOW()
WHERE 1=1
AND USE_YN = 'Y'
AND BEST_CATEGORY IS NULL
AND LETTER_TYPE IN ('S', 'L', 'P')
AND priority >= 11
]]>

View File

@ -1442,7 +1442,9 @@
ROUND(IFNULL(S5.AMT, 0)) AS amtVbankSum,
IFNULL(S5.CNT, 0) AS amtVbankCnt,
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum,
IFNULL(S6.CNT, 0) AS amtRefundCnt
IFNULL(S6.CNT, 0) AS amtRefundCnt,
ROUND(IFNULL(S7.AMT, 0)) AS amtSpaySum,
IFNULL(S7.CNT, 0) AS amtSpayCnt
FROM (SELECT DATE_FORMAT(t1.REG_DATE, '%Y-%m-%d') AS REG_DATE ,
SUM(t1.AMT) AS AMT,
COUNT(0) AS CNT,
@ -1459,7 +1461,7 @@
COUNT(0) AS CNT
FROM MJ_PG t2
WHERE t2.PG_STATUS = 1
AND t2.pay_method ='card'
AND t2.pay_method ='CARD'
AND t2.REG_DATE >= DATE_FORMAT(CURDATE() - INTERVAL 8 DAY, '%Y-%m-%d')
GROUP BY DATE_FORMAT(t2.REG_DATE, '%Y-%m-%d')
)
@ -1511,7 +1513,19 @@
GROUP BY DATE_FORMAT(t6.LAST_UPDT_PNTTM, '%Y-%m-%d')
)
S6
ON S6.REG_DATE = S1.REG_DATE
ON S6.REG_DATE = S1.REG_DATE
LEFT JOIN
( SELECT DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d') AS REG_DATE ,
SUM(t7.AMT) AS AMT,
COUNT(0) AS CNT
FROM MJ_PG t7
WHERE t7.PG_STATUS = 1
AND t7.pay_method ='SPAY'
AND t7.REG_DATE >= DATE_FORMAT(CURDATE() - INTERVAL 8 DAY, '%Y-%m-%d')
GROUP BY DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d')
)
S7
ON S7.REG_DATE = S1.REG_DATE
ORDER BY 1=1 ,regDate desc
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
@ -1527,7 +1541,8 @@
ROUND(IFNULL(S3.AMT, 0)) AS amtCellSum,
ROUND(IFNULL(S4.AMT, 0)) AS amtBankSum,
ROUND(IFNULL(S5.AMT, 0)) AS amtVbankSum,
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum,
ROUND(IFNULL(S7.AMT, 0)) AS amtSpaySum
FROM (SELECT DATE_FORMAT(t1.REG_DATE, '%Y-%m') AS REG_DATE ,
SUM(t1.AMT) AS AMT,
t1.moid AS MOID
@ -1542,7 +1557,7 @@
SUM(t2.AMT) AS AMT
FROM MJ_PG t2
WHERE t2.PG_STATUS = 1
AND t2.pay_method ='card'
AND t2.pay_method ='CARD'
AND t2.REG_DATE >= DATE_FORMAT(CURDATE() - INTERVAL 5 MONTH, '%Y-%m-%d')
GROUP BY DATE_FORMAT(t2.REG_DATE, '%Y-%m')
)
@ -1590,7 +1605,18 @@
GROUP BY DATE_FORMAT(t6.LAST_UPDT_PNTTM, '%Y-%m')
)
S6
ON S6.REG_DATE = S1.REG_DATE
ON S6.REG_DATE = S1.REG_DATE
LEFT JOIN
( SELECT DATE_FORMAT(t7.REG_DATE, '%Y-%m') AS REG_DATE ,
SUM(t7.AMT) AS AMT
FROM MJ_PG t7
WHERE t7.PG_STATUS = 1
AND t7.pay_method ='SPAY'
AND t7.REG_DATE >= DATE_FORMAT(CURDATE() - INTERVAL 5 MONTH, '%Y-%m-%d')
GROUP BY DATE_FORMAT(t7.REG_DATE, '%Y-%m')
)
S7
ON S7.REG_DATE = S1.REG_DATE
ORDER BY 1=1 ,regDate desc
LIMIT #recordCountPerPage# OFFSET #firstIndex#
</select>
@ -1612,7 +1638,9 @@
ROUND(IFNULL(S5.AMT, 0)) AS amtVbankSum,
IFNULL(S5.CNT, 0) AS amtVbankCnt,
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum,
IFNULL(S6.CNT, 0) AS amtRefundCnt
IFNULL(S6.CNT, 0) AS amtRefundCnt,
ROUND(IFNULL(S7.AMT, 0)) AS amtSpaySum,
IFNULL(S7.CNT, 0) AS amtSpayCnt
FROM (SELECT DATE_FORMAT(t1.REG_DATE, '%Y-%m-%d') AS REG_DATE ,
SUM(t1.AMT) AS AMT,
COUNT(0) AS CNT,
@ -1634,7 +1662,7 @@
COUNT(0) AS CNT
FROM MJ_PG t2
WHERE t2.PG_STATUS = 1
AND t2.pay_method ='card'
AND t2.pay_method ='CARD'
<isNotEmpty property="ntceBgnde">
AND <![CDATA[ DATE_FORMAT(t2.REG_DATE, '%Y-%m-%d') >= #ntceBgnde# ]]>
</isNotEmpty>
@ -1711,7 +1739,24 @@
GROUP BY DATE_FORMAT(t6.LAST_UPDT_PNTTM, '%Y-%m-%d')
)
S6
ON S6.REG_DATE = S1.REG_DATE
ON S6.REG_DATE = S1.REG_DATE
LEFT JOIN
( SELECT DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d') AS REG_DATE ,
SUM(t7.AMT) AS AMT,
COUNT(0) AS CNT
FROM MJ_PG t7
WHERE t7.PG_STATUS = 1
AND t7.pay_method ='SPAY'
<isNotEmpty property="ntceBgnde">
AND <![CDATA[ DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d') >= #ntceBgnde# ]]>
</isNotEmpty>
<isNotEmpty property="ntceEndde">
AND <![CDATA[ DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d') <= #ntceEndde# ]]>
</isNotEmpty>
GROUP BY DATE_FORMAT(t7.REG_DATE, '%Y-%m-%d')
)
S7
ON S7.REG_DATE = S1.REG_DATE
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$
@ -1733,7 +1778,8 @@
ROUND(IFNULL(S3.AMT, 0)) AS amtCellSum,
ROUND(IFNULL(S4.AMT, 0)) AS amtBankSum,
ROUND(IFNULL(S5.AMT, 0)) AS amtVbankSum,
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum
ROUND(IFNULL(S6.AMT, 0)) AS amtRefundSum,
ROUND(IFNULL(S7.AMT, 0)) AS amtSpaySum
FROM (SELECT DATE_FORMAT(t1.REG_DATE, '%Y-%m') AS REG_DATE ,
SUM(t1.AMT) AS AMT,
t1.moid AS MOID
@ -1750,7 +1796,7 @@
SUM(t2.AMT) AS AMT
FROM MJ_PG t2
WHERE t2.PG_STATUS = 1
AND t2.pay_method ='card'
AND t2.pay_method ='CARD'
<isNotEmpty property="ntceBgnde">
AND <![CDATA[ DATE_FORMAT(t2.REG_DATE, '%Y') = #ntceBgnde# ]]>
</isNotEmpty>
@ -1808,7 +1854,20 @@
GROUP BY DATE_FORMAT(t6.LAST_UPDT_PNTTM, '%Y-%m')
)
S6
ON S6.REG_DATE = S1.REG_DATE
ON S6.REG_DATE = S1.REG_DATE
LEFT JOIN
( SELECT DATE_FORMAT(t7.REG_DATE, '%Y-%m') AS REG_DATE ,
SUM(t7.AMT) AS AMT
FROM MJ_PG t7
WHERE t7.PG_STATUS = 1
AND t7.pay_method ='SPAY'
<isNotEmpty property="ntceBgnde">
AND <![CDATA[ DATE_FORMAT(t7.REG_DATE, '%Y') = #ntceBgnde# ]]>
</isNotEmpty>
GROUP BY DATE_FORMAT(t7.REG_DATE, '%Y-%m')
)
S7
ON S7.REG_DATE = S1.REG_DATE
ORDER BY 1=1
<isNotEmpty property="searchSortCnd">
,$searchSortCnd$

View File

@ -647,7 +647,7 @@
SELECT COUNT(B.CREAT_DT) menuCnt, A.MENU_NM AS menuNm, DATE_FORMAT(B.CREAT_DT , "%Y-%m-%d") AS creatDt, A.PROGRM_FILE_NM as progrmFileNm, A.MENU_NO as logId /** 임시정렬번호 */ FROM ( SELECT A.MENU_NM , A.PROGRM_FILE_NM , A.MENU_NO FROM LETTNMENUINFO A INNER JOIN LETTNPROGRMLIST B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM INNER JOIN LETTNMENUCREATDTLS C ON C.MENU_NO = A.MENU_NO
WHERE B.URL IS NOT NULL
AND C.AUTHOR_CODE = 'ROLE_ANONYMOUS'
AND B.URL != '' ) A INNER JOIN LETTNLOGINLOG B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM
AND B.URL != '' ) A INNER JOIN LETTNLOGINLOG B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM
WHERE 1=1
GROUP BY menuNm , creatDt
) D ON C.creatDt = D.creatDt
@ -701,7 +701,7 @@
SELECT COUNT(B.CREAT_DT) menuCnt, A.MENU_NM AS menuNm, DATE_FORMAT(B.CREAT_DT , "%Y-%m") AS creatDt, A.PROGRM_FILE_NM as progrmFileNm, A.MENU_NO as logId /** 임시정렬번호 */ FROM ( SELECT A.MENU_NM , A.PROGRM_FILE_NM , A.MENU_NO FROM LETTNMENUINFO A INNER JOIN LETTNPROGRMLIST B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM INNER JOIN LETTNMENUCREATDTLS C ON C.MENU_NO = A.MENU_NO
WHERE B.URL IS NOT NULL
AND C.AUTHOR_CODE = 'ROLE_ANONYMOUS'
AND B.URL != '' ) A INNER JOIN LETTNLOGINLOG B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM
AND B.URL != '' ) A INNER JOIN LETTNLOGINLOG B ON A.PROGRM_FILE_NM = B.PROGRM_FILE_NM AND B.CREAT_DT BETWEEN #searchBgnDe# AND #searchEndDe#
WHERE 1=1
GROUP BY menuNm , creatDt
) D ON C.creatDt = D.creatDt
@ -926,54 +926,14 @@
<!-- 사용자 디바이스별 접속 로그 리스트 -->
<select id="LoginLogDAO.selectDeviceLogList" parameterClass="loginLog" resultClass="loginLog">
SELECT
A.days,
IFNULL(B.cnt, 0 ) pcnt,
IFNULL(C.cnt, 0 ) mcnt
FROM (
WITH recursive AA AS
( SELECT DATE_FORMAT(last_day('$searchCondition$-01' - interval 1 MONTH), '%Y-%m-%d') + interval 1 DAY AS days
UNION ALL
SELECT days + interval 1 DAY
FROM AA
<isEmpty property="searchEndDate">
<![CDATA[
WHERE days < DATE_FORMAT(last_day('$searchCondition$-01'), '%Y-%m-%d'))
]]>
</isEmpty>
<isNotEmpty property="searchEndDate">
<![CDATA[
WHERE days < DATE_FORMAT(#searchEndDate#, '%Y-%m-%d'))
]]>
</isNotEmpty>
SELECT * FROM AA ) A
LEFT JOIN
( SELECT
COUNT(DISTINCT CONECT_IP) cnt ,
DATE_FORMAT(CREAT_DT,'%Y-%m-%d') pday
FROM LETTNLOGINLOG
WHERE 1 = 1
AND USER_AT = 'U'
AND DATE_FORMAT(CREAT_DT, '%Y-%m') = #searchCondition#
AND DEVICE_TYPE = 'P'
GROUP BY pday
) B
ON A.days = B.pday
LEFT JOIN
( SELECT
COUNT(DISTINCT CONECT_IP) cnt ,
DATE_FORMAT(CREAT_DT,'%Y-%m-%d') mday
FROM LETTNLOGINLOG
WHERE 1 =1
AND USER_AT = 'U'
AND DATE_FORMAT(CREAT_DT, '%Y-%m') = #searchCondition#
AND DEVICE_TYPE = 'M'
GROUP BY mday
) C
ON A.days = C.mday
ORDER BY days DESC
SELECT
D.STAT_DATE AS days,
IFNULL(D.CLICK_P_CNT, 0 ) pcnt,
IFNULL(D.CLICK_M_CNT, 0 ) mcnt
FROM
MJ_DASH_STAT D
WHERE DATE_FORMAT(D.STAT_DATE, '%Y-%m') = #searchCondition#
ORDER BY D.STAT_DATE DESC
</select>
<select id="LoginLogDAO.SelectDauLoginLogList" parameterClass="loginLog" resultClass="loginLog">

View File

@ -210,17 +210,17 @@ function sendMsgExcelDownload(){
<div class="tableWrap">
<table class="tbType1">
<colgroup>
<col style="width: 5%">
<col style="width: 8%">
<col style="width: 8%">
<col style="width: 4%">
<col style="width: 7%">
<col style="width: 7%">
<col style="width: 5%">
<col style="width: 9%">
<col style="width: 5%">
<col style="width: 9%">
<col style="width: *%">
<col style="width: 9%">
<col style="width: 6%">
<col style="width: 6%">
<col style="width: 13%">
<col style="width: 11%">
</colgroup>
<thead>
<tr>
@ -269,7 +269,34 @@ function sendMsgExcelDownload(){
</c:if>
</td>
<td>
<c:out value="${result.payMethodTxt}"/>
<c:choose>
<c:when test="${result.payMethodTxt eq '신용카드'}">
<c:choose>
<c:when test="${not empty result.cardName}">
카드(<c:out value="${result.cardName}"/>)
</c:when>
<c:when test="${result.resultCode == '9991' || result.resultCode == '9993' || result.resultCode == 'I002'}">
카드(결제취소)
</c:when>
<c:otherwise>
카드
</c:otherwise>
</c:choose>
</c:when>
<c:when test="${result.payMethodTxt eq '간편결제'}">
<c:choose>
<c:when test="${not empty result.cardName}">
간편(<c:out value="${result.cardName}"/>)
</c:when>
<c:otherwise>
간편
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:out value="${result.payMethodTxt}"/>
</c:otherwise>
</c:choose>
</td>
<td>
<c:out value="${result.tid}"/>
@ -298,7 +325,8 @@ function sendMsgExcelDownload(){
</c:if>
</td>
<td>
<c:out value="${result.regDate}"/>
<fmt:parseDate value="${result.regDate}" var="regDateValue" pattern="yyyy-MM-dd HH:mm"/>
<fmt:formatDate value="${regDateValue}" pattern="yyyy-MM-dd HH:mm"/>
</td>
</tr>
</c:forEach>

View File

@ -163,7 +163,11 @@ function fnSetCalMonth(val) {
var month = ("0"+(today.getMonth()+1)).slice(-2);
var date = ("0"+today.getDate()).slice(-2);
var sDate = new Date(today.setMonth(today.getMonth() - val));
if(val == 'w'){
var sDate = new Date(today.setDate(today.getDate() - 7));
}else{
var sDate = new Date(today.setMonth(today.getMonth() - val));
}
var sYear = sDate.getFullYear();
var sMonth = ("0"+(sDate.getMonth()+1)).slice(-2);
@ -217,7 +221,8 @@ function fnSetCalMonth(val) {
<select name="setCalMonth" onchange="fnSetCalMonth(this.value)">
<option value="0">전체</option>
<option value="1" selected="selected">1개월</option>
<option value="w" selected="selected">일주일</option>
<option value="1">1개월</option>
<option value="3">3개월</option>
<option value="6">6개월</option>
</select>

View File

@ -190,6 +190,30 @@ function fnSmsNotiUpdate(flag) {
}
}
// 법인폰알림 업데이트
function setSmsNoticeUpdate(mberId, adminSmsNoticeYn) {
if(confirm("법인폰 알림을 Off 하시겠습니까?")) {
$.ajax({
type: "POST",
url: "/uss/umt/user/smsNoticeUpdateAjax.do",
data: {"mberId" : mberId, "adminSmsNoticeYn" : adminSmsNoticeYn},
dataType:'json',
async: false,
success: function (data) {
if (data.isSuccess) {
linkPage(document.listForm.pageIndex.value);
}
else {
alert("Msg : " + data.msg);
}
},
error: function (e) {
alert("ERROR : " + JSON.stringify(e));
}
});
}
}
// 안내 문자 발송
function fn_sendMsgData(msgGroupId, callTo, userId) {
$('#callTo').val(callTo);
@ -510,11 +534,13 @@ function fnSmishingUpdate(flag) {
</a>
</div>
</td>
<%--
<td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if><c:if test="${result.smishingYn eq 'N'}"></c:if>>
--%>
<td onclick="fn_detail_list('${result.msgGroupId}'); return false;" <c:if test="${result.smishingYn eq 'Y'}">class="smishing" style="cursor:pointer;"</c:if><c:if test="${result.smishingYn eq 'N'}">style="cursor:pointer;"</c:if>>
<c:choose>
<c:when test="${result.adminSmsNoticeYn eq 'Y'}">
<%--<button class="btnType btnType20" onclick="setSmsNoticeUpdate('<c:out value="${result.userId}"/>', 'N'); return false;">온</button>--%>
</c:when>
<c:when test="${result.adminSmsNoticeYn eq 'N'}">
오프

View File

@ -171,31 +171,32 @@ function fnSetCalMonth(val) {
<p class="tType5">총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건</p>
<div style="float: right;">
카드 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCardSumTot}" pattern="#,###" /></span>원,
&nbsp; 휴대폰 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCellSumTot}" pattern="#,###" /></span>원,
&nbsp; 이체 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtBankSumTot}" pattern="#,###" /></span>원,
&nbsp; 전용 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtVbankSumTot}" pattern="#,###" /></span>원,
&nbsp; 환불 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtRefundSumTot}" pattern="#,###" /></span>원,
&nbsp; 합계 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtTotSumTot}" pattern="#,###" /></span>원
휴대폰 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCellSumTot}" pattern="#,###" /></span>원,
이체 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtBankSumTot}" pattern="#,###" /></span>원,
전용 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtVbankSumTot}" pattern="#,###" /></span>원,
간편 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtSpaySumTot}" pattern="#,###" /></span>원,
환불 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtRefundSumTot}" pattern="#,###" /></span>원,
합계 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtTotSumTot}" pattern="#,###" /></span>원
<%--
&nbsp;
<!-- <input type="button" class="printBtn"> -->
<select name="pageUnit" id="pageUnit" class="select" title="검색조건선택" onchange="linkPage(1);" style="height: 30px !important; min-width: 40px !important;">
<option value='10' <c:if test="${searchVO.pageUnit == '10' or searchVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${searchVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${searchVO.pageUnit == '30'}">selected</c:if>>30줄</option>
</select>
--%>
</div>
</div>
<div class="tableWrap">
<table class="tbType1">
<colgroup>
<col style="width: auto;">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 13%">
</colgroup>
<thead>
@ -205,6 +206,7 @@ function fnSetCalMonth(val) {
<th>휴대폰<input type="button" class="sort sortBtn" id="sort_amtCellSum"></th>
<th>즉시이체<input type="button" class="sort sortBtn" id="sort_amtBankSum"></th>
<th>전용계좌<input type="button" class="sort sortBtn" id="sort_amtVbankSum"></th>
<th>간편결제<input type="button" class="sort sortBtn" id="sort_amtSpaySum"></th>
<th>환불<input type="button" class="sort sortBtn" id="sort_amtRefundSum"></th>
<th>합계(VAT 포함)<input type="button" class="sort sortBtn" id="sort_amtTotSum"></th>
</tr>
@ -245,6 +247,14 @@ function fnSetCalMonth(val) {
</c:when>
</c:choose>
</td>
<td>
<fmt:formatNumber value="${result.amtSpaySum}" pattern="#,###" />
<c:choose>
<c:when test="${result.amtSpayCnt > 0}">
(<fmt:formatNumber value="${result.amtSpayCnt}" pattern="#,###" />)
</c:when>
</c:choose>
</td>
<td>
<fmt:formatNumber value="${result.amtRefundSum}" pattern="#,###" />
<c:choose>
@ -264,7 +274,7 @@ function fnSetCalMonth(val) {
</tr>
</c:forEach>
<c:if test="${empty resultList}">
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
<tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>

View File

@ -416,37 +416,29 @@ function fnSmishingUpdate(flag, id) {
</td>
<%-- <td><fmt:formatNumber value="${result.cancelAmt}" type="number" /><c:if test="${'8' eq result.pgStatus}"><font color="red">(오류)</font></c:if></td> --%>
<td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if>>
<!-- 카드결제 오류로 인한 카드 결제사 이름이 없는 경우 표시 문구 추가 2023.01.02 우영두 -->
<c:choose>
<c:when test="${result.payMethodTxt eq '신용카드'}">
카드
<c:choose>
<c:when test="${not empty result.cardName}">
(<c:out value="${result.cardName}"/>)
</c:when>
<c:when test="${result.resultCode == '9991' || result.resultCode == '9993' || result.resultCode == 'I002'}">
<%-- 9991, 9993, I002 결과코드는 사용자가 결제 중간에 취소하여 오류가 발생한 케이스임. --%>
(결제취소)
</c:when>
<c:otherwise>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${not empty result.cardName}">
카드(<c:out value="${result.cardName}"/>)
</c:when>
<c:when test="${result.resultCode == '9991' || result.resultCode == '9993' || result.resultCode == 'I002'}">
카드(결제취소)
</c:when>
<c:otherwise>
카드
</c:otherwise>
</c:choose>
</c:when>
<c:when test="${result.payMethodTxt eq '간편결제'}">
간편
<c:choose>
<c:when test="${not empty result.cardName}">
(<c:out value="${result.cardName}"/>)
</c:when>
<c:when test="${result.resultCode == '9991' || result.resultCode == '9993' || result.resultCode == 'I002'}">
<%-- 9991, 9993, I002 결과코드는 사용자가 결제 중간에 취소하여 오류가 발생한 케이스임. --%>
(결제취소)
</c:when>
<c:otherwise>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${not empty result.cardName}">
간편(<c:out value="${result.cardName}"/>)
</c:when>
<c:otherwise>
간편
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:out value="${result.payMethodTxt}"/>
@ -472,12 +464,19 @@ function fnSmishingUpdate(flag, id) {
<td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if> title="<c:out value="${result.resultMsg}"/>"><c:out value="${result.resultMsg}"/></td>
<td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if> title="<c:out value="${result.rcptTypeTxt}"/>">
<c:if test="${result.rcptType ne ''}">
<c:out value="${result.rcptTypeTxt}"/>
</c:if>
<c:if test="${(result.payMethod ne 'CARD' && result.payMethod ne 'CELLPHONE') && (result.rcptType eq '' || result.rcptType eq null)}">
<input type="button" class="btnType1" onclick="insertRcpt('5','${result.moid}','${result.userId}')" value="현금영수증" style="color:#fff !important;">
</c:if>
<c:choose>
<c:when test="${result.payMethod == 'SPAY'}">
발급불가
</c:when>
<c:otherwise>
<c:if test="${result.rcptType ne ''}">
<c:out value="${result.rcptTypeTxt}"/>
</c:if>
<c:if test="${(result.payMethod ne 'CARD' && result.payMethod ne 'CELLPHONE') && (result.rcptType eq '' || result.rcptType eq null)}">
<input type="button" class="btnType1" onclick="insertRcpt('5','${result.moid}','${result.userId}')" value="현금영수증" style="color:#fff !important;">
</c:if>
</c:otherwise>
</c:choose>
</td>
<td>
<c:if test="${result.smishingYn eq 'Y'}">

View File

@ -211,7 +211,34 @@ function goList(no){
<tr class="no_modi">
<th><span class="reqArea">결제수단</span></th>
<td colspan="3">
<input type="text" name="payMethodTxt" value="${mjonPayVO.payMethodTxt}" title="결제수단" maxlength="20" />
<c:choose>
<c:when test="${mjonPayVO.payMethodTxt eq '신용카드'}">
<c:choose>
<c:when test="${not empty mjonPayVO.cardName}">
카드(<c:out value="${mjonPayVO.cardName}"/>)
</c:when>
<c:when test="${mjonPayVO.resultCode == '9991' || mjonPayVO.resultCode == '9993' || mjonPayVO.resultCode == 'I002'}">
카드(결제취소)
</c:when>
<c:otherwise>
카드
</c:otherwise>
</c:choose>
</c:when>
<c:when test="${mjonPayVO.payMethodTxt eq '간편결제'}">
<c:choose>
<c:when test="${not empty mjonPayVO.cardName}">
간편(<c:out value="${mjonPayVO.cardName}"/>)
</c:when>
<c:otherwise>
간편
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:out value="${mjonPayVO.payMethodTxt}"/>
</c:otherwise>
</c:choose>
</td>
</tr>

View File

@ -119,11 +119,12 @@ $(document).ready(function(){
<div style="float: right;">
카드 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCardSumTot}" pattern="#,###" /></span>원,
&nbsp; 휴대폰 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCellSumTot}" pattern="#,###" /></span>원,
&nbsp; 이체 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtBankSumTot}" pattern="#,###" /></span>원,
&nbsp; 전용 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtVbankSumTot}" pattern="#,###" /></span>원,
&nbsp; 환불 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtRefundSumTot}" pattern="#,###" /></span>원,
&nbsp; 합계 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtTotSumTot}" pattern="#,###" /></span>원
휴대폰 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtCellSumTot}" pattern="#,###" /></span>원,
이체 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtBankSumTot}" pattern="#,###" /></span>원,
전용 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtVbankSumTot}" pattern="#,###" /></span>원,
간편 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtSpaySumTot}" pattern="#,###" /></span>원,
환불 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtRefundSumTot}" pattern="#,###" /></span>원,
합계 : <span class="tType5 c_456ded"><fmt:formatNumber value="${mjonPayVO.amtTotSumTot}" pattern="#,###" /></span>원
</div>
</div>
@ -132,11 +133,12 @@ $(document).ready(function(){
<table class="tbType1">
<colgroup>
<col style="width: auto;">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 13%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 12.5%">
<col style="width: 13%">
</colgroup>
<thead>
@ -146,6 +148,7 @@ $(document).ready(function(){
<th>휴대폰<input type="button" class="sort sortBtn" id="sort_amtCellSum"></th>
<th>즉시이체<input type="button" class="sort sortBtn" id="sort_amtBankSum"></th>
<th>전용계좌<input type="button" class="sort sortBtn" id="sort_amtVbankSum"></th>
<th>간편결제<input type="button" class="sort sortBtn" id="sort_amtSpaySum"></th>
<th>환불<input type="button" class="sort sortBtn" id="sort_amtRefundSum"></th>
<th>합계(VAT 포함)<input type="button" class="sort sortBtn" id="sort_amtTotSum"></th>
</tr>
@ -158,6 +161,7 @@ $(document).ready(function(){
<td><fmt:formatNumber value="${result.amtCellSum}" pattern="#,###" /></td>
<td><fmt:formatNumber value="${result.amtBankSum}" pattern="#,###" /></td>
<td><fmt:formatNumber value="${result.amtVbankSum}" pattern="#,###" /></td>
<td><fmt:formatNumber value="${result.amtSpaySum}" pattern="#,###" /></td>
<td><fmt:formatNumber value="${result.amtRefundSum}" pattern="#,###" /></td>
<td>
<c:choose>
@ -172,7 +176,7 @@ $(document).ready(function(){
</tr>
</c:forEach>
<c:if test="${empty resultList}">
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
<tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>

View File

@ -25,9 +25,23 @@
<head>
<title>환불 및 결제 취소 목록</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style>
</style>
<script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>"></script>
<script type="text/javaScript" language="javascript">
$(function(){
$('.pageCont .tbType1 tbody tr').mouseover(function(){
$(this).mousemove(function(e){
var x=e.pageX+15;
var y=e.pageY+15;
$(this).closest('tr').next('.biz_hover_wrap').find('.biz_hover_content').css({'top':y,'left':x});
});
});
});
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo;
@ -257,14 +271,7 @@ function fnSelectMber(mberId) {
<c:out value="${result.mberNm}"/>
</a>
</td>
<c:choose>
<c:when test="${result.refundReason eq '999'}">
<td title="${result.refundReasonEtc}">
</c:when>
<c:otherwise>
<td title="<ec:code code="${result.refundReason}" codeId="ITN050"/>">
</c:otherwise>
</c:choose>
<td>
<c:choose>
<c:when test="${result.refundReason eq '999'}">
${result.refundReasonEtc}
@ -272,7 +279,7 @@ function fnSelectMber(mberId) {
<c:otherwise>
<ec:code code="${result.refundReason}" codeId="ITN050"/>
</c:otherwise>
</c:choose>
</c:choose>
</td>
<td>
<c:choose>
@ -304,19 +311,37 @@ function fnSelectMber(mberId) {
</td>
<td title="<c:out value="${result.frstRegisterPnttm}"/>">
<td>
<fmt:parseDate value="${result.frstRegisterPnttm}" var="frstRegisterDateValue" pattern="yyyy-MM-dd HH:mm"/>
<fmt:formatDate value="${frstRegisterDateValue}" pattern="MM-dd HH:mm"/>
</td>
<td title="<c:out value="${result.lastUpdtPnttm}"/>">
<td>
<fmt:parseDate value="${result.lastUpdtPnttm}" var="lastUpdtDateValue" pattern="yyyy-MM-dd HH:mm"/>
<fmt:formatDate value="${lastUpdtDateValue}" pattern="MM-dd HH:mm"/>
</td>
</tr>
<tr class="biz_hover_wrap">
<td colspan="10">
<div class="biz_hover_content">
<dl>
<dt>환불사유</dt>
<dd>
<c:choose>
<c:when test="${result.refundReason eq '999'}">
${result.refundReasonEtc}
</c:when>
<c:otherwise>
<ec:code code="${result.refundReason}" codeId="ITN050"/>
</c:otherwise>
</c:choose>
</dd>
</dl>
</div>
</td>
</tr>
</c:forEach>
<c:if test="${empty refundList}">
<tr><td colspan="13"><spring:message code="common.nodata.msg" /></td></tr>
<tr><td colspan="10"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>

View File

@ -10,15 +10,7 @@
<head>
<title>기업회원 신청 정보</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="/pb/css/reset.css">
<link rel="stylesheet" href="/pb/css/common.css">
<link rel="stylesheet" href="/pb/css/content.css">
<link rel="stylesheet" href="/pb/css/popup.css">
<script type="text/javascript" src="/pb/js/jquery-3.5.0.js"></script>
<script type="text/javascript" src="/pb/js/common.js"></script>
<script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>"></script>
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js'/>"></script>
<script type="text/javascript" src="<c:url value='/js/ncms_common.js' />"></script>
<script type="text/javascript" src="<c:url value='/js/EgovMultiFile.js'/>"></script>
<script type="text/javaScript" language="javascript">
function fn_search(){

File diff suppressed because it is too large Load Diff

View File

@ -1563,17 +1563,27 @@ function sendMsgAjax(paramSmsCnt, paramBlockCnt){
smsCnt = Number(smsCnt) + Number(paramSmsCnt);
blockCnt = Number(blockCnt) + Number(paramBlockCnt);
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
if((smsCnt + blockCnt) == 0){
$('.pop_msg_spam').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
$('.pop_msg_spam .msg_text').html("문자 발송(예약)에 실패하였습니다.<br/> 다시 시도해주세요. <br/>* 정상적으로 발송 시도하였으나 실패하신 경우 혹시 문자내용에 사용불가 이모지 <br/>또는 복사-붙여넣기로 인한 보이지 않는 특수문자가 포함되었는지 확인 후 다시 시도해주세요.");
$('.mask').addClass('on');
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
}
$('.mask').addClass('on');
}
$('.mask').addClass('on');
}
} else if(status== 'fail'){

View File

@ -1283,17 +1283,27 @@ function sendMsgAjax(paramSmsCnt, paramBlockCnt){
smsCnt = Number(smsCnt) + Number(paramSmsCnt);
blockCnt = Number(blockCnt) + Number(paramBlockCnt);
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
if((smsCnt + blockCnt) == 0){
$('.pop_msg_spam').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
$('.pop_msg_spam .msg_text').html("문자 발송(예약)에 실패하였습니다.<br/> 다시 시도해주세요. <br/>* 정상적으로 발송 시도하였으나 실패하신 경우 혹시 문자내용에 사용불가 이모지 <br/>또는 복사-붙여넣기로 인한 보이지 않는 특수문자가 포함되었는지 확인 후 다시 시도해주세요.");
$('.mask').addClass('on');
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
}
$('.mask').addClass('on');
}
$('.mask').addClass('on');
}
} else if(status== 'fail'){

View File

@ -1769,17 +1769,26 @@ function sendMsgAjax(paramSmsCnt, paramBlockCnt){
smsCnt = Number(smsCnt) + Number(paramSmsCnt);
blockCnt = Number(blockCnt) + Number(paramBlockCnt);
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
if((smsCnt + blockCnt) == 0){
$('.pop_msg_spam').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
$('.pop_msg_spam .msg_text').html("문자 발송(예약)에 실패하였습니다.<br/> 다시 시도해주세요. <br/>* 정상적으로 발송 시도하였으나 실패하신 경우 혹시 문자내용에 사용불가 이모지 <br/>또는 복사-붙여넣기로 인한 보이지 않는 특수문자가 포함되었는지 확인 후 다시 시도해주세요.");
$('.mask').addClass('on');
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
}
$('.mask').addClass('on');
}
$('.mask').addClass('on');
}
} else if(status== 'fail'){

View File

@ -1383,17 +1383,27 @@ function sendMsgAjax(paramSmsCnt, paramBlockCnt){
smsCnt = Number(smsCnt) + Number(paramSmsCnt);
blockCnt = Number(blockCnt) + Number(paramBlockCnt);
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
if((smsCnt + blockCnt) == 0){
$('.pop_msg_spam').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
$('.pop_msg_spam .msg_text').html("문자 발송(예약)에 실패하였습니다.<br/> 다시 시도해주세요. <br/>* 정상적으로 발송 시도하였으나 실패하신 경우 혹시 문자내용에 사용불가 이모지 <br/>또는 복사-붙여넣기로 인한 보이지 않는 특수문자가 포함되었는지 확인 후 다시 시도해주세요.");
$('.mask').addClass('on');
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
$('.pop_msg_success').css({'display':'block','opacity':'1','left':'50%','top':'50%','transform':'translate(-50%,-50%)'});
//예약발송 건의 경우 결과 팝업 문구 변경
if(reserYn == 'Y'){
$('.pop_msg_success .msg_text').html("예약 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 예약 되었습니다.");
}else{
$('.pop_msg_success .msg_text').html("발송 성공 : <strong>"+ smsCnt + "</strong>건,수신거부 : <span>" + blockCnt + "</span>건의<br>문자가 발송 되었습니다.");
}
$('.mask').addClass('on');
}
$('.mask').addClass('on');
}
} else if(status== 'fail'){

File diff suppressed because it is too large Load Diff

View File

@ -37,7 +37,7 @@
.swiper2 .swiper-slide.swiper-slide-active .contWrap{background: none;}
.swiper2 .contWrap .slide_cont {padding: 0 30px 0 40px; height: 190px;}
.swiper2 .contWrap .slide_cont .cont1_title {font-size: 22px;font-weight: 700;}
.swiper2 .contWrap .slide_cont .cont1_ex {color: #555;font-weight: 300; line-height: 1.4;height: 42px; padding: 13px 0 30px 0;font-size:16px;letter-spacing:-0.5px;}
.swiper2 .contWrap .slide_cont .cont1_ex {color: #555;font-weight: 400; line-height: 1.4;height: 42px; padding: 13px 0 30px 0;font-size:16px;letter-spacing:-0.5px;}
.swiper2 .contWrap .slide_cont::after {position: absolute;content: "";background-color: #e1e1e5;border-radius: 50%;top: 50%;right: 30px; transform: translateY(-50%);width: 70px;height: 70px;}
.swiper2 .contWrap.ct1 .slide_cont::after {background:url('../images/main/cont1_1.png') #e1e1e5 center no-repeat;}
.swiper2 .contWrap.ct2 .slide_cont::after {background:url('../images/main/cont1_2.png') #e1e1e5 18px center no-repeat;}
@ -85,7 +85,7 @@
.tab_depth2 a.on{background-color: #fff;border: 3px solid #002c9a;border-radius: 100px; color: #002c90; font-weight: 600; box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3); height: 53px; line-height: 46px; transition: all 0.2s ease-in-out;}
.tab_depth2 a.tab_next::after,.tab_depth2 a.tab_prev::after{display: none;}
.tab_depth2 a.on::after{display: none;}
.tab_depth3{width: 100%; display: flex; flex-wrap: wrap; justify-content: center; background-color: #e1e2e5;font-size: 16px; color: #666;font-weight: 300;padding: 20px 40px; border-radius: 10px;margin-bottom: 50px; box-sizing: border-box;line-height:2;}
.tab_depth3{width: 100%; display: flex; flex-wrap: wrap; justify-content: center; background-color: #e1e2e5;font-size: 16px; color: #666;font-weight: 400;padding: 20px 40px; border-radius: 10px;margin-bottom: 50px; box-sizing: border-box;line-height:2;}
.tab_depth3 a{padding: 0 13px;position: relative;}
.tab_depth3 a:hover{color: #002c9a;text-decoration: underline;}
.tab_depth3 a.on{color: #002c9a; font-weight: 600;}
@ -170,7 +170,7 @@
.main_cont3 .main_notice ul li:hover::after {border:2px solid #fbc72b;background-color: #fff;width: calc(100% + 30px);height: 41px;box-shadow: 3px 3px 10px 4px rgba(0,0,0,0.15);;transition: all 0.1s ease-in-out;opacity: 1;}
.main_cont3 .main_notice ul li a {font-weight: 500;}
.main_cont3 .main_notice ul li:hover::before {background-image: url(/publish/images/main/notice_arrow.png);content: "";right: 0;top: 50%;transform: translateY(-50%); width: 9px; height: 14px;z-index: 1;position: absolute;}
.main_cont3 .main_notice ul li a {color: #555;font-weight: 300;width: 90%;text-overflow: ellipsis;overflow: hidden;display: -webkit-inline-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;height: 16px;}
.main_cont3 .main_notice ul li a {color: #555;font-weight: 400;width: 90%;text-overflow: ellipsis;overflow: hidden;display: -webkit-inline-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;height: 16px;}
/* 고객센터 */
.main_cont3 .service_center .tablet {background-image: url(/publish/images/main/serive_tablet.png);background-repeat: no-repeat;height: 300px;color: #222;font-weight: 300;}
.main_cont3 .service_center .tablet>div {padding: 15px 30px 0 30px;}
@ -179,7 +179,7 @@
.main_cont3 .service_center .tablet .service_center_title p {font-size: 32px;font-weight: 700; color: #23428b;padding-bottom: 10px; letter-spacing: -1px;line-height:35px;}
.main_cont3 .service_center .tablet .service_center_title span {font-size: 17px;font-weight: 300; }
.main_cont3 .service_center .tablet .serive_info {background-image: url(/publish/images/main/serviceCenter_text.png);background-repeat: no-repeat;height: 71px;margin: 15px 0;}
.main_cont3 .service_center .tablet .serive_info p{line-height: 1.5;padding: 13px 23px;font-size: 16px;}
.main_cont3 .service_center .tablet .serive_info p{line-height: 1.5;padding: 13px 18px;font-size: 16px; font-weight: 400;}
.main_cont3 .service_center .tablet .serive_btn {text-align: center;display: flex;height: 47px;}
.main_cont3 .service_center .tablet .serive_btn li {display: inline-block;width: calc(100% - 2px /3);border: 1px solid #d5d5d5;margin-left: -1px; box-sizing: border-box;}
.main_cont3 .service_center .tablet .serive_btn li a,
@ -274,7 +274,7 @@
.tab_contwrap .btn_prev,.tab_contwrap .btn_next{width: 40px;height: 40px;}
/* content3 */
.main_cont3 .inner>div {flex-basis: calc(100%/3 - 10px);}
.main_cont3 .service_center .tablet .serive_info p {padding: 13px 13px;}
.main_cont3 .service_center .tablet .serive_info p {padding: 13px 11px;}
.main_cont3 .service_center .tablet .service_center_title p {font-size: 26px;}
.main_cont3 .service_center .tablet .service_center_title span {font-size:15px;}
/* 광고배너 */
@ -296,7 +296,7 @@
/*.main_cont3 .service_center .tablet .service_center_title{padding-left: 80px}
.main_cont3 .service_center .tablet .service_center_title p{padding-bottom: 5px; padding-top: 5px;}
.main_cont3 .service_center .tablet .service_center_title::after{width: 68px; height: 68px; background-size: 100% 100%}*/
.main_cont3 .service_center .tablet .serive_info p {font-size:14px;padding:13px 1px 13px 15px;}
.main_cont3 .service_center .tablet .serive_info p {font-size:14px;padding:13px 0px 13px 8px;}
}