Commit 1ca04f19 by huluobin

异常处理取消

parent 5c8b2561
...@@ -28,6 +28,7 @@ import okhttp3.Response; ...@@ -28,6 +28,7 @@ import okhttp3.Response;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import java.io.IOException; import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.Type; import java.lang.reflect.Type;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -85,9 +86,9 @@ public class AmazonAdDownloadReportJob implements SimpleJob { ...@@ -85,9 +86,9 @@ public class AmazonAdDownloadReportJob implements SimpleJob {
Gson gson = new Gson(); Gson gson = new Gson();
Type type = new TypeToken<List<AmazonAdProduct>>() { Type type = new TypeToken<List<AmazonAdProduct>>() {
}.getType(); }.getType();
// List<AmazonAdProduct> amazonAdProductList = gson.fromJson(new InputStreamReader(gzin), type); List<AmazonAdProduct> amazonAdProductList = gson.fromJson(new InputStreamReader(gzin), type);
List<AmazonAdProduct> amazonAdProductList = JSON.parseObject(gzin, new TypeReference<List<AmazonAdProduct>>() { // List<AmazonAdProduct> amazonAdProductList = JSON.parseObject(gzin, new TypeReference<List<AmazonAdProduct>>() {
}.getType()); // }.getType());
log.warn("账号Id" + jobAmazonAdLog.getAccountId() + "的Report解析完成"); log.warn("账号Id" + jobAmazonAdLog.getAccountId() + "的Report解析完成");
gzin.close(); gzin.close();
......
...@@ -32,10 +32,12 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -32,10 +32,12 @@ public class CalculateCostFirstJob extends PointJob {
} finally { } finally {
SessionUtil.closeSession(); SessionUtil.closeSession();
} }
int totalPage = getChannelOrderPage(countChannelOrder,jobPointLog); int totalPage = getChannelOrderPage(countChannelOrder, jobPointLog);
do { do {
List<CostFirstOrder> channelOrderIdList = null; List<CostFirstOrder> channelOrderIdList = null;
try { try {
log.info("当前第:{}页", jobPointLog.getPageIndex());
log.info("总共:{}页", totalPage);
DcBaseCostFirstMapper dcBaseCostFirstMapper = SessionUtil.getSession().getMapper(DcBaseCostFirstMapper.class); DcBaseCostFirstMapper dcBaseCostFirstMapper = SessionUtil.getSession().getMapper(DcBaseCostFirstMapper.class);
//拿到物流单号,调拨单号, 将物流单-调拨单中每个SKU的费用算出来 //拿到物流单号,调拨单号, 将物流单-调拨单中每个SKU的费用算出来
channelOrderIdList = dcBaseCostFirstMapper.listChannelOrderId(jobPointLog.getPageIndex() * jobPointLog.getPageSize(), jobPointLog.getPageSize()); channelOrderIdList = dcBaseCostFirstMapper.listChannelOrderId(jobPointLog.getPageIndex() * jobPointLog.getPageSize(), jobPointLog.getPageSize());
...@@ -44,7 +46,7 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -44,7 +46,7 @@ public class CalculateCostFirstJob extends PointJob {
jobPointLogMapper.upsertSelective(jobPointLog); jobPointLogMapper.upsertSelective(jobPointLog);
}*/ }*/
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException("MYBATIS操作DB分页失败", e); log.error("MYBATIS操作DB分页失败", e);
} finally { } finally {
SessionUtil.closeSession(); SessionUtil.closeSession();
} }
...@@ -70,14 +72,14 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -70,14 +72,14 @@ public class CalculateCostFirstJob extends PointJob {
try { try {
DcMidCostFirstOrderMapper dcMidCostFirstOrderMapper = SessionUtil.getSession().getMapper(DcMidCostFirstOrderMapper.class); DcMidCostFirstOrderMapper dcMidCostFirstOrderMapper = SessionUtil.getSession().getMapper(DcMidCostFirstOrderMapper.class);
// DcMidCostFirstConfigMapper dcMidCostFirstConfigMapper = SessionUtil.getSession().getMapper(DcMidCostFirstConfigMapper.class); // DcMidCostFirstConfigMapper dcMidCostFirstConfigMapper = SessionUtil.getSession().getMapper(DcMidCostFirstConfigMapper.class);
DcMidCostFirstMapper dcMidCostFirsMapper = SessionUtil.getSession().getMapper(DcMidCostFirstMapper.class); DcMidCostFirstMapper dcMidCostFirsMapper = SessionUtil.getSession().getMapper(DcMidCostFirstMapper.class);
DcBaseStockMapper dcBaseStockMapper = SessionUtil.getSession().getMapper(DcBaseStockMapper.class); DcBaseStockMapper dcBaseStockMapper = SessionUtil.getSession().getMapper(DcBaseStockMapper.class);
int countSkuWarehouse = dcMidCostFirstOrderMapper.countSkuWarehouse(); int countSkuWarehouse = dcMidCostFirstOrderMapper.countSkuWarehouse();
int skuWarehouseTotalPage = getSkuWarehouseTotalPage(countSkuWarehouse); int skuWarehouseTotalPage = getSkuWarehouseTotalPage(countSkuWarehouse);
int index = 0; int index = 0;
do { do {
List<MidCostFirst> midCostFirstList = dcMidCostFirstOrderMapper.listSkuWarehouse(index * Constant.PAGE_SIZE,Constant.PAGE_SIZE); List<MidCostFirst> midCostFirstList = dcMidCostFirstOrderMapper.listSkuWarehouse(index * Constant.PAGE_SIZE, Constant.PAGE_SIZE);
if (midCostFirstList != null && midCostFirstList.size() > 0) { if (midCostFirstList != null && midCostFirstList.size() > 0) {
DcMidCostFirst dcMidCostFirst = new DcMidCostFirst(); DcMidCostFirst dcMidCostFirst = new DcMidCostFirst();
for (MidCostFirst midCostFirst : midCostFirstList) { for (MidCostFirst midCostFirst : midCostFirstList) {
...@@ -86,16 +88,16 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -86,16 +88,16 @@ public class CalculateCostFirstJob extends PointJob {
dcMidCostFirst.setBailunSku(midCostFirst.getBailunSku()); dcMidCostFirst.setBailunSku(midCostFirst.getBailunSku());
dcMidCostFirst.setWarehouseCode(midCostFirst.getWarehouseCode()); dcMidCostFirst.setWarehouseCode(midCostFirst.getWarehouseCode());
BigDecimal costFirst = BigDecimal.ZERO; BigDecimal costFirst = BigDecimal.ZERO;
if(dcMidCostFirst1 != null) { if (dcMidCostFirst1 != null) {
costFirst = (midCostFirst.getTotalCostFirst().add(dcMidCostFirst1.getCostFirst().multiply(BigDecimal.valueOf(dcMidCostFirst1.getCostCount())))).divide(BigDecimal.valueOf(midCostFirst.getTotalCount()).add(BigDecimal.valueOf(dcMidCostFirst1.getCostCount())), 3 , RoundingMode.HALF_EVEN); costFirst = (midCostFirst.getTotalCostFirst().add(dcMidCostFirst1.getCostFirst().multiply(BigDecimal.valueOf(dcMidCostFirst1.getCostCount())))).divide(BigDecimal.valueOf(midCostFirst.getTotalCount()).add(BigDecimal.valueOf(dcMidCostFirst1.getCostCount())), 3, RoundingMode.HALF_EVEN);
}else { } else {
costFirst = midCostFirst.getTotalCostFirst().divide(BigDecimal.valueOf(midCostFirst.getTotalCount()), 3 , RoundingMode.HALF_EVEN); costFirst = midCostFirst.getTotalCostFirst().divide(BigDecimal.valueOf(midCostFirst.getTotalCount()), 3, RoundingMode.HALF_EVEN);
} }
dcMidCostFirst.setCostFirst(costFirst); dcMidCostFirst.setCostFirst(costFirst);
if(dcBaseStock != null) { if (dcBaseStock != null) {
dcMidCostFirst.setCostCount(dcBaseStock.getUsableStock() + dcBaseStock.getOccupyStock()); dcMidCostFirst.setCostCount(dcBaseStock.getUsableStock() + dcBaseStock.getOccupyStock());
}else { } else {
dcMidCostFirst.setCostCount(midCostFirst.getTotalCount()); dcMidCostFirst.setCostCount(midCostFirst.getTotalCount());
} }
/*if (dcMidCostFirstConfig != null) { /*if (dcMidCostFirstConfig != null) {
...@@ -108,7 +110,7 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -108,7 +110,7 @@ public class CalculateCostFirstJob extends PointJob {
if (i == 0) { if (i == 0) {
dcMidCostFirsMapper.insertSelective(dcMidCostFirst); dcMidCostFirsMapper.insertSelective(dcMidCostFirst);
} }
// dcMidCostFirstOrderMapper.deleteByExample(DcMidCostFirstOrderExample.newAndCreateCriteria().andBailunSkuEqualTo(midCostFirst.getBailunSku()).andWarehouseCodeEqualTo(midCostFirst.getWarehouseCode()).example()); // dcMidCostFirstOrderMapper.deleteByExample(DcMidCostFirstOrderExample.newAndCreateCriteria().andBailunSkuEqualTo(midCostFirst.getBailunSku()).andWarehouseCodeEqualTo(midCostFirst.getWarehouseCode()).example());
dcMidCostFirstOrderMapper.updateHasCalculation(midCostFirst); dcMidCostFirstOrderMapper.updateHasCalculation(midCostFirst);
} }
...@@ -128,18 +130,18 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -128,18 +130,18 @@ public class CalculateCostFirstJob extends PointJob {
//物流单的总重量 //物流单的总重量
BigDecimal totalWeight = BigDecimal.ZERO; BigDecimal totalWeight = BigDecimal.ZERO;
for (DcBaseCostFirst dcBaseCostFirst : dcBaseCostFirsts) { for (DcBaseCostFirst dcBaseCostFirst : dcBaseCostFirsts) {
log.warn(dcBaseCostFirst.getBailunSku()+"---" +dcBaseCostFirst.getChannelOrderId()+"---" +dcBaseCostFirst.getTransferOrderId()+"---"+dcBaseCostFirst.getBoxId()+"---"+dcBaseCostFirst.getWarehouseCode()); log.warn(dcBaseCostFirst.getBailunSku() + "---" + dcBaseCostFirst.getChannelOrderId() + "---" + dcBaseCostFirst.getTransferOrderId() + "---" + dcBaseCostFirst.getBoxId() + "---" + dcBaseCostFirst.getWarehouseCode());
DcBaseSku dcBaseSku = null; DcBaseSku dcBaseSku = null;
try { try {
DcBaseSkuMapper dcBaseSkuMapper = SessionUtil.getSession().getMapper(DcBaseSkuMapper.class); DcBaseSkuMapper dcBaseSkuMapper = SessionUtil.getSession().getMapper(DcBaseSkuMapper.class);
dcBaseSku = dcBaseSkuMapper.selectOneByExample(DcBaseSkuExample.newAndCreateCriteria().andBailunSkuEqualTo(dcBaseCostFirst.getBailunSku()).example()); dcBaseSku = dcBaseSkuMapper.selectOneByExample(DcBaseSkuExample.newAndCreateCriteria().andBailunSkuEqualTo(dcBaseCostFirst.getBailunSku()).example());
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException("MYBATIS操作DB查询SKU失败"); throw new RuntimeException("MYBATIS操作DB查询SKU失败");
} finally { } finally {
SessionUtil.closeSession(); SessionUtil.closeSession();
} }
//物流单内单位SKU多个quantity的总重量 //物流单内单位SKU多个quantity的总重量
BigDecimal skuTotalWeight = (dcBaseSku != null?dcBaseSku.getWeight() : BigDecimal.ZERO).multiply(BigDecimal.valueOf(dcBaseCostFirst.getQuantity())); BigDecimal skuTotalWeight = (dcBaseSku != null ? dcBaseSku.getWeight() : BigDecimal.ZERO).multiply(BigDecimal.valueOf(dcBaseCostFirst.getQuantity()));
totalWeight = totalWeight.add(skuTotalWeight); totalWeight = totalWeight.add(skuTotalWeight);
DcBaseCostFirst dcBaseCostFirstInMap = map.get(dcBaseCostFirst.getBailunSku()); DcBaseCostFirst dcBaseCostFirstInMap = map.get(dcBaseCostFirst.getBailunSku());
if (dcBaseCostFirstInMap == null) { if (dcBaseCostFirstInMap == null) {
...@@ -180,7 +182,7 @@ public class CalculateCostFirstJob extends PointJob { ...@@ -180,7 +182,7 @@ public class CalculateCostFirstJob extends PointJob {
dcMidCostFirstOrderMapper.insertSelective(dcMidCostFirstOrder); dcMidCostFirstOrderMapper.insertSelective(dcMidCostFirstOrder);
} }
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException("MYBATIS操作DB失败"); log.error("失败", e);
} finally { } finally {
SessionUtil.closeSession(); SessionUtil.closeSession();
} }
......
package com.bailuntec.job;
import com.bailuntec.domain.entity.JobPointLog;
import org.junit.jupiter.api.Test;
/**
* <p>
*
* </p>
*
* @author robbendev
* @since 2020/8/20 6:56 下午
*/
class CalculateCostFirstJobTest {
@Test
void executeJob() {
CalculateCostFirstJob calculateCostFirstJob = new CalculateCostFirstJob();
JobPointLog jobPointLog = new JobPointLog();
jobPointLog.setPageSize(1000);
jobPointLog.setPageIndex(1);
calculateCostFirstJob.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