|
@@ -1,5 +1,6 @@
|
|
|
package com.steerinfo.dil.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.steerinfo.dil.feign.*;
|
|
|
import com.steerinfo.dil.mapper.TmstruckEnfactoryResultMapper;
|
|
|
import com.steerinfo.dil.mapper.TmstruckLeaveFactoryResultMapper;
|
|
@@ -8,10 +9,12 @@ import com.steerinfo.dil.mapper.UtilsMapper;
|
|
|
import com.steerinfo.dil.model.TmstruckLeaveFactoryResult;
|
|
|
import com.steerinfo.dil.service.ITmstruckLeaveFactoryResultService;
|
|
|
import com.steerinfo.dil.util.DataChange;
|
|
|
+import com.steerinfo.dil.util.getRequestUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
|
|
@@ -65,6 +68,15 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
|
|
|
@Autowired
|
|
|
AmsFeign amsFeign;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ JoinFeign joinFeign;
|
|
|
+
|
|
|
+ private String guoYuanUrl="http://113.204.217.110:9810/dagang/receiving";
|
|
|
+ //城嘉库登录访问接口
|
|
|
+ private String chengJiaLoginUrl="http://116.204.73.104:8083/dagon/login";
|
|
|
+ //城嘉库推送数据接口
|
|
|
+ private String chengJiaSendUrl="http://116.204.73.104:8083/dagon/selectSaleSteelOrder";
|
|
|
+
|
|
|
/**
|
|
|
* 查看运输线路是否为出厂
|
|
|
* @param orderNumber
|
|
@@ -273,9 +285,24 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
//判断该订单是不是异地库
|
|
|
- String addressPlace = tmstruckLeaveFactoryResultMapper.getAddressPlace(orderId);
|
|
|
- if (addressPlace != null && addressPlace.contains("城嘉库")) {
|
|
|
- //如果是城嘉库调用城嘉库的方法
|
|
|
+ try {
|
|
|
+ String addressPlace = tmstruckLeaveFactoryResultMapper.getAddressPlace(orderId);
|
|
|
+ if (addressPlace != null && addressPlace.contains("城嘉库")) {
|
|
|
+ List<Map<String,Object>> data =getOffSiteWarehouse(orderNumber);
|
|
|
+ //调用城嘉库登录接口获取token
|
|
|
+ String token = DagonloginChenJiaku();
|
|
|
+ if (token != null) {
|
|
|
+ for (Map<String,Object> map1:data) {
|
|
|
+ map1.put("token", token);
|
|
|
+ ///调用城嘉库推送接口
|
|
|
+ sendMesToChengJia(map1);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ System.out.println("登录城嘉库失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
|
try {
|
|
|
//发送短信
|
|
@@ -487,8 +514,92 @@ public class TmstruckLeaveFactoryResultServiceImpl implements ITmstruckLeaveFact
|
|
|
}
|
|
|
|
|
|
public List<Map<String,Object>> getOffSiteWarehouse(String orderNumber) {
|
|
|
- return tmstruckLeaveFactoryResultMapper.getOffSiteWarehouse(orderNumber);
|
|
|
+ List<Map<String, Object>> mapList = tmstruckLeaveFactoryResultMapper.getOffSiteWarehouse(orderNumber);
|
|
|
+ for (Map<String,Object> map1:mapList){
|
|
|
+ String materialName =(String) map1.get("materialName");
|
|
|
+ if (materialName.contains("盘螺")){
|
|
|
+ map1.put("materialType","盘螺");
|
|
|
+ }else if (materialName.contains("盘圆")||materialName.contains("盘元")){
|
|
|
+ map1.put("materialType","盘圆");
|
|
|
+ }else if (materialName.contains("螺纹")){
|
|
|
+ map1.put("materialType","螺纹钢");
|
|
|
+ }
|
|
|
+ //接口发送日期
|
|
|
+ map1.put("sendTime",new Date());
|
|
|
+ }
|
|
|
+ return mapList;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 访问城嘉库接口方法
|
|
|
+ * @param
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public String DagonloginChenJiaku() throws IOException {
|
|
|
+ Map<String, String> reqMap = new HashMap<>();
|
|
|
+ reqMap.put("username","dagon");
|
|
|
+ reqMap.put("password","147258");
|
|
|
+// JSONObject jsonObject = new JSONObject();
|
|
|
+// jsonObject.putAll(reqMap);
|
|
|
+// Map<String,Object> map=new HashMap<>();
|
|
|
+// map.put("username","dagon");
|
|
|
+// map.put("password","147258");
|
|
|
+// jsonObject.putAll(map);
|
|
|
+// jsonObject.put("username","dagon");
|
|
|
+// jsonObject.put("password","147258");
|
|
|
+ String jsonData = null;
|
|
|
+ jsonData = getRequestUtils.doPost(chengJiaLoginUrl,reqMap);
|
|
|
+ if(!"null".equals(jsonData)){
|
|
|
+ System.out.println(jsonData);
|
|
|
+ HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
|
|
|
+ BigDecimal code = DataChange.dataToBigDecimal( hashMap.get("code"));
|
|
|
+ System.out.println(hashMap.get("message"));
|
|
|
+ if(200==code.intValue()){
|
|
|
+ Map<String,Object> result =(Map<String,Object>) hashMap.get("result");
|
|
|
+ String token =(String) result.get("token");
|
|
|
+ return token;
|
|
|
+ }else {
|
|
|
+ System.out.println("推送数据失败"+hashMap.get("message"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+
|
|
|
+
|
|
|
+// String body = restTemplate.postForEntity(chengJiaLoginUrl, reqMap, String.class).getBody();
|
|
|
+// System.out.println(body);
|
|
|
+// return body;
|
|
|
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 推送数据给城嘉库
|
|
|
+ */
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 访问重庆果园库接口方法
|
|
|
+ * @param map
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int sendMesToChengJia(Map<String, Object> map){
|
|
|
+ String token =(String) map.get("token");
|
|
|
+ Map<String,Object> jsonObject = new HashMap<>();
|
|
|
+ jsonObject.remove(token);
|
|
|
+ jsonObject.putAll(map);
|
|
|
+ String jsonData = null;
|
|
|
+ jsonData = getRequestUtils.doPostAddHeader(chengJiaSendUrl, jsonObject,token);
|
|
|
+ if(!"null".equals(jsonData)){
|
|
|
+ System.out.println(jsonData);
|
|
|
+ HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
|
|
|
+ BigDecimal code = DataChange.dataToBigDecimal(hashMap.get("code"));
|
|
|
+ System.out.println(hashMap.get("message"));
|
|
|
+ if(code.intValue()==200){
|
|
|
+ return 1;
|
|
|
+ }else {
|
|
|
+ System.out.println("推送数据失败"+hashMap.get("message"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
}
|