TMSController.java 51 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009
  1. package com.steerinfo.dil.controller;
  2. import com.steerinfo.dil.annotaion.LogAround;
  3. import com.steerinfo.dil.annotaion.RequestLimit;
  4. import com.steerinfo.dil.feign.AmsFeign;
  5. import com.steerinfo.dil.feign.RmsFeign;
  6. import com.steerinfo.dil.feign.TmsFeign;
  7. import com.steerinfo.dil.mapper.UniversalMapper;
  8. import com.steerinfo.dil.util.BaseRESTfulController;
  9. import com.steerinfo.dil.util.ExcelToolUtils;
  10. import com.steerinfo.dil.util.Util;
  11. import com.steerinfo.framework.controller.RESTfulResult;
  12. import io.swagger.annotations.ApiImplicitParam;
  13. import io.swagger.annotations.ApiImplicitParams;
  14. import io.swagger.annotations.ApiOperation;
  15. import oracle.jdbc.proxy.annotation.Post;
  16. import org.apache.commons.io.FilenameUtils;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.web.bind.annotation.*;
  19. import org.springframework.web.multipart.MultipartFile;
  20. import java.io.File;
  21. import java.io.FileInputStream;
  22. import java.io.FileOutputStream;
  23. import java.io.OutputStreamWriter;
  24. import java.math.BigDecimal;
  25. import java.text.DateFormat;
  26. import java.text.ParseException;
  27. import java.text.SimpleDateFormat;
  28. import java.util.*;
  29. import java.util.stream.Collectors;
  30. import com.steerinfo.dil.util.DataChange;
  31. import org.springframework.web.multipart.MultipartRequest;
  32. /**
  33. * @author luobang
  34. * @create 2021-09-17 14:11
  35. */
  36. @RestController
  37. @RequestMapping("${api.version}/tms")
  38. public class TMSController extends BaseRESTfulController {
  39. @Autowired
  40. private TmsFeign tmsFeign;
  41. @Autowired
  42. private AmsFeign amsFeign;
  43. @Autowired
  44. private RmsFeign rmsFeign;
  45. @Autowired
  46. private UniversalMapper universalMapper;
  47. @ApiOperation(value = "车辆实绩")
  48. @ApiImplicitParams({
  49. @ApiImplicitParam(name = "map", value = "参数", required = false, dataType = "map"),
  50. @ApiImplicitParam(name = "apiId()", value = "动态表头", required = false, dataType = "Integer"),
  51. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  52. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
  53. })
  54. @PostMapping(value = "/getcomprehensiveresults")
  55. public Map<String, Object> getecomprehensiveresultslist(@RequestBody(required = false) Map<String, Object> map, Integer apiId,
  56. Integer pageNum,
  57. Integer pageSize) {
  58. return tmsFeign.getAmsSalaryContracList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  59. }
  60. @ApiOperation(value = "新增车辆实绩")
  61. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  62. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计算公式"})
  63. @PostMapping("/addcomprehensiveresults")
  64. public Map<String, Object> insertcomprehensiveresults(@RequestBody(required = false) Map<String, Object> map) {
  65. return tmsFeign.addComprehensiveResult(map);
  66. }
  67. @ApiOperation(value = "车辆实绩删除")
  68. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  69. @PutMapping(value = "/comprehensiveresultslogicdelete")
  70. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计算公式"})
  71. public Map<String, Object> comprehensiveresultsLogicDelete(@RequestBody(required = false) Map<String, Object> map) {
  72. return tmsFeign.logicdeleteAmsSaalryContrac(map);
  73. }
  74. @ApiOperation(value = "修改车辆实绩")
  75. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  76. @PostMapping(value = "/comprehensiveresultsupadete")
  77. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计算公式"})
  78. public Map<String, Object> comprehensiveresultsUpdate(@RequestBody(required = false) Map<String, Object> map) {
  79. return tmsFeign.updateAmsSalaryContrac(map);
  80. }
  81. @ApiOperation(value = "修改车辆实绩")
  82. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  83. @PostMapping(value = "/tmscomprehensiveresults/batchUpdate")
  84. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计算公式"})
  85. public Map<String, Object> tmscomprehensiveresultsBatchUpdate(@RequestBody(required = false) Map<String, Object> map) {
  86. return tmsFeign.tmscomprehensiveresultsBatchUpdate((List)map.get("list"));
  87. }
  88. @ApiOperation(value = "派发运输订单")
  89. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  90. @PostMapping(value = "/dispatchOrder")
  91. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  92. public Map<String, Object> dispatchOrder(@RequestBody(required = false) Map<String, Object> map) {
  93. return tmsFeign.dispatchOrder(map);
  94. }
  95. @ApiOperation(value = "批量派发运输订单")
  96. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  97. @PostMapping(value = "/batchDispatch")
  98. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  99. public Map<String, Object> batchDispatch(@RequestBody(required = false) Map<String, Object> map) {
  100. return tmsFeign.batchDispatch(map);
  101. }
  102. @ApiOperation(value = "批量派发运输订单")
  103. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  104. @PostMapping(value = "/batchDispatchSc")
  105. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  106. public Map<String, Object> batchDispatchSc(@RequestBody(required = false) Map<String, Object> map) {
  107. return tmsFeign.batchDispatchSc(map);
  108. }
  109. @ApiOperation(value = "修改运输订单")
  110. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  111. @PostMapping(value = "/updateTransOrder")
  112. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  113. public Map<String, Object> updateTransOrder(@RequestBody(required = false) Map<String, Object> map) {
  114. return tmsFeign.updateTransOrder(map);
  115. }
  116. @ApiOperation(value = "合并运输订单")
  117. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  118. @PostMapping(value = "/mergeTransOrder")
  119. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  120. public Map<String, Object> mergeTransOrder(@RequestBody(required = false) Map<String, Object> map) {
  121. return tmsFeign.mergeTransOrder(map);
  122. }
  123. @ApiOperation(value = "更改运输订单状态")
  124. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  125. @PostMapping(value = "/changeTransOrder")
  126. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  127. public Map<String, Object> changeTransOrder(@RequestBody(required = false) Map<String, Object> map) {
  128. return tmsFeign.changeTransOrder(map);
  129. }
  130. @ApiOperation(value = "司机接收运单")
  131. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  132. @PostMapping(value = "/receiptOrder")
  133. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  134. public Map<String, Object> receiptOrder(@RequestBody(required = false) Map<String, Object> map) {
  135. return tmsFeign.receiptOrder(map);
  136. }
  137. @ApiOperation(value = "查询运输订单")
  138. @PostMapping("/getTransOrderList")
  139. public Map<String, Object> getTransOrderList(@RequestBody(required = false) Map<String, Object> map,
  140. Integer apiId,
  141. Integer pageNum,
  142. Integer pageSize) {
  143. return tmsFeign.getTransOrderList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  144. }
  145. @ApiOperation(value = "查询运输订单所有运输实绩")
  146. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  147. @PostMapping(value = "/getTransResult")
  148. public Map<String, Object> getTransResult(@RequestBody(required = false) Map<String, Object> map) {
  149. return tmsFeign.getTransResult(map);
  150. }
  151. @ApiOperation(value = "同步进厂")
  152. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  153. @PostMapping(value = "/syncEnfactoryResult")
  154. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"进厂实绩"})
  155. public Map<String, Object> syncEnfactoryResult(@RequestBody(required = false) Map<String, Object> map) {
  156. return tmsFeign.syncEnfactoryResult(map);
  157. }
  158. @ApiOperation(value = "同步出厂")
  159. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  160. @PostMapping(value = "/syncOutfactoryResult")
  161. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"出厂实绩"})
  162. public Map<String, Object> syncOutfactoryResult(@RequestBody(required = false) Map<String, Object> map) {
  163. return tmsFeign.syncOutfactoryResult(map);
  164. }
  165. @ApiOperation(value = "同步计量")
  166. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  167. @PostMapping(value = "/syncWeightResult")
  168. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计量实绩"})
  169. public Map<String, Object> syncWeightResult(@RequestBody(required = false) Map<String, Object> map) {
  170. return tmsFeign.syncWeightResult(map);
  171. }
  172. @ApiOperation(value="计时")
  173. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  174. @PostMapping(value = "/startend")
  175. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计时"})
  176. public Map<String, Object> start(@RequestBody(required = false) Map<String, Object> map) {
  177. return tmsFeign.startend(map);
  178. }
  179. @ApiOperation(value="计时")
  180. @PostMapping(value = "/updCountResult")
  181. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"计次"})
  182. public Map<String, Object> updCountResult(@RequestBody(required = false) Map<String, Object> map) {
  183. return tmsFeign.updCountResult(map);
  184. }
  185. @ApiOperation(value = "查询计时")
  186. @PostMapping("/tmstimingresultsList")
  187. public Map<String, Object> tmstimingresultsList(@RequestBody(required = false) Map<String, Object> map,
  188. Integer apiId,
  189. Integer pageNum,
  190. Integer pageSize) {
  191. return tmsFeign.tmstimingresultsList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  192. }
  193. @ApiOperation(value = "修改计时")
  194. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  195. @PostMapping(value = "/tmstimingresultsUpdate")
  196. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"修改计时"})
  197. public Map<String, Object> tmstimingresultsUpdate(@RequestBody(required = false) Map<String, Object> map) {
  198. return tmsFeign.tmstimingresultsUpdate(map);
  199. }
  200. @ApiOperation(value = "销售派发运输订单")
  201. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  202. @PostMapping(value = "/saleDispatchOrder")
  203. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  204. public Map<String, Object> saleDispatchOrder(@RequestBody(required = false) Map<String, Object> map) {
  205. return tmsFeign.saleDispatchOrder(map);
  206. }
  207. @ApiOperation(value = "批量销售派发运输订单")
  208. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  209. @PostMapping(value = "/saleDispatchOrderList")
  210. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"运输订单"})
  211. public Map<String, Object> saleDispatchOrderList(@RequestBody(required = false) Map<String, Object> map) {
  212. return tmsFeign.saleDispatchOrderList(map);
  213. }
  214. @ApiOperation(value = "查询销售运输订单")
  215. @PostMapping("/getSaleTransOrderList")
  216. public Map<String, Object> getSaleTransOrderList(@RequestBody(required = false) Map<String, Object> map,
  217. Integer apiId,
  218. Integer pageNum,
  219. Integer pageSize) {
  220. return tmsFeign.getSaleTransOrderList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  221. }
  222. @ApiOperation(value = "同步质检")
  223. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  224. @PostMapping(value = "/syncQualityResult")
  225. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"质检实绩"})
  226. public Map<String, Object> syncQualityResult(@RequestBody(required = false) Map<String, Object> map) {
  227. return tmsFeign.syncQualityResult(map);
  228. }
  229. @ApiOperation(value = "签到")
  230. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  231. @PostMapping(value = "/signIn")
  232. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"签到实绩"})
  233. public Map<String, Object> signIn(@RequestBody(required = false) Map<String, Object> map) {
  234. return tmsFeign.signIn(map);
  235. }
  236. @ApiOperation(value = "换车头")
  237. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  238. @PostMapping(value = "/replaceFront")
  239. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"换车头实绩"})
  240. public Map<String, Object> replaceFront(@RequestBody(required = false) Map<String, Object> map) {
  241. return tmsFeign.replaceFront(map);
  242. }
  243. @ApiOperation(value = "装货")
  244. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  245. @PostMapping(value = "/load")
  246. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"装货实绩"})
  247. public Map<String, Object> load(@RequestBody(required = false) Map<String, Object> map) {
  248. return tmsFeign.load(map);
  249. }
  250. @ApiOperation(value = "装货修改")
  251. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  252. @PostMapping(value = "/loadUpd")
  253. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"装货实绩"})
  254. public Map<String, Object> loadUpd(@RequestBody(required = false) Map<String, Object> map) {
  255. return tmsFeign.loadUpd(map);
  256. }
  257. @ApiOperation(value = "卸货")
  258. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  259. @PostMapping(value = "/unload")
  260. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"卸货实绩"})
  261. public Map<String, Object> unload(@RequestBody(required = false) Map<String, Object> map) {
  262. return tmsFeign.unload(map);
  263. }
  264. @ApiOperation(value = "卸货修改")
  265. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  266. @PostMapping(value = "/unloadUpd")
  267. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"卸货实绩"})
  268. public Map<String, Object> unloadUpd(@RequestBody(required = false) Map<String, Object> map) {
  269. return tmsFeign.unloadUpd(map);
  270. }
  271. @ApiOperation(value = "抵达")
  272. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  273. @PostMapping(value = "/arrival")
  274. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"抵达实绩"})
  275. public Map<String, Object> arrival(@RequestBody(required = false) Map<String, Object> map) {
  276. return tmsFeign.arrival(map);
  277. }
  278. @ApiOperation(value = "签收")
  279. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  280. @PostMapping(value = "/receipt")
  281. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"签收实绩"})
  282. public Map<String, Object> receipt(@RequestBody(required = false) Map<String, Object> map) {
  283. return tmsFeign.receipt(map);
  284. }
  285. @ApiOperation(value = "查询厂内车辆数")
  286. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  287. @PostMapping(value = "/getCountEnfactory")
  288. public Map<String, Object> getCountEnfactory(@RequestBody(required = false) Map<String, Object> map) {
  289. return tmsFeign.getCountEnfactory(map == null ? new HashMap<>() : map);
  290. }
  291. @ApiOperation(value = "查询签到")
  292. @PostMapping("/getSignInResultList")
  293. public Map<String, Object> getSignInResultList(@RequestBody(required = false) Map<String, Object> map,
  294. Integer apiId,
  295. Integer pageNum,
  296. Integer pageSize) {
  297. return tmsFeign.getSignInResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  298. }
  299. @ApiOperation(value = "查询换车头")
  300. @PostMapping("/getReplaceFrontResultList")
  301. public Map<String, Object> getReplaceFrontResultList(@RequestBody(required = false) Map<String, Object> map,
  302. Integer apiId,
  303. Integer pageNum,
  304. Integer pageSize) {
  305. return tmsFeign.getReplaceFrontResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  306. }
  307. @ApiOperation(value = "查询进厂")
  308. @PostMapping("/getEnfactoryResultList")
  309. public Map<String, Object> getEnfactoryResultList(@RequestBody(required = false) Map<String, Object> map,
  310. Integer apiId,
  311. Integer pageNum,
  312. Integer pageSize) {
  313. return tmsFeign.getEnfactoryResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  314. }
  315. @ApiOperation(value = "查询出厂")
  316. @PostMapping("/getOutfactoryResultList")
  317. public Map<String, Object> getTmsOutfactoryResultList
  318. (@RequestBody(required = false) Map<String, Object> map,
  319. Integer apiId,
  320. Integer pageNum,
  321. Integer pageSize) {
  322. return tmsFeign.getOutfactoryResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  323. }
  324. @ApiOperation(value = "查询装货")
  325. @PostMapping("/getLoadResultList")
  326. public Map<String, Object> getLoadResultList(@RequestBody(required = false) Map<String, Object> map,
  327. Integer apiId,
  328. Integer pageNum,
  329. Integer pageSize) {
  330. return tmsFeign.getLoadResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  331. }
  332. @ApiOperation(value = "查询卸货")
  333. @PostMapping("/getUnloadResultList")
  334. public Map<String, Object> getUnloadResultList(@RequestBody(required = false) Map<String, Object> map,
  335. Integer apiId,
  336. Integer pageNum,
  337. Integer pageSize) {
  338. return tmsFeign.getUnloadResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  339. }
  340. @ApiOperation(value = "查询计量")
  341. @PostMapping("/getWeightResultList")
  342. public Map<String, Object> getWeightResultList(@RequestBody(required = false) Map<String, Object> map,
  343. Integer apiId,
  344. Integer pageNum,
  345. Integer pageSize) {
  346. return tmsFeign.getWeightResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  347. }
  348. @ApiOperation(value = "查询质检")
  349. @PostMapping("/getQualityResultList")
  350. public Map<String, Object> getQualityResult(@RequestBody(required = false) Map<String, Object> map,
  351. Integer apiId,
  352. Integer pageNum,
  353. Integer pageSize) {
  354. return tmsFeign.getQualityResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  355. }
  356. @ApiOperation(value = "查询抵达")
  357. @PostMapping("/getArrivalResultList")
  358. public Map<String, Object> getArrivalResultList(@RequestBody(required = false) Map<String, Object> map,
  359. Integer apiId,
  360. Integer pageNum,
  361. Integer pageSize) {
  362. return tmsFeign.getArrivalResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  363. }
  364. @ApiOperation(value = "查询签收")
  365. @PostMapping("/getReceiptResultList")
  366. public Map<String, Object> getReceiptResultList(@RequestBody(required = false) Map<String, Object> map,
  367. Integer apiId,
  368. Integer pageNum,
  369. Integer pageSize) {
  370. return tmsFeign.getReceiptResultList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  371. }
  372. @ApiOperation(value = "采购火运装货作业")
  373. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  374. @PostMapping(value = "/purchaseTrainLoad")
  375. // @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"装货实绩"})
  376. public Map<String, Object> purchaseTrainLoad(@RequestBody MultipartFile file,
  377. String businessType,
  378. String userId,
  379. String userName) throws Exception {
  380. Map<String, Object> map = new HashMap<>();
  381. //获取Excel中包含的对象数组
  382. List<Map<String, Object>> list = ExcelToolUtils.getExcelList(file, 0);
  383. map.put("list", list);
  384. //统计通知单的重量车数和车牌号
  385. Set<String> capacitySet = new HashSet<>();//车牌号
  386. List<String> requirementList = new ArrayList<>();
  387. String loadDate = null;
  388. for (Map<String, Object> item : list) {
  389. //校验行
  390. if(item.get("通知单号")==null || item.get("通知单号").equals("")
  391. || item.get("车号")==null || item.get("车号").equals("")
  392. || item.get("发站")==null || item.get("发站").equals("")
  393. || item.get("到站")==null || item.get("到站").equals("")
  394. || item.get("装车日期")==null || item.get("装车日期").equals("")){
  395. throw new Exception("单元格数据异常(通知单号/车号/装车日期/发站/到站),请检查模板或数据是否正确!");
  396. }
  397. BigDecimal tareWeight = DataChange.dataToBigDecimal(item.get("皮重"));
  398. BigDecimal grossWeight = DataChange.dataToBigDecimal(item.get("毛重"));
  399. BigDecimal netWeight = DataChange.dataToBigDecimal(item.get("净重"));
  400. if(tareWeight.compareTo(BigDecimal.ZERO) > 0 && grossWeight.compareTo(BigDecimal.ZERO) > 0){
  401. item.put("净重", grossWeight.subtract(tareWeight));
  402. }else if(netWeight.compareTo(BigDecimal.ZERO) > 0){
  403. item.put("净重", netWeight);
  404. }else {
  405. throw new Exception("单元格数据异常:净重/皮重/毛重,请检查模板或数据是否正确!");
  406. }
  407. //通知单统计
  408. String requirementNumber = item.get("通知单号").toString();
  409. if (map.get(requirementNumber) != null) {
  410. //已存在,修改
  411. Map<String,Object> requirementMap =(Map<String, Object>) map.get(requirementNumber);
  412. BigDecimal weight = DataChange.dataToBigDecimal(requirementMap.get("weight"));
  413. BigDecimal truckNumber = DataChange.dataToBigDecimal(requirementMap.get("truckNumber"));
  414. String loadTime = requirementMap.get("loadTime").toString();
  415. List<Map<String,Object>> trainList = (ArrayList) requirementMap.get("trainList");
  416. weight = weight.add(DataChange.dataToBigDecimal(item.get("净重")));
  417. truckNumber = truckNumber.add(new BigDecimal(1));
  418. trainList.add(item);
  419. requirementMap.put("weight", weight);
  420. requirementMap.put("truckNumber", truckNumber);
  421. requirementMap.put("trainList",trainList);
  422. if(!loadTime.equals(item.get("装车日期").toString())){
  423. throw new Exception("同一个Excel只允许一批车辆,请检查装车日期!");
  424. }
  425. } else {
  426. //不存在,新增
  427. Map<String,Object> requirementMap = new HashMap<>();
  428. List<Map<String,Object>> trainList = new ArrayList<>();
  429. trainList.add(item);
  430. BigDecimal weight = DataChange.dataToBigDecimal(item.get("净重"));
  431. BigDecimal truckNumber = new BigDecimal(1);
  432. String loadTime = item.get("装车日期").toString();
  433. if(loadDate == null){
  434. loadDate = loadTime;
  435. map.put("loadDate",loadDate);
  436. }else if(!loadDate.equals(loadTime)){
  437. throw new Exception("同一个Excel只允许一批车辆,请检查装车日期!");
  438. }
  439. requirementMap.put("requirementNumber", requirementNumber);
  440. requirementMap.put("weight", weight);
  441. requirementMap.put("truckNumber", truckNumber);
  442. requirementMap.put("loadTime",loadTime);
  443. requirementMap.put("trainList",trainList);
  444. requirementMap.put("userId",userId);
  445. requirementMap.put("userName",userName);
  446. requirementMap.put("businessType",businessType);
  447. requirementList.add(requirementNumber);
  448. map.put(requirementNumber, requirementMap);
  449. }
  450. //车牌号去重
  451. capacitySet.add(item.get("车号").toString());
  452. }
  453. //校验当前excel是否已经导入过
  454. if (universalMapper.countTrainLoad(map) > 0) {
  455. throw new Exception("存在重复的装车信息!不允许重复导入!");
  456. }
  457. //新增火车运力资源
  458. String[] capacities = capacitySet.toArray(new String[0]);//车牌号
  459. try{
  460. new Runnable() {
  461. @Override
  462. public void run() {
  463. Map<String, Object> capacityMap = new HashMap<>();
  464. capacityMap.put("capacities", capacities);
  465. capacityMap.put("userId", userId);
  466. capacityMap.put("userName", userName);
  467. rmsFeign.batchInsertCapacityTrain(capacityMap);
  468. }
  469. }.run();
  470. }catch (Exception e){e.printStackTrace();}
  471. //新增AMS及TMS
  472. map.put("userId",userId);
  473. map.put("userName",userName);
  474. map.put("businessType",businessType);
  475. map.put("requirementList",requirementList);
  476. return tmsFeign.purchaseTrainLoad(map);
  477. }
  478. @ApiOperation(value = "查询采购火运装货")
  479. @PostMapping("/purchaseTrainLoadList")
  480. public Map<String, Object> purchaseTrainLoadList(@RequestBody(required = false) Map<String, Object> map,
  481. Integer apiId,
  482. Integer pageNum,
  483. Integer pageSize) {
  484. return tmsFeign.purchaseTrainLoadList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  485. }
  486. @ApiOperation(value = "查询采购火运装货报表")
  487. @PostMapping("/purchaseTrainLoadReport")
  488. public Map<String, Object> purchaseTrainLoadReport(@RequestBody(required = false) Map<String, Object> map,
  489. Integer apiId,
  490. Integer pageNum,
  491. Integer pageSize) {
  492. return tmsFeign.purchaseTrainLoadReport(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  493. }
  494. @ApiOperation(value = "修改火运装车")
  495. @PostMapping("/updateTrainLoad")
  496. public Map<String, Object> updateTrainLoad(@RequestBody(required = false) Map<String, Object> map){
  497. return tmsFeign.updateTrainLoad(map);
  498. }
  499. @ApiOperation(value = "删除火运装车", notes = "删除火运装车")
  500. @PostMapping(value = "/deleteTrainLoad")
  501. @LogAround(foreignKeys = {"transOrderId"},foreignKeyTypes = {"运输订单"})
  502. public Map<String, Object> deleteTrainLoad(@RequestBody(required = false) Map<String ,Object> map) {
  503. return tmsFeign.deleteTrainLoad(map);
  504. }
  505. @ApiOperation(value = "修改火运装车序号")
  506. @PostMapping("/updateTrainLoadSeq")
  507. public Map<String, Object> updateTrainLoadSeq(@RequestBody(required = false) Map<String, Object> map){
  508. return tmsFeign.updateTrainLoadSeq(map);
  509. }
  510. @ApiOperation(value = "采购火运计量作业")
  511. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  512. @PostMapping(value = "/purchaseTrainWeight")
  513. // @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"计量实绩"})
  514. public Map<String, Object> purchaseTrainWeight(@RequestBody MultipartFile file,
  515. String businessType,
  516. String userId,
  517. String userName) throws Exception {
  518. Map<String, Object> map = new HashMap<>();
  519. //获取Excel中包含的对象数组
  520. List<Map<String, Object>> list = ExcelToolUtils.getExcelList(file, 0);
  521. map.put("list", list);
  522. Set<String> capacitySet = new HashSet<>();//车牌号
  523. String weightTime = null;
  524. for (Map<String, Object> item : list) {
  525. //校验行
  526. if(item.get("通知单号")==null || item.get("通知单号").equals("")
  527. || item.get("车号")==null || item.get("车号").equals("")
  528. || item.get("计量日期")==null || item.get("计量日期").equals("")
  529. || item.get("皮重")==null || item.get("皮重").equals("")
  530. || item.get("毛重")==null || item.get("毛重").equals("")
  531. || item.get("磅单号")==null || item.get("磅单号").equals("")){
  532. throw new Exception("单元格数据异常(通知单号/车号/计量日期/净重/皮重/毛重/磅单号),请检查模板或数据是否正确!");
  533. }
  534. item.put("净重", DataChange.dataToBigDecimal(item.get("毛重")).subtract(DataChange.dataToBigDecimal(item.get("皮重"))));
  535. //校验数据
  536. // if(weightTime == null){
  537. // weightTime = item.get("计量日期").toString();
  538. // }else if(!weightTime.equals(item.get("计量日期").toString())){
  539. // throw new Exception("同一个Excel只允许一批车辆,请检查计量日期!");
  540. // }
  541. //车牌号去重
  542. capacitySet.add(item.get("车号").toString());
  543. }
  544. String[] capacities = capacitySet.toArray(new String[0]);//车牌号
  545. if (capacities.length != list.size()) {
  546. throw new Exception("车号不允许重复!");
  547. }
  548. map.put("userId",userId);
  549. map.put("userName",userName);
  550. map.put("businessType",businessType);
  551. //获取火车运单及计量详情
  552. List<Map<String,Object>> orderListAll = universalMapper.findTrainWeight(map);
  553. if (orderListAll.size() <= 0) {
  554. throw new Exception("未查询到装车信息,请先上传装车作业!");
  555. }
  556. List<String> requireList = new ArrayList<>();
  557. for(Map<String,Object> order : orderListAll){
  558. if(order.get("unloadResultId") != null){
  559. throw new Exception(order.get("capacityId")+"已卸车,不允许再上传计量!");
  560. }
  561. String requireNumber = order.get("requireNumber").toString();
  562. Map<String,Object> requirementMap =(Map<String, Object>) map.get(requireNumber);
  563. if(requirementMap!=null){
  564. List<Map<String,Object>> orderList = (ArrayList) requirementMap.get("orderList");
  565. orderList.add(order);
  566. BigDecimal weight = DataChange.dataToBigDecimal(requirementMap.get("weight"));
  567. requirementMap.put("weight",weight.add(DataChange.dataToBigDecimal(order.get("netWeight"))));
  568. requirementMap.put("orderList",orderList);
  569. }else{
  570. requirementMap = new HashMap<>();
  571. List<Map<String,Object>> orderList = new ArrayList<>();
  572. orderList.add(order);
  573. BigDecimal weight = DataChange.dataToBigDecimal(order.get("netWeight"));
  574. requirementMap.put("transPlanId",order.get("transPlanId"));
  575. requirementMap.put("materialId",order.get("materialId"));
  576. requirementMap.put("weight",weight);
  577. requirementMap.put("weightTime",weightTime);
  578. requirementMap.put("userId",userId);
  579. requirementMap.put("userName",userName);
  580. requirementMap.put("orderList",orderList);
  581. requireList.add(requireNumber);
  582. }
  583. map.put(requireNumber,requirementMap);
  584. }
  585. Map<String,Object> result = null;
  586. for(String requireNumber : requireList){
  587. Map<String,Object> requirementMap =(Map<String, Object>) map.get(requireNumber);
  588. List<Map<String,Object>> orderList = (ArrayList) requirementMap.get("orderList");
  589. if(universalMapper.countTransOrder(requirementMap) != orderList.size()){
  590. throw new Exception("计量车数与装车车数不一致!");
  591. }
  592. result = tmsFeign.purchaseTrainWeight(requirementMap);
  593. if (!"succeed".equals(result.get("status"))) {
  594. throw new Exception("计量上传失败:" + result.get("message"));
  595. }
  596. }
  597. return result;
  598. }
  599. @ApiOperation(value = "查询采购火运计量")
  600. @PostMapping("/purchaseTrainWeightList")
  601. public Map<String, Object> purchaseTrainWeightList(@RequestBody(required = false) Map<String, Object> map,
  602. Integer apiId,
  603. Integer pageNum,
  604. Integer pageSize) {
  605. return tmsFeign.purchaseTrainWeightList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  606. }
  607. @ApiOperation(value = "采购火运卸车作业")
  608. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  609. @PostMapping(value = "/purchaseTrainUnload")
  610. // @LogAround(foreignKeys = {"resultId"},foreignKeyTypes = {"计量实绩"})
  611. public Map<String, Object> purchaseTrainUnload(@RequestBody MultipartFile file,
  612. String businessType,
  613. String userId,
  614. String userName) throws Exception {
  615. Map<String, Object> map = new HashMap<>();
  616. //获取Excel中包含的对象数组
  617. List<Map<String, Object>> list = ExcelToolUtils.getExcelList(file, 0);
  618. map.put("list", list);
  619. Set<String> capacitySet = new HashSet<>();//车牌号
  620. String unloadTime = null;
  621. for (Map<String, Object> item : list) {
  622. //校验行
  623. if(item.get("通知单号")==null || item.get("通知单号").equals("")
  624. || item.get("车号")==null || item.get("车号").equals("")
  625. || item.get("卸车日期")==null || item.get("卸车日期").equals("")
  626. || item.get("皮重")==null || item.get("皮重").equals("")
  627. || item.get("毛重")==null || item.get("毛重").equals("")){
  628. throw new Exception("单元格数据异常(通知单号/车号/卸车日期/净重),请检查模板或数据是否正确!");
  629. }
  630. item.put("净重", DataChange.dataToBigDecimal(item.get("毛重")).subtract(DataChange.dataToBigDecimal(item.get("皮重"))));
  631. //校验数据
  632. // if(unloadTime == null){
  633. // unloadTime = item.get("卸车日期").toString();
  634. // }else if(!unloadTime.equals(item.get("卸车日期").toString())){
  635. // throw new Exception("同一个Excel只允许一批车辆,请检查卸车日期!");
  636. // }
  637. //车牌号去重
  638. capacitySet.add(item.get("车号").toString());
  639. }
  640. String[] capacities = capacitySet.toArray(new String[0]);//车牌号
  641. if (capacities.length != list.size()) {
  642. throw new Exception("车号不允许重复!");
  643. }
  644. map.put("userId",userId);
  645. map.put("userName",userName);
  646. map.put("businessType",businessType);
  647. //获取火车运单及计量详情
  648. List<Map<String,Object>> orderListAll = universalMapper.findTrainUnload(map);
  649. if (orderListAll.size() <= 0) {
  650. throw new Exception("未查询到装车信息,请先上传装车作业!");
  651. }
  652. List<String> requireList = new ArrayList<>();
  653. for(Map<String,Object> order : orderListAll){
  654. if(order.get("unloadResultId") != null){
  655. throw new Exception(order.get("capacityId")+"已卸车,不允许再上传!");
  656. }
  657. String requireNumber = order.get("requireNumber").toString();
  658. Map<String,Object> requirementMap =(Map<String, Object>) map.get(requireNumber);
  659. if(requirementMap!=null){
  660. List<Map<String,Object>> orderList = (ArrayList) requirementMap.get("orderList");
  661. orderList.add(order);
  662. requirementMap.put("orderList",orderList);
  663. }else{
  664. requirementMap = new HashMap<>();
  665. List<Map<String,Object>> orderList = new ArrayList<>();
  666. orderList.add(order);
  667. requirementMap.put("transPlanId",order.get("transPlanId"));
  668. requirementMap.put("materialId",order.get("materialId"));
  669. requirementMap.put("unloadPointId",order.get("unloadPointId"));
  670. requirementMap.put("unloadTime",unloadTime);
  671. requirementMap.put("userId",userId);
  672. requirementMap.put("userName",userName);
  673. requirementMap.put("orderList",orderList);
  674. requirementMap.put("requirementSerialNumber",requireNumber);
  675. requireList.add(requireNumber);
  676. }
  677. map.put(requireNumber,requirementMap);
  678. }
  679. Map<String,Object> result = null;
  680. for(String requireNumber : requireList){
  681. Map<String,Object> requirementMap =(Map<String, Object>) map.get(requireNumber);
  682. List<Map<String,Object>> orderList = (ArrayList) requirementMap.get("orderList");
  683. // if(universalMapper.countTransOrder(requirementMap) != orderList.size()){
  684. // throw new Exception("卸车车数与装车车数不一致!");
  685. // }
  686. result = tmsFeign.purchaseTrainUnload(requirementMap);
  687. if (!"succeed".equals(result.get("status"))) {
  688. throw new Exception("上传失败:" + result.get("message"));
  689. }
  690. }
  691. return result;
  692. }
  693. @ApiOperation(value = "查询采购火运卸车")
  694. @PostMapping("/purchaseTrainUnloadList")
  695. public Map<String, Object> purchaseTrainUnloadList(@RequestBody(required = false) Map<String, Object> map,
  696. Integer apiId,
  697. Integer pageNum,
  698. Integer pageSize) {
  699. return tmsFeign.purchaseTrainUnloadList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  700. }
  701. @ApiOperation(value = "更改销售运输订单状态")
  702. @ApiImplicitParam(name = "map", value = "JSON格式数据", required = true, dataType = "Map<String, Object>")
  703. @PostMapping(value = "/changeSaleTransOrder")
  704. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"销售运输订单"})
  705. public Map<String, Object> changeSaleTransOrder(@RequestBody(required = false) Map<String, Object> map) {
  706. return tmsFeign.changeSaleTransOrder(map);
  707. }
  708. @ApiOperation(value = "查询司机运输汇总")
  709. @PostMapping("/getDriverTotalResult")
  710. public Map<String, Object> getDriverTotalResult(@RequestBody(required = false) Map<String, Object> map,
  711. Integer apiId,
  712. Integer pageNum,
  713. Integer pageSize) {
  714. return tmsFeign.getDriverTotalResult(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  715. }
  716. @ApiOperation(value = "查询车辆运输汇总")
  717. @PostMapping("/getCapacityTotalResult")
  718. public Map<String, Object> getCapacityTotalResult(@RequestBody(required = false) Map<String, Object> map,
  719. Integer apiId,
  720. Integer pageNum,
  721. Integer pageSize) {
  722. return tmsFeign.getCapacityTotalResult(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  723. }
  724. @ApiOperation("生产物流-调度任务新增")
  725. @PostMapping("/dispatchTask")
  726. Map<String,Object> dispatchTask(@RequestBody Map<String,Object> map) {
  727. return tmsFeign.dispatchTask(map);
  728. }
  729. @ApiOperation("获取销售派车单信息")
  730. @PostMapping("/getDlivDirnoSeqList/{id}")
  731. public RESTfulResult getDlivDirnoSeqList(@PathVariable("id") String id) {
  732. return tmsFeign.getDlivDirnoSeqList(id);
  733. }
  734. @ApiOperation("修改销售派车单信息")
  735. @PostMapping("/updateDlivDirnoSeq")
  736. @LogAround(foreignKeys = {"planChildId"}, foreignKeyTypes = {"修改销售运单"})
  737. public RESTfulResult updateDlivDirnoSeq(@RequestBody Map<String,Object> map) {
  738. return tmsFeign.updateDlivDirnoSeq(map);
  739. }
  740. @ApiOperation("查询销售派车单装车信息")
  741. @PostMapping("/selectDlivDirnoSeqDetails")
  742. public RESTfulResult selectDlivDirnoSeqDetails(@RequestBody Map<String,Object> map) {
  743. return tmsFeign.selectDlivDirnoSeqDetails(map);
  744. }
  745. @ApiOperation("查询订单厂内轨迹")
  746. @PostMapping("/getPathByOrder")
  747. public RESTfulResult getPathByOrder(@RequestBody Map<String,Object> map) {
  748. return tmsFeign.getPathByOrder(map);
  749. }
  750. @ApiOperation("上传定位,更新路径")
  751. @PostMapping("/uploadLocation")
  752. public RESTfulResult uploadLocation(@RequestBody Map<String,Object> map) {
  753. return tmsFeign.uploadLocation(map);
  754. }
  755. @ApiOperation("实收吨数")
  756. @PostMapping("/updateWeight")
  757. public RESTfulResult updateWeight(@RequestBody Map<String,Object> map) {
  758. return tmsFeign.updateWeight(map);
  759. }
  760. @ApiOperation("checkWeightResult")
  761. @PostMapping("/checkWeightResult")
  762. @LogAround(foreignKeys = {"resultId"}, foreignKeyTypes = {"计量实绩"})
  763. public Map<String,Object> checkWeightResult(@RequestBody Map<String,Object> map) {
  764. return tmsFeign.checkWeightResult(map);
  765. }
  766. @ApiOperation(value = "发运通知单直接派车", notes = "发运通知单直接派车")
  767. @ApiImplicitParams({
  768. @ApiImplicitParam(name = "map", value = "json格式具体参数", required = true, dataType = "Map<String,Object>")
  769. })
  770. @PostMapping(value = "/saleDispatchList")
  771. public RESTfulResult saleDispatchList(@RequestBody Map<String, Object> map) {
  772. return tmsFeign.saleDispatchList(map);
  773. }
  774. @ApiOperation("多拼派车")
  775. @PostMapping("/saleDispatchDuoPin")
  776. RESTfulResult saleDispatchDuoPin(@RequestBody Map<String,Object> map) {return tmsFeign.saleDispatchDuoPin(map);}
  777. @ApiOperation("同步生产实绩")
  778. @PostMapping("/syncProductionResult")
  779. @LogAround(foreignKeys = {"transOrderId"}, foreignKeyTypes = {"调拨实绩"})
  780. RESTfulResult syncProductionResult(@RequestBody Map<String,Object> map) {
  781. return tmsFeign.syncProductionResult(map);
  782. }
  783. @ApiOperation("获取司机日工作量")
  784. @PostMapping("/getDriverDayJobForApp")
  785. RESTfulResult getDriverDayJobForApp(@RequestBody Map<String,Object> map,Integer apiId) {
  786. return tmsFeign.getDriverDayJobForApp(map,apiId);
  787. }
  788. @ApiOperation(value = "确认出库", notes = "确认出库")
  789. @ApiImplicitParams({
  790. @ApiImplicitParam(name = "map", value = "json格式具体参数", required = true, dataType = "Map<String,Object>")
  791. })
  792. @PostMapping(value = "/outBound")
  793. public RESTfulResult outBound(@RequestBody Map<String, Object> map) {
  794. return tmsFeign.outBound(map);
  795. }
  796. @ApiOperation(value = "撤销出库", notes = "撤销出库")
  797. @ApiImplicitParams({
  798. @ApiImplicitParam(name = "map", value = "json格式具体参数", required = true, dataType = "Map<String,Object>")
  799. })
  800. @PostMapping(value = "/revokeOutBound")
  801. public RESTfulResult revokeOutBound(@RequestBody Map<String, Object> map) {
  802. return tmsFeign.revokeOutBound(map);
  803. }
  804. @ApiOperation(value = "查询车辆登记单信息")
  805. @PostMapping("/likeTransitOrders")
  806. public Map<String, Object> likeTransitOrders(@RequestBody(required = false) Map<String, Object> map,
  807. Integer apiId,
  808. Integer pageNum,
  809. Integer pageSize) {
  810. return tmsFeign.likeTransitOrders(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  811. }
  812. @ApiOperation(value = "新增车辆登记单信息")
  813. @PostMapping("/insertTmsTransitOrder")
  814. public Map<String,Object> insertTmsTransitOrder(@RequestBody Map<String,Object> map) {
  815. return tmsFeign.insertTmsTransitOrder(map);
  816. }
  817. @ApiOperation("导入通行登记单")
  818. @PostMapping("/importTrasitOrder")
  819. public Map<String, Object> importTrasitOrder(@RequestBody MultipartFile file,
  820. String userId,
  821. String userName) throws Exception {
  822. Map<String, Object> map = new HashMap<>();
  823. //获取Excel中包含的对象数组
  824. List<Map<String, Object>> list = ExcelToolUtils.getExcelList(file, 0);
  825. map.put("list", list);
  826. for (Map<String, Object> item : list) {
  827. //校验行
  828. if (item.get("车牌号") == null || item.get("通行卡类型") == null || item.get("开始时间") == null || item.get("结束时间") == null) {
  829. throw new Exception("单元格数据异常,请检查模板或数据是否正确!");
  830. }
  831. }
  832. map.put("userId", userId);
  833. map.put("userName", userName);
  834. return tmsFeign.importTrasitOrder(map);
  835. }
  836. @ApiOperation(value = "查询请车批车")
  837. @PostMapping("/getPleaseApproveList")
  838. public Map<String, Object> getPleaseApproveList(@RequestBody(required = false) Map<String, Object> map,
  839. Integer apiId,
  840. Integer pageNum,
  841. Integer pageSize) {
  842. return tmsFeign.getPleaseApproveList(map == null ? new HashMap<>() : map, apiId, pageNum, pageSize);
  843. }
  844. @PostMapping("/addPleaseApprove")
  845. public Map<String,Object> addPleaseApprove(@RequestBody Map<String,Object> map) {
  846. return tmsFeign.addPleaseApprove(map);
  847. }
  848. @PostMapping("/updPleaseApprove")
  849. public Map<String,Object> updPleaseApprove(@RequestBody Map<String,Object> map) {
  850. return tmsFeign.updPleaseApprove(map);
  851. }
  852. @PostMapping("/delPleaseApprove")
  853. public Map<String,Object> delPleaseApprove(@RequestBody Map<String,Object> map) {
  854. return tmsFeign.delPleaseApprove(map);
  855. }
  856. @PostMapping("/gatepostTransitManager")
  857. public Map<String,Object> gatepostTransitManager(@RequestBody Map<String,Object> map) {
  858. return tmsFeign.gatepostTransitManager(map);
  859. }
  860. @ApiOperation("导入宏瑞综合实绩")
  861. @PostMapping("/importComprehensiveResult")
  862. public Map<String, Object> importComprehensiveResult(@RequestBody MultipartFile file,
  863. String userId,
  864. String userName,
  865. String resultType) throws Exception {
  866. Map<String, Object> map = new HashMap<>();
  867. if (file.isEmpty()) {
  868. return new HashMap<>();
  869. }
  870. // 获取源文件名称
  871. String originalFilename = file.getOriginalFilename();
  872. // 获取源文件后缀名
  873. String extension = "." + FilenameUtils.getExtension(originalFilename);
  874. // 定义新路径
  875. String newPath = "/data/file/result/";
  876. String newName = userName + "-" + originalFilename+ Util.RandomCreate(8) + ".xlsx";
  877. File dataFile = new File(newPath);
  878. if (!dataFile.exists()) {
  879. dataFile.mkdirs();
  880. }
  881. FileOutputStream fileOutputStream = new FileOutputStream(newPath + newName);
  882. fileOutputStream.write(file.getBytes());
  883. fileOutputStream.flush();
  884. fileOutputStream.close();
  885. //获取Excel中包含的对象数组
  886. List<Map<String, Object>> list = ExcelToolUtils.getExcelList(file, 0);
  887. map.put("list", list);
  888. map.put("userId", userId);
  889. map.put("userName", userName);
  890. map.put("resultType", resultType);
  891. map.put("filePath",newPath + newName);
  892. return tmsFeign.importComprehensiveResult(map);
  893. }
  894. @ApiOperation(value = "火运大宗销售订单 删除销售运输订单")
  895. @PostMapping("/changeTransOrderH")
  896. public Map<String,Object> changeTransOrderH(@RequestBody Map<String,Object> map) {
  897. return tmsFeign.changeTransOrderH(map);
  898. }
  899. @ApiOperation(value = "火运出库后修改车号")
  900. @PostMapping("/updateCarNo")
  901. public Map<String,Object> updateCarNo(@RequestBody Map<String,Object> map) {
  902. return tmsFeign.updateCarNo(map);
  903. }
  904. }