bug修复
This commit is contained in:
parent
0fa8c91a18
commit
78c2785be3
27
src/main/java/com/zhgd/xmgl/base/ParkReservation.java
Normal file
27
src/main/java/com/zhgd/xmgl/base/ParkReservation.java
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
package com.zhgd.xmgl.base;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class ParkReservation {
|
||||||
|
@JsonProperty("parkSyscode")
|
||||||
|
private String parkSyscode;
|
||||||
|
@JsonProperty("plateNo")
|
||||||
|
private String plateNo;
|
||||||
|
@JsonProperty("phoneNo")
|
||||||
|
private String phoneNo;
|
||||||
|
@JsonProperty("owner")
|
||||||
|
private String owner;
|
||||||
|
@JsonProperty("allowTimes")
|
||||||
|
private Long allowTimes;
|
||||||
|
@JsonProperty("isCharge")
|
||||||
|
private String isCharge;
|
||||||
|
@JsonProperty("resvWay")
|
||||||
|
private String resvWay;
|
||||||
|
@JsonProperty("startTime")
|
||||||
|
private String startTime;
|
||||||
|
@JsonProperty("endTime")
|
||||||
|
private String endTime;
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,23 +1,21 @@
|
|||||||
package com.zhgd.xmgl.call;
|
package com.zhgd.xmgl.call;
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.google.gson.JsonArray;
|
import com.google.gson.JsonArray;
|
||||||
import com.google.gson.JsonObject;
|
|
||||||
import com.zhgd.jeecg.common.api.vo.Result;
|
import com.zhgd.jeecg.common.api.vo.Result;
|
||||||
import com.zhgd.xmgl.base.HikvisionCarInfo;
|
import com.zhgd.xmgl.base.*;
|
||||||
import com.zhgd.xmgl.base.HikvisionEventsPictureRq;
|
|
||||||
import com.zhgd.xmgl.base.HikvisionOrganization;
|
|
||||||
import com.zhgd.xmgl.base.SubscribeEventQo;
|
|
||||||
import com.zhgd.xmgl.modules.basicdata.entity.HikvisionRequestRetry;
|
import com.zhgd.xmgl.modules.basicdata.entity.HikvisionRequestRetry;
|
||||||
import com.zhgd.xmgl.modules.basicdata.mapper.HikvisionRequestRetryMapper;
|
import com.zhgd.xmgl.modules.basicdata.mapper.HikvisionRequestRetryMapper;
|
||||||
import com.zhgd.xmgl.modules.car.entity.CarInfo;
|
import com.zhgd.xmgl.modules.car.entity.CarInfo;
|
||||||
import com.zhgd.xmgl.modules.car.entity.CarPassRecord;
|
import com.zhgd.xmgl.modules.car.entity.CarPassRecord;
|
||||||
|
import com.zhgd.xmgl.modules.car.mapper.CarInfoMapper;
|
||||||
import com.zhgd.xmgl.modules.car.mapper.CarPassRecordMapper;
|
import com.zhgd.xmgl.modules.car.mapper.CarPassRecordMapper;
|
||||||
|
import com.zhgd.xmgl.modules.car.mapper.CarTypeMapper;
|
||||||
import com.zhgd.xmgl.modules.project.entity.Project;
|
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||||
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||||
import com.zhgd.xmgl.modules.worker.entity.DepartmentInfo;
|
import com.zhgd.xmgl.modules.worker.entity.DepartmentInfo;
|
||||||
@ -36,10 +34,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.context.annotation.Lazy;
|
import org.springframework.context.annotation.Lazy;
|
||||||
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.scheduling.annotation.Scheduled;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
import springfox.documentation.annotations.ApiIgnore;
|
import springfox.documentation.annotations.ApiIgnore;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -50,6 +45,8 @@ import java.util.*;
|
|||||||
public class HikvisionCall {
|
public class HikvisionCall {
|
||||||
@Value("${upload.image.url.prefix:}")
|
@Value("${upload.image.url.prefix:}")
|
||||||
private String imageUrlPrefix;
|
private String imageUrlPrefix;
|
||||||
|
@Value("${basePath:}")
|
||||||
|
private String basePath;
|
||||||
@Autowired
|
@Autowired
|
||||||
@Lazy
|
@Lazy
|
||||||
private ProjectMapper projectMapper;
|
private ProjectMapper projectMapper;
|
||||||
@ -65,6 +62,12 @@ public class HikvisionCall {
|
|||||||
@Autowired
|
@Autowired
|
||||||
@Lazy
|
@Lazy
|
||||||
private HikvisionRequestRetryMapper hikvisionRequestRetryMapper;
|
private HikvisionRequestRetryMapper hikvisionRequestRetryMapper;
|
||||||
|
@Autowired
|
||||||
|
@Lazy
|
||||||
|
private CarTypeMapper carTypeMapper;
|
||||||
|
@Autowired
|
||||||
|
@Lazy
|
||||||
|
private CarInfoMapper carInfoMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 海康请求失败重试定时
|
* 海康请求失败重试定时
|
||||||
@ -109,7 +112,7 @@ public class HikvisionCall {
|
|||||||
jsonBody.put("jobNo", workerInfo.getPersonSn());
|
jsonBody.put("jobNo", workerInfo.getPersonSn());
|
||||||
ArrayList<HashMap<String, String>> faceList = new ArrayList<>();
|
ArrayList<HashMap<String, String>> faceList = new ArrayList<>();
|
||||||
HashMap<String, String> faceMap = new HashMap<>();
|
HashMap<String, String> faceMap = new HashMap<>();
|
||||||
faceMap.put("faceData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(imageUrlPrefix + "/" + workerInfo.getFieldAcquisitionUrl())));
|
faceMap.put("faceData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(basePath + "/" + workerInfo.getFieldAcquisitionUrl())));
|
||||||
faceList.add(faceMap);
|
faceList.add(faceMap);
|
||||||
jsonBody.put("faces", faceList);
|
jsonBody.put("faces", faceList);
|
||||||
String body = jsonBody.toJSONString();
|
String body = jsonBody.toJSONString();
|
||||||
@ -161,7 +164,7 @@ public class HikvisionCall {
|
|||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
JSONObject jo = new JSONObject();
|
JSONObject jo = new JSONObject();
|
||||||
jo.put("personId", workerInfo.getId());
|
jo.put("personId", workerInfo.getId());
|
||||||
jo.put("faceData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(imageUrlPrefix + "/" + workerInfo.getFieldAcquisitionUrl())));
|
jo.put("faceData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(basePath + "/" + workerInfo.getFieldAcquisitionUrl())));
|
||||||
HikvisionUtil.doPost(host, path, jo.toJSONString(), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
HikvisionUtil.doPost(host, path, jo.toJSONString(), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -250,25 +253,63 @@ public class HikvisionCall {
|
|||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/vehicle/batch/add";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/vehicle/batch/add";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionCarInfo hikvisionCarInfo = getHikvisionCarInfo(carInfo);
|
HikvisionCarInfo hikvisionCarInfo = getHikvisionCarInfo(carInfo);
|
||||||
JsonArray array = new JsonArray();
|
ArrayList<HikvisionCarInfo> list = new ArrayList<>();
|
||||||
array.add(BeanUtil.toBean(hikvisionCarInfo, JsonObject.class));
|
list.add(hikvisionCarInfo);
|
||||||
String body = array.toString();
|
HikvisionUtil.doPost(host, path, JSON.toJSONString(list), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private HikvisionCarInfo getHikvisionCarInfo(CarInfo carInfo) {
|
private HikvisionCarInfo getHikvisionCarInfo(CarInfo carInfo) {
|
||||||
HikvisionCarInfo hikvisionCarInfo = new HikvisionCarInfo();
|
HikvisionCarInfo hikvisionCarInfo = new HikvisionCarInfo();
|
||||||
hikvisionCarInfo.setClientId(carInfo.getId());
|
hikvisionCarInfo.setClientId(carInfo.getId());
|
||||||
hikvisionCarInfo.setPlateNo(carInfo.getCarNumber());
|
hikvisionCarInfo.setPlateNo(carInfo.getCarNumber());
|
||||||
hikvisionCarInfo.setPersonId(carInfo.getDriverName());
|
hikvisionCarInfo.setPersonId(carInfo.getDriverWorkerId());
|
||||||
hikvisionCarInfo.setPlateType(null);
|
hikvisionCarInfo.setPlateType(null);
|
||||||
hikvisionCarInfo.setPlateColor(null);
|
hikvisionCarInfo.setPlateColor(getPlateColor(carInfo));
|
||||||
hikvisionCarInfo.setVehicleType(null);
|
hikvisionCarInfo.setVehicleType(getVehicleType(carInfo));
|
||||||
hikvisionCarInfo.setVehicleColor(getVehicleColor(carInfo.getCarColor()));
|
hikvisionCarInfo.setVehicleColor(getVehicleColor(carInfo.getCarColor()));
|
||||||
hikvisionCarInfo.setDescription(null);
|
hikvisionCarInfo.setDescription(null);
|
||||||
return hikvisionCarInfo;
|
return hikvisionCarInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String getPlateColor(CarInfo carInfo) {
|
||||||
|
String carColor = carInfo.getCarColor();
|
||||||
|
if (StringUtils.isBlank(carColor)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
switch (carColor) {
|
||||||
|
case "蓝色":
|
||||||
|
return "0";
|
||||||
|
case "黄色":
|
||||||
|
return "1";
|
||||||
|
case "白色":
|
||||||
|
return "2";
|
||||||
|
case "黑色":
|
||||||
|
return "3";
|
||||||
|
case "绿色":
|
||||||
|
return "4";
|
||||||
|
case "民航黑色":
|
||||||
|
return "5";
|
||||||
|
case "其他颜色":
|
||||||
|
return "255";
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getVehicleType(CarInfo carInfo) {
|
||||||
|
String carTypeName = carInfoMapper.getCarTypeName(carInfo);
|
||||||
|
switch (carTypeName) {
|
||||||
|
case "其他车":
|
||||||
|
return "0";
|
||||||
|
case "小型车":
|
||||||
|
return "1";
|
||||||
|
case "大型车":
|
||||||
|
return "2";
|
||||||
|
case "摩托车":
|
||||||
|
return "3";
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private String getVehicleColor(String carColor) {
|
private String getVehicleColor(String carColor) {
|
||||||
if (StringUtils.isBlank(carColor)) {
|
if (StringUtils.isBlank(carColor)) {
|
||||||
return null;
|
return null;
|
||||||
@ -325,10 +366,9 @@ public class HikvisionCall {
|
|||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/vehicle/single/update";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/vehicle/single/update";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionCarInfo hikvisionCarInfo = getHikvisionCarInfo(carInfo);
|
HikvisionCarInfo hikvisionCarInfo = getHikvisionCarInfo(carInfo);
|
||||||
JsonArray array = new JsonArray();
|
ArrayList<HikvisionCarInfo> list = new ArrayList<>();
|
||||||
array.add(BeanUtil.toBean(hikvisionCarInfo, JsonObject.class));
|
list.add(hikvisionCarInfo);
|
||||||
String body = array.toString();
|
HikvisionUtil.doPost(host, path, JSON.toJSONString(list), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -491,9 +531,9 @@ public class HikvisionCall {
|
|||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(enterpriseInfo);
|
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(enterpriseInfo);
|
||||||
JsonArray array = new JsonArray();
|
ArrayList<HikvisionOrganization> list = new ArrayList<HikvisionOrganization>();
|
||||||
array.add(BeanUtil.toBean(hikvisionOrganization, JsonObject.class));
|
list.add(hikvisionOrganization);
|
||||||
String body = array.toString();
|
String body = JSON.toJSONString(list);
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -557,10 +597,9 @@ public class HikvisionCall {
|
|||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(teamInfo);
|
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(teamInfo);
|
||||||
JsonArray array = new JsonArray();
|
ArrayList<HikvisionOrganization> list = new ArrayList<>();
|
||||||
array.add(BeanUtil.toBean(hikvisionOrganization, JsonObject.class));
|
list.add(hikvisionOrganization);
|
||||||
String body = array.toString();
|
HikvisionUtil.doPost(host, path, JSON.toJSONString(list), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private HikvisionOrganization getHikvisionOrganization(TeamInfo teamInfo) {
|
private HikvisionOrganization getHikvisionOrganization(TeamInfo teamInfo) {
|
||||||
@ -621,10 +660,9 @@ public class HikvisionCall {
|
|||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(departmentInfo);
|
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(departmentInfo);
|
||||||
JsonArray array = new JsonArray();
|
ArrayList<HikvisionOrganization> list = new ArrayList<>();
|
||||||
array.add(BeanUtil.toBean(hikvisionOrganization, JsonObject.class));
|
list.add(hikvisionOrganization);
|
||||||
String body = array.toString();
|
HikvisionUtil.doPost(host, path, JSON.toJSONString(list), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private HikvisionOrganization getHikvisionOrganization(DepartmentInfo departmentInfo) {
|
private HikvisionOrganization getHikvisionOrganization(DepartmentInfo departmentInfo) {
|
||||||
@ -681,21 +719,101 @@ public class HikvisionCall {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final String ARTEMIS_PATH = "/artemis";
|
final String ARTEMIS_PATH = "/artemis";
|
||||||
final String path = ARTEMIS_PATH + "/api/resource/v1/org/single/update";
|
final String path = ARTEMIS_PATH + "/api/resource/v1/org/batch/add";
|
||||||
String host = "https://" + project.getArtemisConfigHost();
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(project);
|
HikvisionOrganization hikvisionOrganization = getHikvisionOrganization(project);
|
||||||
JsonArray array = new JsonArray();
|
List l = new ArrayList<HikvisionOrganization>();
|
||||||
array.add(BeanUtil.toBean(hikvisionOrganization, JsonObject.class));
|
l.add(hikvisionOrganization);
|
||||||
String body = array.toString();
|
HikvisionUtil.doPost(host, path, JSONArray.toJSONString(l), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取组织列表
|
||||||
|
*
|
||||||
|
* @param project
|
||||||
|
*/
|
||||||
|
public void getOrg(Project project) {
|
||||||
|
if (project == null || !Objects.equals(project.getSyncHikvision(), 1)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
final String ARTEMIS_PATH = "/artemis";
|
||||||
|
final String path = ARTEMIS_PATH + "/api/resource/v1/org/orgList";
|
||||||
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
|
JSONObject jo = new JSONObject();
|
||||||
|
jo.put("pageNo", 1);
|
||||||
|
jo.put("pageSize", 100);
|
||||||
|
String body = jo.toJSONString();
|
||||||
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
HikvisionUtil.doPost(host, path, body, null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取停车库列表
|
||||||
|
*
|
||||||
|
* @param project
|
||||||
|
*/
|
||||||
|
public void getParkList(Project project) {
|
||||||
|
if (project == null || !Objects.equals(project.getSyncHikvision(), 1)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
final String ARTEMIS_PATH = "/artemis";
|
||||||
|
final String path = ARTEMIS_PATH + "/api/resource/v1/park/parkList";
|
||||||
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
|
JSONObject jo = new JSONObject();
|
||||||
|
HikvisionUtil.doPost(host, path, jo.toJSONString(), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
|
}
|
||||||
|
|
||||||
private HikvisionOrganization getHikvisionOrganization(Project project) {
|
private HikvisionOrganization getHikvisionOrganization(Project project) {
|
||||||
HikvisionOrganization hikvisionOrganization = new HikvisionOrganization();
|
HikvisionOrganization hikvisionOrganization = new HikvisionOrganization();
|
||||||
hikvisionOrganization.setClientId(null);
|
hikvisionOrganization.setClientId(null);
|
||||||
hikvisionOrganization.setOrgIndexCode(project.getProjectSn());
|
hikvisionOrganization.setOrgIndexCode(project.getProjectSn());
|
||||||
hikvisionOrganization.setOrgName(project.getProjectName());
|
hikvisionOrganization.setOrgName(project.getProjectName());
|
||||||
hikvisionOrganization.setParentIndexCode(null);
|
hikvisionOrganization.setParentIndexCode("root000000");
|
||||||
return hikvisionOrganization;
|
return hikvisionOrganization;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/getOrg")
|
||||||
|
public Result getOrg() {
|
||||||
|
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
|
||||||
|
getOrg(project);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/getPark")
|
||||||
|
public Result getParkList() {
|
||||||
|
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
|
||||||
|
getParkList(project);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 预约车辆
|
||||||
|
*
|
||||||
|
* @param project
|
||||||
|
*/
|
||||||
|
public void save(Project project) {
|
||||||
|
if (project == null || !Objects.equals(project.getSyncHikvision(), 1)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
final String ARTEMIS_PATH = "/artemis";
|
||||||
|
final String path = ARTEMIS_PATH + "/api/pms/v2/parkingSpace/reservations/addition";
|
||||||
|
String host = "https://" + project.getArtemisConfigHost();
|
||||||
|
ParkReservation parkReservation = getParkReservation(project);
|
||||||
|
HikvisionUtil.doPost(host, path, JSON.toJSONString(parkReservation), null, project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
|
||||||
|
}
|
||||||
|
|
||||||
|
private ParkReservation getParkReservation(Project project) {
|
||||||
|
ParkReservation parkReservation = new ParkReservation();
|
||||||
|
parkReservation.setParkSyscode(null);
|
||||||
|
//parkReservation.setPlateNo();
|
||||||
|
//parkReservation.setPhoneNo();
|
||||||
|
//parkReservation.setOwner();
|
||||||
|
//parkReservation.setAllowTimes();
|
||||||
|
//parkReservation.setIsCharge();
|
||||||
|
//parkReservation.setResvWay();
|
||||||
|
//parkReservation.setStartTime();
|
||||||
|
//parkReservation.setEndTime();
|
||||||
|
return parkReservation;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,6 +14,7 @@ import org.jeecgframework.poi.excel.annotation.Excel;
|
|||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 车辆黑白名单管理
|
* @Description: 车辆黑白名单管理
|
||||||
@ -30,7 +31,7 @@ public class CarInfo implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 项目车辆信息表
|
* 项目车辆信息表
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@TableId(type = IdType.AUTO)
|
@TableId(type = IdType.AUTO)
|
||||||
@ApiModelProperty(value = "项目车辆信息表")
|
@ApiModelProperty(value = "项目车辆信息表")
|
||||||
private java.lang.Long id;
|
private java.lang.Long id;
|
||||||
@ -98,4 +99,19 @@ public class CarInfo implements Serializable {
|
|||||||
|
|
||||||
@ApiModelProperty(value = "报警推送人")
|
@ApiModelProperty(value = "报警推送人")
|
||||||
private java.lang.String alarmPushWorkerId;
|
private java.lang.String alarmPushWorkerId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否预约车辆")
|
||||||
|
private Boolean isReserveCar;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "预约开始时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date reserveStartTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "预约结束时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date reserveEndTime;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,13 +13,15 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
/**
|
/**
|
||||||
* @Description: 车辆黑白名单管理
|
* @Description: 车辆黑白名单管理
|
||||||
* @author: pds
|
* @author: pds
|
||||||
* @date: 2020-09-29
|
* @date: 2020-09-29
|
||||||
* @version: V1.0
|
* @version: V1.0
|
||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface CarInfoMapper extends BaseMapper<CarInfo> {
|
public interface CarInfoMapper extends BaseMapper<CarInfo> {
|
||||||
|
|
||||||
List<EntityMap> selectCarList(Page<EntityMap> page, @Param("param")Map<String, Object> map);
|
List<EntityMap> selectCarList(Page<EntityMap> page, @Param("param") Map<String, Object> map);
|
||||||
|
|
||||||
List<Map<String, Object>> selectCarTypeCount(Map<String, Object> map);
|
List<Map<String, Object>> selectCarTypeCount(Map<String, Object> map);
|
||||||
|
|
||||||
|
String getCarTypeName(CarInfo carInfo);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,10 +16,17 @@
|
|||||||
</select>
|
</select>
|
||||||
<select id="selectCarTypeCount" resultType="java.util.Map">
|
<select id="selectCarTypeCount" resultType="java.util.Map">
|
||||||
SELECT b.car_type_name carTypeName,COUNT(1) carTypeNum,
|
SELECT b.car_type_name carTypeName,COUNT(1) carTypeNum,
|
||||||
IFNULL(SUM((CASE WHEN a.is_black=1 THEN 1 ELSE 0 END)),0) blackNum,
|
IFNULL(SUM((CASE WHEN a.is_black=1 THEN 1 ELSE 0 END)),0) blackNum,
|
||||||
IFNULL(SUM((CASE WHEN a.is_black=0 THEN 1 ELSE 0 END)),0) whiteNum
|
IFNULL(SUM((CASE WHEN a.is_black=0 THEN 1 ELSE 0 END)),0) whiteNum
|
||||||
FROM car_info a INNER JOIN car_type b ON (a.car_type=b.id and a.project_sn=b.project_sn)
|
FROM car_info a INNER JOIN car_type b ON (a.car_type=b.id and a.project_sn=b.project_sn)
|
||||||
WHERE a.project_sn=#{projectSn}
|
WHERE a.project_sn=#{projectSn}
|
||||||
group by a.car_type
|
group by a.car_type
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getCarTypeName" resultType="java.lang.String">
|
||||||
|
select ct.car_type_name
|
||||||
|
from car_info ci
|
||||||
|
inner join car_type ct on ci.car_type = ct.id
|
||||||
|
where ci.id=#{id}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@ -354,7 +354,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|||||||
redisRepository.del("projectInfoBySn:" + projectEntity.getProjectSn());
|
redisRepository.del("projectInfoBySn:" + projectEntity.getProjectSn());
|
||||||
|
|
||||||
//同步海康
|
//同步海康
|
||||||
asyncHikvision.editProjectForHikvision(project);
|
asyncHikvision.editProjectForHikvision(projectEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -32,6 +32,7 @@ public class HikvisionUtil {
|
|||||||
|
|
||||||
public static String doPost(String host, String path, String body, Map<String, String> querys, String appKey, String appSecret) {
|
public static String doPost(String host, String path, String body, Map<String, String> querys, String appKey, String appSecret) {
|
||||||
log.info("HikvisionUtil#doPost.url:{}", host + path);
|
log.info("HikvisionUtil#doPost.url:{}", host + path);
|
||||||
|
log.info("HikvisionUtil#doPost.body:{}", body);
|
||||||
String responseStr = null;
|
String responseStr = null;
|
||||||
try {
|
try {
|
||||||
Map<String, String> headers = new HashMap();
|
Map<String, String> headers = new HashMap();
|
||||||
|
|||||||
@ -16,5 +16,6 @@ public class PathUtil {
|
|||||||
System.out.println(reviseSlash("/homefoo//"));
|
System.out.println(reviseSlash("/homefoo//"));
|
||||||
System.out.println(reviseSlash("http://192.168.34.221:19111/xmgl/weight/weighInfo/getNewestWeighInfo"));
|
System.out.println(reviseSlash("http://192.168.34.221:19111/xmgl/weight/weighInfo/getNewestWeighInfo"));
|
||||||
System.out.println(reviseSlash("http://192.168.34.221:19111/xmgl//weight/weighInfo/getNewestWeighInfo"));
|
System.out.println(reviseSlash("http://192.168.34.221:19111/xmgl//weight/weighInfo/getNewestWeighInfo"));
|
||||||
|
System.out.println(reviseSlash("http://192.168.34.221:9111/image//65e5733735f013f4cc322278.jpg"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user