yaowanxin
38 分钟以前 95ce4948405975fbe1137fdbe6f5c25eb00663db
src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -10,16 +10,16 @@
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.procurementrecord.dto.ProcurementPageDto;
import com.ruoyi.procurementrecord.service.ProcurementRecordService;
import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.SalesLedgerDto;
import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
import com.ruoyi.sales.mapper.ReceiptPaymentMapper;
import com.ruoyi.sales.pojo.InvoiceLedger;
import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
import com.ruoyi.sales.pojo.ReceiptPayment;
import com.ruoyi.sales.pojo.SalesLedger;
import com.ruoyi.sales.pojo.*;
import com.ruoyi.sales.service.ICommonFileService;
import com.ruoyi.sales.service.ISalesLedgerProductService;
import com.ruoyi.sales.service.ISalesLedgerService;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
@@ -32,6 +32,7 @@
import java.util.Collection;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
/**
@@ -57,7 +58,10 @@
    @Autowired
    private ReceiptPaymentMapper receiptPaymentMapper;
    @Autowired
    private ISalesLedgerProductService salesLedgerProductService;
    @Autowired
    private ProcurementRecordService procurementRecordService;
    /**
     * 查询销售台账列表
     */
@@ -267,4 +271,39 @@
        iPage.setTotal(iPage.getRecords().size());
        return iPage;
    }
    /**
     * 销售台账页面发货,查询库存是否充足
     */
    @GetMapping("/getProductInventory")
    public AjaxResult getProductInventory(SalesLedgerProduct salesLedgerProduct){
        List<SalesLedgerProduct> list = salesLedgerProductService.selectSalesLedgerProductList(salesLedgerProduct);
        if(CollectionUtils.isEmpty(list)){
            return AjaxResult.error("该产品不存在");
        }
        List<ProcurementPageDto> procurementPageDtoList = new ArrayList<>();
        list.forEach(item -> {
            ProcurementPageDto procurementDto = new ProcurementPageDto();
            procurementDto.setSalesLedgerProductId(String.valueOf(item.getId()));
            Page<ProcurementPageDto> page = new Page<>(1, 50);
            IPage<ProcurementPageDto> procurementPageDtoIPage = procurementRecordService.listPage(page, procurementDto);
            procurementPageDtoList.addAll(procurementPageDtoIPage.getRecords());
        });
        if(!CollectionUtils.isEmpty(procurementPageDtoList)){
            return AjaxResult.error("该产品库存不存在");
        }
        AtomicInteger num = new AtomicInteger();
        list.forEach(item -> {
            procurementPageDtoList.forEach(procurementPageDto -> {
                if(String.valueOf(item.getId().intValue()).equals(procurementPageDto.getSalesLedgerProductId())){
                    if (item.getQuantity().compareTo(procurementPageDto.getInboundNum0()) <= 0) {
                        num.getAndIncrement();
                    }
                }
            });
        });
        if(num.get() == list.size()){
            return AjaxResult.success("该产品库存充足");
        }
        return AjaxResult.error("该产品库存不足");
    }
}