Przeglądaj źródła

Revert "Merge branch 'csh9191' into develop"

This reverts commit aedde9a1a266c991770f1858d9ec86948563a11b, reversing
changes made to b0a5484fcbe7d028c7afcd5d7f7670b7fc2f5063.
ChoiSooHwan 5 lat temu
rodzic
commit
8ed3414749

+ 0 - 110
src/main/java/com/style24/admin/biz/dao/TsaMailTemplateDao.java

@@ -1,110 +0,0 @@
-package com.style24.admin.biz.dao;
-
-import java.util.Collection;
-
-import com.style24.core.support.annotation.ShopDs;
-import com.style24.persistence.domain.Goods;
-import com.style24.persistence.domain.MailTemplate;
-import com.style24.persistence.domain.MktmailManagement;
-import com.style24.persistence.domain.MktmailManagementTc;
-import com.style24.persistence.domain.OrderSample;
-
-/**
- * 메일헤더푸터관리 Dao
- * 
- * @author csh9191	 
- * @since 2021. 02. 02
- */
-@ShopDs
-public interface TsaMailTemplateDao {
-	
-	/**
-	 * 메일헤더푸터 관리 목록
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 00
-	 */
-	Collection<MailTemplate> getmailHFList(MailTemplate mailtemplate);
-	
-	/**
-	 * 메일헤더푸터 상세
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 02
-	 */
-	MailTemplate getMailHFDetail(Integer mailtemplate);
-
-	/**
-	 * 메일헤더푸터 등록수정
-	 * @param  mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 03
-	 */
-	void saveMailHF(MailTemplate mailtemplate);
-	
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param  mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 03
-	 */
-	void deleteMailHFList(MailTemplate mailtemplate);
-	
-	/**
-	 * mkt메일관리 상세
-	 * @param mktmailManagement - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 05
-	 */
-	MktmailManagement getMktmailManagementDetail(Integer mktmailManagement);
-	/**
-	 * mkt메일관리 상세
-	 * @param mktmailManagement - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 15
-	 */
-	MktmailManagementTc getMktmailManagementTCDetail(Integer mktmailManagementTc);
-	/**
-	 * MKT메일 등록수정
-	 * @param  mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 03
-	 */
-	void saveMktMailDetail(MktmailManagement mktMailManagement);
-	
-	/**
-	 * MKT메일 등록수정
-	 * @param  mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 13
-	 */
-	void saveMktMailTemplate(MktmailManagement mktMailManagement);
-	int saveMktmailform(MktmailManagement mktMailManagement);
-	int saveMailTc(MktmailManagement mktMailManagement);
-	int saveMailGoods(MktmailManagement mktMailManagement);
-	
-	
-	/* MKT 메일 전시 */
-	Collection<Goods> getMailGoodsInfo(Goods goods);
-	
-	/**
-	 * 메일헤더푸터 관리 목록
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 13
-	 */
-	Collection<MktmailManagement> getMktMailList(MktmailManagement mktMailManagement);
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param  mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 15
-	 */
-	void deleteMktmailList(MktmailManagement mktMailManagement);
-
-}

+ 0 - 370
src/main/java/com/style24/admin/biz/service/TsaMailTemplateService.java

@@ -1,370 +0,0 @@
-package com.style24.admin.biz.service;
-
-import java.util.Collection;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
-import com.style24.admin.biz.dao.TsaMailTemplateDao;
-import com.style24.admin.support.security.session.TsaSession;
-import com.style24.persistence.domain.Goods;
-import com.style24.persistence.domain.MailTemplate;
-import com.style24.persistence.domain.MktmailManagement;
-import com.style24.persistence.domain.MktmailManagementGoods;
-import com.style24.persistence.domain.MktmailManagementTc;
-
-import lombok.extern.slf4j.Slf4j;
-
-/**
- * 메일헤더푸터관리 Service
- *
- * @author csh9191
- * @since 2021. 02. 02
- */
-
-@Service
-@Slf4j
-public class TsaMailTemplateService {
-
-	@Autowired
-	private TsaMailTemplateDao mailtempletDao;
-
-	/**
-	 * 메일헤더푸터관리 목록
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 02
-	 */
-	public Collection<MailTemplate> getmailHFList(MailTemplate mailtemplate) {
-		return mailtempletDao.getmailHFList(mailtemplate);
-	}
-	
-	/**
-	 * 메일헤더푸터관리 상세화면
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 02
-	 */
-	public MailTemplate getMailHFDetail(Integer mailtemplate) {
-		return mailtempletDao.getMailHFDetail(mailtemplate);
-	}
-	
-
-	/**
-	 * 메일헤더푸터 상세 등록/수정
-	 * @param mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 03
-	 */
-	@Transactional("shopTxnManager")
-	public void saveMailHF(MailTemplate mailtemplate) {
-		// 내용 유무 확인
-		if (StringUtils.isNotBlank(mailtemplate.getMailhfContent())) {
-			mailtemplate.setMailhfContent(mailtemplate.getMailhfContent().replaceAll("&lt;", "<").replaceAll("&gt;", ">"));
-		}
-
-		mailtempletDao.saveMailHF(mailtemplate);
-	
-	}
-	
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 03
-	 */
-	@Transactional("shopTxnManager")
-	public void deleteMailHFList(Collection<MailTemplate> mailTemplateList) {
-		int userId = TsaSession.getInfo().getUserNo();
-		
-		for(MailTemplate mailtemplate : mailTemplateList) {
-			mailtemplate.setRegNo(userId);
-			mailtemplate.setUpdNo(userId);
-			mailtempletDao.deleteMailHFList(mailtemplate);
-		}
-	}
-	
-	/**
-	 * MKT메일관리 상세화면
-	 * @param mktmailManagement - 메일템플릿관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 05
-	 */
-	public MktmailManagement getMktmailManagementDetail(Integer mktmailManagement) {
-		return mailtempletDao.getMktmailManagementDetail(mktmailManagement);
-	}
-	/**
-	 * MKT메일관리 상세화면
-	 * @param mktmailManagement - 메일템플릿TC관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 05
-	 */
-	public MktmailManagementTc getMktmailManagementTCDetail(Integer mktmailManagementTc) {
-		return mailtempletDao.getMktmailManagementTCDetail(mktmailManagementTc);
-	}
-
-	
-	/**
-	 * MKT 상세 등록/수정
-	 * @param mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 13
-	 */
-	public GagaMap saveMktMailTemplate (MktmailManagement mktMailManagement) {
-		GagaMap result = new GagaMap();
-		
-		int mailHsq = mktMailManagement.getMktHeader();
-		int mailFsq = mktMailManagement.getMktFooter();
-		String mailtNm = mktMailManagement.getMailtNm();
-		String mailtGb = mktMailManagement.getMailtGb();
-		String mailContent = mktMailManagement.getMailContent();
-		
-		MktmailManagement mktmail = new MktmailManagement();
-		mktmail.setMktHeader(mailHsq);
-		mktmail.setMktFooter(mailFsq);
-		mktmail.setMailtNm(mailtNm);
-		mktmail.setMailtGb(mailtGb);
-		mktmail.setMailContent(mailContent);
-		
-		//메일 헤더 푸터 타이틀 내용 등록
-		mailtempletDao.saveMktmailform(mktMailManagement); 
-		mktMailManagement.getMailtSq();
-		mktMailManagement.getMailtcSq();
-		
-		//구분자1 등록
-		for(MktmailManagementTc mktmailManagementTc : mktMailManagement.getMktmailManagementTc()) {
-			if(!StringUtils.isEmpty(mktmailManagementTc.getMailtcNm())) {
-				String mailtcNm = mktmailManagementTc.getMailtcNm();
-				String mailtcLink = mktmailManagementTc.getMailtcLink();
-				int goodsCpr = mktmailManagementTc.getGoodsCpr();
-				
-				MktmailManagement mktmailtc = new MktmailManagement();
-				
-				mktmailtc.setRegNo(TsaSession.getInfo().getUserNo());
-				mktmailtc.setUpdNo(TsaSession.getInfo().getUserNo());
-				mktmailtc.setMailtcNm(mailtcNm);
-				mktmailtc.setMailtcLink(mailtcLink);
-				mktmailtc.setGoodsCpr(goodsCpr);
-				mktmailtc.setMailtSq(mktMailManagement.getMailtSq());
-				
-				mailtempletDao.saveMailTc(mktmailtc);
-				//grid1
-				for (MktmailManagementGoods mktmailManagementGoods : mktMailManagement.getMktmailManagementGoods()) {
-					
-					
-					String goodsCd = mktmailManagementGoods.getGoodsCd();
-					int dispOrd = mktmailManagementGoods.getDispOrd();
-	
-					MktmailManagement mktmailGoods = new MktmailManagement();
-					
-					mktmailGoods.setRegNo(TsaSession.getInfo().getUserNo());
-					mktmailGoods.setUpdNo(TsaSession.getInfo().getUserNo());
-					mktmailGoods.setDispOrd(dispOrd);
-					mktmailGoods.setGoodsCd(goodsCd);
-					mktmailGoods.setMailtcSq(mktmailtc.getMailtcSq());
-					//grid 데이터 등록
-					mailtempletDao.saveMailGoods(mktmailGoods);
-				}
-			}
-		}
-		
-
-		//구분자2 등록
-		for(MktmailManagementTc mktmailManagementTc : mktMailManagement.getMktmailManagementTc2()) {
-			if(!StringUtils.isEmpty(mktmailManagementTc.getMailtcNm())) {
-				String mailtcNm = mktmailManagementTc.getMailtcNm();
-				String mailtcLink = mktmailManagementTc.getMailtcLink();
-				int goodsCpr = mktmailManagementTc.getGoodsCpr();
-	
-				MktmailManagement mktmailtc = new MktmailManagement();
-	
-				mktmailtc.setRegNo(TsaSession.getInfo().getUserNo());
-				mktmailtc.setUpdNo(TsaSession.getInfo().getUserNo());
-				mktmailtc.setMailtcNm(mailtcNm);
-				mktmailtc.setMailtcLink(mailtcLink);
-				mktmailtc.setGoodsCpr(goodsCpr);
-				mktmailtc.setMailtSq(mktMailManagement.getMailtSq());
-	
-				mailtempletDao.saveMailTc(mktmailtc);
-				//grid2
-				for (MktmailManagementGoods mktmailManagementGoods : mktMailManagement.getMktmailManagementGoods2()) {
-	
-					String goodsCd = mktmailManagementGoods.getGoodsCd();
-					int dispOrd = mktmailManagementGoods.getDispOrd();
-	
-					MktmailManagement mktmailGoods = new MktmailManagement();
-	
-					mktmailGoods.setRegNo(TsaSession.getInfo().getUserNo());
-					mktmailGoods.setUpdNo(TsaSession.getInfo().getUserNo());
-					mktmailGoods.setDispOrd(dispOrd);
-					mktmailGoods.setGoodsCd(goodsCd);
-					mktmailGoods.setMailtcSq(mktmailtc.getMailtcSq());
-					//grid 데이터 등록
-					mailtempletDao.saveMailGoods(mktmailGoods);
-				}
-			}
-		}
-		
-		//구분자3 등록
-		for(MktmailManagementTc mktmailManagementTc : mktMailManagement.getMktmailManagementTc3()) {
-			if(!StringUtils.isEmpty(mktmailManagementTc.getMailtcNm())) {
-			String mailtcNm = mktmailManagementTc.getMailtcNm();
-			String mailtcLink = mktmailManagementTc.getMailtcLink();
-			int goodsCpr = mktmailManagementTc.getGoodsCpr();
-
-			MktmailManagement mktmailtc = new MktmailManagement();
-
-			mktmailtc.setRegNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setUpdNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setMailtcNm(mailtcNm);
-			mktmailtc.setMailtcLink(mailtcLink);
-			mktmailtc.setGoodsCpr(goodsCpr);
-			mktmailtc.setMailtSq(mktMailManagement.getMailtSq());
-
-			mailtempletDao.saveMailTc(mktmailtc);
-			//grid3
-			for (MktmailManagementGoods mktmailManagementGoods : mktMailManagement.getMktmailManagementGoods3()) {
-
-				String goodsCd = mktmailManagementGoods.getGoodsCd();
-				int dispOrd = mktmailManagementGoods.getDispOrd();
-
-				MktmailManagement mktmailGoods = new MktmailManagement();
-
-				mktmailGoods.setRegNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setUpdNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setDispOrd(dispOrd);
-				mktmailGoods.setGoodsCd(goodsCd);
-				mktmailGoods.setMailtcSq(mktmailtc.getMailtcSq());
-				//grid 데이터 등록
-				mailtempletDao.saveMailGoods(mktmailGoods);
-			}
-			}
-		}
-
-		//구분자4 등록
-		for(MktmailManagementTc mktmailManagementTc : mktMailManagement.getMktmailManagementTc4()) {
-			if(!StringUtils.isEmpty(mktmailManagementTc.getMailtcNm())) {
-			String mailtcNm = mktmailManagementTc.getMailtcNm();
-			String mailtcLink = mktmailManagementTc.getMailtcLink();
-			int goodsCpr = mktmailManagementTc.getGoodsCpr();
-			
-			MktmailManagement mktmailtc = new MktmailManagement();
-
-			mktmailtc.setRegNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setUpdNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setMailtcNm(mailtcNm);
-			mktmailtc.setMailtcLink(mailtcLink);
-			mktmailtc.setGoodsCpr(goodsCpr);
-			mktmailtc.setMailtSq(mktMailManagement.getMailtSq());
-			
-			mailtempletDao.saveMailTc(mktmailtc);
-			//grid4
-			for (MktmailManagementGoods mktmailManagementGoods : mktMailManagement.getMktmailManagementGoods4()) {
-				
-				String goodsCd = mktmailManagementGoods.getGoodsCd();
-				int dispOrd = mktmailManagementGoods.getDispOrd();
-				
-				MktmailManagementTc mailTc = new MktmailManagementTc();
-				
-				int mailtcSq = mailTc.getMailtcSq();
-				log.info("mailtcSq={}", mailtcSq);
-				MktmailManagement mktmailGoods = new MktmailManagement();
-				
-				mktmailGoods.setMailtcSq(mailtcSq);
-				mktmailGoods.setRegNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setUpdNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setDispOrd(dispOrd);
-				mktmailGoods.setGoodsCd(goodsCd);
-				mktmailGoods.setMailtcSq(mktmailtc.getMailtcSq());
-				//grid 데이터 등록
-				mailtempletDao.saveMailGoods(mktmailGoods);
-			}
-			}
-		}
-		
-		//구분자5 등록
-		for(MktmailManagementTc mktmailManagementTc : mktMailManagement.getMktmailManagementTc5()) {
-			if(!StringUtils.isEmpty(mktmailManagementTc.getMailtcNm())) {
-			String mailtcNm = mktmailManagementTc.getMailtcNm();
-			String mailtcLink = mktmailManagementTc.getMailtcLink();
-			int goodsCpr = mktmailManagementTc.getGoodsCpr();
-
-			MktmailManagement mktmailtc = new MktmailManagement();
-
-			mktmailtc.setRegNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setUpdNo(TsaSession.getInfo().getUserNo());
-			mktmailtc.setMailtcNm(mailtcNm);
-			mktmailtc.setMailtcLink(mailtcLink);
-			mktmailtc.setGoodsCpr(goodsCpr);
-			mktmailtc.setMailtSq(mktMailManagement.getMailtSq());
-
-			mailtempletDao.saveMailTc(mktmailtc);
-			
-			//grid5
-			for (MktmailManagementGoods mktmailManagementGoods : mktMailManagement.getMktmailManagementGoods5()) {
-				
-				String goodsCd = mktmailManagementGoods.getGoodsCd();
-				int dispOrd = mktmailManagementGoods.getDispOrd();
-				
-				MktmailManagement mktmailGoods = new MktmailManagement();
-				
-				mktmailGoods.setRegNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setUpdNo(TsaSession.getInfo().getUserNo());
-				mktmailGoods.setDispOrd(dispOrd);
-				mktmailGoods.setGoodsCd(goodsCd);
-				mktmailGoods.setMailtcSq(mktmailtc.getMailtcSq());
-				//grid 데이터 등록
-				mailtempletDao.saveMailGoods(mktmailGoods);
-			}
-			}
-		}
-
-
-		result.set("status", GagaResponseStatus.SUCCESS.getCode());
-
-		return result;
-	}
-	
-	/* MKT 메일 전시 */
-	public Collection<Goods> getMailGoodsInfo(Goods goods) {
-		return mailtempletDao.getMailGoodsInfo(goods);
-	}
-	
-	/**
-	 * MKT메일관리 목록
-	 * @param mailtemplate - 메일관련 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 13
-	 */
-	public Collection<MktmailManagement> getMktMailList(MktmailManagement mktmailManagement) {
-		return mailtempletDao.getMktMailList(mktmailManagement);
-	}
-	
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param mailtemplate - 메일관련 정보
-	 * @author csh9191
-	 * @since 2021. 02. 15
-	 */
-	@Transactional("shopTxnManager")
-	public void deleteMktmailList(Collection<MktmailManagement> mktmailManagementList) {
-		int userId = TsaSession.getInfo().getUserNo();
-		
-		for(MktmailManagement mktmailManagement : mktmailManagementList) {
-			mktmailManagement.setRegNo(userId);
-			mktmailManagement.setUpdNo(userId);
-			mailtempletDao.deleteMktmailList(mktmailManagement);
-		}
-	}
-	
-
-}

+ 0 - 228
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -24,7 +24,6 @@ import org.springframework.web.servlet.ModelAndView;
 import com.style24.admin.biz.service.TsaCardPromotionService;
 import com.style24.admin.biz.service.TsaCommonService;
 import com.style24.admin.biz.service.TsaFreegiftPromotionService;
-import com.style24.admin.biz.service.TsaMailTemplateService;
 import com.style24.admin.biz.service.TsaMorebetterService;
 import com.style24.admin.biz.service.TsaPlanService;
 import com.style24.admin.biz.service.TsaRendererService;
@@ -37,33 +36,10 @@ import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.core.support.session.TscSession;
 import com.style24.persistence.TscPageRequest;
-
-import com.style24.persistence.domain.CardPromotion;
-import com.style24.persistence.domain.CardPromotionTarget;
-
-import com.style24.persistence.domain.CommonCode;
-import com.style24.persistence.domain.Coupon;
-import com.style24.persistence.domain.CouponRefval;
-import com.style24.persistence.domain.CustCoupon;
-import com.style24.persistence.domain.FreeGoodsPromotion;
-import com.style24.persistence.domain.Goods;
-import com.style24.persistence.domain.MailTemplate;
-import com.style24.persistence.domain.MktmailManagement;
-import com.style24.persistence.domain.MktmailManagementGoods;
-import com.style24.persistence.domain.MktmailManagementTc;
-import com.style24.persistence.domain.MoreBetter;
-import com.style24.persistence.domain.MoreBetterBurden;
-import com.style24.persistence.domain.MoreBetterGoods;
-import com.style24.persistence.domain.MoreBetterSection;
-import com.style24.persistence.domain.Point;
-import com.style24.persistence.domain.Review;
-import com.style24.persistence.domain.User;
-
 import lombok.extern.slf4j.Slf4j;
 
 import com.gagaframework.web.parameter.GagaMap;
 import com.gagaframework.web.rest.server.GagaResponse;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.gagaframework.web.util.GagaDateUtil;
 
 /**
@@ -103,11 +79,6 @@ public class TsaMarketingController extends TsaBaseController {
 	@Autowired
 	private TscPointService corePointService;
 
-	@Autowired
-	private TsaMailTemplateService mailTemplateService;
-	
-
-
 	@Autowired
 	private TsaCardPromotionService cardPromotionService;
 	
@@ -117,7 +88,6 @@ public class TsaMarketingController extends TsaBaseController {
 	@Autowired
 	private TscCouponService coreCouponService;
 
-
 	/**
 	 * 상품평관리 화면
 	 * @return
@@ -982,205 +952,7 @@ public class TsaMarketingController extends TsaBaseController {
 
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
-	
-	/* 최수환 진행 */
-	
-	/**
-	 * 메일 헤더푸터관리 화면
-	 * @param
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 01
-	 */
-	@GetMapping("/mailtemplate/form")
-	public ModelAndView mailheaderfooterForm() {
-		ModelAndView mav = new ModelAndView();
-
-		mav.setViewName("marketing/MailHeaderFooterForm");
-		return mav;
-	}
-	
-	/**
-	 * 메일헤더푸터관리 목록
-	 * @param 메일헤더푸터관리 - 메일 헤더푸터 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 01
-	 */
-	@PostMapping("/mailtemplate/list")
-	@ResponseBody
-	public Collection<MailTemplate> getMailHFList(@RequestBody MailTemplate mailTemplate) {
-		return mailTemplateService.getmailHFList(mailTemplate);
-	}
-	
-	/**
-	 * 메일헤더푸터관리 상세화면
-	 * @param mode - 모드(N:신규, U:상세)
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 01
-	 */
-	@GetMapping("/mailtemplate/detail/form")
-	public ModelAndView MailHeadeFooterDetailForm(@RequestParam(value = "mode") String mode, @RequestParam(value = "mailhfSq", required = false) Integer mailhfSq) {
-		ModelAndView mav = new ModelAndView();
-	
-		// 모드 값
-		mav.addObject("mode", mode);
-
-		
-		if ("U".equals(mode)) {
-			mav.addObject("mailhfInfo", mailTemplateService.getMailHFDetail(mailhfSq));
-		}
-
-		mav.setViewName("marketing/MailHeaderFooterDetailForm");
-
-		return mav;
-	}
-
-	/**
-	 * 메일헤더푸터 상세 등록/수정
-	 * @param 메일헤더푸터관리 - 메일헤더푸터 정보
-	 * @return
-	 * @author csh9191	
-	 * @since 2021. 02. 01
-	 */
-	@PostMapping("/mailtemplate/save")
-	@ResponseBody
-	public GagaResponse saveMailHF(@RequestBody MailTemplate mailTemplate) {
-		mailTemplate.setRegNo(TsaSession.getInfo().getUserNo());
-		mailTemplate.setUpdNo(TsaSession.getInfo().getUserNo());
-		mailTemplateService.saveMailHF(mailTemplate);
-		return super.ok(message.getMessage("SUCC_0001"));
-
-	}
-	
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param 메일헤더푸터관리 - 메일헤더푸더 정보
-	 * @return
-	 * @author csh9191	
-	 * @since 2021. 02. 03
-	 */
-	@PostMapping("/mailtemplate/delete")
-	@ResponseBody
-	public GagaResponse deleteMailHFList(@RequestBody Collection<MailTemplate> mailTemplateList) {
-		mailTemplateService.deleteMailHFList(mailTemplateList);
-		return super.ok(message.getMessage("SUCC_0003"));
-	}
-	
-	/**
-	 * MKT 메일관리 화면
-	 * @param
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 05
-	 */
-	@GetMapping("/mktmailmanagement/form")
-	public ModelAndView mktmailManagementForm() {
-		ModelAndView mav = new ModelAndView();
-
-		mav.setViewName("marketing/MktmailmanagementForm");
-		return mav;
-	}
-	
-	/**
-	 * MKT 메일관리 상세화면
-	 * @param mode - 모드(N:신규, U:상세)
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 08
-	 */
-	@GetMapping("/mktmailmanagement/detail/form")
-	public ModelAndView mktmailManagementDetailForm(MktmailManagement mktmailManagement) {
-		ModelAndView mav = new ModelAndView();
-		
-		Integer mailtSq = mktmailManagement.getMailtSq();
-		String mode = mktmailManagement.getMode();
-		
-		MailTemplate param = new MailTemplate();
-		
-		param.setMailhfGb("H");
-		mav.addObject("mailHsqList", mailTemplateService.getmailHFList(param));
-		
-		param.setMailhfGb("F");
-		mav.addObject("mailFsqList", mailTemplateService.getmailHFList(param));
-		
-		mav.addObject("mode", mode);
-		
-		if ("U".equals(mode)) {
-			mav.addObject("mktmailInfo", mailTemplateService.getMktmailManagementDetail(mailtSq));
-			
-			log.info("mktmailInfo {}",mailTemplateService.getMktmailManagementDetail(mailtSq));
-		}
-		
-		mav.setViewName("marketing/MktmailmanagementDetailForm");
-
-		return mav;
-	}
-	
-	/**
-	 * MKT 메일관리 상품추가 팝업
-	 * @param 
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 09
-	 */
-	
-	@PostMapping("/mktMailManagement/goods/info")
-	@ResponseBody
-	public Collection<Goods> getOrderSampleGoodsInfo(@RequestBody String[] arrGoodsCd) {
-		Goods goods = new Goods();
-		goods.setArrGoodsCd(arrGoodsCd);
-		
-		return mailTemplateService.getMailGoodsInfo(goods);
-	}
-	
-	/**
-	 * MKT메일 상세 등록/수정
-	 * @param 메일헤더푸터관리 - 메일헤더푸터 정보
-	 * @return
-	 * @author csh9191	
-	 * @since 2021. 02. 13
-	 */
-	@PostMapping("/mktMailManagement/save")
-	@ResponseBody
-	public GagaMap saveMktMailTemplate(@RequestBody MktmailManagement mktmailManagement){
-		GagaMap result = new GagaMap();
-		mktmailManagement.setRegNo(TsaSession.getInfo().getUserNo());
-		mktmailManagement.setUpdNo(TsaSession.getInfo().getUserNo());
-		result.set("status", GagaResponseStatus.FAIL.getCode());
-
-		result = mailTemplateService.saveMktMailTemplate(mktmailManagement);
-		result.set("message", message.getMessage("SUCC_0001"));
-		return result;
-	}
 
-	/**
-	 * MKT메일관리 목록
-	 * @param MKT메일관리관리 - MKT메일관리 정보
-	 * @return
-	 * @author csh9191
-	 * @since 2021. 02. 14
-	 */
-	@PostMapping("/mktmailManagement/list")
-	@ResponseBody
-	public Collection<MktmailManagement> getMktMailList(@RequestBody MktmailManagement mktmailManagement) {
-		return mailTemplateService.getMktMailList(mktmailManagement);
-	}
-	/**
-	 * 메일헤더푸터 리스트 삭제
-	 * @param 메일헤더푸터관리 - 메일헤더푸더 정보
-	 * @return
-	 * @author csh9191	
-	 * @since 2021. 02. 15
-	 */
-	@PostMapping("/mktmailManagement/delete")
-	@ResponseBody
-	public GagaResponse deleteMktmailList(@RequestBody Collection<MktmailManagement> mktmailManagementList) {
-		mailTemplateService.deleteMktmailList(mktmailManagementList);
-		return super.ok(message.getMessage("SUCC_0003"));
-	}
-	
 	/* // CSB 진행 */
 
 	/**

+ 0 - 34
src/main/java/com/style24/persistence/domain/MailTemplate.java

@@ -1,34 +0,0 @@
-package com.style24.persistence.domain;
-
-import com.style24.persistence.TscBaseDomain;
-
-import lombok.Data;
-
-/**
- * 색상 Domain
- *
- * @author csh9191
- * @since 2021. 01. 29.
- */
-
-@SuppressWarnings("serial")
-@Data
-public class MailTemplate extends TscBaseDomain{
-
-	//메일템플릿
-	private Integer mailtSq;		// 메일템플릿 일련번호
-	private Integer mailhfSq;		// 메일헤더푸터 일련번호
-	private String mailhfNm;		// 메일헤더푸터 타이틀명
-	private String mailhfGb;		// 메일헤더푸터 구분 H:헤더 F:푸터
-	private String mode;
-	private String mailhfContent;	// 메일헤더푸터 내용
-	private String useYn;			// 사용여부
-	private String regDt;			// 등록일시
-	private String updDt;			// 수정일시
-	
-	private String searchTxt;		//등로자 검색
-
-
-	}
-
-

+ 0 - 77
src/main/java/com/style24/persistence/domain/MktmailManagement.java

@@ -1,77 +0,0 @@
-package com.style24.persistence.domain;
-
-import java.util.Collection;
-import java.util.List;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.style24.persistence.TscBaseDomain;
-
-import lombok.Data;
-
-/**
- * MKT메일관리 Domain
- *
- * @author csh9191
- * @since 2021. 02. 05
- */
-@SuppressWarnings("serial")
-@Data
-public class MktmailManagement extends TscBaseDomain{
-	// MKT 메일관리
-	private String mktmailStdt;				// 검색 시작일
-	private String mktmailEddt;				// 검색 마지막일
-	private Integer mailtSq; 				// 메일템플릿 번호
-	private String mailtNm;					// 메일템플릿 명
-	private String mailtGb;					// 메일템플릿 구분
-	private Integer mktHeader;				// 메일헤더 일련번호
-	private Integer mktFooter;				// 메일푸터 일련번호
-	private String mailContent;				// 메일 내용
-	private String useYn;					// 사용구분
-	private String regDt;					// 등록일시
-	private String updDt;					// 수정일시
-	private String mode;
-	
-	private String searchTxt;				// 검색어
-	private String searchGb; 				// 검색구분
-		
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementGoods> mktmailManagementGoods; //메일 전시
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementGoods> mktmailManagementGoods2; //메일 전시
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementGoods> mktmailManagementGoods3; //메일 전시
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementGoods> mktmailManagementGoods4; //메일 전시
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementGoods> mktmailManagementGoods5; //메일 전시
-	
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementTc> mktmailManagementTc; //메일템플릿 구분자
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementTc> mktmailManagementTc2; 
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementTc> mktmailManagementTc3; 
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementTc> mktmailManagementTc4; 
-	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	List<MktmailManagementTc> mktmailManagementTc5; 
-	// 메일 템플릿 코너 
-	private Integer mailtcSq;				// 메일템플릿 코너번호
-	private String mailtcNm;				// 메일템플릿 코너명
-	private Integer goodsCpr;				// 상품 노출건수
-	private String mailtcLink;				// 메일템플릿 코너 링크
-	
-	//상품정보
-	private String brandKnm;				// 브랜드명
-	private String goodNms;					// 상품명
-	private String cdNm;					// 판매상태
-	private String listPrice;				// 정상가
-	private String currPrice;				// 판매가
-	private String goodsCd;					// 상품코드(상품)
-	private Integer dispOrd;				// 표시순서
-
-
-	
-
-	
-}

+ 0 - 31
src/main/java/com/style24/persistence/domain/MktmailManagementGoods.java

@@ -1,31 +0,0 @@
-package com.style24.persistence.domain;
-
-import com.style24.persistence.TscBaseDomain;
-
-import lombok.Data;
-
-/**
- * MKT메일관리 Domain
- *
- * @author csh9191
- * @since 2021. 02. 05
- */
-@SuppressWarnings("serial")
-@Data
-public class MktmailManagementGoods extends TscBaseDomain{
-	
-	// 메일 템플릿 코너 상품
-	private Integer mailtcSq;				// 메일템플릿코너 일련번호
-	private String goodsCd;					// 상품코드(상품)
-	private Integer dispOrd;				// 표시순서
-	private String regDt;					// 등록일시
-	private String updDt;					// 수정일시
-	
-	//상품정보
-	private String brandEnm;				// 브랜드명
-	private String goodNms;					// 상품명
-	private String cdNm;					// 판매상태
-	private String listPrice;				// 정상가
-	private String currPrice;				// 판매가
-
-}

+ 0 - 29
src/main/java/com/style24/persistence/domain/MktmailManagementTc.java

@@ -1,29 +0,0 @@
-package com.style24.persistence.domain;
-
-import com.style24.persistence.TscBaseDomain;
-
-import lombok.Data;
-
-/**
- * MKT메일관리 Domain
- *
- * @author csh9191
- * @since 2021. 02. 05
- */
-@SuppressWarnings("serial")
-@Data
-public class MktmailManagementTc extends TscBaseDomain{
-	
-	// 메일 템플릿 코너 
-	private Integer mailtcSq;				// 메일템플릿 코너번호
-	private Integer mailtSq;				// 메일템플릿 일련번호
-	private String mailtcNm;				// 메일템플릿 코너명
-	private Integer goodsCpr;				// 상품 노출건수
-	private String mailtcLink;				// 메일템플릿 코너 링크
-	private String useYn;					// 사용구분
-	private String regDt;					// 등록일시
-	private String updDt;					// 수정일시
-
-
-
-}

+ 0 - 296
src/main/java/com/style24/persistence/mybatis/shop/TsaMailTemplate.xml

@@ -1,296 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.style24.admin.biz.dao.TsaMailTemplateDao">
-
-		<select id="getmailHFList" parameterType="MailTemplate" resultType="MailTemplate">
-		/* TsaMailTemplate.getmailHFList */
-		SELECT MAILHF_SQ                                             /*메일헤더푸터 일련번호*/
-		   	 , MAILHF_NM                                             /*메일헤더푸터 명*/
-		     , MAILHF_GB                                             /*메일 헤더푸터 구분 H:헤더 F:푸터*/
-		     , MAILHF_CONTENT                                        /*메일 헤더푸터 내용*/
-		     , USE_YN                                                /*사용여부*/
-		     , FN_GET_USER_NM(REG_NO)             AS REG_NM
-		     , DATE_FORMAT(REG_DT,'%Y%m%d%H%i%S') AS REG_DT
-		     , FN_GET_USER_NM(UPD_NO)             AS UPD_NM
-		     , DATE_FORMAT(UPD_DT,'%Y%m%d%H%i%S') AS UPD_DT
-		FROM   TB_MAILHF
-		WHERE  USE_YN = 'Y'
-		<if test="mailhfNm != null and mailhfNm !='' ">
-		AND    LOWER(MAILHF_NM) LIKE CONCAT('%',LOWER(#{mailhfNm}),'%')
-		</if>
-		<if test="mailhfGb !=null and mailhfGb !='' ">
-		AND    MAILHF_GB = #{mailhfGb}
-		</if> 
-		<if test="searchTxt !=null and searchTxt !='' ">
-		AND    FN_GET_USER_NM(REG_NO) LIKE CONCAT('%',LOWER(#{searchTxt}), '%')
-		</if>
-		ORDER  BY MAILHF_SQ
-		</select>
-	
-		<insert id="saveMailHF" parameterType="MailTemplate">
-		/* TsaMailTemplate.saveMailHF 메일헤더푸터관리 등록/수정*/
-		INSERT INTO TB_MAILHF (
-			   MAILHF_SQ                                        /*메일헤더푸터 일련번호*/
-		     , MAILHF_NM                                        /*메일헤더푸터 명*/
-		     , MAILHF_GB                                        /*메일헤더푸터 구분 H:헤더 F:푸터*/
-		     , MAILHF_CONTENT                                   /* 메일헤더푸터 내용*/
-		     , USE_YN                                           /*사용여부*/
-		     , REG_NO
-		     , REG_DT
-		     , UPD_NO
-		     , UPD_DT
-		)
-	     VALUES (
-		       #{mailhfSq}
-		     , #{mailhfNm}
-		     , #{mailhfGb}
-		     , #{mailhfContent}
-		     , IFNULL(#{useYn},'Y')
-		     , #{regNo}
-		     , NOW()
-		     , #{updNo}
-		     , NOW()
-		)
-		ON DUPLICATE KEY UPDATE
-		        MAILHF_SQ = #{mailhfSq}
-		     , MAILHF_NM = #{mailhfNm}
-		     , MAILHF_GB = #{mailhfGb}
-		     , MAILHF_CONTENT = #{mailhfContent}
-		     , UPD_NO = #{updNo}
-		     , UPD_DT = NOW()
-		</insert>
-	
-		<select id="getMailHFDetail" parameterType="Integer" resultType="MailTemplate">
-		/* TsaMailTemplate.getMailHFDetail */
-		SELECT MAILHF_SQ
-		     , MAILHF_NM
-		     , MAILHF_GB
-		     , MAILHF_CONTENT
-		FROM   TB_MAILHF
-		WHERE  MAILHF_SQ = #{mailhfSq}
-		</select>
-	
-		<update id='deleteMailHFList' parameterType='MailTemplate'>
-		/* TsaMailTemplate.deleteMailHFList */
-		UPDATE TB_MAILHF
-		SET    USE_YN = 'N'
-		WHERE  MAILHF_SQ = #{mailhfSq}
-		</update>
-	
-		<select id="getMailGoodsInfo" parameterType="Goods" resultType="Goods">
-		/*메일 템플릿 상품 전시*/
-		SELECT GOODS_CD
-		     , GOODS_NM
-		     , BRAND_ENM 
-		     , STOCK_QTY_SUM
-	         , GOODS_STAT
-	         , STYLE_YEAR
-		     , SEASON_CD
-	         , LIST_PRICE
-	         , CURR_PRICE
-	         , PRICE_UPD_DT
-	         , ERP_STOCK_LINK_YN
-	         , FORMAL_GB
-	         , RETURNABLE_YN
-	         , REG_DT
-	         , REG_NM
-		     , UPD_DT
-	         , UPD_NM
-	         , REP_GOODS_CD
-		     , GROUP_CONCAT(OPT_CD2 ORDER BY DISP_ORD DESC, OPT_CD2 SEPARATOR ',')        AS SITE_CD
-	      FROM (
-		SELECT   GI.SYS_IMG_NM
-			   , G.GOODS_CD
-			   , G.GOODS_NM
-			   , B.BRAND_ENM 
-			   , (CASE WHEN G.GOODS_TYPE = 'G056_N' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD)
-		   ELSE  (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = G.GOODS_CD)
-				 END) AS STOCK_QTY_SUM
-			   , G.GOODS_STAT
-			   , G.STYLE_YEAR
-			   , G.SEASON_CD
-			   , G.LIST_PRICE
-			   , G.CURR_PRICE
-			   , G.PRICE_UPD_DT
-			   , G.ERP_STOCK_LINK_YN
-			   , G.FORMAL_GB
-			   , G.RETURNABLE_YN
-			   , G.REG_DT
-			   , FN_GET_USER_NM(G.REG_NO) AS REG_NM
-			   , G.UPD_DT
-			   , FN_GET_USER_NM(G.UPD_NO) AS UPD_NM
-			   , IFNULL(GC.COMPS_GOODS_CD, G.GOODS_CD) AS REP_GOODS_CD
-			   , OP.OPT_CD2
-			   , OP.DISP_ORD
-			FROM TB_GOODS G
-			LEFT OUTER JOIN TB_GOODS_COMPOSE GC
-			  ON G.GOODS_CD = GC.GOODS_CD
-		   INNER JOIN TB_OPTION OP
-			  ON IFNULL(GC.COMPS_GOODS_CD, G.GOODS_CD) = OP.GOODS_CD
-			LEFT OUTER JOIN TB_GOODS_IMG GI
-			  ON G.GOODS_CD = GI.GOODS_CD
-		   INNER JOIN TB_BRAND B
-			  ON G.BRAND_CD = B.BRAND_CD
-		   WHERE G.GOODS_CD IN
-		<foreach collection="arrGoodsCd" item="item" index="index"  open="(" close=")" separator=",">
-			 #{item}
-		</foreach>
-		  ) Z
-		    GROUP BY SYS_IMG_NM, GOODS_CD, GOODS_NM, STOCK_QTY_SUM, GOODS_STAT, STYLE_YEAR
-				   , SEASON_CD, LIST_PRICE, CURR_PRICE, PRICE_UPD_DT, ERP_STOCK_LINK_YN, FORMAL_GB, RETURNABLE_YN, REG_DT, REG_NM
-				   , UPD_DT, UPD_NM, REP_GOODS_CD
-		</select>
-	
-	
-		<insert id="saveMktmailform" parameterType="MktmailManagement" keyProperty="mailtSq">
-		/* TsaMailTemplate.saveMktmailform   mkt메일 등록/수정 */
-		INSERT INTO TB_MAILT (
-				    MAILT_SQ
-				  , MAILT_NM
-				  , MAILT_GB
-				  , MAILH_SQ
-				  , MAILF_SQ
-				  , MAIL_CONTENT
-				  , USE_YN
-				  , REG_NO
-				  , REG_DT
-				  , UPD_NO
-				  , UPD_DT
-			)
-		     VALUES (
-				    #{mailtSq}
-				  , #{mailtNm}
-				  , #{mailtGb}
-				  , #{mktHeader}
-				  , IFNULL(#{mktFooter}, null )
-				  , #{mailContent}
-				  , IFNULL(#{useYn},'Y')
-				  , #{regNo}
-				  , NOW()
-				  , #{updNo}
-				  , NOW()
-			)
-		ON DUPLICATE KEY UPDATE
-			        MAILT_SQ = #{mailtSq}
-		          , MAILT_NM = #{mailtNm}
-		          , MAILT_GB = #{mailtGb}
-		          , MAILH_SQ = #{mktHeader}
-		          , MAILF_SQ = #{mktFooter}
-		          , MAIL_CONTENT = #{mailContent}
-		          , UPD_NO = #{updNo}
-		          , UPD_DT = NOW()
-		</insert>
-	
-		<insert id="saveMailTc" parameterType="MktmailManagement" keyProperty="mailtcSq">
-		/* TsaMailTemplate.saveMailTc 메일구분자 */
-		INSERT INTO TB_MAILTC ( 
-				    MAILTC_SQ
-				  , MAILT_SQ
-				  , MAILTC_NM
-				  , GOODS_CPR
-				  , MAILTC_LINK
-				  , USE_YN
-				  , REG_NO
-				  , REG_DT
-				  , UPD_NO
-				  , UPD_DT
-			)
-		     VALUES ( 
-				    #{mailtcSq}
-				  , #{mailtSq}
-				  , #{mailtcNm}
-				  , #{goodsCpr}
-				  , #{mailtcLink}
-				  , IFNULL(#{useYn},'Y')
-				  , #{regNo}
-				  , NOW()
-				  , #{updNo}
-				  , NOW()
-			)
-		ON DUPLICATE KEY UPDATE
-				    MAILTC_NM = #{mailtcNm}
-				  , GOODS_CPR = #{goodsCpr}
-				  , MAILTC_LINK = #{mailtcLink}
-				  , UPD_NO = #{updNo}
-				  , UPD_DT = NOW()
-		</insert>
-	
-		<insert id="saveMailGoods" parameterType="MktmailManagement">
-		/* TsaMailTemplate.saveMailGoods 메일 전시상품등록 */
-		INSERT INTO TB_MAILTC_GOODS (
-				    MAILTC_SQ
-				  , GOODS_CD
-				  , DISP_ORD
-				  , REG_NO
-				  , REG_DT
-				  , UPD_NO
-				  , UPD_DT
-			)
-		     VALUES (
-				    #{mailtcSq}
-				  , #{goodsCd}
-				  , #{dispOrd}
-				  , #{regNo}
-				  , NOW()
-				  , #{updNo}
-				  , NOW()
-			)
-		ON DUPLICATE KEY UPDATE
-				    MAILTC_SQ = #{mailtcSq}
-				  , GOODS_CD = #{goodsCd}
-				  , DISP_ORD = #{dispOrd}
-				  , UPD_NO = #{updNo}
-				  , UPD_DT = NOW()
-		</insert>
-		
-		<select id="getMktMailList" parameterType="MktmailManagement" resultType="MktmailManagement">
-		/* TsaMailTemplate.getMktMailList mkt메일 조회*/
-		SELECT MAILT_SQ
-			 , MAILT_GB
-			 , MAILT_NM
-			 , FN_GET_USER_NM(REG_NO)             AS REG_NM
-			 , DATE_FORMAT(REG_DT,'%Y%m%d%H%i%S') AS REG_DT
-			 , FN_GET_USER_NM(UPD_NO)             AS UPD_NM
-			 , DATE_FORMAT(UPD_DT,'%Y%m%d%H%i%S') AS UPD_DT
-		FROM   TB_MAILT 
-		WHERE  USE_YN = 'Y'
-		<if test="mktmailStdt != null and mktmailStdt != '' and mktmailEddt != null and mktmailEddt != ''">
-		AND  REG_DT BETWEEN STR_TO_DATE(#{mktmailStdt}, '%Y-%m-%d%H%i%S') AND STR_TO_DATE(CONCAT(#{mktmailEddt}, '235959'),'%Y-%m-%d%H%i%S')
-		</if> 
-		<if test="searchTxt != null and searchTxt != ''">
-			<if test="searchGb != null and searchGb == 'mailtSq'">
-				AND MAILT_SQ = #{searchTxt}
-			</if>
-			<if test="searchGb != null and searchGb == 'mailtNm'">
-				AND MAILT_NM LIKE CONCAT('%',LOWER(#{searchTxt}), '%')
-			</if>
-		</if>
-		ORDER BY MAILT_SQ
-		</select>
-		
-		<select id="getMktmailManagementDetail" parameterType="Integer" resultType="MktmailManagement">
-		/* TsaMailTemplate.getMktmailManagementDetail */
-		SELECT MAILT_SQ
-			 , MAILT_GB
-			 , MAILH_SQ
-			 , MAILF_SQ
-			 , MAILT_NM
-			 , MAIL_CONTENT
-		FROM   TB_MAILT
-		WHERE  MAILT_SQ = #{mailtSq}
-		</select>
-		
-		<select id="getMktmailManagementTCDetail" parameterType="Integer" resultType="MktmailManagement">
-		/* TsaMailTemplate.getMktmailManagementDetail */
-
-		</select>
-	
-		
-		<update id='deleteMktmailList' parameterType='MktmailManagement'>
-		/* TsaMailTemplate.deleteMailHFList 리스트 삭제*/
-		UPDATE  TB_MAILT
-	  	SET     USE_YN = 'N'
-		WHERE   MAILT_SQ = #{mailtSq}
-		</update>
-	
-</mapper>

+ 0 - 150
src/main/webapp/WEB-INF/views/marketing/MailHeaderFooterDetailForm.html

@@ -1,150 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : MailHeaderFooterDetailForm.html
- * @desc    : MailHeaderFooter 등록/수정 상세 팝업화면
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021. 02. 02   csh9191     최초 작성
- *******************************************************************************
- -->
-<div class="modalPopup" data-width="1200" id="popupMailHF">
-	<div class="panelStyle">
-		<!-- TITLE -->
-		<div class="panelTitle">
-			<strong th:text="${'메일 헤더/푸터 ' + (mode == 'N' ? '등록' : '상세')}">메일 헤더/푸터</strong>
-			<button type="button" class="close" onclick="uifnPopupClose('popupMailHF');"><em class="fa fa-times"></em></button>
-		</div>
-		<!-- //TITLE -->
-		
-		<!-- CONTENT -->
-		<div class="panelContent">
-			<form id="mailHFForm" name="mailHFForm" action="#" th:action="@{'/marketing/mailtemplate/save'}" th:method="post">
-				<input type="hidden" name="mode" th:value="${mode}"/>
-				
-				<table class="frmStyle" aria-describedby="등록폼">
-					<colgroup>
-						<col style="width:10%;"/>
-						<col/>
-					</colgroup>
-					<tbody>
-						<tr>
-							<th>번호</th>
-							<td>
-								<input type="text" name="mailhfSq" maxlength="20" placeholder="자동생성" readonly="readonly"/>								
-							</td>							
-						</tr>
-						<tr>
-							<th>구분<em class="required" title="필수"></em></th>
-							<td>
-								<label class="rdoBtn"><input type="radio" name="mailhfGb" value="H" checked="checked"/>헤더</label>
-								<label class="rdoBtn"><input type="radio" name="mailhfGb" value="F"/>푸터</label>
-							</td>
-						</tr>
-						<tr>
-							<th>타이틀<em class="required" title="필수"></em></th>
-							<td>
-								<input type="text" name="mailhfNm" maxlength="50" required="required" data-valid-name="타이틀"/>
-							</td>
-						</tr>
-						<tr>
-							<th>내용<em class="required" title="필수"></em></th>
-							<td>
-								<textarea class="textareaR4" id="mailhfContent" name="mailhfContent" data-valid-name="내용"></textarea>
-							</td>
-						</tr>
-					</tbody>
-				</table>
-			</form>
-		</div>
-		<!-- //CONTENT -->
-
-		<!-- 버튼 배치 영역 -->
-		<ul class="panelBar">
-			<li class="left"  th:if="${mode  == 'N' }">
-				<button type="button" class="btn btn-danger btn-lg" id="btndeleteMailHF">삭제</button>
-			</li>
-			<li class="right">
-				<button type="button" class="btn btn-info btn-lg" id="btnSaveMailHF">저장</button>
-			</li>
-		</ul>
-		<!-- //버튼 배치 영역 -->
-	</div>
-</div>
-
-<script type="text/javascript" src="/ux/plugins/summernote/summernote.js?v=2020102902"></script>
-<script type="text/javascript" src="/ux/plugins/gaga/gaga.summernote.js?v=20201030"></script>
-<script th:inline="javascript">
-/*<![CDATA[*/
-	let mailhfInfo = [[${mailhfInfo}]];
-	let mode = [[${mode}]]; 
-
-	//팝업창 삭제버튼
-	$('#btndeleteMailHF').on('click', function() {
-		mcxDialog.confirm("등록하신 내용을 삭제하시겠습니까?<br>삭제한 내용은 복원하실 수 없습니다.", {
-			cancelBtnText: "취소",
-			sureBtnText: "확인",
-			sureBtnClick: function() {
-				uifnPopupClose('popupMailHF'); //팝업 창 닫기
-			}
-		});
-	});
-	
-	// 저장
-	$('#btnSaveMailHF').on('click', function() {
-		// 입력 값 체크
-		if (!gagajf.validation('#mailHFForm'))
-			return false;
-		
-		if (gagajf.isNull($('#mailhfContent').val())) {
-			mcxDialog.alert('내용을 입력해 주세요.');
-			return false;
-		}
-		
-		//타이틀 길이 제한 2자 이상 50자 미만
-		var check = $('#mailHFForm input[name=mailhfNm]').val();
-
-		if(check.length < 2){
-			mcxDialog.alert('타이틀은 2자 이상 50자 미만으로 입력하세요.');
-			return false;
-		}
-		
-		mcxDialog.confirm("내용을 등록 하시겠습니까?", {
-			cancelBtnText: "취소",
-			sureBtnText: "확인",
-			sureBtnClick: function() {
-				gagajf.ajaxFormSubmit($('#mailHFForm').prop('action'), '#mailHFForm', function() {
-					uifnPopupClose('popupMailHF');
-					$('#btnSearch').trigger('click');
-				});
-			}
-		});
-	});
-	
-	
-
-	$(document).ready(function() {
-		if (mode == 'U') {
-			$('#mailHFForm input[name=mailhfSq]').val(mailhfInfo.mailhfSq);
-			$('#mailHFForm input[name=mailhfNm]').val(mailhfInfo.mailhfNm);
-			$('#mailHFForm textarea[name=mailhfContent]').val(mailhfInfo.mailhfContent);
-			
-			if (mailhfInfo.mailhfGb == 'F') {
-				$('#mailHFForm input:radio[name="mailhfGb"]:radio[value="F"]').prop('checked', true);
-			}
-		}
-		
-		// Create a summernote
-		let snOptions = gagaSn.getToolbarOptions();
-		gagaSn.createSummernote(snOptions, '#mailhfContent');
-	});
-/*]]>*/
-</script>
-
-</html>

+ 0 - 190
src/main/webapp/WEB-INF/views/marketing/MailHeaderFooterForm.html

@@ -1,190 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : MailHeaderFooter.html
- * @desc    : MailHeaderFooter 관리 화면
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021. 02. 01   csh9191     최초 작성
- *******************************************************************************
- -->
-	<div id="main">
-		<!-- 메인타이틀 영역 -->
-		<div class="main-title">
-		</div>
-		<!-- //메인타이틀 영역 -->
-		
-		<!-- 메뉴 설명 -->
-		<div class="infoBox menu-desc">
-		</div>
-		<!-- //메뉴 설명 -->
-		
-		<!-- 검색조건 영역 -->
-		<div class="panelStyle">
-			<form id="searchForm" name="searchForm" action="#" th:action="@{'/marketing/mailtemplate/list'}" onsubmit="$('#btnSearch').trigger('click'); return false;">
-				<table class="frmStyle" aria-describedby="검색조건">
-					<colgroup>
-						<col style="width:10%;"/>
-						<col style="width:20%;"/>
-						<col style="width:10%;"/>
-						<col style="width:20%;"/>
-						<col style="width:10%;"/>
-						<col style="width:20%;"/>
-						<col/>
-					</colgroup>
-					<tr>
-						<th>구분</th>
-						<td>
-							<select name="mailhfGb">
-								<option value="">[전체]</option>
-								<option value="H">헤더</option>
-								<option value="F">푸터</option>
-							</select>
-						</td>
-						<th>타이틀 명</th>
-						<td>
-							<input type="text" name="mailhfNm" class="w200"/>
-						</td>
-						<th>등록자</th>
-						<td>
-							<input type="text" name="searchTxt" class="w200"/>
-						</td>
-					</tr>
-				</table>
-				
-				<ul class="panelBar">
-					<li class="center">
-						<button type="button" class="btn btn-gray btn-lg" onclick="$('#searchForm')[0].reset();">초기화</button>
-						<button type="button" class="btn btn-info btn-lg" id="btnSearch">조회</button>
-					</li>
-				</ul>
-			</form>
-		</div>
-		<!-- 검색조건 영역 -->
-			
-		<!-- 리스트 영역 -->
-			<div class="panelStyle">
-				<!-- 버튼 배치 영역 -->
-				<ul class="panelBar">
-					<li class="left">
-						<button type="button" class="btn btn-danger btn-lg" id="btnDeleteRow">선택삭제</button>	
-					</li>
-					<li class="right">
-						<button type="button" class="btn btn-info btn-lg" onclick="fnOpenMailHFPopup('N');">메일헤더푸터 등록</button>
-					</li>
-				</ul>
-				<!-- //버튼 배치 영역 -->
-				<div id="gridList" style="width: 100%; height: 570px" class="ag-theme-balham"></div>
-			</div>
-		<!-- //리스트 영역 -->
-	
-	</div>
-
-<script th:inline="javascript">
-/*<![CDATA[*/
-	
-	//헤더 푸터 구분 표시
-	let mailhfGb = { "H":"헤더", "F":"푸터" };
-
-	// specify the columns
-	let columnDefs = [
-		{
-			width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false
-		},
-		{
-		 	headerName: "구분", field: "mailhfGb", width: 100, cellClass: 'text-center',
-		 	valueFormatter: function (params) { return gagaAgGrid.lookupValue(mailhfGb, params.value); }
-		},
-		{	headerName: "타이틀", field: "mailhfNm", width: 300, cellClass: 'text-center',
-			cellRenderer: function(params) { 
-				return '<a href="javascript:void(0);">' + params.value + '</a>'; 
-			}
-		},
-		{
-			headerName: "등록자", field: "regNm", width: 150, cellClass: 'text-center'},
-		{
-			headerName: "등록일시", field: "regDt", width: 200, cellClass: 'text-center',
-			cellRenderer: function(params) { return gagaAgGrid.toDateTimeFormat(params.value); }
-		},
-		{
-			headerName: "수정자", field: "updNm", width: 150, cellClass: 'text-center'},
-		{
-			headerName: "수정일시", field: "updDt", width: 200, cellClass: 'text-center', 
-			cellRenderer: function(params) { return gagaAgGrid.toDateTimeFormat(params.value); }
-		}
-	];
-
-	// Get GridOptions
-	let gridOptions = gagaAgGrid.getGridOptions(columnDefs); 
-
-	// Add on options
-	gridOptions.rowSelection = 'multiple';	//셀렉박스 다중 선택
-	
-	// 셀 클릭 이벤트
-	gridOptions.onCellClicked = function(event) {
-		if (event.colDef.field != 'mailhfNm')
-			return;
-		
-		fnOpenMailHFPopup('U', event.data.mailhfSq);
-	}
-	
-	// 조회버튼 - 검색
-	$('#btnSearch').on('click', function() {
-		var formId = "#searchForm";
-		gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
-	});
-	
-	// 선택삭제
-	$('#btnDeleteRow').on('click', function() {
-		var removedData = gagaAgGrid.removeRowData(gridOptions);
-		
-		if (removedData.length == 0) {
-			mcxDialog.alert('선택된 행이 없습니다.');
-			return;
-		}
-		
-		mcxDialog.confirm("삭제하시겠습니까?", {
-			sureBtnText: "확인",
-			cancelBtnText: "취소",
-			sureBtnClick: function() {
-				// delete 대신 update 처리해야 하므로 다음과 같이 useYn 값으로 처리
-				var updatedData = [];
-				
-				$.each(removedData, function(idx, item) {
-					item.useYn = 'N';
-					updatedData.push(item);
-				});
-				
-				
-				var jsonData = JSON.stringify(updatedData);
-				gagajf.ajaxJsonSubmit('/marketing/mailtemplate/delete', jsonData, function() {
-					$('#btnSearch').trigger('click');
-				});
-			}
-		});
-	});
-	
-	// 등록/상세 팝업
-	var fnOpenMailHFPopup = function(mode, mailhfSq) {
-		var actionUrl = '/marketing/mailtemplate/detail/form' + '?mode=' + mode;
-		if (!gagajf.isNull(mailhfSq)) actionUrl += '&mailhfSq=' + mailhfSq;
-		cfnOpenModalPopup(actionUrl, 'popupMailHF');
-	}
-	
-	$(document).ready(function() {
-		// Create a agGrid
-		gagaAgGrid.createGrid('gridList', gridOptions);		
-		gagaAgGrid.hideStatusBar('gridList');
-	});
-	
-/*]]>*/
-</script>
-
-
-</html>

+ 0 - 773
src/main/webapp/WEB-INF/views/marketing/MktmailmanagementDetailForm.html

@@ -1,773 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : MktmailmanagementDetailForm.html
- * @desc    : MktmailmanagementDetailForm 등록/수정 상세 팝업화면
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021. 02. 05   csh9191     최초 작성
- *******************************************************************************
- -->
-<div class="modalPopup" data-width="1200" id="popupMktMail">
-	<div class="panelStyle" style="max-height:700px;overflow-y:scroll;">
-		<!-- 팝업창 타이틀 -->
-		<div class="panelTitle">
-			<strong th:text="${'이메일' + (mode == 'N' ? '등록' : '상세')}">이메일</strong>
-			<button type="button" class="close" onclick="uifnPopupClose('popupMktMail');"><em class="fa fa-times"></em></button>
-		</div>
-		<!-- 팝업창 타이틀 -->
-		
-		<!-- 팝업창 상단부분 시작-->
-		<div class="panelContent">
-			<form id="mailManagementForm" name="mailManagementForm" action="#" th:action="@{'/marketing/mktMailManagement/save'}" th:method="post">
-				<input type="hidden" name="mode" th:value="${mode}"/>
-				
-				<table class="frmStyle" aria-describedby="">
-					<colgroup>
-						<col style="width:10%;"/>
-						<col/>
-					</colgroup>
-					<tbody>
-						<tr>
-							<th>메일번호</th>
-							<td>
-								<input type="text" name="mailtSq" maxlength="20" placeholder="자동생성" readonly="readonly"/>
-							</td>
-						</tr>
-						<tr>
-							<th>메일구분</th>
-							<td>
-								<label class="rdoBtn"><input type="radio" name="mailtGb" value="M" checked="checked"/>마케팅</label>
-								<label class="rdoBtn"><input type="radio" name="mailtGb" value="A"/>자동</label>
-							</td>
-						</tr>
-						<tr>
-							<th>헤더</th>
-							<td>
-								<select name="mailHsq">
-									<option>선택하기 ▼</option>
-									<option th:if="${mailHsqList}" th:each="oneData, status : ${mailHsqList}" th:value="|${oneData.mailhfSq}|" th:text="|${oneData.mailhfNm}|" selected="selected"></option>
-								</select>
-							</td>
-						</tr>
-						<tr>
-							<th>푸터</th>
-							<td>
-								<select name="mailFsq">
-										<option>선택하기 ▼</option>
-										<option th:if="${mailFsqList}" th:each="oneData, status : ${mailFsqList}" th:value="|${oneData.mailhfSq}|" th:text="|${oneData.mailhfNm}|" selected="selected"></option>
-								</select>
-							</td>
-						</tr>
-						<tr>
-							<th>타이틀<em class="required" title="필수"></em></th>
-							<td><input type="text" name="mailtNm" maxlength="50" required="required" data-valid-name="타이틀" /></td>
-						</tr>
-						
-						<tr>
-							<th>HTML / 이미지 설정<em class="required" title="필수"></em></th>
-							<td>
-								<textarea class="textareaR4" id="mailContent" name="mailContent" data-valid-name="내용"></textarea>
-							</td>
-						</tr>
-					</tbody>
-					
-				</table>
-		<!-- 팝업창 상단부분 끝-->
-		
-		<!-- 팡업창 하단부분 시작 -->
-		
-		<div class="panelStyle" style="margin:unset;">
-				<!-- TITLE -->
-				<div class="panelTitle">
-					<h2>상품 전시 설정</h2>
-					<span class="panelControl">
-						<i class="fa inner-fa-chevron-up"></i>    <!-- 열림/닫힘 화살표 -->
-					</span>
-				</div>
-				<!-- //상품 전시 설정 -->
-				<div class="inner-panelContent">
-					<div class="panelContent">
-					<ul class="panelBar">
-						<li class="left">
-							<p>최대 5개 까지 상품 전시 구분을 추가하실 수 있습니다.</p>
-							<p>상품은 구분자 당 최대 40 개 까지만 등록하실 수 있습니다.</p>
-						</li>
-						<li class="right">
-							<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddGrid" onclick="btnAddGrid();">구분추가하기</button>
-						</li>
-					</ul>
-						<!-- 구분 1 -->
-						<div class="inner-panelContent" id="btnAddGridNum" style="display:none;">
-							<input type="hidden" name="btnAddGridNumUseYn"  value ="Y">
-							<input type="hidden" name="mailtcSq">
-							<div class="panelContent">
-								<table class="frmStyle">
-									<colgroup>
-										<col width="10%"/>
-										<col width="90%"/>
-									</colgroup>
-									<tr>
-										<th>상품 구분 1<br>
-											<button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum();">구분 삭제</button>
-										</th>
-										<td>
-											<div class="">
-												<table  class="frmStyle">
-													<tr>
-														<th class="w100">구분자 명</th>
-														<td>
-															<input type="text" name="mailtcNm"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>링크</th>
-														<td>
-															<input type="text" name="mailtcLink"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>상품 노출 기준
-															<div class="iconTooltip">
-																	<i class="fa fa-info" aria-hidden="true"></i>
-																	<span class="left aL" style="width:230px;">
-																		<em>1열 에 노출될 상품 개수를 뜻합니다.</em>
-																	</span>
-															</div>
-														</th>
-														<td>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr" value="1"/>1개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr" value="2"/>2개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr" value="3" checked/>3개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr" value="4"/>4개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr" value="5"/>5개</label>
-														</td>
-													</tr>
-												</table>
-												<ul class="panelBar">
-													<li class="left">
-														<button type="button" class="btn btn-danger btn-lg" onclick="fnGoodsDeleteRow('gridOptions_c1');">상품삭제</button>
-													</li>
-													<li class="right">
-														<button type="button" class="btn btn-info btn-lg" onclick="fnOpenGoodsPopup('gridOptions_c1');">상품추가</button>
-													</li>													
-												</ul>
-												<!-- Agrid -->
-												<div id="gridSectionGbList1" style="width:100%; height:200px;" class="ag-theme-balham"></div>
-											</div>
-										</td>
-									</tr>
-								</table>
-							</div>
-						</div>
-						<!-- 구분 1 -->
-						
-						<!-- 구분2 -->
-						<div class="inner-panelContent" id="btnAddGridNum2" style="display:none;">
-							<input type="hidden" name="btnAddGridNum2UseYn" value="Y">
-							<div class="panelContent">
-								<table class="frmStyle">
-									<colgroup>
-										<col width="10%"/>
-										<col width="90%"/>
-									</colgroup>
-									<tr>
-										<th>상품 구분 2<br><br>
-											<button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum2();">구분 삭제</button>
-										</th>
-										<td>
-											<div class="">
-												<table  class="frmStyle">
-													<tr>
-														<th class="w100">구분자 명</th>
-														<td>
-															<input type="text" name="mailtcNm2"/>
-														</td>
-													</tr>
-													<tr>
-														<th>링크</th>
-														<td>
-															<input type="text" name="mailtcLink2"/>
-														</td>
-													</tr>
-													<tr>
-														<th>상품 노출 기준</th>
-														<td>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr2" value="1"/>1개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr2" value="2"/>2개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr2" value="3" checked/>3개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr2" value="4"/>4개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr2" value="5"/>5개</label>
-														</td>
-													</tr>
-												</table>
-												<ul class="panelBar">
-													<li class="left">
-														<button type="button" class="btn btn-danger btn-lg" onclick="fnGoodsDeleteRow('gridOptions_c2');">상품삭제</button>
-													</li>
-													<li class="right">
-														<button type="button" class="btn btn-info btn-lg" onclick="fnOpenGoodsPopup('gridOptions_c2');">상품추가</button>
-													</li>													
-												</ul>
-												<!-- Agrid -->
-												<div id="gridSectionGbList2" style="width:100%; height:200px;" class="ag-theme-balham"></div>
-											</div>
-										</td>
-									</tr>
-								</table>
-							</div>
-						</div>
-						<!-- 구분2  -->
-						
-						<!-- 구분3 -->
-						<div class="inner-panelContent" id="btnAddGridNum3" style="display:none;">
-							<input type="hidden" name="btnAddGridNum3UseYn" value="Y">
-							<div class="panelContent">
-								<table class="frmStyle">
-									<colgroup>
-										<col width="10%"/>
-										<col width="90%"/>
-									</colgroup>
-									<tr>
-										<th>상품 구분 3<br><br>
-											<button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum3('gridOptions_c3');">구분 삭제</button>
-										</th>
-										<td>
-											<div class="">
-												<table  class="frmStyle">
-													<tr>
-														<th class="w100">구분자 명</th>
-														<td>
-															<input type="text" name="mailtcNm3"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>링크</th>
-														<td>
-															<input type="text" name="mailtcLink3"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>상품 노출 기준</th>
-														<td>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr3" value="1"/>1개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr3" value="2"/>2개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr3" value="3" checked/>3개</label>						
-															<label class="rdoBtn"><input type="radio" name="goodsCpr3" value="4"/>4개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr3" value="5"/>5개</label>
-														</td>
-													</tr>
-												</table>
-												<ul class="panelBar">
-													<li class="left">
-														<button type="button" class="btn btn-danger btn-lg" onclick="fnGoodsDeleteRow('gridOptions_c3');">상품삭제</button>
-													</li>
-													<li class="right">
-														<button type="button" class="btn btn-info btn-lg" onclick="fnOpenGoodsPopup('gridOptions_c3');">상품추가</button>
-													</li>													
-												</ul>
-												<!-- Agrid -->
-												<div id="gridSectionGbList3" style="width:100%; height:200px;" class="ag-theme-balham"></div>
-											</div>
-										</td>
-									</tr>
-								</table>
-							</div>
-						</div>
-						<!-- 구분3 -->
-						
-						<!-- 구분4 -->
-						<div class="inner-panelContent" id="btnAddGridNum4" style="display:none;">
-							<input type="hidden" name="btnAddGridNum4UseYn" value="Y">
-							<div class="panelContent">
-								<table class="frmStyle">
-									<colgroup>
-										<col width="10%"/>
-										<col width="90%"/>
-									</colgroup>
-									<tr>
-										<th>상품 구분 4<br><br>
-											<button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum4('gridOptions_c4');">구분 삭제</button>
-										</th>
-										<td>
-											<div class="">
-												<table  class="frmStyle">
-													<tr>
-														<th class="w100">번호</th>
-														<td>
-															<input type="text" name="mailtcNm4"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>링크</th>
-														<td>
-															<input type="text" name="mailtcLink4"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>상품 노출 기준</th>
-														<td>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr4" value="1"/>1개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr4" value="2"/>2개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr4" value="3" checked/>3개</label>						
-															<label class="rdoBtn"><input type="radio" name="goodsCpr4" value="4"/>4개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr4" value="5"/>5개</label>
-														</td>
-													</tr>
-												</table>
-												<ul class="panelBar">
-													<li class="left">
-														<button type="button" class="btn btn-danger btn-lg" onclick="fnGoodsDeleteRow('gridOptions_c4');">상품삭제</button>
-													</li>
-													<li class="right">
-														<button type="button" class="btn btn-info btn-lg" onclick="fnOpenGoodsPopup('gridOptions_c4');">상품추가</button>
-													</li>													
-												</ul>
-												<!-- Agrid -->
-												<div id="gridSectionGbList4" style="width:100%; height:200px;" class="ag-theme-balham"></div>
-											</div>
-										</td>
-									</tr>
-								</table>
-							</div>
-						</div>
-						<!-- 구분4 -->
-						
-						<!-- 구분5 -->
-						<div class="inner-panelContent" id="btnAddGridNum5" style="display:none;">
-							<input type="hidden" name="btnAddGridNum5UseYn" value="Y">
-							<div class="panelContent">
-								<table class="frmStyle">
-									<colgroup>
-										<col width="10%"/>
-										<col width="90%"/>
-									</colgroup>
-									<tr>
-										<th>상품 구분 5<br><br>
-											<button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum5('gridOptions_c5');">구분 삭제</button>
-										</th>
-										<td>
-											<div class="">
-												<table  class="frmStyle">
-													<tr>
-														<th class="w100">구분자 명</th>
-														<td>
-															<input type="text" name="mailtcNm5"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>링크</th>
-														<td>
-															<input type="text" name="mailtcLink5"/>								
-														</td>
-													</tr>
-													<tr>
-														<th>상품 노출 기준</th>
-														<td>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr5" value="1"/>1개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr5" value="2"/>2개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr5" value="3" checked/>3개</label>						
-															<label class="rdoBtn"><input type="radio" name="goodsCpr5" value="4"/>4개</label>
-															<label class="rdoBtn"><input type="radio" name="goodsCpr5" value="5"/>5개</label>
-														</td>
-													</tr>
-												</table>
-												<ul class="panelBar">
-													<li class="left">
-														<button type="button" class="btn btn-danger btn-lg" onclick="fnGoodsDeleteRow('gridOptions_c5');">상품삭제</button>
-													</li>
-													<li class="right">
-														<button type="button" class="btn btn-info btn-lg" onclick="fnOpenGoodsPopup('gridOptions_c5');">상품추가</button>
-													</li>													
-												</ul>
-												<!-- Agrid -->
-												<div id="gridSectionGbList5" style="width:100%; height:200px;" class="ag-theme-balham"></div>
-											</div>
-										</td>
-									</tr>
-								</table>
-							</div>
-						</div>
-						<!-- 구분5 -->
-					
-						
-					</div> <!-- panelContent -->
-				</div> <!-- end of inner-panelContent -->
-			</div>
-			<!-- 팡업창 하단부분 끝 -->
-
-		<!-- 버튼 배치 영역 -->
-		<ul class="panelBar">
-			<li class="left"  th:if="${mode  == 'N' }">
-				<button type="button" class="btn btn-danger btn-lg" id="btndeleteMktmail">삭제</button>
-			</li>
-			<li class="right">
-				<button type="button" class="btn btn-info btn-lg" id="btnSaveMktMail">저장</button>
-			</li>
-		</ul>
-		<!-- //버튼 배치 영역 -->
-				</form>
-		</div>
-	</div>//
-</div>
-
-<script type="text/javascript" src="/ux/plugins/summernote/summernote.js?v=2020102902"></script>
-<script type="text/javascript" src="/ux/plugins/gaga/gaga.summernote.js?v=20201030"></script>
-<script th:inline="javascript">
-/*<![CDATA[*/
-		let AddgridRow;		
-		let mode = [[${mode}]]; 
-		let mktmailInfo = [[${mktmailInfo}]];
-		
-		//팝업창 삭제버튼
-		$('#btndeleteMktmail').on('click', function() {
-			mcxDialog.confirm("등록하신 내용을 삭제하시겠습니까?<br>삭제한 내용은 복원하실 수 없습니다.", {
-				cancelBtnText: "취소",
-				sureBtnText: "확인",
-				sureBtnClick: function() {
-					uifnPopupClose('popupMktMail');
-				}
-			});
-		});
-		
-		//상품 전시 그리드 그리기
-		var columnDefs = [
-			{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-			{headerName: "Product ID", field: "goodsCd" , width: 120, cellClass: 'text-center'},
-			{headerName: "브랜드명", field: "brandEnm" , width: 200, cellClass: 'text-center'},
-			{headerName: "상품명", field: "goodNms" , width: 200, cellClass: 'text-center'},
-			{headerName: "판매상태", field: "cdNm" , width: 100, cellClass: 'text-center'	},
-			{headerName: "정상가", field: "listPrice" , width: 120, cellClass: 'text-center'},
-			{headerName: "판매가", field: "listPrice" , width: 120, cellClass: 'text-center'},
-			{headerName: "순번", field: "dispOrd" , width: 120, cellClass: 'text-center'}
-		]
-		
-		// Add on options
-		var gridOptions_c1 = gagaAgGrid.getGridOptions(columnDefs);
-		var gridOptions_c2 = gagaAgGrid.getGridOptions(columnDefs);
-		var gridOptions_c3 = gagaAgGrid.getGridOptions(columnDefs);
-		var gridOptions_c4 = gagaAgGrid.getGridOptions(columnDefs);
-		var gridOptions_c5 = gagaAgGrid.getGridOptions(columnDefs);
-		
-		// 표시순번 수정가능
-		gridOptions_c1.defaultColDef.editable = true;
-		gridOptions_c2.defaultColDef.editable = true;
-		gridOptions_c3.defaultColDef.editable = true;
-		gridOptions_c4.defaultColDef.editable = true;
-		gridOptions_c5.defaultColDef.editable = true;
-		gridOptions_c1.suppressRowClickSelection = true;
-		gridOptions_c2.suppressRowClickSelection = true;
-		gridOptions_c3.suppressRowClickSelection = true;
-		gridOptions_c4.suppressRowClickSelection = true;
-		gridOptions_c5.suppressRowClickSelection = true;
-		
-		///저장
-		$('#btnSaveMktMail').on('click', function() {
-		
-			//타이틀 길이 제한 2자 이상 50자미만
-			var check = $('#mailManagementForm input[name=mailtNm]').val();
-
-			if(check.length < 2){
-				mcxDialog.alert('타이틀은 2자 이상 50자 미만으로 입력하세요.');
-				return false;
-			}
-			
-			let arrayData = gagaAgGrid.getAllRowData(gridOptions_c1)
-			let arrayData2 = gagaAgGrid.getAllRowData(gridOptions_c2)
-			let arrayData3 = gagaAgGrid.getAllRowData(gridOptions_c3)
-			let arrayData4 = gagaAgGrid.getAllRowData(gridOptions_c4)
-			let arrayData5 = gagaAgGrid.getAllRowData(gridOptions_c5)
-			
-			let mailTc = {};
-	
-			mailTc.mailtcNm = $('#mailManagementForm input[name=mailtcNm]').val();
-			mailTc.mailtcLink = $('#mailManagementForm input[name=mailtcLink]').val();
-			mailTc.goodsCpr = $('#mailManagementForm input:radio[name=goodsCpr]:checked').val();
-			
- 			let mailTc2 = {};
-			
-			mailTc2.mailtcNm = $('#mailManagementForm input[name=mailtcNm2]').val();
-			mailTc2.mailtcLink = $('#mailManagementForm input[name=mailtcLink2]').val();
-			mailTc2.goodsCpr = $('#mailManagementForm input:radio[name=goodsCpr2]:checked').val();
-			
-			let mailTc3 = {};
-			
-			mailTc3.mailtcNm = $('#mailManagementForm input[name=mailtcNm3]').val();
-			mailTc3.mailtcLink = $('#mailManagementForm input[name=mailtcLink3]').val();
-			mailTc3.goodsCpr = $('#mailManagementForm input:radio[name=goodsCpr3]:checked').val();
-			
-			let mailTc4 = {};
-			
-			mailTc4.mailtcNm = $('#mailManagementForm input[name=mailtcNm4]').val();
-			mailTc4.mailtcLink = $('#mailManagementForm input[name=mailtcLink4]').val();
-			mailTc4.goodsCpr = $('#mailManagementForm input:radio[name=goodsCpr4]:checked').val();
-			
-			let mailTc5 = {};
-			
-			mailTc5.mailtcNm = $('#mailManagementForm input[name=mailtcNm5]').val();
-			mailTc5.mailtcLink = $('#mailManagementForm input[name=mailtcLink5]').val();
-			mailTc5.goodsCpr = $('#mailManagementForm input:radio[name=goodsCpr5]:checked').val();
-			
-			//헤더 선택체크 내용 체크
-			if(!gagajf.validation('#mailManagementForm'))
-				return false;
-			
-			if(gagajf.isNull($('#mailContent').val())){
-				mcxDialog.alert('내용을 입력해 주세요.');
-				return false;
-			}
-			
-			if($('#btnAddGridNum').css('display') != 'none'){
-				if(gagajf.isNull($('#mailManagementForm input[name=mailtcNm]').val())){
-					mcxDialog.alert('구분자명을 입력해 주세요.');
-					return false;
-				}
-				var check = $('#mailManagementForm input[name=mailtcNm]').val();
-				
-				if(check.length < 2){
-					mcxDialog.alert('구분자명은 2자 이상 50자 미만으로 입력하세요.');
-					return false;
-				}
-				
-			}else if($('#btnAddGridNum2').css('display') != 'none'){
-				if(gagajf.isNull($('#mailManagementForm input[name=mailtcNm2]').val())){
-					mcxDialog.alert('구분자명을 입력해 주세요.');
-					return false;
-				}
-				var check = $('#mailManagementForm input[name=mailtcNm2]').val();
-				
-				if(check.length < 2){
-					mcxDialog.alert('구분자명은 2자 이상 50자 미만으로 입력하세요.');
-					return false;
-				}
-			}
-						
-			mcxDialog.confirm("내용을 등록 하시겠습니까?", {
-				cancelBtnText: "취소",
-				sureBtnText: "확인",
-				sureBtnClick: function() {
-					
-					let data = {
-					};
-					
-					data.mktmailManagementTc = mailTc;
-					data.mktmailManagementTc2 = mailTc2;
-					data.mktmailManagementTc3 = mailTc3;
-					data.mktmailManagementTc4 = mailTc4;
-					data.mktmailManagementTc5 = mailTc5;
-					
-					data.mktmailManagementGoods = arrayData;
-					data.mktmailManagementGoods2 = arrayData2;
-					data.mktmailManagementGoods3 = arrayData3;
-					data.mktmailManagementGoods4 = arrayData4;
-					data.mktmailManagementGoods5 = arrayData5;
-					
-					data.mktHeader = $('#mailManagementForm select[name=mailHsq]').val();
-					data.mktFooter = $('#mailManagementForm select[name=mailFsq]').val();
-					data.mailtNm = $('#mailManagementForm input[name=mailtNm]').val();
-					data.mailtGb = $('#mailManagementForm input:radio[name=mailtGb]:checked').val();
-					data.mailContent = $('#mailManagementForm textarea[name=mailContent]').val();
-					
-					let jsonData = JSON.stringify(data);
-					console.log(jsonData);
-					
-					gagajf.ajaxJsonSubmit($('#mailManagementForm').prop('action'), jsonData, function(data){
-						uifnPopupClose('popupMktMail');
-					});
-				
-				}
-			});
-		
-		});
-		
-		// 상품 구분 추가 버튼 추가 버튼 표시는 1~5까지 순서대로 표시
-		$('#btnAddGrid').on('click', function(){
-			if($('#btnAddGridNum').css('display') == 'none'){
-				$('#btnAddGridNum').show();
-			}else if($('#btnAddGridNum2').css('display') == 'none' && $('#btnAddGridNum').css('display') != 'none'){
-				$('#btnAddGridNum2').show();
-			}else if($('#btnAddGridNum3').css('display') == 'none' && $('#btnAddGridNum2').css('display') != 'none'){
-				$('#btnAddGridNum3').show();
-			}else if($('#btnAddGridNum4').css('display') == 'none' && $('#btnAddGridNum3').css('display') != 'none'){
-				$('#btnAddGridNum4').show();
-			}else if($('#btnAddGridNum5').css('display') == 'none' && $('#btnAddGridNum4').css('display') != 'none'){
-				$('#btnAddGridNum5').show();
-			}else if($('#btnAddGridNum5').css('display') != 'none'){
-				mcxDialog.alertC("구분자는 최대 5개까지 등록가능합니다.", {
-					sureBtnText: "확인"
-				});
-				return false;
-			}
-		});
-		
-		// 버튼별 상품추가 팝업
-		var fnOpenGoodsPopup = function(param) {
-			switch (param){
-			case 'gridOptions_c1': 
-				AddgridRow = gridOptions_c1;
-				break;
-			case 'gridOptions_c2' : 
-				AddgridRow = gridOptions_c2;
-				break;
-			case 'gridOptions_c3' : 
-				AddgridRow = gridOptions_c3;
-				break;
-			case 'gridOptions_c4' : 
-				AddgridRow = gridOptions_c4;
-				break;
-			case 'gridOptions_c5' : 
-				AddgridRow = gridOptions_c5;
-				break;
-			}
-			
-			cfnOpenGoodsPopup('fnFetchGoods');
-		}
-
-		// 상품추가
-		var fnFetchGoods = function(goodsData) {
-			
-			if (goodsData.length < 1) return;
-			
-			// 기존상품
-			var oldGoodsSetList = gagaAgGrid.getAllRowData(AddgridRow);
-			var index = oldGoodsSetList.length+1;
-			
-			var arrGoodsCd = [];
-			$.each(goodsData, function(idx, item) {
-				arrGoodsCd.push(item.goodsCd);
-			})
-			
-			var isExist = false;
-			var jsonData = JSON.stringify(arrGoodsCd);
-			gagajf.ajaxJsonSubmit('/marketing/mktMailManagement/goods/info', jsonData, function(result) {
-				$.each(result, function(idx, item) {
-					isExist = false;
-					AddgridRow.api.forEachNode(function(rowNode, index) {
-						//중복상품 여부 확인
-						if (item.goodsCd == rowNode.data.goodsCd){
-							isExist = true;
-						}
-					});
-					
-					//상품 추가 갯수 제한
-					if(goodsData.length > 40){
-						mcxDialog.alert('상품은 최대 40개까지 추가 가능합니다.');
-						return false;
-					}
-					
-					if(!isExist){
-						var data = {
-							   goodsCd : item.goodsCd
-						   ,  brandEnm : item.brandEnm
-						   ,   goodNms : item.goodsNm
-						   ,      cdNm : item.goodsStat
-						   , listPrice : item.listPrice
-						   , currPrice : item.currPrice
-						   ,   dispOrd : index
-	
-						};
-						//그리드 마지막에 추가해야함
-						AddgridRow.api.updateRowData({add: [data], addIndex: idx});
-						AddgridRow.api.refreshCells();
-						index++;
-					}
-				});
-			});
-		}
-	
-		// 상품 삭제
-		var fnGoodsDeleteRow = function(param) {
-			switch (param){
-			case 'gridOptions_c1': 
-				AddgridRow = gridOptions_c1;
-				break;
-			case 'gridOptions_c2' : 
-				AddgridRow = gridOptions_c2;
-				break;
-			case 'gridOptions_c3' : 
-				AddgridRow = gridOptions_c3;
-				break;
-			case 'gridOptions_c4' : 
-				AddgridRow = gridOptions_c4;
-				break;
-			case 'gridOptions_c5' : 
-				AddgridRow = gridOptions_c5;
-				break;
-			}
-			
-			var selectedData = gagaAgGrid.selectedRowData(AddgridRow);
-		
-			if (selectedData.length == 0) {
-				mcxDialog.alert('선택된 행이 없습니다.');
-				return false;
-			}		
-			//화면에서 삭제
-			gagaAgGrid.removeRowData(AddgridRow, false);
-		}
-		
-		
-		// 상품 구분 삭제 버튼  삭제는 해당 하는 폼이 삭제
-		function btnDeleteGridNum(param){
-			if($('#btnAddGridNum').css('display') !='none'){
-				$('#btnAddGridNum').hide();
-				$('#btnAddGridNum')[0].reset();
-			}
-		}		
-		function btnDeleteGridNum2(param){
-			if($('#btnAddGridNum2').css('display') !='none'){
-				$('#btnAddGridNum2').hide();
-				$('#searchForm2')[0].reset();
-			}			
-		}			
-		function btnDeleteGridNum3(param){
-			if ($('#btnAddGridNum3').css('display') !='none'){
-				$('#btnAddGridNum3').hide();
-				$('#searchForm3')[0].reset();
-			}			
-		}		
-		function btnDeleteGridNum4(param){
-			if ($('#btnAddGridNum4').css('display') !='none'){
-				$('#btnAddGridNum4').hide();
-				$('#searchForm3')[0].reset();
-			}			
-		}
-		function btnDeleteGridNum5(param){
-			if ($('#btnAddGridNum5').css('display') !='none'){
-				$('#btnAddGridNum5').hide();
-				$('#searchForm5')[0].reset();
-			}
-		} 
-
-	$(document).ready(function() {
-		
-		if (mode == 'U') {
-			
-			$('#mailManagementForm input[name=mailtNm]').val(mktmailInfo.mailtNm);
-			$('#mailManagementForm textarea[name=mailContent]').val(mktmailInfo.mailContent);
-
-			if(mktmailInfo.mailtGb == "A"){
-				$('#mailManagementForm input:radio[name="mailtGb"]:radio[value="A"]').prop('checked', true);
-			}
-		}
-		
-		gagaAgGrid.createGrid("gridSectionGbList1", gridOptions_c1);
-		gagaAgGrid.createGrid("gridSectionGbList2", gridOptions_c2);
-		gagaAgGrid.createGrid("gridSectionGbList3", gridOptions_c3);
-		gagaAgGrid.createGrid("gridSectionGbList4", gridOptions_c4);
-		gagaAgGrid.createGrid("gridSectionGbList5", gridOptions_c5);
-
-		// Create a summernote
-		let snOptions = gagaSn.getToolbarOptions();
-		gagaSn.createSummernote(snOptions, '#mailContent');
-
-	});
-/*]]>*/
-</script>
-
-</html>

+ 0 - 190
src/main/webapp/WEB-INF/views/marketing/MktmailmanagementForm.html

@@ -1,190 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org">
-<!--
- *******************************************************************************
- * @source  : MktmailmanagementForm.html
- * @desc    : MKT 메일관리
- *============================================================================
- * SISUN
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021.02.05   csh9191     최초 작성
- *******************************************************************************
- -->
-	<div id="main">
-		<!-- 메인타이틀 영역 -->
-		<div class="main-title"></div>
-		<!-- //메인타이틀 영역 -->
-		
-		<!-- 메뉴 설명 -->
-		<div class="infoBox menu-desc"></div>
-
-		<form id="searchForm" name="searchForm" action="#" th:action="@{'/marketing/mktmailManagement/list'}"  onsubmit="$('#btnSearch').trigger('click'); return false;">
-			<!-- 검색조건 영역 -->
-			<div class="panelStyle" >
-				<!-- //TITLE -->
-				<div class="panelContent">
-					<table class="frmStyle">
-						<colgroup>
-							<col style="width: 7%;"/>
-							<col/>
-						</colgroup>
-						<tr>
-							<th>기간<em class="required" title="필수"></em></th>
-							<td id="sellTerms"></td>
-						</tr>
-
-						<tr>
-							<th>조회</th>
-							<td>
-								<label class="rdoBtn"><input type="radio" name="searchGb" value="mailtSq"checked/>메일번호</label>
-								<label class="rdoBtn"><input type="radio" name="searchGb" value="mailtNm"/>타이틀</label>
-								<input type="text" class="w900" name="searchTxt" id="searchTxt"/>
-							</td>
-						</tr>
-					</table>
-					<ul class="panelBar">
-						<li class="center">
-							<button type="button" class="btn btn-gray btn-lg" onclick="$('#searchForm')[0].reset();" >초기화</button>
-							<button type="button" class="btn btn-info btn-lg" id="btnSearch" >조회</button>
-						</li>
-					</ul>
-				</div>
-			</div>
-			<!-- 검색조건 영역 -->
-
-			<!-- 리스트 영역 -->
-			<div class="panelStyle">
-				<!-- 버튼 배치 영역 -->
-				<ul class="panelBar">
-					<li class="left">
-						<button type="button" class="btn btn-danger btn-lg" id="btnDeleteRow">선택삭제</button>	
-					</li>
-					<li class="right">
-						<button type="button" class="btn btn-info btn-lg" onclick="fnOpenMailHFPopup('N');">메일템플릿 등록</button>
-				</ul>
-				<!-- //버튼 배치 영역 -->
-				<div id="gridList" style="width: 100%; height: 570px" class="ag-theme-balham"></div>
-			</div>
-		<!-- //리스트 영역 -->
-		</form>
-	</div>
-<script th:inline="javascript">
-/*<![CDATA[*/
-	
-	//메일구분
-	let mailtGb = {"M" :"마케팅메일", "A":"자동메일"};
-	
-	var columnDefs = [];
-	columnDefs = [
-		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-		{headerName: "메일번호", field: "mailtSq", width: 100, cellClass: 'text-center'},
-		{headerName: "메일구분", field: "mailtGb", width: 200, cellClass: 'text-center',
-		 	valueFormatter: function (params) { return gagaAgGrid.lookupValue(mailtGb, params.value); }},
-		{	headerName: "타이틀", field: "mailtNm", width: 350, cellClass: 'text-center',
-			cellRenderer: function(params) 
-			{ 
-				return '<a href="javascript:void(0);">' + params.value + '</a>'; 
-			}
-		},
-		{	//미리보기 
-			headerName: "미리보기", width: 150, cellClass: 'text-center'
-		},
-		{headerName: "등록자", field: "regNm", width: 150, cellClass: 'text-center'},
-		{
-			headerName: "등록일시", field: "regDt", width: 200, cellClass: 'text-center',
-			cellRenderer: function(params) 
-			{ 
-				return gagaAgGrid.toDateTimeFormat(params.value); 
-			}
-		},
-		{
-			headerName: "수정자", field: "updNm", width: 150, cellClass: 'text-center'},
-		{
-			headerName: "수정일시", field: "updDt", width: 200, cellClass: 'text-center', 
-			cellRenderer: function(params) 
-			{ 
-				return gagaAgGrid.toDateTimeFormat(params.value); 
-			}
-		}
-	];
-	
-	// Get GridOptions
-	var gridOptions = gagaAgGrid.getGridOptions(columnDefs);
-	
-	//검색 조건 확인
-	//TODO
-	
-	
-	// 다중 선택 추가
-	gridOptions.rowSelection = 'multiple';	
-	
-	//셀 클릭 이벤트 -> 팝업창
-	gridOptions.onCellClicked = function(event) {
-		if (event.colDef.field != 'mailtNm')
-			return;
-		
-		fnOpenMailHFPopup('U', event.data.mailtSq);
-	}
-	
-	// grid row Delete
-	$('#btnDeleteRow').on('click', function() {
-		var removedData = gagaAgGrid.removeRowData(gridOptions);
-		
-		if (removedData.length == 0) {
-			mcxDialog.alert('선택된 행이 없습니다.');
-			return;
-		}
-		
-		mcxDialog.confirm("삭제하시겠습니까?", {
-			sureBtnText: "확인",
-			cancelBtnText: "취소",
-			sureBtnClick: function() {
-				// delete 대신 update 처리해야 하므로 다음과 같이 useYn 값으로 처리
-				var updatedData = [];
-				
-				$.each(removedData, function(idx, item) {
-					item.useYn = 'N';
-					updatedData.push(item);
-				});
-				
-				
-				var jsonData = JSON.stringify(updatedData);
-				gagajf.ajaxJsonSubmit('/marketing/mktmailManagement/delete', jsonData, function() {
-					$('#btnSearch').trigger('click');
-				});
-			}
-		});
-	});
-	
-	// 조회버튼 - 검색
-	$('#btnSearch').on('click', function() {
-		var formId = "#searchForm";
-		gagaAgGrid.fetch($(formId).prop('action'), gridOptions, formId);
-	});
-	
-	
-	// 등록/상세 팝업
-	var fnOpenMailHFPopup = function(mode, mailtSq) {
-		var actionUrl = '/marketing/mktmailmanagement/detail/form' + '?mode=' + mode;
-		if (!gagajf.isNull(mailtSq)) actionUrl += '&mailtSq=' + mailtSq;
-		cfnOpenModalPopup(actionUrl, 'popupMktMail');
-	}
-	
-	$(document).ready(function() {
-	
-		cfnCreateCalendar('#sellTerms', 'mktmailStdt', 'mktmailEddt', true);
-	
-		// Create a agGrid
-		gagaAgGrid.createGrid('gridList', gridOptions);
-		gagaAgGrid.hideStatusBar('gridList');
-	
-	});
-
-/*]]>*/
-
-</script>
-</html>