ITWarehouseBillsService.java 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516
  1. package com.ruoyi.warehouseBusiness.service;
  2. import com.ruoyi.common.core.domain.AjaxResult;
  3. import com.ruoyi.common.core.domain.model.LoginUser;
  4. import com.ruoyi.reportManagement.domain.TWareHouseItemsExcel;
  5. import com.ruoyi.reportManagement.dto.TWarehousebill;
  6. import com.ruoyi.system.domain.SysCheckCode;
  7. import com.ruoyi.warehouseBusiness.domain.StorageChargeInsert;
  8. import com.ruoyi.warehouseBusiness.domain.TWareHouseExcelItems;
  9. import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
  10. import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitems;
  11. import com.ruoyi.warehouseBusiness.excel.*;
  12. import org.springframework.web.multipart.MultipartFile;
  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 ITWarehouseBillsService {
  22. /**
  23. * 查询详情主表
  24. *
  25. * @param fId 详情主表ID
  26. * @return 详情主表
  27. */
  28. public Map<String, Object> selectTWarehousebillsById(Long fId);
  29. /**
  30. * 查询凯和订单数据主表
  31. *
  32. * @param fId 详情主表ID
  33. * @return 详情主表
  34. */
  35. public AjaxResult selectTWarehousebills(Long fId);
  36. /**
  37. * 查询导出所需主表列表
  38. *
  39. * @param tWarehousebills 详情主表
  40. * @return 详情主表集合
  41. */
  42. public List<TWarehouseBills> selectTWarehousebillsList(TWarehouseBills tWarehousebills);
  43. /**
  44. * 查询详情主表列表
  45. *
  46. * @param tWarehousebills 详情主表
  47. * @return 详情主表集合
  48. */
  49. public List<Map<String, Object>> selectWarehouseBusinessList(TWarehouseBills tWarehousebills);
  50. /**
  51. * 新增详情主表
  52. *
  53. * @param tWarehouseBills 仓库主表
  54. * @param tWarehousebillsfeesCr 仓库费用付款明细表
  55. * @param tWarehousebillsfeesDr 仓库费用收款明细表
  56. * @param tWarehousebillsitems 仓库货物明细表
  57. * @param loginUser 当前登陆人
  58. * @param billsType 操作状态
  59. * @return 结果
  60. */
  61. public AjaxResult insertTWarehousebills(String tWarehouseBills, String tWarehousebillsfeesCr, String tWarehousebillsfeesDr,
  62. String tWarehousebillsitems, String tEnclosure, LoginUser loginUser, String tCntr, String billsType);
  63. /**
  64. * 新增仓库主(出入库)
  65. *
  66. * @param tWarehousebills 仓库主(出入库)
  67. * @return 结果
  68. */
  69. public int insertTWarehousebills(TWarehouseBills tWarehousebills);
  70. /**
  71. * 凯和订单计划暂存
  72. * @param tWarehousebills 主表信息
  73. * @param tWarehousebillsCntr 从表信息
  74. * @return
  75. */
  76. public AjaxResult TSPlantMessage(String tWarehousebills,String tWarehousebillsCntr,
  77. String billsType,LoginUser loginUser);
  78. /**
  79. * 凯和订单计划提交
  80. * @param tWarehousebills 主表信息
  81. * @param tWarehousebillsCntr 从表信息
  82. * @return
  83. */
  84. public AjaxResult submitPlantMessage(String tWarehousebills,String tWarehousebillsCntr,
  85. String billsType,LoginUser loginUser);
  86. /**
  87. * 凯和订单配船暂存
  88. * @param tWarehousebills 主表信息
  89. * @param tWarehousebillsCntritems 从表信息
  90. * @return
  91. */
  92. public AjaxResult TSMakingMessage(String tWarehousebills,String tWarehousebillsCntritems,
  93. String billsType,LoginUser loginUser);
  94. /**
  95. * 凯和订单配船提交
  96. * @param tWarehousebills 主表信息
  97. * @param tWarehousebillsCntritems 从表信息
  98. * @return
  99. */
  100. public AjaxResult submitMakingMessage(String tWarehousebills,String tWarehousebillsCntritems,
  101. String billsType,LoginUser loginUser);
  102. /**
  103. * 修改详情主表
  104. *
  105. * @param tWarehousebills 详情主表
  106. * @return 结果
  107. */
  108. public int updateTWarehousebills(TWarehouseBills tWarehousebills);
  109. /**
  110. * 批量删除详情主表
  111. *
  112. * @param fIds 需要删除的详情主表ID
  113. * @return 结果
  114. */
  115. public AjaxResult deleteTWarehousebillsByIds(Long[] fIds);
  116. /**
  117. * 批量删除凯和订单主表
  118. *
  119. * @param fIds 需要删除的详情主表ID
  120. * @return 结果
  121. */
  122. public int deleteTWarehousebills(Long[] fIds);
  123. public AjaxResult queryRemove(Long fId);
  124. /**
  125. * 删除详情主表信息
  126. *
  127. * @param fId 详情主表ID
  128. * @return 结果
  129. */
  130. public int deleteTWarehousebillsById(Long fId);
  131. String getWarehouseOutStockBillsNo(TWarehouseBills tWarehouseBills);
  132. /**
  133. * 撤销入出库
  134. *
  135. * @param fId
  136. * @param loginUser
  137. * @param billsType
  138. * @return
  139. */
  140. public AjaxResult revokeTWarehousebillsById(Long fId, LoginUser loginUser, String billsType);
  141. AjaxResult revokeTWarehousebillsById1(String warehouseBills, String warehousebillsitems, String tEnclosure,
  142. String warehousebillsfeesCr, String warehousebillsfeesDr,
  143. LoginUser loginUser, String tCntr, String billsType);
  144. AjaxResult addCredit(String warehouseBills, String warehousebillsitems, String tEnclosure, String warehousebillsfeesCr,
  145. String warehousebillsfeesDr, LoginUser loginUser, String tCntr, String billsType);
  146. /**
  147. * 出库 、调拨、 货转 确认
  148. *
  149. * @param warehouseBills
  150. * @param warehousebillsitems
  151. * @param loginUser
  152. * @param billsType
  153. * @return
  154. */
  155. AjaxResult updateCredit(String warehouseBills, String warehousebillsitems, String tEnclosure, String warehousebillsfeesCr,
  156. String warehousebillsfeesDr, LoginUser loginUser, String tCntr, String billsType);
  157. /**
  158. * 入库 、 出库 修改 从表状态
  159. *
  160. * @param warehouseBills
  161. * @param warehousebillsitems
  162. * @param loginUser
  163. * @param status
  164. * @return
  165. */
  166. AjaxResult waitWarehousing(String warehouseBills, String warehousebillsitems,
  167. String tEnclosure, String tWarehousebillsfeesCr, String tWarehousebillsfeesDr,
  168. LoginUser loginUser, String tCntr, Long status, String billtystatus);
  169. /**
  170. * 计算仓储费
  171. *
  172. * @param tWarehouseBills
  173. * @param loginUser
  174. * @param billsType
  175. * @return
  176. */
  177. AjaxResult calculateStorageFees(TWarehouseBills tWarehouseBills, LoginUser loginUser, String billsType);
  178. /**
  179. * 计算仓储费
  180. *
  181. * @param tWarehouseBillsList
  182. * @param loginUser
  183. * @param billsType
  184. * @return
  185. */
  186. AjaxResult calculateStorageFeesList(List<TWarehouseBills> tWarehouseBillsList, LoginUser loginUser, String billsType);
  187. /**
  188. * 仓储费计算提交以及暂存
  189. *
  190. * @param warehouseBills
  191. * @param warehouseItems
  192. * @param warehouseFees
  193. * @param loginUser
  194. * @param billsType
  195. * @return
  196. */
  197. AjaxResult insertStorageFee(String warehouseBills, String warehouseItems, String warehouseFees, LoginUser loginUser, String billsType);
  198. /**
  199. * 仓储费计算list提交以及暂存
  200. *
  201. * @param storageChargeInsert
  202. * @param loginUser
  203. * @return
  204. */
  205. AjaxResult insertStorageFeeList(List<StorageChargeInsert> storageChargeInsert, LoginUser loginUser, String billsType);
  206. /**
  207. * 根据id 查询仓储费计算明细
  208. *
  209. * @param fId
  210. * @return
  211. */
  212. AjaxResult selectStorageFeeById(Long fId);
  213. /**
  214. * 仓库提交方法
  215. *
  216. * @param tWarehouseBills 仓库主表
  217. * @param tWarehousebillsfeesCr 仓库费用付款明细表
  218. * @param tWarehousebillsfeesDr 仓库费用收款明细表
  219. * @param tWarehousebillsitems 仓库货物明细表
  220. * @param loginUser 当前登陆人
  221. * @param billsType 操作状态
  222. * @return 结果
  223. */
  224. AjaxResult warehouseSubmission(String tWarehouseBills, String tWarehousebillsfeesCr, String tWarehousebillsfeesDr, String tWarehousebillsitems, String tEnclosure, LoginUser loginUser, String tCntr, String billsType);
  225. /**
  226. * 导出计算明细
  227. * @param fId
  228. * @return
  229. */
  230. public List<TWareHouseExcelItems> selectTWarehousebillsItemsList(Long fId);
  231. /**
  232. * 查询出入库汇总列表
  233. *
  234. * @param tWarehouseBills 仓储主表
  235. * * @return 库存总账集合
  236. */
  237. List<Map<String, Object>> selectInventoryList(TWarehouseBills tWarehouseBills);
  238. public List<TWareHouseItemsExcel> selectTWarehousebillsItemsList(TWarehouseBills tWarehouseBills);
  239. AjaxResult serialNumber( String billsType);
  240. public int derecognition(Long fId);
  241. List<Map<String, Object>> selectWareHouseNumber();
  242. /**
  243. * app查询入库数量
  244. */
  245. public List<Map<String, Object>> selectWarehouseBusinessInStockList(TWarehousebillsitems tWarehousebillsitems);
  246. AjaxResult waitWarehousingItems(TWarehousebillsitems tWarehousebillsitems);
  247. AjaxResult addCreditItems(String item , String attachs);
  248. public List<InStock> inStockExport(TWarehouseBills tWarehousebills) throws Exception;
  249. public List<OutStock> outStockExport(TWarehouseBills tWarehousebills) throws Exception;
  250. public List<StockTransfer> stockTransferExport(TWarehouseBills tWarehousebills) throws Exception;
  251. public List<GoodsTransfer> goodsTransferExport(TWarehouseBills tWarehousebills) throws Exception;
  252. public List<StorageFee> storageFeeExport(TWarehouseBills tWarehousebills) throws Exception;
  253. public AjaxResult saveWarehouse(String item, String information);
  254. /**
  255. * 查询提单号是否在一天当中出现多次
  256. * @param tWarehouseBills 仓库数据
  257. * @return 结果
  258. */
  259. public AjaxResult selectContainMblno(String tWarehouseBills, String billsType);
  260. /**
  261. * 凯和网页版查询我的订单
  262. * @param tWarehouseBills
  263. * @return
  264. */
  265. public List<TWarehouseBills> webVersionOrder(TWarehouseBills tWarehouseBills);
  266. /**
  267. * 凯和网页版查询我的订单
  268. * @param tWarehouseBills
  269. * @return
  270. */
  271. public List<TWarehouseBills> webVersionOrderMessage(TWarehouseBills tWarehouseBills);
  272. /**
  273. * 后台管理系统查询订单
  274. * @return
  275. */
  276. public List<Map<String,Object>> ruoYiVersionOrderList(LoginUser loginUser,TWarehouseBills tWarehouseBills);
  277. /**
  278. * 网站查询订单
  279. */
  280. public List<Map<String,Object>> webVersionOrderMessage(LoginUser loginUser,TWarehouseBills tWarehouseBills);
  281. /**
  282. * 根据id获取订单信息
  283. * @param tWarehouseBills
  284. * @return
  285. */
  286. public List<TWarehouseBills> webVersionOrderDetails(TWarehouseBills tWarehouseBills);
  287. /**
  288. * 若依维护订单信息
  289. * @param tWarehousebills
  290. * @param tWarehousebillsCntritems
  291. * @param tWarehousebillsfeesCr
  292. * @param tWarehousebillsfeesDr
  293. * @return
  294. */
  295. public AjaxResult ruoYiUpdateOrderMessage(String tWarehousebills,String tWarehousebillsCntr,String tWarehousebillsCntritems,
  296. String tWarehousebillsfeesCr,String tWarehousebillsfeesDr,LoginUser loginUser,
  297. String billsType);
  298. /**
  299. * 若依维护订单信息
  300. * @param tWarehousebills
  301. * @param tWarehousebillsCntritems
  302. * @param tWarehousebillsfeesCr
  303. * @param tWarehousebillsfeesDr
  304. * @return
  305. */
  306. public AjaxResult ruoYiSubmitMessage(String tWarehousebills,String tWarehousebillsCntr,String tWarehousebillsCntritems,
  307. String tWarehousebillsfeesCr,String tWarehousebillsfeesDr,LoginUser loginUser,
  308. String billsType);
  309. public AjaxResult updateOrderMessage(TWarehouseBills tWarehouseBills);
  310. /**
  311. * app 查询列表信息
  312. * @param warehouseBills
  313. * @return
  314. */
  315. public List<Map<String, Object>> selectAppStockList(TWarehouseBills warehouseBills);
  316. /**
  317. * 根据主表id查询主表对应明细列表数据
  318. * @param warehouseBills
  319. * @return
  320. */
  321. public List<Map<String, Object>> warehouseItemById(TWarehouseBills warehouseBills);
  322. /**
  323. * 根据明细id查询对应明细表数据
  324. * @param fId
  325. * @return
  326. */
  327. public AjaxResult selectWarehouseItemDataById(Long fId);
  328. /**
  329. * 查询app 添加新行 必要的基础资料
  330. * @return
  331. * @param fId
  332. */
  333. public AjaxResult getAppBasicInformation(Long fId);
  334. /**
  335. * app确认入库、出库、货转
  336. * @param item 明细数据
  337. * @param attachs 附件数据
  338. * @return 结果
  339. */
  340. public AjaxResult warehouseOperationConfirmation(String item, String attachs);
  341. /**
  342. * app仓储新行保存业务
  343. * @param item 明细数据
  344. * @param attachs 附件数据
  345. * @return 结果
  346. */
  347. public AjaxResult submitWarehouse(String item, String attachs);
  348. /**
  349. * 查看集港业务
  350. * @param fId 集港id
  351. * @return
  352. */
  353. public AjaxResult selectContainerPort(Long fId);
  354. /**
  355. * 集港业务保存、提交接口
  356. * @param tWarehouseBills 主表业务
  357. * @param feesCr 收费
  358. * @param feesDr 付费
  359. * @return
  360. */
  361. public AjaxResult saveContainerPort(String tWarehouseBills, String feesCr, String feesDr, String type);
  362. /**
  363. * 查询集港业务基础资料
  364. * @return
  365. */
  366. public AjaxResult selectBasicInformation();
  367. /**
  368. * 集港业务撤销
  369. * @param fId 主表id
  370. * @param type
  371. * @return
  372. */
  373. public AjaxResult revokeContainerPort(Long fId, String type);
  374. /**
  375. * 导入Excel生成箱信息
  376. * @param file excel
  377. * @return 结果
  378. */
  379. public AjaxResult importCreateCompanyMsg(MultipartFile file) throws Exception;
  380. /**
  381. * 导入Excel生成箱信息
  382. * @param file excel
  383. * @return 结果
  384. */
  385. public AjaxResult importCreateCompanyMsgNew(MultipartFile file,LoginUser loginUser) throws Exception;
  386. /**
  387. * 提交仓库主表审批
  388. * @param tWarehouseBills 主表信息
  389. * @param tWarehousebillsfeesCr 付款信息
  390. * @param tWarehousebillsfeesDr 收款信息
  391. * @param tWarehousebillsitems 仓储明细
  392. * @param tEnclosure 附件信息
  393. * @param tCntr 箱型箱量
  394. * @param billsType 类型
  395. * @return 结果
  396. */
  397. public AjaxResult submitWarehousingApproval(String tWarehouseBills, String tWarehousebillsfeesCr, String tWarehousebillsfeesDr, String tWarehousebillsitems, String tEnclosure, String tCntr, String billsType);
  398. /**
  399. * 撤销已审核通过的接单入库信息
  400. * @param fId
  401. * @return
  402. */
  403. public AjaxResult withdrawOrdersById(Long fId);
  404. /**
  405. * 查询单据是否允许变更
  406. * @param sysCheckCode
  407. * @return 结果
  408. */
  409. public boolean checkCode(SysCheckCode sysCheckCode);
  410. /**
  411. * 导入【入库明细箱信息】Excel
  412. * @param file 文件
  413. * @return
  414. */
  415. public AjaxResult importLibraryInformation(MultipartFile file);
  416. /**
  417. * 计算出库仓储费
  418. * @param fId
  419. * @return
  420. */
  421. public AjaxResult calculateOutStockFee(Long fId);
  422. /**
  423. * 查询仓储仓管员角色用户
  424. */
  425. public AjaxResult queryClerkRoleList();
  426. /**
  427. * 出入库明细提交审批确认
  428. */
  429. public AjaxResult addDetails(Long fId, String billsType,LoginUser loginUser);
  430. /**
  431. * 新增仓库主(出入库)
  432. *
  433. * @param tWarehousebills 仓库主(出入库)
  434. * @return 结果
  435. */
  436. public AjaxResult getMblno(TWarehouseBills tWarehousebills);
  437. /**
  438. * 凯和商务端订单修改,修改完,删除提交审批
  439. * @param tWarehouseBills 主表信息
  440. * @param loginUser 操作人信息
  441. * @return
  442. */
  443. public AjaxResult orderExamine(TWarehouseBills tWarehouseBills,LoginUser loginUser);
  444. /**
  445. * 凯和商务端运单变更
  446. * @param tWarehousebills
  447. * @param tWarehousebillsCntritems
  448. * @return
  449. */
  450. public AjaxResult waybillChanges(String tWarehousebills,String tWarehousebillsCntr,String tWarehousebillsCntritems,
  451. LoginUser loginUser,
  452. String billsType);
  453. /**
  454. * 复制运单变更前的数据
  455. * @param fId
  456. * @return
  457. */
  458. public AjaxResult copyKhOrderMessage(Long fId);
  459. }