pom.xml
@@ -59,11 +59,23 @@ <artifactId>examples</artifactId> <version>1.0.0</version> </dependency> <!--mybatis依赖--> <!--MP代码生成器依赖--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.2</version> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.5.3.1</version> </dependency> <!--velocity模板引擎--> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity-engine-core</artifactId> <version>2.0</version> </dependency> <!--mybatis-plus依赖--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.1</version> </dependency> <!--Oracle jdbc--> <!--这里注意,某些ojdbc的版本不支持jdk1.8,遇到过,网上说这个ojdbc8支持,所以这里使用它--> src/main/java/com/ard/alarm/apponekey/mapper/ArdAlarmApponekeyMapper.java
File was deleted src/main/java/com/ard/alarm/apponekey/service/IArdAlarmApponekeyService.java
@@ -1,6 +1,5 @@ package com.ard.alarm.apponekey.service; import java.util.List; import com.ard.alarm.apponekey.domain.ArdAlarmApponekey; /** @@ -9,23 +8,7 @@ * @author ard * @date 2023-07-21 */ public interface IArdAlarmApponekeyService { /** * 查询app一键报警 * * @param id app一键报警主键 * @return app一键报警 */ public ArdAlarmApponekey selectArdAlarmApponekeyById(String id); /** * 查询app一键报警列表 * * @param ardAlarmApponekey app一键报警 * @return app一键报警集合 */ public List<ArdAlarmApponekey> selectArdAlarmApponekeyList(ArdAlarmApponekey ardAlarmApponekey); public interface IArdAlarmApponekeyService { /** * 新增app一键报警 @@ -34,28 +17,6 @@ * @return 结果 */ public int insertArdAlarmApponekey(ArdAlarmApponekey ardAlarmApponekey); /** * 修改app一键报警 * * @param ardAlarmApponekey app一键报警 * @return 结果 */ public int updateArdAlarmApponekey(ArdAlarmApponekey ardAlarmApponekey); /** * 批量删除app一键报警 * * @param ids 需要删除的app一键报警主键集合 * @return 结果 */ public int deleteArdAlarmApponekeyByIds(String[] ids); /** * 删除app一键报警信息 * * @param id app一键报警主键 * @return 结果 */ public int deleteArdAlarmApponekeyById(String id); } src/main/java/com/ard/alarm/apponekey/service/impl/ArdAlarmApponekeyServiceImpl.java
@@ -8,13 +8,9 @@ import com.ard.utils.uuid.IdUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import com.ard.alarm.apponekey.mapper.ArdAlarmApponekeyMapper; import com.ard.alarm.apponekey.domain.ArdAlarmApponekey; import com.ard.alarm.apponekey.service.IArdAlarmApponekeyService; import javax.annotation.Resource; import static jdk.nashorn.internal.runtime.regexp.joni.Config.log; /** * app一键报警Service业务层处理 @@ -25,30 +21,6 @@ @Service @Slf4j(topic = "apponekey") public class ArdAlarmApponekeyServiceImpl implements IArdAlarmApponekeyService { @Resource private ArdAlarmApponekeyMapper ardAlarmApponekeyMapper; /** * 查询app一键报警 * * @param id app一键报警主键 * @return app一键报警 */ @Override public ArdAlarmApponekey selectArdAlarmApponekeyById(String id) { return ardAlarmApponekeyMapper.selectArdAlarmApponekeyById(id); } /** * 查询app一键报警列表 * * @param ardAlarmApponekey app一键报警 * @return app一键报警 */ @Override public List<ArdAlarmApponekey> selectArdAlarmApponekeyList(ArdAlarmApponekey ardAlarmApponekey) { return ardAlarmApponekeyMapper.selectArdAlarmApponekeyList(ardAlarmApponekey); } /** * 新增app一键报警 @@ -76,36 +48,4 @@ + "【高层】" + ardAlarmApponekey.getAltitude() + "【创建时间】" + ardAlarmApponekey.getCreateTime()); } /** * 修改app一键报警 * * @param ardAlarmApponekey app一键报警 * @return 结果 */ @Override public int updateArdAlarmApponekey(ArdAlarmApponekey ardAlarmApponekey) { return ardAlarmApponekeyMapper.updateArdAlarmApponekey(ardAlarmApponekey); } /** * 批量删除app一键报警 * * @param ids 需要删除的app一键报警主键 * @return 结果 */ @Override public int deleteArdAlarmApponekeyByIds(String[] ids) { return ardAlarmApponekeyMapper.deleteArdAlarmApponekeyByIds(ids); } /** * 删除app一键报警信息 * * @param id app一键报警主键 * @return 结果 */ @Override public int deleteArdAlarmApponekeyById(String id) { return ardAlarmApponekeyMapper.deleteArdAlarmApponekeyById(id); } } src/main/java/com/ard/alarm/camera/domain/ArdCameras.java
@@ -1,6 +1,7 @@ package com.ard.alarm.camera.domain; import com.baomidou.mybatisplus.annotation.TableField; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -63,8 +64,8 @@ /** * 光电类型 */ private String gdtype; @TableField("gdtype") private String gdType; /** * 通道号 src/main/java/com/ard/alarm/camera/mapper/ArdCamerasMapper.java
@@ -2,6 +2,7 @@ import java.util.List; import com.ard.alarm.camera.domain.ArdCameras; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; /** @@ -11,22 +12,8 @@ * @date 2023-02-11 */ @Mapper public interface ArdCamerasMapper public interface ArdCamerasMapper extends BaseMapper<ArdCameras> { /** * 查询相机设备 * * @param id 相机设备主键 * @return 相机设备 */ public ArdCameras selectArdCamerasById(String id); /** * 查询相机设备列表 * * @param ardCameras 相机设备 * @return 相机设备集合 */ public List<ArdCameras> selectArdCamerasList(ArdCameras ardCameras); } src/main/java/com/ard/alarm/camera/service/IArdCamerasService.java
@@ -14,14 +14,6 @@ public interface IArdCamerasService { /** * 查询相机设备 * * @param id 相机设备主键 * @return 相机设备 */ public ArdCameras selectArdCamerasById(String id); /** * 查询相机设备列表 * * @param ardCameras 相机设备 src/main/java/com/ard/alarm/camera/service/impl/ArdCamerasServiceImpl.java
@@ -12,6 +12,8 @@ import com.ard.alarm.external.domain.ArdEquipExternal; import com.ard.alarm.external.mapper.ArdEquipExternalMapper; import com.ard.utils.hiksdk.service.impl.HikClientUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; @@ -34,34 +36,31 @@ private final static ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); public static List<ArdCameras> ardCameraList = new ArrayList<>(); @Resource private ArdCamerasMapper ardCamerasMapper; //初始化执行 @Override public void run(ApplicationArguments args) { //加载sdk库 HikClientUtil.loadHCNetSDKLib(); //获取小光电尝试登录 ArdCameras ardCamera=new ArdCameras(); ardCamera.setGdtype("0"); ardCameraList = ardCamerasMapper.selectArdCamerasList(ardCamera); ardCameraList = selectArdCamerasList(new ArdCameras()); HikClientUtil.loginAllCamera(ardCameraList); syncTask(); syncCameraListTask(); } /** * 同步任务 * 同步相机列表任务 * 实时获取在线的小光电 * 刘苏义 * 2023/8/11 9:09:27 */ private void syncTask() { private void syncCameraListTask() { scheduler.scheduleAtFixedRate(() -> { try { //region 定时同步小光电 ArdCameras ardCamera=new ArdCameras(); ardCamera.setGdtype("0"); List<ArdCameras> newArdCameraList = ardCamerasMapper.selectArdCamerasList(ardCamera); List<ArdCameras> newArdCameraList = selectArdCamerasList(new ArdCameras()); //需要更新的数据 List<ArdCameras> updateList = sameListWithDifferent(ardCameraList, newArdCameraList); if (updateList.size() > 0) { @@ -94,25 +93,16 @@ } /** * 查询相机设备 * * @param id 相机设备主键 * @return 相机设备 */ @Override public ArdCameras selectArdCamerasById(String id) { return ardCamerasMapper.selectArdCamerasById(id); } /** * 查询相机设备列表 * * @param ardCameras 相机设备 * @param ardCamera 相机设备 * @return 相机设备 */ @Override public List<ArdCameras> selectArdCamerasList(ArdCameras ardCameras) { return ardCamerasMapper.selectArdCamerasList(ardCameras); public List<ArdCameras> selectArdCamerasList(ArdCameras ardCamera) { ardCamera.setGdType("0"); Wrapper<ArdCameras> queryWrapper=new QueryWrapper<>(ardCamera); return ardCamerasMapper.selectList(queryWrapper); } src/main/java/com/ard/alarm/digitization/controller/DatabridgeController.java
File was deleted src/main/java/com/ard/alarm/digitization/mapper/DataBridgeMapper.java
File was deleted src/main/java/com/ard/alarm/digitization/service/DataBridgeService.java
@@ -6,5 +6,4 @@ public interface DataBridgeService { List<DataBridge> selectDatabridgeList(DataBridge row); } src/main/java/com/ard/alarm/digitization/service/impl/DataBridgeServiceImpl.java
@@ -1,7 +1,6 @@ package com.ard.alarm.digitization.service.impl; import com.alibaba.fastjson2.JSON; import com.ard.alarm.digitization.mapper.DataBridgeMapper; import com.ard.alarm.digitization.model.DataBridge; import com.ard.alarm.digitization.service.DataBridgeService; import com.ard.utils.jdbc.Query; @@ -10,7 +9,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; @@ -25,9 +24,6 @@ @Slf4j(topic = "digitization3") public class DataBridgeServiceImpl implements DataBridgeService { @Resource DataBridgeMapper databridgeMapper; public static Date lastTime; @Value("${spring.digitization3.enabled}") private Boolean enabled; @@ -62,21 +58,6 @@ } catch (Exception ex) { log.error("3厂数字化报警数据处理异常:" + ex.getMessage()); } } @Override public List<DataBridge> selectDatabridgeList(DataBridge row) { List<DataBridge> dataBridgeList; if (lastTime == null) { lastTime = new Date(); row.setRowNum(10); dataBridgeList = databridgeMapper.selectDatabridgeList(row); lastTime = dataBridgeList.get(0).getDateTime(); } else { row.setDateTime(lastTime); dataBridgeList = databridgeMapper.selectDatabridgeList(row); } return dataBridgeList; } } src/main/java/com/ard/alarm/external/mapper/ArdEquipExternalMapper.java
@@ -2,6 +2,7 @@ import java.util.List; import com.ard.alarm.external.domain.ArdEquipExternal; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -12,30 +13,30 @@ * @date 2023-03-13 */ @Mapper public interface ArdEquipExternalMapper public interface ArdEquipExternalMapper extends BaseMapper<ArdEquipExternal> { /** * 查询external * * @param id external主键 * @return external */ public ArdEquipExternal selectArdEquipExternalById(String id); /** * 查询external * * @param ardEquipExternal external * @return external集合 */ public ArdEquipExternal selectArdEquipExternal(ArdEquipExternal ardEquipExternal); /** * 查询external列表 * * @param ardEquipExternal external * @return external集合 */ public List<ArdEquipExternal> selectArdEquipExternalList(ArdEquipExternal ardEquipExternal); ///** // * 查询external // * // * @param id external主键 // * @return external // */ //public ArdEquipExternal selectArdEquipExternalById(String id); // // ///** // * 查询external // * // * @param ardEquipExternal external // * @return external集合 // */ //public ArdEquipExternal selectArdEquipExternal(ArdEquipExternal ardEquipExternal); ///** // * 查询external列表 // * // * @param ardEquipExternal external // * @return external集合 // */ //public List<ArdEquipExternal> selectArdEquipExternalList(ArdEquipExternal ardEquipExternal); } src/main/java/com/ard/alarm/external/service/impl/ArdEquipExternalServiceImpl.java
@@ -11,6 +11,7 @@ import com.ard.alarm.external.mapper.ArdEquipExternalMapper; import com.ard.alarm.external.service.IArdEquipExternalService; import com.ard.utils.hiksdk.service.impl.HikClientUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; @@ -44,14 +45,14 @@ ArdEquipExternal alarmHost = new ArdEquipExternal(); alarmHost.setFactory("1"); alarmHost.setType("1"); ardAlarmHostList = ardEquipExternalMapper.selectArdEquipExternalList(alarmHost); ardAlarmHostList = selectArdEquipExternalList(alarmHost); HikClientUtil.loginAllAlarmHost(ardAlarmHostList); log.debug("报警主机尝试登录"); //获取全部门禁主机尝试登录 ArdEquipExternal accessControlHost = new ArdEquipExternal(); accessControlHost.setFactory("1"); accessControlHost.setType("6"); ardAccessHostList = ardEquipExternalMapper.selectArdEquipExternalList(accessControlHost); ardAccessHostList = selectArdEquipExternalList(accessControlHost); HikClientUtil.loginAllAccessControlHost(ardAccessHostList); log.debug("门禁主机尝试登录"); //同步任务 @@ -70,7 +71,7 @@ ArdEquipExternal alarmHost = new ArdEquipExternal(); alarmHost.setFactory("1"); alarmHost.setType("1"); List<ArdEquipExternal> newAlarmHostList = ardEquipExternalMapper.selectArdEquipExternalList(alarmHost); List<ArdEquipExternal> newAlarmHostList = selectArdEquipExternalList(alarmHost); //需要更新的数据 List<ArdEquipExternal> updateList = sameListWithDifferent(ardAlarmHostList, newAlarmHostList); if (updateList.size() > 0) { @@ -101,7 +102,7 @@ alarmHost = new ArdEquipExternal(); alarmHost.setFactory("1"); alarmHost.setType("6"); List<ArdEquipExternal> newAccessHostList = ardEquipExternalMapper.selectArdEquipExternalList(alarmHost); List<ArdEquipExternal> newAccessHostList = selectArdEquipExternalList(alarmHost); //需要更新的数据 updateList = sameListWithDifferent(ardAccessHostList, newAccessHostList); if (updateList.size() > 0) { @@ -142,12 +143,13 @@ */ @Override public ArdEquipExternal selectArdEquipExternalById(String id) { return ardEquipExternalMapper.selectArdEquipExternalById(id); return ardEquipExternalMapper.selectById(id); } @Override public ArdEquipExternal selectArdEquipExternal(ArdEquipExternal ardEquipExternal) { return ardEquipExternalMapper.selectArdEquipExternal(ardEquipExternal); QueryWrapper<ArdEquipExternal> queryWrapper=new QueryWrapper<>(ardEquipExternal); return ardEquipExternalMapper.selectOne(queryWrapper); } /** @@ -158,7 +160,8 @@ */ @Override public List<ArdEquipExternal> selectArdEquipExternalList(ArdEquipExternal ardEquipExternal) { return ardEquipExternalMapper.selectArdEquipExternalList(ardEquipExternal); QueryWrapper<ArdEquipExternal> queryWrapper=new QueryWrapper<>(ardEquipExternal); return ardEquipExternalMapper.selectList(queryWrapper); } src/main/java/com/ard/alarm/radar/domain/ArdEquipRadar.java
@@ -1,6 +1,8 @@ package com.ard.alarm.radar.domain; import java.util.Date; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; @@ -52,6 +54,9 @@ /** 塔id */ private String towerId; /** 塔名称 */ @TableField(exist = false) private String towerName; /** 图像宽度 */ src/main/java/com/ard/alarm/radar/mapper/ArdEquipRadarMapper.java
@@ -2,6 +2,7 @@ import java.util.List; import com.ard.alarm.radar.domain.ArdEquipRadar; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; /** @@ -11,53 +12,7 @@ * @date 2023-03-11 */ @Mapper public interface ArdEquipRadarMapper public interface ArdEquipRadarMapper extends BaseMapper<ArdEquipRadar> { /** * 查询radar * * @param id radar主键 * @return radar */ public ArdEquipRadar selectArdEquipRadarById(String id); /** * 查询radar列表 * * @param ardEquipRadar radar * @return radar集合 */ public List<ArdEquipRadar> selectArdEquipRadarList(ArdEquipRadar ardEquipRadar); /** * 新增radar * * @param ardEquipRadar radar * @return 结果 */ public int insertArdEquipRadar(ArdEquipRadar ardEquipRadar); /** * 修改radar * * @param ardEquipRadar radar * @return 结果 */ public int updateArdEquipRadar(ArdEquipRadar ardEquipRadar); /** * 删除radar * * @param id radar主键 * @return 结果 */ public int deleteArdEquipRadarById(String id); /** * 批量删除radar * * @param ids 需要删除的数据主键集合 * @return 结果 */ public int deleteArdEquipRadarByIds(String[] ids); } src/main/java/com/ard/alarm/radar/service/IArdEquipRadarService.java
@@ -9,15 +9,7 @@ * @author zj * @date 2023-03-11 */ public interface IArdEquipRadarService { /** * 查询radar * * @param id radar主键 * @return radar */ public ArdEquipRadar selectArdEquipRadarById(String id); public interface IArdEquipRadarService { /** * 查询radar列表 @@ -27,35 +19,4 @@ */ public List<ArdEquipRadar> selectArdEquipRadarList(ArdEquipRadar ardEquipRadar); /** * 新增radar * * @param ardEquipRadar radar * @return 结果 */ public int insertArdEquipRadar(ArdEquipRadar ardEquipRadar); /** * 修改radar * * @param ardEquipRadar radar * @return 结果 */ public int updateArdEquipRadar(ArdEquipRadar ardEquipRadar); /** * 批量删除radar * * @param ids 需要删除的radar主键集合 * @return 结果 */ public int deleteArdEquipRadarByIds(String[] ids); /** * 删除radar信息 * * @param id radar主键 * @return 结果 */ public int deleteArdEquipRadarById(String id); } src/main/java/com/ard/alarm/radar/service/impl/ArdEquipRadarServiceImpl.java
@@ -1,9 +1,12 @@ package com.ard.alarm.radar.service.impl; import java.util.List; import com.ard.alarm.external.domain.ArdEquipExternal; import com.ard.alarm.radar.domain.ArdEquipRadar; import com.ard.alarm.radar.mapper.ArdEquipRadarMapper; import com.ard.alarm.radar.service.IArdEquipRadarService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -14,22 +17,9 @@ * @date 2023-03-11 */ @Service public class ArdEquipRadarServiceImpl implements IArdEquipRadarService { public class ArdEquipRadarServiceImpl implements IArdEquipRadarService { @Autowired private ArdEquipRadarMapper ardEquipRadarMapper; /** * 查询radar * * @param id radar主键 * @return radar */ @Override public ArdEquipRadar selectArdEquipRadarById(String id) { return ardEquipRadarMapper.selectArdEquipRadarById(id); } /** @@ -39,56 +29,9 @@ * @return radar */ @Override public List<ArdEquipRadar> selectArdEquipRadarList(ArdEquipRadar ardEquipRadar) { return ardEquipRadarMapper.selectArdEquipRadarList(ardEquipRadar); public List<ArdEquipRadar> selectArdEquipRadarList(ArdEquipRadar ardEquipRadar) { QueryWrapper<ArdEquipRadar> queryWrapper = new QueryWrapper<>(ardEquipRadar); return ardEquipRadarMapper.selectList(queryWrapper); } /** * 新增radar * * @param ardEquipRadar radar * @return 结果 */ @Override public int insertArdEquipRadar(ArdEquipRadar ardEquipRadar) { return ardEquipRadarMapper.insertArdEquipRadar(ardEquipRadar); } /** * 修改radar * * @param ardEquipRadar radar * @return 结果 */ @Override public int updateArdEquipRadar(ArdEquipRadar ardEquipRadar) { return ardEquipRadarMapper.updateArdEquipRadar(ardEquipRadar); } /** * 批量删除radar * * @param ids 需要删除的radar主键 * @return 结果 */ @Override public int deleteArdEquipRadarByIds(String[] ids) { return ardEquipRadarMapper.deleteArdEquipRadarByIds(ids); } /** * 删除radar信息 * * @param id radar主键 * @return 结果 */ @Override public int deleteArdEquipRadarById(String id) { return ardEquipRadarMapper.deleteArdEquipRadarById(id); } } src/main/java/com/ard/utils/hiksdk/service/impl/FMSGCallBack.java
@@ -24,6 +24,7 @@ import java.nio.ByteBuffer; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; /** * @ClassName: FMSGCallBack @@ -54,14 +55,16 @@ String url = "";//事件图片 //lCommand是传的报警类型 //log.debug("报警事件类型:lCommand:" + Integer.toHexString(lCommand)); switch (lCommand) { case HCNetSDK.COMM_ALARM_V30: //log.debug("移动侦测"); ArdCameras ardCameras = new ArdCameras(); ardCameras.setIp(sDeviceIP); ardCameras.setPort(wLinkPort); IArdCamerasService ardCamerasService = SpringUtils.getBean(IArdCamerasService.class); List<ArdCameras> ardCamerasList = ardCamerasService.selectArdCamerasList(ardCameras); if (ardCamerasList.size() > 0) { ArdCameras camera = ardCamerasService.selectArdCamerasList(ardCameras).get(0); switch (lCommand) { case HCNetSDK.COMM_ALARM_V30: //log.debug("移动侦测"); HCNetSDK.NET_DVR_ALARMINFO_V30 netDvrAlarminfoV30 = new HCNetSDK.NET_DVR_ALARMINFO_V30(); netDvrAlarminfoV30.write(); Pointer pNDAInfo = netDvrAlarminfoV30.getPointer(); @@ -76,7 +79,7 @@ info.setCameraId(camera.getId()); info.setCameraIp(camera.getIp()); info.setCameraPort(camera.getPort()); info.setCameraType(camera.getGdtype()); info.setCameraType(camera.getGdType()); info.setCameraChannel(Integer.valueOf(netDvrAlarminfoV30.byChannel[0])); info.setLongitude(camera.getLongitude()); info.setLatitude(camera.getLatitude()); @@ -87,16 +90,9 @@ publishMqtt(info); break; } case HCNetSDK.COMM_ALARM_RULE: //log.debug("行为分析信息报警信息上报"); //region 行为分析信息 ardCameras = new ArdCameras(); ardCameras.setIp(sDeviceIP); ardCameras.setPort(wLinkPort); ardCamerasService = SpringUtils.getBean(IArdCamerasService.class); ArdCameras ardCamera = ardCamerasService.selectArdCamerasList(ardCameras).get(0); HCNetSDK.NET_VCA_RULE_ALARM strVcaAlarm = new HCNetSDK.NET_VCA_RULE_ALARM(); strVcaAlarm.write(); Pointer pVCAInfo = strVcaAlarm.getPointer(); @@ -109,14 +105,14 @@ info = new CameraEventInfo(); info.setAlarmName("人员行为分析"); info.setAlarmTime(sTime); info.setCameraName(ardCamera.getName()); info.setCameraId(ardCamera.getId()); info.setCameraIp(ardCamera.getIp()); info.setCameraPort(ardCamera.getPort()); info.setCameraType(ardCamera.getGdtype()); info.setCameraName(camera.getName()); info.setCameraId(camera.getId()); info.setCameraIp(camera.getIp()); info.setCameraPort(camera.getPort()); info.setCameraType(camera.getGdType()); info.setCameraChannel(channel); info.setLongitude(ardCamera.getLongitude()); info.setLatitude(ardCamera.getLatitude()); info.setLongitude(camera.getLongitude()); info.setLatitude(camera.getLatitude()); info.setRuleId(ruleID); switch (strVcaAlarm.struRuleInfo.wEventTypeEx) { case 1: //region穿越警戒面 (越界侦测) @@ -177,12 +173,12 @@ } //endregion break; // case HCNetSDK.COMM_UPLOAD_FACESNAP_RESULT: case HCNetSDK.COMM_UPLOAD_FACESNAP_RESULT: // log.debug("人脸检测事件上报(暂不解析)"); // break; // case HCNetSDK.COMM_GISINFO_UPLOAD: break; case HCNetSDK.COMM_GISINFO_UPLOAD: // log.debug("GPS报警信息上报(暂不解析)"); // break; break; case HCNetSDK.COMM_ALARMHOST_CID_ALARM: //log.debug("报警主机CID报告报警上报"); //region 报警主机报警处理 @@ -192,7 +188,6 @@ IArdEquipExternalService ardEquipExternalService = SpringUtils.getBean(IArdEquipExternalService.class); ardEquipExternal = ardEquipExternalService.selectArdEquipExternal(ardEquipExternal); HCNetSDK.NET_DVR_CID_ALARM netDvrCidAlarm = new HCNetSDK.NET_DVR_CID_ALARM(); netDvrCidAlarm.write(); Pointer pCIDInfo = netDvrCidAlarm.getPointer(); @@ -200,7 +195,6 @@ netDvrCidAlarm.read(); //CID事件名 String sCIDCode = ByteUtils.bytesToStringZh(netDvrCidAlarm.sCIDCode);//CID事件名 //CID事件名 //String sCIDDescribe = ByteUtils.bytesToStringZh(netDvrCidAlarm.sCIDDescribe);//CID事件名 int position = ByteUtils.findIndexOfDoubleZero(netDvrCidAlarm.sCIDDescribe); @@ -271,13 +265,11 @@ break; case HCNetSDK.COMM_ALARM_ACS: //region 门禁主机报警处理 ArdEquipExternal accessControlHost = new ArdEquipExternal(); accessControlHost.setIp(sDeviceIP); accessControlHost.setPort(wLinkPort); ardEquipExternalService = SpringUtils.getBean(IArdEquipExternalService.class); accessControlHost = ardEquipExternalService.selectArdEquipExternal(accessControlHost); HCNetSDK.NET_DVR_ACS_ALARM_INFO strACSInfo = new HCNetSDK.NET_DVR_ACS_ALARM_INFO(); strACSInfo.write(); Pointer acsInfo = strACSInfo.getPointer(); @@ -390,6 +382,7 @@ break; } } return true; } src/main/java/com/ard/utils/other/CodeGeneration.java
New file @@ -0,0 +1,126 @@ package com.ard.utils.other; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.extension.plugins.pagination.dialects.Oracle12cDialect; import com.baomidou.mybatisplus.generator.AutoGenerator; import com.baomidou.mybatisplus.generator.config.*; import com.baomidou.mybatisplus.generator.config.querys.OracleQuery; import com.baomidou.mybatisplus.generator.config.querys.PostgreSqlQuery; import com.baomidou.mybatisplus.generator.config.rules.DateType; import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; import java.util.Collections; /** * @ClassName: CodeGeneration * @Description: 代码生成器 * @Author: Administrator * @Date: 2023年03月25日 14:49 * @Version: 1.0 **/ public class CodeGeneration { public static void main(String[] args) { /** * 先配置数据源 */ //PostgreSqlQuery postgreSqlQuery = new PostgreSqlQuery() { // @Override // public String[] fieldCustom() { // return new String[]{"Default"}; // } //}; OracleQuery oracleQuery = new OracleQuery() { @Override public String[] fieldCustom() { return new String[]{"Default"}; } }; DataSourceConfig dsc = new DataSourceConfig.Builder("jdbc:oracle:thin:@//112.98.126.2:21521/orcl","c##ard_user","123456") .dbQuery(oracleQuery).build(); //通过datasourceConfig创建AutoGenerator AutoGenerator generator = new AutoGenerator(dsc); /** * 全局配置 */ String projectPath = System.getProperty("user.dir"); //获取项目路径 String filePath = projectPath + "/src/main/java"; //java下的文件路径 GlobalConfig global = new GlobalConfig.Builder() .outputDir(filePath)//生成的输出路径 .author("刘苏义")//生成的作者名字 //.enableSwagger()开启swagger,需要添加swagger依赖并配置 .dateType(DateType.TIME_PACK)//时间策略 .commentDate("yyyy年MM月dd日")//格式化时间格式 .disableOpenDir()//禁止打开输出目录,默认false .fileOverride()//覆盖生成文件 .build(); /** * 包配置 */ PackageConfig packages = new PackageConfig.Builder() .entity("domian")//实体类包名 .parent("com.ard.alarm.bridge")//父包名。如果为空,将下面子包名必须写全部, 否则就只需写子包名 .controller("controller")//控制层包名 .mapper("mapper")//mapper层包名 .xml("mapper.xml")//数据访问层xml包名 .service("service")//service层包名 .serviceImpl("service.impl")//service实现类包名 .pathInfo(Collections.singletonMap(OutputFile.xml, projectPath + "/src/main/resources/mapper")) .build(); /** * 策略配置开始 */ StrategyConfig strategyConfig = new StrategyConfig.Builder() .enableCapitalMode()//开启全局大写命名 //.likeTable()模糊表匹配 .addInclude("DATABRIDGE")//添加表匹配,指定要生成的数据表名,不写默认选定数据库所有表 //.disableSqlFilter()禁用sql过滤:默认(不使用该方法)true //.enableSchema()启用schema:默认false .entityBuilder() //实体策略配置 //.disableSerialVersionUID()禁用生成SerialVersionUID:默认true .enableChainModel()//开启链式模型 .enableLombok()//开启lombok .enableRemoveIsPrefix()//开启 Boolean 类型字段移除 is 前缀 .enableTableFieldAnnotation()//开启生成实体时生成字段注解 //.addTableFills()添加表字段填充 .naming(NamingStrategy.underline_to_camel)//数据表映射实体命名策略:默认下划线转驼峰underline_to_camel .columnNaming(NamingStrategy.underline_to_camel)//表字段映射实体属性命名规则:默认null,不指定按照naming执行 .idType(IdType.AUTO)//添加全局主键类型 .formatFileName("%s")//格式化实体名称,%s取消首字母I .build() .mapperBuilder()//mapper文件策略 .enableMapperAnnotation()//开启mapper注解 .enableBaseResultMap()//启用xml文件中的BaseResultMap 生成 .enableBaseColumnList()//启用xml文件中的BaseColumnList //.cache(缓存类.class)设置缓存实现类 .formatMapperFileName("%sMapper")//格式化Dao类名称 .formatXmlFileName("%sMapper")//格式化xml文件名称 .build() .serviceBuilder()//service文件策略 .formatServiceFileName("%sService")//格式化 service 接口文件名称 .formatServiceImplFileName("%sServiceImpl")//格式化 service 接口文件名称 .build() .controllerBuilder()//控制层策略 //.enableHyphenStyle()开启驼峰转连字符,默认:false .enableRestStyle()//开启生成@RestController .formatFileName("%sController")//格式化文件名称 .build(); /*至此,策略配置才算基本完成!*/ /** * 将所有配置项整合到AutoGenerator中进行执行 */ generator.global(global) .packageInfo(packages) .strategy(strategyConfig) .execute(); } } src/main/resources/GeneratorMapper.xml
File was deleted src/main/resources/application-dev.yml
@@ -35,7 +35,7 @@ port: 40000 enabled: true tcp: enabled: false enabled: true # mqtt配置 mqtt: host: tcp://192.168.2.15:1883 @@ -58,18 +58,18 @@ endpoint: http://192.168.2.15:9001 accessKey: admin secretKey: xzx12345 # mybatis配置 mybatis: typeAliasesPackage: com.ard.alarm.**.domain mapperLocations: classpath:/mapper/*.xml # mybatis-plus配置 mybatis-plus: type-aliases-package: com.ard.alarm.**.domain mapper-locations: classpath:/mapper/*.xml # 日志等级配置 logging: level: hikSdk: info hikSdk: debug mqtt: info netty: info netty: debug external: info camera: info tube: info digitization3: debug digitization3: info stealAlarm: info src/main/resources/application-prod.yml
@@ -56,10 +56,10 @@ # 三厂数字化地址 digitization3: enabled: false mybatis: typeAliasesPackage: com.ard.alarm.**.domain mapperLocations: classpath:/mapper/*.xml # mybatis-plus配置 mybatis-plus: type-aliases-package: com.ard.alarm.**.domain mapper-locations: classpath:/mapper/*.xml server: port: 8088 logging: src/main/resources/logback-spring.xml
src/main/resources/mapper/ArdCamerasMapper.xml
File was deleted src/main/resources/mapper/ArdEquipExternalMapper.xml
File was deleted src/main/resources/mapper/ArdEquipRadarMapper.xml
File was deleted src/main/resources/mapper/DataBridgeMapper.xml
File was deleted