ITWarehouseService.java 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. package com.ruoyi.basicData.service;
  2. import com.ruoyi.basicData.domain.TCorps;
  3. import com.ruoyi.basicData.domain.TWarehouseArea;
  4. import com.ruoyi.common.core.domain.AjaxResult;
  5. import com.ruoyi.common.core.domain.TreeSelect;
  6. import com.ruoyi.common.core.domain.entity.TWarehouse;
  7. import com.ruoyi.common.core.domain.model.LoginUser;
  8. import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
  9. import com.ruoyi.warehouseBusiness.domain.dto.WarehouseSubmitDTO;
  10. import com.ruoyi.warehouseBusiness.domain.vo.WarehouseInfoVO;
  11. import com.ruoyi.warehouseBusiness.request.InventoryQueryRequest;
  12. import com.ruoyi.warehouseBusiness.response.InventoryQueryResponse;
  13. import java.util.List;
  14. import java.util.Map;
  15. /**
  16. * 仓库Service接口
  17. *
  18. * @author ruoyi
  19. * @date 2020-12-11
  20. */
  21. public interface ITWarehouseService {
  22. /**
  23. * 查询仓库
  24. *
  25. * @param fId 仓库ID
  26. * @return 仓库
  27. */
  28. public WarehouseInfoVO selectTWarehouseById(Long fId);
  29. public Map<String, Object> selectTWarehouseById1(Long fId);
  30. /**
  31. * 查询仓库列表
  32. *
  33. * @param tWarehouse 仓库
  34. * @return 仓库集合
  35. */
  36. public List<TWarehouse> selectTWarehouseList(TWarehouse tWarehouse);
  37. public List<TWarehouse> selectTWarehouseLists(TWarehouse tWarehouse);
  38. public List<Map<String, Object>> appGetWarehouseList();
  39. /**
  40. * 新增仓库
  41. *
  42. * @param tWarehouse 仓库
  43. * @return 结果
  44. */
  45. public int insertTWarehouse(TWarehouse tWarehouse);
  46. public AjaxResult insertTWarehouse1(String tWarehouse, String tWarehouseArea, LoginUser loginUser);
  47. /**
  48. * 修改仓库
  49. *
  50. * @param tWarehouse 仓库
  51. * @return 结果
  52. */
  53. public AjaxResult updateTWarehouse(TWarehouse tWarehouse);
  54. public int updateTWarehouses(TWarehouse tWarehouse);
  55. /**
  56. * 批量删除仓库
  57. *
  58. * @param fIds 需要删除的仓库ID
  59. * @return 结果
  60. */
  61. public AjaxResult deleteTWarehouseByIds(Long[] fIds);
  62. /**
  63. * 删除仓库信息
  64. *
  65. * @param fId 仓库ID
  66. * @return 结果
  67. */
  68. public int deleteTWarehouseById(Long fId);
  69. /**
  70. * 检验编号唯一
  71. *
  72. * @return
  73. */
  74. public String checkUFNoUnique(TWarehouse tWarehouse);
  75. /**
  76. * 检验编号名称
  77. *
  78. * @return
  79. */
  80. public String checkUFNnameUnique(TWarehouse tWarehouse);
  81. /**
  82. * 检验编号地址
  83. *
  84. * @return
  85. */
  86. public String checkUFAaddrUnique(TWarehouse tWarehouse);
  87. /**
  88. * 检验编号唯一
  89. *
  90. * @return
  91. */
  92. public String checkUFTWarehouseAreaNoUnique(TWarehouseArea tWarehouseAreas);
  93. /**
  94. * 检验编号名称
  95. *
  96. * @return
  97. */
  98. public String checkUTWarehouseAreaFNnameUnique(TWarehouseArea tWarehouseAreas);
  99. /**
  100. * 根据ID查询所有子部门(正常状态)
  101. *
  102. * @param fId fID
  103. * @return 子部门数
  104. */
  105. public int selectNormalChildrenDeptById(Long fId);
  106. /**
  107. * 构建前端所需要下拉树结构
  108. *
  109. * @param tWarehouses 部门列表
  110. * @return 下拉树结构列表
  111. */
  112. public List<TreeSelect> buildDeptTreeSelect(List<TWarehouse> tWarehouses);
  113. /**
  114. * 构建前端所需要树结构
  115. *
  116. * @param depts 部门列表
  117. * @return 树结构列表
  118. */
  119. public List<TWarehouse> buildDeptTree(List<TWarehouse> depts);
  120. /**
  121. * 检验是否可添加库区
  122. *
  123. * @return
  124. */
  125. public String checkUFAreUnique(TWarehouse tWarehouse);
  126. public String checkNameUnique(TWarehouse tWarehouse);
  127. /**
  128. * 是否存在部门子节点
  129. *
  130. * @param fId 部门ID
  131. * @return 结果
  132. */
  133. public boolean hasChildByfId(Long fId);
  134. /**
  135. * 查询部门是否存在用户
  136. *
  137. * @param deptId 部门ID
  138. * @return 结果 true 存在 false 不存在
  139. */
  140. public boolean checkDeptExistWarehouse(Long deptId);
  141. public boolean checkDeptExistWarehouseItems(Long deptId);
  142. /**
  143. * 新增仓库
  144. *
  145. * @param tWarehouse
  146. * @return
  147. */
  148. AjaxResult warehouseSubmit(WarehouseSubmitDTO tWarehouse);
  149. /**
  150. * 修改仓库
  151. *
  152. * @param tWarehouse
  153. * @return
  154. */
  155. AjaxResult edit(WarehouseSubmitDTO tWarehouse);
  156. /**
  157. * 仓库懒加载列表
  158. *
  159. * @param tWarehouse
  160. * @return
  161. */
  162. List<TWarehouse> lazyList(TWarehouse tWarehouse);
  163. TWarehouse selectByCode(String position);
  164. /**
  165. * 查询货物台账
  166. */
  167. List<Map<String,Object>> queryGoodsAccountByPageV1(String warehouseCode,
  168. String ownerName,
  169. String goodsName,
  170. String specifications,
  171. String producing,
  172. String materialQuality,
  173. String level,
  174. Integer pageNo,
  175. Integer pageSize);
  176. /**
  177. * 查询台账明细
  178. */
  179. List<Map<String,Object>> queryGoodsAccountDetailByPageV1(String warehouseCode,String ownerName,String ownerCode,String goodsName,String specifications,
  180. String producing,String materialQuality,String level, String receiptDoc,String billOfLading,
  181. String areaName,String areaCode,String slotName,String slotCode,Integer pageNo,Integer pageSize);
  182. /**
  183. * 获取仓库详细信息
  184. */
  185. TWarehouse getWareHouseInfo(String wareHouseId);
  186. /**
  187. * 获取最新的库存数据
  188. */
  189. Map<String, Object> getStorageInfo(String wareHouseId);
  190. /**
  191. * 库存吞吐趋势信息
  192. */
  193. List<Map<String, Object>> getTimeStorageInfo(String wareHouseId, String startTime, String endTime);
  194. /**
  195. * 库存吞吐趋势信息
  196. */
  197. List<Map<String, Object>> getTimeThroughputInfo(String wareHouseId, String startTime, String endTime);
  198. /**
  199. * 货物保管信息
  200. */
  201. Map<String, Object> getCargoInfo(String wareHouseId, String startTime, String endTime, String isPledge);
  202. /**
  203. * 货物保管信息
  204. */
  205. List<Map<String, Object>> getGoodsList(String wareHouseId, String startTime, String endTime);
  206. /**
  207. * 仓库保管趋势
  208. */
  209. List<Map<String, Object>> getCargoInfoTrend(String wareHouseId, String startTime, String endTime, String FTradeModeId);
  210. /**
  211. * 获取货物品类top值
  212. */
  213. List<Map<String, Object>> getStorageTop(String wareHouseId, Integer countType, Integer topCnt);
  214. /**
  215. * 获取货主仓库top值
  216. */
  217. List<Map<String, Object>> getGoodsTop(String wareHouseId, Integer countType, Integer topCnt);
  218. /**
  219. * 过户交易信息获取
  220. */
  221. List<Map<String, Object>> getTransferTransaction(String wareHouseId, String startTime, String endTime);
  222. /**
  223. * 最新的作业统计
  224. */
  225. Map<String, Object> getWorkInfo(String wareHouseId, String countType);
  226. /**
  227. * 作业统计趋势数据
  228. */
  229. List<Map<String, Object>> getWorkTrend(String wareHouseId, String startTime, String endTime, String countType);
  230. /**
  231. * 获取仓库详细信息
  232. */
  233. List<InventoryQueryResponse> inventoryQueries(InventoryQueryRequest inventoryQueryRequest);
  234. /**
  235. * 仓单注册指令
  236. */
  237. public int receiptRegister(String ownerName, String identifier, String numbers);
  238. /**
  239. * 客户检验指令
  240. */
  241. public TCorps verification(String name, String identifier);
  242. /**
  243. * 仓单过户指令
  244. */
  245. public int receiptTransfer(TWarehouseBills warehouseBills);
  246. /**
  247. * 仓单解锁指令
  248. */
  249. public int receiptCancel(String ownerName, String identifier, String numbers);
  250. }