liyg 2 年 前
コミット
25f249a2e4

+ 1 - 21
src/main/java/com/steerinfo/dil/controller/AmsSaleOrderController.java

@@ -785,27 +785,7 @@ public class AmsSaleOrderController<RedisTemplate> extends BaseRESTfulController
         if (result == 0) {
             return failed("匹配不到车牌号!");
         }
-        else {
-                // 调用EAS接口将车牌号传给金蝶
-                Map<String,Object> input = joinFeign.findCarNumberByOrderList(mapList);
-                Map<String, Object> totalMap = easCapacityTestUtil.getTotalMap();
-                totalMap.put("input",input);
-                System.out.println(totalMap);
-                String json = JSONUtils.toJSONString(totalMap);
-                System.out.println(json);
-                Map<String,Object> s = joinFeign.pushCarNumberToEas(totalMap);
-                if (s == null || s.size() == 0) {
-                    try{
-                        //失败,存入重试队列,准备重试
-                        retryQueen.add(mapList);
-                    }catch (Exception e){
-                        System.out.println("保存失败车牌失败");
-                    }
-                    return failed("车牌号同步金蝶失败!");
-                }
-            System.out.println(s);
-            return success(result);
-        }
+        return success(result);
     }
 
     @ApiModelProperty(value = "钢材继续装派单")

+ 2 - 0
src/main/java/com/steerinfo/dil/service/IAmsSaleOrderService.java

@@ -189,4 +189,6 @@ public interface IAmsSaleOrderService {
     BigDecimal selectTransPortOrder(BigDecimal closeWlEntryId);
 
     int updateTransportOrderStatus(BigDecimal orderId);
+
+   int pushCarNumberToEas(Map<String,Object> map) throws Exception;
 }

+ 40 - 0
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -106,6 +106,9 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
     @Autowired
     EasFluMakeDateUtil easFluMakeDateUtil;
 
+    @Autowired
+    EASCapacityTestUtil easCapacityTestUtil;
+
     @Override
     public List<Map<String, Object>> getSaleOrderInfo(Map<String, Object> map) {
         return amsSaleOrderMapper.getSaleOrderInfo(map);
@@ -902,6 +905,8 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
                     throw new Exception("该车没有GPS定位信息,请联系销售公司物流部,申请是否可以派车。");
                 }
             }
+            //校验结束,上传金蝶
+            pushCarNumberToEas(map);
             // 得到车序号表主键
             BigDecimal saleOrderMaterialId = DataChange.dataToBigDecimal(map.get("saleOrderMaterialId"));
             // 得到承运商
@@ -2783,5 +2788,40 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         getEasPrimaryIds(Map);
     }
 
+    /**
+     * 推送车牌号给金蝶
+     * @param map
+     * @return
+     */
+    @Override
+    public int pushCarNumberToEas(Map<String, Object> map) throws Exception {
+        // 调用EAS接口将车牌号传给金蝶
+        Map<String, Object> totalMap = easCapacityTestUtil.getTotalMap();
+        totalMap.put("input",map);
+        System.out.println(totalMap);
+        String json = JSONUtils.toJSONString(totalMap);
+        System.out.println(json);
+        Map<String,Object> s = joinFeign.pushCarNumberToEas(totalMap);
+        if (s == null || s.size() == 0) {
+            throw new Exception("登录金蝶失败!请重试派车!");
+        }else{
+            try{
+                JSONObject result = new JSONObject(s);
+                //如果status不为1,抛出异常
+                if(!result.getString("status").equals("1")){
+                    throw new Exception("上传金蝶失败!请重试派车:"+result.getJSONObject("exception").getString("message"));
+                }
+            }catch (Exception e){
+                e.printStackTrace();
+                //只抛出自定义异常
+                if(e.getMessage().contains("Exception")){
+                    throw new Exception("上传金蝶失败!请重试派车!");
+                }else{
+                    throw new Exception(e.getMessage());
+                }
 
+            }
+        }
+        return 1;
+    }
 }