|
|
@@ -22,6 +22,7 @@ import com.trade.purchase.order.enums.OrderTypeEnum;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springblade.client.feign.IGoodsDescClient;
|
|
|
import org.springblade.client.vo.GoodsDescVO;
|
|
|
+import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.deliver.goods.entity.Delivery;
|
|
|
@@ -138,10 +139,10 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
|
|
|
List<DeliveryItems> collect = deliveryItemsList.stream().filter(e -> e.getGoodType() == 0).collect(Collectors.toList());//发货商品
|
|
|
List<DeliveryItems> itemsList = deliveryItemsList.stream().filter(e -> e.getGoodType() == 1).collect(Collectors.toList());//赠送商品
|
|
|
//判断要发货物的金额和已收金额的大小
|
|
|
- /*R amount = this.deliveryAmount(collect, delivery.getTradeType());
|
|
|
+ R amount = this.deliveryAmount(collect, delivery.getTradeType());
|
|
|
if (!amount.isSuccess()){
|
|
|
throw new RuntimeException(amount.getMsg());
|
|
|
- }*/
|
|
|
+ }
|
|
|
if (CollectionUtils.isNotEmpty(collect)){
|
|
|
for (DeliveryItems deliveryItems : collect) {
|
|
|
if (deliveryItems.getItemId() == null){
|
|
|
@@ -550,11 +551,11 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
|
|
|
newDelivery = itemsList.stream().reduce(BigDecimal.ZERO,(x,y) ->{ return x.add(y.getContractAmount().multiply(y.getExRate())); },BigDecimal::add);//本次发货金额
|
|
|
oldDelivery = deliveryItems.stream().reduce(BigDecimal.ZERO,(x,y) ->{ return x.add(y.getContractAmount().multiply(y.getExRate())); },BigDecimal::add);//历史发货金额
|
|
|
if (gathering.subtract(newDelivery.add(oldDelivery)).compareTo(BigDecimal.ZERO) <= 0){
|
|
|
- throw new RuntimeException("订单"+srcOrderNo+"可发货金额为:"+BigDecimal.ZERO);
|
|
|
+ throw new RuntimeException("订单"+srcOrderNo+"发货金额超出 ,可发货金额为(CNY):"+(gathering.subtract(oldDelivery)).setScale(2,BigDecimal.ROUND_UP));
|
|
|
}
|
|
|
- if (gathering.compareTo((newDelivery.add(oldDelivery))) < 0){
|
|
|
+ /*if (gathering.compareTo((newDelivery.add(oldDelivery))) < 0){
|
|
|
throw new RuntimeException("订单"+srcOrderNo+"可发货金额为:"+gathering.subtract(oldDelivery.add(newDelivery)));
|
|
|
- }
|
|
|
+ }*/
|
|
|
}
|
|
|
return R.success("可以发货");
|
|
|
}else {
|