Sfoglia il codice sorgente

处理批量导入的问题。

yujia 7 anni fa
parent
commit
c43b480eb7

+ 2 - 4
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java

@@ -24,7 +24,6 @@ import com.uas.platform.b2c.prod.commodity.constant.StringConstant;
 import com.uas.platform.b2c.prod.commodity.dao.*;
 import com.uas.platform.b2c.prod.commodity.dao.*;
 import com.uas.platform.b2c.prod.commodity.model.*;
 import com.uas.platform.b2c.prod.commodity.model.*;
 import com.uas.platform.b2c.prod.commodity.service.*;
 import com.uas.platform.b2c.prod.commodity.service.*;
-import com.uas.platform.b2c.prod.commodity.type.InOutBoundType;
 import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 import com.uas.platform.b2c.prod.commodity.type.ProductConstant;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
 import com.uas.platform.b2c.prod.product.brand.dao.BrandDao;
 import com.uas.platform.b2c.prod.product.brand.dao.BrandDao;
@@ -2214,7 +2213,6 @@ public class ProductServiceImpl implements ProductService {
      * @param reList       临时表的id
      * @param reList       临时表的id
      * @param ignoreImport 1表示忽略导入,0代表覆盖导入
      * @param ignoreImport 1表示忽略导入,0代表覆盖导入
      * @param newInOutboundDetail 需要确定的出入库
      * @param newInOutboundDetail 需要确定的出入库
-     * @param inOutMap 出入库的map
      */
      */
     @Override
     @Override
     public void updateProductsByReleaseProductByBatch(Set<Long> prIds, List<ReleaseProductByBatch> reList, Integer ignoreImport, Set<InOutboundDetail> newInOutboundDetail) {
     public void updateProductsByReleaseProductByBatch(Set<Long> prIds, List<ReleaseProductByBatch> reList, Integer ignoreImport, Set<InOutboundDetail> newInOutboundDetail) {
@@ -2230,7 +2228,7 @@ public class ProductServiceImpl implements ProductService {
                         !productByBatch.getReleaseCode().equals(ReleaseStatus.success.value())) {
                         !productByBatch.getReleaseCode().equals(ReleaseStatus.success.value())) {
                     continue;
                     continue;
                 }
                 }
-                if ((productByBatch.getId() != null) &&(productByBatch.getId().longValue() == product.getId().longValue()) ) {
+                if ((productByBatch.getProductid() != null) &&(productByBatch.getProductid().longValue() == product.getId().longValue()) ) {
                     // ignoreImport 1表示忽略导入,0代表覆盖导入
                     // ignoreImport 1表示忽略导入,0代表覆盖导入
                     if (StringUtils.isEmpty(product.getPackaging()) || (ignoreImport == IntegerConstant.NO_SHORT)) {
                     if (StringUtils.isEmpty(product.getPackaging()) || (ignoreImport == IntegerConstant.NO_SHORT)) {
                         product.setPackaging(productByBatch.getPackaging());
                         product.setPackaging(productByBatch.getPackaging());
@@ -2245,7 +2243,7 @@ public class ProductServiceImpl implements ProductService {
                     if (StringUtils.isEmpty(product.getSpec()) || (ignoreImport == IntegerConstant.NO_SHORT)) {
                     if (StringUtils.isEmpty(product.getSpec()) || (ignoreImport == IntegerConstant.NO_SHORT)) {
                         product.setSpec(productByBatch.getSpec());
                         product.setSpec(productByBatch.getSpec());
                     }
                     }
-                    if ((ignoreImport == IntegerConstant.NO_SHORT) || (NumberUtil.compare(product.getErpReserve(), DoubleConstant.zero) == 0)) {
+                    if ((ignoreImport == IntegerConstant.NO_SHORT) || (NumberUtil.compare(product.getErpReserve(), productByBatch.getReserve()) != 0)) {
                         Double qty = NumberUtil.sub(productByBatch.getReserve(), product.getErpReserve());
                         Double qty = NumberUtil.sub(productByBatch.getReserve(), product.getErpReserve());
                         if (NumberUtil.compare(qty, DoubleConstant.zero) != 0) {
                         if (NumberUtil.compare(qty, DoubleConstant.zero) != 0) {
                             //做出入库记录
                             //做出入库记录

+ 1 - 3
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ReleaseProductByBatchServiceImpl.java

@@ -2065,9 +2065,7 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
             commonDao.save(productPrivates, ProductPrivate.class);
             commonDao.save(productPrivates, ProductPrivate.class);
 		}
 		}
 		//将本次临时表中的数据更新到物料表中
 		//将本次临时表中的数据更新到物料表中
-        if (CollectionUtils.isNotEmpty(updateProducts)) {
-            productService.updateProductsByReleaseProductByBatch(prIds, releaseProductByBatchList, ignoreImport, newInOutboundDetail);
-		}
+		productService.updateProductsByReleaseProductByBatch(prIds, releaseProductByBatchList, ignoreImport, newInOutboundDetail);
 		if (CollectionUtils.isNotEmpty(newInOutboundDetail)) {
 		if (CollectionUtils.isNotEmpty(newInOutboundDetail)) {
 			Map<String, Set<InOutboundDetail>> inOutMap = inOutboundDetailService.initInOutboundDetailByQty(newInOutboundDetail);
 			Map<String, Set<InOutboundDetail>> inOutMap = inOutboundDetailService.initInOutboundDetailByQty(newInOutboundDetail);
 			Set<String> stringSet = inOutMap.keySet();
 			Set<String> stringSet = inOutMap.keySet();