Browse Source

20230525 17:40

wangzhuo 2 years ago
parent
commit
bad03a973d

+ 4 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/vo/GoodsDescVO.java

@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
 import org.springblade.client.entity.GoodsDesc;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 /**
@@ -47,4 +48,7 @@ public class GoodsDescVO extends GoodsDesc {
 	@ApiModelProperty(value = "客户编码")
 	private String corpCode;
 
+	@TableField(exist = false)
+	private BigDecimal displayPrice;
+
 }

+ 12 - 0
blade-service-api/blade-deliver-goods-api/src/main/java/org/springblade/deliver/goods/feign/IDeliveryClient.java

@@ -31,6 +31,7 @@ public interface IDeliveryClient {
 	String SAVE_ADD_DELIVERY = API_PREFIX + "/saveAddDelivery";
 	String UPDATE_BY_SRC_ID = API_PREFIX + "/updateBySrcId";
 	String SELECT_COUNT = API_PREFIX + "/selectCount";
+	String SAVE_DELIVERY_DATA = API_PREFIX + "/saveDeliveryData";
 
 	/**
 	 * 生成发货单
@@ -100,4 +101,15 @@ public interface IDeliveryClient {
 
 	@GetMapping(SELECT_COUNT)
 	int selectCount(@RequestParam("userId")Long userId,@RequestParam("dateList")List<String> dateList);
+
+	/**
+	 * 根据销售订单id获取跟单
+	 * @param orderId
+	 * @param orderNo
+	 * @return
+	 */
+	@GetMapping(SAVE_DELIVERY_DATA)
+	void saveDeliveryData(@RequestParam("orderId") Long orderId,
+						 @RequestParam("orderNo") String orderNo,
+						 @RequestParam("deliveryStatus") String deliveryStatus);
 }

+ 8 - 0
blade-service-api/blade-mocha-item-api/src/main/java/org/springblade/mocha/feign/IPriceBankClient.java

@@ -21,6 +21,7 @@ public interface IPriceBankClient {
 	String API_PREFIX = "/client";
 	String UPDATE_PRICE = API_PREFIX + "/updatePrice";
 	String SELECT_BY_ID = API_PREFIX + "/selectById";
+	String SELECT_LIST = API_PREFIX + "/selectList";
 
 	/**
 	 * 更新出口价格库价格
@@ -70,4 +71,11 @@ public interface IPriceBankClient {
 	@GetMapping(SELECT_BY_ID)
 	List<PriceBank> selectById(@RequestParam("ids") String ids);
 
+	/**
+	 * 获得所有数据
+	 * @return
+	 */
+	@GetMapping(SELECT_LIST)
+	List<PriceBank> selectList();
+
 }

+ 6 - 0
blade-service/blade-client/pom.xml

@@ -156,6 +156,12 @@
             <version>2.8.2.RELEASE</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-mocha-item</artifactId>
+            <version>2.8.2.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 
 

+ 17 - 0
blade-service/blade-client/src/main/java/org/springblade/client/goods/controller/GoodsDescController.java

@@ -50,6 +50,7 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.mocha.entity.PriceBank;
+
 import org.springblade.mocha.feign.IPriceBankClient;
 import org.springblade.mocha.feign.ISalesPolicyClient;
 import org.springblade.purchase.sales.entity.OrderItems;
@@ -107,6 +108,8 @@ public class GoodsDescController extends BladeController {
 
 	private final ICorpsAttnService corpsAttnService;
 
+	private final IPriceBankClient priceBankClient;
+
 	/**
 	 * 详情
 	 */
@@ -411,6 +414,9 @@ public class GoodsDescController extends BladeController {
 		if (CollectionUtils.isNotEmpty(goodsIdList)) {
 			goodsDesc.setGoodsTypeIdList(goodsIdList);
 		}
+
+		List<PriceBank> list = priceBankClient.selectList();
+
 		IPage<GoodsDescVO> goodsDescVOIPage = goodsDescService.selectGoods(Condition.getPage(query), goodsDesc);
 		if (CollectionUtils.isNotEmpty(goodsDescVOIPage.getRecords())) {
 			goodsDescVOIPage.getRecords().forEach(e -> {
@@ -426,6 +432,17 @@ public class GoodsDescController extends BladeController {
 						e.setCorpCode(desc.getCode());
 					}
 				}
+
+				if (ObjectUtils.isNotNull(list)){
+					PriceBank bank = list.stream().filter(priceBank -> priceBank.getItemId().equals(e.getId())).findFirst().orElse(null);
+					if (ObjectUtils.isNotNull(bank)){
+						if (ObjectUtils.isNotNull(bank.getPrice())){
+							e.setDisplayPrice(bank.getPrice());
+						}else {
+							e.setDisplayPrice(BigDecimal.ZERO);
+						}
+					}
+				}
 			});
 		}
 		return R.data(goodsDescVOIPage);

+ 24 - 0
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/feign/DeliveryClient.java

@@ -349,4 +349,28 @@ public class DeliveryClient implements IDeliveryClient {
 			.eq(Delivery::getTradeType, "CK")
 			.eq(Delivery::getBillType, "FH"));
 	}
+
+	/**
+	 * 根据销售订单id获取跟单
+	 * @param orderId
+	 * @param orderNo
+	 * @return
+	 */
+	@Override
+	public void saveDeliveryData(Long orderId, String orderNo, String deliveryStatus) {
+		LambdaQueryWrapper<Delivery> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+		lambdaQueryWrapper.eq(Delivery::getIsDeleted, 0)
+			.eq(Delivery::getTenantId, AuthUtil.getTenantId())
+			.eq(Delivery::getSrcId, orderId)
+			.eq(Delivery::getBillType, "FH")
+			.eq(Delivery::getTradeType, "CK")
+			.eq(Delivery::getSrcOrderNo, orderNo)
+			.eq(Delivery::getOrgOrderNo, orderNo)
+			.eq(Delivery::getOrgId, orderId);
+		Delivery delivery = deliveryService.getOne(lambdaQueryWrapper);
+		if (ObjectUtils.isNotNull(delivery)){
+			delivery.setDeliveryStatus(deliveryStatus);
+		}
+		deliveryService.updateById(delivery);
+	}
 }

+ 13 - 0
blade-service/blade-mocha-item/src/main/java/org/springblade/mocha/feign/PriceBankClient.java

@@ -149,4 +149,17 @@ public class PriceBankClient implements IPriceBankClient {
 		lambdaQueryWrapper.eq(PriceBank::getIsDeleted, 0).eq(PriceBank::getTenantId, AuthUtil.getTenantId()).apply("find_in_set(id,'" + ids + "')");
 		return priceBankMapper.selectList(lambdaQueryWrapper);
 	}
+
+	/**
+	 * 获得所有数据
+	 *
+	 * @return
+	 */
+	@GetMapping(SELECT_LIST)
+	@Override
+	public List<PriceBank> selectList() {
+		LambdaQueryWrapper<PriceBank> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+		lambdaQueryWrapper.eq(PriceBank::getIsDeleted, 0).eq(PriceBank::getTenantId, AuthUtil.getTenantId());
+		return priceBankMapper.selectList(lambdaQueryWrapper);
+	}
 }

+ 7 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -5278,6 +5278,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			if (!save.isSuccess()) {
 				throw new SecurityException("发送消息失败");
 			}
+			//修改跟单状态为待采购
+			deliveryClient.saveDeliveryData(selectOrder.getId(), selectOrder.getOrderNo(), "待采购");
+
 		}
 
 		return R.data(selectOrder);
@@ -5575,14 +5578,17 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						order1.setOrderStatus("排产中");
 						order1.setProductionSchedulingDate(order.getProductionSchedulingDate());
 						order1.setPurchaseQuantity(order1.getPurchaseQuantity().add(purchaseQuantity));
+						deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "排产中");
 					} else if (2 == order.getPurchaseStatusType()) {
 						order1.setProductionScheduling("预计货好");
 						order1.setOrderStatus("预计货好");
 						order1.setProductionSchedulingDate(order.getEstimateGoodGoodsDate());
+						deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "预计货好");
 					} else if (3 == order.getPurchaseStatusType()) {
 						order1.setProductionScheduling("货备齐");
 						order1.setOrderStatus("货备齐");
 						order1.setProductionSchedulingDate(new Date());
+						deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "货备齐");
 					}
 					baseMapper.updateById(order1);
 				}
@@ -5720,6 +5726,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					order1.setProductionSchedulingDate(null);
 					order1.setPurchaseQuantity(order1.getPurchaseQuantity().subtract(purchaseQuantity));
 					baseMapper.updateById(order1);
+					deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "待采购");
 				}
 			}
 		}