GoodsDao.java 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package com.kmall.admin.dao;
  2. import com.kmall.admin.dto.GoodsDetailsDto;
  3. import com.kmall.admin.dto.GoodsPanoramaDto;
  4. import com.kmall.admin.entity.GoodsEntity;
  5. import com.kmall.admin.entity.haikong.StockChangeRecordEntity;
  6. import com.kmall.admin.haikong.vo.QueryGoodsVO;
  7. import com.kmall.api.entity.exportpdf.PDFGoodsDto;
  8. import com.kmall.manager.dao.BaseDao;
  9. import org.apache.ibatis.annotations.Param;
  10. import java.util.List;
  11. import java.util.Map;
  12. import java.util.Set;
  13. /**
  14. * Dao
  15. *
  16. * @author Scott
  17. * @email
  18. * @date 2017-08-21 21:19:49
  19. */
  20. public interface GoodsDao extends BaseDao<GoodsEntity> {
  21. Long queryMaxId();
  22. GoodsEntity queryObjectBySn(String goodsSn);
  23. GoodsEntity queryObjectBySnNew(String goodsSn);
  24. GoodsEntity queryObjectByProdBarcodeAndBizType(@Param("prodBarcode")String prodBarcode, @Param("storeId")Integer storeId);
  25. GoodsEntity queryObjectByProdBarcodeAndStoreId(@Param("prodBarcode")String prodBarcode, @Param("storeId")Integer storeId);
  26. GoodsEntity queryObjectByProdBarcodeAndStore(@Param("prodBarcode")String prodBarcode, @Param("storeId")Integer storeId);
  27. GoodsDetailsDto queryGoodsDetailsByProdBarcode(@Param("prodBarcode") String prodBarcode, @Param("storeId")String storeId, @Param("sku")String sku);
  28. List<GoodsEntity> querySame(Map<String, Object> map);
  29. List<GoodsEntity> queryObjectByProdBarcode(@Param("prodBarcode") String prodBarcode, @Param("merchSn") String merchSn,@Param("goodsId")Long id);
  30. GoodsEntity queryObjectByStoreId(@Param("id") Long id, @Param("storeId") Long storeId);
  31. GoodsEntity queryGoodsByGoodsSnAndStoreId(@Param("goodsSn") String goodsSn, @Param("storeId") Long storeId);
  32. GoodsPanoramaDto searchGoodsPanoramaDtoByKeyword(@Param("keyword") String keyword);
  33. List<GoodsEntity> queryExportList(Map<String, Object> params);
  34. /**
  35. * 查询pdf需要的数据
  36. * @param sku sku
  37. * @param storeId 门店id
  38. * @param prodBarcode
  39. * @return
  40. */
  41. PDFGoodsDto queryForPDFData(@Param("sku") String sku, @Param("storeId") String storeId, @Param("prodBarcode") String prodBarcode);
  42. GoodsEntity queryByBarcode(@Param("barCode") String barCode);
  43. GoodsEntity queryBySku(@Param("sku") String sku);
  44. /**
  45. * 查询所有的sku
  46. * @param prodBarcode
  47. * @param storeId
  48. * @return
  49. */
  50. List<GoodsEntity> queryListByBarcode(@Param("prodBarcode")String prodBarcode, @Param("storeId")Integer storeId, @Param("sku")String sku);
  51. List<GoodsEntity> queryByName(@Param("storeId")String storeId, @Param("goodsName")String goodsName);
  52. List<String> queryNonSyncOmsHsCodeSkuList();
  53. List<GoodsEntity> queryListBySku(String sku);
  54. List<GoodsEntity> queryNonSyncOmsGoodsRateSkuList();
  55. List<GoodsEntity> queryAllList(@Param("page") Integer page, @Param("pageSize") Integer pageSize);
  56. GoodsEntity queryByBarcodeAndSku(@Param("prodBarcode") String prodBarcode, @Param("goodsSn") String goodsSn);
  57. /**
  58. * 查询所有特殊化妆品的商品
  59. * @param hdCodeSet
  60. * @return
  61. */
  62. List<GoodsEntity> querySpecialCosmetics(@Param("hdCodeSet") Set<String> hdCodeSet);
  63. void updateBatch(List<GoodsEntity> updateGoodsList);
  64. List<String> syncOmsHsCodeGoode(List<Integer> ids);
  65. List<GoodsEntity> syncGoodsRateGoode(List<Integer> ids);
  66. List<GoodsDetailsDto> queryGoodsSkuList(@Param("prodBarcode") String prodBarcode, @Param("storeId")String storeId);
  67. /**
  68. * 还原查验单库存
  69. * @param goodsEntities 查验单订单数据
  70. */
  71. int restoreBatch(List<GoodsEntity> goodsEntities);
  72. /**
  73. * 查询库存信息,查询出来的库存是门店的库存
  74. * @param prodBarcode 条码
  75. * @param storeId 门店id
  76. * @param sku sku
  77. * @return sku的信息
  78. */
  79. GoodsEntity queryGoodsStockByBarcodeAndStoreIdAndSku(@Param("prodBarcode") String prodBarcode, @Param("storeId") Integer storeId, @Param("sku") String sku);
  80. /**
  81. * 查询库存及sku的信息,查询出来的库存是门店的库存
  82. *
  83. * @param queryGoodsVOList 查询条件,包含商品条码、sku、门店id
  84. * @return 商品信息
  85. */
  86. List<GoodsEntity> queryGoodsStockByQueryGoodsVoList(List<QueryGoodsVO> queryGoodsVOList);
  87. /**
  88. * 根据产品条码和sku查询保税展示补货的商品
  89. * @param prodBarcode 商品条码
  90. * @param sku sku
  91. * @return 商品信息
  92. */
  93. GoodsEntity queryGoodsInfoByProductBarcodeAndSku(@Param("prodBarcode") String prodBarcode, @Param("sku") String sku);
  94. /**
  95. * 更新商品库存
  96. * @param goodsEntity 商品
  97. * @return
  98. */
  99. int updateStockNumberByProductCodeAndSku(GoodsEntity goodsEntity);
  100. void updateStockNumberByOutbound(List<StockChangeRecordEntity> outboundList);
  101. void updateStockNumberByStorage(List<StockChangeRecordEntity> storageList);
  102. }