OffSiteTransportationController.java 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. package com.steerinfo.dil.controller;
  2. import com.alibaba.fastjson.JSON;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.steerinfo.dil.service.ITmstruckLeaveFactoryResultService;
  5. import com.steerinfo.dil.service.impl.OffSiteTransportationServiceImpl;
  6. import com.steerinfo.dil.util.BaseRESTfulController;
  7. import com.steerinfo.dil.util.ColumnDataUtil;
  8. import com.steerinfo.dil.util.PageListAdd;
  9. import com.steerinfo.framework.controller.RESTfulResult;
  10. import com.steerinfo.framework.service.pagehelper.PageHelper;
  11. import com.steerinfo.route.config.ImageFileUtils;
  12. import com.steerinfo.route.service.impl.RouteServiceImpl;
  13. import com.steerinfo.route.threeRequest.ZhongJiaoXingLu;
  14. import com.steerinfo.route.util.DataConversionTool;
  15. import com.steerinfo.route.util.HTTPRequestUtils;
  16. import com.steerinfo.route.vo.FullPathVisualizationTo.ViewVisualization;
  17. import com.steerinfo.route.vo.Map.RouteVo;
  18. import com.steerinfo.route.vo.ResultWarn;
  19. import com.steerinfo.route.vo.resultJson.SearchPoint;
  20. import io.swagger.annotations.Api;
  21. import io.swagger.annotations.ApiImplicitParam;
  22. import io.swagger.annotations.ApiImplicitParams;
  23. import io.swagger.annotations.ApiOperation;
  24. import org.springframework.beans.factory.annotation.Autowired;
  25. import org.springframework.beans.factory.annotation.Value;
  26. import org.springframework.data.redis.core.RedisTemplate;
  27. import org.springframework.http.MediaType;
  28. import org.springframework.web.bind.annotation.*;
  29. import org.springframework.web.multipart.MultipartFile;
  30. import org.springframework.web.multipart.MultipartRequest;
  31. import java.math.BigDecimal;
  32. import java.net.URLEncoder;
  33. import java.text.SimpleDateFormat;
  34. import java.util.*;
  35. import java.util.concurrent.CompletableFuture;
  36. import java.util.concurrent.TimeUnit;
  37. @Api("厂外运输接口")
  38. @RestController
  39. @RequestMapping("/${api.version}/pathDisplay")
  40. public class OffSiteTransportationController extends BaseRESTfulController {
  41. @Autowired
  42. private ITmstruckLeaveFactoryResultService tmstruckLeaveFactoryResultService;
  43. @Autowired
  44. private RouteServiceImpl routeService;
  45. @Autowired
  46. ColumnDataUtil columnDataUtil;
  47. @Autowired
  48. ImageFileUtils imageFileUtils;
  49. @Autowired
  50. private ZhongJiaoXingLu zhongJiaoXingLu;
  51. @Value("${str.tengxun.key}")
  52. private String key;
  53. @Value("${redis.prefix.order}")
  54. private String prefixOrder;
  55. @Value("${redis.prefix.line}")
  56. private String prefixLine;
  57. @Value("${redis.prefix.suffix}")
  58. private String suffix;
  59. @Autowired
  60. private RedisTemplate redisTemplate;
  61. @Autowired
  62. OffSiteTransportationServiceImpl offSiteTransportationService;
  63. @ApiOperation("保存路径")
  64. @PostMapping("/savePath")
  65. public CompletableFuture<String> savePath() throws Exception {
  66. Map<String, Object> parem=tmstruckLeaveFactoryResultService.getTruckFactoryResult("WYSDD2022040600045906");
  67. parem.put("turnOf","0");
  68. return routeService.createTotalResult(parem);
  69. //运输订单号:orderNumber、车牌号:capacityNumber、出厂时间:resultOutGateTime、预警开关:turnOf、发货地址:shipperName、收货地址:receiveAddress
  70. //初始化请求参数
  71. // HashMap<String,Object> mapValue=new HashMap<>();
  72. // mapValue.put("orderNumber","WYSDD2021091000000001");
  73. // mapValue.put("capacityNumber","豫SB6238");
  74. // mapValue.put("resultOutGateTime","2021-11-17 14:20:19");
  75. // mapValue.put("turnOf","0");
  76. // mapValue.put("shipperName","四川达州钢铁集团有限");
  77. // mapValue.put("receiveAddress","长沙市");
  78. // return routeService.createTotalResult(mapValue);
  79. }
  80. @ApiOperation("全路径查询")
  81. @PostMapping("/fullPath")
  82. public Object fullPath(String orderNumber) throws Exception {
  83. //运输订单号:orderNumber、车牌号:capacityNumber、出厂时间:resultOutGateTime、预警开关:turnOf、发货地址:shipperName、收货地址:receiveAddress
  84. //初始化请求参数
  85. HashMap<String,Object> mapValue=new HashMap<>();
  86. mapValue.put("orderNumber",orderNumber);
  87. return routeService.fullPathVisualization(mapValue);
  88. }
  89. @ApiOperation("查询在途运输")
  90. @ApiImplicitParams({
  91. @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
  92. @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
  93. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  94. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer")
  95. })
  96. @PostMapping("/getInTransitTransportation")
  97. public RESTfulResult getInTransitTransportation(@RequestBody Map<String,Object> mapValue,
  98. @RequestParam(required = true,defaultValue = "468",name = "apiId")Integer apiId,
  99. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  100. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  101. )
  102. {
  103. if(mapValue.containsKey("startTime")&&mapValue.containsKey("endTime")){
  104. Date startDate=new Date(Long.parseLong(mapValue.get("startTime").toString())) ;
  105. Date endDate=new Date(Long.parseLong(mapValue.get("endTime").toString())) ;
  106. Calendar ca = Calendar.getInstance();
  107. ca.setTime(endDate);
  108. ca.add(Calendar.DATE,1);
  109. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  110. String startTime1=simpleDateFormat.format(startDate);
  111. String endTime1=simpleDateFormat.format(ca.getTime());
  112. mapValue.replace("startTime",startTime1);
  113. mapValue.replace("endTime",endTime1);
  114. }else {
  115. Date startDate=new Date() ;
  116. Date endDate=new Date() ;
  117. Calendar ca = Calendar.getInstance();
  118. ca.setTime(endDate);
  119. ca.add(Calendar.DATE,1);
  120. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  121. String startTime1=simpleDateFormat.format(startDate);
  122. String endTime1=simpleDateFormat.format(ca.getTime());
  123. mapValue.put("startTime",startTime1);
  124. mapValue.put("endTime",endTime1);
  125. }
  126. List<Map<String,Object>> filter= offSiteTransportationService.getInTransitTransportation(mapValue);
  127. PageHelper.startPage(pageNum, pageSize);
  128. List<Map<String,Object>> list= offSiteTransportationService.getInTransitTransportation(mapValue);
  129. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, filter,list);
  130. return success(pageList);
  131. }
  132. @ApiOperation("有异常")
  133. @ApiImplicitParams({
  134. @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
  135. @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
  136. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  137. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer")
  138. })
  139. @PostMapping("/getHaveAbnormalTruckOrderInfo")
  140. public RESTfulResult getHaveAbnormalTruckOrderInfo(@RequestBody Map<String,Object> mapValue,
  141. @RequestParam(required = true,defaultValue = "468",name = "apiId")Integer apiId,
  142. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  143. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  144. )
  145. {
  146. if(mapValue.containsKey("startTime")&&mapValue.containsKey("endTime")){
  147. Date startDate=new Date(Long.parseLong(mapValue.get("startTime").toString())) ;
  148. Date endDate=new Date(Long.parseLong(mapValue.get("endTime").toString())) ;
  149. Calendar ca = Calendar.getInstance();
  150. ca.setTime(endDate);
  151. ca.add(Calendar.DATE,1);
  152. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  153. String startTime1=simpleDateFormat.format(startDate);
  154. String endTime1=simpleDateFormat.format(ca.getTime());
  155. mapValue.replace("startTime",startTime1);
  156. mapValue.replace("endTime",endTime1);
  157. }else {
  158. Date startDate=new Date() ;
  159. Date endDate=new Date() ;
  160. Calendar ca = Calendar.getInstance();
  161. ca.setTime(endDate);
  162. ca.add(Calendar.DATE,1);
  163. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  164. String startTime1=simpleDateFormat.format(startDate);
  165. String endTime1=simpleDateFormat.format(ca.getTime());
  166. mapValue.put("startTime",startTime1);
  167. mapValue.put("endTime",endTime1);
  168. }
  169. List<Map<String,Object>> filter= offSiteTransportationService.getHaveAbnormalTruckOrderInfo(mapValue);
  170. PageHelper.startPage(pageNum, pageSize);
  171. List<Map<String,Object>> list= offSiteTransportationService.getHaveAbnormalTruckOrderInfo(mapValue);
  172. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, filter,list);
  173. return success(pageList);
  174. }
  175. @ApiOperation("查询在途运输")
  176. @ApiImplicitParams({
  177. @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
  178. @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
  179. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  180. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer")
  181. })
  182. @PostMapping("/getFinishTruckOrderInfo")
  183. public RESTfulResult getFinishTruckOrderInfo(@RequestBody Map<String,Object> mapValue,
  184. @RequestParam(required = true,defaultValue = "468",name = "apiId")Integer apiId,
  185. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  186. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  187. )
  188. {
  189. if(mapValue.containsKey("startTime")&&mapValue.containsKey("endTime")){
  190. Date startDate=new Date(Long.parseLong(mapValue.get("startTime").toString())) ;
  191. Date endDate=new Date(Long.parseLong(mapValue.get("endTime").toString())) ;
  192. Calendar ca = Calendar.getInstance();
  193. ca.setTime(endDate);
  194. ca.add(Calendar.DATE,1);
  195. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  196. String startTime1=simpleDateFormat.format(startDate);
  197. String endTime1=simpleDateFormat.format(ca.getTime());
  198. mapValue.replace("startTime",startTime1);
  199. mapValue.replace("endTime",endTime1);
  200. }else {
  201. Date startDate=new Date() ;
  202. Date endDate=new Date() ;
  203. Calendar ca = Calendar.getInstance();
  204. ca.setTime(endDate);
  205. ca.add(Calendar.DATE,1);
  206. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  207. String startTime1=simpleDateFormat.format(startDate);
  208. String endTime1=simpleDateFormat.format(ca.getTime());
  209. mapValue.put("startTime",startTime1);
  210. mapValue.put("endTime",endTime1);
  211. }
  212. //已经完成
  213. mapValue.put("orderStatus",2);
  214. List<Map<String,Object>> filter= offSiteTransportationService.getInTransitTransportation(mapValue);
  215. PageHelper.startPage(pageNum, pageSize);
  216. List<Map<String,Object>> list= offSiteTransportationService.getInTransitTransportation(mapValue);
  217. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, filter,list);
  218. return success(pageList);
  219. }
  220. @PostMapping(value = "/addTmstruckReceiptResult" )
  221. public synchronized RESTfulResult addTmstruckReceiptResult(@RequestBody Map<String,Object> value , Integer num, String orderNumber, String resultArrivalAddress, Integer imgcount3, Integer imgcount4) throws Exception {
  222. Map<String,Object> map = new HashMap<String,Object>();
  223. map.put("orderNumber",orderNumber);
  224. map.put("resultArrivalAddress",resultArrivalAddress);
  225. Integer orderStatus = offSiteTransportationService.getOrderStatus(map);
  226. //判断是否已经结束
  227. if (orderStatus!=null&&orderStatus==2){
  228. return failed(-3);
  229. }
  230. map.putAll(value);
  231. //添加入库实绩
  232. Integer resTfulResult = offSiteTransportationService.addTmstruckReceiptResult(map);
  233. if (!resTfulResult.equals("4")){
  234. //保存路线
  235. String redisJson = (String) redisTemplate.opsForValue().get(prefixOrder+":"+orderNumber);
  236. HashMap mapValue = JSON.parseObject(redisJson, HashMap.class);
  237. String json = zhongJiaoXingLu.visualRoute(mapValue);
  238. ViewVisualization to=null;
  239. if (json!=null){
  240. //设置60天后过期
  241. Calendar calendar=Calendar.getInstance();
  242. long agoTime= calendar.getTime().getTime();
  243. calendar.add(Calendar.MONTH,2);
  244. long lateTime= calendar.getTime().getTime();
  245. long saveTime=(lateTime-agoTime)/1000;
  246. redisTemplate.opsForValue().set(prefixLine+":"+orderNumber, json, saveTime, TimeUnit.SECONDS);
  247. //删除订单
  248. redisTemplate.delete(prefixOrder+":"+orderNumber);
  249. redisTemplate.delete(prefixOrder+":"+orderNumber+suffix);
  250. //添加运输距离
  251. to= (ViewVisualization) DataConversionTool.jsonToBean(json,ViewVisualization.class);
  252. }else {
  253. HashMap<String,Object> hashMap=new HashMap();
  254. hashMap.put("orderNumber",orderNumber);
  255. Map<String,Object> resultMap= offSiteTransportationService.getStartAndEndCapacityNumber(hashMap);
  256. if (resultMap!=null){
  257. json= getPathJSON(resultMap.get("capacityNumber").toString(),resultMap.get("resultOutGateTime").toString());
  258. if (json!=null&&!json.equals("")){
  259. to= (ViewVisualization) DataConversionTool.jsonToBean(json,ViewVisualization.class);
  260. }
  261. }
  262. }
  263. //设置运输距离,并且结束订单
  264. if (to!=null&&to.getResult()!=null&&to.getResult().getRunDistance()!=null){
  265. Map<String,Object> ordermap=new HashMap<>();
  266. ordermap.put("orderNumber",orderNumber);
  267. ordermap.put("orderMileage",to.getResult().getRunDistance()==null?"1":to.getResult().getRunDistance());
  268. offSiteTransportationService.insertOrderMileage(ordermap);
  269. }else {
  270. if (to!=null&&to.getStatus()==1006){
  271. Map<String,Object> ordermap=new HashMap<>();
  272. ordermap.put("orderNumber",orderNumber);
  273. ordermap.put("orderMileage","-1");
  274. offSiteTransportationService.insertOrderMileage(ordermap);
  275. }else if (to!=null&&to.getStatus()==1001){
  276. Map<String,Object> ordermap=new HashMap<>();
  277. ordermap.put("orderNumber",orderNumber);
  278. ordermap.put("orderMileage","1");
  279. offSiteTransportationService.insertOrderMileage(ordermap);
  280. } else {
  281. Map<String,Object> ordermap=new HashMap<>();
  282. ordermap.put("orderNumber",orderNumber);
  283. ordermap.put("orderMileage","-1");
  284. offSiteTransportationService.insertOrderMileage(ordermap);
  285. }
  286. }
  287. //关闭运输订单
  288. offSiteTransportationService.orderClose(orderNumber);
  289. }
  290. return success(1);
  291. }
  292. //如果内容丢失重新获得
  293. public String getPathJSON(String capacityNumber,String resultOutGateTime) throws Exception {
  294. //入网验证
  295. String netValidationResult = zhongJiaoXingLu.netValidation(capacityNumber);
  296. Map netValidationMap = (Map) JSONObject.parse(netValidationResult);
  297. if (Integer.parseInt(netValidationMap.get("status").toString())==1001&&netValidationMap.get("result").toString().equals("yes")){
  298. String searchPointJson = HTTPRequestUtils.sendGet("https://apis.map.qq.com/ws/geocoder/v1/", "address="+ URLEncoder.encode("四川省达州钢铁集团有限责任公司","utf-8")+"&key=WDTBZ-A5VKJ-UDLFI-KYJY6-WTP2S-A6B4Y");
  299. SearchPoint searchPoint= (SearchPoint) DataConversionTool.jsonToBean(searchPointJson, SearchPoint.class);
  300. String searchPointJson2 = HTTPRequestUtils.sendGet("https://apis.map.qq.com/ws/geocoder/v1/", "address="+URLEncoder.encode("四川省达州钢铁集团有限责任公司","utf-8")+"&key=WDTBZ-A5VKJ-UDLFI-KYJY6-WTP2S-A6B4Y");
  301. SearchPoint searchPoint2= (SearchPoint) DataConversionTool.jsonToBean(searchPointJson2, SearchPoint.class);
  302. //运单生成之后保存
  303. HashMap<String,String> redisMap=new HashMap<>();
  304. String startLon=searchPoint.getResult().getLocation().getLng().toString().length()>9?searchPoint.getResult().getLocation().getLng().toString().substring(0,9):searchPoint.getResult().getLocation().getLng().toString();
  305. String startLat=searchPoint.getResult().getLocation().getLat().toString().length()>9?searchPoint.getResult().getLocation().getLat().toString().substring(0,8):searchPoint.getResult().getLocation().getLat().toString();
  306. redisMap.put("startLonlat", startLon+","+startLat);
  307. String endLon= searchPoint2.getResult().getLocation().getLng().toString().length()>9?searchPoint2.getResult().getLocation().getLng().toString().substring(0,9):searchPoint2.getResult().getLocation().getLng().toString();
  308. String endLat= searchPoint2.getResult().getLocation().getLat().toString().length()>9?searchPoint2.getResult().getLocation().getLat().toString().substring(0,8):searchPoint2.getResult().getLocation().getLat().toString();
  309. redisMap.put("endLonlat",endLon+","+endLat);
  310. redisMap.put("vclN", capacityNumber);
  311. redisMap.put("vco","2");
  312. SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:ss:mm");
  313. String qryBtm=resultOutGateTime;
  314. //获得23小时、45分钟之后的时间
  315. Date parse = simpleDateFormat.parse(qryBtm);
  316. //时间添加
  317. Calendar calendar = Calendar.getInstance();
  318. calendar.setTime(parse);
  319. calendar.add(Calendar.HOUR_OF_DAY, 23);
  320. calendar.add(Calendar.SECOND, 45);
  321. redisMap.put("qryBtm", qryBtm);
  322. redisMap.put("qryEtm",simpleDateFormat.format(calendar.getTime()));
  323. System.out.println(redisMap);
  324. String json = zhongJiaoXingLu.visualRoute(redisMap);
  325. System.out.println(json.length()>100?json.substring(0,100):json);
  326. return json;
  327. }
  328. return null;
  329. }
  330. public String removeData(){
  331. offSiteTransportationService.removeDate();
  332. return "success";
  333. }
  334. /**查询是否开启运输报警状态
  335. * warnSwitch
  336. * @param
  337. * @return
  338. */
  339. @ApiOperation(value="查询是否开启运输报警状态")
  340. @ApiImplicitParams({
  341. })
  342. @PostMapping(value = "/selectWarnSwitch")
  343. public RESTfulResult selectWarnSwitch() {
  344. Map<String,Object> warnSwitch = offSiteTransportationService.selectWarnSwitch();
  345. return success(warnSwitch);
  346. }
  347. /**是否开启运输报警状态
  348. * warnSwitchaddTmstruckTotalResult
  349. * @param
  350. * @returninTransitOrderMileage
  351. */
  352. @ApiOperation(value="是否开启运输报警状态")
  353. @ApiImplicitParams({
  354. @ApiImplicitParam(name = "warnSwitch", value = "运输报警状态", required = false, dataType = "String")
  355. })
  356. @PostMapping(value = "/inTransitWarn")
  357. public RESTfulResult inTransitWarn(@RequestParam String warnSwitch,@RequestParam String radio) {
  358. int i = offSiteTransportationService.updateWarnSwitch(warnSwitch,radio);
  359. return success(i);
  360. }
  361. @PostMapping("/abnormalLineWarn")
  362. public String abnormalLineWarn(@RequestParam(value = "data") String data) throws Exception {
  363. System.out.println("abnormalLineWarn");
  364. System.out.println(data);
  365. ResultWarn resultWarn= (ResultWarn) DataConversionTool.jsonToBean(data, ResultWarn.class);
  366. Map<String, Object> map= DataConversionTool.objectToMap(resultWarn);
  367. int i= offSiteTransportationService.addTransportationAlarm(map);
  368. return "success";
  369. }
  370. @PostMapping("/parkWarn")
  371. public String parkWarn(@RequestParam(value = "data",required = false) String data) throws Exception {
  372. System.out.println("parkWarn");
  373. System.out.println(data);
  374. ResultWarn resultWarn= (ResultWarn) DataConversionTool.jsonToBean(data, ResultWarn.class);
  375. Map<String, Object> map= DataConversionTool.objectToMap(resultWarn);
  376. int i=offSiteTransportationService.addTransportationAlarm(map);
  377. return "success";
  378. }
  379. @PostMapping("/offLineWarn")
  380. public String offLineWarn(@RequestParam(value = "data") String data) throws Exception {
  381. System.out.println("offLineWarn");
  382. System.out.println(data);
  383. ResultWarn resultWarn= (ResultWarn) DataConversionTool.jsonToBean(data, ResultWarn.class);
  384. Map<String, Object> map= DataConversionTool.objectToMap(resultWarn);
  385. int i=offSiteTransportationService.addTransportationAlarm(map);
  386. return "success";
  387. }
  388. @ApiOperation(value="展示运输在途异常信息")
  389. @ApiImplicitParams({
  390. @ApiImplicitParam(name = "apiId(472)", value = "表头", required = false, dataType = "Interger")
  391. })
  392. @PostMapping("/getTransportAbnormalInfo")
  393. public RESTfulResult getTransportAbnormalInfo(@RequestBody(required=false) Map<String,Object> mapValue,
  394. @RequestParam(name = "apiId",defaultValue = "472") Integer apiId,
  395. @RequestParam(name = "pageNum") Integer pageNum,
  396. @RequestParam(name = "pageSize") Integer pageSize){
  397. List<Map<String, Object>> transportAbnormalInfo = offSiteTransportationService.getTransportAbnormalInfo(mapValue);
  398. PageHelper.startPage(pageNum,pageSize);
  399. List<Map<String, Object>> transportAbnormalInfo1 = offSiteTransportationService.getTransportAbnormalInfo(mapValue);
  400. PageListAdd pageList = columnDataUtil.tableColumnData(apiId,transportAbnormalInfo,transportAbnormalInfo1);
  401. return success(pageList);
  402. }
  403. @ApiOperation(value="查询路径")
  404. @ApiImplicitParams({
  405. @ApiImplicitParam(name = "mapValue", value = "查询条件", required = false, dataType = "HashMap")
  406. })
  407. @PostMapping("/fullPathVisualizationByCarNumber")
  408. public RouteVo fullPathVisualizationByCarNumber(@RequestBody HashMap mapValue) throws Exception {
  409. CompletableFuture<RouteVo> createOrder =routeService.fullPathVisualizationByCarNumber(mapValue);
  410. return createOrder.get();
  411. }
  412. }