Browse Source

2024年9月9日14:46:36

纪新园 1 year ago
parent
commit
0d9b398e08

+ 14 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/order/service/impl/OrderServiceImpl.java

@@ -2799,6 +2799,15 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 
 	@Override
 	public R confirmWarehouse(PjOrder detatil) {
+		List<PjShip> shipList = shipMapper.selectList(new LambdaQueryWrapper<PjShip>()
+			.eq(PjShip::getOrdId, detatil.getId())
+			.eq(PjShip::getTenantId, AuthUtil.getTenantId())
+			.eq(PjShip::getIsDeleted, 0)
+			.eq(PjShip::getBizTypeName, "SHGD")
+			.eq(PjShip::getStatusName, "待入库"));
+		if (!shipList.isEmpty()) {
+			throw new RuntimeException("存在待入库单据,确认到货失败!");
+		}
 		PjOrder order = baseMapper.selectById(detatil.getId());
 		order.setConfirmWarehouse("1");
 		order.setUpdateUserName(AuthUtil.getUserName());
@@ -2854,6 +2863,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				pjpfFunding.setUpdateTime(new Date());
 				pjpfFunding.setUpdateUser(AuthUtil.getUserId());
 				pjpfFunding.setUpdateUserName(AuthUtil.getUserName());
+				pjpfFunding.setAvailableAmount(pjpfFunding.getAvailableAmount().add(primaryBondAmount.subtract(actualBondAmount)));
 				pjpfFundingService.updateById(pjpfFunding);
 			} else {
 				throw new RuntimeException("未找到融资总账信息");
@@ -2921,17 +2931,17 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				BigDecimal actualBondAmount = order.getGoodsTotalShipAmount().multiply(
 					(new BigDecimal(arr[0]).divide(new BigDecimal("10"), MathContext.DECIMAL32)
 						.setScale(2, RoundingMode.HALF_UP)));
-				order.setBondAmount(actualBondAmount);
 				BigDecimal actualFundingAmount = order.getGoodsTotalShipAmount().multiply(
 					(new BigDecimal(arr[1]).divide(new BigDecimal("10"), MathContext.DECIMAL32)
 						.setScale(2, RoundingMode.HALF_UP)));
-				order.setFundingAmount(actualFundingAmount);
 				BigDecimal primaryBondAmount = order.getSalesAmount().multiply(
 					(new BigDecimal(arr[0]).divide(new BigDecimal("10"), MathContext.DECIMAL32)
 						.setScale(2, RoundingMode.HALF_UP)));
+				order.setBondAmount(primaryBondAmount);
 				BigDecimal primaryFundingAmount = order.getSalesAmount().multiply(
 					(new BigDecimal(arr[1]).divide(new BigDecimal("10"), MathContext.DECIMAL32)
 						.setScale(2, RoundingMode.HALF_UP)));
+				order.setFundingAmount(primaryFundingAmount);
 				pjpfFunding.setSurplusFundingAmount(pjpfFunding.getSurplusFundingAmount().subtract(actualFundingAmount).add(primaryFundingAmount));
 				pjpfFunding.setBondAmount(pjpfFunding.getBondAmount().subtract(actualBondAmount).add(primaryBondAmount));
 				pjpfFunding.setPaidAlreadyBondAmount(pjpfFunding.getPaidAlreadyBondAmount().subtract(actualBondAmount).add(primaryBondAmount));
@@ -2941,6 +2951,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
 				pjpfFunding.setUpdateTime(new Date());
 				pjpfFunding.setUpdateUser(AuthUtil.getUserId());
 				pjpfFunding.setUpdateUserName(AuthUtil.getUserName());
+				BigDecimal amount = primaryBondAmount.subtract(actualBondAmount);
+				pjpfFunding.setAvailableAmount(pjpfFunding.getAvailableAmount().subtract(amount));
 				pjpfFundingService.updateById(pjpfFunding);
 			} else {
 				throw new RuntimeException("未找到融资总账信息");

+ 0 - 2
blade-service/blade-sales-part/src/main/java/org/springblade/salesPart/ship/service/impl/ShipServiceImpl.java

@@ -2014,7 +2014,6 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 			String secondProportion = sysClient.getParamService("second.month.proportion");
 			PjpfFunding pjpfFunding = pjpfFundingService.getOne(new LambdaQueryWrapper<PjpfFunding>()
 				.eq(PjpfFunding::getTenantId, AuthUtil.getTenantId())
-				.eq(PjpfFunding::getFundingPartyId, order.getFundingPartyId())
 				.eq(PjpfFunding::getIsDeleted, 0));
 			if (pjpfFunding == null) {
 				throw new RuntimeException("未找到融资总账");
@@ -2619,7 +2618,6 @@ public class ShipServiceImpl extends ServiceImpl<ShipMapper, PjShip> implements
 			String secondProportion = sysClient.getParamService("second.month.proportion");
 			PjpfFunding pjpfFunding = pjpfFundingService.getOne(new LambdaQueryWrapper<PjpfFunding>()
 				.eq(PjpfFunding::getTenantId, AuthUtil.getTenantId())
-				.eq(PjpfFunding::getFundingPartyId, order.getFundingPartyId())
 				.eq(PjpfFunding::getIsDeleted, 0));
 			if (pjpfFunding == null) {
 				throw new RuntimeException("未找到融资总账");