diff --git a/pom.xml b/pom.xml
index 2be9a1a..aa9d852 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.yzx.hardware-access
hardware-access
- 2.0.2
+ 2.0.3
8
diff --git a/src/main/java/com/hkversion/Acs/AcsMain.java b/src/main/java/com/hkversion/Acs/AcsMain.java
index 9daa0aa..1fca9a7 100644
--- a/src/main/java/com/hkversion/Acs/AcsMain.java
+++ b/src/main/java/com/hkversion/Acs/AcsMain.java
@@ -91,8 +91,10 @@ public class AcsMain {
//开启SDK日志打印
boolean i= hCNetSDK.NET_DVR_SetLogToFile(3, "./sdklog", false);
- login_V40("175.155.64.18","admin","kdsy2009",(short) 50102); //登陆设备
-// login_V40("175.155.64.18","admin","ADMIN12345",(short) 50030); //登陆设备
+// login_V40("175.155.64.18","admin","kdsy2009",(short) 50118); //登陆设备
+// login_V40("175.155.64.18","admin","kdsy2009",(short) 50114); //登陆设备
+ login_V40("118.122.89.90","admin","yzx123456",(short)7713);
+// login_V40("192.168.69.103","admin","yzx123456",(short)8000);
/**
* 人员管理模块
*/
@@ -141,9 +143,9 @@ public class AcsMain {
// MutilCard.setGroupCfg(lUserID);
// MutilCard.setMultiCardCfg(lUserID);
//设置计划模板
-// UserManage.setCardTemplate(lUserID,1,2);
+// UserManage.setCardTemplate(lUserID,4,4);
//获取计划模板
- UserManage.getCardTemplate(lUserID,5);
+ UserManage.getCardTemplate(lUserID,9);
//设备能力获取
// 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 52c3efd..d6470d4 100644
--- a/src/main/java/com/hkversion/Acs/UserManage.java
+++ b/src/main/java/com/hkversion/Acs/UserManage.java
@@ -429,16 +429,16 @@ public class UserManage {
struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.bySecond = 0;
}
}
- /**一周7天,全天24小时*/
- for (int i = 0; i < 7; i++) {
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].byEnable = 1;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.byHour = 0;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.byMinute = 0;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.bySecond = 0;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.byHour = 23;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.byMinute = 59;
- struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.bySecond = 59;
- }
+// /**一周7天,全天24小时*/
+// for (int i = 0; i < 7; i++) {
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].byEnable = 1;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.byHour = 0;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.byMinute = 0;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struBeginTime.bySecond = 0;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.byHour = 23;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.byMinute = 59;
+// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[0].struTimeSegment.struEndTime.bySecond = 59;
+// }
/**一周7天,每天设置2个时间段*/
// for(int i=0;i<7;i++)
// {
@@ -458,19 +458,44 @@ public class UserManage {
// struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[1].struTimeSegment.struEndTime.bySecond = 0;
// }
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].byEnable = 1;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byHour = 14;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byMinute = 20;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byHour = 6;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byMinute = 40;
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.bySecond = 0;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byHour = 14;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byMinute = 41;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byHour = 8;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byMinute = 10;
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.bySecond = 0;
+//
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].byEnable = 1;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byHour = 15;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byMinute = 0;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byHour = 12;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byMinute = 25;
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.bySecond = 0;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byHour = 15;
-// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byMinute = 36;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byHour = 14;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byMinute = 20;
// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.bySecond = 0;
+
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].byEnable = 1;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struBeginTime.byHour = 12;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struBeginTime.byMinute = 25;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struBeginTime.bySecond = 0;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struEndTime.byHour = 14;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struEndTime.byMinute = 20;
+// struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[2].struTimeSegment.struEndTime.bySecond = 0;
+
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].byEnable = 1;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byHour = 15;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.byMinute = 30;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struBeginTime.bySecond = 59;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byHour = 19;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.byMinute = 40;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[0].struTimeSegment.struEndTime.bySecond = 59;
+
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].byEnable = 1;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byHour = 11;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.byMinute = 20;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struBeginTime.bySecond = 59;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byHour = 12;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.byMinute = 00;
+ struWeekPlanCfg.struPlanCfg[4].struPlanCfgDay[1].struTimeSegment.struEndTime.bySecond = 0;
struWeekPlanCfg.write();
//设置卡权限周计划参数
if (false == HKVersion.hCNetSDK.NET_DVR_SetDeviceConfig(userID, HCNetSDK.NET_DVR_SET_CARD_RIGHT_WEEK_PLAN_V50, 1, lpCond, struWeekPlanCond.size(), lpStatusList, lpInbuferCfg, struWeekPlanCfg.size())) {
@@ -487,7 +512,7 @@ public class UserManage {
* @param userID 用户登录句柄
* @param dwWeekPlanNumber 计划模板编号,从1开始,1-2是系统默认的不要修改,最大值从门禁能力集获取
*/
- public static void getCardTemplate(int userID,int dwWeekPlanNumber) {
+ public static CardTemplateInfo getCardTemplate(int userID,int dwWeekPlanNumber) {
IntByReference pInt = new IntByReference(0);
Pointer lpStatusList = pInt.getPointer();
//获取卡权限周计划参数
@@ -502,27 +527,44 @@ public class UserManage {
Pointer lpInbuferCfg = struWeekPlanCfg.getPointer();
if (false == HKVersion.hCNetSDK.NET_DVR_GetDeviceConfig(userID, HCNetSDK.NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50, 1, lpCond, struWeekPlanCond.size(), lpStatusList, lpInbuferCfg, struWeekPlanCfg.size())) {
System.out.println("NET_DVR_GET_CARD_RIGHT_WEEK_PLAN_V50失败,错误号:" + HKVersion.hCNetSDK.NET_DVR_GetLastError());
- return;
+ return null;
}
struWeekPlanCfg.read();
-
-
-
+ CardTemplateInfo cardTemplateInfo = new CardTemplateInfo();
+ cardTemplateInfo.setTemplateId(dwWeekPlanNumber);
+ List timeSegmentInfos = cardTemplateInfo.getTimeSegmentInfos();
for (int i = 0; i < 7; i++) {
System.out.println("星期:"+(i+1));
for (int j = 0; j < 8; j++) {
- System.out.print("可用状态:"+struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].byEnable);
- System.out.println("\t时间段"+j+":"+struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.byHour
+ CardTemplateInfo.TimeSegmentInfo timeSegmentInfo = new CardTemplateInfo.TimeSegmentInfo();
+ byte enable = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].byEnable;
+ byte beginTimeHour = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.byHour;
+ byte beginTimeMinute = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.byMinute;
+ byte beginTimeSecond = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.bySecond;
+ byte endTimeHour = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.byHour;
+ byte endTimeMinute = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.byMinute;
+ byte endTimeSecond = struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.bySecond;
+ timeSegmentInfo.setEnable(enable);
+ timeSegmentInfo.setBeginTimeHour(beginTimeHour);
+ timeSegmentInfo.setBeginTimeMinute(beginTimeMinute);
+ timeSegmentInfo.setBeginTimeSecond(beginTimeSecond);
+ timeSegmentInfo.setEndTimeHour(endTimeHour);
+ timeSegmentInfo.setEndTimeMinute(endTimeMinute);
+ timeSegmentInfo.setEndTimeSecond(endTimeSecond);
+ timeSegmentInfos.add(timeSegmentInfo);
+ System.out.print("可用状态:"+ enable);
+ System.out.println("\t时间段"+j+":"+ beginTimeHour
+ ":"
- + struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.byMinute
+ + beginTimeMinute
+ ":"
- + struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struBeginTime.bySecond + "--" + struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.byHour
+ + beginTimeSecond + "--" + endTimeHour
+ ":"
- + struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.byMinute
+ + endTimeMinute
+ ":"
- + struWeekPlanCfg.struPlanCfg[i].struPlanCfgDay[j].struTimeSegment.struEndTime.bySecond);
+ + endTimeSecond);
}
}
+ return cardTemplateInfo;
}
diff --git a/src/main/java/com/yzx/IHardwareEquipment.java b/src/main/java/com/yzx/IHardwareEquipment.java
index d0f035d..5af08ba 100644
--- a/src/main/java/com/yzx/IHardwareEquipment.java
+++ b/src/main/java/com/yzx/IHardwareEquipment.java
@@ -19,6 +19,8 @@ public interface IHardwareEquipment {
int setCardTemplate(CardTemplateInfo info);
+ CardTemplateInfo getCardTemplate(int templateId);
+
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 ae21fcf..d979be6 100644
--- a/src/main/java/com/yzx/impl/DaHua.java
+++ b/src/main/java/com/yzx/impl/DaHua.java
@@ -499,6 +499,11 @@ public class DaHua implements IHardwareEquipment {
return 0;
}
+ @Override
+ public CardTemplateInfo getCardTemplate(int templateId) {
+ return null;
+ }
+
@Override
public void modifyUserInfo(List userFaceInfos) {
diff --git a/src/main/java/com/yzx/impl/HKVersion.java b/src/main/java/com/yzx/impl/HKVersion.java
index 11cfae2..b4b17a4 100644
--- a/src/main/java/com/yzx/impl/HKVersion.java
+++ b/src/main/java/com/yzx/impl/HKVersion.java
@@ -235,6 +235,14 @@ public class HKVersion implements IHardwareEquipment {
return i;
}
+ @Override
+ public CardTemplateInfo getCardTemplate(int templateId) {
+ if(lUserID == -1){
+ return null;
+ }
+ return UserManage.getCardTemplate(lUserID, templateId);
+ }
+
public void logout() {
hCNetSDK.NET_DVR_Logout(lUserID);
}