车辆修改

This commit is contained in:
guoshengxiong 2024-05-28 15:14:02 +08:00
parent 984dd5009b
commit 9e487f40f8
5 changed files with 37 additions and 100 deletions

View File

@ -761,85 +761,6 @@ public class HikvisionCall {
} }
} }
/**
* 测试查询组织
*
* @return
*/
@GetMapping("/getOrg")
public Result getOrg() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
getOrg(project);
return null;
}
/**
* 测试查询停车场
*
* @return
*/
@GetMapping("/getPark")
public Result getParkList() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
JSONArray parkList = getParkList(project);
return null;
}
/**
* 查询车辆列表v2
*
* @return
*/
@GetMapping("/getCarList")
public Result getCarList() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
getCarList(project);
return null;
}
/**
* 测试获取图片
*
* @return
*/
@GetMapping("/getPic")
public Result getPic() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
String svrIndex = null;
String platePicUrl = null;
getHikvisionEventsPicture(new HikvisionEventsPictureRq(svrIndex, platePicUrl), project.getArtemisConfigHost(), project.getArtemisConfigAppKey(), project.getArtemisConfigAppSecret());
return null;
}
/**
* 测试获取人员详情
*
* @return
*/
@GetMapping("/getWorkInfo")
public Result getWorkInfo() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
String svrIndex = null;
String platePicUrl = null;
WorkerInfo workerInfo = workerInfoMapper.selectById(1765673550491725825L);
getWorkerInfoByPersonId(workerInfo, project);
return null;
}
/**
* 查询车辆分类
*
* @return
*/
@GetMapping("/categorySearch")
public Result categorySearch() throws Exception {
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getProjectSn, "B717CB992D054A878FDAFB4A5C169947"));
String svrIndex = null;
String platePicUrl = null;
categorySearch(project);
return null;
}
/** /**
* 获取车辆颜色 * 获取车辆颜色
* *
@ -1700,9 +1621,9 @@ public class HikvisionCall {
private JSONObject searchCarInfoByCarNumberFromHttp(String carNumber, Project project) throws Exception { private JSONObject searchCarInfoByCarNumberFromHttp(String carNumber, Project project) throws Exception {
long total = 0; long total = 0;
JSONObject o1 = null; JSONObject o1 = null;
int pageNo = 1; int pageNo = 0;
do { do {
JSONObject jo = getCarInfoListFromHttp(carNumber, project, pageNo++); JSONObject jo = getCarInfoListFromHttp(carNumber, project, ++pageNo);
if (HikvisionUtil.isSuccess(jo)) { if (HikvisionUtil.isSuccess(jo)) {
JSONObject dataJo = HikvisionUtil.getJSONObjectData(jo); JSONObject dataJo = HikvisionUtil.getJSONObjectData(jo);
total = dataJo.getInteger("total"); total = dataJo.getInteger("total");
@ -1717,7 +1638,7 @@ public class HikvisionCall {
} else { } else {
return null; return null;
} }
} while (o1 == null && total != 0L); } while (o1 == null && total > pageNo * 1000L);
return o1; return o1;
} }
@ -1782,14 +1703,11 @@ public class HikvisionCall {
} }
private HikvisionReservationCarInfo getHikvisionReservationCarInfoObj(CarInfo carInfo, Project project) throws Exception { private HikvisionReservationCarInfo getHikvisionReservationCarInfoObj(CarInfo carInfo, Project project) throws Exception {
JSONArray parkList = getParkList(project); String projectParkCode = getProjectParkCode(project);
HikvisionReservationCarInfo hikvisionReservationCarInfo = new HikvisionReservationCarInfo(); HikvisionReservationCarInfo hikvisionReservationCarInfo = new HikvisionReservationCarInfo();
if (parkList != null && parkList.size() > 0) { String parkIndexCode = projectParkCode;
JSONObject jo = parkList.getJSONObject(0); hikvisionReservationCarInfo.setParkSyscode(parkIndexCode);
String parkIndexCode = jo.getString("parkIndexCode"); hikvisionReservationCarInfo.setPlateNo(carInfo.getCarNumber());
hikvisionReservationCarInfo.setParkSyscode(parkIndexCode);
hikvisionReservationCarInfo.setPlateNo(carInfo.getCarNumber());
}
//hikvisionReservationCarInfo.setResvState(); //hikvisionReservationCarInfo.setResvState();
//hikvisionReservationCarInfo.setResvWay(); //hikvisionReservationCarInfo.setResvWay();
//hikvisionReservationCarInfo.setAllowTimes(); //hikvisionReservationCarInfo.setAllowTimes();

View File

@ -32,7 +32,7 @@ public class CarInfo implements Serializable {
* 项目车辆信息表 * 项目车辆信息表
*/ */
@TableId(type = IdType.AUTO) @TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "项目车辆信息表") @ApiModelProperty(value = "项目车辆信息表")
private java.lang.Long id; private java.lang.Long id;
/** /**

View File

@ -93,7 +93,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
if (Objects.equals(carInfo.getCarModuleType(), 1)) { if (Objects.equals(carInfo.getCarModuleType(), 1)) {
throw new OpenAlertException("该车辆已添加,请勿重复添加!"); throw new OpenAlertException("该车辆已添加,请勿重复添加!");
} }
addCarInfoForApprovalFlow(c); addCarInfoForApprovalFlowIf(c);
Date now = new Date(); Date now = new Date();
if (DateUtil.compare(carInfo.getReserveStartTime(), now) < 0 && DateUtil.compare(carInfo.getReserveEndTime(), now) > 0) { if (DateUtil.compare(carInfo.getReserveStartTime(), now) < 0 && DateUtil.compare(carInfo.getReserveEndTime(), now) > 0) {
log.info("车辆在有效期内,不需要更新,车牌号:{}", c.getCarNumber()); log.info("车辆在有效期内,不需要更新,车牌号:{}", c.getCarNumber());
@ -106,13 +106,14 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
deleteOrUpdateCar(project, carInfo); deleteOrUpdateCar(project, carInfo);
} else { } else {
carInfoMapper.insert(c); carInfoMapper.insert(c);
addCarInfoForApprovalFlowIf(c);
//同步海康 //同步海康
asyncHikvision.addCarInfoForHikvision(c); asyncHikvision.addCarInfoForHikvision(c);
} }
} }
private void checkTime(CarInfo c) { private void checkTime(CarInfo c) {
if (!Objects.equals(c.getCarModuleType(), 1) && DateUtil.compare(c.getReserveEndTime(), new Date()) < 0) { if (isReservationType(c) && DateUtil.compare(c.getReserveEndTime(), new Date()) < 0) {
throw new OpenAlertException("预约时间已过期"); throw new OpenAlertException("预约时间已过期");
} }
} }
@ -122,10 +123,12 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
* *
* @param c * @param c
*/ */
private void addCarInfoForApprovalFlow(CarInfo c) { private void addCarInfoForApprovalFlowIf(CarInfo c) {
CarInfoApprovalFlow flow = new CarInfoApprovalFlow(); if (isReservationType(c)) {
BeanUtil.copyProperties(c, flow); CarInfoApprovalFlow flow = new CarInfoApprovalFlow();
carInfoApprovalFlowMapper.insert(flow); BeanUtil.copyProperties(c, flow);
carInfoApprovalFlowMapper.insert(flow);
}
} }
/** /**
@ -177,10 +180,23 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
.set(CarInfo::getSendSuccessStatus, null) .set(CarInfo::getSendSuccessStatus, null)
.eq(CarInfo::getId, carInfo.getId())); .eq(CarInfo::getId, carInfo.getId()));
if (isReservationType(old)) {
boolean notEqTime = DateUtil.compare(carInfo.getReserveStartTime(), old.getReserveStartTime()) != 0 || DateUtil.compare(carInfo.getReserveEndTime(), old.getReserveEndTime()) != 0;
if (notEqTime) {
CarInfoApprovalFlow flow = new CarInfoApprovalFlow();
BeanUtil.copyProperties(carInfo, flow);
carInfoApprovalFlowMapper.updateById(flow);
}
}
//同步海康 //同步海康
asyncHikvision.editCarInfoForHikvision(carInfo, old); asyncHikvision.editCarInfoForHikvision(carInfo, old);
} }
private boolean isReservationType(CarInfo old) {
return !Objects.equals(old.getCarModuleType(), 1);
}
@Override @Override
public void deleteProjectCarData(String projectSn) { public void deleteProjectCarData(String projectSn) {
//删除车辆黑白名单 //删除车辆黑白名单
@ -249,7 +265,6 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
if (Objects.equals(carInfo.getCarModuleType(), 1)) { if (Objects.equals(carInfo.getCarModuleType(), 1)) {
deleteCar(carInfo); deleteCar(carInfo);
} else { } else {
carInfoMapper.deleteById(carInfo.getId());
deleteFromApprovalFlowIf(carInfo); deleteFromApprovalFlowIf(carInfo);
Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getSyncHikvision, 1)); Project project = projectMapper.selectOne(new LambdaQueryWrapper<Project>().eq(Project::getSyncHikvision, 1));
deleteOrUpdateCar(project, carInfo); deleteOrUpdateCar(project, carInfo);
@ -263,7 +278,7 @@ public class CarInfoServiceImpl extends ServiceImpl<CarInfoMapper, CarInfo> impl
} }
private void deleteFromApprovalFlowIf(CarInfo carInfo) { private void deleteFromApprovalFlowIf(CarInfo carInfo) {
if (!Objects.equals(carInfo.getCarModuleType(), 1)) { if (isReservationType(carInfo)) {
carInfoApprovalFlowMapper.delete(new LambdaQueryWrapper<CarInfoApprovalFlow>() carInfoApprovalFlowMapper.delete(new LambdaQueryWrapper<CarInfoApprovalFlow>()
.eq(CarInfoApprovalFlow::getReserveStartTime, carInfo.getReserveStartTime()) .eq(CarInfoApprovalFlow::getReserveStartTime, carInfo.getReserveStartTime())
.eq(CarInfoApprovalFlow::getReserveEndTime, carInfo.getReserveEndTime()) .eq(CarInfoApprovalFlow::getReserveEndTime, carInfo.getReserveEndTime())

View File

@ -124,8 +124,8 @@ public class UfaceRecognitionController {
//base64可能卡 //base64可能卡
//param.put("facePicBinaryData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(basePath + "/" + fileUrl))); //param.put("facePicBinaryData", Base64Util.convertFileToBase64(PathUtil.reviseSlash(basePath + "/" + fileUrl)));
param.put("facePicUrl", PathUtil.reviseSlash(imageUrlPrefix + "/" + fileUrl)); param.put("facePicUrl", PathUtil.reviseSlash(imageUrlPrefix + "/" + fileUrl));
//boolean b = hikvisionCall.faceScore(project, param); boolean b = hikvisionCall.faceScore(project, param);
boolean b = true; //boolean b = true;
if (b) { if (b) {
data.put("checkType", "1"); data.put("checkType", "1");
data.put("message", "成功"); data.put("message", "成功");

View File

@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zhgd.xmgl.modules.car.entity.CarInfo; import com.zhgd.xmgl.modules.car.entity.CarInfo;
import com.zhgd.xmgl.modules.car.entity.CarInfoApprovalFlow;
import com.zhgd.xmgl.modules.car.mapper.CarInfoApprovalFlowMapper; import com.zhgd.xmgl.modules.car.mapper.CarInfoApprovalFlowMapper;
import com.zhgd.xmgl.modules.car.mapper.CarInfoMapper; import com.zhgd.xmgl.modules.car.mapper.CarInfoMapper;
import com.zhgd.xmgl.modules.car.service.impl.CarInfoServiceImpl; import com.zhgd.xmgl.modules.car.service.impl.CarInfoServiceImpl;
@ -38,6 +39,9 @@ public class CarInfoTask {
*/ */
@Scheduled(cron = "*/30 * * * * ?") @Scheduled(cron = "*/30 * * * * ?")
public void deleteOrUpdateExpiredCar() { public void deleteOrUpdateExpiredCar() {
//删除过期
carInfoApprovalFlowMapper.delete(new LambdaQueryWrapper<CarInfoApprovalFlow>()
.lt(CarInfoApprovalFlow::getReserveEndTime, DateUtil.now()));
List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>().eq(Project::getSyncHikvision, 1)); List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>().eq(Project::getSyncHikvision, 1));
for (Project project : projects) { for (Project project : projects) {
//过期或者未来车 //过期或者未来车