Browse Source

포인트 소멸 메일안내

sowon4187 5 years ago
parent
commit
a04803121e

+ 37 - 0
src/main/java/com/style24/core/biz/service/TscMailService.java

@@ -8,6 +8,8 @@ import com.style24.persistence.domain.Coupon;
 import com.style24.persistence.domain.CustContactHst;
 import com.style24.persistence.domain.CustCoupon;
 import com.style24.persistence.domain.Customer;
+import com.style24.persistence.domain.Point;
+
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -426,7 +428,42 @@ public class TscMailService {
 			// Do nothing
 		}
 	}
+	
+	/**
+	 * 포인트 만료예정 안내(30일)
+	 *
+	 * @param customer - 고객 정보
+	 * @param point - 포인트정보
+	 * @param senderNo - 보낸
+	 * @author sowon
+	 * @since 2021. 06. 08
+	 */
+	@Transactional("shopTxnManager")
+	public void sendPointExpectNotify(Point point, Integer senderNo) {
+
+		GagaMap replaceInfo = new GagaMap();
+		replaceInfo.setInt("custNo", point.getCustNo());
+		replaceInfo.setString("custNm", point.getCustNm());
+		replaceInfo.setInt("rmPntAmt", point.getRmPntAmt());
+		replaceInfo.setString("expBeDt", point.getExpBeDt());
+		replaceInfo.setString("today", point.getToday());
 
+		netpathyMailSender.send(NetpathyMailSender.MailAnswerSq.POINT_EXTNC_EXPECT.value(), point.getEmail(), replaceInfo);
 
+		try {
+			// 고객접촉이력 정보
+			CustContactHst custContactHst = new CustContactHst();
+			custContactHst.setContactType(TscConstants.ContactType.COUPON_EXTNC_EXPECT.value()); // 접촉유형:임시비밀번호발급(공통코드G054)
+			custContactHst.setContactMethod(TscConstants.ContactMethod.EMAIL.value()); // 접촉방법:알림톡+문자(공통코드G055)
+			custContactHst.setContactContents("포인트소멸예정");
+			custContactHst.setReceiverNo(point.getCustNo());
+			custContactHst.setSenderNo(senderNo);
+			custContactHst.setRegNo(senderNo);
+			coreCustomerService.createCustomerContactHistory(custContactHst);
+		} catch (Exception e) {
+			log.error("error", e);
+			// Do nothing
+		}
+	}
 
 }

+ 6 - 0
src/main/java/com/style24/persistence/domain/Point.java

@@ -17,6 +17,7 @@ public class Point extends TscBaseDomain {
 	private Integer custPntSq;	// 고객포인트일련번호
 	private Integer custNo;		// 고객번호
 	private String custNm;		// 고객이름
+	private String email;		// 이메일
 	private String cellPhnno;	// 휴대전화번호(탈퇴 시 NULL로 처리)
 	private String expBeDt;		// 만료예정일시
 	private String expCmpDt;	// 만료완료일시
@@ -35,6 +36,7 @@ public class Point extends TscBaseDomain {
 	private String pntUploadStat;	// 포인트반영상태(공통코드G280)
 	private String pntUploadDt;		// 포인트반영일시
 	private int pntAmt;				// 포인트금액(+, - 금액으로 표시)
+	private String today;			// 현재
 
 	private int expirePntAmt;			// 소멸포인트
 	private int expectedPntAmt;			// 적립예정포인트
@@ -56,4 +58,8 @@ public class Point extends TscBaseDomain {
 		this.cellPhnno = CryptoUtils.decryptAES(this.cellPhnno);
 		return this.cellPhnno;
 	}
+	public String getEmail() {
+		this.email = CryptoUtils.decryptAES(this.email);
+		return this.email;
+	}
 }