소스 검색

1.增加同步库存仓库名接口

纪新园 1 일 전
부모
커밋
a330c31845

+ 9 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/storage/controller/StorageDescController.java

@@ -193,4 +193,13 @@ public class StorageDescController extends BladeController {
 		return R.data(list);
 	}
 
+	/**
+	 * 同步基础资料
+	 */
+	@GetMapping("/synchronization")
+	@RepeatSubmit
+	public R synchronization() {
+		return storageDescService.synchronization();
+	}
+
 }

+ 3 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/storage/service/IStorageDescService.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.salesPart.storage.service;
 
+import org.springblade.core.tool.api.R;
 import org.springblade.salesPart.entity.PjStorageDesc;
 import org.springblade.salesPart.vo.StorageDescVO;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -67,4 +68,6 @@ public interface IStorageDescService extends IService<PjStorageDesc> {
     List<PjStorageDesc> getTenants(String tenantId);
 
     List<PjStorageDesc> selectStorageList(String tenantId);
+
+    R synchronization();
 }

+ 39 - 0
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/storage/service/impl/StorageDescServiceImpl.java

@@ -20,7 +20,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.salesPart.entity.PjGoodsDesc;
+import org.springblade.salesPart.entity.PjProductLaunch;
+import org.springblade.salesPart.entity.PjStockDesc;
 import org.springblade.salesPart.entity.PjStorageDesc;
+import org.springblade.salesPart.stock.service.IStockDescService;
 import org.springblade.salesPart.vo.StorageDescVO;
 import org.springblade.salesPart.storage.mapper.StorageDescMapper;
 import org.springblade.salesPart.storage.service.IStorageDescService;
@@ -29,8 +34,10 @@ import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  *  配件批发仓库服务实现类
@@ -44,6 +51,8 @@ public class StorageDescServiceImpl extends ServiceImpl<StorageDescMapper, PjSto
 
 	private final ISysClient sysClient;
 
+	private final IStockDescService stockDescService;
+
 	/**
 	 * 获取仓库详情
 	 *
@@ -115,4 +124,34 @@ public class StorageDescServiceImpl extends ServiceImpl<StorageDescMapper, PjSto
 		return baseMapper.getTenants(tenantId);
 	}
 
+	@Override
+	public R synchronization() {
+		List<PjStorageDesc> storageDescList = baseMapper.selectList(new LambdaQueryWrapper<PjStorageDesc>()
+			.eq(PjStorageDesc::getTenantId, AuthUtil.getTenantId())
+			.eq(PjStorageDesc::getIsDeleted, 0)
+			.eq(PjStorageDesc::getSalesCompanyId, AuthUtil.getDeptId()));
+		List<PjStockDesc> pjStockDescList = new ArrayList<>();
+		List<PjStockDesc> pjStockDescUpdateList = new ArrayList<>();
+		if (!storageDescList.isEmpty()) {
+			List<Long> storageId = storageDescList.stream().map(PjStorageDesc::getId).collect(Collectors.toList());
+			pjStockDescList = stockDescService.list(new LambdaQueryWrapper<PjStockDesc>()
+				.eq(PjStockDesc::getTenantId, AuthUtil.getTenantId())
+				.eq(PjStockDesc::getIsDeleted, 0)
+				.in(PjStockDesc::getStorageId, storageId));
+			for (PjStorageDesc item : storageDescList) {
+				if (!pjStockDescList.isEmpty()) {
+					PjStockDesc stock = pjStockDescList.stream().filter(e -> e.getStorageId().equals(item.getId())).findFirst().orElse(null);
+					if (stock != null) {
+						stock.setStorageName(item.getCname());
+						pjStockDescUpdateList.add(stock);
+					}
+				}
+			}
+			if (!pjStockDescUpdateList.isEmpty()) {
+				stockDescService.updateBatchById(pjStockDescUpdateList);
+			}
+		}
+		return null;
+	}
+
 }