package com.uas.eis.task; import com.uas.eis.config.LingXingConfig; import com.uas.eis.dao.BaseDao; import com.uas.eis.service.LingxingService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.Date; import java.util.List; import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.stream.Collectors; /** * @author: zhouy * @date: 2021/9/16 9:11 * @desc: 亚马逊对接 */ @Component public class LingxingTask { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Resource private LingxingService lingxingService; @Resource private LingXingConfig lingXingConfig; @Autowired private BaseDao baseDao; //定时注解 @cron public void getSellerOrders(){ logger.info("同步领星订单-开始"); Date date = new Date(); Set appSet =lingXingConfig.getApps().keySet(); if(appSet.size()>0){ final CountDownLatch countDownLatch = new CountDownLatch(appSet.size()); try { appSet.stream().forEach(appId -> { lingxingService.getSellerOrders(appId); }); countDownLatch.await(); } catch (InterruptedException e) { e.printStackTrace(); } } logger.info("同步领星订单-结束:用时"+((System.currentTimeMillis()-date.getTime())/1000)); } }