liyong
2026-05-15 76c84d95506998f546e6f3ebbf70414c0dd9da9d
src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java
@@ -15,20 +15,20 @@
import com.ruoyi.stock.dto.StockUninventoryDto;
import com.ruoyi.stock.execl.StockUnInventoryExportData;
import com.ruoyi.stock.mapper.StockUninventoryMapper;
import com.ruoyi.stock.pojo.StockInventory;
import com.ruoyi.stock.pojo.StockUninventory;
import com.ruoyi.stock.service.StockInRecordService;
import com.ruoyi.stock.service.StockOutRecordService;
import com.ruoyi.stock.service.StockUninventoryService;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import jakarta.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
/**
 * <p>
@@ -39,14 +39,13 @@
 * @since 2026-01-22 10:17:45
 */
@Service
@RequiredArgsConstructor
public class StockUninventoryServiceImpl extends ServiceImpl<StockUninventoryMapper, StockUninventory> implements StockUninventoryService {
    @Autowired
    private StockUninventoryMapper stockUninventoryMapper;
    @Autowired
    private StockOutRecordService stockOutRecordService;
    @Autowired
    private StockInRecordService stockInRecordService;
    private final StockUninventoryMapper stockUninventoryMapper;
    private final StockOutRecordService stockOutRecordService;
    private final StockInRecordService stockInRecordService;
    @Override
    public IPage<StockUninventoryDto> pageStockUninventory(Page page, StockUninventoryDto stockUninventoryDto) {
@@ -64,6 +63,11 @@
        } else {
            wrapper.eq(StockUninventory::getBatchNo, stockUninventoryDto.getBatchNo());
        }
        if (ObjectUtils.isEmpty(stockUninventoryDto.getBatchNo())) {
            String time = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMddHHmm"));
            int suffix = ThreadLocalRandom.current().nextInt(100, 1000);
            stockUninventoryDto.setBatchNo("PY" + time + suffix);
        }
        //新增入库记录再添加库存
        StockInRecordDto stockInRecordDto = new StockInRecordDto();
        stockInRecordDto.setRecordId(stockUninventoryDto.getRecordId());
@@ -71,23 +75,25 @@
        stockInRecordDto.setStockInNum(stockUninventoryDto.getQualitity());
        stockInRecordDto.setBatchNo(stockUninventoryDto.getBatchNo());
        stockInRecordDto.setProductModelId(stockUninventoryDto.getProductModelId());
        stockInRecordDto.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
        stockInRecordDto.setType("1");
        stockInRecordService.add(stockInRecordDto);
        //再进行新增库存数量库存
        //先查询库存表中的产品是否存在,不存在新增,存在更新
        StockUninventory oldStockUnInventory = stockUninventoryMapper.selectOne(wrapper);
        if (ObjectUtils.isEmpty(oldStockUnInventory)) {
            StockUninventory newStockUnInventory = new StockUninventory();
            newStockUnInventory.setProductModelId(stockUninventoryDto.getProductModelId());
            newStockUnInventory.setQualitity(stockUninventoryDto.getQualitity());
            newStockUnInventory.setLockedQuantity(stockUninventoryDto.getLockedQuantity());
            newStockUnInventory.setBatchNo(stockUninventoryDto.getBatchNo());
            newStockUnInventory.setVersion(1);
            newStockUnInventory.setRemark(stockUninventoryDto.getRemark());
            stockUninventoryMapper.insert(newStockUnInventory);
        }else {
            stockUninventoryMapper.updateAddStockUnInventory(stockUninventoryDto);
        }
//        StockUninventory oldStockUnInventory = stockUninventoryMapper.selectOne(wrapper);
//        if (ObjectUtils.isEmpty(oldStockUnInventory)) {
//            StockUninventory newStockUnInventory = new StockUninventory();
//            newStockUnInventory.setProductModelId(stockUninventoryDto.getProductModelId());
//            newStockUnInventory.setQualitity(stockUninventoryDto.getQualitity());
//            newStockUnInventory.setLockedQuantity(stockUninventoryDto.getLockedQuantity());
//            newStockUnInventory.setBatchNo(stockUninventoryDto.getBatchNo());
//            newStockUnInventory.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
//            newStockUnInventory.setVersion(1);
//            newStockUnInventory.setRemark(stockUninventoryDto.getRemark());
//            stockUninventoryMapper.insert(newStockUnInventory);
//        }else {
//            stockUninventoryMapper.updateAddStockUnInventory(stockUninventoryDto);
//        }
        return 1;
    }
@@ -162,6 +168,7 @@
        stockOutRecordDto.setRecordId(stockUninventoryDto.getRecordId());
        stockOutRecordDto.setRecordType(stockUninventoryDto.getRecordType());
        stockOutRecordDto.setStockOutNum(stockUninventoryDto.getQualitity());
        stockOutRecordDto.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
        stockOutRecordDto.setBatchNo(stockUninventoryDto.getBatchNo());
        stockOutRecordDto.setProductModelId(stockUninventoryDto.getProductModelId());
        stockOutRecordDto.setType("1");