From f6eab6a44b66356064fa4629fa2456cd68e7d286 Mon Sep 17 00:00:00 2001 From: haidong Date: Wed, 1 Nov 2023 15:22:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=B5=B7=E5=BA=B7SDK?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E4=BA=BA=E5=91=98=E4=BF=A1=E6=81=AF=E7=9A=84?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: haidong --- pom.xml | 2 +- src/main/java/com/hkversion/Acs/AcsMain.java | 6 ++--- .../java/com/hkversion/Acs/UserManage.java | 11 ++++++---- src/main/java/com/yzx/IHardwareEquipment.java | 2 ++ src/main/java/com/yzx/impl/DaHua.java | 5 +++++ src/main/java/com/yzx/impl/HKVersion.java | 22 +++++++++++++++++++ 6 files changed, 40 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index cccfb92..e66f81f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.yzx.hardware-access hardware-access - 2.0.0 + 2.0.1 8 diff --git a/src/main/java/com/hkversion/Acs/AcsMain.java b/src/main/java/com/hkversion/Acs/AcsMain.java index e8e8ebb..254d099 100644 --- a/src/main/java/com/hkversion/Acs/AcsMain.java +++ b/src/main/java/com/hkversion/Acs/AcsMain.java @@ -91,12 +91,12 @@ public class AcsMain { //开启SDK日志打印 boolean i= hCNetSDK.NET_DVR_SetLogToFile(3, "./sdklog", false); - login_V40("118.122.89.90","admin","yzx123456",(short) 7713); //登陆设备 + login_V40("175.155.64.18","admin","kdsy2009",(short) 50106); //登陆设备 // login_V40("175.155.64.18","admin","ADMIN12345",(short) 50030); //登陆设备 /** * 人员管理模块 */ - UserManage.searchUserInfo(lUserID,"s4775"); //查询所有人员 + UserManage.searchUserInfo(lUserID,"s1718"); //查询所有人员 // UserManage.deleteUserInfo(lUserID); // UserManage.addUserInfo(lUserID,"test20221122"); //添加人员 // UserManage.modifyUserInfo(lUserID,"u461",1); @@ -143,7 +143,7 @@ public class AcsMain { //计划模板 // UserManage.setCardTemplate(lUserID,1,2); //获取计划模板 - UserManage.getCardTemplate(lUserID,2); +// UserManage.getCardTemplate(lUserID,2); //设备能力获取 // DeviceAbility.getDeviceAbility(lUserID,0x01); diff --git a/src/main/java/com/hkversion/Acs/UserManage.java b/src/main/java/com/hkversion/Acs/UserManage.java index 49f4eb1..f3013c9 100644 --- a/src/main/java/com/hkversion/Acs/UserManage.java +++ b/src/main/java/com/hkversion/Acs/UserManage.java @@ -215,7 +215,8 @@ public class UserManage { * @param userID * @throws JSONException */ - public static void searchUserInfo(int userID,String...employeeNo) throws JSONException { + public static String searchUserInfo(int userID,String...employeeNo) throws JSONException { + String result = null; HCNetSDK.BYTE_ARRAY ptrByteArray = new HCNetSDK.BYTE_ARRAY(1024); //数组 String strInBuffer = "POST /ISAPI/AccessControl/UserInfo/Search?format=json"; System.arraycopy(strInBuffer.getBytes(), 0, ptrByteArray.byValue, 0, strInBuffer.length());//字符串拷贝到数组中 @@ -224,7 +225,7 @@ public class UserManage { int lHandler = HKVersion.hCNetSDK.NET_DVR_StartRemoteConfig(userID, HCNetSDK.NET_DVR_JSON_CONFIG, ptrByteArray.getPointer(), strInBuffer.length(), null, null); if (lHandler < 0) { System.out.println("SearchUserInfo NET_DVR_StartRemoteConfig 失败,错误码为" + HKVersion.hCNetSDK.NET_DVR_GetLastError()); - return; + return result; } else { //组装查询的JSON报文,这边查询的是所有的人员 JSONObject jsonObject = new JSONObject(); @@ -284,7 +285,9 @@ public class UserManage { break; } else if (dwState == HCNetSDK.NET_SDK_CONFIG_STATUS_SUCCESS) { ptrOutuff.read(); - System.out.println("查询人员成功, json:" + new String(ptrOutuff.byValue).trim()); + String trim = new String(ptrOutuff.byValue).trim(); + System.out.println("查询人员成功, json:" + trim); + result = trim; break; } else if (dwState == HCNetSDK.NET_SDK_CONFIG_STATUS_FINISH) { System.out.println("获取人员完成"); @@ -300,7 +303,7 @@ public class UserManage { } } - + return result; } public static void deleteUserInfo(int userID) throws JSONException { diff --git a/src/main/java/com/yzx/IHardwareEquipment.java b/src/main/java/com/yzx/IHardwareEquipment.java index b4d654a..d0f035d 100644 --- a/src/main/java/com/yzx/IHardwareEquipment.java +++ b/src/main/java/com/yzx/IHardwareEquipment.java @@ -21,4 +21,6 @@ public interface IHardwareEquipment { void modifyUserInfo(List userFaceInfos); + UserFaceInfo searchUserInfo(String employeeNo); + } diff --git a/src/main/java/com/yzx/impl/DaHua.java b/src/main/java/com/yzx/impl/DaHua.java index 20585e0..ae21fcf 100644 --- a/src/main/java/com/yzx/impl/DaHua.java +++ b/src/main/java/com/yzx/impl/DaHua.java @@ -503,4 +503,9 @@ public class DaHua implements IHardwareEquipment { public void modifyUserInfo(List userFaceInfos) { } + + @Override + public UserFaceInfo searchUserInfo(String employeeNo) { + return null; + } } diff --git a/src/main/java/com/yzx/impl/HKVersion.java b/src/main/java/com/yzx/impl/HKVersion.java index 43daeec..8a4a832 100644 --- a/src/main/java/com/yzx/impl/HKVersion.java +++ b/src/main/java/com/yzx/impl/HKVersion.java @@ -1,5 +1,7 @@ package com.yzx.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.common.osSelect; import com.hkversion.Acs.UserManage; import com.hkversion.FMSGCallBack; @@ -247,6 +249,26 @@ public class HKVersion implements IHardwareEquipment { } } + @Override + public UserFaceInfo searchUserInfo(String employeeNo) { + UserFaceInfo userFaceInfo = null; + String result = UserManage.searchUserInfo(lUserID, employeeNo); + JSONObject json = JSONObject.parseObject(result); + if(json.containsKey("UserInfoSearch")){ + JSONObject userInfoSearch = json.getJSONObject("UserInfoSearch"); + if(userInfoSearch.containsKey("responseStatusStrg") && userInfoSearch.getString("responseStatusStrg").equals("OK")){ + JSONArray userInfoList = userInfoSearch.getJSONArray("UserInfo"); + JSONObject userInfo = userInfoList.getJSONObject(0); + Integer template_id = userInfo.getJSONArray("RightPlan").getJSONObject(0).getInteger("planTemplateNo"); + userFaceInfo = new UserFaceInfo(); + userFaceInfo.setTemplateId(template_id); + userFaceInfo.setEmployeeNo(employeeNo); + } + } + + return userFaceInfo; + } + /** * 动态库加载 *