This commit is contained in:
wyh 2024-01-24 16:11:46 +09:00
commit d1343ccb92
73 changed files with 2666 additions and 370 deletions

View File

@ -564,6 +564,8 @@ public class KakaoAlimTalkTemplateController {
return "redirect:/web/user/login/login.do"; return "redirect:/web/user/login/login.do";
} }
model.addAttribute("loginVO", loginVO);
// 사용자 아이디를 이용한 발신프로필 조회 // 사용자 아이디를 이용한 발신프로필 조회
kakaoVO.setUserId(userId); kakaoVO.setUserId(userId);
List<KakaoVO> selectKakaoProfileList = kakaoApiService.selectKakaoProfileList(kakaoVO); List<KakaoVO> selectKakaoProfileList = kakaoApiService.selectKakaoProfileList(kakaoVO);
@ -750,6 +752,8 @@ public class KakaoAlimTalkTemplateController {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId());
model.addAttribute("loginVO", loginVO);
if(userId == "") { if(userId == "") {
model.addAttribute("message", "로그인 후 이용이 가능합니다."); model.addAttribute("message", "로그인 후 이용이 가능합니다.");
return "redirect:/web/user/login/login.do"; return "redirect:/web/user/login/login.do";

View File

@ -204,6 +204,7 @@ public class MjonMsgVO extends ComDefaultVO{
private int failSendCnt; private int failSendCnt;
private double succSendPrice; private double succSendPrice;
private double failSendPrice; private double failSendPrice;
private double totSuccSendPrice;
public String getSearchDelayMsgYn() { public String getSearchDelayMsgYn() {
return searchDelayMsgYn; return searchDelayMsgYn;
@ -499,6 +500,7 @@ public class MjonMsgVO extends ComDefaultVO{
private double supplyPrice; // 공급가액 private double supplyPrice; // 공급가액
private double vatPrice; // 부가세 private double vatPrice; // 부가세
private double totalPrice; // 금액 private double totalPrice; // 금액
private String addVatType; // 부가세 포함 여부
private String addrGrpId; // 주소록 그룹아이디 private String addrGrpId; // 주소록 그룹아이디
private String addrGrpNm; // 주소록 그룹명 private String addrGrpNm; // 주소록 그룹명
@ -1298,6 +1300,12 @@ public class MjonMsgVO extends ComDefaultVO{
public void setTotalPrice(double totalPrice) { public void setTotalPrice(double totalPrice) {
this.totalPrice = totalPrice; this.totalPrice = totalPrice;
} }
public String getAddVatType() {
return addVatType;
}
public void setAddVatType(String addVatType) {
this.addVatType = addVatType;
}
public String getDetailType() { public String getDetailType() {
return detailType; return detailType;
} }
@ -1624,4 +1632,10 @@ public class MjonMsgVO extends ComDefaultVO{
public void setFailSendPrice(double failSendPrice) { public void setFailSendPrice(double failSendPrice) {
this.failSendPrice = failSendPrice; this.failSendPrice = failSendPrice;
} }
public double getTotSuccSendPrice() {
return totSuccSendPrice;
}
public void setTotSuccSendPrice(double totSuccSendPrice) {
this.totSuccSendPrice = totSuccSendPrice;
}
} }

View File

@ -127,8 +127,16 @@ public interface MjonPayService {
// 사용금액 - 카카오 추가 // 사용금액 - 카카오 추가
List<MjonPayVO> selectUsedCashWithKakaoTotCnt(MjonPayVO mjonPayVO) throws Exception; List<MjonPayVO> selectUsedCashWithKakaoTotCnt(MjonPayVO mjonPayVO) throws Exception;
List<MjonPayVO> selectCashInfoList(String userId) throws Exception; List<MjonPayVO> selectCashInfoList(String userId) throws Exception;
List<MjonPayVO> selectPointInfoList(String userId) throws Exception; List<MjonPayVO> selectPointInfoList(String userId) throws Exception;
//누적 사용금액 조회 (캐시 테이블에서 현재까지 사용된 금액 합산 - 캐시 테이블에서 "-" 사용된 금액만 합산)
public String selectTotalSumCashForAfterPay(String userId) throws Exception;
//누적 사용 포인트 조회 (포인트 테이블에서 현재까지 사용된 포인트 합산 - 회원 포인트 정보 업데이트시 사용되는 쿼리 이용)
public String selectTotalSumPointForAfterPay(String userId) throws Exception;
//누적 납부금액 조회 (후불회원이 사용금액을 납부한 금액 합산 - 미납 금액 제외한 합산 금액)
public String selectTotSumPaymentAfterPay(String userId) throws Exception;
} }

View File

@ -302,4 +302,56 @@ public class MjonPayDAO extends EgovAbstractDAO {
} }
//누적 사용금액 조회 (캐시 테이블에서 현재까지 사용된 금액 합산 - 캐시 테이블에서 "-" 사용된 금액만 합산)
public String selectTotalSumCashForAfterPay(String userId) throws Exception{
String result = "";
try {
result = (String) select("mjonPayDAO.selectTotalSumCashForAfterPay", userId);
} catch (Exception e) {
System.out.println("selectTotalSumCashForAfterPay DAO Error!!! " + e);
}
return result;
}
//누적 사용 포인트 조회 (포인트 테이블에서 현재까지 사용된 포인트 합산 - 회원 포인트 정보 업데이트시 사용되는 쿼리 이용)
public String selectTotalSumPointForAfterPay(String userId) throws Exception{
String result = "";
try {
result = (String) select("mjonPayDAO.selectTotalSumPointForAfterPay", userId);
} catch (Exception e) {
System.out.println("selectTotalSumPointForAfterPay DAO Error!!! " + e);
}
return result;
}
//누적 납부금액 조회 (후불회원이 사용금액을 납부한 금액 합산 - 미납 금액 제외한 합산 금액)
public String selectTotSumPaymentAfterPay(String userId) throws Exception{
String result = "";
try {
result = (String) select("mjonPayDAO.selectTotSumPaymentAfterPay", userId);
} catch (Exception e) {
System.out.println("selectTotSumPaymentAfterPay DAO Error!!! " + e);
}
return result;
}
} }

View File

@ -2743,6 +2743,59 @@ public class MjonPayServiceImpl extends EgovAbstractServiceImpl implements MjonP
return mjonPayDAO.selectPointInfoList(userId); return mjonPayDAO.selectPointInfoList(userId);
} }
//누적 사용금액 조회 (캐시 테이블에서 현재까지 사용된 금액 합산 - 캐시 테이블에서 "-" 사용된 금액만 합산)
@Override
public String selectTotalSumCashForAfterPay(String userId) throws Exception{
String result = "";
try {
result = mjonPayDAO.selectTotalSumCashForAfterPay(userId);
} catch (Exception e) {
System.out.println("selectTotalSumCashForAfterPay Service Imple Error!!! " + e);
}
return result;
}
//누적 사용 포인트 조회 (포인트 테이블에서 현재까지 사용된 포인트 합산 - 회원 포인트 정보 업데이트시 사용되는 쿼리 이용)
@Override
public String selectTotalSumPointForAfterPay(String userId) throws Exception{
String result = "";
try {
result = mjonPayDAO.selectTotalSumPointForAfterPay(userId);
} catch (Exception e) {
System.out.println("selectTotalSumPointForAfterPay Service Imple Error!!! " + e);
}
return result;
}
//누적 납부금액 조회 (후불회원이 사용금액을 납부한 금액 합산 - 미납 금액 제외한 합산 금액)
@Override
public String selectTotSumPaymentAfterPay(String userId) throws Exception{
String result = "";
try {
result = mjonPayDAO.selectTotSumPaymentAfterPay(userId);
} catch (Exception e) {
System.out.println("selectTotSumPaymentAfterPay Service Imple Error!!! " + e);
}
return result;
}
} }

View File

@ -1932,6 +1932,13 @@ public class MjonPayController {
} }
*/ */
//후불제 회원 여부 조회
UserManageVO userManageVO = new UserManageVO();
userManageVO.setMberId(userId);
userManageVO = userManageService.selectAdminSmsNoticeYn(userManageVO);
model.addAttribute("prePaymentYn", userManageVO.getPrePaymentYn());
if(pattern.equals("/web/member/pay/PayListAllAjax.do") if(pattern.equals("/web/member/pay/PayListAllAjax.do")
|| pattern.equals("/web/member/pay/PayListMobileAjax.do") || pattern.equals("/web/member/pay/PayListMobileAjax.do")
|| pattern.equals("/web/member/pay/PayListCardAjax.do") || pattern.equals("/web/member/pay/PayListCardAjax.do")
@ -2099,13 +2106,6 @@ public class MjonPayController {
return "/web/pay/PayListAllAjax"; return "/web/pay/PayListAllAjax";
} }
//후불제 회원 여부 조회
UserManageVO userManageVO = new UserManageVO();
userManageVO.setMberId(userId);
userManageVO = userManageService.selectAdminSmsNoticeYn(userManageVO);
model.addAttribute("prePaymentYn", userManageVO.getPrePaymentYn());
return "/web/pay/PayList"; return "/web/pay/PayList";
} }
@ -2624,7 +2624,7 @@ public class MjonPayController {
model.addAttribute("reservToList", reservToList); model.addAttribute("reservToList", reservToList);
} }
{ {// 선거 후보자 정보 조회
MjonCandidateVO mjonCandidateVO = new MjonCandidateVO(); MjonCandidateVO mjonCandidateVO = new MjonCandidateVO();
if("p".equals(mberManageVO.getDept())) { //개인회원 선거 후보자 정보 불러오기 if("p".equals(mberManageVO.getDept())) { //개인회원 선거 후보자 정보 불러오기
mjonCandidateVO = mjonCandidateService.selectCandidateDataInfo(userId); mjonCandidateVO = mjonCandidateService.selectCandidateDataInfo(userId);
@ -2635,6 +2635,49 @@ public class MjonPayController {
} }
model.addAttribute("mjonCandidateVO", mjonCandidateVO); model.addAttribute("mjonCandidateVO", mjonCandidateVO);
} }
{
/**
* 후불제 회원 관련 사용 요금 내역 정보 조회하기
* 20231228 우영두 추가
* 누적사용금액, 누적 납부금액, 당월 납부 예상금액 정보 조회
*
* */
//누적 사용금액 조회 (캐시 테이블에서 현재까지 사용된 금액 합산 - 캐시 테이블에서 "-" 사용된 금액만 합산)
String totSumCashAfterPay = mjonPayService.selectTotalSumCashForAfterPay(userId);
model.addAttribute("totSumCashAfterPay", totSumCashAfterPay);
//누적 사용 포인트 조회 (포인트 테이블에서 현재까지 사용된 포인트 합산 - 회원 포인트 정보 업데이트시 사용되는 쿼리 이용)
String totSumPointAfterPay = mjonPayService.selectTotalSumPointForAfterPay(userId);
model.addAttribute("totSumPointAfterPay", totSumPointAfterPay);
//누적 납부금액 조회 (후불회원이 사용금액을 납부한 금액 합산 - 미납 금액 제외한 합산 금액)
String totSumPaymentAfterPay = mjonPayService.selectTotSumPaymentAfterPay(userId);
model.addAttribute("totSumPaymentAfterPay", totSumPaymentAfterPay);
//누적 납부 포인트 조회 ( 누적 납부금액 합산에 대한 2% 포인트 정보 계산)
float p_i_re_point = 0;
JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo();
if (sysJoinSetVO != null) {
p_i_re_point = sysJoinSetVO.getPointPer();
}
int paymentPointAfterPay = Math.round((Float.parseFloat(totSumPaymentAfterPay) * p_i_re_point / 100));
model.addAttribute("sumPaymentPointAfterPay", paymentPointAfterPay);
//당월 납부 예상금액 (누적 사용금액 합산 - 누적 납부금액 합산 정보 계산)
float unPaymentAfterPay = Float.parseFloat(totSumCashAfterPay) - Float.parseFloat(totSumPaymentAfterPay);
model.addAttribute("unPaymentAfterPay", unPaymentAfterPay);
//당월 납부 예상 포인트 (당월 납부 예상 금액에 대한 2% 포인트 정보 계산)
int unPaymentPointAfterPay = Math.round((unPaymentAfterPay * p_i_re_point / 100));
model.addAttribute("unPaymentPointAfterPay", unPaymentPointAfterPay);
}
return "/web/pay/PayUserSWList"; return "/web/pay/PayUserSWList";
} }
@ -2656,6 +2699,8 @@ public class MjonPayController {
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId());
mjonMsgVO.setUserId(userId); mjonMsgVO.setUserId(userId);
try {
if(mjonMsgVO.getPageUnit() != 10) { if(mjonMsgVO.getPageUnit() != 10) {
mjonMsgVO.setPageUnit(mjonMsgVO.getPageUnit()); mjonMsgVO.setPageUnit(mjonMsgVO.getPageUnit());
} }
@ -2675,13 +2720,23 @@ public class MjonPayController {
mjonMsgVO.setSearchSortOrd("desc"); mjonMsgVO.setSearchSortOrd("desc");
} }
List<MjonMsgVO> payUserSWList = mjonMsgDataService.selectPayUserSWList(mjonMsgVO); List<MjonMsgVO> payUserSWList = mjonMsgDataService.selectPayUserSWList(mjonMsgVO);
paginationInfo.setTotalRecordCount(payUserSWList.size()> 0 ? payUserSWList.get(0).getTotCnt() : 0); paginationInfo.setTotalRecordCount(payUserSWList.size()> 0 ? payUserSWList.get(0).getTotCnt() : 0);
model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("payUserSWList", payUserSWList); model.addAttribute("payUserSWList", payUserSWList);
if(payUserSWList.size() > 0) {
model.addAttribute("totSuccSendPrice", payUserSWList.get(0).getTotSuccSendPrice());
}else {
model.addAttribute("totSuccSendPrice", 0);
}
} catch (Exception e) {
System.out.println("PayUserSWListAjax Controller Error!!! " + e);
}
return "/web/pay/PayUserSWListAjax"; return "/web/pay/PayUserSWListAjax";
} }
@ -2950,6 +3005,41 @@ public class MjonPayController {
} }
@RequestMapping(value= {"/web/member/pay/PrintPayUserSWListAjax.do"})
public String printPayUserSWListAjax(
@ModelAttribute("searchVO") MjonMsgVO mjonMsgVO
, RedirectAttributes redirectAttributes
, ModelMap model) throws Exception {
//로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId());
String userNm = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getName());
mjonMsgVO.setUserId(userId);
model.addAttribute("userNm", userNm);
mjonMsgVO.setFirstIndex(0);
mjonMsgVO.setRecordCountPerPage(10000);
//결제 리스트 정보 불러오기
List<MjonMsgVO> payUserList = mjonMsgDataService.selectPayUserSWList(mjonMsgVO);
model.addAttribute("payUserList", payUserList);
Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
int day = cal.get(Calendar.DAY_OF_MONTH);
model.addAttribute("year", year);
model.addAttribute("month", month);
model.addAttribute("day", day);
return "web/pay/PrintPayUserSWListPopUp";
}
/** /**
* 요금사용내역 - 카카오 테스트용 * 요금사용내역 - 카카오 테스트용
@ -3844,9 +3934,11 @@ public class MjonPayController {
MberManageVO tmpMberManageVO = mjonMsgDataService.selectMberManageInfo(mberId); MberManageVO tmpMberManageVO = mjonMsgDataService.selectMberManageInfo(mberId);
String dept = tmpMberManageVO.getDept(); String dept = tmpMberManageVO.getDept();
if(dept.equals("p") && taxCNm != null && taxCNm.length() > 0) { //후보자 정보 조회
MjonCandidateVO mjonCandidateVO = mjonCandidateService.selectCandidateDataInfo(mberId); MjonCandidateVO mjonCandidateVO = mjonCandidateService.selectCandidateDataInfo(mberId);
if(mjonCandidateVO != null && dept.equals("p") && taxCNm != null && taxCNm.length() > 0) {
String candidateNm = mjonCandidateVO.getCandidateNm(); String candidateNm = mjonCandidateVO.getCandidateNm();
if(candidateNm != null && candidateNm.length() > 0) { if(candidateNm != null && candidateNm.length() > 0) {
@ -4730,16 +4822,21 @@ public class MjonPayController {
if(!"".equals(startDate)) { if(!"".equals(startDate)) {
startDate = startDate.replaceAll("/", "-"); startDate = startDate.replaceAll("/", "-");
}else { }else {
if(minRegDate != null) {
startDate = transFormat.format(minRegDate); startDate = transFormat.format(minRegDate);
} }
}
model.addAttribute("startDate", startDate); model.addAttribute("startDate", startDate);
String endDate = mjonMsgVO.getEndDate(); String endDate = mjonMsgVO.getEndDate();
if(!"".equals(endDate)) { if(!"".equals(endDate)) {
endDate = endDate.replaceAll("/", "-"); endDate = endDate.replaceAll("/", "-");
}else { }else {
if(maxRegDate != null) {
endDate = transFormat.format(maxRegDate); endDate = transFormat.format(maxRegDate);
} }
}
model.addAttribute("endDate", endDate); model.addAttribute("endDate", endDate);
DecimalFormat decFormat = new DecimalFormat("###,###"); DecimalFormat decFormat = new DecimalFormat("###,###");
@ -4773,6 +4870,12 @@ public class MjonPayController {
model.addAttribute("managerNm", managerNm); model.addAttribute("managerNm", managerNm);
model.addAttribute("moblphonNo", moblphonNo); model.addAttribute("moblphonNo", moblphonNo);
//부가세 포함 가격 정보 계산
double addTax = Math.round(totalSumPrice * 0.1);
model.addAttribute("addTax", decFormat.format(addTax));
model.addAttribute("addTaxSumPrice", decFormat.format(addTax+totalSumPrice));
return "/web/pay/MsgPrintUsageDetailsPopUp"; return "/web/pay/MsgPrintUsageDetailsPopUp";
} }
@ -4966,16 +5069,20 @@ public class MjonPayController {
if(!"".equals(startDate)) { if(!"".equals(startDate)) {
startDate = startDate.replaceAll("/", "-"); startDate = startDate.replaceAll("/", "-");
}else { }else {
if(minRegDate != null) {
startDate = transFormat.format(minRegDate); startDate = transFormat.format(minRegDate);
} }
}
model.addAttribute("startDate", startDate); model.addAttribute("startDate", startDate);
String endDate = mjonMsgVO.getEndDate(); String endDate = mjonMsgVO.getEndDate();
if(!"".equals(endDate)) { if(!"".equals(endDate)) {
endDate = endDate.replaceAll("/", "-"); endDate = endDate.replaceAll("/", "-");
}else { }else {
if(maxRegDate != null) {
endDate = transFormat.format(maxRegDate); endDate = transFormat.format(maxRegDate);
} }
}
model.addAttribute("endDate", endDate); model.addAttribute("endDate", endDate);
@ -5010,6 +5117,13 @@ public class MjonPayController {
model.addAttribute("managerNm", managerNm); model.addAttribute("managerNm", managerNm);
model.addAttribute("moblphonNo", moblphonNo); model.addAttribute("moblphonNo", moblphonNo);
//부가세 포함 가격 정보 계산
double addTax = Math.round(totalSumPrice * 0.1);
model.addAttribute("addTax", decFormat.format(addTax));
model.addAttribute("addTaxSumPrice", decFormat.format(addTax+totalSumPrice));
return "/web/pay/MsgPrintStatementPopUp"; return "/web/pay/MsgPrintStatementPopUp";
} }

View File

@ -3,11 +3,8 @@ package itn.let.mjo.test.web;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
@ -23,7 +20,6 @@ import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import javax.mail.internet.ContentDisposition;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
@ -36,7 +32,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.env.SystemEnvironmentPropertySource;
import org.springframework.core.io.ByteArrayResource; import org.springframework.core.io.ByteArrayResource;
import org.springframework.core.io.FileSystemResource; import org.springframework.core.io.FileSystemResource;
import org.springframework.http.HttpEntity; import org.springframework.http.HttpEntity;
@ -224,6 +219,10 @@ public class TestController {
@Resource(name = "mberGrdService") @Resource(name = "mberGrdService")
MberGrdService mberGrdService; MberGrdService mberGrdService;
/** 후불제 자동 충전 서비스 */
@Resource (name = "userManageService")
private EgovUserManageService egovUserManageService;
private static final Logger logger = LoggerFactory.getLogger(TestController.class); private static final Logger logger = LoggerFactory.getLogger(TestController.class);
///////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////
@ -3276,4 +3275,20 @@ public class TestController {
} }
@RequestMapping(value="/web/mjon/test/insertAfterPayCashChargeSchedulerAjax.do")
public void testAfterPayCashCharge() throws Exception{
System.out.println("=================================testAfterPayCashCharge Start==========================================");
try {
egovUserManageService.updateUserCashByAutoCash();
} catch (Exception e) {
System.out.println("++++++++++++++ testAfterPayCashCharge Error!!! "+e);
}
}
} }

View File

@ -392,6 +392,48 @@ public class EgovMypageController {
model.addAttribute("pageTab", "myPageIndex"); model.addAttribute("pageTab", "myPageIndex");
model.addAttribute("loginVO", loginVO); model.addAttribute("loginVO", loginVO);
{
/**
* 후불제 회원 관련 사용 요금 내역 정보 조회하기
* 20240102 우영두 추가
* 누적사용금액, 누적 납부금액, 당월 납부 예상금액 정보 조회
*
* */
//누적 사용금액 조회 (캐시 테이블에서 현재까지 사용된 금액 합산 - 캐시 테이블에서 "-" 사용된 금액만 합산)
String totSumCashAfterPay = mjonPayService.selectTotalSumCashForAfterPay(userId);
model.addAttribute("totSumCashAfterPay", totSumCashAfterPay);
//누적 사용 포인트 조회 (포인트 테이블에서 현재까지 사용된 포인트 합산 - 회원 포인트 정보 업데이트시 사용되는 쿼리 이용)
String totSumPointAfterPay = mjonPayService.selectTotalSumPointForAfterPay(userId);
model.addAttribute("totSumPointAfterPay", totSumPointAfterPay);
//누적 납부금액 조회 (후불회원이 사용금액을 납부한 금액 합산 - 미납 금액 제외한 합산 금액)
String totSumPaymentAfterPay = mjonPayService.selectTotSumPaymentAfterPay(userId);
model.addAttribute("totSumPaymentAfterPay", totSumPaymentAfterPay);
//누적 납부 포인트 조회 ( 누적 납부금액 합산에 대한 2% 포인트 정보 계산)
float p_i_re_point = 0;
JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo();
if (sysJoinSetVO != null) {
p_i_re_point = sysJoinSetVO.getPointPer();
}
int paymentPointAfterPay = Math.round((Float.parseFloat(totSumPaymentAfterPay) * p_i_re_point / 100));
model.addAttribute("sumPaymentPointAfterPay", paymentPointAfterPay);
//당월 납부 예상금액 (누적 사용금액 합산 - 누적 납부금액 합산 정보 계산)
float unPaymentAfterPay = Float.parseFloat(totSumCashAfterPay) - Float.parseFloat(totSumPaymentAfterPay);
model.addAttribute("unPaymentAfterPay", unPaymentAfterPay);
//당월 납부 예상 포인트 (당월 납부 예상 금액에 대한 2% 포인트 정보 계산)
int unPaymentPointAfterPay = Math.round((unPaymentAfterPay * p_i_re_point / 100));
model.addAttribute("unPaymentPointAfterPay", unPaymentPointAfterPay);
}
return "web/user/mberInfoIndex"; return "web/user/mberInfoIndex";
} }

View File

@ -207,6 +207,7 @@ public class UserManageVO extends UserDefaultVO{
private String atSmishingYn; // 알림톡 스미싱 의심여부 private String atSmishingYn; // 알림톡 스미싱 의심여부
private String spamYn; private String spamYn;
private String nextPayMethod; private String nextPayMethod;
private float paymentCash; //이전달에 실제 사용한 캐시 정보
public String getNextPayMethod() { public String getNextPayMethod() {
return nextPayMethod; return nextPayMethod;
@ -731,6 +732,12 @@ public class UserManageVO extends UserDefaultVO{
public void setVipYn(String vipYn) { public void setVipYn(String vipYn) {
this.vipYn = vipYn; this.vipYn = vipYn;
} }
public float getPaymentCash() {
return paymentCash;
}
public void setPaymentCash(float paymentCash) {
this.paymentCash = paymentCash;
}

View File

@ -698,7 +698,12 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
public void updateUserCashByAutoCash() throws Exception { public void updateUserCashByAutoCash() throws Exception {
List<UserManageVO> userPrePaymentYnList = userManageDAO.selectUserPrePaymentYnList(new UserManageVO()); List<UserManageVO> userPrePaymentYnList = userManageDAO.selectUserPrePaymentYnList(new UserManageVO());
for (UserManageVO umVO: userPrePaymentYnList) { for (UserManageVO umVO: userPrePaymentYnList) {
if (umVO.getNowChargeCash() > 0) { if (umVO.getPaymentCash() > 0) {
//이번달에 입력된 후불 결제요청 데이터가 있는지 확인 - 혹시나 중복 입력을 방지하기 위함
int paymentCnt = userManageDAO.selectUserPrePaymentPGdataCount(umVO.getMberId());
if(paymentCnt > 0) continue;
//회원 정보 조회 //회원 정보 조회
MberManageVO mberManageVO = mberManageDAO.selectMber(umVO.getMberId()); //멤버ID에서 유니크ID로 수정 필요 MberManageVO mberManageVO = mberManageDAO.selectMber(umVO.getMberId()); //멤버ID에서 유니크ID로 수정 필요

View File

@ -316,4 +316,9 @@ public class UserManageDAO extends EgovAbstractDAO{
return (List<UserManageVO>) list("userManageDAO.selectUserPrePaymentYnList", userManageVO); return (List<UserManageVO>) list("userManageDAO.selectUserPrePaymentYnList", userManageVO);
} }
// 이번달 입력된 결제요청 정보가 있는지 체크
public int selectUserPrePaymentPGdataCount(String userId) throws Exception{
return (int) select("userManageDAO.selectUserPrePaymentPGdataCount", userId);
}
} }

View File

@ -2714,6 +2714,23 @@ public class EgovUserManageController {
msg = "로그인이 필요합니다."; msg = "로그인이 필요합니다.";
} }
else { else {
MberManageVO mberManageVO = mberManageService.selectMber(userManageVO.getMberId());
String taxbillAuto = mberManageVO.getTaxbillAuto();
if(taxbillAuto == null || taxbillAuto.equals("N")) {
isSuccess = false;
msg = "세금계산서 자동발행의 선택이 안되어 있습니다. 확인 부탁드리겠습니다.";
modelAndView.addObject("isSuccess", isSuccess);
modelAndView.addObject("msg", msg);
return modelAndView;
}
int payCnt = userManageService.selectPayCountByUser(userManageVO); int payCnt = userManageService.selectPayCountByUser(userManageVO);
if (payCnt > 0) { if (payCnt > 0) {
isSuccess = false; isSuccess = false;

View File

@ -1169,6 +1169,31 @@ public class MainController {
model.addAttribute("myBankList", myBankList); model.addAttribute("myBankList", myBankList);
String prePaymentYn = "";
if(loginVO != null) {
String auth = loginVO.getAuthority();
//사용자 권한인 경우만 실행
if(!auth.equals("ROLE_ADMIN")) {
//후불회원 여부 조회
UserManageVO userManageVO = new UserManageVO();
if(!userId.equals("")) {
userManageVO.setMberId(userId);
userManageVO = userManageService.selectAdminSmsNoticeYn(userManageVO);
}
if(userManageVO.getPrePaymentYn() != null) {
prePaymentYn = userManageVO.getPrePaymentYn();
}
}
}
model.addAttribute("prePaymentYn", prePaymentYn);
return "web/com/webCommonHeader"; return "web/com/webCommonHeader";
} }

View File

@ -99,7 +99,7 @@ Globals.mjon.biz.kakao.apiKey=dheBWCONP6J5
Globals.fax.xpedite.id=kr/itn0202 Globals.fax.xpedite.id=kr/itn0202
Globals.fax.xpedite.pw=easytour7! Globals.fax.xpedite.pw=on240101!
Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax
Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert
Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax

View File

@ -100,7 +100,7 @@ Globals.mjon.biz.kakao.apiKey=dheBWCONP6J5
Globals.fax.xpedite.id=kr/itn0202 Globals.fax.xpedite.id=kr/itn0202
Globals.fax.xpedite.pw=easytour7! Globals.fax.xpedite.pw=on240101!
Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax
Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert
Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax

View File

@ -87,7 +87,7 @@ Globals.mjon.biz.id=itn0202
Globals.mjon.biz.kakao.apiKey=dheBWCONP6J5 Globals.mjon.biz.kakao.apiKey=dheBWCONP6J5
Globals.fax.xpedite.id=kr/itn0202 Globals.fax.xpedite.id=kr/itn0202
Globals.fax.xpedite.pw=easytour7! Globals.fax.xpedite.pw=on240101!
Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.save.path=/usr/local/tomcat/file/sht/fax
Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert Globals.fax.file.convert.path=/usr/local/tomcat/file/sht/fax/Convert
Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax Globals.fax.file.ori.path=/usr/local/tomcat/file/sht/fax

View File

@ -2130,6 +2130,7 @@
, HOTLINE_AGENT_CODE AS hotlineAgentCode , HOTLINE_AGENT_CODE AS hotlineAgentCode
, BLINE_CODE AS blineCode , BLINE_CODE AS blineCode
, AT_SMISHING_YN AS atSmishingYn , AT_SMISHING_YN AS atSmishingYn
, PRE_PAYMENT_YN AS prePaymentYn
FROM LETTNGNRLMBER FROM LETTNGNRLMBER
WHERE MBER_ID = #userId# WHERE MBER_ID = #userId#
@ -3139,11 +3140,12 @@
<select id="mjonMsgDAO.selectPayUserSWList" parameterClass="mjonMsgVO" resultClass="mjonMsgVO"> <select id="mjonMsgDAO.selectPayUserSWList" parameterClass="mjonMsgVO" resultClass="mjonMsgVO">
SELECT SELECT
COUNT(pay.totCnt) OVER() AS totCnt COUNT(pay.totCnt) OVER() AS totCnt
, SUM(pay.succSendPrice) OVER() AS totSuccSendPrice
, pay.regDate AS regDate , pay.regDate AS regDate
, pay.sendCount AS sendCount , pay.sendCount AS sendCount
, pay.succSendCnt AS succSendCnt , pay.succSendCnt AS succSendCnt
, pay.failSendCnt AS failSendCnt
, pay.succSendPrice AS succSendPrice , pay.succSendPrice AS succSendPrice
, pay.failSendCnt AS failSendCnt
, pay.failSendPrice AS failSendPrice , pay.failSendPrice AS failSendPrice
, pay.smsTxt AS smsTxt , pay.smsTxt AS smsTxt
, pay.subject AS subject , pay.subject AS subject
@ -3169,8 +3171,8 @@
, M.regDate AS regDate , M.regDate AS regDate
, M.sendCount AS sendCount , M.sendCount AS sendCount
, SUM(IF(RESULT = 'W' OR RESULT = 'S', 1, 0 )) AS succSendCnt , SUM(IF(RESULT = 'W' OR RESULT = 'S', 1, 0 )) AS succSendCnt
, SUM(IF(RESULT = 'F', 1, 0 )) AS failSendCnt
, SUM(IF(RESULT = 'W' OR RESULT = 'S', 1, 0 )) * M.eachPrice AS succSendPrice , SUM(IF(RESULT = 'W' OR RESULT = 'S', 1, 0 )) * M.eachPrice AS succSendPrice
, SUM(IF(RESULT = 'F', 1, 0 )) AS failSendCnt
, SUM(IF(RESULT = 'F', 1, 0 )) * M.eachPrice AS failSendPrice , SUM(IF(RESULT = 'F', 1, 0 )) * M.eachPrice AS failSendPrice
, M.smsTxt AS smsTxt , M.smsTxt AS smsTxt
, M.subject AS subject , M.subject AS subject

View File

@ -2188,7 +2188,7 @@
<select id="mjonPayDAO.selectCashInfoList" parameterClass="String" resultClass="mjonPayVO"> <select id="mjonPayDAO.selectCashInfoList" parameterClass="String" resultClass="mjonPayVO">
SELECT SELECT
'chargeCash' AS divFlag 'chargeCash' AS divFlag
,SUM(CASH) AS cashSum ,NVL(SUM(CASH),0) AS cashSum
FROM FROM
MJ_PG MJ_PG
WHERE 1=1 WHERE 1=1
@ -2225,7 +2225,7 @@
<![CDATA[ <![CDATA[
SELECT SELECT
'chargePoint' AS divFlag 'chargePoint' AS divFlag
,SUM(POINT) AS sumPay ,NVL(SUM(POINT),0) AS sumPay
FROM FROM
MJ_POINT MJ_POINT
WHERE 1=1 WHERE 1=1
@ -2279,4 +2279,40 @@
</select> </select>
<select id="mjonPayDAO.selectTotalSumCashForAfterPay" parameterClass="String" resultClass="String">
<![CDATA[
SELECT NVL(ABS(SUM(CASH)), 0) FROM MJ_CASH
WHERE USER_ID = #userId#
AND DEL_FLAG = 'N'
AND MSG_GROUP_ID IS NOT NULL
]]>
</select>
<select id="mjonPayDAO.selectTotalSumPointForAfterPay" parameterClass="String" resultClass="String">
SELECT NVL(B.POINT , 0) AS point
FROM LETTNGNRLMBER A
LEFT JOIN
(
SELECT SUM(POINT) AS POINT , USER_ID FROM MJ_POINT A
GROUP BY A.USER_ID , A.DEL_FLAG
HAVING USER_ID = #userId# AND A.DEL_FLAG = 'N'
) B ON A.MBER_ID = B.USER_ID
WHERE A.MBER_ID = #userId#
</select>
<select id="mjonPayDAO.selectTotSumPaymentAfterPay" parameterClass="String" resultClass="String">
SELECT NVL(SUM(CASH), 0)
FROM MJ_PG
WHERE USER_ID = #userId#
AND PG_STATUS = 1
AND AFTER_PAY_YN = 'Y'
</select>
</sqlMap> </sqlMap>

View File

@ -1405,6 +1405,29 @@
<!-- 후불제 회원 목록 --> <!-- 후불제 회원 목록 -->
<select id="userManageDAO.selectUserPrePaymentYnList" parameterClass="userVO" resultClass="userVO"> <select id="userManageDAO.selectUserPrePaymentYnList" parameterClass="userVO" resultClass="userVO">
SELECT IFNULL(SUM(MC.CASH * -1), 0) AS paymentCash,
IFNULL(MB.AUTO_CASH - MB.USER_MONEY, 0) AS nowChargeCash,
MC.USER_ID AS mberId,
MB.AUTO_CASH AS autoCash
FROM MJ_CASH MC
INNER JOIN LETTNGNRLMBER MB
ON MC.USER_ID = MB.MBER_ID
AND MB.PRE_PAYMENT_YN = 'N'
AND MB.MBER_STTUS = 'Y'
WHERE YEAR(MC.FRST_REGIST_PNTTM) = YEAR(CURRENT_DATE - INTERVAL 1 MONTH)
AND MONTH(MC.FRST_REGIST_PNTTM) = MONTH(CURRENT_DATE - INTERVAL 1 MONTH)
AND
(
MC.MSG_GROUP_ID IS NOT NULL OR MEMO = '맞춤문자 신청'
)
GROUP BY MC.USER_ID
</select>
<!-- 후불제 회원 목록 기존 소스 백업-->
<select id="userManageDAO.selectUserPrePaymentYnList_bak" parameterClass="userVO" resultClass="userVO">
SELECT SELECT
M.mberId, M.mberId,
M.autoCash, M.autoCash,
@ -1421,4 +1444,15 @@
) M ) M
</select> </select>
<select id="userManageDAO.selectUserPrePaymentPGdataCount" parameterClass="String" resultClass="Integer">
SELECT COUNT(MOID)
FROM MJ_PG
WHERE USER_ID = #userId#
AND YEAR(REG_DATE) = YEAR(CURRENT_DATE)
AND MONTH(REG_DATE) = MONTH(CURRENT_DATE)
</select>
</sqlMap> </sqlMap>

View File

@ -1439,6 +1439,23 @@ function fnMberHotlineAgentYn(){
//후불제 여부 //후불제 여부
function fnMberPrePaymentYn(prePaymentYn){ function fnMberPrePaymentYn(prePaymentYn){
var form = document.mberManageVO;
var taxbillAuto = form.taxbillAuto.value;
var sumPayMoney = '${sumPayMoney}';
//기존 결재 내역 존재 여부 확인
if(sumPayMoney > 0){
alert("회원의 결제내역 정보가 존재합니다. 확인 부탁드리겠습니다.");
return false;
}
//세금계산서 자동발행 여부 확인
if(taxbillAuto == '' || taxbillAuto == 'N'){
alert("세금계산서 자동발행의 선택이 안되어 있습니다. 확인 부탁드리겠습니다.");
return false;
}
if(confirm("후불제로 변경하시겠습니까?\n후불제로 변경하면 선불제로 변경 불가합니다.")){ if(confirm("후불제로 변경하시겠습니까?\n후불제로 변경하면 선불제로 변경 불가합니다.")){
$.ajax({ $.ajax({
@ -2965,6 +2982,7 @@ function kakaoATDelayCancel(msgGroupId){
<input type="hidden" name="rsaPasswd" id="rsaPasswd" /> <input type="hidden" name="rsaPasswd" id="rsaPasswd" />
<input type="hidden" id="RSAModulus" value="${RSAModulus}"/> <input type="hidden" id="RSAModulus" value="${RSAModulus}"/>
<input type="hidden" id="RSAExponent" value="${RSAExponent}"/> <input type="hidden" id="RSAExponent" value="${RSAExponent}"/>
<input type="hidden" id="taxbillAuto" name="taxbillAuto" value="<c:out value='${mberManageVO.taxbillAuto}'/>"/>
<div class="area_top"> <div class="area_top">
<p><span>·</span> 이용자 정보 조회</p> <p><span>·</span> 이용자 정보 조회</p>

View File

@ -75,6 +75,8 @@
<!-- Uncaught TypeError: e.widget is not a function로 인해 가장 마지막에 선언_이준호_220510 --> <!-- Uncaught TypeError: e.widget is not a function로 인해 가장 마지막에 선언_이준호_220510 -->
<script type="text/javascript" src="/dist/js/jquery_wrapper.min.js"></script> <script type="text/javascript" src="/dist/js/jquery_wrapper.min.js"></script>
<%-- 20240110 matomo 사용 안함으로 인하여 주석처리 함
<c:if test="${fn:contains(pageContext.request.requestURL, 'munjaon.co.kr')}"> <c:if test="${fn:contains(pageContext.request.requestURL, 'munjaon.co.kr')}">
<!-- Matomo --> <!-- Matomo -->
<script> <script>
@ -96,5 +98,5 @@
</script> </script>
<noscript><p><img src="https://mtm.munjaon.co.kr:9997/matomo.php?idsite=2&amp;rec=1" style="border:0;" alt="" /></p></noscript> <noscript><p><img src="https://mtm.munjaon.co.kr:9997/matomo.php?idsite=2&amp;rec=1" style="border:0;" alt="" /></p></noscript>
<!-- End Matomo Code --> <!-- End Matomo Code -->
</c:if> </c:if> --%>

View File

@ -870,7 +870,7 @@ function actionLogin() {
<tr class="moneyBack"> <tr class="moneyBack">
<th>은행명</th> <th>은행명</th>
<td> <td>
<label for="" class="label">은행명 선택</label> <label for="bankNm" class="label">은행명 선택</label>
<select id="bankNm" name="bankNm" onclick="pointLimitUnderAction()"> <select id="bankNm" name="bankNm" onclick="pointLimitUnderAction()">
<option value="">은행선택</option> <option value="">은행선택</option>
<option value="국민은행">국민은행</option> <option value="국민은행">국민은행</option>
@ -886,21 +886,21 @@ function actionLogin() {
<tr class="moneyBack"> <tr class="moneyBack">
<th>계좌번호</th> <th>계좌번호</th>
<td> <td>
<label for="" class="label">계좌번호 입력</label> <label for="accountNum" class="label">계좌번호 입력</label>
<input type="text" name="accountNum" id="accountNum" placeholder="계좌번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='새 계좌번호를 입력해주세요'"class="inputLight" style="width: 100%;" oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*)\./g, '$1');" maxlength="20" onclick="pointLimitUnderAction()"> <input type="text" name="accountNum" id="accountNum" placeholder="계좌번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='새 계좌번호를 입력해주세요'"class="inputLight" style="width: 100%;" oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*)\./g, '$1');" maxlength="20" onclick="pointLimitUnderAction()">
</td> </td>
</tr> </tr>
<tr class="moneyBack"> <tr class="moneyBack">
<th>예금주</th> <th>예금주</th>
<td> <td>
<label for="" class="label">예금주 입력</label> <label for="accountNm" class="label">예금주 입력</label>
<input type="text" name="accountNm" id="accountNm" placeholder="예금주를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='새 예금주를 입력해주세요'"class="inputLight" style="width: 100%;" maxlength="20" onclick="pointLimitUnderAction()"> <input type="text" name="accountNm" id="accountNm" placeholder="예금주를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='새 예금주를 입력해주세요'"class="inputLight" style="width: 100%;" maxlength="20" onclick="pointLimitUnderAction()">
</td> </td>
</tr> </tr>
<tr class="moneyBack"> <tr class="moneyBack">
<th>연락처</th> <th>연락처</th>
<td> <td>
<label for="" class="label">연락처 입력</label> <label for="mbtlNum" class="label">연락처 입력</label>
<input type="text" name="mbtlNum" id="mbtlNum" placeholder="-’없이 전화번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='-’없이 전화번호를 입력해주세요'"class="inputLight" style="width: 100%;" oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*)\./g, '$1');" maxlength="20" onclick="pointLimitUnderAction()"> <input type="text" name="mbtlNum" id="mbtlNum" placeholder="-’없이 전화번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='-’없이 전화번호를 입력해주세요'"class="inputLight" style="width: 100%;" oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*)\./g, '$1');" maxlength="20" onclick="pointLimitUnderAction()">
</td> </td>
</tr> </tr>
@ -915,9 +915,9 @@ function actionLogin() {
<tr> <tr>
<th>목록 노출</th> <th>목록 노출</th>
<td> <td>
<label for="point" class="label">목록 노출여부</label> <label for="screenYnY" class="label">목록 노출여부</label>
<input type="radio" name="screenYn" value="Y" checked="checked">노출 <input type="radio" id="screenYnY" name="screenYn" value="Y" checked="checked">노출
<input type="radio" name="screenYn" value="N">비노출 <input type="radio" id="screenYnN" name="screenYn" value="N">비노출
</td> </td>
</tr> </tr>
</tbody> </tbody>
@ -1419,8 +1419,8 @@ function actionLogin() {
<dt><a href="<c:out value='/web/mjon/msgcampain/selectMsgDataView.do'/>" rel="nosublink">선거문자</a></dt> <dt><a href="<c:out value='/web/mjon/msgcampain/selectMsgDataView.do'/>" rel="nosublink">선거문자</a></dt>
<dd> <dd>
<ul> <ul>
<li><a href="<c:out value='/web/mjon/msgcampain/selectMsgDataView.do'/>" rel="nosublink">단문·장문·그림문자</a></li> <li><a href="<c:out value='/web/mjon/msgcampain/selectMsgDataView.do'/>">단체문자</a></li>
<li><a href="<c:out value='/web/mjon/msgcampain/excel/selectMsgExcelDataView.do'/>">단체문자</a></li> <li><a href="<c:out value='/web/mjon/msgcampain/selectMsgTWDataView.do'/>" rel="nosublink">20건 문자</a></li>
</ul> </ul>
</dd> </dd>
</dl> </dl>
@ -1524,7 +1524,7 @@ function actionLogin() {
<li><a href="<c:out value='/web/pay/PayGuide.do'/>" rel="nosublink">요금안내/견적내기</a></li> <li><a href="<c:out value='/web/pay/PayGuide.do'/>" rel="nosublink">요금안내/견적내기</a></li>
<li><a href="<c:out value='/web/member/pay/PayView.do'/>" rel="nosublink">결제하기</a></li> <li><a href="<c:out value='/web/member/pay/PayView.do'/>" rel="nosublink">결제하기</a></li>
<li><a href="<c:out value='/web/member/pay/PayList.do'/>" rel="nosublink">요금 결제내역</a></li> <li><a href="<c:out value='/web/member/pay/PayList.do'/>" rel="nosublink">요금 결제내역</a></li>
<li><a href="<c:out value='/web/member/pay/PayUserList.do'/>" rel="nosublink">요금 사용내역</a></li> <li><a href="<c:out value='/web/member/pay/PayUserSWList.do'/>" rel="nosublink">요금 사용내역</a></li>
<!-- 현금영수증 자동발행 주석 --> <!-- 현금영수증 자동발행 주석 -->
<%-- <li><a href="<c:out value='/web/member/pay/BillPub.do'/>" rel="nosublink">계산서/현금영수증 발행 등록</a></li> --%> <%-- <li><a href="<c:out value='/web/member/pay/BillPub.do'/>" rel="nosublink">계산서/현금영수증 발행 등록</a></li> --%>
<li><a href="<c:out value='/web/member/pay/BillPub.do'/>" rel="nosublink">세금계산서 발행</a></li> <li><a href="<c:out value='/web/member/pay/BillPub.do'/>" rel="nosublink">세금계산서 발행</a></li>
@ -1635,9 +1635,16 @@ function actionLogin() {
</div> </div>
<div class="login_pay"> <div class="login_pay">
<div class="check_money"> <div class="check_money">
<div class="holdingsum_box">
<i></i> <i></i>
<fmt:formatNumber type="number" maxFractionDigits="3" value="${userMoney}" var="commaPrice" /> <fmt:formatNumber type="number" maxFractionDigits="3" value="${userMoney}" var="commaPrice" />
<p>보유잔액<em>(캐시)</em> <span class="fwMd" id="hdUserMoney"><c:out value="${commaPrice}"/></span>원</p> <p>보유잔액<em>(캐시)</em> <span class="fwMd" id="hdUserMoney"><c:out value="${commaPrice}"/></span>원</p>
<c:if test="${prePaymentYn eq 'N'}">
<dl>
<dd>후불제 고객의 보유잔액(캐시)은 당월 발송 가능<br>금액을 말하며 <span>매월 1일 자동으로 충전</span>됩니다.</dd>
</dl>
</c:if>
</div>
<button type="button" class="btnType btnType3" onclick="location.href='/web/member/pay/PayView.do'">충전</button> <button type="button" class="btnType btnType3" onclick="location.href='/web/member/pay/PayView.do'">충전</button>
<div class="account_box"> <div class="account_box">
<button type="button" class="btnType btnType3" onclick="location.href='/web/member/pay/PayView.do?tabType=2'">전용계좌</button> <button type="button" class="btnType btnType3" onclick="location.href='/web/member/pay/PayView.do?tabType=2'">전용계좌</button>

View File

@ -31,6 +31,11 @@
<meta property="og:image" content="https://www.munjaon.co.kr/publish/images/favicon/ms-icon-144x144.png"> <meta property="og:image" content="https://www.munjaon.co.kr/publish/images/favicon/ms-icon-144x144.png">
<meta property="og:url" content="https://www.munjaon.co.kr/web/main/mainPage.do"> <meta property="og:url" content="https://www.munjaon.co.kr/web/main/mainPage.do">
<c:if test="${fn:contains(pageContext.request.requestURL, '/web/pay/PayGuide.do')}">
<!-- 요금안내 화면 태그 추가 -->
<meta name="robots" content="noindex">
</c:if>
<c:choose> <c:choose>
<c:when test="${fn:contains(pageContext.request.requestURL, '/web/main/mainPage.do')}"> <c:when test="${fn:contains(pageContext.request.requestURL, '/web/main/mainPage.do')}">
<link rel="canonical" href="https://www.munjaon.co.kr/web/main/mainPage.do"> <link rel="canonical" href="https://www.munjaon.co.kr/web/main/mainPage.do">

View File

@ -114,25 +114,25 @@
<div class="input_list_item bis_status"> <div class="input_list_item bis_status">
<div class="input_left">이메일</div> <div class="input_left">이메일</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">이메일 주소 앞자리</label> <label for="emailId" class="label">이메일 주소 앞자리</label>
<input type="text" value="${fn:substringBefore(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled> <input type="text" id="emailId" value="${fn:substringBefore(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled>
<span>@</span> <span>@</span>
<label for="" class="label">이메일 주소 뒷자리</label> <label for="emailDomain" class="label">이메일 주소 뒷자리</label>
<input type="text" value="${fn:substringAfter(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled> <input type="text" id="emailDomain" value="${fn:substringAfter(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled>
</div> </div>
</div> </div>
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">휴대폰</div> <div class="input_left">휴대폰</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">휴대폰</label> <label for="moblphonNo" class="label">휴대폰</label>
<input type="text" class="list_inputType1" value="${mberManageVO.moblphonNo}" disabled> <input type="text" class="list_inputType1" id="moblphonNo" value="${mberManageVO.moblphonNo}" disabled>
</div> </div>
</div> </div>
<c:if test="${boardType ne 'suggest'}"> <c:if test="${boardType ne 'suggest'}">
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">구분</div> <div class="input_left">구분</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">구분 선택</label> <label for="bbsId" class="label">구분 선택</label>
<select class="list_selType1" name="bbsId" id="bbsId"> <select class="list_selType1" name="bbsId" id="bbsId">
<c:forEach var="result" items="${boardMenuList}" varStatus="status"> <c:forEach var="result" items="${boardMenuList}" varStatus="status">
<option value="${result.bbsId}">${result.bbsNm}</option> <option value="${result.bbsId}">${result.bbsNm}</option>
@ -147,14 +147,14 @@
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">제목</div> <div class="input_left">제목</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">문의사항 제목</label> <label for="nttSj" class="label">문의사항 제목</label>
<input type="text" name="nttSj" id="nttSj" value="" class="list_inputType1" placeholder="문의사항 제목 입력" onfocus="this.placeholder=''" onblur="this.placeholder='문의사항 제목 입력 입력'"> <input type="text" name="nttSj" id="nttSj" value="" class="list_inputType1" placeholder="문의사항 제목 입력" onfocus="this.placeholder=''" onblur="this.placeholder='문의사항 제목 입력 입력'">
</div> </div>
</div> </div>
<div class="input_list_item textWrap"> <div class="input_list_item textWrap">
<div class="input_left">내용</div> <div class="input_left">내용</div>
<div> <div>
<label for="" class="label">문의내용</label> <label for="nttCn" class="label">문의내용</label>
<form:textarea path="nttCn"/> <form:textarea path="nttCn"/>
</div> </div>
</div> </div>

View File

@ -106,27 +106,27 @@
<div class="input_list_item bis_status"> <div class="input_list_item bis_status">
<div class="input_left">이메일</div> <div class="input_left">이메일</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">이메일 주소 앞자리</label> <label for="emailId" class="label">이메일 주소 앞자리</label>
<input type="text" value="${fn:substringBefore(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled> <input type="text" id="emailId" value="${fn:substringBefore(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled>
<span>@</span> <span>@</span>
<label for="" class="label">이메일 주소 뒷자리</label> <label for="emailDomain" class="label">이메일 주소 뒷자리</label>
<input type="text" value="${fn:substringAfter(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled> <input type="text" id="emailDomain" value="${fn:substringAfter(mberManageVO.mberEmailAdres, '@')}" class="list_inputType1" disabled>
</div> </div>
</div> </div>
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">휴대폰</div> <div class="input_left">휴대폰</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">휴대폰</label> <label for="moblphonNo" class="label">휴대폰</label>
<input type="text" class="list_inputType1" value="${mberManageVO.moblphonNo}" disabled> <input type="text" id="moblphonNo" class="list_inputType1" value="${mberManageVO.moblphonNo}" disabled>
</div> </div>
</div> </div>
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">구분</div> <div class="input_left">구분</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">구분 선택</label>
<c:forEach var="result" items="${boardMenuList}" varStatus="status"> <c:forEach var="result" items="${boardMenuList}" varStatus="status">
<c:if test="${result.bbsId eq brdMstrVO.bbsId}"> <c:if test="${result.bbsId eq brdMstrVO.bbsId}">
${result.bbsNm} <label for="bbsNm" class="label">구분 선택</label>
<input type="text" id="bbsNm" class="list_inputType1" value="${result.bbsNm}" disabled>
</c:if> </c:if>
</c:forEach> </c:forEach>
</div> </div>
@ -134,14 +134,14 @@
<div class="input_list_item"> <div class="input_list_item">
<div class="input_left">제목</div> <div class="input_left">제목</div>
<div class="input_right"> <div class="input_right">
<label for="" class="label">문의사항 제목</label> <label for="nttSj" class="label">문의사항 제목</label>
<input type="text" name="nttSj" id="nttSj" value="${board.nttSj}" class="list_inputType1" placeholder="문의사항 제목 입력" onfocus="this.placeholder=''" onblur="this.placeholder='문의사항 제목 입력 입력'"> <input type="text" name="nttSj" id="nttSj" value="${board.nttSj}" class="list_inputType1" placeholder="문의사항 제목 입력" onfocus="this.placeholder=''" onblur="this.placeholder='문의사항 제목 입력 입력'">
</div> </div>
</div> </div>
<div class="input_list_item textWrap"> <div class="input_list_item textWrap">
<div class="input_left">문의내용</div> <div class="input_left">문의내용</div>
<div> <div>
<label for="" class="label">문의내용</label> <label for="nttCn" class="label">문의내용</label>
<form:textarea path="nttCn"/> <form:textarea path="nttCn"/>
</div> </div>
</div> </div>

View File

@ -123,7 +123,7 @@ function linkPage(pageNo){
<div> <div>
<div class="search_wrap clearfix"> <div class="search_wrap clearfix">
<div class="btn_left"> <div class="btn_left">
<label for="" class="label">검색조건 선택</label> <label for="searchSel" class="label">검색조건 선택</label>
<select name="searchCnd" id="searchSel" class="selType2"> <select name="searchCnd" id="searchSel" class="selType2">
<option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option> <option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option>
<option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option> <option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option>

View File

@ -161,7 +161,7 @@ function linkPage(pageNo){
<button type="button" class="btnType btnType2" onclick="javascript:linkPage('1'); return false;"><img src="/publish/images/content/searchW.png" alt="검색"></button> <button type="button" class="btnType btnType2" onclick="javascript:linkPage('1'); return false;"><img src="/publish/images/content/searchW.png" alt="검색"></button>
</div> </div>
<div class="btn_right2"> <div class="btn_right2">
<label for="searchCnd" class="label">검색조건 선택</label> <label for="searchSel" class="label">검색조건 선택</label>
<select name="searchCnd" id="searchSel" class="selType2"> <select name="searchCnd" id="searchSel" class="selType2">
<option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option> <option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option>
<option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option> <option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option>

View File

@ -161,7 +161,7 @@ function linkPage(pageNo){
<button type="button" class="btnType btnType2" onclick="javascript:linkPage('1'); return false;"><img src="/publish/images/content/searchW.png" alt="검색"></button> <button type="button" class="btnType btnType2" onclick="javascript:linkPage('1'); return false;"><img src="/publish/images/content/searchW.png" alt="검색"></button>
</div> </div>
<div class="btn_right2"> <div class="btn_right2">
<label for="searchCnd" class="label">검색조건 선택</label> <label for="searchSel" class="label">검색조건 선택</label>
<select name="searchCnd" id="searchSel" class="selType2"> <select name="searchCnd" id="searchSel" class="selType2">
<option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option> <option value="" <c:if test="${searchVO.searchCnd == ''}">selected="selected"</c:if>>전체</option>
<option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option> <option value="0" <c:if test="${searchVO.searchCnd == '0'}">selected="selected"</c:if>>제목</option>

View File

@ -16,14 +16,20 @@ $(document).ready(function (){
<c:forEach var="customList" items="${resultCustomList}" varStatus="status"> <c:forEach var="customList" items="${resultCustomList}" varStatus="status">
<li id="${customList.letterId}"> <li id="${customList.letterId}">
<c:set var="strImgPath" value="${customList.fileStreCours}/${customList.streFileNm}.${customList.fileExtsn}"/> <c:set var="strImgPath" value="${customList.fileStreCours}/${customList.streFileNm}.${customList.fileExtsn}"/>
<%-- 이미지 alt 값 셋팅 --%>
<c:set var="imgAlt" value="${customList.letterAlt}"/>
<c:if test="${empty imgAlt}">
<c:set var="imgAlt" value="맞춤제작 샘플 이미지"/>
</c:if>
<div class="hover_cont"> <div class="hover_cont">
<a ref='#' onclick='selectSampleImg("${customList.attachFileId}","${customList.fileSn}","${customList.letterId}");'> <a ref='#' onclick='selectSampleImg("${customList.attachFileId}","${customList.fileSn}","${customList.letterId}");'>
<img src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${customList.attachFileId}"/>&fileSn=<c:out value="${customList.fileSn}"/>" alt="<c:out value='${customList.letterAlt}'/>"> <img src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${customList.attachFileId}"/>&fileSn=<c:out value="${customList.fileSn}"/>" alt="<c:out value='${imgAlt}'/>">
</a> </a>
</div> </div>
<div class="photo_cont"> <div class="photo_cont">
<a ref='#' onclick='selectSampleImg("${customList.attachFileId}","${customList.fileSn}","${customList.letterId}");'> <a ref='#' onclick='selectSampleImg("${customList.attachFileId}","${customList.fileSn}","${customList.letterId}");'>
<img src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${customList.attachFileId}"/>&fileSn=<c:out value="${customList.fileSn}"/>" alt="<c:out value='${customList.letterAlt}'/>"> <img src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${customList.attachFileId}"/>&fileSn=<c:out value="${customList.fileSn}"/>" alt="<c:out value='${imgAlt}'/>">
</a> </a>
</div> </div>
</li> </li>

View File

@ -732,8 +732,8 @@ $(document).on('click', '.symbolButton, .changeWord', function (){
<div class="top_content kakaotalkset_cont current pay_tab_wrap"> <div class="top_content kakaotalkset_cont current pay_tab_wrap">
<div class="heading"> <div class="heading">
<h2>카카오톡 설정</h2> <h2>카카오톡 설정</h2>
<button type="button" class="button info" <%-- <button type="button" class="button info" onclick="window.open('popup_kakaoset_template.html','_blank','width=790, height=300, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbars=yes')">사용안내</button> --%>
onclick="window.open('popup_kakaoset_template.html','_blank','width=790, height=300, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbars=yes')">사용안내</button> <button type="button" class="button info" onclick="window.open('/web/pop/kakaoTemplatePop.do','_blank','width=790, height=300, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbars=yes')">사용안내</button>
</div> </div>
<div class="list_tab_wrap2 type2 "> <div class="list_tab_wrap2 type2 ">
<!-- tab button --> <!-- tab button -->

View File

@ -1499,7 +1499,7 @@ function fn_click_banner_add_stat(bannerMenuCode){
<div class="inner"> <div class="inner">
<!-- <p class="tit_text">이런 문자 어때요?</p> --> <!-- <p class="tit_text">이런 문자 어때요?</p> -->
<p class="tit_text">이런 단체문자, 대량문자 샘플 어때요?</p> <p class="tit_text">이런 단체문자, 대량문자 샘플 어때요?</p>
<p class="sub_text">단체문자, 대량문자, 경조문자, 부고문자, 광고문자, 홍보문자, 조문문자, 결혼문자, 예약문자, 사진문자, 그림문자, SMS, LMS, MMS, 병원문자, 위로문자, 응원문자, 행사문자, 기념일문자, 웹문자, 인터넷문자, 문자사이트, 답례문자, 그룹문자 등 다양한 샘플 무료 제공</p> <!-- <p class="sub_text">단체문자, 대량문자, 경조문자, 부고문자, 광고문자, 홍보문자, 조문문자, 결혼문자, 예약문자, 사진문자, 그림문자, SMS, LMS, MMS, 병원문자, 위로문자, 응원문자, 행사문자, 기념일문자, 웹문자, 인터넷문자, 문자사이트, 답례문자, 그룹문자 등 다양한 샘플 무료 제공</p> -->
<div class="tabs"> <div class="tabs">
<!-- Default tab_depth1 - 전체 / tab_depth2 - 인기그림문자 / tab_depth3 - BEST --> <!-- Default tab_depth1 - 전체 / tab_depth2 - 인기그림문자 / tab_depth3 - BEST -->
<!-- <div class="tab_depth1 tDep2_mType"> <!-- <div class="tab_depth1 tDep2_mType">

View File

@ -3259,7 +3259,7 @@ function getMjMsgSentListAll(pageNo) {
<div class="tooltip-wrap"> <div class="tooltip-wrap">
<div class="popup-com candidate_layer candidate_popup01" tabindex="0" data-tooltip-con="candidate_popup01" data-focus="candidate_popup01" data-focus-prev="candidate_popup01-close" style="width: 620px;"> <div class="popup-com candidate_layer candidate_popup01" tabindex="0" data-tooltip-con="candidate_popup01" data-focus="candidate_popup01" data-focus-prev="candidate_popup01-close" style="width: 620px;">
<div class="popup_heading"> <div class="popup_heading">
<p>후보자 등록정보</p> <p>후보자 등록</p>
<button type="button" class="tooltip-close" data-focus="candidate_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> <button type="button" class="tooltip-close" data-focus="candidate_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div> </div>

View File

@ -21,8 +21,13 @@
--%> --%>
</div> </div>
<div class="photo_cont"> <div class="photo_cont">
<%-- 이미지 alt 값 셋팅 --%>
<c:set var="imgAlt" value="${photoList.letterAlt}"/>
<c:if test="${empty imgAlt}">
<c:set var="imgAlt" value="선거문자 샘플 이미지"/>
</c:if>
<%-- <img class="photoOnImg" src="<c:url value='${strImgPath}'/>" alt=""> --%> <%-- <img class="photoOnImg" src="<c:url value='${strImgPath}'/>" alt=""> --%>
<img class="photoOnImg" id="${photoList.letterId}" src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${photoList.letterAlt}'/>"> <img class="photoOnImg" id="${photoList.letterId}" src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${imgAlt}'/>">
<input type="hidden" id="photoOnImg_${status.index + 1}" name="photoOnImg_${status.index + 1}" value="${photoList.attachFileId}"/> <input type="hidden" id="photoOnImg_${status.index + 1}" name="photoOnImg_${status.index + 1}" value="${photoList.attachFileId}"/>
</div> </div>
</li> </li>

View File

@ -3489,7 +3489,7 @@ function getMjMsgSentListAll(pageNo) {
<div class="tooltip-wrap"> <div class="tooltip-wrap">
<div class="popup-com candidate_layer candidate_popup01" tabindex="0" data-tooltip-con="candidate_popup01" data-focus="candidate_popup01" data-focus-prev="candidate_popup01-close" style="width: 620px;"> <div class="popup-com candidate_layer candidate_popup01" tabindex="0" data-tooltip-con="candidate_popup01" data-focus="candidate_popup01" data-focus-prev="candidate_popup01-close" style="width: 620px;">
<div class="popup_heading"> <div class="popup_heading">
<p>후보자 등록정보</p> <p>후보자 등록</p>
<button type="button" class="tooltip-close" data-focus="candidate_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> <button type="button" class="tooltip-close" data-focus="candidate_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div> </div>
@ -3817,28 +3817,29 @@ function getMjMsgSentListAll(pageNo) {
</div> </div>
<!--// 주소록에 등록 팝업 --> <!--// 주소록에 등록 팝업 -->
<!--선거문자 이용안내 팝업 --> <!--선거 20건문자 이용안내 팝업 추가 -->
<div class="tooltip-wrap"> <div class="tooltip-wrap tw_wrap ">
<div class="popup-com ad_layer candidate_popup03" tabindex="0" data-tooltip-con="candidate_popup03" data-focus="candidate_popup03" data-focus-prev="candidate_popup03-close" style="width: 795px"> <div class="popup-com ad_layer candidate_popup03" tabindex="0" data-tooltip-con="candidate_popup03" data-focus="candidate_popup03" data-focus-prev="candidate_popup03-close" style="width: 795px">
<div class="popup_heading"> <div class="popup_heading">
<p>선거문자 안내</p> <p>20건 문자(수동문자) 이용안내</p>
<button type="button" class="tooltip-close" data-focus="candidate_popup03-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> <button type="button" class="tooltip-close" data-focus="candidate_popup03-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div> </div>
<div class="layer_in"> <div class="layer_in">
<img src="/publish/images/content/candidatePop_banner.png" alt="선거문자 이용안내 배너" class="candidate_banner"> <img src="/publish/images/popup/tw_popup/tw_banner.png" alt="문자온에서 후보님의 당선을 지원합니다. 20건 문자(수동문자) 이용안내" class="candidate_banner">
<ul class="info_list"> <ul class="info_list">
<li>- 90byte 초과 시, 자동으로 장문으로 전환됩니다. 장문 문자는 최대 2,000byte까지만 작성할 수 있습니다.</li> <li>- 90byte 초과 시, 자동으로 장문으로 전환됩니다. 장문 문자는 최대 2,000byte까지만 작성할 수 있습니다.</li>
<li>- 그림문자 1건당 최대 3장까지 이미지 첨부 가능 [권장 사이즈 : <strong>640 x 960</strong>픽셀 / 최대용량 : <strong>10MB</strong> 이내]</li> <li>- 그림문자 1건당 최대 3장까지 이미지 첨부 가능 [권장 사이즈 : <strong>640 x 960</strong>픽셀 / 최대용량 : <strong>10MB</strong> 이내]</li>
<li>- 광고성 메시지는 <span>반드시 아래 유의사항을 사전 확인</span> 후 발송해 주시기 바랍니다.</li>
</ul> </ul>
<!-- 이용방법/혜택 --> <!-- 이용방법/혜택 -->
<div class="cdpop_cont current" id="listTab2_1"> <div class="cdpop_cont current" id="listTab2_1">
<div> <div class="con">
<p class="cdpop_title"> <p class="cdpop_title">
<i class="cdpop_title_icon1"></i>선거문자 이용방법 <i class="tw_title01_icon"></i>20건 문자 이용절차
<!--
<span class="customReq"> <span class="customReq">
<button type="button" onclick="goToCustom();"><i></i>선거문자 맞춤제작</button> <button type="button" onclick="goToCustom();"><i></i>선거문자 맞춤제작</button>
</span> </span>
-->
</p> </p>
<ul class="cdpop_info"> <ul class="cdpop_info">
<li> <li>
@ -3879,80 +3880,86 @@ function getMjMsgSentListAll(pageNo) {
</li> </li>
</ul> </ul>
</div> </div>
<div> <div class="con">
<p class="cdpop_title"><i class="cdpop_title_icon2"></i>문자온 선거문자만의 장점 및 혜택</p> <p class="cdpop_title tw_title"><i class="tw_title02_icon"></i>후보자 등록 방법</p>
<ul class="cdpop_benefit"> <div class="tw_con">
<li> <ul>
<div> <li>- 선거관리위원회에 등록된 후보자 정보와 세금계산서 담당자 정보를 입력합니다.</li>
<i class="benefit1"></i> <li class="sub_te">세금계산서 발행을 위한 정보로만 사용됩니다.</li>
<p>한 번에 대량으로 보내야 한다면?<span>10만건까지 동시 전송 가능</span></p> </ul>
<img src="/publish/images/popup/tw_popup/tw_con_01.jpg" alt="받는 사람 목록 불러오기">
</div> </div>
<p>문자온의 대량전송(엑셀·TXT) 모듈을 통해 </div>
10만건의 대량문자도 쉽고 빠르게 전송 가능합니다.</p> <div class="con">
<p class="cdpop_title tw_title"><i class="tw_title03_icon"></i>받는 사람 목록 불러오기</p>
<div class="tw_con">
<ul>
<li>- 주소록 관리 메뉴에서 등록한 주소록을 불러오거나 PC에 저장된 엑셀 파일을 불러올 수 있습니다.</li>
<li>- 주소록 불러오기
<ul class="sub_li">
<li>① 그룹을 선택합니다.</li>
<li>② 체크박스 개별 또는 전체 선택을 통해 받는 사람 목록을 선택합니다.</li>
<li>③ 추가 버튼을 클릭합니다.</li>
</ul>
</li> </li>
<li> <li class="li_02">- 엑셀 불러오기
<div> <ul class="sub_li">
<i class="benefit2"></i> <li>① 찾아보기를 클릭하여 불러올 엑셀 파일을 선택합니다.</li>
<p>수신거부 번호가 필요하세요?<span>080 수신거부 번호 무료제공</span></p> <li>② 추가 버튼을 클릭합니다.</li>
</div> </ul>
<p>선거문자 발송규정 준수를 위해
080 수신거부 번호를 무료로 제공해 드립니다.</p>
</li>
<li>
<div>
<i class="benefit3"></i>
<p>주소록 등록이 번거로우신가요?<span>주소록 등록 무료대행</span></p>
</div>
<p>주소록 등록파일(엑셀·TXT)을 문자온에 제공해
주시면 무료로 빠르고 신속하게 등록해 드립니다.</p>
</li>
<li>
<div>
<i class="benefit4"></i>
<p>홍보효과를 높이고 싶다면?<span>후보자만의 그림문자 맞춤제작</span></p>
</div>
<p>선거공약, 인사말, 후보자 사진 등을 넣어 그림문자를
맞춤 제작하여 홍보효과를 극대화할 수 있습니다.</p>
</li>
<li>
<div>
<i class="benefit5"></i>
<p>오류·실패건의 문자를 보상받고 싶다면?<span>오류·실패건 문자 100% 환불</span></p>
</div>
<p>번호오류, 수신거부, 수신실패 등으로 인해 문자전송이
실패한 경우 100% 환불(자동충전)해 드립니다.</p>
</li>
<li>
<div>
<i class="benefit6 "></i>
<p>전송결과가 궁금하다면?<span>실시간 전송결과 확인 가능</span></p>
</div>
<p>전송결과 및 실패사유를 실시간으로 제공해드립니다.</p>
</li>
<li>
<div>
<i class="benefit7"></i>
<p>20건씩 나눠서 보내야한다면?<span>20건씩 분할 예약 전송 가능</span></p>
</div>
<p>누구나 쉽고 편리하게 20건씩 나눠서 분할 전송이 가능합니다.</p>
</li>
<li>
<div>
<i class="benefit8"></i>
<p>필요한 서류가 있다면?<span>문자온에서 간편하게 신청 가능</span></p>
</div>
<p>문자온에서 발송내역서 출력이 가능하며,
세금계산서는 메일로 자동으로 발행됩니다.</p>
</li> </li>
</ul> </ul>
<img src="/publish/images/popup/tw_popup/tw_con_02.jpg" alt="받는 사람 목록 불러오기 1">
<ul>
<li class="te">- 받는 사람 목록 선택이 완료되면 20건 씩 받는 사람을 선택할 수 있도록 화면에 표시되며, 불러온 받는 사람 목록 전체에 대한 전체 받는사람 수, 전송완료 수, 잔여 받는사람 수를 확인할 수 있습니다.</li>
<li class="sub_te">불러온 받는 사람 목록은 재접속, 재로그인 시에도 유지되오니 목록을 삭제하고 싶은 경우에는<br>초기화 버튼을 눌러주세요.</li>
</ul>
<img src="/publish/images/popup/tw_popup/tw_con_03.jpg" alt="받는 사람 목록 불러오기 2">
</div> </div>
</div><!--// 이용방법/혜택 --> </div>
<div class="con">
<p class="cdpop_title tw_title"><i class="tw_title04_icon"></i>20명 수동 선택 후 발송하기</p>
<div class="tw_con">
<ul>
<li>- 수동 선택 방법 (4가지 방법 가능)
<ul class="sub_li">
<li>① 체크박스를 하나씩 차례로 선택</li>
<li>② 받는 사람 목록 전화번호 위에서 마우스 왼쪽을 길게 누르고 드래그하여 영역 선택</li>
<li>③ 1명씩 선택 버튼을 계속 누르고 있으면 20명이 모두 선택</li>
<li>④ 전체버튼을 누르면 20명이 한번에 선택</li>
</ul>
</li>
<li class="te" style="margin-top: 10px;">
- 발송하기 버튼을 클릭하면 선택한 20건 문자가 발송되고 받는 사람 목록에 있는 다음 20건이 자동으로 화면에 표시됩니다.
</li>
</ul>
<img src="/publish/images/popup/tw_popup/tw_con_04.jpg" alt="20명 수동 선택 후 발송하기">
</div>
</div>
<div class="con">
<p class="cdpop_title tw_title"><i class="tw_title05_icon"></i>예약문자 발송하기</p>
<div class="tw_con">
<ul>
<li class="te">- 선택한 20건 문자의 발송이 예약되고, 받는 사람 목록에 있는 다음 20건이 자동으로 화면에 표시됩니다.
<ul class="sub_li" style="margin-top: 5px;">
<li>① 예약 라디오 버튼을 클릭합니다.</li>
<li>② 예약일자 및 시간을 선택합니다.</li>
<li>③ 예약하기 버튼을 클릭합니다.</li>
</ul>
</li>
</ul>
<img src="/publish/images/popup/tw_popup/tw_con_05.jpg" alt="예약문자 발송하기" style="margin-bottom: 0;">
</div>
</div>
</div>
<!--// 이용방법/혜택 -->
</div> </div>
<div class="popup_btn_wrap2" style="margin: 0 auto 30px auto;"> <div class="popup_btn_wrap2" style="margin: 0 auto 30px auto;">
<button type="button" class="tooltip-close" data-focus="candidate_popup03-close" data-focus-next="candidate_popup03">닫기</button> <button type="button" class="tooltip-close" data-focus="candidate_popup03-close" data-focus-next="candidate_popup03">닫기</button>
</div> </div>
</div> </div>
</div><!--// 선거문자 이용안내 팝업 --> </div>
<!--//선거 20건문자 이용안내 팝업 추가 -->
<!-- 이벤트 잔여 캐시 정보 표시 팝업 --> <!-- 이벤트 잔여 캐시 정보 표시 팝업 -->
<div class="tooltip-wrap"> <div class="tooltip-wrap">
@ -4072,7 +4079,7 @@ function getMjMsgSentListAll(pageNo) {
<h2>20건 문자(수동문자) 전송</h2> <h2>20건 문자(수동문자) 전송</h2>
<div class="election_btnWrap"> <div class="election_btnWrap">
<button type="button" class="button2 info" onclick="infoPop('selectMsgDataView2');">발송규정</button> <button type="button" class="button2 info" onclick="infoPop('selectMsgDataView2');">발송규정</button>
<!-- <button type="button" class="button2 info" data-tooltip="candidate_popup03">사용안내</button> --> <button type="button" class="button2 info" data-tooltip="candidate_popup03">사용안내</button>
<c:choose> <c:choose>
<c:when test="${empty LoginVO}"> <c:when test="${empty LoginVO}">
<button type="button" class="btnType" onclick="javascript:fn_candidateLoginChk(); return false;"><i class="election_btn1"></i>후보자 등록</button> <button type="button" class="btnType" onclick="javascript:fn_candidateLoginChk(); return false;"><i class="election_btn1"></i>후보자 등록</button>

View File

@ -66,11 +66,15 @@ $(document).ready(function(){
<div class="btn_more"><img src="/publish/images/main/btn_more01.png" alt="" /></div> <div class="btn_more"><img src="/publish/images/main/btn_more01.png" alt="" /></div>
<div class="area_img"> <div class="area_img">
<%-- <img src="${strImgPath}" alt="" onerror="this.src='/publish/images/main/template02.jpg';"> --%> <%-- <img src="${strImgPath}" alt="" onerror="this.src='/publish/images/main/template02.jpg';"> --%>
<img class="lazy" data-src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${photoList.letterAlt}'/>" onerror="this.src='/publish/images/main/template02.jpg';"> <c:set var="imgAlt" value="${photoList.letterAlt}"/>
<c:if test="${empty imgAlt}">
<c:set var="imgAlt" value="그림문자 샘플 이미지"/>
</c:if>
<img class="lazy" data-src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${imgAlt}'/>" onerror="this.src='/publish/images/main/template02.jpg';">
</div> </div>
<div class="area_img_text"> <div class="area_img_text">
<c:out value="${photoList.letterSj}"/> <c:out value="${photoList.letterSj}"/>
<p class="sub_text"><c:out value="${msgKeywordSample}"/></p> <!--<p class="sub_text"><c:out value="${msgKeywordSample}"/></p>-->
</div> </div>
</div> </div>
</div> </div>

View File

@ -21,8 +21,12 @@
--%> --%>
</div> </div>
<div class="photo_cont"> <div class="photo_cont">
<c:set var="imgAlt" value="${photoList.letterAlt}"/>
<c:if test="${empty imgAlt}">
<c:set var="imgAlt" value="그림문자 샘플 이미지"/>
</c:if>
<%-- <img class="photoOnImg" src="<c:url value='${strImgPath}'/>" alt=""> --%> <%-- <img class="photoOnImg" src="<c:url value='${strImgPath}'/>" alt=""> --%>
<img class="photoOnImg" id="${photoList.letterId}" src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${photoList.letterAlt}'/>"> <img class="photoOnImg" id="${photoList.letterId}" src="<c:url value='/cmm/fms/getImage2.do'/>?atchFileId=<c:out value="${photoList.attachFileId}"/>&fileSn=<c:out value="${photoList.fileSn}"/>" alt="<c:out value='${imgAlt}'/>">
<input type="hidden" id="photoOnImg_${status.index + 1}" name="photoOnImg_${status.index + 1}" value="${photoList.attachFileId}"/> <input type="hidden" id="photoOnImg_${status.index + 1}" name="photoOnImg_${status.index + 1}" value="${photoList.attachFileId}"/>
</div> </div>
</li> </li>

View File

@ -23,6 +23,7 @@
<script type="text/javaScript" language="javascript"> <script type="text/javaScript" language="javascript">
$( document ).ready(function() { $( document ).ready(function() {
//현금영수증 사업자번호 넣어주기 //현금영수증 사업자번호 넣어주기
if("${mberManageVO.cashbillBizNo}" != ""){ if("${mberManageVO.cashbillBizNo}" != ""){
//사업자번호 - 넣어주기 //사업자번호 - 넣어주기
@ -452,6 +453,10 @@
$(window).on('load',function(){ $(window).on('load',function(){
$('.bill_content_wrap .bill_content').eq(0).show(); $('.bill_content_wrap .bill_content').eq(0).show();
var billDept = $("input[name=billDepth]:checked");
billDepth(billDept);
}); });
function billDepth(obj){ function billDepth(obj){
@ -490,7 +495,7 @@
<li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserList.do'">요금 사용내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserSWList.do'">요금 사용내역</button></li>
<!-- <li class="tab active"><button type="button">계산서/현금영수증 발행 등록</button></li> --> <!-- <li class="tab active"><button type="button">계산서/현금영수증 발행 등록</button></li> -->
<li class="tab active"><button type="button">세금계산서 발행 등록</button></li> <li class="tab active"><button type="button">세금계산서 발행 등록</button></li>
</ul><!--// tab button --> </ul><!--// tab button -->
@ -505,8 +510,8 @@
<div class="pay_cont current" id="tab1_1"> <div class="pay_cont current" id="tab1_1">
<div class="bill_tab"> <div class="bill_tab">
<ul> <ul>
<li><input type="radio" name="billDepth" id="billDepth1" checked="checked" onchange="billDepth(this);" value="biz" /><label for="billDepth1">기업</label></li> <li><input type="radio" name="billDepth" id="billDepth1" <c:if test="${mberManageVO.taxbillAuto eq 'B'}">checked="checked"</c:if> onchange="billDepth(this);" value="biz" /><label for="billDepth1">기업</label></li>
<li><input type="radio" name="billDepth" id="billDepth2" onchange="billDepth(this);" value="regi" /><label for="billDepth2">개인</label></li> <li><input type="radio" name="billDepth" id="billDepth2" <c:if test="${mberManageVO.taxbillAuto eq 'C'}">checked="checked"</c:if> onchange="billDepth(this);" value="regi" /><label for="billDepth2">개인</label></li>
</ul> </ul>
<p>* 자동 발행은 기업/개인 중에 한 곳만 가능합니다.</p> <p>* 자동 발행은 기업/개인 중에 한 곳만 가능합니다.</p>
</div> </div>

View File

@ -127,7 +127,14 @@ function f_print(){
</div> </div>
<div class="cont2 clearfix"> <div class="cont2 clearfix">
<p>총 사용금액</p> <p>총 사용금액</p>
<c:choose>
<c:when test="${searchVO.addVatType eq 'N'}">
<p><span>${totalSumPrice}</span> 원(VAT 별도)</p> <p><span>${totalSumPrice}</span> 원(VAT 별도)</p>
</c:when>
<c:otherwise>
<p><span>${addTaxSumPrice}</span> 원(VAT 포함)</p>
</c:otherwise>
</c:choose>
</div> </div>
<div class="cont3"> <div class="cont3">
<p>(단위 : 원, 건)</p> <p>(단위 : 원, 건)</p>
@ -194,7 +201,7 @@ function f_print(){
<c:otherwise> <c:otherwise>
<tr> <tr>
<td colspan="5"> <td colspan="5">
<spring:message code="common.nodata.msg" /> 거래내역이 없습니다.
</td> </td>
</tr> </tr>
</c:otherwise> </c:otherwise>
@ -207,18 +214,32 @@ function f_print(){
<table class="est_table"> <table class="est_table">
<caption>공급가액, 총 결제금액에 대한 표</caption> <caption>공급가액, 총 결제금액에 대한 표</caption>
<colgroup> <colgroup>
<col style="width: 64px;"> <col style="width: 100px;">
<col style="width: auto;"> <col style="width: auto;">
</colgroup> </colgroup>
<tbody> <tbody>
<tr> <tr>
<th>공급가액</th> <th>공급가액</th>
<td><span>${supplySumPrice}</span></td> <td><span>${supplySumPrice}</span></td>
</tr> </tr>
<c:choose>
<c:when test="${searchVO.addVatType eq 'N'}">
<tr class="total_price">
<th>총 사용금액</th>
<td><span>${totalSumPrice}</span></td>
</tr>
</c:when>
<c:otherwise>
<tr> <tr>
<th>총 결제금액</th> <th>세액(부가세)</th>
<td><span>${totalSumPrice}</span> 원</td> <td>${addTax}</td>
</tr> </tr>
<tr class="total_price">
<th>총 사용금액</th>
<td><span>${addTaxSumPrice}</span></td>
</tr>
</c:otherwise>
</c:choose>
</tbody> </tbody>
</table> </table>
</div> </div>

View File

@ -85,7 +85,14 @@ function f_print(){
</div> </div>
<div class="cont2 clearfix"> <div class="cont2 clearfix">
<p>총 사용금액</p> <p>총 사용금액</p>
<c:choose>
<c:when test="${searchVO.addVatType eq 'N'}">
<p><span>${totalSumPrice}</span> 원(VAT 별도)</p> <p><span>${totalSumPrice}</span> 원(VAT 별도)</p>
</c:when>
<c:otherwise>
<p><span>${addTaxSumPrice}</span> 원(VAT 포함)</p>
</c:otherwise>
</c:choose>
</div> </div>
<div class="cont3"> <div class="cont3">
<p>(단위 : 원, 건)</p> <p>(단위 : 원, 건)</p>
@ -149,23 +156,10 @@ function f_print(){
</tr> </tr>
</c:forEach> </c:forEach>
</c:when> </c:when>
<c:otherwise>
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${not empty resultList}">
<tr class="total_price">
<td>계</td>
<td>${sendSumCount}</td>
<td>${supplySumPrice}</td>
<td>${totalSumPrice}</td>
</tr>
</c:when>
<c:otherwise> <c:otherwise>
<tr> <tr>
<td colspan="5"> <td colspan="4">
<spring:message code="common.nodata.msg" /> 사용내역이 없습니다.
</td> </td>
</tr> </tr>
</c:otherwise> </c:otherwise>
@ -174,6 +168,51 @@ function f_print(){
</table> </table>
</div> </div>
</div> </div>
<div class="cont4">
<table class="est_table">
<caption>공급가액, 총 결제금액에 대한 표</caption>
<colgroup>
<col style="width: 100px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>공급가액</th>
<td><span>${supplySumPrice}</span></td>
</tr>
<c:choose>
<c:when test="${not empty resultList}">
<c:choose>
<c:when test="${searchVO.addVatType eq 'N'}">
<tr class="total_price">
<th>총 사용금액</th>
<td><span>${totalSumPrice}</span></td>
</tr>
</c:when>
<c:otherwise>
<tr>
<th>세액(부가세)</th>
<td>${addTax}</td>
</tr>
<tr class="total_price">
<th>총 사용금액</th>
<td><span>${addTaxSumPrice}</span></td>
</tr>
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<tr>
<td colspan="5">
사용내역이 없습니다.
</td>
</tr>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
<div class="cont5"> <div class="cont5">
<p><span>${year} 년&nbsp;&nbsp;<span>${month}</span> 월&nbsp;&nbsp;<span>${day}</span> 일</p> <p><span>${year} 년&nbsp;&nbsp;<span>${month}</span> 월&nbsp;&nbsp;<span>${day}</span> 일</p>
<div> <div>

View File

@ -405,7 +405,7 @@ function getMberGrdChk() {
<li class="tab active"><button type="button">요금안내/견적내기</button></li> <li class="tab active"><button type="button">요금안내/견적내기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserList.do'">요금 사용내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserSWList.do'">요금 사용내역</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li>
</ul> </ul>
<!--// tab button --> <!--// tab button -->

View File

@ -19,7 +19,7 @@ $(document).ready(function(){
//이전달 첫날/마지막날 조회 //이전달 첫날/마지막날 조회
if(date.getMonth()+1 == 1){ if(date.getMonth()+1 == 1){
lastfulstday = date.getFullYear()-1 + "/12" + "/01"; lastfulstday = date.getFullYear()-1 + "/12" + "/01";
lastfuledday = date.getFullYear()-1 + "/12" + "/"+new Date(date.getFullYear()-1, 12, 0); lastfuledday = date.getFullYear()-1 + "/12" + "/"+new Date(date.getFullYear()-1, 12, 0).getDate()+"";
}else{ }else{
lastfulstday = date.getFullYear() + "/" ; lastfulstday = date.getFullYear() + "/" ;
lastfulstday += date.getMonth() < 10 ? "0"+ (date.getMonth()) : date.getMonth()+"" ; lastfulstday += date.getMonth() < 10 ? "0"+ (date.getMonth()) : date.getMonth()+"" ;
@ -171,7 +171,7 @@ function fnShowRefundPrintPopup(){
<li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayView.do'">결제하기</button></li>
<li class="tab active"><button type="button" >요금 결제내역</button></li> <li class="tab active"><button type="button" >요금 결제내역</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserList.do'">요금 사용내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserSWList.do'">요금 사용내역</button></li>
<!-- 현금영수증 자동발행 주석 --> <!-- 현금영수증 자동발행 주석 -->
<!-- <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">계산서/현금영수증 발행 등록</button></li> --> <!-- <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">계산서/현금영수증 발행 등록</button></li> -->
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li>
@ -199,7 +199,7 @@ function fnShowRefundPrintPopup(){
</c:when> </c:when>
<c:otherwise> <c:otherwise>
<ul class="tabType1"> <ul class="tabType1">
<li class="tab active"><button type="button" onclick="TabType5(this,'1');listLoad('/web/member/pay/PayListAllAjax.do'); return false;" >전체</button></li> <li class="tab active"><button type="button" onclick="TabType5(this,'1');listLoad('/web/member/pay/PayListAllAjax.do'); return false;" >후불 결제내역</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'6');listLoad('/web/member/pay/PayListPointAjax.do'); return false;">포인트 교환내역</button></li> <li class="tab"><button type="button" onclick="TabType5(this,'6');listLoad('/web/member/pay/PayListPointAjax.do'); return false;">포인트 교환내역</button></li>
</ul> </ul>
</c:otherwise> </c:otherwise>

View File

@ -153,16 +153,18 @@ function taxValue(moid){
var cashRegNo = ""; var cashRegNo = "";
var frm = document.taxForm; var frm = document.taxForm;
var bizOrRegi = $("input:radio[name=bizOrRegi]:checked").val(); var bizOrRegi = $("input:radio[name=bizOrRegi]:checked").val();
var taxbillAuto = '${mberManageVO.taxbillAuto}'; //자동발행 여부 체크
//담당자명이 없으면 세금계산서 발행등록 메뉴로 보냄 //담당자명이 없으면 세금계산서 발행등록 메뉴로 보냄
if(taxMngNm == '') { if(taxMngNm == '') {
alert("세금계산서 발행 정보를 입력하는 화면으로 이동합니다."); alert("세금계산서 발행 정보를 입력하는 화면으로 이동합니다.");
location.href = "/web/member/pay/BillPub.do"; location.href = "/web/member/pay/BillPub.do";
} }
//최초 레이어 오픈 시 작동 //최초 레이어 오픈 시 작동
//if(bizOrRegi === undefined) { //자동발행 저장하지 않았을 경우만 처리하도록 함 20231228 우영두 수정
//자동발행 저장하였을 경우 자동발행 저장된 기업/개인 라디오버튼이 선택 되도록 함.
if(taxbillAuto == 'N') {
if(taxBizNo != "") { if(taxBizNo != "") {
bizOrRegi = "biz"; bizOrRegi = "biz";
$("input[type=radio][value='biz']").prop("checked",true); $("input[type=radio][value='biz']").prop("checked",true);
@ -170,7 +172,7 @@ function taxValue(moid){
bizOrRegi = "regi"; bizOrRegi = "regi";
$("input[type=radio][value='regi']").prop("checked",true); $("input[type=radio][value='regi']").prop("checked",true);
} }
//} }
if(bizOrRegi == "biz"){ if(bizOrRegi == "biz"){
//사업자번호 공란인 경우 //사업자번호 공란인 경우
@ -205,6 +207,16 @@ function taxValue(moid){
frm.rcptType.value = "9"; frm.rcptType.value = "9";
frm.phone.value = "${mberManageVO.taxMngPhoneNum}"; frm.phone.value = "${mberManageVO.taxMngPhoneNum}";
frm.email.value = "${mberManageVO.taxMngEmail}"; frm.email.value = "${mberManageVO.taxMngEmail}";
if(bizOrRegi == "biz") {
$(".biz").show();
$(".regi").hide();
}
if(bizOrRegi == "regi") {
$(".biz").hide();
$(".regi").show();
}
} }
//현금영수증 value 넣기 //현금영수증 value 넣기
@ -390,10 +402,19 @@ function getMberGrdChk() {
</table> </table>
<div class="excel_middle"> <div class="excel_middle">
<div class="select_btnWrap clearfix"> <div class="select_btnWrap clearfix">
<div class="add_text2" style="line-height: 1.2em;"> <div class="add_text2" style="line-height: 1.3em;">
※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회가능합니다. ※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회가능합니다.
<br /> <br />
<c:choose>
<c:when test="${prePaymentYn eq 'Y'}">
※ 간편결제 영수증은 결제하신 서비스를 통해 제공됩니다. ※ 간편결제 영수증은 결제하신 서비스를 통해 제공됩니다.
</c:when>
<c:otherwise>
※ 후불제 고객의 사용금액 결제수단은 계좌이체만 가능합니다. <br />
※ 세금계산서 발행 후 매월 15일(공휴일인 경우 다음 영업일) 이전까지 아래 계좌로 입금 부탁드립니다.<br />
<p class="accountinfo"><span>-입금은행:</span>우리은행<span>-입금계좌:</span>1005-904-154328<span>-받는사람:</span>주식회사 아이티앤</p>
</c:otherwise>
</c:choose>
</div> </div>
<div style="padding-top: 10px;"> <div style="padding-top: 10px;">
<button type="button" class="level_btn" data-tooltip="level_check_popup01" id="levelIconBtn" style="display: none;"> <button type="button" class="level_btn" data-tooltip="level_check_popup01" id="levelIconBtn" style="display: none;">
@ -558,6 +579,58 @@ function getMberGrdChk() {
</c:if> </c:if>
</c:when> </c:when>
<c:otherwise> <c:otherwise>
<c:if test="${result.pgStatus eq '0'}">
<!-- 후불제 회원 입금대기 상태인 경우 처리 -->
<!-- 세금계산서 발행 전 (자동발행 안되어 있는 경우) 세금계산서 버튼 노출 -->
<c:if test="${result.confirmYn eq null || result.confirmYn eq ''}">
<button type="button" class="btnType btnType20" data-tooltip="cashReceipt_popup02" onclick="javascript:taxValue('${result.moid}');">세금계산서</button>
</c:if>
<!-- 발행대기 -->
<c:if test="${result.confirmYn eq 'N'}">
<c:if test="${result.rcptType eq '9'}">
<p class="fwRg c_002c9a">세금계산서 발행대기</p>
</c:if>
<c:if test="${result.rcptType eq '1' || result.rcptType eq '2'}">
<p class="fwRg c_002c9a">현금영수증 발행대기</p>
</c:if>
<c:if test="${result.rcptType eq '5'}">
<p class="fwRg c_002c9a">관리자 현금영수증 발행대기</p>
</c:if>
<!-- 의무발생일경우 -->
<c:if test="${result.rcptType eq '3'}">
<c:if test="${result.payMethod eq 'BANK' or result.payMethod eq 'VBANK'}">
<c:if test="${result.btnChk eq 'Y'}">
<button type="button" class="btnType btnType20" data-tooltip="cashReceipt_popup02" onclick="javascript:taxValue('${result.moid}');">세금계산서</button>
<button type="button" class="btnType btnType20" data-tooltip="cashReceipt_popup01" onclick="javascript:cashValue('${result.moid}');">현금영수증</button>
</c:if>
<%-- <button type="button" class="btnType btnType20" onclick="fnSimpRecip('<c:out value="${result.tid}"/>','<c:out value="${result.moid}"/>'); return false;">간이영수증</button> --%>
</c:if>
<!-- 휴대폰결제 -->
<c:if test="${result.payMethod eq 'CELLPHONE'}">
<!-- 22.12.09 휴대폰결제는 현금영수증 제외 -->
<%-- <button type="button" class="btnType btnType20" onclick="fnSimpRecip('<c:out value="${result.tid}"/>','<c:out value="${result.moid}"/>'); return false;">간이영수증</button> --%>
휴대폰결제(증빙서류 발급불가)
</c:if>
</c:if>
</c:if>
<!-- 발행완료 -->
<c:if test="${result.confirmYn eq 'Y'}">
<c:if test="${result.rcptType eq '9'}">
<p class="fwRg c_002c9a">세금계산서 발행완료</p>
</c:if>
<c:if test="${result.rcptType eq '1' || result.rcptType eq '2'}">
<p class="fwRg c_002c9a">현금영수증 발행완료</p>
</c:if>
<c:if test="${result.rcptType eq '5'}">
<p class="fwRg c_002c9a">관리자 현금영수증 발행완료</p>
</c:if>
</c:if>
</c:if>
<c:if test="${result.pgStatus eq '1'}"> <c:if test="${result.pgStatus eq '1'}">
<!-- 발행전 --> <!-- 발행전 -->
<c:if test="${result.confirmYn eq null || result.confirmYn eq ''}"> <c:if test="${result.confirmYn eq null || result.confirmYn eq ''}">
@ -816,8 +889,8 @@ function getMberGrdChk() {
<!-- 선거 후보자정보와 업체정보 둘 다 등록되어있는 경우 : radio 선택하여 영역 보여주기 --> <!-- 선거 후보자정보와 업체정보 둘 다 등록되어있는 경우 : radio 선택하여 영역 보여주기 -->
<th scope="row">발행대상</th> <th scope="row">발행대상</th>
<td> <td>
<input type="radio" name="bizOrRegi" value="biz" id="biz" onchange="fncBizOrRegi(this.value); return false;" checked="checked" /><label for="biz">기업</label> <input type="radio" name="bizOrRegi" value="biz" id="biz" onchange="fncBizOrRegi(this.value); return false;" <c:if test="${mberManageVO.taxbillAuto eq 'B'}" >checked="checked" </c:if><label for="biz">기업</label>
<input type="radio" name="bizOrRegi" value="regi" id="regi" onchange="fncBizOrRegi(this.value); return false;" /><label for="regi">개인</label> <input type="radio" name="bizOrRegi" value="regi" id="regi" onchange="fncBizOrRegi(this.value); return false;" <c:if test="${mberManageVO.taxbillAuto eq 'C'}" >checked="checked" </c:if> /><label for="regi">개인</label>
</td> </td>
</tr> </tr>
<!-- 업체정보 --> <!-- 업체정보 -->

View File

@ -461,7 +461,7 @@ function refundExcelDownload(){
<p>- 취소 처리기간 경과시에 증빙서류를 첨부해야 환불가능합니다.</p> <p>- 취소 처리기간 경과시에 증빙서류를 첨부해야 환불가능합니다.</p>
<p>- 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.</p> <p>- 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.</p>
<p>&nbsp;(예) 휴대폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 휴대폰 결제 후 3만원 전액취소</p> <p>&nbsp;(예) 휴대폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 휴대폰 결제 후 3만원 전액취소</p>
<p><span>- 환불업무는 매주 수요일에 순차적으로 처리됩니다.</span></p> <p><span>- 환불업무는 매주 수요일(금~화 신청분), 금요일 (수,목 신청분)에 순차적으로 처리됩니다.</span></p>
</div> </div>
<ul class="clause_list"> <ul class="clause_list">
<li class="list_open on"> <li class="list_open on">

View File

@ -203,6 +203,8 @@ function fnRevDetailPop03(msgGroupId){
<h2>요금 사용내역</h2> <h2>요금 사용내역</h2>
<button type="button" class="button info" onclick="infoPop('PayUserList');">사용안내</button> <button type="button" class="button info" onclick="infoPop('PayUserList');">사용안내</button>
</div> </div>
<c:choose>
<c:when test="${mberManageVO.prePaymentYn eq 'Y'}">
<div class="hisroy_price"> <div class="hisroy_price">
<div class="hisroy_price_in"> <div class="hisroy_price_in">
<p> <p>
@ -284,6 +286,109 @@ function fnRevDetailPop03(msgGroupId){
</div> </div>
</div> </div>
</div> </div>
</c:when>
<c:otherwise>
<p class="tRight c_666" style="margin: 0 0 10px 0">(VAT 별도)</p>
<div class="hisroy_price">
<%-- 누적 사용금액 => 현재까지 실제 문자발송에 사용된 캐시의 합산 --%>
<div class="hisroy_defprice_in">
<p><i></i>누적 사용금액</p>
<div class="clearfix">
<p>캐시</p>
<p>
<span>
<fmt:formatNumber value="${totSumCashAfterPay}" pattern="" />
</span>원
</p>
</div>
<%-- 현재까지 적립된 포인트의 합산 --%>
<div class="clearfix">
<p>포인트</p>
<p>
<span>
<fmt:formatNumber value="${totSumPointAfterPay}" pattern="" />
</span>원
</p>
</div>
</div>
<%-- 누적 납부금액 => 현재까지 실제 납입하여 결제 완료 처리된 금액 (미납금액 제외) --%>
<div class="hisroy_defprice_in">
<p><i></i>누적 납부금액</p>
<div class="clearfix">
<p>캐시</p>
<p>
<span>
<fmt:formatNumber value="${totSumPaymentAfterPay}" pattern="" />
</span>원
</p>
</div>
<%-- 누적 납부금액에 대한 2%의 포인트 --%>
<div class="clearfix">
<p>포인트</p>
<p>
<span>
<fmt:formatNumber value="${sumPaymentPointAfterPay}" pattern="" />
</span>원
</p>
</div>
</div>
<%-- 당월 납부 예상 금액 => (누적 사용금액 - 누적 납부금액) --%>
<div class="hisroy_defprice_in">
<p><i></i>당월 납부 예상금액</p>
<div class="clearfix">
<p>캐시</p>
<p>
<span>
<fmt:formatNumber value="${unPaymentAfterPay}" pattern="" />
</span>원
</p>
</div>
<%-- 당월 납부 예상금액에 대한 2%의 포인트 --%>
<div class="clearfix">
<p>포인트</p>
<p>
<span>
<fmt:formatNumber value="${unPaymentPointAfterPay}" pattern="" />
</span>원
</p>
</div>
<dl>
<dt>* 당월 납부 예상 포인트</dt>
<dd>- 납부 예상금액 결제 시 적립되는 포인트</dd>
</dl>
</div>
<%-- 현재 회원의 보유잔액(캐시) --%>
<div class="hisroy_defprice_in">
<p><i></i>잔액 (사용가능금액)</p>
<div class="clearfix">
<p>캐시</p>
<p>
<span>
<fmt:formatNumber value="${mberManageVO.userMoney}" pattern="" />
</span>원
</p>
</div>
<%-- 현재 회원의 보유 포인트 --%>
<div class="clearfix">
<p>포인트</p>
<p>
<span>
<fmt:formatNumber value="${mberManageVO.userPoint}" pattern="" />
</span>원
</p>
</div>
</div>
</div>
</c:otherwise>
</c:choose>
<div class="history_details"> <div class="history_details">
<p class="tType1_title"><img src="/publish/images/content/history_details_title.png" alt=""> 발송내역</p> <p class="tType1_title"><img src="/publish/images/content/history_details_title.png" alt=""> 발송내역</p>
<div class="details_wrap"> <div class="details_wrap">

View File

@ -160,7 +160,7 @@ function fnPayUserPrintPopup(){
$("#listForm").attr("target","msgSentPrint"); $("#listForm").attr("target","msgSentPrint");
window.open('', 'msgSentPrint', 'width='+ popup_wid +', height='+ popup_ht +', left=' + popup_left + ', top='+ popup_top ); window.open('', 'msgSentPrint', 'width='+ popup_wid +', height='+ popup_ht +', left=' + popup_left + ', top='+ popup_top );
$("#listForm").attr({"action":"/web/member/pay/PrintPayUserListAjax.do", "method":"post"}).submit(); $("#listForm").attr({"action":"/web/member/pay/PrintPayUserSWListAjax.do", "method":"post"}).submit();
} }
//환불요청 내역 프린트 출력 팝업 //환불요청 내역 프린트 출력 팝업
@ -201,7 +201,7 @@ function fnShowPdfPrintPopup(){
<input type="hidden" id="searchSortCnd" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" /> <input type="hidden" id="searchSortCnd" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" />
<input type="hidden" id="searchSortOrd" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" /> <input type="hidden" id="searchSortOrd" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" />
<div class="list_info"> <div class="list_info">
<p>총 <span>${paginationInfo.totalRecordCount}</span>건</p> <p>총 <span>${paginationInfo.totalRecordCount}</span>건 &nbsp; (<fmt:formatNumber value="${totSuccSendPrice}" pattern="" /> 원)</p>
<div> <div>
<button type="button" class="print_btn" onclick="javascript:fnPayUserPrintPopup();"> <button type="button" class="print_btn" onclick="javascript:fnPayUserPrintPopup();">
<i class="print_img"></i>인쇄하기 <i class="print_img"></i>인쇄하기
@ -257,7 +257,7 @@ function fnShowPdfPrintPopup(){
<!-- <th colspan="2">잔액</th> --> <!-- <th colspan="2">잔액</th> -->
</tr> </tr>
<tr> <tr>
<th>캐시</th> <th>충전금</th>
<th>포인트</th> <th>포인트</th>
<!-- <th>캐시</th> --> <!-- <th>캐시</th> -->
<!-- <th>포인트</th> --> <!-- <th>포인트</th> -->
@ -332,13 +332,13 @@ function fnShowPdfPrintPopup(){
</p> </p>
</td> </td>
<td> <td>
<p> <p class="fwRg c_002c9a">
<fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.succSendPrice}" var="succCash" /> <fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.succSendPrice}" var="succCash" />
<c:out value="${succCash}"/> <c:out value="${succCash}"/>
</p> </p>
</td> </td>
<td> <td>
<p> <p class="fwRg c_002c9a">
<%-- <fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.befPoint}" var="befPoint" /> <%-- <fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.befPoint}" var="befPoint" />
<c:out value="${befPoint}"/> --%> <c:out value="${befPoint}"/> --%>
0 0
@ -395,7 +395,7 @@ function fnShowPdfPrintPopup(){
</c:when> </c:when>
<c:otherwise> <c:otherwise>
<tr> <tr>
<td colspan="8"> <td colspan="6">
검색 결과가 없습니다. 검색 결과가 없습니다.
</td> </td>
</tr> </tr>
@ -410,6 +410,11 @@ function fnShowPdfPrintPopup(){
<label for="publish1">거래명세서</label> <label for="publish1">거래명세서</label>
<input type="radio" name="publish" id="publish2" value="details"> <input type="radio" name="publish" id="publish2" value="details">
<label for="publish2">사용내역서</label> <label for="publish2">사용내역서</label>
<label for="" class="label">부가세 포함,별도 선택</label>
<select id="addVatType" name="addVatType" class="selType2">
<option value="N" selected>부가세 별도</option>
<option value="Y">부가세 포함</option>
</select>
</div> </div>
<div> <div>
<c:choose> <c:choose>

View File

@ -604,12 +604,13 @@ function fnSmsSend(sendCnt){
var form = document.pgForm; var form = document.pgForm;
if(sendCnt >= 3){
/* if(sendCnt >= 3){
alert("일일 문자발송은 3회까지만 가능합니다."); alert("일일 문자발송은 3회까지만 가능합니다.");
return false; return false;
} } */
if(form.callTo.value == '' || form.callTo.length == 0){ if(form.callTo.value == '' || form.callTo.length == 0){
@ -799,7 +800,7 @@ function getMberGrdChk() {
<li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li> <li class="tab"><button type="button" onclick="location.href='/web/pay/PayGuide.do'">요금안내/견적내기</button></li>
<li class="tab active"><button type="button">결제하기</button></li> <li class="tab active"><button type="button">결제하기</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayList.do'">요금 결제내역</button></li>
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserList.do'">요금 사용내역</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/PayUserSWList.do'">요금 사용내역</button></li>
<!-- 현금영수증 자동발행 주석 --> <!-- 현금영수증 자동발행 주석 -->
<!-- <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">계산서/현금영수증 발행 등록</button></li> --> <!-- <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">계산서/현금영수증 발행 등록</button></li> -->
<li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li> <li class="tab"><button type="button" onclick="location.href='/web/member/pay/BillPub.do'">세금계산서 발행 등록</button></li>
@ -992,7 +993,7 @@ function getMberGrdChk() {
<p>- 이체 후 충전 확인까지 <span>최대 10분이 소요</span>됩니다.</p> <p>- 이체 후 충전 확인까지 <span>최대 10분이 소요</span>됩니다.</p>
<p>- 이체금액에서 <span>부가세 10%가 제외되고 충전</span>됩니다.</p> <p>- 이체금액에서 <span>부가세 10%가 제외되고 충전</span>됩니다.</p>
<!-- <p>- 예금주 : 문자온</p> --> <!-- <p>- 예금주 : 문자온</p> -->
<p>- 계좌번호 문자로 받기(일/3회까지) <p>- 계좌번호 문자로 받기(유료)
<label for="" class="label">전화번호 입력</label> <label for="" class="label">전화번호 입력</label>
<input type="text" id="callTo" name="callTo" maxLength="11" placeholder="- 없이 받으실 휴대폰 번호를 입력해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='- 없이 전화번호를 입력해주세요'"> <input type="text" id="callTo" name="callTo" maxLength="11" placeholder="- 없이 받으실 휴대폰 번호를 입력해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='- 없이 전화번호를 입력해주세요'">
<button type="button" onclick="fnSmsSend(<c:out value='${resultMsgInfo.sendCnt}'/>); return false;">문자받기</button> <button type="button" onclick="fnSmsSend(<c:out value='${resultMsgInfo.sendCnt}'/>); return false;">문자받기</button>

View File

@ -0,0 +1,227 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ page import="itn.com.cmm.LoginVO" %>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>요금 사용내역</title>
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/publish/css/reset.css">
<link rel="stylesheet" href="/publish/css/common.css">
<link rel="stylesheet" href="/publish/css/estimate.css">
<link rel="stylesheet" href="/publish/css/font.css">
<link rel="stylesheet" href="/publish/css/button.css">
</head>
<script type="text/javascript">
function f_print(){
document.getElementById('est_btn_wrap').style.display = 'none';
var initBody = document.body.innerHTML;
window.onbeforeprint = function(){
// print_area는 인쇄하고자 하는 영역의 ID를 말합니다.( 필수 )
// document.body.innerHTML = document.getElementById("print_area").innerHTML;
}
window.onafterprint = function(){
document.body.innerHTML = initBody;
}
window.print();
document.getElementById('est_btn_wrap').style.display = '';
}
</script>
<body>
<!-- 견적서 -->
<div class="estimate_wrap">
<div class="estimate">
<div class="est_head clearfix">
<img src="/publish/images/CI.png" alt="문자온 CI">
<div class="clearfix">
<p>(12248) 경기도 남양주시 다산순환로 20, A동 735호(다산동, 현대프리미어캠퍼스)</p>
<p>TEL 010-8432-9333</p>
</div>
</div>
<div class="est_body">
<h2>요금 사용내역</h2>
<div class="cont1 tb_ver2">
<div>
<table class="est_table">
<caption>발신자 정보</caption>
<colgroup>
<col style="width: 50px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th></th>
<td colspan="2" class="colspan">
<span><c:out value="${userNm}"/></span> &nbsp;님의 사용내역을 아래와 같이 확인합니다.
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="cont3">
<div class="est_table2_wrap">
<table class="est_table2">
<caption>사용날짜, 문자유형, 문자내용, 충전 충전금, 충전 포인트, 사용 충전금, 사용 포인트, 잔액 충전금, 잔액 포인트를 제공하는 표</caption>
<colgroup>
<col style="width: 15%;">
<col style="width: 10%;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: 10%;">
<%-- <col style="width: 10%;">
<col style="width: 15%;">
<col style="width: 10%;"> --%>
</colgroup>
<thead>
<tr>
<th rowspan="2" style=" vertical-align : middle;">
날짜
</th>
<th rowspan="2" style=" vertical-align : middle;">
문자유형
</th>
<th rowspan="2" style=" vertical-align : middle;border-right:1px solid #ccc;">
발송건수
</th>
<!-- <th colspan="2">충전</th> -->
<th colspan="2">사용</th>
<!-- <th colspan="2">잔액</th> -->
</tr>
<tr>
<th>충전금</th>
<th>포인트</th>
<!-- <th>충전금</th>
<th>포인트</th>
<th>충전금</th>
<th>포인트</th> -->
</tr>
</thead>
<tbody>
<c:choose>
<c:when test="${not empty payUserList}">
<c:forEach var="payUserInfo" items="${payUserList}" varStatus="status">
<tr>
<td>
<c:out value="${payUserInfo.regDate}"/>
</td>
<td>
<p style="text-align:center;">
<c:choose>
<c:when test="${payUserInfo.msgTypeTxt eq '6' && payUserInfo.fileCnt eq 0 }">
장문
</c:when>
<c:when test="${payUserInfo.msgTypeTxt eq '6' && payUserInfo.fileCnt ne 0 }">
그림
</c:when>
<c:when test="${payUserInfo.msgTypeTxt eq '8'}">
알림톡
</c:when>
<c:when test="${payUserInfo.msgTypeTxt eq '9'}">
친구톡
</c:when>
<c:when test="${payUserInfo.msgTypeTxt eq 'fax'}">
펙스
</c:when>
<c:otherwise>
단문
</c:otherwise>
</c:choose>
</p>
</td>
<td>
<c:out value="${payUserInfo.succSendCnt}"/>
<c:if test="${payUserInfo.msgTypeTxt eq 'fax'}">
(<c:out value="${payUserInfo.fileCnt}"/>)
</c:if>
</td>
<td>
<p class="fwRg c_002c9a" style="text-align:center;">
<fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.succSendPrice}" var="succCash" />
<c:out value="${succCash}"/>
</p>
</td>
<td>
<p class="fwRg c_002c9a" style="text-align:center;">
0
</p>
</td>
<%-- <td>
<p class="fwRg c_002c9a">
<fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.totPrice}" var="totPrice" />
<c:out value="${totPrice}"/>
</p>
</td>
<td>
<p class="fwRg c_002c9a">
0
</p>
</td>
<td>
<p class="fwRg c_222">
<fmt:formatNumber type="number" maxFractionDigits="3" value="${payUserInfo.thisPoint}" var="thisPoint" />
<c:out value="${thisPoint}"/>
</p>
</td>
<td>
<p class="fwRg c_222">
<c:out value="${payUserInfo.befPoint}"/>
</p>
</td> --%>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr>
<td colspan="5">
사용내역이 없습니다.
</td>
</tr>
</c:otherwise>
</c:choose>
</tbody>
</table>
</div>
</div>
<div class="cont4">
<table class="est_table">
<caption>공급가액, 부가세, 총 결제금액에 대한 표</caption>
<colgroup>
<col style="width: 64px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th>대표번호</th>
<td>010-8432-9333</td>
</tr>
<tr>
<th>이메일</th>
<td>help@iten.co.kr</td>
</tr>
</tbody>
</table>
</div>
<div class="cont5">
<p><span><c:out value="${year}"/></span> 년&nbsp;&nbsp;<span><c:out value="${month}"/></span> 월&nbsp;&nbsp;<span><c:out value="${day}"/></span> 일</p>
<div>
<span>주식회사 아이티앤 대표이사</span>
<span>유&nbsp;인&nbsp;식</span>
<span class="big_stamp"><img src="/publish/images/content/big_stamp.png"></span>
</div>
</div>
</div>
<div class="est_btn_wrap" id="est_btn_wrap">
<button type="button" class="btnType" onclick="javascript:f_print(); return false;"><i class="print_img"></i>인쇄하기</button>
</div>
</div>
</div>
<!--// 견적서 -->
</body>
</html>

View File

@ -255,9 +255,10 @@ function getMberGrdChk() {
<div class="my_dashboard_cont1"> <div class="my_dashboard_cont1">
<button type="button" class="level_icon" data-tooltip="level_check_popup01" id="levelIconBtn" style="display: none;"> <button type="button" class="level_icon" data-tooltip="level_check_popup01" id="levelIconBtn" style="display: none;">
</button> </button>
<div> <div class="title_wrap">
<p> <p class="user_text">
<span><c:out value="${mberManageVO.mberNm}"/></span> 회원님 반갑습니다 <span class="user_name"><c:out value="${mberManageVO.mberNm}"/></span>
회원님 반갑습니다
</p> </p>
<c:if test="${loginVO.dept eq 'p'}"> <c:if test="${loginVO.dept eq 'p'}">
<button type="button" class="btnType" onclick="location.href='/web/user/membershipChange.do'">기업회원전환</button> <button type="button" class="btnType" onclick="location.href='/web/user/membershipChange.do'">기업회원전환</button>
@ -365,6 +366,9 @@ function getMberGrdChk() {
</div> </div>
<div class="my_dashboard_cont3"> <div class="my_dashboard_cont3">
<p class="dashboard_title">이용내역</p> <p class="dashboard_title">이용내역</p>
<c:choose>
<c:when test="${mberManageVO.prePaymentYn eq 'Y'}">
<p class="reqTxt2">(단위 : 건, 원)</p> <p class="reqTxt2">(단위 : 건, 원)</p>
<div class="table_wrap"> <div class="table_wrap">
<table> <table>
@ -403,7 +407,84 @@ function getMberGrdChk() {
</tbody> </tbody>
</table> </table>
</div> </div>
<button type="button" onclick="location.href='/web/member/pay/PayUserList.do';"> </c:when>
<c:otherwise>
<p class="reqTxt2">(단위 : 건, 원) VAT 별도</p>
<div class="table_wrap">
<table>
<caption>구분, 충전금액, 사용금액, 잔액 등 정보를 제공하는 표</caption>
<colgroup>
<col style="width: 115px;">
<col style="width: calc((100% - 115px)/4);">
<col style="width: calc((100% - 115px)/4);">
<col style="width: calc((100% - 115px)/4);">
<col style="width: calc((100% - 115px)/4);">
</colgroup>
<thead>
<tr>
<th scope="col">구분</th>
<th scope="col">누적 사용금액</th>
<th scope="col">누적 납부금액</th>
<th scope="col">당월 납부 예상금액</th>
<th scope="col">잔액 (사용가능금액)</th>
</tr>
</thead>
<tbody>
<tr>
<td>캐시</td>
<%-- <c:forEach var="cashInfo" items="${cashInfoList}" varStatus="status">
<td>
<fmt:formatNumber value="${cashInfo.cashSum}" pattern="" />
</td>
</c:forEach> --%>
<td>
<%-- 누적 사용금액 => 현재까지 실제 문자발송에 사용된 캐시의 합산 --%>
<fmt:formatNumber value="${totSumCashAfterPay}" pattern="" />
</td>
<td>
<%-- 누적 납부금액 => 현재까지 실제 납입하여 결제 완료 처리된 금액 (미납금액 제외) --%>
<fmt:formatNumber value="${totSumPaymentAfterPay}" pattern="" />
</td>
<td>
<%-- 당월 납부 예상 금액 => (누적 사용금액 - 누적 납부금액) --%>
<fmt:formatNumber value="${unPaymentAfterPay}" pattern="" />
</td>
<td>
<%-- 현재 회원의 보유잔액(캐시) --%>
<fmt:formatNumber value="${mberManageVO.userMoney}" pattern="" />
</td>
</tr>
<tr>
<td>포인트</td>
<%-- <c:forEach var="pointInfo" items="${pointInfoList}" varStatus="status">
<td>
<fmt:formatNumber value="${pointInfo.sumPay}" pattern="" />
</td>
</c:forEach> --%>
<td>
<%-- 현재까지 적립된 포인트의 합산 --%>
<fmt:formatNumber value="${totSumPointAfterPay}" pattern="" />
</td>
<td>
<%-- 누적 납부금액에 대한 2%의 포인트 --%>
<fmt:formatNumber value="${sumPaymentPointAfterPay}" pattern="" />
</td>
<td>
<%-- 당월 납부 예상금액에 대한 2%의 포인트 --%>
<fmt:formatNumber value="${unPaymentPointAfterPay}" pattern="" />
</td>
<td>
<%-- 현재 회원의 보유 포인트 --%>
<fmt:formatNumber value="${mberManageVO.userPoint}" pattern="" />
</td>
</tr>
</tbody>
</table>
</div>
</c:otherwise>
</c:choose>
<button type="button" onclick="location.href='/web/member/pay/PayUserSWList.do';">
<img src="/publish/images/content/mypage_plus.png" alt="더보기"> <img src="/publish/images/content/mypage_plus.png" alt="더보기">
</button> </button>
<div class="table_wrap"> <div class="table_wrap">

View File

@ -16,7 +16,7 @@
//이전달 첫날/마지막날 조회 //이전달 첫날/마지막날 조회
if(date.getMonth()+1 == 1){ if(date.getMonth()+1 == 1){
lastfulstday = date.getFullYear()-1 + "/12" + "/01"; lastfulstday = date.getFullYear()-1 + "/12" + "/01";
lastfuledday = date.getFullYear()-1 + "/12" + "/"+new Date(date.getFullYear()-1, 12, 0); lastfuledday = date.getFullYear()-1 + "/12" + "/"+new Date(date.getFullYear()-1, 12, 0).getDate()+"";
}else{ }else{
lastfulstday = date.getFullYear() + "/" ; lastfulstday = date.getFullYear() + "/" ;
lastfulstday += date.getMonth() < 10 ? "0"+ (date.getMonth()) : date.getMonth()+"" ; lastfulstday += date.getMonth() < 10 ? "0"+ (date.getMonth()) : date.getMonth()+"" ;

View File

@ -116,7 +116,7 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border:
.login2 .login_info button {margin-right: 2px;} .login2 .login_info button {margin-right: 2px;}
.login2 .login_pay {display:flex;} .login2 .login_pay {display:flex;}
.login2 .check_money p span, .login2 .point p span {padding-left: 4px;} .login2 .check_money p span, .login2 .point p span {padding-left: 4px;}
.login2 .check_money {margin-right: 20px;} .login2 .check_money {margin-right: 20px; display: inline-flex;}
.login2 .check_money p {padding-right: 6px;display: inline-block;vertical-align: middle;} .login2 .check_money p {padding-right: 6px;display: inline-block;vertical-align: middle;}
.login2 .check_money i {background-image: url(/publish/images/check_money2.png);width: 29px;height: 30px;margin-right: 3px;} .login2 .check_money i {background-image: url(/publish/images/check_money2.png);width: 29px;height: 30px;margin-right: 3px;}
.login2 .check_money button {margin-right: 2px;} .login2 .check_money button {margin-right: 2px;}
@ -127,6 +127,13 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border:
.login2 .check_money .account_box dl dt:before {content:'';display:inline-block;width:22px;height:20px;margin:0 5px 0 0;vertical-align:top;background:url(/publish/images/content/icon_account_layer.png) no-repeat left top;} .login2 .check_money .account_box dl dt:before {content:'';display:inline-block;width:22px;height:20px;margin:0 5px 0 0;vertical-align:top;background:url(/publish/images/content/icon_account_layer.png) no-repeat left top;}
.login2 .check_money .account_box dl dd {margin:7px 0 0;font-size:15px;font-weight:500;white-space:nowrap;} .login2 .check_money .account_box dl dd {margin:7px 0 0;font-size:15px;font-weight:500;white-space:nowrap;}
.login2 .check_money .account_box:hover dl {display:block;} .login2 .check_money .account_box:hover dl {display:block;}
/*후불 회원에게만 노출되는 안내레이어*/
.login2 .check_money .holdingsum_box {position: relative;}
.login2 .check_money .holdingsum_box dl {display:none;position:absolute;left:50%;top:41px;padding:12px;border:2px solid #002c9a;background:#fff;border-radius:10px;box-shadow:0px 3px 10px 0px rgba(0, 0, 0, 0.5);transform:translateX(-50%);}
.login2 .check_money .holdingsum_box dl:after {content:'';position:absolute;left:50%;top:-10px;width:16px;height:10px;margin:0 0 0 -8px;background:url(../images/content/icon_account_arrow.png) no-repeat left top;}
.login2 .check_money .holdingsum_box dl dd {margin:3px;font-size:15px;font-weight:500;white-space:nowrap; line-height:20px;}
.login2 .check_money .holdingsum_box:hover dl {display:block;}
.login2 .point p {padding-right: 6px;display: inline-block; vertical-align: middle;} .login2 .point p {padding-right: 6px;display: inline-block; vertical-align: middle;}
.login2 .point i {background-image: url(/publish/images/pointIcon2.png);width: 30px;height: 28px;margin-right: 3px;margin-top: -2px;} .login2 .point i {background-image: url(/publish/images/pointIcon2.png);width: 30px;height: 28px;margin-right: 3px;margin-top: -2px;}
.login2 .login_right button i {background-image: url(/publish/images/login_introIcon.png);width: 20px;height: 18px;margin: 0 6px 3px 0;} .login2 .login_right button i {background-image: url(/publish/images/login_introIcon.png);width: 20px;height: 18px;margin: 0 6px 3px 0;}

View File

@ -408,7 +408,7 @@ input[type=text]::-ms-reveal, input[type=password]::-ms-reveal, input[type=email
.list_bottom .list_bottom_right {float: right; font-size: 16px; display: flex;} .list_bottom .list_bottom_right {float: right; font-size: 16px; display: flex;}
.list_bottom .list_bottom_right p {line-height: 36px;} .list_bottom .list_bottom_right p {line-height: 36px;}
.list_bottom .list_bottom_right span {font-size: 20px; font-weight: 600 !important;} .list_bottom .list_bottom_right span {font-size: 20px; font-weight: 600 !important;}
.list_bottom .list_bottom_right .address_reg2 {height: 36px; padding: 0 10px; border-radius: 5px;font-weight: 300; background-color: #6a6c72; color: #fff; margin-left: 10px;} .list_bottom .list_bottom_right .address_reg2 {height: 36px; padding: 0 10px; border-radius: 5px;font-weight: 400; background-color: #6a6c72; color: #fff; margin-left: 10px;}
.list_bottom .remove_btnWrap .address_reg2 {width: calc(100% - 246px); background-color: #6a6c72; color: #fff; border-radius: 5px; font-weight: 300;} .list_bottom .remove_btnWrap .address_reg2 {width: calc(100% - 246px); background-color: #6a6c72; color: #fff; border-radius: 5px; font-weight: 300;}
.list_bottom .remove_btnWrap .check_validity {height: 32px; position: absolute; right: 0;} .list_bottom .remove_btnWrap .check_validity {height: 32px; position: absolute; right: 0;}
@ -477,11 +477,11 @@ input[type=text]::-ms-reveal, input[type=password]::-ms-reveal, input[type=email
.send_top .top_content {background-color: #fff;padding: 30px 40px;border-radius: 10px;} .send_top .top_content {background-color: #fff;padding: 30px 40px;border-radius: 10px;}
.send_top .send_price {display: inline-block;position: relative;margin-left:50px;vertical-align: middle;line-height: 25px;height: 27.5px;} .send_top .send_price {display: inline-block;position: relative;margin-left:50px;vertical-align: middle;line-height: 25px;height: 27.5px;}
.send_top .send_price::after {content: "";position: absolute;background-color: #002c9a;width: 3px;height: 20px;border-radius: 2px; top: 50%;transform: translateY(-50%);left: -30px;} .send_top .send_price::after {content: "";position: absolute;background-color: #002c9a;width: 3px;height: 20px;border-radius: 2px; top: 50%;transform: translateY(-50%);left: -30px;}
.send_top .send_price li {display: inline-block;color: #555;padding-right: 12px;margin-right: 6px;position: relative; font-size: 15px; letter-spacing: -0.5px;} .send_top .send_price li {display: inline-block;color: #555;padding-right: 7px;margin-right: 5px;position: relative; font-size: 15px; letter-spacing: -0.5px;}
.send_top .heading .send_price li:first-child {margin-right:28px;} .send_top .heading .send_price li:first-child {margin-right:28px;}
.send_top .send_price .price_line::after {content: "/";position: absolute;top: 50%;transform: translateY(-50%);right: 0;color: #ababab;font-size: 14px;} .send_top .send_price .price_line::after {content: "/";position: absolute;top: 50%;transform: translateY(-50%);right: 0;color: #ababab;font-size: 14px;}
.send_top .send_price li .type {border: 1px solid #46484a;border-radius: 3px;margin-right: 8px; color: #46484a;padding: 0 4px;} .send_top .send_price li .type {border: 1px solid #46484a;border-radius: 3px;margin-right: 8px; color: #46484a;padding: 0 4px;}
.send_top .send_price li .price {color: #e40000;font-size: 18px;font-weight: 700;} .send_top .send_price li .price {color: #e40000;font-size: 16px;font-weight: 700;}
.send_top .send_general {width: 100%;display: flex;display: -ms-flexbox; justify-content: space-between; position: relative;} .send_top .send_general {width: 100%;display: flex;display: -ms-flexbox; justify-content: space-between; position: relative;}
/* left area 내용 입력 */ /* left area 내용 입력 */
.send_top .send_left {max-width: 870px;flex-basis: 68%;} .send_top .send_left {max-width: 870px;flex-basis: 68%;}
@ -619,13 +619,15 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.sub .election .receipt_number_table_wrap .put_right .receipt_info dd b{font-size:16px;font-weight:500;} .sub .election .receipt_number_table_wrap .put_right .receipt_info dd b{font-size:16px;font-weight:500;}
.sub .election .receipt_number_table_wrap .put_right .receipt_info .btn_reset{font-size:14px;font-weight:500;color:#333;} .sub .election .receipt_number_table_wrap .put_right .receipt_info .btn_reset{font-size:14px;font-weight:500;color:#333;}
.sub .election .receipt_number_table_wrap .put_right .receipt_info .btn_reset i{display:inline-block;width:15px;height:13px;margin:-1px 2px 0 0;background:url(/publish/images/icon_reset.png) no-repeat center center;} .sub .election .receipt_number_table_wrap .put_right .receipt_info .btn_reset i{display:inline-block;width:15px;height:13px;margin:-1px 2px 0 0;background:url(/publish/images/icon_reset.png) no-repeat center center;}
.sub .election .list_bottom{display:flex;width:100%;align-items:center;justify-content:space-between;padding:0 0 10px 0;} .sub .election .list_bottom{display:flex;width:94.8%;align-items:center;justify-content:space-between;padding:0 0 10px 0;}
.sub .election .receipt_number_table_wrap .list_bottom{width:100%;}
.sub .election .list_bottom .pagination{display:inline-flex;width:auto;margin:0;justify-content:flex-start;} .sub .election .list_bottom .pagination{display:inline-flex;width:auto;margin:0;justify-content:flex-start;}
.sub .election .list_bottom .pagination button{height:32px;} .sub .election .list_bottom .pagination button{display:inline-flex;align-items:center;justify-content:center;height:32px;}
.sub .election .list_bottom .list_bottom_right{float:none;display:inline-flex;justify-content:flex-end;} .sub .election .list_bottom .list_bottom_right{float:none;display:inline-flex;justify-content:flex-end;align-items:center;}
.sub .election .list_bottom .list_bottom_right button{height:32px;padding:0 13px;font-weight:400 !important;} .sub .election .list_bottom .list_bottom_right p{margin:0 10px 0 0;}
.sub .election .list_bottom .list_bottom_right button{width:95px;height:32px;font-size:14px;padding:0 2px;font-weight:400 !important;}
.sub .election .list_bottom .list_bottom_right>button{margin:0 4px 0 0;} .sub .election .list_bottom .list_bottom_right>button{margin:0 4px 0 0;}
.sub .election .list_bottom .list_bottom_right .btn_yellow{display:inline-flex;align-items:center;padding:0 10px;} .sub .election .list_bottom .list_bottom_right .btn_yellow{display:inline-flex;align-items:center;justify-content:center;padding:0 2px;}
.sub .election .list_bottom .list_bottom_right .btn_yellow i.qmMark{background:url(/publish/images/content/qmIcon_black.png) no-repeat center;margin:0 0 0 2px;} .sub .election .list_bottom .list_bottom_right .btn_yellow i.qmMark{background:url(/publish/images/content/qmIcon_black.png) no-repeat center;margin:0 0 0 2px;}
/* 2023/12/07 선거문자 - 20건문자(수동문자) 전송 추가 table에서 ul로 변경 */ /* 2023/12/07 선거문자 - 20건문자(수동문자) 전송 추가 table에서 ul로 변경 */
@ -994,7 +996,8 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.pay_cont .excel_middle {margin: 20px 0 10px 0;} .pay_cont .excel_middle {margin: 20px 0 10px 0;}
.pay_cont .excel_middle .selType2 {width: 82px; height: 32px; margin-left: 0;} .pay_cont .excel_middle .selType2 {width: 82px; height: 32px; margin-left: 0;}
.pay_cont .select_btnWrap .add_text2 {font-size: 16px; padding-top: 7px; color: #666; font-weight: 300;} .pay_cont .select_btnWrap .add_text2 {font-size: 16px; padding-top: 7px; color: #666; font-weight: 300;}
.pay_cont .select_btnWrap .add_text2 .accountinfo {padding:2px 0 0 10px; color:#21376c; font-weight:400;}
.pay_cont .select_btnWrap .add_text2 .accountinfo span {font-size:14px; color:#697593; padding:0 0 0 10px;}
/*등급 및 누적결제액 확인 버튼 추가*/ /*등급 및 누적결제액 확인 버튼 추가*/
.pay_cont .excel_middle .level_btn{margin: 0 5px; border: 1px solid #002c9a; color: #002c9a;} .pay_cont .excel_middle .level_btn{margin: 0 5px; border: 1px solid #002c9a; color: #002c9a;}
.pay_cont .excel_middle .level_btn img{margin-top: -3px;} .pay_cont .excel_middle .level_btn img{margin-top: -3px;}
@ -1049,6 +1052,26 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.hisroy_price .hisroy_price_in>div>p:first-child {float: left;} .hisroy_price .hisroy_price_in>div>p:first-child {float: left;}
.hisroy_price .hisroy_price_in>div>p:last-child {float: right;} .hisroy_price .hisroy_price_in>div>p:last-child {float: right;}
.hisroy_price .hisroy_price_in>div>p>span {font-size: 22px; font-family: 'GmarketSansBold'; color: #002c9a; padding-right: 5px;} .hisroy_price .hisroy_price_in>div>p>span {font-size: 22px; font-family: 'GmarketSansBold'; color: #002c9a; padding-right: 5px;}
/*후불회원 요금 사용내역*/
.hisroy_price .hisroy_defprice_in {position:relative; background-color: #f2f2f2; width: calc(100%/4 - 10px); padding: 28px 22px 40px 22px; border-radius: 5px; box-sizing: border-box;}
.hisroy_price .hisroy_defprice_in>p {font-size: 20px; font-weight: 600; margin-bottom: 25px; font-family: 'GmarketSansBold';}
.hisroy_price .hisroy_defprice_in i{background-size: 100%;}
.hisroy_price .hisroy_defprice_in:nth-child(1) i {background-image: url(/publish/images/content/history_icon1.png); width: 23px; height: 26px; margin: 0 10px 2px 0;}
.hisroy_price .hisroy_defprice_in:nth-child(2) i {background-image: url(/publish/images/content/history_icon2.png); width: 26px; height: 24px; margin: 0 10px 2px 0;}
.hisroy_price .hisroy_defprice_in:nth-child(3) i {background-image: url(/publish/images/content/history_icon4.png); width: 22px; height: 24px; margin: 0 10px 2px 0;}
.hisroy_price .hisroy_defprice_in:nth-child(4) i {background-image: url(/publish/images/content/history_icon3.png); width: 21px; height: 21px; margin: 0 10px 2px 0;}
.hisroy_price .hisroy_defprice_in>div {background-color: #fff; height: 50px; padding: 0 20px; border-radius: 5px; line-height: 50px; box-sizing: border-box;}
.hisroy_price .hisroy_defprice_in>div:last-child {margin-top: 10px;}
.hisroy_price .hisroy_defprice_in>div>p {font-size: 15px; font-weight: 300;}
.hisroy_price .hisroy_defprice_in>div>p:first-child {float: left;}
.hisroy_price .hisroy_defprice_in>div>p:last-child {float: right;}
.hisroy_price .hisroy_defprice_in>div>p>span {font-size: 20px; font-family: 'GmarketSansBold'; color: #002c9a; padding-right: 1px;}
.hisroy_price .hisroy_defprice_in .clearfix{ display: flex; justify-content: space-between; align-items: center; height: 40px; background-color: #fff; padding: 5px 10px; border-radius: 5px; margin: 0 0 10px 0;}
.hisroy_price .hisroy_defprice_in .clearfix:last-child{margin: 0 0 0 0; text-align: right;}
.hisroy_price .hisroy_defprice_in .clearfix p:nth-child(2n){width: calc(100% - 5px); text-align: right;}
.hisroy_price .hisroy_defprice_in dl {position: absolute; font-size:13px; color:#777; padding:0; top:178px;}
.hisroy_price .hisroy_defprice_in dl dd {padding:2px 0 0 8px;}
.history_details .tType1_title{margin: 0;} .history_details .tType1_title{margin: 0;}
.history_details .tType1_title img{margin: -4px 0 0 0;} .history_details .tType1_title img{margin: -4px 0 0 0;}
.history_details .details_wrap{width: 100%; background-color: #f2f2f2; border-radius: 5px; padding: 15px 20px 15px 20px; box-sizing: border-box;} .history_details .details_wrap{width: 100%; background-color: #f2f2f2; border-radius: 5px; padding: 15px 20px 15px 20px; box-sizing: border-box;}
@ -2001,6 +2024,7 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.send_top {margin: 0 30px;} .send_top {margin: 0 30px;}
.send_bottom {margin: 60px 30px 0 30px;} .send_bottom {margin: 60px 30px 0 30px;}
.list_bottom {width: calc(100% - 200px);} .list_bottom {width: calc(100% - 200px);}
.sub .election .list_bottom{width:calc(100% - 100px)}
.area_tabcontent.photo_sample {min-height:737px;} .area_tabcontent.photo_sample {min-height:737px;}
/* .area_tabcontent.photo_sample li {height:355.5px;} */ /* .area_tabcontent.photo_sample li {height:355.5px;} */
.area_tabcontent.photo_sample li .photo_cont {max-height:307.5px;} .area_tabcontent.photo_sample li .photo_cont {max-height:307.5px;}
@ -2060,6 +2084,10 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right button{font-size:14px;letter-spacing:-1px;} .sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right button{font-size:14px;letter-spacing:-1px;}
.sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right .btn_gray.fill{padding:0 5px;} .sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right .btn_gray.fill{padding:0 5px;}
.sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right .btn_yellow.fill{padding:0 3px;} .sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right .btn_yellow.fill{padding:0 3px;}
/* 후불회원 요금사용내역*/
.hisroy_price .hisroy_defprice_in>p {font-size: 18px; font-weight: 600; margin-bottom: 25px; font-family: 'GmarketSansBold';}
.hisroy_price .hisroy_defprice_in>div>p>span {font-size: 17px; font-family: 'GmarketSansBold'; color: #002c9a; padding-right: 1px;}
} }
@media only screen and (max-width:1480px){ @media only screen and (max-width:1480px){
@ -2158,9 +2186,10 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
.rev_admin_cont .select_btnWrap .btn_right .select_btn{width: 105px;} .rev_admin_cont .select_btnWrap .btn_right .select_btn{width: 105px;}
/* 선거문자 */ /* 선거문자 */
.sub .election .list_bottom{width:100%;} .sub .election .list_bottom{width:calc(100% - 154px);}
.sub .election .receipt_number_table_wrap+.list_bottom .list_bottom_right button{letter-spacing:-1.4px;} .sub .election .receipt_number_table_wrap .list_bottom{width:100%;}
.sub .election .list_bottom .pagination button{width:30px;height:30px;} .sub .election .list_bottom .list_bottom_right button{height:30px;font-size:14px;letter-spacing:-1.4px;}
.sub .election .list_bottom .pagination button{display:inline-flex;width:25px;height:30px;align-items:center;justify-content:center;}
} }
@media only screen and (max-width:1380px){ @media only screen and (max-width:1380px){
@ -2198,6 +2227,10 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px
/* 카카오톡 */ /* 카카오톡 */
.kakaotalkset_cont .kakao_wrap .template_category{width: 259px;} .kakaotalkset_cont .kakao_wrap .template_category{width: 259px;}
/* 선거문자 */
.sub .election .list_bottom .list_bottom_right button{width:90px;height:30px;font-size:14px;letter-spacing:-1.4px;}
} }
@media only screen and (max-width:1300px){ @media only screen and (max-width:1300px){

View File

@ -116,7 +116,7 @@
.msg_photo .swiper-slide .slide_area:hover div.btn_more{display: block; width: 54px; height: 54px; background-color: rgba(0,0,0,0.4); border-radius: 100%; line-height: 48px; position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);} .msg_photo .swiper-slide .slide_area:hover div.btn_more{display: block; width: 54px; height: 54px; background-color: rgba(0,0,0,0.4); border-radius: 100%; line-height: 48px; position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
.msg_photo .area_img{display:flex;height:365px; border-radius: 16px 16px 0 0; overflow: hidden;align-items:center;} .msg_photo .area_img{display:flex;height:365px; border-radius: 16px 16px 0 0; overflow: hidden;align-items:center;}
.msg_photo .area_img img{width: 100%; height: auto;} .msg_photo .area_img img{width: 100%; height: auto;}
.msg_photo .area_img_text{font-size: 17px;padding: 12px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;} .msg_photo .area_img_text{font-size: 17px;padding: 18px 10px 0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.msg_photo .area_img_text .sub_text{display: block; font-size: 14px; color: #777; margin: 5px auto;} .msg_photo .area_img_text .sub_text{display: block; font-size: 14px; color: #777; margin: 5px auto;}
.msg_photo_wrap .swiper-button-prev {margin:0;background-image:url(/publish/images/main/btn_prev.png);background-size:12px 21px;} .msg_photo_wrap .swiper-button-prev {margin:0;background-image:url(/publish/images/main/btn_prev.png);background-size:12px 21px;}
.msg_photo_wrap .swiper-button-next {margin:0;background-image:url(/publish/images/main/btn_next.png);background-size:12px 21px;} .msg_photo_wrap .swiper-button-next {margin:0;background-image:url(/publish/images/main/btn_next.png);background-size:12px 21px;}

View File

@ -315,11 +315,11 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
.send_top .send_price li:last-child {margin-right: 0;} .send_top .send_price li:last-child {margin-right: 0;}
.my_dashboard .event_text{width: 558px; margin: 8px 0 0 auto; text-align: left; font-size: 15px; color: #555;} .my_dashboard .event_text{width: 558px; margin: 8px 0 0 auto; text-align: left; font-size: 15px; color: #555;}
.my_dashboard .event_text span{font-size: 15px; font-weight: bold; color: #e40000; padding: 0 0 0 0;} */ .my_dashboard .event_text span{font-size: 15px; font-weight: bold; color: #e40000; padding: 0 0 0 0;} */
.my_dashboard .send_price{display: flex; width: calc(100% - 390px); height: 80%; margin: 0 0 0 0; line-height: 1; align-items: stretch;} .my_dashboard .send_price{display: flex;width: calc(100% - 490px); height: 80%; margin: 0 0 0 0; line-height: 1; align-items: stretch;}
.my_dashboard .send_price::after{display: none;} .my_dashboard .send_price::after{display: none;}
.my_dashboard .send_price .price_title{display: flex; width: 100px; background-color: #eea301; color: #fff; font-size: 20px; font-weight: bold; border-radius: 10px 0 0 10px; align-items: center; justify-content: center; line-height: 1.5;} .my_dashboard .send_price .price_title{display: flex; width: 100px; background-color: #eea301; color: #fff; font-size: 18px; font-weight: bold; border-radius: 10px 0 0 10px; align-items: center; justify-content: center; line-height: 1.5;}
.my_dashboard .send_price .price_wrap{width: calc(100% - 100px); background-color: #fff; border-radius: 0 10px 10px 0;} .my_dashboard .send_price .price_wrap{width: calc(135% - 100px); background-color: #fff; border-radius: 0 10px 10px 0;}
.my_dashboard .send_price ul{display: flex; width: calc(100% - 20px); border-bottom: 1px dashed #d5d5d5; margin: 0 auto; padding: 10px 15px; align-items: center; flex-wrap: wrap; box-sizing: border-box;} .my_dashboard .send_price ul{display: flex; width: calc(100% - 0px); border-bottom: 1px dashed #d5d5d5; margin: 0 auto; padding: 10px 14px; align-items: center; flex-wrap: wrap; box-sizing: border-box;}
.my_dashboard .send_price ul:last-child{border: 0; align-items: flex-start;} .my_dashboard .send_price ul:last-child{border: 0; align-items: flex-start;}
.my_dashboard .send_price ul:first-child li:last-child{margin: 0; padding: 0} .my_dashboard .send_price ul:first-child li:last-child{margin: 0; padding: 0}
.my_dashboard .send_price .price_wrap .title{font-size: 16px; color: #222;} .my_dashboard .send_price .price_wrap .title{font-size: 16px; color: #222;}
@ -374,12 +374,17 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
.my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 15px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;} .my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 15px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;}
.my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;} .my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;}
.my_dashboard_cont1>span>span {font-weight: 500;} .my_dashboard_cont1>span>span {font-weight: 500;}
.my_dashboard_cont1 .title_wrap{width:450px;}
.my_dashboard_cont1 .user_text{display:flex;max-width:calc(100% - 115px);align-items:center;flex-wrap:wrap;margin:0 10px 0 0;line-height:1.3;}
.my_dashboard_cont1 .user_name{word-break:break-all;margin:0 5px 0 0;}
.my_dashboard_cont1 .title_wrap .btnType{position:inherit;height:36px;margin:0;}
/* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */ /* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */
.my_dashboard .my_dashboard_cont1 {padding: 25px 30px;} .my_dashboard .my_dashboard_cont1 {padding: 25px 30px;}
.my_dashboard_cont1>div {display: flex; align-items: center;} .my_dashboard_cont1>div {display: flex; align-items: center;}
.my_dashboard_cont1 p {font-size: 16px; font-weight: 300;} .my_dashboard_cont1 p {font-size: 16px; font-weight: 300;}
.my_dashboard_cont1 p span {font-size: 24px; font-weight: 600; padding-right: 3px; margin-left: -20px;} .my_dashboard_cont1 p span {font-size: 24px; font-weight: 600; padding-right: 3px; /*margin-left: -20px;*/}
.my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 8px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;} .my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 8px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;}
.my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;} .my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;}
.my_dashboard_cont1>span>span {font-weight: 500;} .my_dashboard_cont1>span>span {font-weight: 500;}
@ -667,8 +672,14 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
/* 마이페이지 */ /* 마이페이지 */
/*등급제 아이콘 추가*/ /*등급제 아이콘 추가*/
@media only screen and (max-width:1540px){
.my_dashboard .send_price{width: calc(102% - 486px);}
.my_dashboard .send_price .price_wrap{width: calc(105% - 73px);}
.my_dashboard .send_price .price_title{width: 65px;}
.send_top .send_price li{margin-right: 2px; padding-right:6px;}
.my_dashboard>.my_dashboard_cont1, .my_dashboard>.my_dashboard_cont3{flex-wrap: nowrap;}
.send_top .send_price .price_line::after{content: none;}
}
/* media queries */ /* media queries */
@ -677,7 +688,7 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
.my_dashboard_cont1 p{font-size: 16px;} .my_dashboard_cont1 p{font-size: 16px;}
.my_dashboard_cont1 p span{font-size: 24px;} .my_dashboard_cont1 p span{font-size: 24px;}
.my_dashboard .my_dashboard_cont1 button{height: 40px; padding: 0 15px; font-size: 16px; font-weight: 500;} .my_dashboard .my_dashboard_cont1 button{height: 40px; padding: 0 15px; font-size: 16px; font-weight: 500;}
.my_dashboard .send_price{width: calc(100% - 340px);} .my_dashboard .send_price{width: calc(100% - 387px);}
.send_top .send_price li{letter-spacing: -1px;} .send_top .send_price li{letter-spacing: -1px;}
.send_top .send_price .title{padding: 0 4px 0 0;} .send_top .send_price .title{padding: 0 4px 0 0;}
@ -687,7 +698,10 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
.my_dashboard .my_dashboard_cont1 button {font-size: 16px; padding: 0 8px; margin: 0 0 0 13px; color: #002c9a;} .my_dashboard .my_dashboard_cont1 button {font-size: 16px; padding: 0 8px; margin: 0 0 0 13px; color: #002c9a;}
.my_dashboard_cont1 .level_icon{margin: 0 22px 0 0;} .my_dashboard_cont1 .level_icon{margin: 0 22px 0 0;}
.my_dashboard .send_price{margin: 0 -24px 0 0;} .my_dashboard .send_price{margin: 0 -24px 0 0;}
.my_dashboard .send_price .price_title{width: 75px;} .my_dashboard .send_price .price_wrap{width: calc(104% - 88px);}
.my_dashboard .title_wrap .btnType{margin: 0 10px 0 0;}
/*.my_dashboard .send_price .price_title{width: 75px;}*/
.my_dashboard .send_price .price_title{width: 50px; font-size: 16px; line-height: 1.4:}
} }
@media only screen and (max-width:1380px){ @media only screen and (max-width:1380px){
@ -697,6 +711,11 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare
@media only screen and (max-width:1300px){ @media only screen and (max-width:1300px){
/* join3 */ /* join3 */
.mem_cont.join3 .text_middle>div {font-size: 16px;} .mem_cont.join3 .text_middle>div {font-size: 16px;}
.my_dashboard .send_price .price_wrap{width:calc(101% - 72px);}
.my_dashboard .send_price{width: calc(102% - 320px);}
}
@media only screen and (max-width:1280px{
.my_dashboard .send_price ul{padding: 10px 10px;}
} }
@media only screen and (max-width:1260px){ @media only screen and (max-width:1260px){
/* <20>߽Ź<DFBD>ȣ <20><><EFBFBD><EFBFBD> */ /* <20>߽Ź<DFBD>ȣ <20><><EFBFBD><EFBFBD> */

View File

@ -290,7 +290,7 @@
.error_hover_cont {top: 45px; right: -1px; width: 320px;line-height:1.4;} .error_hover_cont {top: 45px; right: -1px; width: 320px;line-height:1.4;}
.test_hover_cont {top: 54px; right: -1px; width: 220px;} .test_hover_cont {top: 54px; right: -1px; width: 220px;}
.addr_hover_cont {top:inherit;bottom:40px;} .addr_hover_cont {top:inherit;bottom:40px;}
.sub .election .list_bottom_right .send_hover_cont{width:270px;}
/* 통신사 고객센터 정보 */ /* 통신사 고객센터 정보 */
@ -1132,6 +1132,20 @@
.toast_popup .title{font-size:16px;font-weight:500;color:#fff;line-height:1.5;} .toast_popup .title{font-size:16px;font-weight:500;color:#fff;line-height:1.5;}
.toast_popup .btn_close{display:inline-block;width:20px;height:20px;background:url(/publish/images/icon_toast_close.png) no-repeat center center;} .toast_popup .btn_close{display:inline-block;width:20px;height:20px;background:url(/publish/images/icon_toast_close.png) no-repeat center center;}
/*20건 문자(수동문자) 이용안내 팝업*/
.tw_wrap .con .tw_title{padding: 0 0 10px 0;}
.tw_wrap .tw_title01_icon{background-image: url(/publish/images/popup/tw_popup/title01_icon.png); width: 28px; height: 24px; margin: 0 5px 0 0;}
.tw_wrap .con .tw_title .tw_title02_icon{background-image: url(/publish/images/popup/tw_popup/title02_icon.png); width: 28px; height: 24px; margin: 0 5px 0 0;}
.tw_wrap .con .tw_title .tw_title03_icon{background-image: url(/publish/images/popup/tw_popup/title03_icon.png); width: 28px; height: 24px; margin: 0 5px 0 0;}
.tw_wrap .con .tw_title .tw_title04_icon{background-image: url(/publish/images/popup/tw_popup/title04_icon.png); width: 28px; height: 24px; margin: 0 5px 0 0;}
.tw_wrap .con .tw_title .tw_title05_icon{background-image: url(/publish/images/popup/tw_popup/title05_icon.png); width: 28px; height: 24px; margin: 2px 5px 0 0;}
.tw_wrap .con .tw_con ul li{font-size: 17px; color: #222; font-weight: 500; line-height: 1.8;}
.tw_wrap .con .tw_con ul .te{line-height: 1.4; text-indent: -10px; word-break: keep-all; margin: 0 0 10px 13px;}
.tw_wrap .con .tw_con ul .sub_te{font-size: 16px; color: #666; font-weight: 400; line-height: 1.5; margin: -5px 0 0 11px;}
.tw_wrap .con .tw_con .sub_li li{font-size: 16px; color: #666; font-weight: 400; line-height: 1.6; margin: 0 0 0 11px;}
.tw_wrap .con .tw_con .li_02{margin: 10px 0 0 0;}
.tw_wrap .con .tw_con img{width: 100%; margin: 22px 0 40px 0;}
/* ie */ /* ie */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

View File

@ -18,6 +18,7 @@
<!-- <p>***<span class="font1"> (컨텐츠)</span> : 반복적으로 사용 안함</p> <!-- <p>***<span class="font1"> (컨텐츠)</span> : 반복적으로 사용 안함</p>
<p>***<span class="font2"> (보드)</span> : 반복적으로 사용</p> --> <p>***<span class="font2"> (보드)</span> : 반복적으로 사용</p> -->
<ul class="page"> <ul class="page">
<li><a href="/publish/payment6.html">payment6.html</a>후불회원 : 결제관리 > 요금사용내역</li>
<li><a href="/publish/sub_election_2023.html">sub_election_2023.html</a>선거문자</li> <li><a href="/publish/sub_election_2023.html">sub_election_2023.html</a>선거문자</li>
<li><a href="/publish/publish_text/send_text.html">send_text.html</a>문자보내기</li> <li><a href="/publish/publish_text/send_text.html">send_text.html</a>문자보내기</li>
<li><a href="/publish/publish_text/text_send.html">text_send.html</a>문자발송</li> <li><a href="/publish/publish_text/text_send.html">text_send.html</a>문자발송</li>

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 566 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1009 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 909 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

View File

@ -288,10 +288,21 @@
<button type="button" class="btnType btnType2">로그아웃</button> <button type="button" class="btnType btnType2">로그아웃</button>
</div> </div>
<div class="check_money"> <div class="check_money">
<div class="holdingsum_box">
<i></i> <i></i>
<p>보유잔액 <span class="fwMd">3,000</span></p> <p>보유잔액 <span class="fwMd">3,000</span></p>
<dl>
<dd>후불제 고객의 보유잔액(캐시)은 당월 발송 가능<br>금액을 말하며 <span>매월 1일 자동으로 충전</span>됩니다.</dd>
</dl>
</div>
<button type="button" class="btnType btnType3">충전</button> <button type="button" class="btnType btnType3">충전</button>
<div class="account_box">
<button type="button" class="btnType btnType3">전용계좌</button> <button type="button" class="btnType btnType3">전용계좌</button>
<dl>
<dt>전용계좌</dt>
<dd>신한은행 56212519515101</dd>
</dl>
</div>
</div> </div>
<div class="point"> <div class="point">
<i></i> <i></i>

View File

@ -0,0 +1,590 @@
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>문자온_요금사용내역</title>
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/publish/css/reset.css">
<link rel="stylesheet" href="/publish/css/jquery.mCustomScrollbar.css">
<link rel="stylesheet" href="/publish/css/common.css">
<link rel="stylesheet" href="/publish/css/button.css">
<link rel="stylesheet" href="/publish/css/content.css">
<link rel="stylesheet" href="/publish/css/mem.css">
<link rel="stylesheet" href="/publish/css/font.css">
<link rel="stylesheet" href="/publish/css/popupLayer.css">
<link rel="stylesheet" href="/publish/js/datepicker/classic.css">
<link rel="stylesheet" href="/publish/js/datepicker/classic.date.css">
<script src="/publish/js/jquery-3.5.0.js"></script>
<script src="/publish/js/jquery.mCustomScrollbar.concat.min.js"></script>
<script src="/publish/js/common.js"></script>
<script src="/publish/js/content.js"></script>
<script src="/publish/js/calendar.js"></script>
<script src="/publish/js/popupLayer.js"></script>
<script type="text/javascript" src="/publish/js/datepicker/picker.js"></script>
<script type="text/javascript" src="/publish/js/datepicker/picker.date.js"></script>
<script type="text/javascript" src="/publish/js/datepicker/ko_KR.js"></script>
</head>
<body>
<div class="mask"></div>
<!-- skip 메뉴 -->
<div class="skip_menu">
<a href="#cont" title="본문 바로가기" class="contGo">본문 바로가기</a>
</div>
<!--// skip 메뉴 -->
<!-- quick 메뉴 -->
<div class="quickMenu">
<div>
<p class="quick_title">QUICK<br>MENU</p>
<p class="quick_title2">QUICK</p>
<ul class="quickMenuIn">
<li>
<a href="/publish/index.html"><i class="quick1"></i><span>이용안내</span></a>
<div class="hover_cont">이용안내</div>
</li>
<li>
<a href="#"><i class="quick2"></i><span>채팅상담</span></a>
<div class="hover_cont">채팅상담</div>
</li>
<li>
<a href="#"><i class="quick3"></i><span>원격지원</span></a>
<div class="hover_cont">원격지원</div>
</li>
<li>
<a href="#"><i class="quick4"></i><span>맞춤제작</span></a>
<div class="hover_cont">맞춤제작</div>
</li>
<li>
<a href="#"><i class="quick5"></i><span>주소록 등록</span></a>
<div class="hover_cont">주소록 등록</div>
</li>
<li>
<a href="#"><i class="quick6"></i><span>엑셀 전송</span></a>
<div class="hover_cont">엑셀 대량전송</div>
</li>
<li>
<a href="#"><i class="quick7"></i><span>견적서</span></a>
<div class="hover_cont">견적서</div>
</li>
<li>
<a href="#"><i class="quick8"></i><span>결제</span></a>
<div class="hover_cont">결제</div>
</li>
<li>
<a href="#"><i class="quick9"></i><span>영수증/계산서</span></a>
<div class="hover_cont">영수증/계산서</div>
</li>
</ul>
<button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button>
</div>
</div>
<!--// quick 메뉴 -->
<!-- header 영역 -->
<header id="header" class="header">
<!-- header top 영역 -->
<div class="header_top">
<div class="inner">
<ul class="menu_left">
<li><a href="#"><i class="hdTop_fav"></i>즐겨찾기추가</a></li>
<li><a href="#"><i class="hdTop_mypage"></i>마이페이지</a></li>
<li><a href="#"><i class="hdTop_center"></i>고객센터</a></li>
</ul>
<ul class="menu_right">
<li><a href="#">충전하기</a></li>
<li class="SortLine"><a href="#">요금안내</a></li>
<li class="SortLine"><a href="#">이용안내</a></li>
<li class="SortLine"><a href="#">1:1고객상담</a></li>
</ul>
</div>
</div><!-- header top 영역 -->
<!-- header body 영역 -->
<div class="header_body">
<div class="inner table">
<h1 class="logo"><a href="/publish/index.html" alt="문자온 메인 바로가기"><img src="/publish/images/CI.png" alt="문자온 CI"></a></h1>
<ul class="gnbWrap table_cell">
<li><a href="#">문자발송</a></li>
<li><a href="#">선거문자</a></li>
<li><a href="#">맞춤제작</a></li>
<li><a href="#">비즈톡</a></li>
<li><a href="#">주소록 관리</a></li>
<li><a href="#">발송결과</a></li>
<li><a href="#">예약관리</a></li>
<li><a href="#">결제내역</a></li>
</ul>
<div class="s_menu">
<i class="allSearch_info"><span>문자검색</span></i>
<button type="button" title="전체검색" class="allSearch" onclick="searchToggle();"><img src="/publish/images/search.png" alt="검색영역 열기" class="allMenu"></button>
<button type="button" title="전체메뉴"><img src="/publish/images/all_menu.png" alt="전체메뉴 열기"></button>
</div>
</div>
<!-- search popup 영역 -->
<div class="pop_search">
<div class="inner">
<div class="area_search">
<select name="" id="">
<option value="">그림문자</option>
<option value="">단문문자</option>
<option value="">장문문자</option>
<option value="">GIF</option>
</select>
<input type="text" placeholder="문자샘플 검색하기">
<button><img src="/publish/images/search02.png" alt=""></button>
</div>
<div class="area_popular">
<p><i></i>인기검색어</p>
<ul class="popular_tag">
<li><a href="#">#정월대보름</a></li>
<li class="on"><a href="#">#추석</a></li>
<li><a href="#">#가을인사</a></li>
<li><a href="#">#좋은하루</a></li>
</ul>
</div>
<button class="btn_close" onclick="searchToggle();"><img src="/publish/images/btn_searchclose.png" alt=""></button>
</div>
</div>
<!--// search popup 영역 -->
</div>
<!--// header body 영역 -->
<div id="login" class="login">
<div class="inner table">
<div class="login_left table_cell">
<div class="login_put">
<label for="id_text" class="label"></label>
<input type="text" placeholder="아이디를 입력해주세요" id="id_text" class="id_text" maxlength="30" size="18">
<label for="password_text" class="label"></label>
<input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30" size="18">
<label for="login_button" class="label"></label>
<button type="submit" class="btnType btnType1" class="login_button">로그인</button>
</div>
<div class="login_save">
<input type="checkbox" id="save_id">
<label for="save_id">아이디 저장</label>
</div>
<div class="login_find">
<a href="#">아이디찾기 /</a>
<a href="#">비밀번호 찾기</a>
</div>
<div>
<button type="button" class="btnType btnType2">회원가입</button>
<button type="button" class="btnType btnType3">둘러보기</button>
</div>
</div>
<div class="login_right">
<span><i></i>이달의 이벤트</span>
<button type="button" class="btnType btnType4">바로가기</button>
</div>
</div>
</div>
<!--// login 영역 -->
</header>
<!--// header 영역 -->
<!-- login 영역 -->
<!-- content 영역 -->
<div id="container" class="cont sub">
<div class="inner">
<!-- send top -->
<div class="send_top">
<!-- tab button -->
<ul class="tabType4">
<li class="tab"><button type="button" onclick="TabType5(this,'1');">요금안내/견적내기</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'1');">결제하기</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'2');">요금 결제내역</button></li>
<li class="tab active"><button type="button" onclick="TabType5(this,'3');">요금 사용내역</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'4');">계산서/현금영수증 발행 등록</button></li>
</ul>
<!--// tab button -->
<!-- 결제관리 - 요금 사용내역 -->
<div class="serv_content current" id="tab5_4">
<div class="heading">
<h2>요금 사용내역</h2>
</div>
<p class="tRight c_666" style="margin: 0 0 10px 0">(VAT 별도)</p>
<div class="hisroy_price">
<div class="hisroy_defprice_in">
<p><i></i>누적 사용금액</p>
<div class="clearfix">
<p>캐시</p>
<p><span>120</span></p>
</div>
<div class="clearfix">
<p>포인트</p>
<p><span>120</span></p>
</div>
</div>
<div class="hisroy_defprice_in">
<p><i></i>누적 납부금액</p>
<div class="clearfix">
<p>캐시</p>
<p><span>120</span></p>
</div>
<div class="clearfix">
<p>포인트</p>
<p><span>120</span></p>
</div>
</div>
<div class="hisroy_defprice_in">
<p><i></i>당월 납부 예상금액</p>
<div class="clearfix">
<p>캐시</p>
<p><span>120</span></p>
</div>
<div class="clearfix">
<p>포인트</p>
<p><span>120</span></p>
</div>
</div>
<div class="hisroy_defprice_in">
<p><i></i>잔액 (사용가능금액)</p>
<div class="clearfix">
<p>캐시</p>
<p><span>43,898.6</span></p>
</div>
<div class="clearfix">
<p>포인트</p>
<p><span>120</span></p>
</div>
</div>
</div>
<div class="history_details">
<p class="tType1_title"><img src="images/content/history_details_title.png" alt=""> 발송내역</p>
<div class="details_wrap">
<table>
<colgroup>
<col style="width: calc(100% / 5);">
<col style="width: calc(100% / 5);">
<col style="width: calc(100% / 5);">
<col style="width: calc(100% / 5);">
<col style="width: calc(100% / 5);">
</colgroup>
<thead>
<tr>
<th>구분</th>
<th>문자</th>
<th>알림톡</th>
<th>팩스</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>발송건(매)수</td>
<td>100,000,000</td>
<td>100,000,000</td>
<td>100,000,000</td>
<td>100,000,000</td>
</tr>
<tr>
<td>예약건수</td>
<td>100,000,000</td>
<td>100,000,000</td>
<td>100,000,000</td>
<td>100,000,000</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="tType1_title"><img src="/publish/images/content/icon_details_breakdown.png" alt=""> 세부내역</p>
<div class="excel_middle">
<div class="select_btnWrap clearfix">
<div class="btn_left">
<span class="cal_label">기간선택</span>
<div class="calendar_wrap">
<input type="text" class="startDate inp calendar picker__input" title="검색 시작일" id="startDate" name="startDate" value="" data-datecontrol="true" readonly="" aria-haspopup="true" aria-expanded="false" aria-readonly="false" aria-owns="startDate_root">
<span class="dateEtc">~</span>
<input type="text" class="endDate inp calendar picker__input" title="검색 종료일" id="endDate" name="endDate" value="" data-datecontrol="true" readonly="" aria-haspopup="true" aria-expanded="false" aria-readonly="false" aria-owns="endDate_root">
</div>
<button type="button">이번년도</button>
<button type="button">전월</button>
<button type="button">당월</button>
<button type="button" class="btnType6">조회</button>
<span class="reqTxt4"><span class="vMiddle">*</span> 조회기간의 사용내역만 보여집니다.</span>
</div>
<div>
</div>
</div>
</div>
<div class="list_tab_wrap2 type2">
<!-- tab button -->
<ul class="list_tab">
<li class="tab active"><button type="button" onclick="listTab2(this,'1');">전체</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'2');">단문</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'3');">장문</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'4');">그림</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'5');">선거</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'5');">알림톡</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'5');">친구톡</button></li>
<li class="tab"><button type="button" onclick="listTab2(this,'5');">팩스</button></li>
</ul>
<!--// tab button -->
</div>
<div class="price_history_cont" id="listTab2_5">
<div class="list_info">
<p><span>10</span>건 / 사용금액 합계 : <span>25,000</span></p>
<div>
<button type="button" class="print_btn"><i class="print_img"></i>인쇄하기</button>
<button type="button" class="pdf_btn"><i class="pdf_img"></i>PDF저장</button>
<button type="button" class="excel_btn"><i class="downroad"></i>엑셀 다운로드</button>
</div>
</div>
<div class="tb_wrap">
<table class="tType4">
<colgroup>
<col style="width: 17%;">
<col style="width: 17%;">
<col style="width: 17%;">
<col style="width: 15%;">
<col style="width: *%;">
<col style="width: *%;">
</colgroup>
<thead>
<tr>
<th rowspan="2">
발송일시
<div class="sort_wrap">
<button type="button"><img src="images/sortUp.png" alt="오름차순으로 분류"></button>
<button type="button"><img src="images/sortDown.png" alt="내림차순으로 분류"></button>
</div>
</th>
<th rowspan="2">
문자유형
<div class="sort_wrap">
<button type="button"><img src="images/sortUp.png" alt="오름차순으로 분류"></button>
<button type="button"><img src="images/sortDown.png" alt="내림차순으로 분류"></button>
</div>
</th>
<th rowspan="2">
내용
</th>
<th rowspan="2">
발송건수
</th>
<th colspan="2">사용</th>
</tr>
<tr>
<th>충전금</th>
<th>포인트</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8888</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>8(1)</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">50</p>
</td>
</tr>
<tr>
<td>
<p>2023-12-28 07:32</p>
</td>
<td>
<p>장문</p>
</td>
<td>
<p><button class="btnType btnType20" onclick="#">상세보기</button></p>
</td>
<td>
<p>5897</p>
</td>
<td>
<p class="fwRg c_002c9a">0</p>
</td>
<td>
<p class="fwRg c_002c9a">500</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="publish_btn clearfix">
<div>
<input type="radio" checked>
<label for="">거래명세서</label>
<input type="radio">
<label for="">사용내역서</label>
</div>
<div>
<button type="button" class="btnType">발행하기</button>
</div>
</div>
<!-- pagination -->
<ul class="pagination">
<li class="page_first"><button><img src="/publish/images/content/page_first.png" alt=""></button></li>
<li class="page_prev"><button><img src="/publish/images/content/page_prev.png" alt=""></button></li>
<li class="on"><button>1</button></li>
<li><button>2</button></li>
<li><button>3</button></li>
<li><button>4</button></li>
<li><button>5</button></li>
<li><button>6</button></li>
<li><button>7</button></li>
<li><button>8</button></li>
<li><button>9</button></li>
<li><button>10</button></li>
<li class="page_next"><button><img src="/publish/images/content/page_next.png" alt=""></button></li>
<li class="page_last"><button><img src="/publish/images/content/page_last.png" alt=""></button></li>
</ul><!-- pagination -->
</div><!-- 결제관리 - 요금 사용내역 -->
</div>
</div>
<!--// send top -->
</div>
</div>
<!--// content 영역 -->
<!-- footer 영역 -->
<footer id="footer" class="footer">
<div class="footer_top">
<div class="inner table">
<ul class="table_cell">
<li><a href="#">이용약관</a></li>
<li class="SortLine fwRg c_white"><a href="#">개인정보취급방침</a></li>
<li class="SortLine fwRg c_white"><a href="#">스팸관리정책</a></li>
<li class="SortLine"><a href="#">불법스팸예방안내</a></li>
</ul>
</div>
</div>
<div class="footer_body">
<div class="inner table">
<div class="table_cell">
<a href="#" class="footer_logo"><img src="/publish/images/CI_white.png" alt="문자온 CI"></a>
<div class="footer_info">
<p>주소 : 경기도 남양주시 다산중앙로 19번길 21 1027호, 1028호(블루웨일 지식산업센터 1차)</p>
<p>사업자번호 : 653-87-00858 대표 : 유인식 통신판매등록번호 : 제 다산-12345호 문의전화 : 070-4786-0007</p>
<p>Copyright 2020 ⓒ MUNJAON co. Ltd, All rights reserved.</p>
</div>
<div class="footer_service_center">
<i></i>
<div>
<p>고객센터</p>
<span class="footer_service_num">070-4786-0008</span>
<span>E-mail : help@iten.co.kr</span>
</div>
</div>
</div>
</div>
</div>
</footer>
<!--// footer 영역 -->
</body>
</html>

View File

@ -0,0 +1,385 @@
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>설날문자 인사말 문구 모음 - 문자온</title>
<meta name="Keywords" content="문자전송, 문자발송, SMS, LMS, MMS, 문자보내기, 단체문자, 단체문자전송, 단체문자발송,단체문자사이트,문자사이트, 대량문자">
<meta name="description" content="설날은 한 해가 시작되는 새해 새 달의 첫 날로 한 해의 최초 명절이라는 의미를 가지고 있습니다. 우리에게 있어서 설날은 빼놓을 수 없는 중요한 명절인데요. 긴 연휴를 앞두고 주변인들에게 덕담 한마디와 반가운 인사말을 문자로 남겨보시는 건 어떨까요? 어떻게 작성하면 좋을지 고민하고 계시는 여러분들을 위해 문자온이 다양한 예시를 보여드리도록 하겠습니다.">
<meta property="og:type" content="website">
<meta property="og:title" content="설날문자 인사말 문구 모음 - 문자온">
<meta property="og:description" content="설날은 한 해가 시작되는 새해 새 달의 첫 날로 한 해의 최초 명절이라는 의미를 가지고 있습니다. 우리에게 있어서 설날은 빼놓을 수 없는 중요한 명절인데요. 긴 연휴를 앞두고 주변인들에게 덕담 한마디와 반가운 인사말을 문자로 남겨보시는 건 어떨까요? 어떻게 작성하면 좋을지 고민하고 계시는 여러분들을 위해 문자온이 다양한 예시를 보여드리도록 하겠습니다.">
<link rel="apple-touch-icon" sizes="57x57" href="/publish/images/favicon/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/publish/images/favicon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/publish/images/favicon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/publish/images/favicon/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/publish/images/favicon/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/publish/images/favicon/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/publish/images/favicon/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/publish/images/favicon/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/publish/images/favicon/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/publish/images/favicon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/publish/images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/publish/images/favicon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/publish/images/favicon/favicon-16x16.png">
<link rel="manifest" href="/publish/images/favicon/manifest.json">
<link rel="stylesheet" href="/publish/publish_adv/css/reset.css">
<link rel="stylesheet" href="/publish/publish_adv/css/style.css">
<link rel="stylesheet" href="/publish/css/font.css">
<script src="/publish/js/jquery-3.5.0.js"></script>
<script>
function topBtn() {
$("html").scrollTop("0");
}
</script>
</head>
<body>
<div class="template_v1_content content_ten con_four">
<button type="button" class="top_btn" onclick="topBtn()" style="z-index: 2;"><br>TOP</button>
<header>
<div class="inner">
<a href="https://www.munjaon.co.kr">
<h1><img src="/publish/publish_adv/img/template_v1_header_logo.png" alt=""></h1>
</a>
</div>
</header>
<div class="visual">
<div class="inner">
<p class="keyword">keyword</p>
<h2>설날문자 인사말 문구 모음</h2>
<p class="sub_text obituary_te">설날은 한 해가 시작되는 새해 새 달의 첫 날로 한 해의 최초 명절이라는 의미를 가지고 있습니다. 우리에게 있어서 설날은 빼놓을 수 없는 중요한 명절인데요. 긴 연휴를 앞두고 주변인들에게 덕담 한마디와 반가운 인사말을 문자로 남겨보시는 건 어떨까요? 어떻게 작성하면 좋을지 고민하고 계시는 여러분들을 위해 문자온이 다양한 예시를 보여드리도록 하겠습니다.</p>
</div>
</div>
<!--
<div class="index">
<div class="inner">
<p>&ensp;</p>
<nav>
<ul>
<li><a href="#section01">설날문자 예시</a></li>
</ul>
</nav>
</div>
</div>
-->
<!--연관 내용-->
<!--
<div class="ass">
<div class="inner">
<div class="ass_con">
<p class="title">연관 내용</p>
<p><a href="https://www.munjaon.co.kr/publish/publish_adv/adv_template_v1_manuscript_12.html">- 연말연시 감사 인사말 문구</a></p>
<p><a href="https://www.munjaon.co.kr/publish/publish_adv/adv_template_v1_manuscript_13.html">- 크리스마스 문자 예시 모음</a></p>
</div>
</div>
</div>
-->
<section class="section section01" id="section01">
<div class="inner obituary_inner">
<h3>설날문자 예시</h3>
<div class="short">
<p class="text bold" style="margin: 0 0 8px 0;">[단문]</p>
<ul class="obituary">
<li>
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
온 가족 한자리에 모여 떡국을 먹고<br>
한 살 더 먹는 설날. 새해에 소원성취하길 바랍니다♧
<p class="date">PM 3:45</p>
</div>
</div>
<div class="people_01"></div>
<div class="speech_bubble"></div>
</li>
<li class="move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
새롭게 다시 시작하는 설날!<br>
새로운 마음으로 새로운 꿈과 목표를 향해 힘차게 출발해요! 아자!
<p class="date">PM 5:30</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
민족 대명절, 설날은 웃어른을 찾아뵙고<br>
인사드리며 덕담을 나누는 날입니다.<br>
행복한 설 연휴 보내세요.
<p class="date">PM 8:55</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
설날 고향 가시는 길 운전 조심히 하시고<br>
건강히 잘 다녀오세요.<br>
새해 복 많이 받으시고 행복하세요~^^
<p class="date">AM 8:40</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
설날을 맞이하여 더욱 건강하시고<br>
원하시는 일 모두 이루시기 바랍니다.<br>
새해 복 많이 받으세요.
<p class="date">PM 2:15</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
ㆀ┌─♡┐~빵 <br>
┌┘▧▧└┐~빵<br>
└◎──◎┘<br>
고향 가는 길 운전 조심하고 즐겁게 보내세요.
<p class="date">AM 9:30</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
정월 초하룻날인 설날입니다.<br>
가족들이 한자리에 모여 웃음이 끊이지 않는<br>
정 넘치는 설 연휴 되세요.
<p class="date">PM 2:20</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
즐거운 설입니다.<br>
어깨에 올려진 걱정, 근심 모두 내려놓으시고<br>
설날의 여유로움을 즐기세요♡
<p class="date">PM 6:50</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
즐거운 명절 설날!<br>
올해에는 마음, 재물, 건강, 웃음, 행복, 행운<br>
모두 부자 되시길 기원합니다~♬
<p class="date">AM 9:30</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
까치의 울음소리에 밝은 새해를 기뻐하는<br>
설날 아침입니다.<br>
가족들이랑 즐거운 설 연휴 보내세요.
<p class="date">AM 11:20</p>
</div>
</div>
<div class="people_03"></div>
<div class="speech_bubble"></div>
</li>
</ul>
</div>
<div class="line"></div>
<div class="long">
<p class="text bold" style="margin: 0 0 8px 0;">[장문]</p>
<ul class="obituary">
<li>
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
까치 까치 설날은 어저께고요, 우리 우리 설날은 오늘이래요~♬<br><br>
어느새 2024년 첫 연휴인, 설날이 코앞으로 다가왔습니다.<br><br>
날씨는 춥지만 가족, 친지들과 모여 훈훈한 정을 나누는 명절 보내시길 바랍니다.
<p class="date">PM 1:10</p>
</div>
</div>
<div class="people_01"></div>
<div class="speech_bubble"></div>
</li>
<li class="move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
다사다난했던 2023년이 저물어 가고 희망찬 새해가 다가 옵니다.<br>
2023년 힘들고 안 좋았던 기억들은 저물어 가는 해에 다 실어 보내세요.<br><br>
2024년엔 새로운 희망들이 우리를 찾아오리라 기대해 봅니다.<br><br>
늘 건강하시고, 많은 행운들이 함께 하시길 기원합니다.
새해 복 많이 받으세요.
<p class="date">AM 8:45</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
우리는 옛날부터 설날에는 떡국을 먹어야 한 살 더 먹는 것이라고 여겨왔습니다.<br>
한살 더 먹은 만큼 지혜로워지고, 그만큼 더 성숙해져서 보다 슬기로운 삶을 살 수 있는 것과 마찬가지겠죠~<br>
이번 설을 계기로 새로 출발하는 좋은 시작점이 되기를 희망해봅니다.<br>
올 한 해 강건하시고, 소망하시는 일 이루시길 다시 한 번 기원합니다.<br>
즐겁고 따뜻한 명절 보내십시오.
<p class="date">PM 5:35</p>
</div>
</div>
<div class="people_01"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
곧 있으면 2024년 첫 명절, 설날입니다.<br>
사랑하는 부모님, 친지들 찾아뵙고<br>
온 가족이 둘러앉아 다같이 명절음식을 나눠먹으며 행복한 연휴 보내세요.<br><br>
아마 추운 겨울날에 가족을 더 생각하는 것이지 싶어요.<br>
이번 설에도 칼바람이 볼을 에는 추위가 계속된다고 합니다. 모두 건강 유의하시고 행복한 시간 되시기 바랍니다.<br>
<p class="date">AM 8:30</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
즐거운 설 명절 입니다.<br>
새해의 좋은 기운을 많이 받으셔서 2023년 계묘년도 승승장구하시는 한 해 되시기를 기원드립니다.<br><br>
그동안의 보살핌에 감사드리고, 새해에도 많은 가르침 부탁드립니다.<br>
고맙습니다.<br><br>
늘 건강하시고, 새해 복 많이 받으세요.
<p class="date">PM 5:15</p>
</div>
</div>
<div class="people_02"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
설날이 며칠 앞으로 다가왔습니다.<br><br>
설맞이 행복하고, 가족의 따스한 정과 소중함을 느끼시는 설날되셨으면 좋겠네요.<br><br>
추운 날씨에 항상 감기 조심하시고, 언제나 당신의 삶에 행복이 가득하시길 바랍니다 ^-^<br>
새해 복 많이 받으시고, 올 한해 행복하세요~
<p class="date">PM 5:30</p>
</div>
</div>
<div class="people_01"></div>
<div class="speech_bubble"></div>
</li>
<li class="second_line move_line">
<div class="wrap">
<div class="title">
<p class="text">설날문자</p>
</div>
<div class="inner_text">
2023년 새해엔 복 많이 받으시고<br><br>
행복한 한해 되세요~~!!<br>
꾸벅~ 큰절~^^<br><br>
세뱃돈은 당신의 환한 웃음이면 충분해요. ^^
<p class="date">PM 7:30</p>
</div>
</div>
<div class="people_01"></div>
<div class="speech_bubble"></div>
</li>
</ul>
</div>
<div class="line"></div>
<div class="drawing">
<p class="text bold" style="margin: 0 0 8px 0;">[그림문자]</p>
<img src="/publish/publish_adv/img/template_v1_manuscript_15_section01_img01.png" alt="">
</div>
</div>
</section>
<div class="btn_wrap">
<div class="inner">
<a href="https://www.munjaon.co.kr/web/mjon/msgdata/selectMsgDataView.do">설날문자 보내기</a>
</div>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 KiB

View File

@ -52,12 +52,27 @@ footer ul li a{color: #fff;}
footer ul li:last-child{margin: 0 auto;} footer ul li:last-child{margin: 0 auto;}
footer .iten{padding: 22px 0 40px 0; font-size: 26px; font-weight: 300; opacity: 40%;} footer .iten{padding: 22px 0 40px 0; font-size: 26px; font-weight: 300; opacity: 40%;}
/*intro_03 내용 수정*/
.visual .banner_con ul{padding: 50px 20px;}
.visual .banner_con ul li{width:calc((100% - 15px)/2)}
.visual .banner_con ul .wrap{border: none;}
.visual .banner_con ul .wrap .inner_text{border-radius: 8px; font-weight: 700; padding: 15px 7px; line-height: 1.1; box-shadow: 0 0 20px rgba(0,0,0,0.3 );}
.visual .banner_con ul .wrap .inner_text span{font-size: 20px;}
.con .add_wrap .text .inner_sub{font-size: 30px; font-weight: 300;}
/*미디어쿼리_640x*/ /*미디어쿼리_640x*/
@media screen and (max-width:640px){ @media screen and (max-width:640px){
.visual{background-image: url(/publish/publish_m/img/main_bg.png);} .visual{background-image: url(/publish/publish_m/img/main_bg.png);}
} }
/*미디어쿼리_500x*/ /*미디어쿼리_585px*/
@media screen and (max-width:585px){
/*intro_03 내용 수정*/
.visual .banner_con ul .wrap .inner_text{font-size: 18px;}
.visual .banner_con ul .wrap .inner_text span{font-size: 14px;}
}
/*미디어쿼리_500px*/
@media screen and (max-width:500px){ @media screen and (max-width:500px){
/*header*/ /*header*/
header .inner{border-radius: 0 0 20px 0; padding: 3px 20px;} header .inner{border-radius: 0 0 20px 0; padding: 3px 20px;}
@ -91,11 +106,29 @@ footer .iten{padding: 22px 0 40px 0; font-size: 26px; font-weight: 300; opacity:
footer .title p{margin: 0 0 0 10px;} footer .title p{margin: 0 0 0 10px;}
footer ul li{width: 210px; margin: 0 auto 8px auto; border-radius: 8px; font-size: 22px; padding: 8px 0 5px 0;} footer ul li{width: 210px; margin: 0 auto 8px auto; border-radius: 8px; font-size: 22px; padding: 8px 0 5px 0;}
footer .iten{padding: 12px 0 20px 0; font-size: 13px;} footer .iten{padding: 12px 0 20px 0; font-size: 13px;}
/*intro_03 내용 수정*/
.visual .banner_con ul .wrap{border: none;}
.visual .banner_con ul .wrap .inner_text{font-size: 18px; border-radius: 8px; font-weight: 700; font-size: 18px; padding: 15px 7px 13px 7px; line-height: 1.1; box-shadow: 0 0 20px rgba(0,0,0,0.3 );}
.visual .banner_con ul .wrap .inner_text span{font-size: 14px;}
.con .add_wrap .text .inner_sub{font-size: 15px;}
} }
/*미디어쿼리_460pxx*/ /*미디어쿼리_460px*/
@media screen and (max-width:460px){ @media screen and (max-width:460px){
.visual{background-image: url(/publish//publish_m/img/main_bg_small_01.png);} .visual{background-image: url(/publish//publish_m/img/main_bg_small_01.png);}
/*intro_03 내용 수정*/
.visual .banner_con ul .wrap .inner_text{font-size: 16px;}
}
/*미디어쿼리_383px*/
@media screen and (max-width:383px){
.visual .banner_con ul .wrap .second_te{padding: 15px 6px 13px 6px;}
}
/*미디어쿼리_382px*/
@media screen and (max-width:382px){
.visual .banner_con ul .wrap .second_te{padding: 15px 7px 13px 7px;}
} }
/*미디어쿼리_360x*/ /*미디어쿼리_360x*/
@ -107,10 +140,19 @@ footer .iten{padding: 22px 0 40px 0; font-size: 26px; font-weight: 300; opacity:
@media screen and (max-width:340px){ @media screen and (max-width:340px){
.visual .price ul .wrap .title{font-size: 13px;} .visual .price ul .wrap .title{font-size: 13px;}
.visual .price ul{padding: 0 15px;} .visual .price ul{padding: 0 15px;}
/*intro_03 내용 수정*/
.visual .banner_con ul{padding: 40px 15px;}
} }
/*미디어쿼리_310x*/ /*미디어쿼리_310x*/
@media screen and (max-width:310px){ @media screen and (max-width:310px){
.visual .price ul .wrap .title{font-size: 12px;} .visual .price ul .wrap .title{font-size: 12px;}
.visual .price ul{padding: 0 9px;} .visual .price ul{padding: 0 9px;}
/*intro_03 내용 수정*/
.visual .banner_con ul{padding: 40px 15px;}
}
/*미디어쿼리_310x*/
@media screen and (max-width:300px){
/*intro_03 내용 수정*/
.visual .banner_con ul .wrap .inner_text{font-size: 15px;}
} }

View File

@ -0,0 +1,146 @@
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>프리미엄 문자 발송 서비스 문자온</title>
<meta property="og:title" content="프리미엄 문자 발송 서비스 문자온">
<meta property="og:image" content="https://www.munjaon.co.kr/publish/publish_m/img/preview_logo.png">
<link rel="apple-touch-icon" sizes="57x57" href="/publish/images/favicon/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/publish/images/favicon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/publish/images/favicon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/publish/images/favicon/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/publish/images/favicon/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/publish/images/favicon/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/publish/images/favicon/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/publish/images/favicon/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/publish/images/favicon/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/publish/images/favicon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/publish/images/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/publish/images/favicon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/publish/images/favicon/favicon-16x16.png">
<link rel="manifest" href="/publish/images/favicon/manifest.json">
<link rel="stylesheet" href="/publish/publish_m/css/reset.css">
<link rel="stylesheet" href="/publish/publish_m/css/style.css">
</head>
<body>
<div class="con_wrap">
<header>
<div class="inner">
<a href="https://www.munjaon.co.kr">
<h1><img src="/publish/publish_m/img/header_logo.png" alt="문자온 로고"></h1>
<p>munjaon.co.kr</p>
</a>
</div>
</header>
<div class="visual">
<div class="inner">
<h2><span>프리미엄</span>&nbsp;문자<br>발송 서비스</h2>
<div class="button">
<a href="https://www.munjaon.co.kr">
<p>문자온 바로가기&nbsp;<span>(클릭)</span></p>
</a>
</div>
<div class="price banner_con">
<ul>
<li>
<div class="wrap">
<p class="inner_text">최저가 요금<span>(후불제 가능)</span></p>
</div>
</li>
<li>
<div class="wrap">
<p class="inner_text second_te">편리한 선거문자 시스템</p>
</div>
</li>
</ul>
</div>
</div>
</div>
<section>
<div class="con">
<div class="title">
<p class="num">1</p>
<p>특장점</p>
</div>
<div class="text_wrap add_wrap">
<div class="text">
<p class="te">편리한 20건 선거문자 발송</p>
<p class="inner_sub">(자동분류, 전체선택 가능)</p>
</div>
<div class="text">
<p class="te">업계 최저가 요금</p>
<p class="inner_sub">(현 요금보다 저렴하게 제공)</p>
</div>
<div class="text">
<p class="te">단문<span class="inner_sub">(SMS)</span>, 장문<span class="inner_sub">(LMS)</span>, 그림문자<span class="inner_sub">(MMS)</span>, 카카오 알림톡, 팩스 발송 기능 제공</p>
</div>
<div class="text">
<p class="te">최신 트렌드 반영 서비스 제공</p>
<div class="text_sub">
<p>- 주소록 입력 대행(무료)</p>
<p>- 예약발송 기능 제공(분 단위)</p>
<p>- 문자메시지 지도‧약도 자동 첨부 가능</p>
<p>- 그림문자 주문제작 서비스 제공</p>
<p>- 다양한 결제수단 제공(신용카드, 휴대폰 결제, 전용계좌, 즉시이체, 간편결제 등)</p>
<p>- 무제한 발송량 제공</p>
<p>- 특정 공통문구(이름, 일시, 비용 등) 일괄 변경 기능 제공</p>
</div>
</div>
<div class="text">
<p class="te">기업‧단체‧공공기관 B2B 전용라인 제공</p>
</div>
</div>
</div>
</section>
<section>
<div class="con">
<div class="title">
<p class="num">2</p>
<p>이용고객</p>
</div>
<div class="text_wrap add_wrap">
<div class="text">
<p class="te">개인<span class="inner_sub">(사업자)</span></p>
<div class="text_sub">
<p>- 동호회, 동문회, 향우회, 병원, 부동산, 음식점, 마트, 대리점, 숙박업, 전문직 사무실, 소셜커머스 사업자, 교육시설(학원, 학교, 유치원, 어린이집), 스포츠시설(골프장, 피트니스) 등</p>
</div>
</div>
<div class="text">
<p class="te">기업‧협회‧단체</p>
<div class="text_sub">
<p>- 기업(대‧중‧소기업), 협회, 조합, 비영리단체, 종교단체(교회, 사찰), 은행, 카드사, 쇼핑몰, 택배사, 보험사, 리서치사 등</p>
</div>
</div>
<div class="text">
<p class="te">공공</p>
<div class="text_sub">
<p>- 정부, 지방자치단체, 국회, 지방의회, 법원, 공공기관, 공직유관단체, 도서관, 미술관, 전시관, 공연시설, 영화관 등</p>
</div>
</div>
</div>
</div>
</section>
<footer>
<div class="title">
<img src="/publish/publish_m/img/tel_icon.png" alt="고객센터 아이콘">
<p>고객센터</p>
</div>
<ul>
<li>
<a href="tel:010-8432-9333">010-8432-9333</a>
</li>
<li>
<a href="tel:010-2290-4789">010-2290-4789</a>
</li>
</ul>
<p class="iten">주식회사 아이티앤</p>
</footer>
</div>
</body>
</html>