From 9b1c48e0aadf587a104daa144dbb9f070b3d35b2 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Thu, 25 Nov 2021 14:38:02 +0800
Subject: [PATCH] 1.统计

---
 src/main/java/org/springblade/modules/equipage/controller/CarController.java |  188 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 187 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/springblade/modules/equipage/controller/CarController.java b/src/main/java/org/springblade/modules/equipage/controller/CarController.java
index 81ef58a..637ca46 100644
--- a/src/main/java/org/springblade/modules/equipage/controller/CarController.java
+++ b/src/main/java/org/springblade/modules/equipage/controller/CarController.java
@@ -3,7 +3,10 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import liquibase.pro.packaged.C;
 import lombok.AllArgsConstructor;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.net.ftp.FTPConnectionClosedException;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
@@ -12,6 +15,22 @@
 import org.springblade.modules.equipage.service.CarService;
 import org.springblade.modules.equipage.vo.CarVo;
 import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.awt.*;
+import java.io.*;
+import java.net.URL;
+import java.net.URLDecoder;
+import java.nio.charset.Charset;
+import java.util.*;
+import java.util.List;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+import java.util.zip.ZipInputStream;
+import java.util.zip.ZipOutputStream;
+
+import static org.springblade.common.config.FtpConfig.*;
 
 /**
  * @author zhongrj
@@ -24,11 +43,13 @@
 public class CarController {
 
 	private final CarService carService;
+	private static String csvurl;
 
 	/**
 	 * 自定义分页
+	 *
 	 * @param query page,size
-	 * @param car 车辆信息对象
+	 * @param car   车辆信息对象
 	 */
 	@GetMapping("/page")
 	public R<IPage<CarVo>> page(CarVo car, Query query) {
@@ -38,6 +59,7 @@
 
 	/**
 	 * 新增
+	 *
 	 * @param car 车辆信息对象
 	 */
 	@PostMapping("/save")
@@ -48,6 +70,7 @@
 
 	/**
 	 * 修改
+	 *
 	 * @param car 车辆信息对象
 	 */
 	@PostMapping("/update")
@@ -57,6 +80,7 @@
 
 	/**
 	 * 新增或修改
+	 *
 	 * @param car 车辆信息对象
 	 */
 	@PostMapping("/submit")
@@ -66,6 +90,7 @@
 
 	/**
 	 * 删除
+	 *
 	 * @param ids 车辆信息ids 数组
 	 */
 	@PostMapping("/remove")
@@ -75,6 +100,7 @@
 
 	/**
 	 * 详情
+	 *
 	 * @param car 车辆信息对象
 	 */
 	@GetMapping("/detail")
@@ -84,4 +110,164 @@
 		return R.data(detail);
 	}
 
+	/**
+	 * 查询车辆实时位置
+	 */
+	@GetMapping("/locationcar")
+	public String locationcar(String imei) {
+		String url = "http://dvopenapi.aimap.net.cn/openapi/device/location";
+		String res = null;
+		Map<String, Object> params = new HashMap<>();
+		params.put("imei", imei);
+		params.put("appId", "PO00000761");
+		params.put("timestamp", System.currentTimeMillis());
+		String secert = "dXRGb2pRNVdWOGQ3d1ouV29UYzc1MnJaUnBwTzUx";
+
+		String computeSign = "";
+		try {
+			computeSign = Md5SignUtil.signRequest(params, secert);
+		} catch (IOException e1) {
+			e1.printStackTrace();
+		}
+		params.put("sign", computeSign);
+		try {
+			//String res = HttpReqUtil.getInstance().doGet(url, params, null);
+			res = HttpReqUtil.getInstance().doPost(url, params, null);
+			System.out.println("----" + res);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return res;
+	}
+
+	/**
+	 * 查询车辆轨迹
+	 */
+
+	@GetMapping("/locationhistoryTrack")
+	public R locationhistoryTrack(String beginTime, String endTime, String rectify,String callbackId) throws AWTException {
+		String url = "http://dvopenapi.aimap.net.cn/openapi/device/historyTrack";
+		String res = null;
+		Map<String, Object> params = new HashMap<>();
+		params.put("imei", "861636056082414");
+		params.put("beginTime", beginTime);
+		params.put("endTime", endTime);
+		params.put("rectify", rectify);
+		params.put("callbackUrl", "http://2h3f861221.wicp.vip/car/SaveUrl");
+		params.put("callbackId", callbackId);
+		params.put("appId", "PO00000761");
+		params.put("timestamp", System.currentTimeMillis());
+		String secert = "dXRGb2pRNVdWOGQ3d1ouV29UYzc1MnJaUnBwTzUx";
+
+		String computeSign = "";
+		try {
+			computeSign = Md5SignUtil.signRequest(params, secert);
+		} catch (IOException e1) {
+			e1.printStackTrace();
+		}
+		params.put("sign", computeSign);
+		try {
+			//String res = HttpReqUtil.getInstance().doGet(url, params, null);
+			res = HttpReqUtil.getInstance().doPost(url, params, null);
+			Thread.sleep(2000);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+
+		return R.data(csvurl);
+
+	}
+
+	/**
+	 * 实时视频直播指令下发接口
+	 */
+	@GetMapping("/cmd")
+	public String cmd(int camera, String action) {
+		String url = "http://dvopenapi.aimap.net.cn/openapi/live/cmd";
+		String res = null;
+		Map<String, Object> params = new HashMap<>();
+		//设备imei号
+		params.put("imei", "861636056082414");
+		//摄像头ID
+		params.put("camera", camera);
+		//实时视频指令类型
+		params.put("action", action);
+		params.put("appId", "PO00000761");
+		params.put("timestamp", System.currentTimeMillis());
+		String secert = "dXRGb2pRNVdWOGQ3d1ouV29UYzc1MnJaUnBwTzUx";
+		String computeSign = "";
+		try {
+			computeSign = Md5SignUtil.signRequest(params, secert);
+		} catch (IOException e1) {
+			e1.printStackTrace();
+		}
+		params.put("sign", computeSign);
+		try {
+			//String res = HttpReqUtil.getInstance().doGet(url, params, null);
+			long startTime=System.currentTimeMillis();   //获取开始时间
+			res = HttpReqUtil.getInstance().doPost(url, params, null);
+			long endTime=System.currentTimeMillis(); //获取结束时间
+			System.out.println("程序运行时间: "+(endTime-startTime)+"ms");
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return res;
+	}
+
+
+	/**
+	 * 轨迹回调
+	 *
+	 * @param callbackId
+	 * @param fileUrl
+	 * @throws UnsupportedEncodingException
+	 */
+	@PostMapping("/SaveUrl")
+	@ApiOperation(value = "详情", notes = "传入car")
+	public void SaveUrl(String callbackId, String fileUrl) throws Exception {
+		csvurl = null;
+		DowloadZipUtil dowloadZipUtil = new DowloadZipUtil();
+		File file = dowloadZipUtil.downloadFile(fileUrl, "D:\\caiji");
+		//文件名
+		String name = file.getName();
+		String substring = name.substring(0, name.length() - 4);
+		//解压数据
+		FileZip fileZip = new FileZip();
+		fileZip.ZipUncompress("D:\\caiji\\" + substring + ".zip", "D:\\caiji");
+		csvurl =substring + ".csv";
+	}
+
+	/**
+	 * 人员
+	 * @return
+	 * @throws Exception
+	 */
+	@GetMapping("/Peo")
+	public String cs() throws Exception {
+		String url = "http://223.82.109.183:2080/Escort/getgis.php";
+		Map<String, Object> params = new HashMap<>();
+		//设备imei号
+		params.put("acc", "7731");
+		String res = null;
+			res = HttpReqUtil.getInstance().doPost(url, params, null);
+		return res;
+	}
+
+	/**
+	 * 轨迹
+	 * @return
+	 * @throws Exception
+	 */
+	@GetMapping("/Peog")
+	public String Peocar() throws Exception {
+		String url = "http://223.82.109.183:2080/Escort/getgistrack.php";
+		Map<String, Object> params = new HashMap<>();
+		//设备imei号
+		params.put("number", "7730");
+		params.put("acc", "7731");
+		String res = null;
+		res = HttpReqUtil.getInstance().doPost(url, params, null);
+		return res;
+	}
+
 }

--
Gitblit v1.9.3