Преглед на файлове

상품의 할인율이 0%의 경우 꺽기및 할인율 표기 제거 처리

LMC преди 4 години
родител
ревизия
6935503950
променени са 1 файла, в които са добавени 80 реда и са изтрити 69 реда
  1. 80 69
      src/main/java/com/style24/core/biz/service/TscMailTemplateService.java

+ 80 - 69
src/main/java/com/style24/core/biz/service/TscMailTemplateService.java

@@ -76,9 +76,9 @@ public class TscMailTemplateService {
 		// 마케팅메일이면
 		if (mailTemplate.getMailtGb().equals("M")) {
 			// 메일템플릿코너 목록
-			Collection<MailTemplateCorner> mtcList = mailTemplateDao.getMailTemplateCornerList(mailtSq);
+			Collection<MailTemplateCorner> conerList = mailTemplateDao.getMailTemplateCornerList(mailtSq);
 
-			if (mtcList != null && !mtcList.isEmpty()) {
+			if (conerList != null && !conerList.isEmpty()) {
 				StringBuilder goodsContent = new StringBuilder();
 				goodsContent.append("<!-- 컨텐츠 시작 -->\n");
 				goodsContent.append("<div style=\"WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; FLOAT: none; COLOR: rgb(0,0,0); FONT: 12px/18px Dotum; ORPHANS: 2; WIDOWS: 2; DISPLAY: inline !important; LETTER-SPACING: normal; TEXT-INDENT: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;\">\n");
@@ -107,12 +107,12 @@ public class TscMailTemplateService {
 				goodsContent.append("									<td width=\"580px;\" bgcolor=\"#ffffff\" style=\"background: #ffffff;\">\n");
 				goodsContent.append("										<!-- 메일내용 시작 -->\n");
 
-				for (MailTemplateCorner mtc : mtcList) {
+				for (MailTemplateCorner coner : conerList) {
 					// 메일템플릿코너상품 목록
-					Collection<MailTemplateGoods> mtcgList = mailTemplateDao.getMailTemplateCornerGoodsList(mtc.getMailtcSq());
+					Collection<MailTemplateGoods> conerGoodsList = mailTemplateDao.getMailTemplateCornerGoodsList(coner.getMailtcSq());
 
 					// 메일템플릿코너별 상품HTML 설정
-					goodsContent.append(this.getGoodsHtml(mtc, mtcgList));
+					goodsContent.append(this.getGoodsHtml(coner, conerGoodsList));
 				}
 
 				goodsContent.append("										<!-- 메일내용 종료 -->\n");
@@ -141,13 +141,13 @@ public class TscMailTemplateService {
 
 	/**
 	 * 마케팅메일용 상품HTML 조회
-	 * @param mtc - 메일템플릿코너 정보
-	 * @param mtcgList - 메일템플릿코너상품 목록
+	 * @param coner - 메일템플릿코너 정보
+	 * @param goodsList - 메일템플릿코너상품 목록
 	 * @return
 	 * @author gagamel
 	 * @since 2021. 5. 27
 	 */
-	private String getGoodsHtml(MailTemplateCorner mtc, Collection<MailTemplateGoods> mtcgList) {
+	private String getGoodsHtml(MailTemplateCorner coner, Collection<MailTemplateGoods> goodsList) {
 		// 메일템플릿코너 미리보기 내용 설정
 		StringBuilder sb = new StringBuilder();
 
@@ -155,16 +155,17 @@ public class TscMailTemplateService {
 		sb.append("<table style=\"width:100%;margin:0;padding:0;\" cellspacing=\"0\" cellpadding=\"0\">\n");
 		sb.append("	<thead>\n");
 		sb.append("		<tr>\n");
-		sb.append("			<th colspan=\"2\" style=\"text-align:center;line-height: 1;font-size: 29px;font-weight: bold;letter-spacing: -0.067em;color:#222222;font-family: 'Apple SD Gothic Neo','나눔고딕',NanumGothic,'맑은고딕',Malgun Gothic, Helvetica, sans-serif;\">").append(mtc.getMailtcNm()).append("</th>\n");
+		sb.append("			<th colspan=\"2\" style=\"text-align:center;line-height: 1;font-size: 29px;font-weight: bold;letter-spacing: -0.067em;color:#222222;font-family: 'Apple SD Gothic Neo','나눔고딕',NanumGothic,'맑은고딕',Malgun Gothic, Helvetica, sans-serif;\">").append(coner.getMailtcNm()).append("</th>\n");
 		sb.append("		</tr>\n");
 		sb.append("	</thead>\n");
 		sb.append("	<tbody<tr><td colspan=\"2\" height=\"28px;\"></td></tr></tbody>\n");
 		sb.append("</table>\n");
 
-		if (mtc.getGoodsCpr() == 1) {
+		//상품노출갯수
+		if (coner.getGoodsCpr() == 1) {
 			// 상품 목록
-			if (mtcgList != null && !mtcgList.isEmpty()) {
-				for (MailTemplateGoods mtcg : mtcgList) {
+			if (goodsList != null && !goodsList.isEmpty()) {
+				for (MailTemplateGoods goods : goodsList) {
 					sb.append("<!-- 상품 1-Horizontal 진열 테이블 -->\n");
 					sb.append("<table style=\"width:100%;height:100%;margin:0;padding:0;font-size: 14px;\" cellspacing=\"0\" cellpadding=\"0\">\n");
 					sb.append("	<tbody>\n");
@@ -172,7 +173,7 @@ public class TscMailTemplateService {
 					sb.append("			<td width=\"240px;\" height=\"360px;\" rowspan=\"6\" valign=\"top\" style=\"margin:0;padding:0;border-spacing:0;\">\n");
 					sb.append("				<a href=\"#none\" target=\"_blank\" style=\"margin:0;padding:0\">\n");
 					sb.append("					<span style=\"background: #f5f5f5;width: 240px;height: 360px;margin:0;padding:0\">\n");
-					sb.append("						<img src=\"http:").append(uploadGoodsView).append("/").append(mtcg.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 240px;height: auto;display:block;margin:0;padding:0\"/>\n");
+					sb.append("						<img src=\"http:").append(uploadGoodsView).append("/").append(goods.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 240px;height: auto;display:block;margin:0;padding:0\"/>\n");
 					sb.append("					</span>\n");
 					sb.append("				</a>\n");
 					sb.append("			</td>\n");
@@ -182,33 +183,35 @@ public class TscMailTemplateService {
 					sb.append("		<tr>\n");
 					sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 					sb.append("			<td valign=\"top\" height=\"20px;\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
-					sb.append("				<span style=\"color: #888888; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0;\">").append(mtcg.getBrandNm()).append("</span>\n");
+					sb.append("				<span style=\"color: #888888; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0;\">").append(goods.getBrandNm()).append("</span>\n");
 					sb.append("			</td>\n");
 					sb.append("		</tr>\n");
 					sb.append("		<tr>\n");
 					sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 					sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
 					sb.append("				<a href=\"#none\" target=\"_blank\" style=\"display: block; color: #222222; font-size: 14px; font-weight: normal; letter-spacing: -0.025em; text-decoration: none;\">\n");
-					sb.append("					<span style=\"height:40px;color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(mtcg.getGoodsNm()).append("</span>\n");
+					sb.append("					<span style=\"height:40px;color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(goods.getGoodsNm()).append("</span>\n");
 					sb.append("				</a>\n");
 					sb.append("			</td>\n");
 					sb.append("		</tr>\n");
 					sb.append("		<tr>\n");
 					sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 					sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
-					sb.append("				<span style=\"color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 6px; text-align: left;\">").append(String.format("%,d", mtcg.getCurrPrice())).append("</span>\n");
-					sb.append("				<span style=\"color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", mtcg.getListPrice())).append("</span>\n");
-					sb.append("				<span style=\"color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.05em; display: inline-block; width:50px; text-align: right;\">").append(mtcg.getDcRate()).append("%</span>\n");
+					sb.append("				<span style=\"color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 6px; text-align: left;\">").append(String.format("%,d", goods.getCurrPrice())).append("</span>\n");
+					if(goods.getDcRate() > 0) {
+						sb.append("				<span style=\"color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", goods.getListPrice())).append("</span>\n");
+						sb.append("				<span style=\"color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.05em; display: inline-block; width:50px; text-align: right;\">").append(goods.getDcRate()).append("%</span>\n");
+					}
 					sb.append("			</td>\n");
 					sb.append("		</tr>\n");
 
 					// 상품혜택정보
-					if (StringUtils.isNotBlank(mtcg.getBenefits())) {
+					if (StringUtils.isNotBlank(goods.getBenefits())) {
 						sb.append("		<tr>\n");
 						sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 						sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
 
-						String[] arrBenefit = mtcg.getBenefits().split(",");
+						String[] arrBenefit = goods.getBenefits().split(",");
 						for (String benefit : arrBenefit) {
 							sb.append("			<span style=\"width: auto; height: 20px;text-align: center;line-height:18px; display: inline-block; padding-top:0;padding-bottom:0;padding-left:5px;padding-right:5px; font-size:9px; color: #888888; background: #f5f5f5; border-width: 1px; border-style: solid; border-color: #f5f5f5; box-sizing: border-box;\">").append(benefit).append("</span>\n");
 						}
@@ -218,11 +221,11 @@ public class TscMailTemplateService {
 					}
 
 					// 상품타이틀명(세일링문구)
-					if (StringUtils.isNotBlank(mtcg.getGoodsTnm())) {
+					if (StringUtils.isNotBlank(goods.getGoodsTnm())) {
 						sb.append("		<tr>\n");
 						sb.append("			<td width=\"40px;\" style=\"height: 60px;\"></td>\n");
 						sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
-						sb.append("				<span style=\"color: #fd4802;font-size: 14px; line-height: 18px; font-weight: bold;letter-spacing: -0.05em;\">").append(mtcg.getGoodsTnm()).append("</span>\n");
+						sb.append("				<span style=\"color: #fd4802;font-size: 14px; line-height: 18px; font-weight: bold;letter-spacing: -0.05em;\">").append(goods.getGoodsTnm()).append("</span>\n");
 						sb.append("			</td>\n");
 						sb.append("		</tr>\n");
 					}
@@ -234,15 +237,15 @@ public class TscMailTemplateService {
 					sb.append("</table>\n");
 				}
 			}
-		} else if (mtc.getGoodsCpr() == 2) {
+		} else if (coner.getGoodsCpr() == 2) { //상품노출갯수
 			sb.append("<!-- 상품 2-Column 진열 테이블 -->\n");
 			sb.append("<table style=\"width:100%;height:100%;margin:0;padding:0;font-size: 14px;\" cellspacing=\"0\" cellpadding=\"0\">\n");
 			sb.append("	<tbody>\n");
 
 			// 상품 목록
-			if (mtcgList != null && !mtcgList.isEmpty()) {
+			if (goodsList != null && !goodsList.isEmpty()) {
 				int idx = 1;
-				for (MailTemplateGoods mtcg : mtcgList) {
+				for (MailTemplateGoods goods : goodsList) {
 					if (idx % 2 == 1) {
 						sb.append("		<tr>\n");
 					} else {
@@ -253,26 +256,28 @@ public class TscMailTemplateService {
 					sb.append("				<a href=\"#none\" target=\"_blank\" style=\"margin:0;padding:0;text-decoration: none;\">\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 0px;\">\n");
 					sb.append("						<span style=\"background: #ffffff;width: 280px;height: 420px;display: block;margin:0;padding:0\">\n");
-					sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(mtcg.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 280px;height: auto; margin:0;padding:0\"/>\n");
+					sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(goods.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 280px;height: auto; margin:0;padding:0\"/>\n");
 					sb.append("						</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; height: 40px; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(mtcg.getBrandNm()).append("</span>\n");
+					sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(goods.getBrandNm()).append("</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(mtcg.getGoodsNm()).append("</span>\n");
+					sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(goods.getGoodsNm()).append("</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", mtcg.getCurrPrice())).append("</span>\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", mtcg.getListPrice())).append("</span>\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(mtcg.getDcRate()).append("%</span>\n");
+					sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", goods.getCurrPrice())).append("</span>\n");
+					if(goods.getDcRate() > 0) {
+						sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", goods.getListPrice())).append("</span>\n");
+						sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(goods.getDcRate()).append("%</span>\n");
+					}
 					sb.append("					</span>\n");
 
 					// 상품혜택정보
-					if (StringUtils.isNotBlank(mtcg.getBenefits())) {
+					if (StringUtils.isNotBlank(goods.getBenefits())) {
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
 
-						String[] arrBenefit = mtcg.getBenefits().split(",");
+						String[] arrBenefit = goods.getBenefits().split(",");
 						for (String benefit : arrBenefit) {
 							sb.append("						<span style=\"width: auto; height: 20px;text-align: center;line-height:18px; display: inline-block; padding-top:0;padding-bottom:0;padding-left:5px;padding-right:5px; font-size:9px; color: #888888; background: #f5f5f5; border-width: 1px; border-style: solid; border-color: #f5f5f5; box-sizing: border-box;\">").append(benefit).append("</span>\n");
 						}
@@ -282,7 +287,7 @@ public class TscMailTemplateService {
 
 					// 상품타이틀명(세일링문구)
 					sb.append("						<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("							<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(mtcg.getGoodsTnm()) ? mtcg.getGoodsTnm() : "&nbsp;").append("</span>\n");
+					sb.append("							<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(goods.getGoodsTnm()) ? goods.getGoodsTnm() : "&nbsp;").append("</span>\n");
 					sb.append("						</span>\n");
 
 					sb.append("					</a>\n");
@@ -301,15 +306,15 @@ public class TscMailTemplateService {
 
 			sb.append("	</tbody>\n");
 			sb.append("</table>\n");
-		} else if (mtc.getGoodsCpr() == 3) {
+		} else if (coner.getGoodsCpr() == 3) { //상품노출갯수
 			sb.append("<!-- 상품 3-Column 진열 테이블 -->\n");
 			sb.append("<table style=\"width:100%;height:100%;margin:0;padding:0;font-size: 14px;\" cellspacing=\"0\" cellpadding=\"0\">\n");
 			sb.append("	<tbody>\n");
 
 			// 상품 목록
-			if (mtcgList != null && !mtcgList.isEmpty()) {
+			if (goodsList != null && !goodsList.isEmpty()) {
 				int idx = 1;
-				for (MailTemplateGoods mtcg : mtcgList) {
+				for (MailTemplateGoods goods : goodsList) {
 					if (idx % 3 == 1) {
 						sb.append("		<tr>\n");
 					} else {
@@ -320,26 +325,28 @@ public class TscMailTemplateService {
 					sb.append("				<a href=\"#none\" target=\"_blank\" style=\"margin:0;padding:0;text-decoration: none;\">\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 0px;\">\n");
 					sb.append("						<span style=\"background: #ffffff;width: 180px;height: 270px;display: block;margin:0;padding:0\">\n");
-					sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(mtcg.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 180px;height: auto; margin:0;padding:0\"/>\n");
+					sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(goods.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 180px;height: auto; margin:0;padding:0\"/>\n");
 					sb.append("						</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; height: 40px; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(mtcg.getBrandNm()).append("</span>\n");
+					sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(goods.getBrandNm()).append("</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(mtcg.getGoodsNm()).append("</span>\n");
+					sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(goods.getGoodsNm()).append("</span>\n");
 					sb.append("					</span>\n");
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", mtcg.getCurrPrice())).append("</span>\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", mtcg.getListPrice())).append("</span>\n");
-					sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(mtcg.getDcRate()).append("%</span>\n");
+					sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", goods.getCurrPrice())).append("</span>\n");
+					if(goods.getDcRate() > 0) {
+						sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", goods.getListPrice())).append("</span>\n");
+						sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(goods.getDcRate()).append("%</span>\n");
+					}
 					sb.append("					</span>\n");
 
 					// 상품혜택정보
-					if (StringUtils.isNotBlank(mtcg.getBenefits())) {
+					if (StringUtils.isNotBlank(goods.getBenefits())) {
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
 
-						String[] arrBenefit = mtcg.getBenefits().split(",");
+						String[] arrBenefit = goods.getBenefits().split(",");
 						for (String benefit : arrBenefit) {
 							sb.append("						<span style=\"width: auto; height: 20px;text-align: center;line-height:18px; display: inline-block; padding-top:0;padding-bottom:0;padding-left:5px;padding-right:5px; font-size:9px; color: #888888; background: #f5f5f5; border-width: 1px; border-style: solid; border-color: #f5f5f5; box-sizing: border-box;\">").append(benefit).append("</span>\n");
 						}
@@ -349,7 +356,7 @@ public class TscMailTemplateService {
 
 					// 상품타이틀명(세일링문구)
 					sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-					sb.append("						<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(mtcg.getGoodsTnm()) ? mtcg.getGoodsTnm() : "&nbsp;").append("</span>\n");
+					sb.append("						<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(goods.getGoodsTnm()) ? goods.getGoodsTnm() : "&nbsp;").append("</span>\n");
 					sb.append("					</span>\n");
 
 					sb.append("				</a>\n");
@@ -368,12 +375,12 @@ public class TscMailTemplateService {
 
 			sb.append("	</tbody>\n");
 			sb.append("</table>\n");
-		} else if (mtc.getGoodsCpr() == 4) {
+		} else if (coner.getGoodsCpr() == 4) { //상품노출갯수
 			// 상품 목록
-			if (mtcgList != null && !mtcgList.isEmpty()) {
+			if (goodsList != null && !goodsList.isEmpty()) {
 				int idx = 1;
 
-				for (MailTemplateGoods mtcg : mtcgList) {
+				for (MailTemplateGoods goods : goodsList) {
 					if (idx % 4 == 1) {
 						sb.append("<!-- 4컷혼합 : 상품 1-Horizontal 진열 테이블 -->\n");
 						sb.append("<table style=\"width:100%;height:100%;margin:0;padding:0;font-size: 14px;\" cellspacing=\"0\" cellpadding=\"0\">\n");
@@ -382,7 +389,7 @@ public class TscMailTemplateService {
 						sb.append("			<td width=\"240px;\" height=\"360px;\" rowspan=\"6\" valign=\"top\" style=\"margin:0;padding:0;border-spacing:0;\">\n");
 						sb.append("				<a href=\"#none\" target=\"_blank\" style=\"margin:0;padding:0\">\n");
 						sb.append("					<span style=\"background: #ffffff;width: 240px;height: 360px;margin:0;padding:0\">\n");
-						sb.append("						<img src=\"http:").append(uploadGoodsView).append("/").append(mtcg.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 240px;height: auto;display:block;margin:0;padding:0\"/>\n");
+						sb.append("						<img src=\"http:").append(uploadGoodsView).append("/").append(goods.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 240px;height: auto;display:block;margin:0;padding:0\"/>\n");
 						sb.append("					</span>\n");
 						sb.append("				</a>\n");
 						sb.append("			</td>\n");
@@ -392,33 +399,35 @@ public class TscMailTemplateService {
 						sb.append("		<tr>\n");
 						sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 						sb.append("			<td valign=\"top\" height=\"20px;\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
-						sb.append("				<span style=\"color: #888888; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0;\">").append(mtcg.getBrandNm()).append("</span>\n");
+						sb.append("				<span style=\"color: #888888; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0;\">").append(goods.getBrandNm()).append("</span>\n");
 						sb.append("			</td>\n");
 						sb.append("		</tr>\n");
 						sb.append("		<tr>\n");
 						sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 						sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
 						sb.append("				<a href=\"#none\" target=\"_blank\" style=\"display: block; color: #222222; font-size: 14px; font-weight: normal; letter-spacing: -0.025em; text-decoration: none;\">\n");
-						sb.append("					<span style=\"height:40px;color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(mtcg.getGoodsNm()).append("</span>\n");
+						sb.append("					<span style=\"height:40px;color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(goods.getGoodsNm()).append("</span>\n");
 						sb.append("				</a>\n");
 						sb.append("			</td>\n");
 						sb.append("		</tr>\n");
 						sb.append("		<tr>\n");
 						sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 						sb.append("			<td valign=\"top\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
-						sb.append("				<span style=\"color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 6px; text-align: left;\">").append(String.format("%,d", mtcg.getCurrPrice())).append("</span>\n");
-						sb.append("				<span style=\"color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", mtcg.getListPrice())).append("</span>\n");
-						sb.append("				<span style=\"color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.05em; display: inline-block; width:50px; text-align: right;\">").append(mtcg.getDcRate()).append("%</span>\n");
+						sb.append("				<span style=\"color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 6px; text-align: left;\">").append(String.format("%,d", goods.getCurrPrice())).append("</span>\n");
+						if(goods.getDcRate() > 0) {
+							sb.append("				<span style=\"color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", goods.getListPrice())).append("</span>\n");
+							sb.append("				<span style=\"color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;line-height:20px;letter-spacing: -0.05em; display: inline-block; width:50px; text-align: right;\">").append(goods.getDcRate()).append("%</span>\n");
+						}
 						sb.append("			</td>\n");
 						sb.append("		</tr>\n");
 
 						// 상품혜택정보
-						if (StringUtils.isNotBlank(mtcg.getBenefits())) {
+						if (StringUtils.isNotBlank(goods.getBenefits())) {
 							sb.append("		<tr>\n");
 							sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 							sb.append("			<td valign=\"top\" height=\"35px;\" colspan=\"3\" style=\"padding: 0; margin: 0;border-spacing:0;\">\n");
 
-							String[] arrBenefit = mtcg.getBenefits().split(",");
+							String[] arrBenefit = goods.getBenefits().split(",");
 							for (String benefit : arrBenefit) {
 								sb.append("				<span style=\"width: auto; height: 20px;text-align: center;line-height:18px; display: inline-block; padding-top:0;padding-bottom:0;padding-left:5px;padding-right:5px; font-size:9px; color: #888888; background: #f5f5f5; border-width: 1px; border-style: solid; border-color: #f5f5f5; box-sizing: border-box;\">").append(benefit).append("</span>\n");
 							}
@@ -428,11 +437,11 @@ public class TscMailTemplateService {
 						}
 
 						// 상품타이틀명(세일링문구)
-						if (StringUtils.isNotBlank(mtcg.getGoodsTnm())) {
+						if (StringUtils.isNotBlank(goods.getGoodsTnm())) {
 							sb.append("		<tr>\n");
 							sb.append("			<td width=\"40px;\" style=\"height: 20px;\"></td>\n");
 							sb.append("			<td valign=\"top\" height=\"100px;\" colspan=\"3\" height=\"100px;\" style=\"height: 100px; padding: 0; margin: 0;border-spacing:0;\">\n");
-							sb.append("				<span style=\"color: #fd4802;font-size: 14px; line-height: 18px; font-weight: bold;letter-spacing: -0.05em;\">").append(mtcg.getGoodsTnm()).append("</span>\n");
+							sb.append("				<span style=\"color: #fd4802;font-size: 14px; line-height: 18px; font-weight: bold;letter-spacing: -0.05em;\">").append(goods.getGoodsTnm()).append("</span>\n");
 							sb.append("			</td>\n");
 							sb.append("		</tr>\n");
 						}
@@ -456,26 +465,28 @@ public class TscMailTemplateService {
 						sb.append("				<a href=\"#none\" target=\"_blank\" style=\"margin:0;padding:0;text-decoration: none;\">\n");
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:0; padding-right: 0px;\">\n");
 						sb.append("						<span style=\"background: #ffffff;width: 180px;height: 270px;display: block;margin:0;padding:0\">\n");
-						sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(mtcg.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 180px;height: auto; margin:0;padding:0\"/>\n");
+						sb.append("							<img src=\"http:").append(uploadGoodsView).append("/").append(goods.getSysImgNm()).append("\" alt=\"이미지\" style=\"width: 180px;height: auto; margin:0;padding:0\"/>\n");
 						sb.append("						</span>\n");
 						sb.append("					</span>\n");
 						sb.append("					<span style=\"display: block; width: 100%; height: 40px; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-						sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(mtcg.getBrandNm()).append("</span>\n");
+						sb.append("						<span style=\"color: #888888; height:40px; line-height: 40px; font-size: 11px;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; text-align: left; margin:0;padding-left:0px; padding-right: 0px;\">").append(goods.getBrandNm()).append("</span>\n");
 						sb.append("					</span>\n");
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-						sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(mtcg.getGoodsNm()).append("</span>\n");
+						sb.append("						<span style=\"height:40px; color: #222222; font-size: 14px;font-weight: normal;line-height:20px;letter-spacing: -0.025em; text-align: left; margin:0; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; display: block; display: -webkit-box;\">").append(goods.getGoodsNm()).append("</span>\n");
 						sb.append("					</span>\n");
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-						sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", mtcg.getCurrPrice())).append("</span>\n");
-						sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", mtcg.getListPrice())).append("</span>\n");
-						sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(mtcg.getDcRate()).append("%</span>\n");
+						sb.append("						<span style=\"height:40px; line-height:40px; color: #222222; font-size: 16px; font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; padding-top:0; padding-bottom:0; padding-left:0px; padding-right: 10px; text-align: left;\">").append(String.format("%,d", goods.getCurrPrice())).append("</span>\n");
+						if(goods.getDcRate() > 0) {
+							sb.append("						<span style=\"height:40px; line-height:40px; color: #888888; font-size: 14px; text-decoration: line-through;font-weight: normal;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.025em; display: inline-block; width:auto; text-align: left;\">").append(String.format("%,d", goods.getListPrice())).append("</span>\n");
+							sb.append("						<span style=\"height:40px; line-height:40px; color: #fd4802; font-size: 16px; font-weight: bold;font-family:'Trebuchet MS','Bahnschrift','Times New', verdana,Arial, Helvetica, sans-serif;letter-spacing: -0.05em; display: table-cell; width:40%; float: right; text-align: right;\">").append(goods.getDcRate()).append("%</span>\n");
+						}
 						sb.append("					</span>\n");
 
 						// 상품혜택정보
-						if (StringUtils.isNotBlank(mtcg.getBenefits())) {
+						if (StringUtils.isNotBlank(goods.getBenefits())) {
 							sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
 
-							String[] arrBenefit = mtcg.getBenefits().split(",");
+							String[] arrBenefit = goods.getBenefits().split(",");
 							for (String benefit : arrBenefit) {
 								sb.append("						<span style=\"width: auto; height: 20px;text-align: center;line-height:18px; display: inline-block; padding-top:0;padding-bottom:0;padding-left:5px;padding-right:5px; font-size:9px; color: #888888; background: #f5f5f5; border-width: 1px; border-style: solid; border-color: #f5f5f5; box-sizing: border-box;\">").append(benefit).append("</span>\n");
 							}
@@ -485,7 +496,7 @@ public class TscMailTemplateService {
 
 						// 상품타이틀명(세일링문구)
 						sb.append("					<span style=\"display: block; width: 100%; padding-top:0; padding-bottom:0; padding-left:5px; padding-right: 5px;\">\n");
-						sb.append("						<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(mtcg.getGoodsTnm()) ? mtcg.getGoodsTnm() : "&nbsp;").append("</span>\n");
+						sb.append("						<span style=\"color: #fd4802;font-size: 14px; line-height: 40px; height: 40px; font-weight: bold;letter-spacing: -0.05em;\">").append(StringUtils.isNotBlank(goods.getGoodsTnm()) ? goods.getGoodsTnm() : "&nbsp;").append("</span>\n");
 						sb.append("					</span>\n");
 
 						sb.append("				</a>\n");
@@ -512,7 +523,7 @@ public class TscMailTemplateService {
 		sb.append("		<tr>\n");
 		sb.append("			<td colspan=\"3\" width=\"179px;\" height=\"60px\" valign=\"bottom\"></td>\n");
 		sb.append("			<td width=\"222px;\" height=\"60px;\" valign=\"bottom\" bgcolor=\"#ffffff\" style=\"background: #ffffff; text-align: center;margin:0;padding:0;border-spacing:0;\">\n");
-		sb.append("				<a href=\"").append(mtc.getMailtcLink()).append("\" target=\"_blank\" style=\"width:100%; height:100%; display: block; border-width: 1px; border-bottom-width: 1px;border-right-width: 1px;border-top-width: 1px;border-left-width: 1px; border-style: solid; border-color: #a7a7a7; box-sizing: border-box; padding: 20px; color: #222222; font-size: 17px; font-weight: 600; letter-spacing: -0.025em; text-decoration: none;\">더많은 상품 보기</a>\n");
+		sb.append("				<a href=\"").append(coner.getMailtcLink()).append("\" target=\"_blank\" style=\"width:100%; height:100%; display: block; border-width: 1px; border-bottom-width: 1px;border-right-width: 1px;border-top-width: 1px;border-left-width: 1px; border-style: solid; border-color: #a7a7a7; box-sizing: border-box; padding: 20px; color: #222222; font-size: 17px; font-weight: 600; letter-spacing: -0.025em; text-decoration: none;\">더많은 상품 보기</a>\n");
 		sb.append("			</td>\n");
 		sb.append("			<td colspan=\"3\" width=\"179px;\" height=\"60px\" valign=\"bottom\"></td>\n");
 		sb.append("		</tr>\n");