StockService.java 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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.wms.entity.stock.dto.StockDto;
  5. import com.fjhx.wms.entity.stock.dto.StockSelectDto;
  6. import com.fjhx.wms.entity.stock.emums.JournalType;
  7. import com.fjhx.wms.entity.stock.po.Stock;
  8. import com.fjhx.wms.entity.stock.vo.StockVo;
  9. import com.ruoyi.common.core.service.BaseService;
  10. import java.util.List;
  11. /**
  12. * <p>
  13. * 库存 服务类
  14. * </p>
  15. *
  16. * @author
  17. * @since 2023-03-20
  18. */
  19. public interface StockService extends BaseService<Stock> {
  20. /**
  21. * 库存查询
  22. */
  23. Page<StockVo> getPage(StockSelectDto dto);
  24. /**
  25. * 维多利亚 按仓库分类分页
  26. */
  27. Page<StockVo> pageByWarehouse(StockSelectDto dto);
  28. /**
  29. * 维多利亚 按产品分类分页
  30. */
  31. Page<StockVo> pageByProduct(StockSelectDto dto);
  32. /**
  33. * 维多利亚 按产品spu分类分页
  34. */
  35. Page<StockVo> pageByProductSpu(StockSelectDto dto);
  36. /**
  37. * 库存明细
  38. */
  39. Stock detail(StockDto dto);
  40. /**
  41. * 手动入库
  42. */
  43. void add(StockDto stockDto);
  44. /**
  45. * 手动出库
  46. */
  47. void edit(StockDto stockDto);
  48. /**
  49. * 库存删除
  50. */
  51. void delete(Long id);
  52. /**
  53. * 良品转次品
  54. */
  55. void qualifiedToDefective(Stock stock);
  56. /**
  57. * 次品转良品
  58. */
  59. void defectiveToQualified(Stock stock);
  60. /**
  61. * 通用出/入库方法
  62. *
  63. * <p>
  64. * 调用时记得加上事务注解
  65. * </P>
  66. *
  67. * @param list 产品改变数量
  68. * @param warehouseId 仓库id
  69. * @param journalType 出/入库类型
  70. * @param businessId 业务id
  71. */
  72. void inOut(List<? extends InOutBo> list, Long warehouseId, JournalType journalType, Long businessId);
  73. void changeStock(List<? extends InOutBo> list, Long warehouseId, JournalType journalType);
  74. }