OTMSController.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. package com.steerinfo.dil.controller;
  2. import com.steerinfo.dil.config.ImageFileUtils;
  3. import com.steerinfo.dil.feign.OtmsFeign;
  4. import com.steerinfo.dil.feign.TmsTruckFeign;
  5. import com.steerinfo.dil.util.PageListAdd;
  6. import com.steerinfo.framework.controller.RESTfulResult;
  7. import com.steerinfo.framework.service.pagehelper.PageHelper;
  8. import io.swagger.annotations.ApiImplicitParam;
  9. import io.swagger.annotations.ApiImplicitParams;
  10. import io.swagger.annotations.ApiOperation;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.http.MediaType;
  13. import org.springframework.util.MultiValueMap;
  14. import org.springframework.web.bind.annotation.*;
  15. import org.springframework.web.multipart.MultipartFile;
  16. import org.springframework.web.multipart.MultipartRequest;
  17. import java.awt.*;
  18. import java.io.File;
  19. import java.util.ArrayList;
  20. import java.util.HashMap;
  21. import java.util.List;
  22. import java.util.Map;
  23. @RestController
  24. @RequestMapping("${api.version}/otms")
  25. public class OTMSController {
  26. @Autowired
  27. private OtmsFeign otmsFeign;
  28. @Autowired
  29. private ImageFileUtils imageFileUtils;
  30. @ApiOperation(value="全路径展示接口")
  31. @PostMapping("/fullPath")
  32. public Object fullPath(@RequestParam("orderNumber") String orderNumber) throws Exception {
  33. return otmsFeign.fullPath(orderNumber);
  34. }
  35. @ApiOperation(value = "在途订单列表")
  36. @PostMapping("/getInTransitTransportation")
  37. public RESTfulResult getInTransitTransportation(@RequestBody(required=false) Map<String,Object> mapValue,
  38. @RequestParam(required = true,defaultValue = "468",name = "apiId")Integer apiId,
  39. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  40. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  41. )
  42. {
  43. return otmsFeign.getInTransitTransportation(mapValue!=null?mapValue:new HashMap<>(),apiId,pageNum,pageSize);
  44. }
  45. @ApiOperation(value = "有异常订单列表")
  46. @PostMapping("/getHaveAbnormalTruckOrderInfo")
  47. public RESTfulResult getHaveAbnormalTruckOrderInfo(@RequestBody(required=false) Map<String,Object> mapValue,
  48. @RequestParam(required = true,defaultValue = "468",name = "apiId")Integer apiId,
  49. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  50. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  51. )
  52. {
  53. return otmsFeign.getHaveAbnormalTruckOrderInfo(mapValue!=null?mapValue:new HashMap<>(),apiId,pageNum,pageSize);
  54. }
  55. @ApiOperation("已完成订单列表")
  56. @ApiImplicitParams({
  57. @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
  58. @ApiImplicitParam(name = "apiId", value = "动态表头", required = false, dataType = "Integer"),
  59. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  60. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer")
  61. })
  62. @PostMapping("/getFinishTruckOrderInfo")
  63. public RESTfulResult getFinishTruckOrderInfo(@RequestBody(required = false) Map<String,Object> mapValue,
  64. @RequestParam(required = false,defaultValue = "468",name = "apiId")Integer apiId,
  65. @RequestParam(required = false,defaultValue = "1",name = "pageNum")Integer pageNum,
  66. @RequestParam(required = false,defaultValue = "20",name = "pageSize")Integer pageSize
  67. ){
  68. return otmsFeign.getFinishTruckOrderInfo(mapValue!=null?mapValue:new HashMap<>(),apiId,pageNum,pageSize);
  69. }
  70. @ApiOperation(value = "获得抵达实集")
  71. @PostMapping(value = "/addtmstruckArrivalResult")
  72. public RESTfulResult addtmstruckArrivalResult(@RequestParam("orderNumber") String orderNumber, @RequestParam("resultArrivalAddress")String resultArrivalAddress, MultipartFile file){
  73. return otmsFeign.addtmstruckArrivalResult(orderNumber,resultArrivalAddress,file);
  74. }
  75. @PostMapping(value = "/addTmstruckReceiptResult")
  76. public synchronized RESTfulResult addTmstruckReceiptResult(MultipartRequest request, Integer num, String orderNumber, String resultArrivalAddress, Integer imgcount3, Integer imgcount4) throws Exception {
  77. //添加到files数组
  78. List<MultipartFile> files = new ArrayList<>();
  79. //第一张和第二张必填
  80. files.add(request.getFile("file0"));
  81. files.add(request.getFile("file1"));
  82. //第三张选填
  83. if (request.getFile("file2")!=null){
  84. files.add(request.getFile("file2"));
  85. }
  86. //追加的三张,num=6则取到file3,4,5
  87. for(int i=3;i<num;i++){
  88. if(request.getFile("file"+i)!=null){
  89. files.add(request.getFile("file"+i));
  90. }
  91. }
  92. //上传图片,追加的三张图片放在fourFiles里
  93. List<String> fourFiles=new ArrayList<>();
  94. Map<String,Object> mapValue=new HashMap<>();
  95. for (int i=0;i<files.size();i++){
  96. MultipartFile file=files.get(i);
  97. String url = imageFileUtils.updateFile(file);
  98. mapValue.put("url"+i,url);
  99. if(i>=3) {
  100. fourFiles.add(url);
  101. }
  102. }
  103. mapValue.put("fourFiles",fourFiles);
  104. return otmsFeign.addTmstruckReceiptResult(mapValue,num,orderNumber,resultArrivalAddress,imgcount3,imgcount4);
  105. }
  106. @ApiOperation(value="查询当前报警类型")
  107. @PostMapping(value = "/selectWarnSwitch")
  108. public RESTfulResult selectWarnSwitch(){
  109. return otmsFeign.selectWarnSwitch();
  110. }
  111. @ApiOperation(value="是否开启运输报警状态")
  112. @ApiImplicitParams({
  113. @ApiImplicitParam(name = "warnSwitch", value = "运输报警状态", required = false, dataType = "String")
  114. })
  115. @PostMapping(value = "/inTransitWarn")
  116. public RESTfulResult inTransitWarn(@RequestParam String warnSwitch,@RequestParam String radio){
  117. return otmsFeign.inTransitWarn(warnSwitch,radio);
  118. }
  119. @ApiOperation(value="获得异常信息")
  120. @PostMapping("/getTransportAbnormalInfo")
  121. public RESTfulResult getTransportAbnormalInfo(@RequestBody(required=false) Map<String,Object> mapValue,
  122. @RequestParam(name = "apiId",defaultValue = "472") Integer apiId,
  123. @RequestParam(name = "pageNum") Integer pageNum,
  124. @RequestParam(name = "orderNumbers") String orderNumbers,
  125. @RequestParam(name = "pageSize") Integer pageSize){
  126. mapValue=mapValue!=null?mapValue:new HashMap<>();
  127. mapValue.put("orderNumbers",orderNumbers);
  128. return otmsFeign.getTransportAbnormalInfo(mapValue,apiId,pageNum,pageSize);
  129. }
  130. @ApiOperation(value="车牌号和时间查询路径")
  131. @PostMapping("/fullPathVisualizationByCarNumber")
  132. public Object fullPathVisualizationByCarNumber(@RequestBody HashMap mapValue) throws Exception{
  133. return otmsFeign.fullPathVisualizationByCarNumber(mapValue);
  134. }
  135. @ApiOperation("厂外抵达作业")
  136. @PostMapping("/getArrivalResult")
  137. public Map<String,Object> getArrivalResult(@RequestBody(required = false) Map<String,Object> mapValue,
  138. Integer apiId,
  139. Integer pageNum,
  140. Integer pageSize,
  141. String con,
  142. String startTime,
  143. String endTime){
  144. return otmsFeign.getArrivalResult(mapValue==null?new HashMap<>():mapValue, apiId, pageNum, pageSize,con,startTime,endTime);
  145. }
  146. @ApiOperation("展示满货箱的照片")
  147. @PostMapping("/getArrivalPhoto")
  148. public String getArrivalPhoto(@RequestParam String orderNumber){
  149. return otmsFeign.getArrivalPhoto(orderNumber);
  150. }
  151. @ApiOperation("厂外抵达作业")
  152. @PostMapping("/getReceiptResult")
  153. public Map<String,Object> getReceiptResult(@RequestBody(required = false) Map<String,Object> mapValue,
  154. Integer apiId,
  155. Integer pageNum,
  156. Integer pageSize,
  157. String con,
  158. String startTime,
  159. String endTime){
  160. return otmsFeign.getReceiptResult(mapValue==null?new HashMap<>():mapValue, apiId, pageNum, pageSize,con,startTime,endTime);
  161. }
  162. @ApiOperation("展示收货的照片")
  163. @PostMapping("/getReceivingPhotoByUrl")
  164. public Map<String,Object> getReceivingPhotoByUrl(@RequestParam String orderNumber) throws Exception {
  165. Map<String,Object> map=otmsFeign.getReceivingPhotoByUrl(orderNumber);
  166. if(map.containsKey("resultEmptyContainerPhoto") && map.get("resultEmptyContainerPhoto")!=null){
  167. String resultEmptyContainerPhoto = (String) imageFileUtils.downloadFile(map.get("resultEmptyContainerPhoto").toString());
  168. map.put("resultEmptyContainerPhoto",resultEmptyContainerPhoto);
  169. }
  170. if(map.containsKey("resultSignedNotePhoto") && map.get("resultSignedNotePhoto")!=null){
  171. String resultSignedNotePhoto = (String) imageFileUtils.downloadFile(map.get("resultSignedNotePhoto").toString());
  172. map.put("resultSignedNotePhoto",resultSignedNotePhoto);
  173. }
  174. if(map.containsKey("resultReceiveNotePhoto") && map.get("resultReceiveNotePhoto")!=null){
  175. String resultSignedNotePhoto = (String) imageFileUtils.downloadFile(map.get("resultReceiveNotePhoto").toString());
  176. map.put("resultReceiveNotePhoto",resultSignedNotePhoto);
  177. }
  178. return map;
  179. }
  180. @GetMapping("/getCurrentLocation")
  181. public RESTfulResult getCurrentLocation(@RequestParam("capcityNumber") String capcityNumber) throws Exception{
  182. return otmsFeign.getCurrentLocation(capcityNumber);
  183. }
  184. }