WarehouseOutManager.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. package com.hys.app.service.erp;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.hys.app.framework.database.BaseQueryParam;
  5. import com.hys.app.framework.database.WebPage;
  6. import com.hys.app.framework.database.mybatisplus.base.BaseService;
  7. import com.hys.app.model.erp.dos.LockedStockDetailDO;
  8. import com.hys.app.model.erp.dos.WarehouseOutDO;
  9. import com.hys.app.model.erp.dto.*;
  10. import com.hys.app.model.erp.enums.WarehouseOutStatusEnum;
  11. import com.hys.app.model.erp.vo.GoodsVO;
  12. import com.hys.app.model.erp.vo.ProductStockVO;
  13. import com.hys.app.model.erp.vo.ProductVO;
  14. import com.hys.app.model.erp.vo.WarehouseOutVO;
  15. import com.hys.app.service.kuaidiniao.entity.PreOrderModel;
  16. import javax.servlet.http.HttpServletResponse;
  17. import java.util.List;
  18. /**
  19. * 出库单业务层接口
  20. *
  21. * @author 张崧
  22. * @since 2023-12-07 16:50:20
  23. */
  24. public interface WarehouseOutManager extends BaseService<WarehouseOutDO> {
  25. /**
  26. * 分页列表
  27. *
  28. * @param queryParams 查询条件
  29. * @return 分页数据
  30. */
  31. WebPage<WarehouseOutVO> list(WarehouseOutQueryParams queryParams);
  32. /**
  33. * 添加
  34. *
  35. * @param warehouseOutDTO
  36. */
  37. Long add(WarehouseOutDTO warehouseOutDTO);
  38. /**
  39. * 编辑
  40. *
  41. * @param warehouseOutDTO
  42. */
  43. void edit(WarehouseOutDTO warehouseOutDTO);
  44. /**
  45. * 查询详情
  46. *
  47. * @param id
  48. * @return
  49. */
  50. WarehouseOutVO getDetail(Long id);
  51. /**
  52. * 删除
  53. *
  54. * @param id
  55. */
  56. void delete(Long id);
  57. /**
  58. * 出库前预览
  59. *
  60. * @param warehouseOutPreviewDTO
  61. * @return
  62. */
  63. WarehouseOutVO preview(WarehouseOutPreviewDTO warehouseOutPreviewDTO);
  64. /**
  65. * 发货
  66. *
  67. * @param shipDTO
  68. */
  69. void ship(WarehouseOutShipDTO shipDTO);
  70. /**
  71. * 查询出库单统计分页列表数据
  72. *
  73. * @param params 查询参数
  74. * @return
  75. */
  76. WebPage statistics(WarehouseOutStatisticsParam params);
  77. /**
  78. * 导出出库单统计列表
  79. *
  80. * @param response
  81. * @param params 查询参数
  82. */
  83. void export(HttpServletResponse response, WarehouseOutStatisticsParam params);
  84. /**
  85. * 根据仓库id查询数量
  86. *
  87. * @param warehouseId
  88. * @return
  89. */
  90. long countByWarehouseId(Long warehouseId);
  91. /**
  92. * 审核
  93. *
  94. * @param ids
  95. * @param status
  96. * @param remark
  97. */
  98. void audit(List<Long> ids, WarehouseOutStatusEnum status, String remark);
  99. /**
  100. * 根据仓库找到所有库存大于0的商品
  101. *
  102. * @param warehouseId 仓库ID
  103. */
  104. IPage<ProductStockVO> getGoodByWarehouse(Long warehouseId, BaseQueryParam queryParam, String orderType, List<Long> warehouseIds,String keyWord);
  105. /**
  106. * 盘点根据仓库找到这个仓库的所有的商品
  107. *
  108. * @param warehouseId
  109. * @param queryParam
  110. * @return
  111. */
  112. IPage<ProductStockVO> getGoodByWarehouseInventory(Long warehouseId, BaseQueryParam queryParam,String keyWord,String type);
  113. /**
  114. * 获取冻结库存
  115. *
  116. * @param queryParam
  117. * @return
  118. */
  119. IPage<LockedStockDetailDO> getLockedStock(LockedStockParams queryParam);
  120. }