|
|
@@ -10,21 +10,17 @@ import com.dk.common.response.ResponseResultUtil;
|
|
|
import com.dk.common.response.ResponseResultVO;
|
|
|
import com.dk.mdm.mapper.ivt.InboundMapper;
|
|
|
import com.dk.mdm.mapper.ivt.OutboundMapper;
|
|
|
-import com.dk.mdm.mapper.mac.AccountItemMapper;
|
|
|
-import com.dk.mdm.mapper.mac.OtherPayableMapper;
|
|
|
-import com.dk.mdm.mapper.mac.OtherReceivableMapper;
|
|
|
+import com.dk.mdm.mapper.mac.*;
|
|
|
import com.dk.mdm.mapper.mst.MoneyAccountItemMapper;
|
|
|
import com.dk.mdm.mapper.mst.MoneyAccountMapper;
|
|
|
+import com.dk.mdm.mapper.sale.OrderMapper;
|
|
|
import com.dk.mdm.model.pojo.ivt.Inbound;
|
|
|
import com.dk.mdm.model.pojo.ivt.Outbound;
|
|
|
-import com.dk.mdm.model.pojo.mac.Account;
|
|
|
-import com.dk.mdm.mapper.mac.AccountMapper;
|
|
|
+import com.dk.mdm.model.pojo.mac.*;
|
|
|
import com.dk.common.service.BaseService;
|
|
|
import com.dk.common.mapper.BaseMapper;
|
|
|
-import com.dk.mdm.model.pojo.mac.AccountItem;
|
|
|
-import com.dk.mdm.model.pojo.mac.OtherPayable;
|
|
|
-import com.dk.mdm.model.pojo.mac.OtherReceivable;
|
|
|
import com.dk.mdm.model.pojo.mst.MoneyAccount;
|
|
|
+import com.dk.mdm.model.pojo.sale.Order;
|
|
|
import com.dk.mdm.model.query.mac.AccountItemQuery;
|
|
|
import com.dk.mdm.model.response.mac.AccountItemResponse;
|
|
|
import com.dk.mdm.model.response.mac.AccountResponse;
|
|
|
@@ -34,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.UUID;
|
|
|
@@ -56,6 +53,9 @@ public class AccountService extends BaseService<Account> {
|
|
|
private AccountMapper accountMapper;
|
|
|
|
|
|
@Autowired
|
|
|
+ private AccountItemService accountItemService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private AccountItemMapper accountItemMapper;
|
|
|
|
|
|
@Autowired
|
|
|
@@ -79,6 +79,21 @@ public class AccountService extends BaseService<Account> {
|
|
|
@Autowired
|
|
|
private OtherPayableMapper otherPayableMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private OrderMapper orderMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private RecPayMapper recPayMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ReceiptService receiptService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private RecPayItemMapper recPayItemMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private RecPayHandleItemMapper recPayHandleItemMapper;
|
|
|
+
|
|
|
/**
|
|
|
* @desc : 查看来源单据,总单加明细
|
|
|
* @author : 姜永辉
|
|
|
@@ -163,7 +178,7 @@ public class AccountService extends BaseService<Account> {
|
|
|
*/
|
|
|
public void updateReceipt(String objectId) {
|
|
|
Account accountForUpdate = accountMapper.selectByIdForUpdate(objectId);
|
|
|
- Map<String, Object> mapSumAmtRecPay = accountItemMapper.getSumAmtRecPay(objectId);
|
|
|
+ Map<String, Object> mapSumAmtRecPay = accountItemMapper.getSumAmtRec(objectId);
|
|
|
BigDecimal sumAmtRec = new BigDecimal(mapSumAmtRecPay.get("sumAmtRec").toString());
|
|
|
// 可退金额 = 总收款额-应收应款额+优惠金额
|
|
|
BigDecimal sumReceiptResidue = sumAmtRec.subtract(accountForUpdate.getReceivableHandle()).add(accountForUpdate.getReceivableWaive());
|
|
|
@@ -180,13 +195,29 @@ public class AccountService extends BaseService<Account> {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * @desc : 更新总帐上收款类字段
|
|
|
+ * @author : 付斌
|
|
|
+ * @date : 2024-03-22 11:08
|
|
|
+ */
|
|
|
+ public void updateReceiptLock(String objectId) {
|
|
|
+ Account accountForUpdate = accountMapper.selectByIdForUpdate(objectId);
|
|
|
+ Map<String, Object> mapSumAmtRecPay = accountItemMapper.getSumAmtRecLock(objectId);
|
|
|
+ BigDecimal sumAmtRecLock = new BigDecimal(mapSumAmtRecPay.get("sumAmtRecLock").toString());
|
|
|
+
|
|
|
+ // 更新账款总表上的收款总额和可用金额
|
|
|
+ Account accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceiptLock(sumAmtRecLock).setObjectId(accountForUpdate.getObjectId());
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* @desc : 更新总帐上付款类字段
|
|
|
* @author : 付斌
|
|
|
* @date : 2024-03-22 11:08
|
|
|
*/
|
|
|
public void updatePayment(String objectId) {
|
|
|
Account accountForUpdate = accountMapper.selectByIdForUpdate(objectId);
|
|
|
- Map<String, Object> mapSumAmtRecPay = accountItemMapper.getSumAmtRecPay(objectId);
|
|
|
+ Map<String, Object> mapSumAmtRecPay = accountItemMapper.getSumAmtPay(objectId);
|
|
|
BigDecimal sumAmtPay = new BigDecimal(mapSumAmtRecPay.get("sumAmtPay").toString());
|
|
|
// 可退金额 = 总收款额-应收应款额+优惠金额
|
|
|
BigDecimal sumPaymentResidue = sumAmtPay.subtract(accountForUpdate.getPayableHandle()).add(accountForUpdate.getPayableWaive());
|
|
|
@@ -311,6 +342,117 @@ public class AccountService extends BaseService<Account> {
|
|
|
LambdaUpdateWrapper<Outbound> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
updateWrapper.set(Outbound::getReceivableId, UUID.fromString(accountItemInsert.getItemId())).eq(Outbound::getOutId, UUID.fromString(invoiceId));
|
|
|
outboundMapper.update(null, updateWrapper);
|
|
|
+
|
|
|
+ // 更新账款总表上的总应收账款和总剩余应收
|
|
|
+ Account accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
+ Account accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivable(accountForUpdate.getReceivable().add(accountItemInsert.getAmtShould()))
|
|
|
+ .setReceivableResidue(accountForUpdate.getReceivableResidue().add(accountItemInsert.getAmtShould()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+
|
|
|
+ // 如果当前出库单对应的订单全部出库了,并且订单有收款(锁定金额),则自动做应收核销
|
|
|
+ // 如果是销售出库
|
|
|
+ if(outbound.getOutType().equals(Constant.OutType.SALE.getName())){
|
|
|
+ Order orderForUpdate = orderMapper.selectByIdForUpdate(outbound.getFromId());
|
|
|
+ // 如果当前订单已经全部出库
|
|
|
+ if(orderForUpdate.getOutQty().compareTo(orderForUpdate.getSumQuantity()) == 0){
|
|
|
+ RecPay recPayForUpdate = recPayMapper.selectByBiznisIdForUpdate(orderForUpdate.getOrderId());
|
|
|
+ if(recPayForUpdate != null && recPayForUpdate.getFlgLock()){
|
|
|
+ // 先把收款单解锁
|
|
|
+ RecPay recPayUpdate = new RecPay();
|
|
|
+ recPayUpdate.setFlgLock(false).setRpId(recPayForUpdate.getRpId());
|
|
|
+ receiptService.updateByUuid(recPayUpdate);
|
|
|
+
|
|
|
+ // 账款明细解锁
|
|
|
+ List<RecPayItem> recPayItemList = recPayItemMapper.selectByZIdForUpdate(recPayForUpdate.getRpId());
|
|
|
+ for (RecPayItem recPayItem : recPayItemList) {
|
|
|
+ AccountItem accountItemUpdate = new AccountItem();
|
|
|
+ accountItemUpdate.setFlgLock(false).setItemId(recPayItem.getAccItemId());
|
|
|
+ accountItemService.updateByUuid(accountItemUpdate);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 钱进到现金池中
|
|
|
+ accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceipt(accountForUpdate.getReceipt().add(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setReceiptResidue(accountForUpdate.getReceiptResidue().add(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setReceiptLock(accountForUpdate.getReceiptLock().subtract(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+
|
|
|
+ List<AccountItemResponse> accountItemResponseList = accountItemMapper.getReceivableAccountItem(
|
|
|
+ new AccountItemQuery().setObjectId(objectId).setOrderId(orderForUpdate.getOrderId()));
|
|
|
+
|
|
|
+ // 锁定金额
|
|
|
+ BigDecimal lockAmt = recPayForUpdate.getSumAmtRec();
|
|
|
+ // 记录核销了哪些应收账
|
|
|
+ List<RecPayHandleItem> receivableList = new ArrayList<>();
|
|
|
+ for (AccountItemResponse accountItemResponse : accountItemResponseList) {
|
|
|
+ RecPayHandleItem recPayHandleItem = new RecPayHandleItem();
|
|
|
+ recPayHandleItem.setRpId(recPayForUpdate.getRpId()).setCpId(recPayForUpdate.getCpId()).setAccDate(recPayForUpdate.getAccDate())
|
|
|
+ .setAccItemId(accountItemResponse.getAccItemId());
|
|
|
+ // 如果定金比应收金额大
|
|
|
+ if(lockAmt.compareTo(accountItemResponse.getAmtResidue()) == 1){
|
|
|
+ recPayHandleItem.setAmtReceivableHandle(accountItemResponse.getAmtResidue());
|
|
|
+ lockAmt = lockAmt.subtract(accountItemResponse.getAmtResidue());
|
|
|
+ }else{
|
|
|
+ recPayHandleItem.setAmtReceivableHandle(lockAmt);
|
|
|
+ lockAmt = BigDecimal.ZERO;
|
|
|
+ }
|
|
|
+ recPayHandleItemMapper.insert(recPayHandleItem);
|
|
|
+ receivableList.add(recPayHandleItem);
|
|
|
+
|
|
|
+ // 账款明细的核销金额和优惠金额
|
|
|
+ AccountItem accountItemForUpdate = accountItemMapper.selectByIdForUpdate(recPayHandleItem.getAccItemId());
|
|
|
+ AccountItem accountItemUpdate = new AccountItem();
|
|
|
+ // 核销金额,超出剩余应收金额
|
|
|
+ if (accountItemForUpdate.getAmtResidue().compareTo(recPayHandleItem.getAmtReceivableHandle()) == -1) {
|
|
|
+ throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.AMT_HANDLE_NO_LESS_AMT_SHOULD.getMessage());
|
|
|
+ }
|
|
|
+ accountItemUpdate.setAmtHandle(accountItemForUpdate.getAmtHandle().add(recPayHandleItem.getAmtReceivableHandle()))
|
|
|
+ .setItemId(recPayHandleItem.getAccItemId());
|
|
|
+ // 剩余金额 = 应收金额-应收收款金额
|
|
|
+ accountItemUpdate.setAmtResidue(accountItemForUpdate.getAmtShould().subtract(accountItemUpdate.getAmtHandle()));
|
|
|
+ accountItemService.updateByUuid(accountItemUpdate);
|
|
|
+
|
|
|
+ // 如果定金都用完了,跳出循环
|
|
|
+ if(lockAmt.compareTo(BigDecimal.ZERO)==0){
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 计算明细的核销金额,优惠金额合计
|
|
|
+ RecPayHandleItem recPayHandleItem = receivableList.stream().reduce((x, y) -> {
|
|
|
+ RecPayHandleItem item = new RecPayHandleItem();
|
|
|
+ item.setAmtReceivableHandle(x.getAmtReceivableHandle().add(y.getAmtReceivableHandle()));
|
|
|
+ return item;
|
|
|
+ }).get();
|
|
|
+
|
|
|
+ // 更新收款单
|
|
|
+ recPayUpdate = new RecPay();
|
|
|
+ recPayUpdate.setSumAmtReceivableHandle(recPayHandleItem.getAmtReceivableHandle())
|
|
|
+ .setSumShouldHandle(recPayHandleItem.getAmtReceivableHandle())
|
|
|
+ .setRpId(recPayForUpdate.getRpId());
|
|
|
+ receiptService.updateByUuid(recPayUpdate);
|
|
|
+
|
|
|
+ // 更新总账上
|
|
|
+ accountForUpdate = accountMapper.selectByIdForUpdate(recPayForUpdate.getObjectId());
|
|
|
+ accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivableHandle(accountForUpdate.getReceivableHandle().add(recPayHandleItem.getAmtReceivableHandle()))// 总应收收款金额
|
|
|
+ .setObjectId(accountForUpdate.getObjectId());
|
|
|
+ // 剩余应收 = 总应收账款-总应收收款金额
|
|
|
+ accountUpdate.setReceivableResidue(accountForUpdate.getReceivable().subtract(accountUpdate.getReceivableHandle()));
|
|
|
+ // 可退金额 = 总收款金额-总应收收款金额+总应收优惠金额
|
|
|
+ accountUpdate.setReceiptResidue(accountForUpdate.getReceipt().subtract(accountUpdate.getReceivableHandle()));
|
|
|
+
|
|
|
+ // 可用金额为负数,则不能保存
|
|
|
+ if (accountUpdate.getReceiptResidue().compareTo(BigDecimal.ZERO) == -1) {
|
|
|
+ throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.MAC_BALANCE_NO_LESS.getMessage());
|
|
|
+ }
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
// 其他收入单
|
|
|
else if ("t_mac_other_receivable".equals(biznisType)) {
|
|
|
@@ -339,15 +481,15 @@ public class AccountService extends BaseService<Account> {
|
|
|
LambdaUpdateWrapper<OtherReceivable> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
updateWrapper.set(OtherReceivable::getAccItemId, UUID.fromString(accountItemInsert.getItemId())).eq(OtherReceivable::getReceivableId, UUID.fromString(invoiceId));
|
|
|
otherReceivableMapper.update(null, updateWrapper);
|
|
|
- }
|
|
|
|
|
|
- // 更新账款总表上的总应收账款和总剩余应收
|
|
|
- Account accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
- Account accountUpdate = new Account();
|
|
|
- accountUpdate.setReceivable(accountForUpdate.getReceivable().add(accountItemInsert.getAmtShould()))
|
|
|
- .setReceivableResidue(accountForUpdate.getReceivableResidue().add(accountItemInsert.getAmtShould()))
|
|
|
- .setObjectId(objectId);
|
|
|
- super.updateByUuid(accountUpdate);
|
|
|
+ // 更新账款总表上的总应收账款和总剩余应收
|
|
|
+ Account accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
+ Account accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivable(accountForUpdate.getReceivable().add(accountItemInsert.getAmtShould()))
|
|
|
+ .setReceivableResidue(accountForUpdate.getReceivableResidue().add(accountItemInsert.getAmtShould()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -370,6 +512,66 @@ public class AccountService extends BaseService<Account> {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.CURRENT_INVOICE_ISREVERSE.getMessage());
|
|
|
}
|
|
|
|
|
|
+ Account accountForUpdate;
|
|
|
+ Account accountUpdate;
|
|
|
+ // 如果当前出库单对应的订单做了应收收款,则自动作废应收核销,并且锁定金额订单收款(锁定金额)
|
|
|
+ // 如果是销售出库
|
|
|
+ if(outbound.getOutType().equals(Constant.OutType.SALE.getName())){
|
|
|
+ RecPay recPayForUpdate = recPayMapper.selectByBiznisIdForUpdate(outbound.getFromId());
|
|
|
+ // 查出并锁定所有应收核销明细
|
|
|
+ List<RecPayHandleItem> recPayHandleItemForUpdateList = recPayHandleItemMapper.selectByZIdForUpdate(recPayForUpdate.getRpId());
|
|
|
+ for (RecPayHandleItem recPayHandleItemForUpdate : recPayHandleItemForUpdateList) {
|
|
|
+ // 更新账款明细应收收款
|
|
|
+ accountItemForUpdate = accountItemMapper.selectByIdForUpdate(recPayHandleItemForUpdate.getAccItemId());
|
|
|
+ AccountItem accountItemUpdate = new AccountItem();
|
|
|
+ accountItemUpdate.setAmtHandle(accountItemForUpdate.getAmtHandle().subtract(recPayHandleItemForUpdate.getAmtReceivableHandle()))
|
|
|
+ .setItemId(recPayHandleItemForUpdate.getAccItemId());
|
|
|
+ accountItemUpdate.setAmtResidue(accountItemForUpdate.getAmtShould().subtract(accountItemUpdate.getAmtHandle()));
|
|
|
+ accountItemService.updateByUuid(accountItemUpdate);
|
|
|
+
|
|
|
+ // 删掉核销明细
|
|
|
+ recPayHandleItemMapper.deleteById(recPayHandleItemForUpdate.getItemId());
|
|
|
+ }
|
|
|
+
|
|
|
+ // 把总帐上的钱加回来
|
|
|
+ accountForUpdate = accountMapper.selectByIdForUpdate(recPayForUpdate.getObjectId());
|
|
|
+ accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivableHandle(accountForUpdate.getReceivableHandle().subtract(recPayForUpdate.getSumAmtReceivableHandle()))// 总应收收款金额
|
|
|
+ .setObjectId(accountForUpdate.getObjectId());
|
|
|
+ // 剩余应收 = 总应收账款-总应收收款金额
|
|
|
+ accountUpdate.setReceivableResidue(accountForUpdate.getReceivable().subtract(accountUpdate.getReceivableHandle()));
|
|
|
+ // 可退金额 = 总收款金额-总应收收款金额+总应收优惠金额
|
|
|
+ accountUpdate.setReceiptResidue(accountForUpdate.getReceipt().subtract(accountUpdate.getReceivableHandle()));
|
|
|
+
|
|
|
+ // 更新前的最后校验
|
|
|
+ // 可用金额为负数,则不能保存
|
|
|
+ if (accountUpdate.getReceiptResidue().compareTo(BigDecimal.ZERO) == -1) {
|
|
|
+ throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.MAC_BALANCE_NO_LESS.getMessage());
|
|
|
+ }
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+
|
|
|
+ // 先把收款单锁定
|
|
|
+ RecPay recPayUpdate = new RecPay();
|
|
|
+ recPayUpdate.setFlgLock(true).setRpId(recPayForUpdate.getRpId());
|
|
|
+ receiptService.updateByUuid(recPayUpdate);
|
|
|
+
|
|
|
+ // 账款明细解锁
|
|
|
+ List<RecPayItem> recPayItemList = recPayItemMapper.selectByZIdForUpdate(recPayForUpdate.getRpId());
|
|
|
+ for (RecPayItem recPayItem : recPayItemList) {
|
|
|
+ AccountItem accountItemUpdate = new AccountItem();
|
|
|
+ accountItemUpdate.setFlgLock(true).setItemId(recPayItem.getAccItemId());
|
|
|
+ accountItemService.updateByUuid(accountItemUpdate);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 钱进到锁定金额中
|
|
|
+ accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceipt(accountForUpdate.getReceipt().subtract(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setReceiptResidue(accountForUpdate.getReceiptResidue().subtract(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setReceiptLock(accountForUpdate.getReceiptLock().add(recPayForUpdate.getSumAmtRec()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+ }
|
|
|
+
|
|
|
accountItemForUpdate = accountItemMapper.selectByIdForUpdate(outbound.getReceivableId());
|
|
|
// 如果核销金额不为0,说明当前单据已核销
|
|
|
if (accountItemForUpdate.getAmtHandle().compareTo(BigDecimal.ZERO) != 0) {
|
|
|
@@ -380,6 +582,17 @@ public class AccountService extends BaseService<Account> {
|
|
|
LambdaUpdateWrapper<Outbound> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
updateWrapper.set(Outbound::getReceivableId, null).eq(Outbound::getOutId, UUID.fromString(invoiceId));
|
|
|
outboundMapper.update(null, updateWrapper);
|
|
|
+
|
|
|
+ // 删除账款明细
|
|
|
+ accountItemMapper.deleteById(accountItemForUpdate.getItemId());
|
|
|
+
|
|
|
+ // 更新账款总表上的总应收账款和总剩余应收
|
|
|
+ accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
+ accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivable(accountForUpdate.getReceivable().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
+ .setReceivableResidue(accountForUpdate.getReceivableResidue().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
}
|
|
|
// 其他收入单
|
|
|
else if ("t_mac_other_receivable".equals(biznisType)) {
|
|
|
@@ -401,18 +614,18 @@ public class AccountService extends BaseService<Account> {
|
|
|
LambdaUpdateWrapper<OtherReceivable> updateWrapper = new LambdaUpdateWrapper<>();
|
|
|
updateWrapper.set(OtherReceivable::getAccItemId, null).eq(OtherReceivable::getReceivableId, UUID.fromString(invoiceId));
|
|
|
otherReceivableMapper.update(null, updateWrapper);
|
|
|
- }
|
|
|
|
|
|
- // 删除账款明细
|
|
|
- accountItemMapper.deleteById(accountItemForUpdate.getItemId());
|
|
|
+ // 删除账款明细
|
|
|
+ accountItemMapper.deleteById(accountItemForUpdate.getItemId());
|
|
|
|
|
|
- // 更新账款总表上的总应收账款和总剩余应收
|
|
|
- Account accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
- Account accountUpdate = new Account();
|
|
|
- accountUpdate.setReceivable(accountForUpdate.getReceivable().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
- .setReceivableResidue(accountForUpdate.getReceivableResidue().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
- .setObjectId(objectId);
|
|
|
- super.updateByUuid(accountUpdate);
|
|
|
+ // 更新账款总表上的总应收账款和总剩余应收
|
|
|
+ Account accountForUpdate = getCusAccountForUpdate(objectId);
|
|
|
+ Account accountUpdate = new Account();
|
|
|
+ accountUpdate.setReceivable(accountForUpdate.getReceivable().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
+ .setReceivableResidue(accountForUpdate.getReceivableResidue().subtract(accountItemForUpdate.getAmtShould()))
|
|
|
+ .setObjectId(objectId);
|
|
|
+ super.updateByUuid(accountUpdate);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|