liyong
2026-04-28 ac79dfd8d661dbe166553ff80fbdbfee64e8134e
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
@@ -7,6 +7,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.basic.dto.ProductModelAnticlockwiseDto;
import com.ruoyi.basic.service.IProductModelService;
import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
import com.ruoyi.framework.web.domain.R;
@@ -85,6 +87,8 @@
    private StockInventoryMapper stockInventoryMapper;
    @Autowired
    private ProductOrderServiceImpl productOrderServiceImpl;
    @Autowired
    private IProductModelService productModelService;
    @Override
    public SalesLedgerProduct selectSalesLedgerProductById(Long id) {
@@ -195,6 +199,16 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public int addOrUpdateSalesLedgerProduct(SalesLedgerProduct salesLedgerProduct) {
        //先查询基础表有没有
        ProductModelAnticlockwiseDto productModelAnticlockwiseDto = new ProductModelAnticlockwiseDto();
        productModelAnticlockwiseDto.setProductName(salesLedgerProduct.getProductCategory());
        productModelAnticlockwiseDto.setModel(salesLedgerProduct.getSpecificationModel());
        productModelAnticlockwiseDto.setUnit(salesLedgerProduct.getUnit());
        productModelAnticlockwiseDto.setSubUnit(salesLedgerProduct.getUnit());
        productModelAnticlockwiseDto.setId(salesLedgerProduct.getId());
        Long l = productModelService.productModelAnticlockwise(productModelAnticlockwiseDto);
        salesLedgerProduct.setProductModelId(l);
        // 待回款,付款
        if (salesLedgerProduct.getType().equals(1)) {
            salesLedgerProduct.setPendingInvoiceTotal(salesLedgerProduct.getTaxInclusiveTotalPrice().subtract(salesLedgerProduct.getInvoiceTotal()));
@@ -266,7 +280,7 @@
        productOrder.setSalesLedgerId(salesLedgerProduct.getSalesLedgerId());
        productOrder.setProductModelId(salesLedgerProduct.getProductModelId());
        productOrder.setSaleLedgerProductId(salesLedgerProduct.getId());
        String string = productOrderServiceImpl.generateNextOrderByContractNo(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd")), salesLedger.getSalesContractNo());
        String string = productOrderServiceImpl.generateNextOrderByContractNo(salesLedger.getSalesContractNo());
        productOrder.setNpsNo(string);
        productOrder.setQuantity(salesLedgerProduct.getQuantity());//需求数量
        productOrder.setCompleteQuantity(BigDecimal.ZERO);//完成数量
@@ -308,7 +322,7 @@
                    productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId());
                    productWorkOrder.setProductOrderId(productOrder.getId());
                    productWorkOrder.setPlanQuantity(salesLedgerProduct.getQuantity());
                    productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder(null, productProcessMap.getOrDefault(productProcessRouteItem.getProcessId(),new ProductProcess()).getName(), productOrder.getNpsNo()));
                    productWorkOrder.setWorkOrderNo(productWorkOrderService.generateProductWorkOrder( productProcessMap.getOrDefault(productProcessRouteItem.getProcessId(),new ProductProcess()).getName(), productOrder.getNpsNo()));
                    productWorkOrder.setStatus(1);
                    productWorkOrderMapper.insert(productWorkOrder);