Просмотр исходного кода

Merge branch 'master' of https://git.steerinfo.com/DAL-DAZHOU/DAL-DAZHOU-API

Tiroble 3 лет назад
Родитель
Сommit
56c8e81a51

+ 5 - 1
pom.xml

@@ -53,7 +53,11 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-websocket</artifactId>
         </dependency>
-
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>1.2.24</version>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>

+ 12 - 0
src/main/java/com/steerinfo/dil/controller/UniversalController.java

@@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.*;
 
 
+import java.io.IOException;
 import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.List;
@@ -798,4 +799,15 @@ public class UniversalController extends BaseRESTfulController {
     public int getOrderNum(@RequestParam("capacityNumber") String capacityNumber){
         return universalMapper.getOrderNum(capacityNumber);
     }
+
+    @ApiModelProperty(value = "补录计量实绩")
+    @PostMapping("/recordingWeightResult")
+    public int recordingWeightResult(@RequestBody(required = false)List<Map<String,Object>>mapList){
+        try {
+            return universalService.recordingWeightResult(mapList);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return 1;
+    }
 }

+ 24 - 0
src/main/java/com/steerinfo/dil/service/impl/UniversalServiceImpl.java

@@ -1,14 +1,17 @@
 package com.steerinfo.dil.service.impl;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.steerinfo.dil.feign.JoinFeign;
 import com.steerinfo.dil.mapper.UniversalMapper;
 import com.steerinfo.dil.service.UniversalService;
 import com.steerinfo.dil.util.ESUtil;
+import com.steerinfo.dil.util.HTTPRequestUtils;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.io.IOException;
 import java.io.InputStream;
 import java.math.BigDecimal;
 import java.sql.Blob;
@@ -203,4 +206,25 @@ public class UniversalServiceImpl implements UniversalService {
     public List<Map<String, Object>> getMaterialIdByOrderId(Integer orderId) {
         return universalMapper.getMaterialIdByOrderId(orderId);
     }
+
+    public int recordingWeightResult(List<Map<String, Object>> mapList) throws IOException {
+        String URL = "http://172.16.33.166:8066/api/v1/join/tmstruckweightresult/receiveTmsTruckWeightResult";
+        String jsonData = null;
+        String jsonString= JSON.toJSONString(mapList);
+        jsonData = HTTPRequestUtils.send(URL, jsonString,"utf-8");
+        if(!"null".equals(jsonData)){
+            System.out.println(jsonData);
+            HashMap hashMap = JSON.parseObject(jsonData, HashMap.class);
+            String code = (String) hashMap.get("code");
+            System.out.println(hashMap.get("code"));
+            if("SUCCESS".equals(code)){
+                return 1;
+            }else{
+                return 0;
+            }
+        }else{
+            System.out.println("短信发送失败:" + jsonData);
+            return 0;
+        }
+    }
 }

+ 126 - 0
src/main/java/com/steerinfo/dil/util/HTTPRequestUtils.java

@@ -0,0 +1,126 @@
+package com.steerinfo.dil.util;
+
+import com.alibaba.fastjson.JSONObject;
+import org.apache.http.HttpEntity;
+import org.apache.http.ParseException;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.message.BasicHeader;
+import org.apache.http.protocol.HTTP;
+import org.apache.http.util.EntityUtils;
+
+import java.io.*;
+import java.net.HttpURLConnection;
+import java.net.URL;
+
+public class HTTPRequestUtils {
+    /**
+     * 发送post请求
+     * @param url  路径
+     * @param json  参数(json类型)
+     * @param encoding 编码格式
+     * @return
+     * @throws ParseException
+     * @throws IOException
+     */
+    public static String send(String url, String json, String encoding) throws ParseException, IOException {
+        String body = "";
+
+        //创建httpclient对象
+        CloseableHttpClient client = HttpClients.createDefault();
+        //创建post方式请求对象
+        HttpPost httpPost = new HttpPost(url);
+
+        //装填参数
+        StringEntity s = new StringEntity(json.toString(), "utf-8");
+        s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json"));
+        //设置参数到请求对象中
+        httpPost.setEntity(s);
+        System.out.println("请求地址:" + url);
+        System.out.println(json);
+        httpPost.setHeader("Content-type", "application/json");
+        httpPost.setHeader("-UserAgent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
+
+        //执行请求操作,并拿到结果(同步阻塞)
+        CloseableHttpResponse response = client.execute(httpPost);
+        System.out.println(response);
+        //获取结果实体
+        HttpEntity entity = response.getEntity();
+        System.out.println(entity);
+        if (entity != null) {
+            //按指定编码转换结果实体为String类型
+            body = EntityUtils.toString(entity, encoding);
+        }
+        EntityUtils.consume(entity);
+        //释放链接
+        response.close();
+        return body;
+    }
+
+
+    public static String getJsonData(JSONObject jsonParam,String urls) {
+        StringBuffer sb=new StringBuffer();
+        try {
+            // 创建url资源
+            URL url = new URL(urls);
+            // 建立http连接
+            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+            // 设置允许输出
+            conn.setDoOutput(true);
+            // 设置允许输入
+            conn.setDoInput(true);
+            // 设置不用缓存
+            conn.setUseCaches(false);
+            // 设置传递方式
+            conn.setRequestMethod("POST");
+            // 设置维持长连接
+            conn.setRequestProperty("Connection", "Keep-Alive");
+            // 设置文件字符集:
+            conn.setRequestProperty("Charset", "UTF-8");
+            // 转换为字节数组
+            byte[] data = (jsonParam.toString()).getBytes();
+            // 设置文件长度
+            conn.setRequestProperty("Content-Length", String.valueOf(data.length));
+            // 设置文件类型:
+            conn.setRequestProperty("contentType", "application/json");
+            // 开始连接请求
+            conn.connect();
+            OutputStream out = new DataOutputStream(conn.getOutputStream()) ;
+            // 写入请求的字符串
+            out.write((jsonParam.toString()).getBytes());
+            out.flush();
+            out.close();
+            System.out.println(conn.getResponseCode());
+
+            // 请求返回的状态
+            if (HttpURLConnection.HTTP_OK == conn.getResponseCode()){
+                System.out.println("连接成功");
+                // 请求返回的数据
+                InputStream in1 = conn.getInputStream();
+                try {
+                    String readLine = new String();
+                    BufferedReader responseReader=new BufferedReader(new InputStreamReader(in1,"UTF-8"));
+                    while((readLine=responseReader.readLine())!=null){
+                        sb.append(readLine).append("\n");
+                    }
+                    responseReader.close();
+                    System.out.println(sb.toString());
+
+                } catch (Exception e1) {
+                    e1.printStackTrace();
+                }
+            } else {
+                System.out.println("error++");
+            }
+        } catch (Exception e) {
+
+        }
+        return sb.toString();
+
+    }
+
+
+}