基础版 优化

merge-requests/3/head
qiushui 5 years ago
parent bc09910c91
commit af5dcc45a6

@ -12,7 +12,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.9.RELEASE</version>
<version>2.3.1.RELEASE</version>
<relativePath/>
</parent>
<groupId>com.zhehekeji</groupId>
@ -55,6 +55,11 @@
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>
</dependencies>
<profiles>
@ -94,7 +99,7 @@
<repository>
<id>nexus</id>
<name>Nexus</name>
<url>http://47.99.98.250:28888/repository/maven-public/</url>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>

@ -24,6 +24,15 @@
<artifactId>base-assembly</artifactId>
<version>${base.assembly.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>

@ -0,0 +1,36 @@
package com.zhehekeji.web.config;
import com.github.pagehelper.cache.GuavaCache;
import com.google.common.cache.CacheBuilder;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.support.SimpleCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
@Configuration
@EnableCaching
public class CacheConfig {
@Bean
public CacheManager localCacheManager() {
SimpleCacheManager simpleCacheManager = new SimpleCacheManager();
//把各个cache注册到cacheManager中,GuavaCache实现了org.springframework.cache.Cache接口
// CacheBuilder cacheBuilder = CacheBuilder.newBuilder();
// cacheBuilder.
// simpleCacheManager.setCaches(
//
// Arrays.asList(
//
// //CacheBuilder构建多个cache
// //定义cache名称:@Cacheable的cacheNames(等价value)属性要和此对应
// new GuavaCache("TIMEOUT_1_HOURS",CacheBuilder.newBuilder().build()),
// new GuavaCache("TIMEOUT_5_MINUTE",CacheBuilder.newBuilder().expireAfterWrite(5, TimeUnit.MINUTES).build())
// )
// );
return simpleCacheManager;
}
}

@ -0,0 +1,55 @@
package com.zhehekeji.web.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties
@Data
public class ConfigProperties {
/**
* 海康球机类型
*/
public static Integer HIK_CAMERA = 1;
/**
* 中威球机
*/
public static Integer JOYWARE_CAMERA = 0;
private CameraConfig cameraConfig;
private VideoStyleConfig videoStyleConfig;
private SavePath savePath;
private Integer serverMode;
private String userUrl;
@Data
public static class CameraConfig{
private Integer cameraType;
private String cameraPassword;
private String cameraUser;
private Integer cameraPort;
}
@Data
public static class VideoStyleConfig{
private Integer videoStyleRow;
private Integer videoStyleColumn;
}
@Data
public static class SavePath{
private String mediaPath;
private String mp4Path;
}
}

@ -4,6 +4,8 @@ import com.zhehekeji.core.pojo.Result;
import com.zhehekeji.core.util.Assert;
import com.zhehekeji.web.entity.Camera;
import com.zhehekeji.web.lib.*;
import com.zhehekeji.web.lib.hik.HCNetSDK;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.zhehekeji.web.mapper.CameraMapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -11,6 +13,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.time.LocalDateTime;
@ -22,7 +25,7 @@ public class CameraControlController {
@Resource
private CameraMapper cameraMapper;
@Value("${cameraType}")
private Integer cameraType;
@PostMapping("/{id}")
@ -38,14 +41,14 @@ public class CameraControlController {
Assert.notNull(camera,"球机不存在");
NetSDKLib.LLong lLong = null;
if(cameraType == 0){
lLong = ZWLoginModule.login(camera.getIp(),camera.getPort(),camera.getUser(),camera.getPassword(),cameraId);
lLong = JoywareLoginModule.login(camera.getIp(),camera.getPort(),camera.getUser(),camera.getPassword(),cameraId);
Assert.isTrue(lLong.longValue() > 0,"登陆失败");
}else if(cameraType == 1){
int userId = HikLoginModule.login(camera.getIp(),camera.getPort(),camera.getUser(),camera.getPassword());
Assert.isTrue(userId>=0,"登陆失败");
lLong = new NetSDKLib.LLong(userId);
}
CameraConnMap.conn(cameraId,lLong);
HikLoginModule.CameraConnMap.conn(cameraId,lLong);
return lLong;
}
@ -55,7 +58,7 @@ public class CameraControlController {
log.debug("球机控制向上");
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlUpStart(id,0,0,1);
JoywarePtzControlModule.ptzControlUpStart(id,0,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlUpStart(id, 1, HCNetSDK.TILT_UP,0);
}
@ -68,7 +71,7 @@ public class CameraControlController {
log.debug("球机控制向上 停止");
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlUpEnd(id,0);
JoywarePtzControlModule.ptzControlUpEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlUpEnd(id, 1, HCNetSDK.TILT_UP, 1);
}
@ -81,7 +84,7 @@ public class CameraControlController {
public Result down(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlDownStart(id,0,0,1);
JoywarePtzControlModule.ptzControlDownStart(id,0,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlDownStart(id , 1,HCNetSDK.TILT_DOWN,0);
}
@ -94,7 +97,7 @@ public class CameraControlController {
public Result downStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlDownEnd(id,0);
JoywarePtzControlModule.ptzControlDownEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlDownEnd(id, 1, HCNetSDK.TILT_DOWN, 1);
}
@ -107,7 +110,7 @@ public class CameraControlController {
public Result left(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftStart(id,0,0,1);
JoywarePtzControlModule.ptzControlLeftStart(id,0,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftStart(id, 1,HCNetSDK.PAN_LEFT,0);
}
@ -120,7 +123,7 @@ public class CameraControlController {
public Result leftStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftEnd(id,0);
JoywarePtzControlModule.ptzControlLeftEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftEnd(id, 1, HCNetSDK.PAN_LEFT, 1);
}
@ -135,7 +138,7 @@ public class CameraControlController {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftUpStart(id,0,1,1);
JoywarePtzControlModule.ptzControlLeftUpStart(id,0,1,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftUpStart(id, 1,HCNetSDK.UP_LEFT,0);
}
@ -149,7 +152,7 @@ public class CameraControlController {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftUpEnd(id,0);
JoywarePtzControlModule.ptzControlLeftUpEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftUpEnd(id, 1, HCNetSDK.UP_LEFT, 1);
}
@ -162,7 +165,7 @@ public class CameraControlController {
public Result leftDown(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftDownStart(id,0,1,1);
JoywarePtzControlModule.ptzControlLeftDownStart(id,0,1,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftDownStart(id, 1, HCNetSDK.DOWN_LEFT, 0);
}
@ -175,7 +178,7 @@ public class CameraControlController {
public Result leftDownStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlLeftDownEnd(id,0);
JoywarePtzControlModule.ptzControlLeftDownEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlLeftDownEnd(id, 1, HCNetSDK.DOWN_LEFT, 1);
}
@ -189,7 +192,7 @@ public class CameraControlController {
public Result right(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightStart(id,0,0,1);
JoywarePtzControlModule.ptzControlRightStart(id,0,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightStart(id, 1,HCNetSDK.PAN_RIGHT,0);
}
@ -203,7 +206,7 @@ public class CameraControlController {
public Result rightStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightEnd(id,0);
JoywarePtzControlModule.ptzControlRightEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightEnd(id, 1, HCNetSDK.PAN_RIGHT, 1);
}
@ -218,7 +221,7 @@ public class CameraControlController {
public Result rightUp(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightUpStart(id,0,1,1);
JoywarePtzControlModule.ptzControlRightUpStart(id,0,1,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightUpStart(id, 1,HCNetSDK.UP_RIGHT,0);
}
@ -232,7 +235,7 @@ public class CameraControlController {
public Result rightUpStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightUpEnd(id,0);
JoywarePtzControlModule.ptzControlRightUpEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightUpEnd(id, 1, HCNetSDK.UP_RIGHT, 1);
}
@ -246,7 +249,7 @@ public class CameraControlController {
public Result rightDown(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightDownStart(id,0,1,1);
JoywarePtzControlModule.ptzControlRightDownStart(id,0,1,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightDownStart(id, 1,HCNetSDK.DOWN_RIGHT,0);
}
@ -259,7 +262,7 @@ public class CameraControlController {
public Result rightDownStop(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlRightDownEnd(id,0);
JoywarePtzControlModule.ptzControlRightDownEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlRightDownEnd(id, 1, HCNetSDK.DOWN_RIGHT, 1);
}
@ -273,7 +276,7 @@ public class CameraControlController {
public Result ZoomAddStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlZoomAddStart(id,0,1);
JoywarePtzControlModule.ptzControlZoomAddStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlZoomAddStart(id, 1,HCNetSDK.ZOOM_IN, 0);
}
@ -285,7 +288,7 @@ public class CameraControlController {
public Result ZoomAddEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlZoomAddEnd(id,0);
JoywarePtzControlModule.ptzControlZoomAddEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlZoomAddEnd(id, 1, HCNetSDK.ZOOM_IN, 1);
}
@ -298,7 +301,7 @@ public class CameraControlController {
public Result ZoomDecStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlZoomDecStart(id,0,1);
JoywarePtzControlModule.ptzControlZoomDecStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlZoomDecStart(id, 1,HCNetSDK.ZOOM_OUT, 0);
}
@ -310,7 +313,7 @@ public class CameraControlController {
public Result ZoomDecEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlZoomDecEnd(id,0);
JoywarePtzControlModule.ptzControlZoomDecEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlZoomDecEnd(id, 1, HCNetSDK.ZOOM_OUT, 0);
}
@ -323,7 +326,7 @@ public class CameraControlController {
public Result FocusAddStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlFocusAddStart(id,0,1);
JoywarePtzControlModule.ptzControlFocusAddStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlFocusAddStart(id, 1,HCNetSDK.FOCUS_NEAR, 0);
}
@ -336,7 +339,7 @@ public class CameraControlController {
public Result focusAddEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlFocusAddEnd(id,0);
JoywarePtzControlModule.ptzControlFocusAddEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlFocusAddEnd(id, 1, HCNetSDK.FOCUS_NEAR, 1);
}
@ -349,7 +352,7 @@ public class CameraControlController {
public Result FocusDecStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlFocusDecStart(id,0,1);
JoywarePtzControlModule.ptzControlFocusDecStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlFocusDecStart(id, 1,HCNetSDK.FOCUS_FAR, 0);
}
@ -361,7 +364,7 @@ public class CameraControlController {
public Result focusDecEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlFocusDecEnd(id,0);
JoywarePtzControlModule.ptzControlFocusDecEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlFocusDecEnd(id, 1, HCNetSDK.FOCUS_FAR, 1);
}
@ -374,7 +377,7 @@ public class CameraControlController {
public Result irisAddStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlIrisAddStart(id,0,1);
JoywarePtzControlModule.ptzControlIrisAddStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlIrisAddStart(id, 1,HCNetSDK.IRIS_OPEN, 0);
}
@ -386,7 +389,7 @@ public class CameraControlController {
public Result irisAddEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlIrisAddEnd(id,0);
JoywarePtzControlModule.ptzControlIrisAddEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlIrisAddEnd(id, 1, HCNetSDK.IRIS_OPEN, 1);
}
@ -398,7 +401,7 @@ public class CameraControlController {
public Result irisDecStart(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlIrisDecStart(id,0,1);
JoywarePtzControlModule.ptzControlIrisDecStart(id,0,1);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlIrisDecStart(id, 1,HCNetSDK.IRIS_CLOSE, 0);
}
@ -411,7 +414,7 @@ public class CameraControlController {
public Result irisDecEnd(@PathVariable Integer id) {
checkLogin(id);
if(cameraType == 0){
ZWPtzControlModule.ptzControlIrisDecEnd(id,0);
JoywarePtzControlModule.ptzControlIrisDecEnd(id,0);
}else if(cameraType == 1){
HikPtzControlModule.ptzControlIrisDecEnd(id, 1, HCNetSDK.IRIS_CLOSE, 1);
}
@ -425,7 +428,7 @@ public class CameraControlController {
checkLogin(id);
OrderInfo orderInfo = new OrderInfo(0L,"SRM123","AAA",1,1,"C5",true);
if(cameraType == 0){
System.out.println(ZWPtzControlModule.pic(id,0,orderInfo));
System.out.println(JoywarePtzControlModule.pic(id,0,orderInfo));
}else if(cameraType == 1){
System.out.println(HikPtzControlModule.pic(id,1,orderInfo,"D:\\work\\qqq.jpeg"));
}
@ -442,7 +445,7 @@ public class CameraControlController {
}
private void checkLogin(Integer cameraId){
if(CameraConnMap.getConnId(cameraId) == null){
if(HikLoginModule.CameraConnMap.getConnId(cameraId) == null){
cameraLogin(cameraId);
}
}

@ -6,7 +6,7 @@ import com.zhehekeji.core.pojo.Result;
import com.zhehekeji.web.entity.Camera;
import com.zhehekeji.web.entity.CameraIO;
import com.zhehekeji.web.entity.CameraIOConfig;
import com.zhehekeji.web.lib.ZWPtzControlModule;
import com.zhehekeji.web.lib.JoywarePtzControlModule;
import com.zhehekeji.web.pojo.camera.CameraConfigSearchReq;
import com.zhehekeji.web.pojo.camera.CameraIOPtz;
import com.zhehekeji.web.pojo.street.StreetSearch;
@ -108,7 +108,7 @@ public class CameraController {
//todo
//validatorUtil.validate(req);
Integer ptzId = cameraService.getPtzId(req.getCameraIOId());
ZWPtzControlModule.toPtz(ptzId,req.getCameraId());
JoywarePtzControlModule.toPtz(ptzId,req.getCameraId());
return Result.success();
}
}

@ -5,6 +5,7 @@ import com.zhehekeji.core.util.Assert;
import com.zhehekeji.web.entity.Street;
import com.zhehekeji.web.mapper.StreetMapper;
import com.zhehekeji.web.service.*;
import com.zhehekeji.web.service.robotic.NettyClient;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;

@ -5,7 +5,7 @@ import com.github.pagehelper.PageInfo;
import com.zhehekeji.common.util.ValidatorUtil;
import com.zhehekeji.core.pojo.Result;
import com.zhehekeji.web.entity.Stock;
import com.zhehekeji.web.lib.ZWPtzControlModule;
import com.zhehekeji.web.lib.JoywarePtzControlModule;
import com.zhehekeji.web.pojo.category.PageSearch;
import com.zhehekeji.web.pojo.stock.CheckByMan;
import com.zhehekeji.web.pojo.stock.StockCheck;
@ -114,7 +114,7 @@ public class StockController {
@ApiOperation(value = "slow")
@RequestMapping(value = "/slow", method = RequestMethod.GET)
public Result slow(Integer cameraId,Integer x) {
ZWPtzControlModule.toPtzSlow(cameraId,x);
JoywarePtzControlModule.toPtzSlow(cameraId,x);
return Result.success();
}
@ -122,7 +122,7 @@ public class StockController {
@ApiOperation(value = "currentPosition")
@RequestMapping(value = "/currentPosition", method = RequestMethod.GET)
public Result currentPosition(Integer cameraId,Integer ptzId) {
ZWPtzControlModule.turn360C8(cameraId,ptzId);
JoywarePtzControlModule.turn360C8(cameraId,ptzId);
return Result.success();
}
}

@ -1,7 +1,10 @@
package com.zhehekeji.web.lib;
import lombok.extern.slf4j.Slf4j;
import java.lang.reflect.Field;
@Slf4j
public class BarCodeScan {
public static native String detectBestBarCode(String filePath);
@ -23,7 +26,7 @@ public class BarCodeScan {
System.loadLibrary("TestJNI");
}catch(Exception e)
{
System.out.println(e);
log.error("detectBestBarCode:"+e);
}
}

@ -1,84 +0,0 @@
package com.zhehekeji.web.lib;
import com.sun.jna.Pointer;
import com.zhehekeji.web.entity.Order;
import com.zhehekeji.web.mapper.OrderMapper;
import lombok.extern.slf4j.Slf4j;
import java.util.Date;
@Slf4j
public class CallBack {
/**
* 球机掉线回调
*/
public static class DisConnectCallBack implements NetSDKLib.fDisConnect {
@Override
public void invoke(NetSDKLib.LLong lLoginID, String pchDVRIP, int nDVRPort, Pointer dwUser) {
Integer cameraId = CameraConnMap.getCameraIdByLoginId(lLoginID);
log.error("球机:{}掉线",cameraId);
//CameraConnMap.disConn(cameraId);
}
}
/**
* mp4下载回调
*/
public static class Mp4ReceiveCB implements NetSDKLib.fTimeDownLoadPosCallBack {
@Override
public void invoke(NetSDKLib.LLong lPlayHandle, int dwTotalSize, int dwDownLoadSize, int index, NetSDKLib.NET_RECORDFILE_INFO.ByValue recordfileinfo, Pointer dwUser) {
if(dwDownLoadSize == -1) {
OrderRealtime.overDownload(lPlayHandle);
StopDownLoadThread stopDownLoadThread = new StopDownLoadThread(lPlayHandle);
stopDownLoadThread.start();
}
}
}
public static class HaveReConnect implements NetSDKLib.fHaveReConnect {
@Override
public void invoke(NetSDKLib.LLong m_hLoginHandle, String pchDVRIP, int nDVRPort, Pointer dwUser) {
log.info("球机:{}重连,loginId:{}",pchDVRIP,m_hLoginHandle.longValue());
System.out.printf("ReConnect Device[%s] Port[%d]\n", pchDVRIP, nDVRPort);
}
}
public static class CBPTZStatusProcCallBack implements NetSDKLib.fPTZStatusProcCallBack{
private CBPTZStatusProcCallBack() {
}
private static class CallBackHolder {
private static CBPTZStatusProcCallBack instance = new CBPTZStatusProcCallBack();
}
public static CBPTZStatusProcCallBack getInstance() {
return CallBackHolder.instance;
}
@Override
public void invoke(NetSDKLib.LLong lLoginId, NetSDKLib.LLong lAttachHandle, Pointer pBuf, int dwBufLen, long dwUser) {
NetSDKLib.NET_PTZ_LOCATION_INFO PTZInfo = new NetSDKLib.NET_PTZ_LOCATION_INFO();
ToolKits.GetPointerData(pBuf, PTZInfo);
// if(PTZInfo.bState == 2){
// Integer cameraId = CameraConnMap.getCameraIdByLoginId(lLoginId);
// if(cameraId != null){
// OrderInfo orderInfo = CameraCaptureMap.getOrderInfoByStreetId(cameraId);
// log.info("cameraId:{}",cameraId);
// if(orderInfo != null && !"C6".equals(orderInfo.getCode())){
// log.info("cameraId:{} 到位 拍照,code:{},orderNUm:{}",cameraId,orderInfo.getCode(),orderInfo.getOrderNum());
// //PtzControlModule.pic(cameraId,0,orderInfo);
// }
// CameraCaptureMap.remove(cameraId);
// }
//
// }
}
}
}

@ -1,11 +0,0 @@
package com.zhehekeji.web.lib;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
public class CameraAction implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
}
}

@ -1,28 +0,0 @@
package com.zhehekeji.web.lib;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
@Data
public class CameraCaptureMap {
private static Map<Integer,OrderInfo> cameraMap = new HashMap<>();
public static void put(Integer cameraId,OrderInfo orderInfo){
if(cameraId != null && orderInfo != null){
cameraMap.put(cameraId,orderInfo);
}
}
public static void remove(Integer cameraId){
cameraMap.remove(cameraId);
}
public static OrderInfo getOrderInfoByStreetId(Integer cameraId){
return cameraMap.get(cameraId);
}
}

@ -1,43 +0,0 @@
package com.zhehekeji.web.lib;
import java.util.HashMap;
import java.util.Map;
public class CameraConnMap{
/**
* key :cameraId
* value: loginId
*/
public static Map<Integer, NetSDKLib.LLong> cameraMap = new HashMap<>();
/**
* key:loginId
* value: cameraId
*/
public static Map<NetSDKLib.LLong,Integer> loginMap = new HashMap<>();
public static void conn(Integer cameraId,NetSDKLib.LLong handlerId){
synchronized (cameraId.toString().intern()){
cameraMap.put(cameraId,handlerId);
loginMap.put(handlerId,cameraId);
}
}
public static void disConn(Integer cameraId){
synchronized (cameraId.toString().intern()){
NetSDKLib.LLong lLong = cameraMap.get(cameraId);
cameraMap.remove(cameraId);
loginMap.remove(lLong);
}
}
public static NetSDKLib.LLong getConnId(Integer cameraId){
return cameraMap.get(cameraId);
}
public static Integer getCameraIdByLoginId(NetSDKLib.LLong lLong){
return loginMap.get(lLong);
}
}

@ -1,5 +1,12 @@
package com.zhehekeji.web.lib;
import com.zhehekeji.web.lib.hik.HCNetSDK;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
/**
* 海康 登陆接口实现
* 主要有 :初始化、登陆、登出功能
@ -68,14 +75,6 @@ public class HikLoginModule {
* \endif
*/
public static int login(String m_strIp, int m_nPort, String m_strUser, String m_strPassword) {
//注册之前先注销已注册的用户,预览情况下不可注销
if (m_lUserID > -1) {
//先注销
hcNetsdk.NET_DVR_Logout(m_lUserID);
m_lUserID = -1;
}
init();
HCNetSDK.NET_DVR_USER_LOGIN_INFO m_strLoginInfo = new HCNetSDK.NET_DVR_USER_LOGIN_INFO();//设备登录信息
HCNetSDK.NET_DVR_DEVICEINFO_V40 m_strDeviceInfo = new HCNetSDK.NET_DVR_DEVICEINFO_V40();//设备信息
@ -93,7 +92,7 @@ public class HikLoginModule {
m_strLoginInfo.bUseAsynLogin = false; //是否异步登录:0- 否,1- 是
m_strLoginInfo.write();
m_lUserID = hcNetsdk.NET_DVR_Login_V40(m_strLoginInfo, m_strDeviceInfo);
int m_lUserID = hcNetsdk.NET_DVR_Login_V40(m_strLoginInfo, m_strDeviceInfo);
return m_lUserID;
}
@ -118,4 +117,64 @@ public class HikLoginModule {
}
@Data
public static class CameraCaptureMap {
private static Map<Integer, OrderInfo> cameraMap = new HashMap<>();
public static void put(Integer cameraId,OrderInfo orderInfo){
if(cameraId != null && orderInfo != null){
cameraMap.put(cameraId,orderInfo);
}
}
public static void remove(Integer cameraId){
cameraMap.remove(cameraId);
}
public static OrderInfo getOrderInfoByStreetId(Integer cameraId){
return cameraMap.get(cameraId);
}
}
public static class CameraConnMap{
/**
* key :cameraId
* value: loginId
*/
public static Map<Integer, NetSDKLib.LLong> cameraMap = new HashMap<>();
/**
* key:loginId
* value: cameraId
*/
public static Map<NetSDKLib.LLong,Integer> loginMap = new HashMap<>();
public static void conn(Integer cameraId,NetSDKLib.LLong handlerId){
synchronized (cameraId.toString().intern()){
cameraMap.put(cameraId,handlerId);
loginMap.put(handlerId,cameraId);
}
}
public static void disConn(Integer cameraId){
synchronized (cameraId.toString().intern()){
NetSDKLib.LLong lLong = cameraMap.get(cameraId);
cameraMap.remove(cameraId);
loginMap.remove(lLong);
}
}
public static NetSDKLib.LLong getConnId(Integer cameraId){
return cameraMap.get(cameraId);
}
public static Integer getCameraIdByLoginId(NetSDKLib.LLong lLong){
return loginMap.get(lLong);
}
}
}

@ -3,9 +3,11 @@ package com.zhehekeji.web.lib;
import com.sun.jna.ptr.IntByReference;
import com.zhehekeji.common.util.PathUtil;
import com.zhehekeji.core.util.Assert;
import com.zhehekeji.web.lib.hik.HCNetSDK;
import com.zhehekeji.web.lib.joyware.NET_IN_PTZ_STATUS_PROC;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import lombok.extern.slf4j.Slf4j;
import java.nio.charset.StandardCharsets;
import java.time.LocalDateTime;
/**
@ -15,14 +17,14 @@ import java.time.LocalDateTime;
@Slf4j
public class HikPtzControlModule {
private static CallBack.Mp4ReceiveCB mp4ReceiveCB = new CallBack.Mp4ReceiveCB();
private static NET_IN_PTZ_STATUS_PROC.CallBack.Mp4ReceiveCB mp4ReceiveCB = new NET_IN_PTZ_STATUS_PROC.CallBack.Mp4ReceiveCB();
/**
* 向上
*/
public static boolean ptzControlUpStart(Integer cameraId, int nChannelID, int dwPTZCommand,int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
//return LoginModule.hcNetsdk.NET_DVR_PTZControl(lUserId, dwPTZCommand, 0);
@ -30,7 +32,7 @@ public class HikPtzControlModule {
public static boolean ptzControlUpEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -39,13 +41,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlDownEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -54,13 +56,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlLeftStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlLeftEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -68,13 +70,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlRightStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlRightEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, HCNetSDK.PAN_RIGHT, 1);
}
/**
@ -82,13 +84,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlLeftUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlLeftUpEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -97,13 +99,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlRightUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, HCNetSDK.UP_RIGHT, 0);
}
public static boolean ptzControlRightUpEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, HCNetSDK.UP_RIGHT, 1);
}
/**
@ -111,12 +113,12 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlLeftDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlLeftDownEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -124,13 +126,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlRightDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlRightDownEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -139,13 +141,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlZoomAddStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlZoomAddEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -154,13 +156,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlZoomDecStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlZoomDecEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -168,13 +170,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlFocusAddStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlFocusAddEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -182,13 +184,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlFocusDecStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlFocusDecEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -196,13 +198,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlIrisAddStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlIrisAddEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
/**
@ -210,13 +212,13 @@ public class HikPtzControlModule {
*/
public static boolean ptzControlIrisDecStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 0);
}
public static boolean ptzControlIrisDecEnd(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
{
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
return HikLoginModule.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, nChannelID, dwPTZCommand, 1);
}
@ -225,7 +227,7 @@ public class HikPtzControlModule {
Integer cmdSerial = OrderCmdSerial.nextSerial();
PathUtil.checkDirc(path);
OrderCmdSerial.put(cmdSerial, orderInfo);
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
int lUserId = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
short wPicSize = 3;
short wPicQuality = 0;
HCNetSDK.NET_DVR_JPEGPARA jpegpara = new HCNetSDK.NET_DVR_JPEGPARA(wPicSize, wPicQuality);
@ -270,7 +272,7 @@ public class HikPtzControlModule {
struDownloadCond.write();
log.info("start download mp4 path:{},startTime:{} ,endTime:{},now:{}", path, startTime.toString(), endTime.toString(), LocalDateTime.now());
int lUserID = CameraConnMap.getConnId(cameraId).intValue();
int lUserID = HikLoginModule.CameraConnMap.getConnId(cameraId).intValue();
int result = HikLoginModule.hcNetsdk.NET_DVR_GetFileByTime(lUserID,1,startTime,endTime,path);
//int result = HikLoginModule.hcNetsdk.NET_DVR_GetFileByTime_V40(lUserID, path.getBytes(), struDownloadCond);
if (result < 0) {
@ -376,7 +378,7 @@ public class HikPtzControlModule {
public static void ptz(Integer ptzId, String name, Integer cameraId)
{
int dwzCommand = HCNetSDK.SET_PRESET;
Boolean ok = HikLoginModule.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwzCommand, ptzId.intValue());
Boolean ok = HikLoginModule.hcNetsdk.NET_DVR_PTZPreset_Other(HikLoginModule.CameraConnMap.getConnId(cameraId).intValue(), 1, dwzCommand, ptzId.intValue());
Assert.isTrue(ok, "设置失败");
}
/**
@ -396,7 +398,7 @@ public class HikPtzControlModule {
public static void toPtz(Integer ptzId, Integer cameraId)
{
int dwPTZCommand = HCNetSDK.GOTO_PRESET;
Boolean ok = HikLoginModule.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwPTZCommand, ptzId.intValue());
Boolean ok = HikLoginModule.hcNetsdk.NET_DVR_PTZPreset_Other(HikLoginModule.CameraConnMap.getConnId(cameraId).intValue(), 1, dwPTZCommand, ptzId.intValue());
if (!ok) {
log.error("转至预置点 失败 cameraId:{},ptzId:{}", cameraId, ptzId);
}

@ -1,27 +0,0 @@
package com.zhehekeji.web.lib;
import com.sun.jna.Library;
import com.sun.jna.Native;
/**
* SDK JNA接口封装
*/
public interface ImageAlgLib extends Library {
ImageAlgLib IMAGEALG_INSTANCE = (ImageAlgLib)Native.loadLibrary(Utils.getLoadLibrary("ImageAlg"), ImageAlgLib.class);
/*******************************************************************************
* 函数名 : drcTable
* 描 述 : raw数据转换成Y数据
* 输 入 : - pRaw: 14bit裸数据
* 输 入 : - height: 输入裸数据的高
* 输 入 : - width: 输入裸数据的宽
* 输 入 : - sel: 默认填0
* 输 入 : - lut: 当sel为1时,该参数为本地drc表,默认填0
* 输 出 : pYData:转换后的Y数据
* 返回值 : 0 : 成功
* -1: 失败
*******************************************************************************/
int drcTable(short[] pRaw, short width, short height, int sel, byte[] pYData, short[] lut);
}

@ -1,16 +1,19 @@
package com.zhehekeji.web.lib;
import com.zhehekeji.common.util.SpringContextUtil;
import com.zhehekeji.web.lib.NetSDKLib.LLong;
import com.zhehekeji.web.lib.NetSDKLib.NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY;
import com.zhehekeji.web.lib.NetSDKLib.NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY;
import java.io.File;
import com.zhehekeji.web.lib.joyware.CaptureReceiveCB;
import com.zhehekeji.web.lib.joyware.NET_IN_PTZ_STATUS_PROC;
import com.zhehekeji.web.lib.joyware.NET_OUT_PTZ_STATUS_PROC;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.zhehekeji.web.lib.joyware.NetSDKLib.LLong;
import com.zhehekeji.web.lib.joyware.NetSDKLib.NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY;
import com.zhehekeji.web.lib.joyware.NetSDKLib.NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY;
/**
* 登陆接口实现
* 主要有 :初始化、登陆、登出功能
*/
public class ZWLoginModule{
public class JoywareLoginModule {
public static NetSDKLib netsdk = NetSDKLib.NETSDK_INSTANCE;
public static NetSDKLib configsdk = NetSDKLib.CONFIG_INSTANCE;
@ -18,9 +21,9 @@ public class ZWLoginModule{
// 设备信息
public static NetSDKLib.NET_DEVICEINFO_Ex m_stDeviceInfo = new NetSDKLib.NET_DEVICEINFO_Ex();
private static CallBack.DisConnectCallBack disConnectCallBack = new CallBack.DisConnectCallBack();
private static NET_IN_PTZ_STATUS_PROC.CallBack.DisConnectCallBack disConnectCallBack = new NET_IN_PTZ_STATUS_PROC.CallBack.DisConnectCallBack();
private static CallBack.HaveReConnect haveReConnect = new CallBack.HaveReConnect();
private static NET_IN_PTZ_STATUS_PROC.CallBack.HaveReConnect haveReConnect = new NET_IN_PTZ_STATUS_PROC.CallBack.HaveReConnect();
// 登陆句柄
public static LLong m_hLoginHandle = new LLong(0);
@ -41,25 +44,6 @@ public class ZWLoginModule{
System.out.println("Initialize SDK failed");
return false;
}
//Res res = Res.string();
//打开日志,可选
// NetSDKLib.LOG_SET_PRINT_INFO setLog = new NetSDKLib.LOG_SET_PRINT_INFO();
// File path = new File("./sdklog/");
// if (!path.exists()) {
// path.mkdir();
// }
// String logPath = path.getAbsoluteFile().getParent() + "\\sdklog\\" + ToolKits.getDate() + ".log";
// setLog.nPrintStrategy = 0;
// setLog.bSetFilePath = 1;
// System.arraycopy(logPath.getBytes(), 0, setLog.szLogFilePath, 0, logPath.getBytes().length);
// System.out.println(logPath);
// setLog.bSetPrintStrategy = 1;
// bLogopen = netsdk.CLIENT_LogOpen(setLog);
// if(!bLogopen ) {
// System.err.println("Failed to open NetSDK log");
// }
// 设置断线重连回调接口,设置过断线重连成功回调函数后,当设备出现断线情况,SDK内部会自动进行重连操作
// 此操作为可选操作,但建议用户进行设置
netsdk.CLIENT_SetAutoReconnect(haveReConnect, null);
@ -119,7 +103,7 @@ public class ZWLoginModule{
NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY pstOutParam=new NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY();
pstOutParam.stuDeviceInfo=m_stDeviceInfo;
//m_hLoginHandle = netsdk.CLIENT_LoginEx2(m_strIp, m_nPort, m_strUser, m_strPassword, 0, null, m_stDeviceInfo, nError);
m_hLoginHandle=netsdk.CLIENT_LoginWithHighLevelSecurity(pstInParam, pstOutParam);
LLong m_hLoginHandle=netsdk.CLIENT_LoginWithHighLevelSecurity(pstInParam, pstOutParam);
attachPTZStatusProc();
return m_hLoginHandle;
@ -131,7 +115,7 @@ public class ZWLoginModule{
public static void attachPTZStatusProc() {
NET_IN_PTZ_STATUS_PROC pIn = new NET_IN_PTZ_STATUS_PROC();
pIn.nChannel = 0;
pIn.cbPTZStatusProc = CallBack.CBPTZStatusProcCallBack.getInstance();
pIn.cbPTZStatusProc = NET_IN_PTZ_STATUS_PROC.CallBack.CBPTZStatusProcCallBack.getInstance();
pIn.write();
NET_OUT_PTZ_STATUS_PROC pOut = new NET_OUT_PTZ_STATUS_PROC();
pOut.write();

@ -3,6 +3,9 @@ package com.zhehekeji.web.lib;
import com.sun.jna.ptr.IntByReference;
import com.zhehekeji.common.util.PathUtil;
import com.zhehekeji.core.util.Assert;
import com.zhehekeji.web.lib.joyware.NET_IN_PTZ_STATUS_PROC;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.zhehekeji.web.lib.joyware.ToolKits;
import lombok.extern.slf4j.Slf4j;
import java.time.LocalDateTime;
@ -12,23 +15,23 @@ import java.time.LocalDateTime;
* 主要有 :八个方向控制、变倍、变焦、光圈功能
*/
@Slf4j
public class ZWPtzControlModule {
public class JoywarePtzControlModule {
private static CallBack.Mp4ReceiveCB mp4ReceiveCB = new CallBack.Mp4ReceiveCB();
private static NET_IN_PTZ_STATUS_PROC.CallBack.Mp4ReceiveCB mp4ReceiveCB = new NET_IN_PTZ_STATUS_PROC.CallBack.Mp4ReceiveCB();
/**
* 向上
*/
public static boolean ptzControlUpStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_UP_CONTROL,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlUpEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_UP_CONTROL,
0, 0, 0, 1);
}
@ -37,13 +40,13 @@ public class ZWPtzControlModule {
* 向下
*/
public static boolean ptzControlDownStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_DOWN_CONTROL,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlDownEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_DOWN_CONTROL,
0, 0, 0, 1);
}
@ -52,13 +55,13 @@ public class ZWPtzControlModule {
* 向左
*/
public static boolean ptzControlLeftStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_LEFT_CONTROL,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlLeftEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_LEFT_CONTROL,
0, 0, 0, 1);
}
@ -67,13 +70,13 @@ public class ZWPtzControlModule {
* 向右
*/
public static boolean ptzControlRightStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_RIGHT_CONTROL,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlRightEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_RIGHT_CONTROL,
0, 0, 0, 1);
}
@ -82,13 +85,13 @@ public class ZWPtzControlModule {
* 向左上
*/
public static boolean ptzControlLeftUpStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_LEFTTOP,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlLeftUpEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_LEFTTOP,
0, 0, 0, 1);
}
@ -97,13 +100,13 @@ public class ZWPtzControlModule {
* 向右上
*/
public static boolean ptzControlRightUpStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_RIGHTTOP,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlRightUpEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_RIGHTTOP,
0, 0, 0, 1);
}
@ -112,13 +115,13 @@ public class ZWPtzControlModule {
* 向左下
*/
public static boolean ptzControlLeftDownStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_LEFTDOWN,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlLeftDownEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_LEFTDOWN,
0, 0, 0, 1);
}
@ -127,13 +130,13 @@ public class ZWPtzControlModule {
* 向右下
*/
public static boolean ptzControlRightDownStart(Integer cameraId, int nChannelID, int lParam1, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_RIGHTDOWN,
lParam1, lParam2, 0, 0);
}
public static boolean ptzControlRightDownEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_EXTPTZ_ControlType.NET_EXTPTZ_RIGHTDOWN,
0, 0, 0, 1);
}
@ -142,13 +145,13 @@ public class ZWPtzControlModule {
* 变倍+
*/
public static boolean ptzControlZoomAddStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_ZOOM_ADD_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlZoomAddEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_ZOOM_ADD_CONTROL,
0, 0, 0, 1);
}
@ -157,13 +160,13 @@ public class ZWPtzControlModule {
* 变倍-
*/
public static boolean ptzControlZoomDecStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_ZOOM_DEC_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlZoomDecEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_ZOOM_DEC_CONTROL,
0, 0, 0, 1);
}
@ -172,13 +175,13 @@ public class ZWPtzControlModule {
* 变焦+
*/
public static boolean ptzControlFocusAddStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_FOCUS_ADD_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlFocusAddEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_FOCUS_ADD_CONTROL,
0, 0, 0, 1);
}
@ -187,13 +190,13 @@ public class ZWPtzControlModule {
* 变焦-
*/
public static boolean ptzControlFocusDecStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_FOCUS_DEC_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlFocusDecEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_FOCUS_DEC_CONTROL,
0, 0, 0, 1);
}
@ -202,13 +205,13 @@ public class ZWPtzControlModule {
* 光圈+
*/
public static boolean ptzControlIrisAddStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_APERTURE_ADD_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlIrisAddEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_APERTURE_ADD_CONTROL,
0, 0, 0, 1);
}
@ -217,13 +220,13 @@ public class ZWPtzControlModule {
* 光圈-
*/
public static boolean ptzControlIrisDecStart(Integer cameraId, int nChannelID, int lParam2) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_APERTURE_DEC_CONTROL,
0, lParam2, 0, 0);
}
public static boolean ptzControlIrisDecEnd(Integer cameraId, int nChannelID) {
return ZWLoginModule.netsdk.CLIENT_DHPTZControlEx(CameraConnMap.getConnId(cameraId), nChannelID,
return JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx(HikLoginModule.CameraConnMap.getConnId(cameraId), nChannelID,
NetSDKLib.NET_PTZ_ControlType.NET_PTZ_APERTURE_DEC_CONTROL,
0, 0, 0, 1);
}
@ -237,7 +240,7 @@ public class ZWPtzControlModule {
stuSnapParams.CmdSerial = OrderCmdSerial.nextSerial();
OrderCmdSerial.put(stuSnapParams.CmdSerial, orderInfo);
IntByReference reserved = new IntByReference(0);
return ZWLoginModule.netsdk.CLIENT_SnapPictureEx(CameraConnMap.getConnId(cameraId), stuSnapParams, reserved);
return JoywareLoginModule.netsdk.CLIENT_SnapPictureEx(HikLoginModule.CameraConnMap.getConnId(cameraId), stuSnapParams, reserved);
}
@ -261,7 +264,7 @@ public class ZWPtzControlModule {
NetSDKLib.NET_OUT_DOWNLOAD_BY_DATA_TYPE net_out_download_by_data_type = new NetSDKLib.NET_OUT_DOWNLOAD_BY_DATA_TYPE();
net_out_download_by_data_type.write();
log.info("start download mp4 path:{},startTime:{} ,endTime:{},now:{}", path, startTime.toString(), endTime.toString(), LocalDateTime.now());
NetSDKLib.LLong l = ZWLoginModule.netsdk.CLIENT_DownloadByDataType(CameraConnMap.getConnId(cameraId), download_by_data_type.getPointer(), net_out_download_by_data_type.getPointer(), 8000);
NetSDKLib.LLong l = JoywareLoginModule.netsdk.CLIENT_DownloadByDataType(HikLoginModule.CameraConnMap.getConnId(cameraId), download_by_data_type.getPointer(), net_out_download_by_data_type.getPointer(), 8000);
if (l.longValue() == 0) {
log.error("download error :{}", ToolKits.getErrorCodePrint());
} else {
@ -278,7 +281,7 @@ public class ZWPtzControlModule {
*/
public static void ptz(Integer ptzId, String name, Integer cameraId) {
int dwzCommand = NetSDKLib.NET_PTZ_ControlType.NET_PTZ_POINT_SET_CONTROL;
Boolean ok = ZWLoginModule.netsdk.CLIENT_DHPTZControlEx2(CameraConnMap.getConnId(cameraId), 0, dwzCommand, 0, ptzId, 0, 0, ToolKits.GetGBKStringToPointer(name));
Boolean ok = JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx2(HikLoginModule.CameraConnMap.getConnId(cameraId), 0, dwzCommand, 0, ptzId, 0, 0, ToolKits.GetGBKStringToPointer(name));
Assert.isTrue(ok, "设置失败");
}
@ -290,7 +293,7 @@ public class ZWPtzControlModule {
*/
public static void toPtz(Integer ptzId, Integer cameraId) {
int dwPTZCommand = NetSDKLib.NET_PTZ_ControlType.NET_PTZ_POINT_MOVE_CONTROL;
Boolean ok = ZWLoginModule.netsdk.CLIENT_DHPTZControlEx2(CameraConnMap.getConnId(cameraId), 0, dwPTZCommand, 0, ptzId, 0, 0, null);
Boolean ok = JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx2(HikLoginModule.CameraConnMap.getConnId(cameraId), 0, dwPTZCommand, 0, ptzId, 0, 0, null);
if (!ok) {
log.error("转至预置点 失败 cameraId:{},ptzId:{},error:{}", cameraId, ptzId,ToolKits.getErrorCodePrint());
}
@ -311,7 +314,7 @@ public class ZWPtzControlModule {
absolutely.stuSpeed.fPositionY = 0.2f;
absolutely.write();
//absolutely.stuSpeed.fZoom = 0.5f;
Boolean ok = ZWLoginModule.netsdk.CLIENT_DHPTZControlEx2(CameraConnMap.getConnId(cameraId), 0, dwPTZCommand,
Boolean ok = JoywareLoginModule.netsdk.CLIENT_DHPTZControlEx2(HikLoginModule.CameraConnMap.getConnId(cameraId), 0, dwPTZCommand,
0, 0, 0, 0, absolutely.getPointer());
if (!ok) {
@ -333,7 +336,7 @@ public class ZWPtzControlModule {
ptzLocationInfo.write();
System.out.println("size:"+ptzLocationInfo.size());
boolean bRet = ZWLoginModule.netsdk.CLIENT_QueryDevState(CameraConnMap.getConnId(cameraId), nType, ptzLocationInfo.getPointer(), ptzLocationInfo.size(), intRetLen, 3000);
boolean bRet = JoywareLoginModule.netsdk.CLIENT_QueryDevState(HikLoginModule.CameraConnMap.getConnId(cameraId), nType, ptzLocationInfo.getPointer(), ptzLocationInfo.size(), intRetLen, 3000);
ptzLocationInfo.read();
if (bRet) {

@ -1,32 +0,0 @@
package com.zhehekeji.web.lib;
/**
* @author 251823
* @description 订阅云台元数据接口输入参数
* @date 2021/02/26
*/
public class NET_IN_PTZ_STATUS_PROC extends NetSDKLib.SdkStructure{
/**
* dwSize;
*/
public int dwSize;
/**
* 云台通道
*/
public int nChannel;
/**
* 状态回调函数
*/
public NetSDKLib.fPTZStatusProcCallBack cbPTZStatusProc;
/**
* 用户数据
*/
public long dwUser;
public NET_IN_PTZ_STATUS_PROC(){
this.dwSize = this.size();
}
}

@ -1,124 +0,0 @@
package com.zhehekeji.web.lib;
import com.sun.jna.Memory;
import com.sun.jna.Native;
import com.sun.jna.Pointer;
import java.io.UnsupportedEncodingException;
import java.nio.CharBuffer;
/** Provides a temporary allocation of an immutable C string
* (<code>const char*</code> or <code>const wchar_t*</code>) for use when
* converting a Java String into a native memory function argument.
*
* @author Todd Fast, todd.fast@sun.com
* @author twall@users.sf.net
*/
public class NativeString implements CharSequence, Comparable<Object> {
private Pointer pointer;
private boolean wide;
/** Create a native string (NUL-terminated array of <code>char</code>).<p>
* If the system property <code>jna.encoding</code> is set, its value will
* be used to encode the native string. If not set or if the encoding
* is unavailable, the default platform encoding will be used.
*/
public NativeString(String string) {
this(string, false);
}
/** Create a native string as a NUL-terminated array of <code>wchar_t</code>
* (if <code>wide</code> is true) or <code>char</code>.<p>
* If the system property <code>jna.encoding</code> is set, its value will
* be used to encode the native <code>char</code>string.
* If not set or if the encoding is unavailable, the default platform
* encoding will be used.
*
* @param string value to write to native memory
* @param wide whether to store the String as <code>wchar_t</code>
*/
public NativeString(String string, boolean wide) {
if (string == null) {
throw new NullPointerException("String must not be null");
}
// Allocate the memory to hold the string. Note, we have to
// make this 1 element longer in order to accommodate the terminating
// NUL (which is generated in Pointer.setString()).
this.wide = wide;
if (wide) {
int len = (string.length() + 1 ) * Native.WCHAR_SIZE;
pointer = new Memory(len);
pointer.setString(0, string);
}
else {
byte[] data = getBytes(string);
pointer = new Memory(data.length + 1);
pointer.write(0, data, 0, data.length);
pointer.setByte(data.length, (byte)0);
}
}
static byte[] getBytes(String s) {
try {
return getBytes(s, System.getProperty("jna.encoding"));
}
catch (UnsupportedEncodingException e) {
return s.getBytes();
}
}
/** Return a byte array corresponding to the given String, using the given
encoding.
*/
static byte[] getBytes(String s, String encoding) throws UnsupportedEncodingException {
if (encoding != null) {
return s.getBytes(encoding);
}
return s.getBytes();
}
public int hashCode() {
return toString().hashCode();
}
public boolean equals(Object other) {
if (other instanceof CharSequence) {
return compareTo(other) == 0;
}
return false;
}
public String toString() {
String s = wide ? "const wchar_t*" : "const char*";
s += "(" + pointer.getString(0) + ")";
return s;
}
public Pointer getPointer() {
return pointer;
}
public char charAt(int index) {
return toString().charAt(index);
}
public int length() {
return toString().length();
}
public CharSequence subSequence(int start, int end) {
return CharBuffer.wrap(toString()).subSequence(start, end);
}
public int compareTo(Object other) {
if (other == null)
return 1;
return toString().compareTo(other.toString());
}
}

@ -1,5 +1,7 @@
package com.zhehekeji.web.lib;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

@ -9,7 +9,7 @@
* Created on 2009-9-14, 19:31:34
*/
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.hik;
import com.sun.jna.Native;
import com.sun.jna.Pointer;

@ -1,7 +1,7 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
import com.sun.jna.Pointer;
import com.zhehekeji.web.mapper.OrderLastMediaMapper;
import com.zhehekeji.web.config.ConfigProperties;
import com.zhehekeji.web.mapper.OrderMapper;
import com.zhehekeji.web.mapper.StockMapper;
import lombok.extern.slf4j.Slf4j;
@ -25,8 +25,8 @@ public class CaptureReceiveCB implements NetSDKLib.fSnapRev{
@Resource
private OrderMapper orderMapper;
@Value("${mediaPath}")
private String mediaPath;
@Resource
private ConfigProperties configProperties;
private static String fileType = "jpg";
@ -41,7 +41,7 @@ public class CaptureReceiveCB implements NetSDKLib.fSnapRev{
@Override
public void invoke(NetSDKLib.LLong lLoginID, Pointer pBuf, int RevLen, int EncodeType, int CmdSerial, Pointer dwUser) {
CaptureRunnable captureRunnable = new CaptureRunnable(CmdSerial,fileType,RevLen,mediaPath,pBuf,orderMapper,stockMapper);
CaptureRunnable captureRunnable = new CaptureRunnable(CmdSerial,fileType,RevLen,configProperties.getSavePath().getMediaPath(),pBuf,orderMapper,stockMapper);
threadPoolExecutor.execute(captureRunnable);
}

@ -1,9 +1,11 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
import com.sun.jna.Pointer;
import com.zhehekeji.common.util.PathUtil;
import com.zhehekeji.web.entity.Order;
import com.zhehekeji.web.entity.Stock;
import com.zhehekeji.web.lib.OrderCmdSerial;
import com.zhehekeji.web.lib.OrderInfo;
import com.zhehekeji.web.mapper.OrderMapper;
import com.zhehekeji.web.mapper.StockMapper;
import lombok.extern.slf4j.Slf4j;

@ -0,0 +1,112 @@
package com.zhehekeji.web.lib.joyware;
import com.sun.jna.Pointer;
import com.zhehekeji.web.lib.HikLoginModule;
import com.zhehekeji.web.lib.OrderRealtime;
import lombok.extern.slf4j.Slf4j;
/**
* @author 251823
* @description 订阅云台元数据接口输入参数
* @date 2021/02/26
*/
public class NET_IN_PTZ_STATUS_PROC extends NetSDKLib.SdkStructure{
/**
* dwSize;
*/
public int dwSize;
/**
* 云台通道
*/
public int nChannel;
/**
* 状态回调函数
*/
public NetSDKLib.fPTZStatusProcCallBack cbPTZStatusProc;
/**
* 用户数据
*/
public long dwUser;
public NET_IN_PTZ_STATUS_PROC(){
this.dwSize = this.size();
}
@Slf4j
public static class CallBack {
/**
* 球机掉线回调
*/
public static class DisConnectCallBack implements NetSDKLib.fDisConnect {
@Override
public void invoke(NetSDKLib.LLong lLoginID, String pchDVRIP, int nDVRPort, Pointer dwUser) {
Integer cameraId = HikLoginModule.CameraConnMap.getCameraIdByLoginId(lLoginID);
log.error("球机:{}掉线",cameraId);
//CameraConnMap.disConn(cameraId);
}
}
/**
* mp4下载回调
*/
public static class Mp4ReceiveCB implements NetSDKLib.fTimeDownLoadPosCallBack {
@Override
public void invoke(NetSDKLib.LLong lPlayHandle, int dwTotalSize, int dwDownLoadSize, int index, NetSDKLib.NET_RECORDFILE_INFO.ByValue recordfileinfo, Pointer dwUser) {
if(dwDownLoadSize == -1) {
OrderRealtime.overDownload(lPlayHandle);
StopDownLoadThread stopDownLoadThread = new StopDownLoadThread(lPlayHandle);
stopDownLoadThread.start();
}
}
}
public static class HaveReConnect implements NetSDKLib.fHaveReConnect {
@Override
public void invoke(NetSDKLib.LLong m_hLoginHandle, String pchDVRIP, int nDVRPort, Pointer dwUser) {
log.info("球机:{}重连,loginId:{}",pchDVRIP,m_hLoginHandle.longValue());
System.out.printf("ReConnect Device[%s] Port[%d]\n", pchDVRIP, nDVRPort);
}
}
public static class CBPTZStatusProcCallBack implements NetSDKLib.fPTZStatusProcCallBack{
private CBPTZStatusProcCallBack() {
}
private static class CallBackHolder {
private static CBPTZStatusProcCallBack instance = new CBPTZStatusProcCallBack();
}
public static CBPTZStatusProcCallBack getInstance() {
return CallBackHolder.instance;
}
@Override
public void invoke(NetSDKLib.LLong lLoginId, NetSDKLib.LLong lAttachHandle, Pointer pBuf, int dwBufLen, long dwUser) {
NetSDKLib.NET_PTZ_LOCATION_INFO PTZInfo = new NetSDKLib.NET_PTZ_LOCATION_INFO();
ToolKits.GetPointerData(pBuf, PTZInfo);
// if(PTZInfo.bState == 2){
// Integer cameraId = CameraConnMap.getCameraIdByLoginId(lLoginId);
// if(cameraId != null){
// OrderInfo orderInfo = CameraCaptureMap.getOrderInfoByStreetId(cameraId);
// log.info("cameraId:{}",cameraId);
// if(orderInfo != null && !"C6".equals(orderInfo.getCode())){
// log.info("cameraId:{} 到位 拍照,code:{},orderNUm:{}",cameraId,orderInfo.getCode(),orderInfo.getOrderNum());
// //PtzControlModule.pic(cameraId,0,orderInfo);
// }
// CameraCaptureMap.remove(cameraId);
// }
//
// }
}
}
}
}

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
/**
* @author 251823
* @description 订阅云台元数据接口输输出参数

@ -1,6 +1,6 @@
package com.zhehekeji.web.lib;
import com.zhehekeji.web.lib.enumeration.EM_FILTER_IMAGE_TYPE;
import com.zhehekeji.web.lib.structure.*;
package com.zhehekeji.web.lib.joyware;
import com.zhehekeji.web.lib.joyware.enumeration.EM_FILTER_IMAGE_TYPE;
import com.zhehekeji.web.lib.joyware.structure.*;
import com.sun.jna.*;
import com.sun.jna.ptr.IntByReference;
import java.lang.reflect.Field;
@ -32160,8 +32160,8 @@ public interface NetSDKLib extends Library {
/**
* 设置二维码信息
* @param lLoginID 登录句柄
* @param pInParam 入参,对应结构体{@link com.zhehekeji.web.lib.structure.NET_IN_SET_2DCODE}
* @param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.structure.NET_OUT_SET_2DCODE}
* @param pInParam 入参,对应结构体{@link com.zhehekeji.web.lib.joyware.structure.NET_IN_SET_2DCODE}
* @param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_SET_2DCODE}
* @param nWaitTime 超时时间
* @return
*/
@ -32170,9 +32170,9 @@ public interface NetSDKLib extends Library {
/**
* 订阅热度图数据,pInParam与pOutParam内存由用户申请释放
* @param lLoginID 登录句柄
* @param pInParam 入参,对应结构体 {@link com.zhehekeji.web.lib.structure.NET_IN_ATTACH_VIDEOSTAT_HEATMAP}
* @Param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.structure.NET_OUT_ATTACH_VIDEOSTAT_HEATMAP}
* 也可使用{@link com.zhehekeji.web.lib.structure.EmptyStructure}
* @param pInParam 入参,对应结构体 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_ATTACH_VIDEOSTAT_HEATMAP}
* @Param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_ATTACH_VIDEOSTAT_HEATMAP}
* 也可使用{@link com.zhehekeji.web.lib.joyware.structure.EmptyStructure}
* @param nWaitTime 超时时间
* @return
*/
@ -32181,8 +32181,8 @@ public interface NetSDKLib extends Library {
/**
* 获取热图数据,pInParam与pOutParam内存由用户申请释放
* @param lAttachHandle 热度图订阅句柄
* @param pInParam 入参,对应结构体 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_VIDEOSTAT_HEATMAP}
* @param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_VIDEOSTAT_HEATMAP}
* @param pInParam 入参,对应结构体 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_VIDEOSTAT_HEATMAP}
* @param pOutParam 出参,对应结构体{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_VIDEOSTAT_HEATMAP}
* @param nWaitTime 超时时间
* @return
*/
@ -32207,8 +32207,8 @@ public interface NetSDKLib extends Library {
/**
* 计算两张人脸图片的相似度faceRecognitionServer.matchTwoFace,pstInParam与pstOutParam内存由用户申请释放
* @param lLoginID 登录句柄
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_MATCH_TWO_FACE_IN}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_MATCH_TWO_FACE_OUT}
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_MATCH_TWO_FACE_IN}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_MATCH_TWO_FACE_OUT}
* @param nWaitTime 接口超时时间,默认超时时间为3000
* @return
*/
@ -32219,8 +32219,8 @@ public interface NetSDKLib extends Library {
/**
* 设置相机参数, pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_SET_CAMERA_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_SET_CAMERA_CFG}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_SET_CAMERA_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_SET_CAMERA_CFG}
* @param nWaitTime
* @return
*/
@ -32230,8 +32230,8 @@ public interface NetSDKLib extends Library {
/**
* 获取相机参数, pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_CAMERA_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_CAMERA_CFG}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_CAMERA_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_CAMERA_CFG}
* @param nWaitTime
* @return
*/
@ -32241,8 +32241,8 @@ public interface NetSDKLib extends Library {
/**
* 设置通道参数, pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_SET_CHANNEL_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_SET_CHANNEL_CFG}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_SET_CHANNEL_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_SET_CHANNEL_CFG}
* @param nWaitTime
* @return
*/
@ -32252,8 +32252,8 @@ public interface NetSDKLib extends Library {
/**
* 获取通道参数, pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_CHANNEL_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_CHANNEL_CFG}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_CHANNEL_CFG}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_CHANNEL_CFG}
* @param nWaitTime
* @return
*/
@ -32263,8 +32263,8 @@ public interface NetSDKLib extends Library {
/**
* 交通灯信号检测-获取相机信息, pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_CAMERA_INFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_CAMERA_INFO}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_CAMERA_INFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_CAMERA_INFO}
* @param nWaitTime
* @return
*/
@ -32276,8 +32276,8 @@ public interface NetSDKLib extends Library {
/**
* 主动获取每个热成像点的像素温度
* @param lLoginID 登录句柄
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_HEATMAPS_INFO}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_HEATMAPS_INFO}
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_HEATMAPS_INFO}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_HEATMAPS_INFO}
* @param nWaitTime 接口超时时间,默认超时时间为 3000
* @return
*/
@ -32382,8 +32382,8 @@ public interface NetSDKLib extends Library {
/**
* 获取IPC设备的存储信息
* @param lLoginID 登录句柄
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_GET_DEVICE_AII_INFO}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_GET_DEVICE_AII_INFO}
* @param pstInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_GET_DEVICE_AII_INFO}
* @param pstOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_GET_DEVICE_AII_INFO}
* @param nWaitTime
* @return
*/
@ -32397,8 +32397,8 @@ public interface NetSDKLib extends Library {
/**
* 订阅交通信号灯状态 , pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_ATTACH_TRAFFICLIGHT_INFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_ATTACH_TRAFFICLIGHT_INFO}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_ATTACH_TRAFFICLIGHT_INFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_ATTACH_TRAFFICLIGHT_INFO}
* @param nWaitTime
* @return
*/
@ -32414,8 +32414,8 @@ public interface NetSDKLib extends Library {
/**
* 订阅雷达的报警点信息 , pInParam 和pOutParam 资源由用户申请和释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_RADAR_ALARMPOINTINFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_RADAR_ALARMPOINTINFO}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_RADAR_ALARMPOINTINFO}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_RADAR_ALARMPOINTINFO}
* @param nWaitTime
* @return
*/
@ -32448,8 +32448,8 @@ public interface NetSDKLib extends Library {
/**
* 订阅云台元数据接口,pstuInPtzStatusProc与pstuOutPtzStatusProc内存由用户申请释放
* @param lLoginID 登录句柄
* @param pInParam 入参 {@link com.zhehekeji.web.lib.structure.NET_IN_PTZ_STATUS_PROC}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.structure.NET_OUT_PTZ_STATUS_PROC}
* @param pInParam 入参 {@link com.zhehekeji.web.lib.joyware.structure.NET_IN_PTZ_STATUS_PROC}
* @param pOutParam 出参{@link com.zhehekeji.web.lib.joyware.structure.NET_OUT_PTZ_STATUS_PROC}
* @param nWaitTime
* @return
*/

@ -1,5 +1,6 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
import com.zhehekeji.web.lib.JoywareLoginModule;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@ -14,6 +15,6 @@ public class StopDownLoadThread extends Thread {
@Override
public void run() {
log.info("stop download:{}",lPlayHandle.longValue());
ZWLoginModule.netsdk.CLIENT_StopDownload(lPlayHandle);
JoywareLoginModule.netsdk.CLIENT_StopDownload(lPlayHandle);
}
}

@ -1,7 +1,8 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
import com.zhehekeji.web.lib.common.ErrorCode;
import com.zhehekeji.web.lib.NetSDKLib.LLong;
import com.zhehekeji.web.lib.JoywareLoginModule;
import com.zhehekeji.web.lib.joyware.common.ErrorCode;
import com.zhehekeji.web.lib.joyware.NetSDKLib.LLong;
import com.sun.jna.Memory;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
@ -346,7 +347,7 @@ public class ToolKits {
* 登录设备设备错误状态, 用于界面显示
*/
public static String getErrorCodeShow() {
return ErrorCode.getErrorCode(ZWLoginModule.netsdk.CLIENT_GetLastError());
return ErrorCode.getErrorCode(JoywareLoginModule.netsdk.CLIENT_GetLastError());
}
/**
@ -354,8 +355,8 @@ public class ToolKits {
* @return
*/
public static String getErrorCodePrint() {
return "\n{error code: (0x80000000|" + (ZWLoginModule.netsdk.CLIENT_GetLastError() & 0x7fffffff) +").参考 NetSDKLib.java }"
+ " - {error info:" + ErrorCode.getErrorCode(ZWLoginModule.netsdk.CLIENT_GetLastError()) + "}\n";
return "\n{error code: (0x80000000|" + (JoywareLoginModule.netsdk.CLIENT_GetLastError() & 0x7fffffff) +").参考 NetSDKLib.java }"
+ " - {error info:" + ErrorCode.getErrorCode(JoywareLoginModule.netsdk.CLIENT_GetLastError()) + "}\n";
}
/**

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib;
package com.zhehekeji.web.lib.joyware;
import com.sun.jna.Platform;

@ -25,7 +25,7 @@
// Base64解码 使用1.8版本源码 鉴于1.8部分特性1.6版本使用不到 故只保留能使用到的代码 其余删除
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
import java.util.Arrays;

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import javax.swing.*;
import javax.swing.border.Border;

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import java.lang.reflect.Method;
import java.util.NoSuchElementException;

@ -1,6 +1,4 @@
package com.zhehekeji.web.lib.common;
import com.zhehekeji.web.lib.NetSDKLib;
package com.zhehekeji.web.lib.joyware.common;
/**
* 登录设备设备错误状态

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
public interface EventTaskHandler {

@ -1,7 +1,7 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import com.zhehekeji.web.lib.NetSDKLib;
import com.zhehekeji.web.lib.NetSDKLib.*;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.zhehekeji.web.lib.joyware.NetSDKLib.*;
import java.util.Locale;
import java.util.ResourceBundle;

@ -1,6 +1,6 @@
package com.zhehekeji.web.lib.common;
package com.zhehekeji.web.lib.joyware.common;
import com.zhehekeji.web.lib.ToolKits;
import com.zhehekeji.web.lib.joyware.ToolKits;
import java.io.File;

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.constant;
package com.zhehekeji.web.lib.joyware.constant;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.constant;
package com.zhehekeji.web.lib.joyware.constant;
import com.sun.jna.NativeLong;
import com.sun.jna.Pointer;
@ -33,7 +33,7 @@ public class SDK_ALARM_Ex_TYPE {
*/
public static final int SDK_DISKERROR_ALARM_EX = 0x2107;
/**
* 无硬盘报警,对应结构体{@link com.zhehekeji.web.lib.structure.ALARM_NO_DISK_INFO}
* 无硬盘报警,对应结构体{@link com.zhehekeji.web.lib.joyware.structure.ALARM_NO_DISK_INFO}
* 对应的回调接口{@link NetSDKLib.fMessCallBack#invoke(int, NetSDKLib.LLong, Pointer, int, String, NativeLong, Pointer)}
* 对应的接口{@link NetSDKLib#CLIENT_StartListenEx(NetSDKLib.LLong)}
*/

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 日志查询类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 是否跨位

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
public enum EM_BATTERY_EXIST_STATE {

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
public enum EM_BATTERY_STATE {
EM_BATTERY_STATE_UNKNOWN(0, "电量未知"),

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 拉流使能

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
public enum EM_CAPTURE_PROCESS_END_TYPE {

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 命令类型,对应QueryNewSystemInfo接口

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 默认组合通道绑定模式

@ -1,6 +1,6 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
import com.zhehekeji.web.lib.structure.*;
import com.zhehekeji.web.lib.joyware.structure.*;
/**
* 录播主机组合通道操作

@ -1,6 +1,6 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
import com.zhehekeji.web.lib.structure.*;
import com.zhehekeji.web.lib.joyware.structure.*;
/**
* 录播主机录像信息操作

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 课程录像锁定类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 课程录像压缩类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 课程录像类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 课程状态

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
public enum EM_CURRENT_STATE_TYPE {
EM_CURRENT_STATE_UNKNOWN(0, "电流状态未知"),

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author : 47040

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* AccessControlCustomPassword记录集中密码的保存方式

@ -1,4 +1,6 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
/**
* @author 47081
@ -8,11 +10,11 @@ package com.zhehekeji.web.lib.enumeration;
*/
public enum EM_DATA_SOURCE_TYPE {
/**
* {@link com.zhehekeji.web.lib.NetSDKLib.NET_REMOTE_REALTIME_STREAM_INFO}
* {@link NetSDKLib.NET_REMOTE_REALTIME_STREAM_INFO}
*/
EM_DATA_SOURCE_REMOTE_REALTIME_STREAM(1, "远程实时流"),
/**
* {@link com.zhehekeji.web.lib.NetSDKLib.NET_PUSH_PICFILE_INFO}
* {@link NetSDKLib.NET_PUSH_PICFILE_INFO}
*/
EM_DATA_SOURCE_PUSH_PICFILE(2, "主动推送图片文件");
private int type;

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 探测物体的传感器类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* className:EM_DEV_VARIABLE_CARS_MANAGER_FUNC_TYPE

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 下载数据类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 下载文件方式

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 下载时间类型

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
public enum EM_DRIVING_DIRECTION {

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 智能分析事件类型枚举类

@ -1,6 +1,6 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
import com.zhehekeji.web.lib.NetSDKLib;
import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.sun.jna.Callback;
import com.sun.jna.Pointer;
@ -8,7 +8,7 @@ import com.sun.jna.Pointer;
* @author 47081
* @version 1.0
* @description 智能分析事件类型
* 对应接口{@link com.zhehekeji.web.lib.NetSDKLib#CLIENT_RealLoadPictureEx(NetSDKLib.LLong, int, int, int, Callback, Pointer, Pointer)}
* 对应接口{@link NetSDKLib#CLIENT_RealLoadPictureEx(NetSDKLib.LLong, int, int, int, Callback, Pointer, Pointer)}
* @date 2020/10/14
*/
public enum EM_EVENT_IVS_TYPE {
@ -356,7 +356,7 @@ public enum EM_EVENT_IVS_TYPE {
*/
EVENT_IVS_TRAFFIC_DRIVER_CALLING(0x0000013A, "驾驶员打电话事件"),
/**
* {@link com.zhehekeji.web.lib.structure.DEV_EVENT_TRAFFIC_PEDESTRAINRUNREDLIGHT_INFO}
* {@link com.zhehekeji.web.lib.joyware.structure.DEV_EVENT_TRAFFIC_PEDESTRAINRUNREDLIGHT_INFO}
*/
EVENT_IVS_TRAFFIC_PEDESTRAINRUNREDLIGHT(0x0000013B, "行人闯红灯事件"),
/**
@ -653,13 +653,13 @@ public enum EM_EVENT_IVS_TYPE {
EVENT_IVS_ANIMAL_DETECTION(0x00000286, "动物检测事件"), // ,(对应 DEV_EVENT_ANIMAL_DETECTION_INFO)
/**
* {@link com.zhehekeji.web.lib.structure.DEV_EVENT_SHOP_WINDOW_POST_INFO}
* {@link com.zhehekeji.web.lib.joyware.structure.DEV_EVENT_SHOP_WINDOW_POST_INFO}
*/
EVENT_IVS_SHOP_WINDOW_POST(0x00000287, "橱窗张贴事件"),
/**
* (对应 DEV_EVENT_SHOP_SIGN_ABNORMAL_INFO)
* {@link com.zhehekeji.web.lib.structure.DEV_EVENT_SHOP_SIGN_ABNORMAL_INFO}
* {@link com.zhehekeji.web.lib.joyware.structure.DEV_EVENT_SHOP_SIGN_ABNORMAL_INFO}
*/
EVENT_IVS_SHOP_SIGN_ABNORMAL(0x00000288, "店招异常事件"),

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* className:EM_EVENT_TYPE

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 251823

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* 禁停状态

@ -1,4 +1,4 @@
package com.zhehekeji.web.lib.enumeration;
package com.zhehekeji.web.lib.joyware.enumeration;
/**
* @author 47081

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save