Bläddra i källkod

2024年1月31日11:24:29

纪新园 1 år sedan
förälder
incheckning
3d55bae1ce

+ 123 - 108
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/controller/DeliveryController.java

@@ -31,7 +31,6 @@ import org.springblade.client.entity.CorpsDesc;
 import org.springblade.client.entity.StorageDesc;
 import org.springblade.client.entity.StorageType;
 import org.springblade.client.feign.ICorpsDescClient;
-import org.springblade.client.feign.IRedisClient;
 import org.springblade.client.feign.IStorageClient;
 import org.springblade.common.annotation.RepeatSubmit;
 import org.springblade.core.boot.ctrl.BladeController;
@@ -54,6 +53,7 @@ import org.springblade.deliver.goods.service.IDeliveryFilesService;
 import org.springblade.deliver.goods.service.IDeliveryItemsService;
 import org.springblade.deliver.goods.service.IDeliveryService;
 import org.springblade.deliver.goods.vo.DeliveryVO;
+import org.springblade.stock.entity.StockGoods;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -65,6 +65,7 @@ import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * 国内发货通知单 控制器
@@ -82,8 +83,20 @@ public class DeliveryController extends BladeController {
 	private final IDeliveryItemsService deliveryItemsService;
 	private final IDeliveryFeesService deliveryFeesService;
 	private final IDeliveryFilesService deliveryFilesService;
-	private final RedisTemplate<String, Object> redisTemplate;
-	private final IRedisClient redisClient;//redis缓存处理
+
+	/**
+	 * 获取客户信息
+	 */
+	private final ICorpsDescClient corpsDescClient;
+	/**
+	 * 库存信息
+	 */
+	private final IStorageClient iStorageClient;
+	/**
+	 * 获取用户信息
+	 */
+	private final IUserClient iUserClient;
+
 	/**
 	 * 详情
 	 */
@@ -103,11 +116,11 @@ public class DeliveryController extends BladeController {
 	@ApiOperation(value = "分页", notes = "传入delivery")
 	public R<IPage<Delivery>> list(Delivery delivery, Query query) {
 		LambdaQueryWrapper<Delivery> lambdaQueryWrapper = new LambdaQueryWrapper();
-		lambdaQueryWrapper.eq(Delivery::getIsDeleted,0);
-		lambdaQueryWrapper.eq(Delivery::getTenantId,SecureUtil.getTenantId());
-		lambdaQueryWrapper.eq(Delivery::getBillType,OrderTypeEnum.SHIP.getType());
-		lambdaQueryWrapper.eq(Delivery::getTradeType,OrderTypeEnum.DOMESTIC.getType());
-		lambdaQueryWrapper.eq(ObjectUtils.isNotNull(delivery.getVoucherStatus()),Delivery::getVoucherStatus,delivery.getVoucherStatus());
+		lambdaQueryWrapper.eq(Delivery::getIsDeleted, 0);
+		lambdaQueryWrapper.eq(Delivery::getTenantId, SecureUtil.getTenantId());
+		lambdaQueryWrapper.eq(Delivery::getBillType, OrderTypeEnum.SHIP.getType());
+		lambdaQueryWrapper.eq(Delivery::getTradeType, OrderTypeEnum.DOMESTIC.getType());
+		lambdaQueryWrapper.eq(ObjectUtils.isNotNull(delivery.getVoucherStatus()), Delivery::getVoucherStatus, delivery.getVoucherStatus());
 		/*if (ObjectUtils.isNotNull(delivery.getGenerate())){
 			if ("1".equals(delivery.getGenerate())){
 				lambdaQueryWrapper.isNotNull(Delivery::getVoucherNo);
@@ -117,76 +130,77 @@ public class DeliveryController extends BladeController {
 		}else{
 			lambdaQueryWrapper.eq(ObjectUtils.isNotNull(delivery.getVoucherNo()),Delivery::getVoucherNo,delivery.getVoucherNo());
 		}*/
-		lambdaQueryWrapper.eq(delivery.getSalesCompany()!=null,Delivery::getSalesCompany,delivery.getSalesCompany());
-		lambdaQueryWrapper.like(StringUtils.isNotBlank(delivery.getPurchaseMode()),Delivery::getPurchaseMode,delivery.getPurchaseMode());
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getCreateStartTime()),Delivery::getCreateTime,delivery.getCreateStartTime());//制单日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getCreateEndTime()),Delivery::getCreateTime,delivery.getCreateEndTime());//制单日期结束
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getBusinessStartDate()),Delivery::getBusinessDate,delivery.getBusinessStartDate());//发货日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getBusinessEndDate()),Delivery::getBusinessDate,delivery.getBusinessEndDate());//发货日期结束
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getOrgOrderNo()),Delivery::getOrgOrderNo,delivery.getOrgOrderNo());//销售订单号
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCorpId()),Delivery::getCorpId,delivery.getCorpId());//客户
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getSalesCompany()),Delivery::getSalesCompany,delivery.getSalesCompany());//所属公司
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalAddress()),Delivery::getArrivalAddress,delivery.getArrivalAddress());//收货地址
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalContact()),Delivery::getArrivalContact,delivery.getArrivalContact());//收货人
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalTel()),Delivery::getArrivalTel,delivery.getArrivalTel());//收货电话
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getDeliveryRemarks()),Delivery::getDeliveryRemarks,delivery.getDeliveryRemarks());//备注
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCreateUser()),Delivery::getCreateUser,delivery.getCreateUser());//制单人
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getStorageId()),Delivery::getStorageId,delivery.getStorageId());//仓库
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getDeliveryStatus()),Delivery::getDeliveryStatus,delivery.getDeliveryStatus());//状态
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getArrivalStartTime()),Delivery::getArrivalTime,delivery.getArrivalStartTime());//确认到货日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getArrivalEndTime()),Delivery::getArrivalTime,delivery.getArrivalEndTime());//确认到货日期结束
+		lambdaQueryWrapper.eq(delivery.getSalesCompany() != null, Delivery::getSalesCompany, delivery.getSalesCompany());
+		lambdaQueryWrapper.like(StringUtils.isNotBlank(delivery.getPurchaseMode()), Delivery::getPurchaseMode, delivery.getPurchaseMode());
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getCreateStartTime()), Delivery::getCreateTime, delivery.getCreateStartTime());//制单日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getCreateEndTime()), Delivery::getCreateTime, delivery.getCreateEndTime());//制单日期结束
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getBusinessStartDate()), Delivery::getBusinessDate, delivery.getBusinessStartDate());//发货日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getBusinessEndDate()), Delivery::getBusinessDate, delivery.getBusinessEndDate());//发货日期结束
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getOrgOrderNo()), Delivery::getOrgOrderNo, delivery.getOrgOrderNo());//销售订单号
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCorpId()), Delivery::getCorpId, delivery.getCorpId());//客户
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getSalesCompany()), Delivery::getSalesCompany, delivery.getSalesCompany());//所属公司
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalAddress()), Delivery::getArrivalAddress, delivery.getArrivalAddress());//收货地址
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalContact()), Delivery::getArrivalContact, delivery.getArrivalContact());//收货人
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalTel()), Delivery::getArrivalTel, delivery.getArrivalTel());//收货电话
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getDeliveryRemarks()), Delivery::getDeliveryRemarks, delivery.getDeliveryRemarks());//备注
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCreateUser()), Delivery::getCreateUser, delivery.getCreateUser());//制单人
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getStorageId()), Delivery::getStorageId, delivery.getStorageId());//仓库
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getDeliveryStatus()), Delivery::getDeliveryStatus, delivery.getDeliveryStatus());//状态
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getArrivalStartTime()), Delivery::getArrivalTime, delivery.getArrivalStartTime());//确认到货日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getArrivalEndTime()), Delivery::getArrivalTime, delivery.getArrivalEndTime());//确认到货日期结束
 		lambdaQueryWrapper.orderByDesc(Delivery::getId);
 		IPage<Delivery> pages = deliveryService.page(Condition.getPage(query), lambdaQueryWrapper);
 
-		redisClient.basicData("all");
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
-		List<User> userList = castToList(redisTemplate.opsForValue().get("user"), User.class);
-		List<StorageType> storageDescList = castToList(redisTemplate.opsForValue().get("storageType"), StorageType.class);
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setIsDeleted(0);
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
+		List<User> userList = iUserClient.selectUserAll();
+		List<StorageType> storageDescList = iStorageClient.selectStorageTypeAll();
+		List<Long> ids = pages.getRecords().stream().map(Delivery::getId).collect(Collectors.toList());
+		LambdaQueryWrapper<DeliveryItems> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+		itemsLambdaQueryWrapper.eq(DeliveryItems::getTenantId, AuthUtil.getTenantId())
+			.eq(DeliveryItems::getIsDeleted, 0)
+			.in(DeliveryItems::getPid, ids);
 
-		if (CollectionUtils.isNotEmpty(pages.getRecords())){
-			pages.getRecords().forEach(item ->{
-				if (item.getCorpId() != null){
+		List<DeliveryItems> itemsList = deliveryItemsService.list(itemsLambdaQueryWrapper);
+		if (CollectionUtils.isNotEmpty(pages.getRecords())) {
+			pages.getRecords().forEach(item -> {
+				if (item.getCorpId() != null) {
 					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(item.getCorpId())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(corpMessage)){
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
 						item.setCorpsName(corpMessage.getCname());
 					}
 				}
-				if (item.getSalesCompany() != null){
+				if (item.getSalesCompany() != null) {
 					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(item.getSalesCompany())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(corpMessage)){
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
 						item.setSalesCompanyName(corpMessage.getCname());
 					}
 				}
-				if (item.getCreateUser() != null){
+				if (item.getCreateUser() != null) {
 					User user = userList.stream().filter(e -> e.getId().equals(item.getCreateUser())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(user)){
+					if (ObjectUtil.isNotEmpty(user)) {
 						item.setCreateUserName(user.getName());
 					}
 				}
-				if (item.getUpdateUser() != null){
+				if (item.getUpdateUser() != null) {
 					User user1 = userList.stream().filter(e -> e.getId().equals(item.getUpdateUser())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(user1)){
+					if (ObjectUtil.isNotEmpty(user1)) {
 						item.setUpdateUserName(user1.getName());
 					}
 				}
 				//仓库信息
-				if (item.getStorageId() != null){
+				if (item.getStorageId() != null) {
 					StorageType storageDesc = storageDescList.stream().filter(e -> e.getId().equals(item.getStorageId())).findFirst().orElse(null);
-					if(storageDesc!=null)
-					{
+					if (storageDesc != null) {
 						item.setStorageName(storageDesc.getCname());
 					}
 				}
-
-				//获得明细到货数量和到货金额
-				LambdaQueryWrapper<DeliveryItems> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
-				itemsLambdaQueryWrapper.eq(DeliveryItems::getTenantId, AuthUtil.getTenantId())
-					.eq(DeliveryItems::getIsDeleted, 0)
-					.eq(DeliveryItems::getPid, item.getId());
-
-				List<DeliveryItems> itemsList = deliveryItemsService.list(itemsLambdaQueryWrapper);
 				//实际到货数量
-				item.setActualArrivalQuantity(itemsList.stream().map(DeliveryItems::getArrivalQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2,BigDecimal.ROUND_HALF_UP));
+				item.setActualArrivalQuantity(itemsList.stream().filter(e -> e.getPid().equals(item.getId()))
+					.map(DeliveryItems::getArrivalQuantity).filter(Objects::nonNull)
+					.reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP));
 				//实际到货金额
 				/*item.setActualArrivalAmount(itemsList.stream().reduce(BigDecimal.ZERO, (x, y) -> {
 					return x.add(y.getArrivalQuantity().multiply(y.getPrice()));
@@ -202,71 +216,74 @@ public class DeliveryController extends BladeController {
 	 */
 	@GetMapping("/saleDeliveryExport")
 	@ApiOperation(value = "客户收货导出", notes = "传入delivery")
-	public void saleOrderExport(Delivery delivery, HttpServletResponse response){
+	public void saleOrderExport(Delivery delivery, HttpServletResponse response) {
 		LambdaQueryWrapper<Delivery> lambdaQueryWrapper = new LambdaQueryWrapper();
-		lambdaQueryWrapper.eq(Delivery::getIsDeleted,0);
-		lambdaQueryWrapper.eq(Delivery::getTenantId,SecureUtil.getTenantId());
-		lambdaQueryWrapper.eq(Delivery::getBillType,OrderTypeEnum.SHIP.getType());
-		lambdaQueryWrapper.eq(Delivery::getTradeType,OrderTypeEnum.DOMESTIC.getType());
-		lambdaQueryWrapper.eq(delivery.getSalesCompany()!=null,Delivery::getSalesCompany,delivery.getSalesCompany());
-		lambdaQueryWrapper.like(StringUtils.isNotBlank(delivery.getPurchaseMode()),Delivery::getPurchaseMode,delivery.getPurchaseMode());
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getCreateStartTime()),Delivery::getCreateTime,delivery.getCreateStartTime());//制单日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getCreateEndTime()),Delivery::getCreateTime,delivery.getCreateEndTime());//制单日期结束
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getBusinessStartDate()),Delivery::getBusinessDate,delivery.getBusinessStartDate());//发货日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getBusinessEndDate()),Delivery::getBusinessDate,delivery.getBusinessEndDate());//发货日期结束
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getOrgOrderNo()),Delivery::getOrgOrderNo,delivery.getOrgOrderNo());//销售订单号
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCorpId()),Delivery::getCorpId,delivery.getCorpId());//客户
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getSalesCompany()),Delivery::getSalesCompany,delivery.getSalesCompany());//所属公司
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalAddress()),Delivery::getArrivalAddress,delivery.getArrivalAddress());//收货地址
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalContact()),Delivery::getArrivalContact,delivery.getArrivalContact());//收货人
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalTel()),Delivery::getArrivalTel,delivery.getArrivalTel());//收货电话
-		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getDeliveryRemarks()),Delivery::getDeliveryRemarks,delivery.getDeliveryRemarks());//备注
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCreateUser()),Delivery::getCreateUser,delivery.getCreateUser());//制单人
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getStorageId()),Delivery::getStorageId,delivery.getStorageId());//仓库
-		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getDeliveryStatus()),Delivery::getDeliveryStatus,delivery.getDeliveryStatus());//状态
-		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getArrivalStartTime()),Delivery::getArrivalTime,delivery.getArrivalStartTime());//确认到货日期开始
-		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getArrivalEndTime()),Delivery::getArrivalTime,delivery.getArrivalEndTime());//确认到货日期结束
+		lambdaQueryWrapper.eq(Delivery::getIsDeleted, 0);
+		lambdaQueryWrapper.eq(Delivery::getTenantId, SecureUtil.getTenantId());
+		lambdaQueryWrapper.eq(Delivery::getBillType, OrderTypeEnum.SHIP.getType());
+		lambdaQueryWrapper.eq(Delivery::getTradeType, OrderTypeEnum.DOMESTIC.getType());
+		lambdaQueryWrapper.eq(delivery.getSalesCompany() != null, Delivery::getSalesCompany, delivery.getSalesCompany());
+		lambdaQueryWrapper.like(StringUtils.isNotBlank(delivery.getPurchaseMode()), Delivery::getPurchaseMode, delivery.getPurchaseMode());
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getCreateStartTime()), Delivery::getCreateTime, delivery.getCreateStartTime());//制单日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getCreateEndTime()), Delivery::getCreateTime, delivery.getCreateEndTime());//制单日期结束
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getBusinessStartDate()), Delivery::getBusinessDate, delivery.getBusinessStartDate());//发货日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getBusinessEndDate()), Delivery::getBusinessDate, delivery.getBusinessEndDate());//发货日期结束
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getOrgOrderNo()), Delivery::getOrgOrderNo, delivery.getOrgOrderNo());//销售订单号
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCorpId()), Delivery::getCorpId, delivery.getCorpId());//客户
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getSalesCompany()), Delivery::getSalesCompany, delivery.getSalesCompany());//所属公司
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalAddress()), Delivery::getArrivalAddress, delivery.getArrivalAddress());//收货地址
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalContact()), Delivery::getArrivalContact, delivery.getArrivalContact());//收货人
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getArrivalTel()), Delivery::getArrivalTel, delivery.getArrivalTel());//收货电话
+		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getDeliveryRemarks()), Delivery::getDeliveryRemarks, delivery.getDeliveryRemarks());//备注
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCreateUser()), Delivery::getCreateUser, delivery.getCreateUser());//制单人
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getStorageId()), Delivery::getStorageId, delivery.getStorageId());//仓库
+		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getDeliveryStatus()), Delivery::getDeliveryStatus, delivery.getDeliveryStatus());//状态
+		lambdaQueryWrapper.ge(Func.isNotEmpty(delivery.getArrivalStartTime()), Delivery::getArrivalTime, delivery.getArrivalStartTime());//确认到货日期开始
+		lambdaQueryWrapper.le(Func.isNotEmpty(delivery.getArrivalEndTime()), Delivery::getArrivalTime, delivery.getArrivalEndTime());//确认到货日期结束
 		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getVoucherNo()), Delivery::getVoucherNo, delivery.getVoucherNo());//状态
 		lambdaQueryWrapper.like(Func.isNotEmpty(delivery.getVoucherStatus()), Delivery::getVoucherStatus, delivery.getVoucherStatus());//状态
 		lambdaQueryWrapper.orderByDesc(Delivery::getId);
 		List<Delivery> list = deliveryService.list(lambdaQueryWrapper);
 
-		redisClient.basicData("all");
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
-		List<User> userList = castToList(redisTemplate.opsForValue().get("user"), User.class);
-		List<StorageType> storageDescList = castToList(redisTemplate.opsForValue().get("storageType"), StorageType.class);
-
-		if (CollectionUtils.isNotEmpty(list)){
-			list.forEach(item ->{
-				if (item.getCorpId() != null){
+		//客户
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
+		//仓库
+		List<StorageType> storageDescList = iStorageClient.selectStorageTypeAll();
+		//用户
+		List<User> userList = iUserClient.selectUserAll();
+
+		if (CollectionUtils.isNotEmpty(list)) {
+			list.forEach(item -> {
+				if (item.getCorpId() != null) {
 					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(item.getCorpId())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(corpMessage)){
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
 						item.setCorpsName(corpMessage.getCname());
 					}
 				}
-				if (item.getSalesCompany() != null){
+				if (item.getSalesCompany() != null) {
 					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(item.getSalesCompany())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(corpMessage)){
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
 						item.setSalesCompanyName(corpMessage.getCname());
 					}
 				}
-				if (item.getCreateUser() != null){
+				if (item.getCreateUser() != null) {
 					User user = userList.stream().filter(e -> e.getId().equals(item.getCreateUser())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(user)){
+					if (ObjectUtil.isNotEmpty(user)) {
 						item.setCreateUserName(user.getName());
 					}
 				}
-				if (item.getUpdateUser() != null){
+				if (item.getUpdateUser() != null) {
 					User user1 = userList.stream().filter(e -> e.getId().equals(item.getUpdateUser())).findFirst().orElse(null);
-					if (ObjectUtil.isNotEmpty(user1)){
+					if (ObjectUtil.isNotEmpty(user1)) {
 						item.setUpdateUserName(user1.getName());
 					}
 				}
 				//仓库信息
-				if (item.getStorageId() != null){
+				if (item.getStorageId() != null) {
 					StorageType storageType = storageDescList.stream().filter(e -> e.getId().equals(item.getStorageId())).findFirst().orElse(null);
-					if(storageType!=null)
-					{
+					if (storageType != null) {
 						item.setStorageName(storageType.getCname());
 					}
 				}
@@ -283,7 +300,7 @@ public class DeliveryController extends BladeController {
 				//实际到货金额
 				item.setActualArrivalAmount(itemsList.stream().reduce(BigDecimal.ZERO, (x, y) -> {
 					return x.add(y.getArrivalQuantity().multiply(y.getPrice()));
-				},BigDecimal::add).setScale(2,BigDecimal.ROUND_HALF_UP));
+				}, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP));
 
 			});
 		}
@@ -292,6 +309,7 @@ public class DeliveryController extends BladeController {
 		ExcelUtil.export(response, "客户收货", "客户收货", excelList, SaleDeliveryExcel.class);
 
 	}
+
 	/**
 	 * 自定义分页 国内发货通知单
 	 */
@@ -321,6 +339,7 @@ public class DeliveryController extends BladeController {
 		delivery.setOverpayment(DeliveryStatusEnum.ADD.getType());
 		return deliveryService.submit(delivery);
 	}
+
 	/**
 	 * 撤销确认收货
 	 */
@@ -335,6 +354,7 @@ public class DeliveryController extends BladeController {
 		delivery.setOverpayment(DeliveryStatusEnum.REPEALADD.getType());
 		return deliveryService.submit(delivery);
 	}
+
 	/**
 	 * 国内贸易客户收货-确认到货
 	 */
@@ -419,22 +439,20 @@ public class DeliveryController extends BladeController {
 		delivery.setTradeType(OrderTypeEnum.DOMESTIC.getType());
 		return deliveryService.submitDelivery(delivery);
 	}
+
 	/**
 	 * 删除 国内发货通知单
 	 */
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
-	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids)
-	{
-		LambdaQueryWrapper<Delivery> itemsLambdaQueryWrapper=new LambdaQueryWrapper<>();
-		itemsLambdaQueryWrapper.in(Delivery::getId,Func.toLongList(ids));
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		LambdaQueryWrapper<Delivery> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+		itemsLambdaQueryWrapper.in(Delivery::getId, Func.toLongList(ids));
 		List<Delivery> list = deliveryService.list(itemsLambdaQueryWrapper);
-		if(CollectionUtils.isNotEmpty(list))
-		{
+		if (CollectionUtils.isNotEmpty(list)) {
 			long count = list.stream().filter(e -> e.getDeliveryStatus().equals("已收货")).count();
-			if(count>0)
-			{
+			if (count > 0) {
 				throw new SecurityException("存在已收货信息, 禁止删除");
 			}
 		}
@@ -445,16 +463,14 @@ public class DeliveryController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "确认发货", notes = "确认发货")
 	@RepeatSubmit
-	public R comfire(@RequestBody Delivery delivery)
-	{
+	public R comfire(@RequestBody Delivery delivery) {
 		Delivery res = deliveryService.comfire(delivery);
 		return R.data(res);
 	}
 
 	@GetMapping("/voucher")
 	@RepeatSubmit
-	public R voucher(Delivery delivery)
-	{
+	public R voucher(Delivery delivery) {
 		return deliveryService.voucher(delivery);
 	}
 
@@ -463,8 +479,7 @@ public class DeliveryController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "撤回收货", notes = "撤回收货")
 	@RepeatSubmit
-	public R cancel(@RequestBody Delivery delivery)
-	{
+	public R cancel(@RequestBody Delivery delivery) {
 		deliveryService.cancel(delivery);
 		return R.data(delivery);
 	}

+ 32 - 18
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/receiving/ReCeVingController.java

@@ -38,6 +38,7 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.deliver.goods.entity.Delivery;
 import org.springblade.deliver.goods.entity.DeliveryItems;
 import org.springblade.deliver.goods.entity.FactoryDelivery;
@@ -128,29 +129,42 @@ public class ReCeVingController extends BladeController {
 		lambdaQueryWrapper.orderByDesc(Delivery::getCreateTime);
 		IPage<Delivery> pages = deliveryService.page(Condition.getPage(query), lambdaQueryWrapper);
 		//解决回显字段问题
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setIsDeleted(0);
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
+		List<User> userList = iUserClient.selectUserAll();
+		List<StorageType> storageDescList = iStorageClient.selectStorageTypeAll();
 		List<Delivery> records = pages.getRecords();
 		if (CollectionUtils.isNotEmpty(records)) {
 			records.forEach(e -> {
+				//仓库信息
+				if (e.getStorageId() != null) {
+					StorageType storageDesc = storageDescList.stream().filter(storageType -> storageType.getId().equals(e.getStorageId())).findFirst().orElse(null);
+					if (storageDesc != null) {
+						e.setStorageName(storageDesc.getCname());
+					}
+				}
 				//供应商信息
-				R<CorpsDesc> corps = corpsDescClient.getCorpMessage(e.getCorpId());
-				if (corps.getData() != null) {
-					e.setCorpsName(corps.getData().getCname());
+				if (e.getCorpId() != null) {
+					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(e.getCorpId())).findFirst().orElse(null);
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
+						e.setCorpsName(corpMessage.getCname());
+					}
 				}
 				//所属公司信息
-				R<CorpsDesc> company = corpsDescClient.getCorpMessage(e.getSalesCompany());
-				if (company.getData() != null) {
-					e.setSalesCompanyName(company.getData().getCname());
+				if (e.getSalesCompany() != null) {
+					CorpsDesc corpMessage = corpsDescList.stream().filter(corps -> corps.getId().equals(e.getSalesCompany())).findFirst().orElse(null);
+					if (ObjectUtil.isNotEmpty(corpMessage)) {
+						e.setSalesCompanyName(corpMessage.getCname());
+					}
 				}
-				//仓库信息
-				StorageType storageDesc = iStorageClient.getStorageType(e.getStorageId());
-				if (storageDesc != null) {
-					e.setStorageName(storageDesc.getCname());
-				}
-				R<User> user = iUserClient.userInfoById(e.getCreateUser());
-				if (user.isSuccess() && user.getData() != null) {
-					e.setCreateUserName(user.getData().getName());
+				if (e.getCreateUser() != null) {
+					User user = userList.stream().filter(us -> us.getId().equals(e.getCreateUser())).findFirst().orElse(null);
+					if (ObjectUtil.isNotEmpty(user)) {
+						e.setCreateUserName(user.getName());
+					}
 				}
-
 			});
 		}
 		pages.setRecords(records);
@@ -235,7 +249,7 @@ public class ReCeVingController extends BladeController {
 	@GetMapping("/exportOutFactoryDelivery")
 	@ApiOperationSupport(order = 9)
 	@ApiOperation(value = "导出模板")
-	public void exportOutFactoryDelivery(Delivery delivery,HttpServletResponse response) {
+	public void exportOutFactoryDelivery(Delivery delivery, HttpServletResponse response) {
 		LambdaQueryWrapper<Delivery> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(Delivery::getIsDeleted, 0);
 		lambdaQueryWrapper.eq(Delivery::getTenantId, SecureUtil.getTenantId());
@@ -257,7 +271,7 @@ public class ReCeVingController extends BladeController {
 		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getCreateUser()), Delivery::getCreateUser, delivery.getCreateUser());//制单人
 		lambdaQueryWrapper.eq(Func.isNotEmpty(delivery.getStorageId()), Delivery::getStorageId, delivery.getStorageId());//仓库
 		lambdaQueryWrapper.orderByDesc(Delivery::getCreateTime);
-		List<Delivery> deliveryList =  deliveryService.list(lambdaQueryWrapper);
+		List<Delivery> deliveryList = deliveryService.list(lambdaQueryWrapper);
 
 		List<FactoryDelivery> list = new ArrayList<>();
 
@@ -284,7 +298,7 @@ public class ReCeVingController extends BladeController {
 					e.setCreateUserName(user.getData().getName());
 				}
 				FactoryDelivery factoryDelivery = new FactoryDelivery();
-				BeanUtils.copyProperties(e,factoryDelivery);
+				BeanUtils.copyProperties(e, factoryDelivery);
 				list.add(factoryDelivery);
 			});
 		}

+ 0 - 4
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/service/impl/DeliveryItemsServiceImpl.java

@@ -28,7 +28,6 @@ import lombok.extern.slf4j.Slf4j;
 import org.springblade.client.entity.CorpsDesc;
 import org.springblade.client.feign.ICorpsDescClient;
 import org.springblade.client.feign.IGoodsDescClient;
-import org.springblade.client.feign.IRedisClient;
 import org.springblade.client.vo.GoodsDescVO;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
@@ -97,8 +96,6 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 	private final IBusinessOverpaymentClient businessOverpaymentClient;
 	//获取客户信息
 	private final ICorpsDescClient corpsDescClient;
-	private final RedisTemplate<String, Object> redisTemplate;
-	private final IRedisClient redisClient;//redis缓存处理
 	private final ISysClient sysClient;//消息
 	private final IDeliveryFeesService deliveryFeesService;
 
@@ -224,7 +221,6 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 		}
 
 		//从缓存中获得库存
-//		redisClient.basicData("all");
 		List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 		List<DeliveryItems> reducelList = collect.stream().filter(distinctByKey(DeliveryItems::getItemId)).collect(Collectors.toList());
 		if (CollectionUtils.isNotEmpty(collect)) {

+ 8 - 6
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/service/impl/DeliveryServiceImpl.java

@@ -67,6 +67,7 @@ import org.springblade.stock.entity.StockGoodsLog;
 import org.springblade.stock.feign.IStockGoodsClient;
 import org.springblade.system.feign.ISysClient;
 import org.springblade.system.user.entity.User;
+import org.springblade.system.user.feign.IUserClient;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -143,7 +144,6 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 	private final JdCorpsMapper corpsMapper;
 	private IGoodsDescClient goodsDescClient;//获取商品信息
 	private final RedisTemplate<String, Object> redisTemplate;
-	private final IRedisClient redisClient;//redis缓存处理
 
 	private final IMessageClient messageClient;//消息
 	private final ISysClient sysClient;//消息
@@ -151,6 +151,11 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 	//费用
 	private final IFeesDescClient feesDescClient;
 
+	/**
+	 * 获取用户信息
+	 */
+	private final IUserClient iUserClient;
+
 	@Override
 	public IPage<DeliveryVO> selectDeliveryPage(IPage<DeliveryVO> page, DeliveryVO delivery) {
 		return page.setRecords(baseMapper.selectDeliveryPage(page, delivery));
@@ -307,8 +312,7 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 		//获取发货主表数据
 		Delivery selectById = baseMapper.selectById(delivery.getId());
 
-		redisClient.basicData("all");
-		List<User> userList = castToList(redisTemplate.opsForValue().get("user"), User.class);
+		List<User> userList = iUserClient.selectUserAll();
 
 		//获得包装要求
 		Order order = new Order();
@@ -769,7 +773,6 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 			}
 		}
 		Long corpId = select.getCorpId();
-		redisClient.basicData("all");
 
 		//计算明细的入库金额(明细的总采购价)
 		LambdaQueryWrapper<DeliveryItems> deliveryItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
@@ -1399,8 +1402,7 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 
 		List<DeliveryItems> deliveryItemsList = delivery.getDeliveryItemsList();
 		//从缓存中获得库存
-		redisClient.basicData("all");
-		List<StockGoods> stockGoodsList = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
+		List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 		if (CollectionUtils.isNotEmpty(deliveryItemsList)) {
 			List<BusinessOverpaymentItem> list = new ArrayList<>();
 			List<StockGoods> stockGoodsList1 = new ArrayList<>();

+ 10 - 20
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -169,11 +169,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 
 	private final OrderCostMapper orderCostMapper;
 
-	private final RedisTemplate<String, Object> redisTemplate;
-
-	private final IRedisClient redisClient;//redis缓存处理
-
-
 	private final ITongLianPaymentClient tongLianPaymentClient;//支付
 
 	private final IPaymentClient paymentClient;//支付
@@ -464,7 +459,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			} else {
 				String yyyyMM = DateFormatUtils.format(order.getBusinesDate(), "yyMMdd");
 				if (order.getBillType().equals(OrderTypeEnum.ENQUIRY.getType())) {
-					String orderNo = order.getOrderNo().substring(0, order.getOrderNo().indexOf("-")+1);
+					String orderNo = order.getOrderNo().substring(0, order.getOrderNo().indexOf("-") + 1);
 					orderNo = orderNo + yyyyMM;
 					order.setOrderNo(orderNo);
 				}
@@ -1732,11 +1727,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				.eq(OrderItems::getPid, order.getId())
 				.eq(OrderItems::getIsDeleted, 0);
 			List<OrderItems> orderItems = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
-
 			//从缓存中获得库存
-			redisClient.basicData("all");
-			List<StockGoods> stockGoodsList = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
-
+			List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 			if (CollectionUtils.isNotEmpty(orderItems)) {
 				List<StockGoodsLog> stockGoodsLogList = new ArrayList<>();
 				Date date = new Date();
@@ -1827,11 +1819,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			List<OrderItems> orderItems = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
 			//去重
 			List<OrderItems> reducelList = orderItems.stream().filter(distinctByKey(OrderItems::getItemId)).collect(Collectors.toList());
-
 			//从缓存中获得库存
-			redisClient.basicData("all");
-			List<StockGoods> stockGoodsList = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
-
+			List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 			if (CollectionUtils.isNotEmpty(reducelList)) {
 				List<StockGoodsLog> stockGoodsLogList = new ArrayList<>();
 				List<StockGoods> stockGoodsArrayList = new ArrayList<>();
@@ -2073,8 +2062,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				List<OrderItems> reducelList = orderItems.stream().filter(distinctByKey(OrderItems::getItemId)).collect(Collectors.toList());
 
 				//从缓存中获得库存
-//				redisClient.basicData("all");
-//				List<StockGoods> stockGoodsList = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
 				List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 				if (CollectionUtils.isNotEmpty(reducelList)) {
 					List<StockGoods> stockGoods = new ArrayList<>();
@@ -8665,7 +8652,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		List<Map<String, Object>> mapList = new ArrayList<>();
 
 		//客户
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		corpsDesc.setIsDeleted(0);
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
 		//总费用
 		BigDecimal amount = new BigDecimal(0);
 		//分摊金额
@@ -8694,9 +8684,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				if (ObjectUtils.isNotNull(orderItemsList)) {
 					Long corpId = orderItemsList.get(0).getCorpId();
 					//供应商
-					CorpsDesc corpsDesc = corpsDescList.stream().filter(corps -> corps.getId().equals(corpId)).findFirst().orElse(null);
-					if (ObjectUtils.isNotNull(corpsDesc) && ObjectUtils.isNotNull(corpsDesc.getBelongtoarea())) {
-						itemLambdaQueryWrapper.apply("find_in_set(departure,'" + corpsDesc.getBelongtoarea() + "')");//明细供应商所在地址
+					CorpsDesc corpsDesc1 = corpsDescList.stream().filter(corps -> corps.getId().equals(corpId)).findFirst().orElse(null);
+					if (ObjectUtils.isNotNull(corpsDesc1) && ObjectUtils.isNotNull(corpsDesc1.getBelongtoarea())) {
+						itemLambdaQueryWrapper.apply("find_in_set(departure,'" + corpsDesc1.getBelongtoarea() + "')");//明细供应商所在地址
 					}
 				}
 			}

+ 36 - 41
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/controller/PurchaseOrderController.java

@@ -28,7 +28,6 @@ import org.springblade.client.entity.CorpsDesc;
 import org.springblade.client.entity.GoodsDesc;
 import org.springblade.client.feign.ICorpsDescClient;
 import org.springblade.client.feign.IGoodsDescClient;
-import org.springblade.client.feign.IRedisClient;
 import org.springblade.client.vo.GoodsDescVO;
 import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.excel.util.ExcelUtil;
@@ -85,10 +84,6 @@ public class PurchaseOrderController extends BladeController {
 
 	private IDictBizClient dictBizClient;
 
-	private IRedisClient redisClient;
-
-	private final RedisTemplate<String, Object> redisTemplate;
-
 
 	/**
 	 * 详情
@@ -367,42 +362,42 @@ public class PurchaseOrderController extends BladeController {
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "采购订单表列表(内贸 外贸 出口)", notes = "传入order")
 	public R<?> listAll(
-					 @RequestParam(value = "billNo", required = false) String billNo,//提单号
-					 @RequestParam(value = "orderNo", required = false) String orderNo,//合同号
-					 @RequestParam(value = "tradeType", required = false) String tradeType,//贸易类型
-					 @RequestParam(value = "strCorpName", required = false) String strCorpName,//供应商名称
-					 @RequestParam(value = "corpId", required = false) String corpId,//供应商id
-					 @RequestParam(value = "strPurchaserName", required = false) String strPurchaserName,//采购商名称
-					 @RequestParam(value = "salesName", required = false) String salesName,//业务员
-					 @RequestParam(value = "orgOrderNo", required = false) String orgOrderNo,//来源单号
-					 @RequestParam(value = "banksAccountName", required = false) String banksAccountName,//公司户头
-					 @RequestParam(value = "packageRemarks", required = false) String packageRemarks,//包装要求
-					 @RequestParam(value = "createUser", required = false) Long createUser,//制单人
-					 @RequestParam(value = "paymentType", required = false) String paymentType,//付款方式
-					 @RequestParam(value = "createStartTime", required = false) String createStartTime,//制单日期
-					 @RequestParam(value = "createEndTime", required = false) String createEndTime,//制单日期
-
-
-					 @RequestParam(value = "businesStartDate", required = false) String businesStartDate,//订单开始时间  busines_date
-					 @RequestParam(value = "businesEndDate", required = false) String businesEndDate,//订单结束时间
-					 @RequestParam(value = "accountsCollectionStartDate", required = false) String accountsCollectionStartDate,//应收(付)款开始时间  accounts_collection_date
-					 @RequestParam(value = "accountsCollectionEndDate", required = false) String accountsCollectionEndDate,//应收(付)款结束时间
-
-					 @RequestParam(value = "dateOfStartArrival", required = false) String dateOfStartArrival,//实际到港开始日期 date_of_arrival
-					 @RequestParam(value = "dateOfEndArrival", required = false) String dateOfEndArrival,//实际到港结束时间,
-
-					 @RequestParam(value = "requiredDeliveryStartDate", required = false) String requiredDeliveryStartDate,//要求发货开始日期  required_delivery_date
-					 @RequestParam(value = "requiredDeliveryEndDate", required = false) String requiredDeliveryEndDate,//要求发货结束时间
-
-					 @RequestParam(value = "requiredArrivalStartDate", required = false) String requiredArrivalStartDate,//要求到货开始日期  required_arrival_date
-					 @RequestParam(value = "requiredArrivalEndDate", required = false) String requiredArrivalEndDate,//要求到货结束日期
-
-					 @RequestParam(value = "creditStartDate", required = false) String creditStartDate,//信用证到期日-开始日期  credit_date
-					 @RequestParam(value = "creditEndDate", required = false) String creditEndDate,//信用证到期日-结束时间
-					 @RequestParam(value = "gathering", required = false) Integer gathering,//是否付款 0 已付款 1 未付款
-					 @RequestParam(value = "createFreight", required = false) Integer createFreight,//是否生成发货 0 否 1 是
-					 @RequestParam(value = "orderType", required = false) String orderType,//是否生成发货 0 否 1 是
-					 Order order
+		@RequestParam(value = "billNo", required = false) String billNo,//提单号
+		@RequestParam(value = "orderNo", required = false) String orderNo,//合同号
+		@RequestParam(value = "tradeType", required = false) String tradeType,//贸易类型
+		@RequestParam(value = "strCorpName", required = false) String strCorpName,//供应商名称
+		@RequestParam(value = "corpId", required = false) String corpId,//供应商id
+		@RequestParam(value = "strPurchaserName", required = false) String strPurchaserName,//采购商名称
+		@RequestParam(value = "salesName", required = false) String salesName,//业务员
+		@RequestParam(value = "orgOrderNo", required = false) String orgOrderNo,//来源单号
+		@RequestParam(value = "banksAccountName", required = false) String banksAccountName,//公司户头
+		@RequestParam(value = "packageRemarks", required = false) String packageRemarks,//包装要求
+		@RequestParam(value = "createUser", required = false) Long createUser,//制单人
+		@RequestParam(value = "paymentType", required = false) String paymentType,//付款方式
+		@RequestParam(value = "createStartTime", required = false) String createStartTime,//制单日期
+		@RequestParam(value = "createEndTime", required = false) String createEndTime,//制单日期
+
+
+		@RequestParam(value = "businesStartDate", required = false) String businesStartDate,//订单开始时间  busines_date
+		@RequestParam(value = "businesEndDate", required = false) String businesEndDate,//订单结束时间
+		@RequestParam(value = "accountsCollectionStartDate", required = false) String accountsCollectionStartDate,//应收(付)款开始时间  accounts_collection_date
+		@RequestParam(value = "accountsCollectionEndDate", required = false) String accountsCollectionEndDate,//应收(付)款结束时间
+
+		@RequestParam(value = "dateOfStartArrival", required = false) String dateOfStartArrival,//实际到港开始日期 date_of_arrival
+		@RequestParam(value = "dateOfEndArrival", required = false) String dateOfEndArrival,//实际到港结束时间,
+
+		@RequestParam(value = "requiredDeliveryStartDate", required = false) String requiredDeliveryStartDate,//要求发货开始日期  required_delivery_date
+		@RequestParam(value = "requiredDeliveryEndDate", required = false) String requiredDeliveryEndDate,//要求发货结束时间
+
+		@RequestParam(value = "requiredArrivalStartDate", required = false) String requiredArrivalStartDate,//要求到货开始日期  required_arrival_date
+		@RequestParam(value = "requiredArrivalEndDate", required = false) String requiredArrivalEndDate,//要求到货结束日期
+
+		@RequestParam(value = "creditStartDate", required = false) String creditStartDate,//信用证到期日-开始日期  credit_date
+		@RequestParam(value = "creditEndDate", required = false) String creditEndDate,//信用证到期日-结束时间
+		@RequestParam(value = "gathering", required = false) Integer gathering,//是否付款 0 已付款 1 未付款
+		@RequestParam(value = "createFreight", required = false) Integer createFreight,//是否生成发货 0 否 1 是
+		@RequestParam(value = "orderType", required = false) String orderType,//是否生成发货 0 否 1 是
+		Order order
 	) {
 
 		QueryWrapper<Order> queryWrapper = new QueryWrapper<>();

+ 34 - 52
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/service/impl/OrderServiceImpl.java

@@ -128,8 +128,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	private final FinancingServiceImpl financingService;
 	//字典
 	private final IDictBizClient dictBizClient;
-	private final RedisTemplate<String, Object> redisTemplate;
-	private final IRedisClient redisClient;
 
 
 	@Override
@@ -222,17 +220,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	@Override
 	public R<OrderVO> getOrderMessage(String id) {
 		//客户
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
-		if (corpsDescList.size() == 0) {
-			CorpsDesc corpsDesc = new CorpsDesc();
-			corpsDesc.setTenantId(AuthUtil.getTenantId());
-			corpsDescList = corpsDescClient.getCorp(corpsDesc);
-			redisClient.basicData("all");
-		}
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
 		//仓库
-		List<StorageType> storageTypeList = castToList(redisTemplate.opsForValue().get("storageType"), StorageType.class);
+		List<StorageType> storageTypeList = iStorageClient.selectStorageTypeAll();
 		//用户
-		List<User> userList = castToList(redisTemplate.opsForValue().get("user"), User.class);
+		List<User> userList = userClient.selectUserAll();
 
 		String tenantId = AuthUtil.getTenantId();
 		//获取订单主表信息
@@ -671,7 +665,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		if (order.getDealer() == 1 && CollectionUtils.isNotEmpty(list)) {
 			//查询库存
 			for (OrderItems item : list) {
-				R<StockGoodsVO> stock = stockGoodsClient.selectStock(null,null, selectById.getStorageId(), item.getItemId(), null, item.getLotNo(), null,
+				R<StockGoodsVO> stock = stockGoodsClient.selectStock(null, null, selectById.getStorageId(), item.getItemId(), null, item.getLotNo(), null,
 					null, null, OrderTypeEnum.DEALER.getType());
 				if (!stock.isSuccess()) {
 					throw new RuntimeException("查询库存出错");
@@ -731,7 +725,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					data.setStockPrice(data.getBalanceAmount().divide(data.getBalanceQuantity(), MathContext.DECIMAL32));
 //					boolean updateStock = stockGoodsClient.updateStock(data);
 					R res = stockGoodsClient.updateStock(data);
-					if (!res.isSuccess()){
+					if (!res.isSuccess()) {
 						throw new RuntimeException(res.getMsg());
 					}
 				}
@@ -746,7 +740,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		} else if (order.getDealer() == 2 && CollectionUtils.isNotEmpty(list)) {
 			//查询库存
 			for (OrderItems item : list) {
-				R<StockGoodsVO> stock = stockGoodsClient.selectStock(null,null, selectById.getStorageId(), item.getItemId(), null, item.getLotNo(), null,
+				R<StockGoodsVO> stock = stockGoodsClient.selectStock(null, null, selectById.getStorageId(), item.getItemId(), null, item.getLotNo(), null,
 					null, null, OrderTypeEnum.DEALER.getType());
 				if (!stock.isSuccess()) {
 					throw new RuntimeException("查询库存出错");
@@ -772,7 +766,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				data.setStockPrice(data.getBalanceAmount().divide(data.getBalanceQuantity(), MathContext.DECIMAL32));
 //				boolean updateStock = stockGoodsClient.updateStock(data);
 				R res = stockGoodsClient.updateStock(data);
-				if (!res.isSuccess()){
+				if (!res.isSuccess()) {
 					throw new RuntimeException(res.getMsg());
 				}
 				//更改明细状态
@@ -842,7 +836,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	 */
 	public List<OrderItems> getOrderItems(Long orderId, Long createId) {
 		//库区
-		List<StorageDesc> storageDescList = castToList(redisTemplate.opsForValue().get("storageDesc"), StorageDesc.class);
+		List<StorageDesc> storageDescList = iStorageClient.selectStorageDescAll();
 		// 查询订单明细信息
 		List<OrderItems> orderItemsList = orderItemsService.list(Wrappers.<OrderItems>lambdaQuery()
 			.eq(OrderItems::getPid, orderId)
@@ -889,7 +883,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	 */
 	public List<OrderFees> getOrderFees(Long orderId) {
 		//客户
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
 		// 查询费用明细
 		List<OrderFees> orderFeesList = orderFeesService.list(Wrappers.<OrderFees>lambdaQuery().eq(OrderFees::getPid, orderId).eq(OrderFees::getIsDeleted, 0)
 			.eq(OrderFees::getTenantId, SecureUtil.getTenantId()));
@@ -968,11 +964,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				.eq(OrderItems::getPid, order.getId())
 				.eq(OrderItems::getIsDeleted, 0);
 			List<OrderItems> orderItems = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
-
-			//从缓存中获得库存
-			redisClient.basicData("all");
-			List<StockGoods> stockGoodsList = castToList(redisTemplate.opsForValue().get("stockGoods"), StockGoods.class);
-
+			//库存
+			List<StockGoods> stockGoodsList = stockGoodsClient.selectStockGoodsAll();
 			if (CollectionUtils.isNotEmpty(orderItems)) {
 				orderItems.forEach(e -> {
 					// 开始锁定库存,减少可用
@@ -1005,7 +998,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						throw new SecurityException("撤销失败: 更新库存失败");
 					}*/
 					R res = stockGoodsClient.updateStock(oneStock);
-					if (!res.isSuccess()){
+					if (!res.isSuccess()) {
 						throw new RuntimeException(res.getMsg());
 					}
 				});
@@ -1044,16 +1037,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public List<CMYWarehousingExcel> warehousing(List<CMYWarehousingExcel> excelList) {
 		//商品
-		List<GoodsDesc> goodsList = new ArrayList<>();
-		/*goodsList = castToList(redisTemplate.opsForValue().get("goods"), GoodsDesc.class);
-		System.out.println("商品数据:" + goodsList);
-		if (goodsList.size() == 0) {
-			redisClient.basicData("all");
-		}*/
-		goodsList = goodsDescClient.selectGoodsDescAll();
+		List<GoodsDesc> goodsList = goodsDescClient.selectGoodsDescAll();
 		//库区
-		List<StorageDesc> storageDescList = castToList(redisTemplate.opsForValue().get("storageDesc"), StorageDesc.class);
-
+		List<StorageDesc> storageDescList = iStorageClient.selectStorageDescAll();
 		for (CMYWarehousingExcel cMYWarehousingExcel : excelList) {
 			cMYWarehousingExcel.setContainerNo(cMYWarehousingExcel.getContainerNo());//箱号
 			if (ObjectUtils.isNotNull(cMYWarehousingExcel.getReservoirAreaName())) {
@@ -2238,17 +2224,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public IPage<Order> selectOrderList(Order order, Query query) {
 		//客户
-		List<CorpsDesc> corpsDescList = castToList(redisTemplate.opsForValue().get("corps"), CorpsDesc.class);
-		if (corpsDescList.size() == 0) {
-			CorpsDesc corpsDesc = new CorpsDesc();
-			corpsDesc.setTenantId(AuthUtil.getTenantId());
-			corpsDescList = corpsDescClient.getCorp(corpsDesc);
-			redisClient.basicData("all");
-		}
+		CorpsDesc corpsDesc = new CorpsDesc();
+		corpsDesc.setTenantId(AuthUtil.getTenantId());
+		List<CorpsDesc> corpsDescList = corpsDescClient.getCorp(corpsDesc);
 		//仓库
-		List<StorageType> storageTypeList = castToList(redisTemplate.opsForValue().get("storageType"), StorageType.class);
+		List<StorageType> storageTypeList = iStorageClient.selectStorageTypeAll();
 		//用户
-		List<User> userList = castToList(redisTemplate.opsForValue().get("user"), User.class);
+		List<User> userList = userClient.selectUserAll();
 
 		QueryWrapper<Order> queryWrapper = new QueryWrapper<>();
 		queryWrapper.eq("is_deleted", 0)
@@ -2259,9 +2241,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			.eq(ObjectUtils.isNotNull(order.getBusinessType()), "business_type", order.getBusinessType());
 		if (ObjectUtils.isNotNull(order.getPurchaser())) {
 			//货权人
-			CorpsDesc corpsDesc = corpsDescList.stream().filter(corps -> corps.getCname().equals(order.getPurchaser())).findFirst().orElse(null);
-			if (ObjectUtils.isNotNull(corpsDesc)) {
-				queryWrapper.eq(ObjectUtils.isNotNull(order.getPurchaserId()), "purchaser_id", corpsDesc.getId());
+			CorpsDesc corpsDesc1 = corpsDescList.stream().filter(corps -> corps.getCname().equals(order.getPurchaser())).findFirst().orElse(null);
+			if (ObjectUtils.isNotNull(corpsDesc1)) {
+				queryWrapper.eq(ObjectUtils.isNotNull(order.getPurchaserId()), "purchaser_id", corpsDesc1.getId());
 			}
 		} else {
 			queryWrapper.eq(ObjectUtils.isNotNull(order.getPurchaserId()), "purchaser_id", order.getPurchaserId());
@@ -2314,16 +2296,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			}
 			//货权人
 			if (ObjectUtils.isNotNull(orders.getPurchaserId())) {
-				CorpsDesc corpsDesc = corpsDescList.stream().filter(corps -> corps.getId().equals(orders.getPurchaserId())).findFirst().orElse(null);
-				if (ObjectUtils.isNotNull(corpsDesc)) {
-					orders.setPurchaser(corpsDesc.getCname());
+				CorpsDesc corpsDesc1 = corpsDescList.stream().filter(corps -> corps.getId().equals(orders.getPurchaserId())).findFirst().orElse(null);
+				if (ObjectUtils.isNotNull(corpsDesc1)) {
+					orders.setPurchaser(corpsDesc1.getCname());
 				}
 			}
 			//供应商
 			if (ObjectUtils.isNotNull(orders.getCorpId())) {
-				CorpsDesc corpsDesc = corpsDescList.stream().filter(corps -> corps.getId().equals(orders.getCorpId())).findFirst().orElse(null);
-				if (ObjectUtils.isNotNull(corpsDesc)) {
-					orders.setCorpName(corpsDesc.getCname());
+				CorpsDesc corpsDesc1 = corpsDescList.stream().filter(corps -> corps.getId().equals(orders.getCorpId())).findFirst().orElse(null);
+				if (ObjectUtils.isNotNull(corpsDesc1)) {
+					orders.setCorpName(corpsDesc1.getCname());
 				}
 			}
 			//操作人
@@ -2598,7 +2580,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						//给角色为财务的人发送消息
 						R<String> clientDeptIds = sysClient.getRoleIds(SecureUtil.getTenantId(), "财务");
 						if (clientDeptIds.isSuccess() && StringUtils.isNotBlank(clientDeptIds.getData())) {
-							R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()),null,null);
+							R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()), null, null);
 							if (userList.isSuccess() && CollectionUtils.isNotEmpty(userList.getData())) {
 								for (User datum : userList.getData()) {
 									//循环发送消息
@@ -2776,7 +2758,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				//给角色为财务的人发送消息
 				R<String> clientDeptIds = sysClient.getRoleIds(SecureUtil.getTenantId(), "财务");
 				if (clientDeptIds.isSuccess() && StringUtils.isNotBlank(clientDeptIds.getData())) {
-					R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()),null,null);
+					R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()), null, null);
 					if (userList.isSuccess() && CollectionUtils.isNotEmpty(userList.getData())) {
 						for (User datum : userList.getData()) {
 							//循环发送消息