ITWarehouseService.java 8.8 KB

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