StockService.java 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package com.fjhx.wms.service.stock;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  3. import com.fjhx.common.entity.InOutBo;
  4. import com.fjhx.common.enums.InOutType;
  5. import com.fjhx.wms.entity.stock.dto.StockDto;
  6. import com.fjhx.wms.entity.stock.dto.StockSelectDto;
  7. import com.fjhx.wms.entity.stock.emums.JournalType;
  8. import com.fjhx.wms.entity.stock.po.Stock;
  9. import com.fjhx.wms.entity.stock.po.StockJournalDetails;
  10. import com.fjhx.wms.entity.stock.vo.StockVo;
  11. import com.ruoyi.common.core.service.BaseService;
  12. import java.math.BigDecimal;
  13. import java.util.List;
  14. /**
  15. * <p>
  16. * 库存 服务类
  17. * </p>
  18. *
  19. * @author
  20. * @since 2023-03-20
  21. */
  22. public interface StockService extends BaseService<Stock> {
  23. /**
  24. * 库存查询
  25. */
  26. Page<StockVo> getPage(StockSelectDto dto);
  27. /**
  28. * 库存明细
  29. */
  30. Stock detail(StockDto dto);
  31. /**
  32. * 手动入库
  33. */
  34. void add(StockDto stockDto);
  35. /**
  36. * 手动出库
  37. */
  38. void edit(StockDto stockDto);
  39. /**
  40. * 库存删除
  41. */
  42. void delete(Long id);
  43. void changeStock(List<? extends InOutBo> list, Long warehouseId, JournalType journalType);
  44. /**
  45. * 计算结存单价(在操作库存之前计算)
  46. */
  47. StockJournalDetails calculateUnitPrice(InOutType inOutType, Long productId, Long warehouseId, BigDecimal inOutQuantity, Integer purchaseArrival, BigDecimal price);
  48. /**
  49. * 库存预警分页
  50. */
  51. Page<StockVo> stockWarningPage(StockSelectDto dto);
  52. }