Commit be2632fd by wutong

同步WMS库存,降序, 并后退3分钟,避免漏SKU

parent 78de6a86
......@@ -40,12 +40,11 @@ public class WmsStockJob extends PointJob {
search.setWarehouseCodes(listWmsStockWarehouse());
//不传时间查全表
search.setLastModificationTime_start(jobPointLog.getStartTime().minusMinutes(5));
Integer totalPage = 0;
LocalDateTime now = LocalDateTime.now();
do {
OkHttpClient client = OkHttpUtil.getInstance();
MediaType mediaType = MediaType.parse("application/json");
page.setPage(jobPointLog.getPageIndex());
page.setPage(jobPointLog.getPageIndex() > 0? jobPointLog.getPageIndex() : 1);
RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(root));
Request request = new Request.Builder()
.url(propertiesUtil.getPropertyAsString("STOCK_WMS_URL"))
......@@ -69,12 +68,15 @@ public class WmsStockJob extends PointJob {
if (jsonObject.get("isSuccess") != null && jsonObject.getBooleanValue("isSuccess")) {
WmsStockInfo wmsStockInfo = jsonObject.getObject("data", WmsStockInfo.class);
List<WmsStockItem> items = wmsStockInfo.getItems();
totalPage = wmsStockInfo.getPageItem().getTotal() % wmsStockInfo.getPageItem().getPageSize() == 0 ? wmsStockInfo.getPageItem().getTotal() / wmsStockInfo.getPageItem().getPageSize() : wmsStockInfo.getPageItem().getTotal() / wmsStockInfo.getPageItem().getPageSize() + 1;
if (jobPointLog.getPageIndex().equals(0)) {
int totalPage = wmsStockInfo.getPageItem().getTotal() % jobPointLog.getPageSize() == 0 ? wmsStockInfo.getPageItem().getTotal() / jobPointLog.getPageSize() : wmsStockInfo.getPageItem().getTotal() / jobPointLog.getPageSize() + 1;
jobPointLog.setPageIndex(totalPage + 1);
}
if (items != null && items.size() > 0) {
try {
DcBaseStockMapper mapper = SessionUtil.getSession().getMapper(DcBaseStockMapper.class);
DcBaseStock dcBaseStock = new DcBaseStock();
items.forEach(wmsStockItem -> {
DcBaseStock dcBaseStock = new DcBaseStock();
try {
BeanUtils.copyProperties(dcBaseStock, wmsStockItem);
dcBaseStock.setUsableSales(wmsStockItem.getUsableStock());
......@@ -104,10 +106,10 @@ public class WmsStockJob extends PointJob {
} else {
throw new RuntimeException("调用wms系统库存接口失败");
}
jobPointLog.setPageIndex(jobPointLog.getPageIndex() + 1);
} while (jobPointLog.getPageIndex() <= totalPage);
jobPointLog.setPageIndex(1);
jobPointLog.setStartTime(now);
jobPointLog.setPageIndex(jobPointLog.getPageIndex() - 1);
} while (jobPointLog.getPageIndex() > 0);
jobPointLog.setPageIndex(0);
jobPointLog.setStartTime(now.minusMinutes(3));
jobPointLog.setEndTime(LocalDateTime.now());
}
......
......@@ -30,9 +30,9 @@ public class DailyStockTest {
public void test12() {
WmsStockJob fbaStockJob = new WmsStockJob();
JobPointLog jobPointLog = new JobPointLog();
jobPointLog.setPageIndex(1);
jobPointLog.setPageIndex(0);
jobPointLog.setPageSize(1000);
jobPointLog.setStartTime(LocalDateTime.of(2019,01,01,0,0,0));
jobPointLog.setStartTime(LocalDateTime.of(2019,05,10,9,40,0));
fbaStockJob.executeJob(null,jobPointLog);
}
......
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