diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningIn.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningIn.java index 723fc279..ba19fd30 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningIn.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningIn.java @@ -32,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -47,6 +48,8 @@ import java.util.stream.Collectors; */ public class ConsignmachiningIn extends PluginBaseEntity { + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + Logger logger = LoggerFactory.getLogger(ConsignmachiningIn.class); @Autowired @@ -326,10 +329,17 @@ public class ConsignmachiningIn extends PluginBaseEntity { * @author liuyang */ private void getSet(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //过滤成功的数据 - List stockinOrderList = filterData(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implement(stockinOrderList); + LOCK1.lock(); + try { + //过滤成功的数据 + List stockinOrderList = filterData(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implement(stockinOrderList); + } catch (Exception e) { + logger.error("getSet方法抛出异常", e); + } finally { + LOCK1.unlock(); + } } /** diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningInReturn.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningInReturn.java index 402204f5..bbcb0e26 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningInReturn.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/outsourc/ConsignmachiningInReturn.java @@ -37,6 +37,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.stream.Collectors; /** @@ -51,6 +52,8 @@ import java.util.stream.Collectors; */ public class ConsignmachiningInReturn extends PluginBaseEntity { + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + Logger logger = LoggerFactory.getLogger(ConsignmachiningInReturn.class); @Autowired @@ -303,10 +306,17 @@ public class ConsignmachiningInReturn extends PluginBaseEntity { * @author liuyang */ private void getSet(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //过滤成功的数据 - List headerDetailsDtos = filterData(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implement(headerDetailsDtos); + LOCK1.lock(); + try { + //过滤成功的数据 + List headerDetailsDtos = filterData(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implement(headerDetailsDtos); + } catch (Exception e) { + logger.error("getSet方法抛出异常", e); + } finally { + LOCK1.unlock(); + } } /** diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseReturn.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseReturn.java index d822c045..fb5a4880 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseReturn.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseReturn.java @@ -39,6 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.time.LocalDate; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -54,6 +55,8 @@ import java.util.stream.Collectors; */ public class ProxyPurchaseReturn extends PluginBaseEntity { + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + Logger logger = LoggerFactory.getLogger(ProxyPurchaseReturn.class); @Autowired @@ -355,10 +358,17 @@ public class ProxyPurchaseReturn extends PluginBaseEntity { * @author liuyang */ private void getSet(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //过滤成功的数据 - List headerDetailsDtos = filterData(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implement(headerDetailsDtos); + LOCK1.lock(); + try { + //过滤成功的数据 + List headerDetailsDtos = filterData(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implement(headerDetailsDtos); + } catch (Exception e) { + logger.error("getSet抛出异常", e); + } finally { + LOCK1.unlock(); + } } /** diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrder.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrder.java index 9395c89a..af0b15bf 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrder.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousOrder.java @@ -35,6 +35,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -51,6 +52,8 @@ import java.util.stream.Collectors; */ public class ProxyPurchaseWarehousOrder extends PluginBaseEntity { + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + Logger logger = LoggerFactory.getLogger(ProxyPurchaseWarehousOrder.class); @Autowired @@ -355,10 +358,17 @@ public class ProxyPurchaseWarehousOrder extends PluginBaseEntity { * @author liuyang */ private void getSet(List allOfsPoOrderList) throws Exception { - //过滤成功的数据 - List ofsPoOrderDataList = filterData(allOfsPoOrderList); - //执行推送主逻辑 - implement(ofsPoOrderDataList); + LOCK1.lock(); + try { + //过滤成功的数据 + List ofsPoOrderDataList = filterData(allOfsPoOrderList); + //执行推送主逻辑 + implement(ofsPoOrderDataList); + } catch (Exception e) { + logger.error("getSet不能为空", e); + } finally { + LOCK1.unlock(); + } } /** diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousWarehouse.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousWarehouse.java index 05a9feef..f3cc9cad 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousWarehouse.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/purchase/ProxyPurchaseWarehousWarehouse.java @@ -31,6 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -46,6 +47,8 @@ import java.util.stream.Collectors; */ public class ProxyPurchaseWarehousWarehouse extends PluginBaseEntity { + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + Logger logger = LoggerFactory.getLogger(ProxyPurchaseWarehousWarehouse.class); @Autowired @@ -353,10 +356,17 @@ public class ProxyPurchaseWarehousWarehouse extends PluginBaseEntity { * @author liuyang */ private void getSet(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //过滤成功的数据 - List stockinOrderList = filterData(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implement(stockinOrderList); + LOCK1.lock(); + try { + //过滤成功的数据 + List stockinOrderList = filterData(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implement(stockinOrderList); + } catch (Exception e) { + logger.error("getSet抛出异常", e); + } finally { + LOCK1.unlock(); + } } /** diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java index 58bab59b..e0edb736 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/plugin/sales/SoSaleReturnPluginInitializerToB.java @@ -46,6 +46,7 @@ import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; +import java.util.concurrent.locks.ReentrantLock; import java.util.function.Predicate; import java.util.stream.Collectors; @@ -60,6 +61,10 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { Logger logger = LoggerFactory.getLogger(SoSaleReturnPluginInitializerToB.class); + private static final ReentrantLock LOCK1 = new ReentrantLock(true); + + private static final ReentrantLock LOCK2 = new ReentrantLock(true); + @Autowired private IBdCorpDao iBdCorpDao; @@ -335,7 +340,7 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { logger.info("插件:{} (确认收入)O接口返回行数:{} 时间段:{} {}", getPluginName(), returnGoodHeaderDetailsDataDtoArrayList.size(), startTime, endTime); // splicingPrintingOrderNumber(returnGoodHeaderDetailsDataDtoArrayList, "tran", startTime, endTime, null); printOfsDocCode(returnGoodHeaderDetailsDataDtoArrayList, startTime, endTime, "确认收入"); - + if (returnGoodHeaderDetailsDataDtoArrayList.size() > 0) { returnGoodHeaderDetailsDataDtoArrayList.removeIf(new Predicate() { @Override @@ -429,12 +434,19 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { * @author liuyang */ private void getSetStock(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //保存到mysql - batchInsert(returnGoodHeaderDetailsDataDtoArrayList); - //过滤成功的数据 - List stockinOrderList = filterDataStock(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implementStock(stockinOrderList); + LOCK1.lock(); + try { + //保存到mysql + batchInsert(returnGoodHeaderDetailsDataDtoArrayList); + //过滤成功的数据 + List stockinOrderList = filterDataStock(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implementStock(stockinOrderList); + } catch (Exception e) { + logger.error("getSetStock方法抛出异常", e); + } finally { + LOCK1.unlock(); + } } /** @@ -443,12 +455,19 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity { * @author liuyang */ private void getSetTrade(List returnGoodHeaderDetailsDataDtoArrayList) throws Exception { - //保存到mysql - batchInsert(returnGoodHeaderDetailsDataDtoArrayList); - //过滤成功的数据 - List stockinOrderList = filterDataTran(returnGoodHeaderDetailsDataDtoArrayList); - //执行推送主逻辑 - implementSuccessfulTrade(stockinOrderList); + LOCK2.lock(); + try { + //保存到mysql + batchInsert(returnGoodHeaderDetailsDataDtoArrayList); + //过滤成功的数据 + List stockinOrderList = filterDataTran(returnGoodHeaderDetailsDataDtoArrayList); + //执行推送主逻辑 + implementSuccessfulTrade(stockinOrderList); + } catch (Exception e) { + logger.error("getSetTrade方法抛出异常", e); + } finally { + LOCK2.unlock(); + } } /**