OmstruckOrderSeparateController.java 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. package com.steerinfo.dil.controller;
  2. import com.steerinfo.dil.feign.ESFeign;
  3. import com.steerinfo.dil.feign.TmsTruckFeign;
  4. import com.steerinfo.dil.service.impl.OmstruckOrderSeparateServiceImpl;
  5. import com.steerinfo.dil.util.BaseRESTfulController;
  6. import com.steerinfo.dil.util.ColumnDataUtil;
  7. import com.steerinfo.dil.util.PageListAdd;
  8. import com.steerinfo.framework.controller.RESTfulResult;
  9. import com.steerinfo.framework.service.pagehelper.PageHelper;
  10. import io.swagger.annotations.ApiImplicitParam;
  11. import io.swagger.annotations.ApiImplicitParams;
  12. import io.swagger.annotations.ApiOperation;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.*;
  15. import java.math.BigDecimal;
  16. import java.util.HashMap;
  17. import java.util.List;
  18. import java.util.Map;
  19. /**
  20. * @ author :TXF
  21. * @ time :2021/12/3 15:07
  22. */
  23. @RestController
  24. @RequestMapping("/${api.version}/omstruckorderseparates")
  25. public class OmstruckOrderSeparateController extends BaseRESTfulController {
  26. @Autowired
  27. OmstruckOrderSeparateServiceImpl omstruckOrderSeparateService;
  28. @Autowired
  29. private TmsTruckFeign tmsTruckFeign;
  30. @Autowired
  31. ColumnDataUtil columnDataUtil;
  32. @Autowired
  33. ESFeign esFeign;
  34. @PostMapping("/getOrderMes")
  35. public RESTfulResult getMes(@RequestBody(required = false) Map<String, Object> map){
  36. Integer integer = tmsTruckFeign.addTotalResult(map);
  37. return success(integer);
  38. }
  39. /**
  40. * 添加退货实绩关闭当前订单
  41. * @param map
  42. * @return
  43. */
  44. @PostMapping("/returnOrderCloseOrder")
  45. public RESTfulResult returnOrderCloseOrder(@RequestBody(required = false) Map<String, Object> map){
  46. Integer result = omstruckOrderSeparateService.returnOrderCloseOrder(map);
  47. return success(result);
  48. }
  49. /**
  50. * 根据运单id查询实绩位置
  51. * @param map
  52. * @return
  53. */
  54. @PostMapping("/getOrderResult")
  55. public List<Map<String,Object>> getOrderResult(@RequestBody Map<String,Object> map){
  56. Integer orderId = (Integer) map.get("orderId");
  57. String orderNumber = (String) map.get("orderNumber");
  58. List<Map<String, Object>> result = null;
  59. if (orderId != null) {
  60. result = omstruckOrderSeparateService.getOrderResult(new BigDecimal(orderId));
  61. }
  62. else {
  63. result = omstruckOrderSeparateService.getOrderNumberResult(orderNumber);
  64. }
  65. return result;
  66. }
  67. /**
  68. * 发送消息到 websocket 推送消息
  69. * @param map
  70. */
  71. @PostMapping("/pushMesToWebsocket")
  72. public RESTfulResult pushMesToWebsocket(@RequestBody Map<String,Object> map) {
  73. String s = omstruckOrderSeparateService.pushMesToWebsocket(map);
  74. return success(s);
  75. }
  76. @ApiOperation(value = "查看承运商所属的订单")
  77. @ApiImplicitParams({
  78. @ApiImplicitParam(name = "mapValue", value = "表头和参数", required = false, dataType = "map"),
  79. @ApiImplicitParam(name = "apiId(86)", value = "动态表头", required = false, dataType = "Integer"),
  80. @ApiImplicitParam(name = "pageNum", value = "页码", required = false, dataType = "Integer"),
  81. @ApiImplicitParam(name = "pageSize", value = "页", required = false, dataType = "Integer"),
  82. @ApiImplicitParam(name = "status", value = "状态码", required = false, dataType = "Integer"),
  83. })
  84. @PostMapping("/getInputOrderList")
  85. public RESTfulResult getInputOrderList(@RequestBody(required = false) Map<String, Object> mapValue,
  86. Integer apiId,
  87. Integer pageNum,
  88. Integer pageSize,
  89. Integer carrierId,
  90. Integer orderType,
  91. Integer orderStatus,
  92. String con) {
  93. int count = 0;
  94. if (orderStatus != null) {
  95. mapValue.put("orderStatus", orderStatus);
  96. count++;
  97. }
  98. if (orderType != null) {
  99. mapValue.put("orderType", orderType);
  100. count++;
  101. }
  102. if (carrierId != null) {
  103. mapValue.put("carrierId", carrierId);
  104. count++;
  105. }
  106. //框计算
  107. if (con != null) {
  108. if (!"undefined".equals(con)) {
  109. String index = "get_input_order_list";//设置要查询的索引名称
  110. return success(esFeign.getConResult(mapValue, index, apiId, pageNum, pageSize, con));//获取查询结果
  111. }
  112. }
  113. //不分页筛选数据
  114. List<Map<String, Object>> allTruckOrder = null;
  115. //如果有条件查询则跳过初始化,和创建索引
  116. if (mapValue.size() == count) {
  117. //将查询结果存入索引中
  118. allTruckOrder = omstruckOrderSeparateService.getInputOrderList(mapValue);
  119. Map<String, Object> map = new HashMap<>();
  120. //添加索引
  121. map.put("index", "get_input_order_list");
  122. //添加id
  123. map.put("indexId", "truckOrderId");
  124. allTruckOrder.add(map);
  125. //新建索引
  126. esFeign.insertIndex(allTruckOrder);
  127. //删除
  128. allTruckOrder.remove(allTruckOrder.size() - 1);
  129. }
  130. if (allTruckOrder == null)
  131. allTruckOrder = omstruckOrderSeparateService.getInputOrderList(mapValue);
  132. PageHelper.startPage(pageNum, pageSize);
  133. //分页数据
  134. List<Map<String, Object>> truckOrder = omstruckOrderSeparateService.getInputOrderList(mapValue);
  135. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, allTruckOrder, truckOrder);
  136. return success(pageList);
  137. }
  138. }