BackgroundProcessingController.java 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. package com.steerinfo.dil.controller;
  2. import com.steerinfo.dil.mapper.BackgroundProcessingMapper;
  3. import com.steerinfo.dil.mapper.OmstruckOrderMapper;
  4. import com.steerinfo.dil.mapper.UniversalMapper;
  5. import com.steerinfo.dil.service.impl.BackgroundProcessingServiceImpl;
  6. import com.steerinfo.dil.util.BaseRESTfulController;
  7. import com.steerinfo.dil.util.DataChange;
  8. import com.steerinfo.framework.controller.RESTfulResult;
  9. import io.swagger.annotations.ApiOperation;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.transaction.annotation.Transactional;
  12. import org.springframework.web.bind.annotation.PostMapping;
  13. import org.springframework.web.bind.annotation.RequestBody;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.RestController;
  16. import java.util.ArrayList;
  17. import java.util.List;
  18. import java.util.Map;
  19. /*
  20. * 后台处理程序
  21. */
  22. @RestController
  23. @RequestMapping("${api.version}/bp")
  24. public class BackgroundProcessingController extends BaseRESTfulController {
  25. @Autowired
  26. private BackgroundProcessingMapper backgroundProcessingMapper;
  27. @Autowired
  28. private BackgroundProcessingServiceImpl backgroundProcessingService;
  29. @Autowired
  30. private OmstruckOrderMapper omstruckOrderMapper;
  31. @Autowired
  32. private UniversalMapper universalMapper;
  33. @ApiOperation(value = "关闭一车多趟方法")
  34. @PostMapping("/closePurOrderMoreTrips")
  35. public RESTfulResult closePurOrderMoreTrips(String purchaseOrderNo, String deleteNoReceiveOrder) {
  36. int i = backgroundProcessingMapper.closePurOrderMoreTrips(purchaseOrderNo);
  37. if("yes".equals(deleteNoReceiveOrder)){
  38. //查询该采购订单下所有未接收的运输订单(5,6,7,8,17,18)
  39. ArrayList<Integer> orderIdList = backgroundProcessingMapper.getAllPurOrder(purchaseOrderNo);
  40. if(orderIdList != null && orderIdList.size() != 0){
  41. backgroundProcessingMapper.deleteOrders(orderIdList); //物理删除
  42. backgroundProcessingMapper.deleteOrderMaterials(orderIdList);//物理删除物资子表
  43. backgroundProcessingMapper.batchByOrderIdForTotalDelete(orderIdList);//总实绩表
  44. }
  45. }
  46. if(i != 1){
  47. return failed("关闭失败!没有此采购订单");
  48. }
  49. return success("关闭成功");
  50. }
  51. @ApiOperation(value = "更改所属厂区方法")
  52. @PostMapping("/updatePurOrgId")
  53. public RESTfulResult updatePurOrgId(@RequestBody(required = false) Map<String, Object> map){
  54. return success(backgroundProcessingService.updatePurOrgId(map));
  55. }
  56. @ApiOperation(value = "删除没用的表实绩 ")
  57. @PostMapping("/deleteErrorResult")
  58. public RESTfulResult deleteErrorResult(String orderNumber){
  59. return success(backgroundProcessingService.deleteErrorResult(orderNumber));
  60. }
  61. @ApiOperation(value = "手动允许放行-OK字段")
  62. @PostMapping("/allowEnfactory")
  63. public RESTfulResult allowEnfactory(String orderNumber){
  64. return success(backgroundProcessingMapper.allowEnfactory(orderNumber));
  65. }
  66. @ApiOperation(value = "获取cid和车牌号的关系")
  67. @PostMapping("/bindCidCapacityNo")
  68. public RESTfulResult bindCidCapacityNo(String cid,
  69. String capacityNo){
  70. if(cid == null || capacityNo == null || "null".equals(cid) || "null".equals(capacityNo)){
  71. return success(0);
  72. }
  73. int i = backgroundProcessingService.bindCidCapacityNo(cid,capacityNo);
  74. return success(i);
  75. }
  76. @ApiOperation(value = "更新运输订单canwork状态")
  77. @PostMapping("updateOrderCanWork")
  78. public RESTfulResult updateOrderCanWork(String orderNumber){
  79. if(orderNumber != null){
  80. int i = backgroundProcessingMapper.updateOrderCanWork(orderNumber);
  81. return success(i);
  82. }
  83. return success(0);
  84. }
  85. @ApiOperation(value = "更新运输订单状态接口")
  86. @PostMapping("updateOrderStatus")
  87. @Transactional(rollbackFor = Exception.class)
  88. public RESTfulResult updateOrderStatus(@RequestBody(required = false) Map<String,Object> map) throws Exception{
  89. if (map.get("orderNumber") != null) {
  90. if (DataChange.dataToBigDecimal(map.get("orderStatus")).intValue() != 2) {
  91. int i = backgroundProcessingMapper.updateOrderStatus(map);
  92. if(i > 1){
  93. throw new Exception("该订单号有多个运单,不允许修改,请去数据库手动修改订单状态!");
  94. }
  95. return success(i);
  96. }
  97. }
  98. return failed(0);
  99. }
  100. @ApiOperation(value = "内转/采购新增上传金蝶表")
  101. @PostMapping("insertToUploadEas")
  102. public RESTfulResult insertToUploadEas(@RequestBody(required = false) Map<String,Object> map){
  103. try {
  104. Map<String,Object> purchaseOrder = (Map<String, Object>) map.get("purchaseOrder");
  105. List<Map<String,Object>> list= (List<Map<String, Object>>) map.get("list");
  106. for(Map<String,Object> item:list){
  107. item.put("purchaseOrderNo",purchaseOrder.get("purchaseOrderNo"));
  108. backgroundProcessingMapper.insertNotUpload(item);
  109. }
  110. }catch (NullPointerException e){
  111. e.printStackTrace();
  112. return failed("缺乏参数!");
  113. }catch (Exception e){
  114. e.printStackTrace();
  115. return failed("未知异常!");
  116. }
  117. return success("修改成功,稍后会自动上传金蝶!");
  118. }
  119. @ApiOperation(value = "重置钢材打印数量")
  120. @PostMapping("resetPrintNumber")
  121. public RESTfulResult resetPrintNumber(@RequestBody(required = false) Map<String,Object> map){
  122. return success(backgroundProcessingMapper.resetPrintNumber(map));
  123. }
  124. @ApiOperation(value = "删除进厂和排队")
  125. @PostMapping("clearEnAndQue")
  126. public RESTfulResult clearEnAndQue(@RequestBody(required = false) Map<String,Object> map){
  127. try {
  128. Map<String,Object> mesMap = backgroundProcessingMapper.getDetailsForEnAndQue(map);
  129. if(mesMap == null){
  130. return failed("没有符合条件的运单,请确认该运单是否已有净重!");
  131. }
  132. //清空进厂信息
  133. backgroundProcessingMapper.clearEnDetails(mesMap);
  134. //删除排队
  135. int materialMesCount = omstruckOrderMapper.getMaterialNumByOrderId(mesMap);
  136. if (materialMesCount == 1) {
  137. //如果是单拼,则删除排队实绩
  138. omstruckOrderMapper.deleteQueueList(DataChange.dataToBigDecimal(mesMap.get("capacityId")));
  139. omstruckOrderMapper.deleteQueueResult(DataChange.dataToBigDecimal(mesMap.get("resultTotalId")));
  140. }else{
  141. omstruckOrderMapper.deleteQueueSpellList(DataChange.dataToBigDecimal(mesMap.get("resultTotalId")));
  142. omstruckOrderMapper.deleteQueueResult(DataChange.dataToBigDecimal(mesMap.get("resultTotalId")));
  143. }
  144. //将总实绩里面的部分信息去掉,并改路段顺序号为null
  145. omstruckOrderMapper.updateTotalResultNull(DataChange.dataToBigDecimal(mesMap.get("resultTotalId")));
  146. universalMapper.updateLineSqe(mesMap);
  147. } catch (Exception e) {
  148. e.printStackTrace();
  149. return failed("未知异常!",e.getMessage());
  150. }
  151. return success("修改成功!");
  152. }
  153. }