| | |
| | | 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> |
| | |
| | | * @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) { |
| | |
| | | } 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()); |
| | |
| | | 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; |
| | | } |
| | | |
| | |
| | | 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"); |