zss
7 天以前 9347c9a4a91f9e0b6562fe72a25aa06a76a928e7
src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java
@@ -6,9 +6,6 @@
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.mapper.AccountExpenseMapper;
import com.ruoyi.account.pojo.AccountExpense;
import com.ruoyi.account.service.AccountExpenseService;
import com.ruoyi.basic.mapper.SupplierManageMapper;
import com.ruoyi.basic.pojo.SupplierManage;
import com.ruoyi.common.utils.DateUtils;
@@ -17,18 +14,18 @@
import com.ruoyi.purchase.dto.PaymentHistoryRecordVo;
import com.ruoyi.purchase.dto.PaymentLedgerDto;
import com.ruoyi.purchase.dto.PaymentRegistrationDto;
import com.ruoyi.purchase.mapper.*;
import com.ruoyi.purchase.mapper.PaymentRegistrationMapper;
import com.ruoyi.purchase.mapper.ProductRecordMapper;
import com.ruoyi.purchase.mapper.PurchaseLedgerMapper;
import com.ruoyi.purchase.mapper.TicketRegistrationMapper;
import com.ruoyi.purchase.pojo.PaymentRegistration;
import com.ruoyi.purchase.pojo.ProductRecord;
import com.ruoyi.purchase.pojo.PurchaseLedger;
import com.ruoyi.purchase.pojo.TicketRegistration;
import com.ruoyi.purchase.service.IPaymentRegistrationService;
import com.ruoyi.sales.mapper.SalesLedgerMapper;
import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
import com.ruoyi.sales.pojo.ReceiptPayment;
import com.ruoyi.sales.pojo.SalesLedger;
import com.ruoyi.sales.pojo.SalesLedgerProduct;
import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
@@ -47,23 +44,15 @@
 * @date 2025-05-15
 */
@Service
@AllArgsConstructor
@RequiredArgsConstructor
public class PaymentRegistrationServiceImpl extends ServiceImpl<PaymentRegistrationMapper, PaymentRegistration> implements IPaymentRegistrationService {
    private PaymentRegistrationMapper paymentRegistrationMapper;
    private PurchaseLedgerMapper purchaseLedgerMapper;
    private SalesLedgerMapper salesLedgerMapper;
    private SupplierManageMapper supplierManageMapper;
    private SalesLedgerProductMapper salesLedgerProductMapper;
    private TicketRegistrationMapper ticketRegistrationMapper;
    private ProductRecordMapper productRecordMapper;
    private AccountExpenseService accountExpenseService;
    private final PaymentRegistrationMapper paymentRegistrationMapper;
    private final PurchaseLedgerMapper purchaseLedgerMapper;
    private final SupplierManageMapper supplierManageMapper;
    private final SalesLedgerProductMapper salesLedgerProductMapper;
    private final TicketRegistrationMapper ticketRegistrationMapper;
    private final ProductRecordMapper productRecordMapper;
    /**
     * 查询付款登记
@@ -124,19 +113,6 @@
            salesLedgerProduct.setPendingTicketsTotal(salesLedgerProduct.getTaxInclusiveTotalPrice().subtract(salesLedgerProduct.getTicketsTotal()));
            paymentRegistrationMapper.insert(paymentRegistration);
            salesLedgerProductMapper.updateById(salesLedgerProduct);
            // 2. 处理账户支出
            AccountExpense accountExpense = new AccountExpense();
            accountExpense.setExpenseDate(purchaseLedger.getEntryDate());
            accountExpense.setExpenseType("0");
            accountExpense.setSupplierName(purchaseLedger.getSupplierName());
            accountExpense.setExpenseMoney(paymentRegistration.getCurrentPaymentAmount());
            accountExpense.setExpenseDescribed("付款支出");
            accountExpense.setExpenseMethod("0");
            accountExpense.setBusinessId(paymentRegistration.getId());
            accountExpense.setBusinessType(1);
            accountExpense.setInputTime(new Date());
            accountExpense.setInputUser(userId.getNickName());
            accountExpenseService.save(accountExpense);
        }
        return 1;
@@ -160,16 +136,6 @@
            throw new RuntimeException("付款金额超出待付款金额");
        }
        paymentRegistration.setUpdateTime(DateUtils.getNowDate());
        // 同步修改账户支出
        LambdaQueryWrapper<AccountExpense> accountExpenseLambdaQueryWrapper = new LambdaQueryWrapper<>();
        accountExpenseLambdaQueryWrapper.eq(AccountExpense::getBusinessId, paymentRegistration.getId())
                .eq(AccountExpense::getBusinessType, 1)
                .last("limit 1");
        AccountExpense accountExpense = accountExpenseService.getOne(accountExpenseLambdaQueryWrapper);
        if(null!=accountExpense){
            accountExpense.setExpenseMoney(paymentRegistration.getCurrentPaymentAmount());
            accountExpenseService.updateById(accountExpense);
        }
        // 修改采购产品付款金额
        salesLedgerProduct.setTicketsTotal(salesLedgerProduct.getTicketsTotal().add(subtract));
        salesLedgerProduct.setPendingTicketsTotal(salesLedgerProduct.getTaxInclusiveTotalPrice().subtract(salesLedgerProduct.getTicketsTotal()));
@@ -344,7 +310,6 @@
        List<Long> supplierIds = suppliers.stream()
                .map(SupplierManage::getId) // 先获取Integer类型的ID
                .filter(Objects::nonNull)    // 过滤掉可能的null值
                .map(Integer::longValue)    // 将Integer转换为Long
                .collect(Collectors.toList());
        // 获取当月的开始和结束日期
@@ -476,10 +441,6 @@
    @Override
    public int delPaymentRegistration(List<Long> ids) {
        LambdaQueryWrapper<AccountExpense> accountExpenseLambdaQueryWrapper = new LambdaQueryWrapper<>();
        accountExpenseLambdaQueryWrapper.in(AccountExpense::getBusinessId, ids)
                .eq(AccountExpense::getBusinessType, 1);
        accountExpenseService.remove(accountExpenseLambdaQueryWrapper);
        // 修改采购产品的已付款金额,待付款金额
        List<PaymentRegistration> paymentRegistrations = paymentRegistrationMapper.selectBatchIds(ids);
        for (PaymentRegistration paymentRegistration : paymentRegistrations) {