Sfoglia il codice sorgente

개인정보 이용내역 발송, 마케팅 수신동의 내역 발송 기능 추가

jsshin 5 anni fa
parent
commit
4abc2f1e90

+ 52 - 0
src/main/java/com/style24/batch/biz/job/customer/TsbPrivacyPolicyNoticeJob.java

@@ -0,0 +1,52 @@
+package com.style24.batch.biz.job.customer;
+
+import com.gagaframework.web.parameter.GagaMap;
+import com.style24.batch.biz.job.TsbAbstractJob;
+import com.style24.batch.biz.service.TsbCustomerService;
+import com.style24.core.support.env.TscConstants;
+import com.style24.persistence.domain.Customer;
+import com.style24.persistence.domain.CustomerSearch;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+import java.util.Collection;
+
+/**
+ * 개인정보 이용내역 안내 발송
+ *
+ * @author jsshin
+ * @since 2021.05.06
+ */
+@Component
+@Slf4j
+public class TsbPrivacyPolicyNoticeJob extends TsbAbstractJob<Collection<Customer>, GagaMap, GagaMap> {
+
+	TsbCustomerService customerService;
+
+	private int succCnt = 0;
+	private int failCnt = 0;
+
+	@Override
+	public Collection<Customer> read() throws Exception {
+		CustomerSearch  customerSearch = new CustomerSearch();
+		customerSearch.setSiteCd(TscConstants.Site.STYLE24.value());
+		return customerService.getPrivacyPolicyNoticeTargetList(customerSearch);
+	}
+
+	@Override
+	public GagaMap process(Collection<Customer> customerCollection) throws Exception {
+		return customerService.sendPrivacyPolicyNotice(customerCollection);
+	}
+
+	@Override
+	public GagaMap write(GagaMap result) throws Exception {
+		succCnt = result.getInt("succCnt");
+		failCnt = result.getInt("failCnt");
+		return result;
+	}
+
+	@Override
+	public void notify(GagaMap resultItem) throws Exception {
+		super.printResult(succCnt, failCnt);
+	}
+}