Browse Source

2023年8月7日13:43:05

纪新园 2 years ago
parent
commit
5e3ae83d80

+ 6 - 0
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/Order.java

@@ -1438,6 +1438,12 @@ public class Order implements Serializable {
 	@ApiModelProperty(value = "车号2")
 	private String wagonNumberTwo;
 
+	/**
+	 * 会员结算余额
+	 */
+	@TableField(exist = false)
+	private BigDecimal memberAmout;
+
 	public String get$buyerId() {
 		return $buyerId;
 	}

+ 5 - 0
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/feign/IOrderDescClient.java

@@ -3,6 +3,7 @@ package org.springblade.purchase.sales.feign;
 import org.springblade.common.constant.LauncherConstant;
 import org.springblade.core.tool.api.R;
 import org.springblade.purchase.sales.entity.Order;
+import org.springblade.purchase.sales.entity.OrderFees;
 import org.springblade.purchase.sales.entity.OrderFiles;
 import org.springblade.purchase.sales.vo.OrderStatisticsVo;
 import org.springblade.purchase.sales.vo.OrderVO;
@@ -44,6 +45,7 @@ public interface IOrderDescClient {
 	String SAVE = API_PREFIX + "/save";
 	String ORDER_INVENTORY_LIST = API_PREFIX + "/orderInventoryList";
 	String PASS_CHECK = API_PREFIX + "/passCheck";
+	String GET_ORDER_FEE = API_PREFIX + "/getOrderFee";
 
 	/**
 	 * 修改采购订单状态
@@ -149,4 +151,7 @@ public interface IOrderDescClient {
 
 	@GetMapping(PASS_CHECK)
 	void passCheck(@RequestParam("id") Long id);
+
+	@GetMapping(GET_ORDER_FEE)
+	List<OrderFees> getOrderFee(@RequestParam("id") Long id);
 }

+ 12 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/feign/OrderDescClient.java

@@ -24,8 +24,10 @@ import org.springblade.pay.tonglianPayment.entity.Parameters;
 import org.springblade.pay.tonglianPayment.fegin.IPaymentClient;
 import org.springblade.pay.tonglianPayment.fegin.ITongLianPaymentClient;
 import org.springblade.purchase.sales.entity.Order;
+import org.springblade.purchase.sales.entity.OrderFees;
 import org.springblade.purchase.sales.entity.OrderFiles;
 import org.springblade.purchase.sales.entity.OrderItems;
+import org.springblade.purchase.sales.service.IOrderFeesService;
 import org.springblade.purchase.sales.service.IOrderFilesService;
 import org.springblade.purchase.sales.service.IOrderItemsService;
 import org.springblade.purchase.sales.service.IOrderService;
@@ -55,6 +57,8 @@ public class OrderDescClient implements IOrderDescClient {
 
 	private final IOrderFilesService iOrderFilesService;
 
+	private final IOrderFeesService orderFeesService;
+
 	private IStockGoodsClient stockGoodsClient;
 
 	private final IFinanceClient financeClient;//财务
@@ -478,5 +482,13 @@ public class OrderDescClient implements IOrderDescClient {
 		iOrderService.passCheck(id);
 	}
 
+	@Override
+	public List<OrderFees> getOrderFee(Long id) {
+		return orderFeesService.list(new LambdaQueryWrapper<OrderFees>()
+			.eq(OrderFees::getPid, id)
+			.eq(OrderFees::getTenantId, AuthUtil.getTenantId())
+			.eq(OrderFees::getIsDeleted, 0));
+	}
+
 
 }

+ 2 - 2
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/partsapp/AppPartsController.java

@@ -708,7 +708,7 @@ public class AppPartsController extends BladeController {
 	 * 积分兑换记录
 	 */
 	@GetMapping("/integralExchangeRecord")
-	public R<IPage<Map<String,Object>>> integralExchangeRecord(HttpServletRequest request, Query query,@RequestParam("corpId") Long corpId) {
+	public R<IPage<Map<String,Object>>> integralExchangeRecord(HttpServletRequest request, Query query,@RequestParam(value = "corpId",required = false) Long corpId) {
 		Order order = new Order();
 		order.setTradeType(OrderTypeEnum.PARTS.getType());
 		if (corpId == null){
@@ -748,7 +748,7 @@ public class AppPartsController extends BladeController {
 	 * 积分获取记录
 	 */
 	@GetMapping("/integralRecord")
-	public R<IPage<Map<String,Object>>> integralRecord(HttpServletRequest request, Query query,@RequestParam("corpId") Long corpId) {
+	public R<IPage<Map<String,Object>>> integralRecord(HttpServletRequest request, Query query,@RequestParam(value = "corpId",required = false) Long corpId) {
 		Order order = new Order();
 		order.setTradeType(OrderTypeEnum.PARTS.getType());
 		if (corpId == null){

+ 136 - 89
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -63,7 +63,10 @@ import org.springblade.pay.tonglianPayment.fegin.ITongLianPaymentClient;
 import org.springblade.purchase.sales.entity.*;
 import org.springblade.purchase.sales.enums.OrderStatusEnum;
 import org.springblade.purchase.sales.excel.*;
-import org.springblade.purchase.sales.mapper.*;
+import org.springblade.purchase.sales.mapper.OrderCostItemMapper;
+import org.springblade.purchase.sales.mapper.OrderCostMapper;
+import org.springblade.purchase.sales.mapper.OrderItemsMapper;
+import org.springblade.purchase.sales.mapper.OrderMapper;
 import org.springblade.purchase.sales.service.IOrderFilesService;
 import org.springblade.purchase.sales.service.IOrderPartsService;
 import org.springblade.purchase.sales.service.IOrderService;
@@ -2855,17 +2858,17 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		//入库出库数量
 		order.setStorageQuantity(order.getOrderItemsList().stream().map(OrderItems::getStorageInQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 		if (ObjectUtils.isNull(order.getOrderAmount())) {
-			order.setOrderAmount(order.getStorageAmount());
+			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+		} else {
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 		}
-		BigDecimal amount = order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
-
-		order.setDebitAmount(amount);
-		order.setBalanceAmount(order.getOrderAmount().subtract(order.getSettlmentAmount()));
-		order.setPurchaseAmount(amount);
-
+		order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
+		order.setPurchaseAmount(order.getOrderAmount());
 		order.setCostAmount(costAmount);
 		order.setGrossProfit(grossProfit);
 		order.setConfirmStatus(1);
+		order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		baseMapper.updateById(order);
 		// 获取订单文件信息
 		List<OrderFiles> orderFilesList = orderFilesService.list(new QueryWrapper<OrderFiles>().eq("pid", order.getId())
@@ -3026,7 +3029,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		if (ObjectUtils.isNotNull(order.getCorpId())) {
 			corpsDesc = corpsDescClient.getCorpId(order.getCorpId());
 			if (ObjectUtils.isNotNull(corpsDesc)) {
-				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 					throw new RuntimeException("会员余额不足,支付失败");
 				}
 				if (ObjectUtils.isNotNull(corpsDesc.getCorpsAddrList()) && corpsDesc.getCorpsAddrList().size() > 0) {
@@ -3043,7 +3046,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					if (ObjectUtils.isNull(corpsDesc)) {
 						throw new RuntimeException("未查到用户信息");
 					} else {
-						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 							throw new RuntimeException("会员余额不足,支付失败");
 						}
 						order.setCorpId(corpsDesc.getId());
@@ -3051,12 +3054,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				}
 			}
 		}
-		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 		corpsDescClient.updateCorps(corpsDesc);
 		if ("线上".equals(order.getOrderSource())) {
+			BigDecimal memberBalance = new BigDecimal("0.00");
 			Order selectOrder = baseMapper.selectById(order.getId());
 			selectOrder.setStatus(3);
 			selectOrder.setActualPaymentStatus(2);
+			selectOrder.setMemberBalance(selectOrder.getMemberBalance().add(ObjectUtils.isNotNull(order.getMemberAmout()) ? order.getMemberAmout() : new BigDecimal("0.00")));
+			memberBalance = selectOrder.getMemberBalance();
+			selectOrder.setMemberBalance(ObjectUtils.isNotNull(order.getMemberAmout()) ? order.getMemberAmout() : new BigDecimal("0.00"));
 			if (null == selectOrder) {
 				throw new RuntimeException("未找到订单信息,订单已取消");
 			}
@@ -3080,14 +3087,18 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				settlementList.add(settlement);
 				selectOrder.setCurrentAmount(selectOrder.getRmbAmount());
 				selectOrder.setSettlementList(settlementList);
+				selectOrder.setDebitAmount(order.getDebitAmount());
 				this.paymentApply(selectOrder, selectOrder.getBillType(), selectOrder.getTradeType());
 			}
+			selectOrder.setMemberBalance(memberBalance);
 			baseMapper.updateById(selectOrder);
 		} else {
 			Order selectOrder = baseMapper.selectById(order.getId());
 			if (ObjectUtils.isNotNull(selectOrder.getOldTrxId())) {
 				throw new RuntimeException("该单据为小程序数据,请到线上付款");
 			}
+			selectOrder.setMemberBalance(selectOrder.getMemberBalance().add(ObjectUtils.isNotNull(order.getMemberAmout()) ? order.getMemberAmout() : new BigDecimal("0.00")));
+			order.setMemberBalance(ObjectUtils.isNotNull(order.getMemberAmout()) ? order.getMemberAmout() : new BigDecimal("0.00"));
 			if (ObjectUtils.isNotNull(order.getCurrentAmount()) && !order.getCurrentAmount().equals(new BigDecimal(0))) {
 				List<Settlement> settlementList = new ArrayList<>();
 				if (ObjectUtils.isNotNull(order.getSettlementList()) && order.getSettlementList().size() > 0) {
@@ -3109,14 +3120,36 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				order.setSettlementList(settlementList);
 				this.paymentApply(order, order.getBillType(), order.getTradeType());
 			} else {
-				List<Settlement> settlementList1 = financeClient.selectListBySrcId(order.getId(), null);
-				order.setSettlementList(settlementList1);
-				//获取订单结算信息
-				if (ObjectUtils.isNotNull(order.getSettlmentAmount()) && order.getSettlementList().size() > 0) {
-					this.paymentApply(order, order.getBillType(), order.getTradeType());
+				List<Settlement> settlementList = new ArrayList<>();
+				if (ObjectUtils.isNotNull(order.getMemberAmout()) && !order.getMemberAmout().equals(new BigDecimal(0))) {
+					if (ObjectUtils.isNotNull(order.getSettlementList()) && order.getSettlementList().size() > 0) {
+						settlementList = order.getSettlementList();
+					}
+					Settlement settlement = new Settlement();
+					if ("XS".equals(order.getBillType())) {
+						settlement.setDc("d");
+						settlement.setBillType("收费");
+					} else {
+						settlement.setDc("c");
+						settlement.setBillType("付费");
+					}
+					settlement.setSettlementDate(new Date());
+					settlement.setAccount(order.getAccount());
+					settlement.setAmount(order.getCurrentAmount());
+					settlement.setOverPayment(order.getOverPayment());
+					settlementList.add(settlement);
+				} else {
+					List<Settlement> settlementList1 = financeClient.selectListBySrcId(order.getId(), null);
+					if (settlementList1.size() > 0) {
+						settlementList.addAll(settlementList1);
+					}
 				}
+				order.setSettlementList(settlementList);
+				this.paymentApply(order, order.getBillType(), order.getTradeType());
 			}
-			baseMapper.updateAmount(order);
+			selectOrder.setDebitAmount(order.getDebitAmount());
+			selectOrder.setThisUsedProfit(ObjectUtils.isNotNull(order.getThisUsedProfit()) ? order.getThisUsedProfit() : new BigDecimal("0.00"));
+			baseMapper.updateAmount(selectOrder);
 		}
 		return R.data(order);
 	}
@@ -3261,6 +3294,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					}
 					if (ObjectUtils.isNull(order.getOrderAmount())) {
 						order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+					} else {
+						order.setOrderAmount(order.getOrderAmount().subtract(order.getThisUsedProfit()));
 					}
 					order.setCostAmount(costAmount);
 					order.setGrossProfit(grossProfit);
@@ -3603,10 +3638,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						if (ObjectUtils.isNotNull(corpsDesc.getCorpsAddrList()) && corpsDesc.getCorpsAddrList().size() > 0) {
 							order.setArrivalAddress(corpsDesc.getCorpsAddrList().get(0).getDetailedAddress());
 						}
-						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 							throw new RuntimeException("会员余额不足,支付失败");
 						}
-						corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+						corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 						corpsDescClient.updateCorps(corpsDesc);
 					}
 				}
@@ -3636,7 +3671,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 							if ("XS".equals(order.getBillType())) {
 								surplusRouteQuantity = surplusRouteQuantity.add(r.getData().getSurplusRouteQuantity().subtract(orderItems.getStorageInQuantity()));
 								balanceQuantity = balanceQuantity.add(surplusRouteQuantity);
-								if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+								if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 									costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 								} else {
 									costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -3696,8 +3731,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					}
 					List<OrderItems> orderItemsList = orderItemsService.saveOrderItemsMessage(order.getOrderItemsList(), date, order.getId());
 					order.setOrderItemsList(orderItemsList);
-					//应收账款
-					order.setDebitAmount(order.getOrderAmount());
 					//入库出库金额
 					order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 					//入库出库数量
@@ -3707,17 +3740,20 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					order.setThisUsedProfit(new BigDecimal("0"));
 				}
 				if (ObjectUtils.isNull(order.getOrderAmount())) {
-					order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+					order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+					order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+				} else {
+					order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 				}
 				order.setCostAmount(costAmount);
 				order.setGrossProfit(grossProfit);
 				order.setConfirmStatus(1);
 				this.paymentApply(order, order.getBillType(), order.getTradeType());
 //				order.setPurchaseAmount(order.getOrderAmount());
-				order.setDebitAmount(order.getOrderAmount());
-				order.setBalanceAmount(order.getOrderAmount());
+				order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 				order.setPurchaseAmount(order.getOrderAmount());
-				order.setSettlmentAmount(order.getOrderAmount());
+				order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+				order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 				baseMapper.updateById(order);
 				// 保存订单文件信息
 				if (CollectionUtils.isNotEmpty(order.getOrderFilesList())) {
@@ -4223,10 +4259,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 								throw new RuntimeException("未查到用户信息");
 							} else {
 								order.setCorpId(corpsDesc.getId());
-								if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+								if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 									throw new RuntimeException("会员余额不足,支付失败");
 								}
-								corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+								corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 								corpsDescClient.updateCorps(corpsDesc);
 							}
 						}
@@ -4289,7 +4325,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 							R<StockGoodsVO> r = stockGoodsClient.selectStockParts(null, orderItems.getStorageId(), orderItems.getItemId(), null, null, null, null, null, null);
 							if (r.isSuccess() && ObjectUtils.isNotNull(r.getData())) {
 								if ("XS".equals(order.getBillType())) {
-									if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+									if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 										costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 									} else {
 										costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -4325,8 +4361,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						}
 						List<OrderItems> orderItemsList = orderItemsService.saveOrderItemsMessage(order.getOrderItemsList(), date, order.getId());
 						order.setOrderItemsList(orderItemsList);
-						//应收账款
-						order.setDebitAmount(order.getOrderAmount());
 						//入库出库金额
 						order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 						//入库出库数量
@@ -4336,16 +4370,19 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						order.setThisUsedProfit(new BigDecimal("0"));
 					}
 					if (ObjectUtils.isNull(order.getOrderAmount())) {
-						order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+						order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+						order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+					} else {
+						order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 					}
 					order.setCostAmount(costAmount);
 					order.setGrossProfit(grossProfit);
 					order.setConfirmStatus(1);
 					this.paymentApply(order, order.getBillType(), order.getTradeType());
-					order.setDebitAmount(order.getOrderAmount());
-					order.setBalanceAmount(order.getOrderAmount());
-//					order.setPurchaseAmount(order.getOrderAmount());
-					order.setSettlmentAmount(order.getOrderAmount().subtract(order.getOrderAmount()));
+					order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
+					order.setPurchaseAmount(order.getOrderAmount());
+					order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+					order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 					baseMapper.updateById(order);
 					if ("234557".equals(AuthUtil.getTenantId())) {
 						LandOrder landOrder = new LandOrder();
@@ -4483,10 +4520,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 							if (ObjectUtils.isNotNull(corpsDesc.getCorpsAddrList()) && corpsDesc.getCorpsAddrList().size() > 0) {
 								order.setArrivalAddress(corpsDesc.getCorpsAddrList().get(0).getDetailedAddress());
 							}
-							if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+							if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 								throw new RuntimeException("会员余额不足,支付失败");
 							}
-							corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+							corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 							corpsDescClient.updateCorps(corpsDesc);
 						}
 					}
@@ -4515,7 +4552,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 							R<StockGoodsVO> r = stockGoodsClient.selectStockParts(null, orderItems.getStorageId(), orderItems.getItemId(), null, null, null, null, null, null);
 							if (r.isSuccess() && ObjectUtils.isNotNull(r.getData())) {
 								if ("XS".equals(order.getBillType())) {
-									if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+									if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 										costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 									} else {
 										costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -4551,8 +4588,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						}
 						List<OrderItems> orderItemsList = orderItemsService.saveOrderItemsMessage(order.getOrderItemsList(), date, order.getId());
 						order.setOrderItemsList(orderItemsList);
-						//应收账款
-						order.setDebitAmount(order.getOrderAmount());
 						//入库出库金额
 						order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 						//入库出库数量
@@ -4562,16 +4597,19 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						order.setThisUsedProfit(new BigDecimal("0"));
 					}
 					if (ObjectUtils.isNull(order.getOrderAmount())) {
-						order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+						order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+						order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+					} else {
+						order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 					}
 					order.setCostAmount(costAmount);
 					order.setGrossProfit(grossProfit);
 					order.setConfirmStatus(1);
 					this.paymentApply(order, order.getBillType(), order.getTradeType());
-					order.setDebitAmount(order.getOrderAmount());
-					order.setBalanceAmount(order.getOrderAmount());
-//					order.setPurchaseAmount(order.getOrderAmount());
-					order.setSettlmentAmount(order.getOrderAmount().subtract(order.getOrderAmount()));
+					order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
+					order.setPurchaseAmount(order.getOrderAmount());
+					order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+					order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 					baseMapper.updateById(order);
 
 					if ("234557".equals(AuthUtil.getTenantId())) {
@@ -6215,7 +6253,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		if (ObjectUtils.isNotNull(order.getCorpId())) {
 			corpsDesc = corpsDescClient.getCorpId(order.getCorpId());
 			if (ObjectUtils.isNotNull(corpsDesc)) {
-				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 					throw new RuntimeException("会员余额不足,支付失败");
 				}
 				if (ObjectUtils.isNotNull(corpsDesc.getCorpsAddrList()) && corpsDesc.getCorpsAddrList().size() > 0) {
@@ -6232,7 +6270,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					if (ObjectUtils.isNull(corpsDesc)) {
 						throw new RuntimeException("未查到用户信息");
 					} else {
-						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 							throw new RuntimeException("会员余额不足,支付失败");
 						}
 						order.setCorpId(corpsDesc.getId());
@@ -6240,7 +6278,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				}
 			}
 		}
-		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 		corpsDescClient.updateCorps(corpsDesc);
 		// 订单时间
 		order.setStatus(0);
@@ -6293,7 +6331,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				R<StockGoodsVO> r = stockGoodsClient.selectStockParts(null, orderItems.getStorageId(), orderItems.getItemId(), null, null, null, null, null, null);
 				if (r.isSuccess() && ObjectUtils.isNotNull(r.getData())) {
 					if ("XS".equals(order.getBillType())) {
-						if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+						if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 							costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 						} else {
 							costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -6329,10 +6367,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			}
 			List<OrderItems> orderItemsList = orderItemsService.saveOrderItemsMessage(order.getOrderItemsList(), date, order.getId());
 			order.setOrderItemsList(orderItemsList);
-			// todo 新
-			order.setPaymentGoods(order.getOrderAmount());
-			//应收账款
-			order.setDebitAmount(order.getOrderAmount());
 			//入库出库金额
 			order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			//入库出库数量
@@ -6342,7 +6376,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			order.setThisUsedProfit(new BigDecimal("0"));
 		}
 		if (ObjectUtils.isNull(order.getOrderAmount())) {
-			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+		} else {
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 		}
 		order.setCostAmount(costAmount);
 		order.setGrossProfit(grossProfit);
@@ -6351,10 +6388,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			order.setMemberBalance(new BigDecimal("0.00"));
 		}
 		this.paymentApply(order, order.getBillType(), order.getTradeType());
-		order.setDebitAmount(order.getOrderAmount());
-		order.setBalanceAmount(order.getOrderAmount().subtract(order.getMemberBalance()));
+		order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		order.setPurchaseAmount(order.getOrderAmount());
-		order.setSettlmentAmount(order.getOrderAmount().subtract(order.getBalanceAmount()));
+		order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+		order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		baseMapper.updateById(order);
 
 		// 保存订单文件信息
@@ -6962,7 +6999,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						balanceQuantity = balanceQuantity.add(surplusRouteQuantity);
 
 
-						if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+						if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 							costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 						} else {
 							costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -7027,10 +7064,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			}
 			List<OrderItems> orderItemsList = orderItemsService.saveOrderItemsMessage(order.getOrderItemsList(), date, order.getId());
 			order.setOrderItemsList(orderItemsList);
-			//应收账款
-			order.setDebitAmount(order.getOrderAmount());
 			//入库出库金额
 			order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
+			order.setOrderAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			//入库出库数量
 			order.setStorageQuantity(order.getOrderItemsList().stream().map(OrderItems::getStorageInQuantity).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			//商品名称集合
@@ -7050,7 +7086,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			order.setThisUsedProfit(new BigDecimal("0"));
 		}
 		if (ObjectUtils.isNull(order.getOrderAmount())) {
-			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+			order.setDebitAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+		} else {
+			order.setDebitAmount(order.getOrderAmount().subtract(order.getThisUsedProfit()));
 		}
 		order.setCostAmount(costAmount);
 		order.setGrossProfit(grossProfit);
@@ -7058,15 +7096,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		order.setActualPaymentStatus(1);
 		order.setStatus(0);
 		this.paymentApply(order, order.getBillType(), order.getTradeType());
-		if (ObjectUtils.isNotNull(order.getMemberBalance())) {
-			order.setDebitAmount(order.getOrderAmount().subtract(order.getMemberBalance()));
-		} else {
-			order.setDebitAmount(order.getOrderAmount());
-		}
-		order.setBalanceAmount(order.getOrderAmount());
-//		order.setPurchaseAmount(order.getOrderAmount());
+		order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
+		order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+		order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 
-		order.setSettlmentAmount(order.getOrderAmount().subtract(order.getDebitAmount()));
 		baseMapper.updateById(order);
 		// 保存订单文件信息
 		if (CollectionUtils.isNotEmpty(order.getOrderFilesList())) {
@@ -7286,20 +7319,28 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		} else {
 			throw new RuntimeException("请选择商品信息");
 		}
+		order.setConfirmStatus(1);
+		order.setAccount("微信支付");
 		if (ObjectUtils.isNull(order.getThisUsedProfit())) {
 			order.setThisUsedProfit(new BigDecimal("0"));
 		}
 		if (ObjectUtils.isNull(order.getOrderAmount())) {
-			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+		} else {
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 		}
 		order.setCostAmount(costAmount);
 		order.setGrossProfit(grossProfit);
 		order.setConfirmStatus(1);
-		order.setAccount("微信支付");
+		if (ObjectUtils.isNull(order.getMemberBalance())) {
+			order.setMemberBalance(new BigDecimal("0.00"));
+		}
 		this.paymentApply(order, order.getBillType(), order.getTradeType());
-		order.setDebitAmount(order.getOrderAmount());
-		order.setBalanceAmount(order.getOrderAmount());
-//		order.setPurchaseAmount(order.getOrderAmount());
+		order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
+		order.setPurchaseAmount(order.getOrderAmount());
+		order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+		order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		baseMapper.updateById(order);
 		return order;
 	}
@@ -7377,7 +7418,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		if (ObjectUtils.isNotNull(order.getCorpId())) {
 			corpsDesc = corpsDescClient.getCorpId(order.getCorpId());
 			if (ObjectUtils.isNotNull(corpsDesc)) {
-				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+				if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 					throw new RuntimeException("会员余额不足,支付失败");
 				}
 				if (ObjectUtils.isNotNull(corpsDesc.getCorpsAddrList()) && corpsDesc.getCorpsAddrList().size() > 0) {
@@ -7394,7 +7435,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					if (ObjectUtils.isNull(corpsDesc)) {
 						throw new RuntimeException("未查到用户信息");
 					} else {
-						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberBalance()) < 0) {
+						if (corpsDesc.getBalanceAmount().compareTo(order.getMemberAmout()) < 0) {
 							throw new RuntimeException("会员余额不足,支付失败");
 						}
 						order.setCorpId(corpsDesc.getId());
@@ -7402,7 +7443,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				}
 			}
 		}
-		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberBalance()));
+		corpsDesc.setBalanceAmount(corpsDesc.getBalanceAmount().subtract(order.getMemberAmout()));
 		corpsDescClient.updateCorps(corpsDesc);
 		// 订单时间
 		order.setBusinesDate(new Date());
@@ -7462,7 +7503,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					BigDecimal balanceQuantity = new BigDecimal("0.00");
 					BigDecimal balanceAmount = new BigDecimal("0.00");
 					if ("XS".equals(order.getBillType())) {
-						if (new BigDecimal("0.00").equals(r.getData().getSurplusRouteQuantity())) {
+						if (new BigDecimal("0.00").compareTo(r.getData().getSurplusRouteQuantity()) == 0) {
 							costAmount = costAmount.add(orderItems.getPurchasePrice().multiply(orderItems.getStorageInQuantity()));
 						} else {
 							costAmount = costAmount.add(r.getData().getStockPrice().multiply(orderItems.getStorageInQuantity()));
@@ -7533,8 +7574,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			order.setOrderItemsList(orderItemsList);
 			// todo 新
 			order.setPaymentGoods(order.getOrderAmount());
-			//应收账款
-			order.setDebitAmount(order.getOrderAmount());
 			//入库出库金额
 			order.setStorageAmount(order.getOrderItemsList().stream().map(OrderItems::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add));
 			//入库出库数量
@@ -7544,16 +7583,22 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			order.setThisUsedProfit(new BigDecimal("0"));
 		}
 		if (ObjectUtils.isNull(order.getOrderAmount())) {
-			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()).subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+			order.setOrderAmount((order.getStorageAmount() == null ? new BigDecimal("0.00") : order.getStorageAmount()));
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
+		} else {
+			order.setDebitAmount(order.getOrderAmount().subtract((order.getThisUsedProfit() == null ? new BigDecimal("0.00") : order.getThisUsedProfit())));
 		}
 		order.setCostAmount(costAmount);
 		order.setGrossProfit(grossProfit);
 		order.setConfirmStatus(1);
+		if (ObjectUtils.isNull(order.getMemberBalance())) {
+			order.setMemberBalance(new BigDecimal("0.00"));
+		}
 		this.paymentApply(order, order.getBillType(), order.getTradeType());
-		order.setDebitAmount(order.getOrderAmount());
-		order.setBalanceAmount(order.getOrderAmount().subtract(order.getMemberBalance()));
+		order.setBalanceAmount(order.getDebitAmount().subtract((order.getSettlmentAmount() == null ? new BigDecimal("0.00") : order.getSettlmentAmount())).subtract((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		order.setPurchaseAmount(order.getOrderAmount());
-		order.setSettlmentAmount(order.getOrderAmount().subtract(order.getBalanceAmount()));
+		order.setSettlmentAmount(order.getDebitAmount().subtract(order.getBalanceAmount()));
+		order.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()).add((order.getMemberAmout() == null ? new BigDecimal("0.00") : order.getMemberAmout())));
 		baseMapper.updateById(order);
 
 		// 保存订单文件信息
@@ -8109,7 +8154,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			}
 			applyDTO.setSettlementList(order.getSettlementList());
 
-			amount = amount.add(order.getOrderAmount());
+			amount = amount.add(order.getDebitAmount());
 			quantity = quantity.add(new BigDecimal(1));
 			price = price.add(amount);
 
@@ -8128,7 +8173,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			applyDTO.setChargeMember(order.getChargeMember());
 			applyDTO.setUnit("条");
 			applyDTO.setRemarks(order.getOrderRemark());
-			applyDTO.setMemberBalance(order.getMemberBalance());
+			applyDTO.setMemberBalance((order.getMemberBalance() == null ? new BigDecimal("0.00") : order.getMemberBalance()));
 			//获取费用id
 			R<FeesDesc> fees = feesDescClient.getFeesByName("货款");
 			if (fees.isSuccess() && fees.getData() != null) {
@@ -8148,8 +8193,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			applyDTO.setPrice(price);
 			applyDTO.setQuantity(quantity);
 			applyDTO.setReceivedAmount(order.getCurrentAmount());
-			if (ObjectUtils.isNotNull(order.getCurrentAmount())) {
-				applyDTO.setSettlementAmount(order.getSettlmentAmount().add(order.getCurrentAmount()).add(order.getMemberBalance()));
+			if (ObjectUtils.isNotNull(order.getCurrentAmount()) && order.getCurrentAmount().compareTo(new BigDecimal("0.00")) != 0) {
+				applyDTO.setSettlementAmount(order.getCurrentAmount().add(order.getMemberBalance()));
+			} else {
+				applyDTO.setSettlementAmount(ObjectUtils.isNotNull(order.getMemberBalance()) ? order.getMemberBalance() : new BigDecimal("0.00"));
 			}
 			//生成账单
 			R paymentApply = financeClient.paymentApplyParts(applyDTO);

+ 1 - 2
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -3009,8 +3009,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 						/** 确认收款增加回填销售单未收款和已收款 */
 						BigDecimal amount = BigDecimal.ZERO;
 						amount = acc.getAmount();
-						BigDecimal receivedAmount = new BigDecimal("0.00");
-						receivedAmount = acc.getSettlementAmount();
+						BigDecimal receivedAmount = s;
 						amount = amount.subtract(receivedAmount);
 						Order order1 = new Order();
 						order1.setId(acc.getSrcId());