yaowanxin
3 天以前 23aaf285fd87d4267aaa5e9874461e9d7297ecf1
发货前校验产品库存接口
已修改1个文件
48 ■■■■■ 文件已修改
src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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,6 +58,10 @@
    @Autowired
    private ReceiptPaymentMapper receiptPaymentMapper;
    @Autowired
    private ISalesLedgerProductService salesLedgerProductService;
    @Autowired
    private ProcurementRecordService procurementRecordService;
    /**
     * 查询销售台账列表
@@ -272,4 +277,39 @@
        }
        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("该产品库存不足");
    }
}