Commit 6b32e89a by huluobin

新sku mapping rpc接口分页bug fix

parent 6ccfb2c4
...@@ -15,7 +15,7 @@ public class SkuJob { ...@@ -15,7 +15,7 @@ public class SkuJob {
@Resource @Resource
SkuService skuService; SkuService skuService;
@Scheduled(cron = "0/10 * * * * ?") @Scheduled(cron = "0/1 * * * * ?")
public void syncSkuMappingOnline() { public void syncSkuMappingOnline() {
try { try {
log.info("每10秒同步线上sku映射 开始"); log.info("每10秒同步线上sku映射 开始");
......
...@@ -9,11 +9,14 @@ import com.bailuntec.application.IDcBaseSkuMappingOnlineService; ...@@ -9,11 +9,14 @@ import com.bailuntec.application.IDcBaseSkuMappingOnlineService;
import com.bailuntec.common.ListUtil; import com.bailuntec.common.ListUtil;
import com.bailuntec.domain.DcBaseSkuMappingOnline; import com.bailuntec.domain.DcBaseSkuMappingOnline;
import com.bailuntec.domain.DcJobConfig; import com.bailuntec.domain.DcJobConfig;
import com.bailuntec.infrastructure.mapper.DcBaseSkuMappingOnlineMapper;
import com.bailuntec.infrastructure.mapper.DcJobConfigMapper; import com.bailuntec.infrastructure.mapper.DcJobConfigMapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -35,6 +38,8 @@ public class SkuService { ...@@ -35,6 +38,8 @@ public class SkuService {
PpsApi ppsApi; PpsApi ppsApi;
@Resource @Resource
IDcBaseSkuMappingOnlineService dcBaseSkuMappingOnlineService; IDcBaseSkuMappingOnlineService dcBaseSkuMappingOnlineService;
@Resource
DcBaseSkuMappingOnlineMapper dcBaseSkuMappingOnlineMapper;
private final static String baseSyncSkuMappingOnline = "base-sync-sku-mapping-online"; private final static String baseSyncSkuMappingOnline = "base-sync-sku-mapping-online";
...@@ -49,7 +54,7 @@ public class SkuService { ...@@ -49,7 +54,7 @@ public class SkuService {
req.setPageIndex(currentPage); req.setPageIndex(currentPage);
req.setPageNumber(pageSize); req.setPageNumber(pageSize);
req.setBeginTime(dcJobConfig.getStartTime()); req.setBeginTime(dcJobConfig.getStartTime().minusMinutes(3));
req.setEndTime(dcJobConfig.getEndTime()); req.setEndTime(dcJobConfig.getEndTime());
PpsResult<PpsPage<GetListingSkuMapPagesItem>> result = ppsApi.getListingSkuMapPages(req); PpsResult<PpsPage<GetListingSkuMapPagesItem>> result = ppsApi.getListingSkuMapPages(req);
...@@ -74,6 +79,12 @@ public class SkuService { ...@@ -74,6 +79,12 @@ public class SkuService {
//detail //detail
dcBaseSkuMappingOnline.setItemSku(getListingSkuMapPagesItemDetail.getItemSku()); dcBaseSkuMappingOnline.setItemSku(getListingSkuMapPagesItemDetail.getItemSku());
dcBaseSkuMappingOnline.setSkuCode(getListingSkuMapPagesItemDetail.getSkuCode()); dcBaseSkuMappingOnline.setSkuCode(getListingSkuMapPagesItemDetail.getSkuCode());
//todo 缓存
String shortSiteEn = dcBaseSkuMappingOnlineMapper.selectShortSiteEn(dcBaseSkuMappingOnline.getSite());
dcBaseSkuMappingOnline.setSite(shortSiteEn);
dcBaseSkuMappingOnline.setGmtModified(LocalDateTime.now());
return dcBaseSkuMappingOnline; return dcBaseSkuMappingOnline;
}) })
.collect(Collectors.toList())) .collect(Collectors.toList()))
...@@ -81,8 +92,33 @@ public class SkuService { ...@@ -81,8 +92,33 @@ public class SkuService {
.flatMap(List::stream) .flatMap(List::stream)
.collect(Collectors.toList()); .collect(Collectors.toList());
dcBaseSkuMappingOnlineService.saveBatch(dcBaseSkuMappingOnlineList); dcBaseSkuMappingOnlineList.parallelStream().forEach(dcBaseSkuMappingOnline -> {
try {
LambdaQueryWrapper<DcBaseSkuMappingOnline> wrapper = new LambdaQueryWrapper<DcBaseSkuMappingOnline>()
.eq(DcBaseSkuMappingOnline::getItemId, dcBaseSkuMappingOnline.getItemId())
.eq(DcBaseSkuMappingOnline::getItemSku, dcBaseSkuMappingOnline.getItemSku())
.eq(DcBaseSkuMappingOnline::getSkuCode, dcBaseSkuMappingOnline.getSkuCode());
DcBaseSkuMappingOnline item = dcBaseSkuMappingOnlineService.getOne(wrapper);
if (item != null) {
dcBaseSkuMappingOnlineService.update(dcBaseSkuMappingOnline, wrapper);
} else {
dcBaseSkuMappingOnlineService.save(dcBaseSkuMappingOnline);
} }
log.info("sync sku mapping ,itemId:{},itemSku:{},skuCode:{}", dcBaseSkuMappingOnline.getItemId(), dcBaseSkuMappingOnline.getItemSku(), dcBaseSkuMappingOnline.getSkuCode());
} catch (Exception ex) {
log.error("xxx");
}
});
currentPage++;
dcJobConfig.setPageNum(currentPage);
dcJobConfigMapper.updateById(dcJobConfig);
}
dcJobConfigMapper.updateById(dcJobConfig.refresh()); dcJobConfigMapper.updateById(dcJobConfig.refresh());
} }
} }
...@@ -15,6 +15,7 @@ spring: ...@@ -15,6 +15,7 @@ spring:
mybatis-plus: mybatis-plus:
mapper-locations: mapper-locations:
- classpath*:com/bailuntec/mapper/*.xml - classpath*:com/bailuntec/mapper/*.xml
executor-type: batch
# configuration: # configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
......
...@@ -15,6 +15,7 @@ spring: ...@@ -15,6 +15,7 @@ spring:
mybatis-plus: mybatis-plus:
mapper-locations: mapper-locations:
- classpath*:com/bailuntec/mapper/*.xml - classpath*:com/bailuntec/mapper/*.xml
executor-type: batch
# configuration: # configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment