diff --git a/cloud/dahua/src/main/java/com/example/dahua/MyTask.java b/cloud/dahua/src/main/java/com/example/dahua/MyTask.java index 4dfa78b..a84cd5c 100644 --- a/cloud/dahua/src/main/java/com/example/dahua/MyTask.java +++ b/cloud/dahua/src/main/java/com/example/dahua/MyTask.java @@ -228,7 +228,7 @@ public class MyTask implements ApplicationRunner { break; } - return 1; + return 0; } } @@ -277,7 +277,24 @@ public class MyTask implements ApplicationRunner { if (dwAlarmType == NetSDKLib.EVENT_IVS_ACCESS_CTL) { NetSDKLib.DEV_EVENT_ACCESS_CTL_INFO msg = new NetSDKLib.DEV_EVENT_ACCESS_CTL_INFO(); ToolKits.GetPointerData(pAlarmInfo, msg); - System.out.println("sda:" + new String(msg.szCardNo) + " 抓拍照片存储地址:"); + +// String b =new String(msg.szSN); +// System.out.println("readid: "+new String(msg.szReaderID)); +// System.out.println("imageurl: "+new String(msg.szSnapURL)); +// NetSDKLib.ALARM_ACCESS_CTL_STATUS_INFO msg1 = new NetSDKLib.ALARM_ACCESS_CTL_STATUS_INFO(); +// ToolKits.GetPointerData(pBuffer, msg1); +// try{ +// String a =new String(msg1.szSerialNumber,"utf-8").trim(); +// System.out.println("无线设备序列号: "+ a); +// } catch (UnsupportedEncodingException e) { +// e.printStackTrace(); +// } +// System.out.println("sda:" + new String(msg.szCardNo) + " 抓拍照片存储地址:"); +// NetSDKLib.ALARM_ACCESS_CTL_EVENT_INFO msg2 = new NetSDKLib.ALARM_ACCESS_CTL_EVENT_INFO(); +// ToolKits.GetPointerData(pBuffer, msg2); +// String c =new String(msg2.szSN); +// System.out.println("智能锁序列号 " +c); + try { String card = new String(msg.szCardNo).trim(); if (!StringUtils.isEmpty(card)) { diff --git a/cloud/dahua/src/main/java/com/example/dahua/async/MyScheduledTask.java b/cloud/dahua/src/main/java/com/example/dahua/async/MyScheduledTask.java index 8cdecc6..50d9534 100644 --- a/cloud/dahua/src/main/java/com/example/dahua/async/MyScheduledTask.java +++ b/cloud/dahua/src/main/java/com/example/dahua/async/MyScheduledTask.java @@ -262,8 +262,9 @@ public class MyScheduledTask { } else { -// String schoolId = userDao.getSchoolIdWidthCardNum(cardNum); - List clintIds = userDao.getClintIds("4"); + String schoolId = userDao.getSchoolIdWidthCardNum(cardNum); + if(StringUtils.isEmpty(schoolId)||Integer.parseInt(schoolId) <=0)return; + List clintIds = userDao.getClintIds(schoolId); for (int i = 0; i < clintIds.size(); i++) { String clintId = clintIds.get(i); String data = "{\"cmd\":\"" + 34 + "\",\"clientId\":\"" + clintId + "\",\"data\":{\"cardNum\":\"" + cardNum + "\",\"inOrOut\":\"" + inOrOut + "\"}}"; diff --git a/cloud/dahua/src/main/java/com/example/dahua/async/SendUserInfoTask.java b/cloud/dahua/src/main/java/com/example/dahua/async/SendUserInfoTask.java index ee23450..1de79be 100644 --- a/cloud/dahua/src/main/java/com/example/dahua/async/SendUserInfoTask.java +++ b/cloud/dahua/src/main/java/com/example/dahua/async/SendUserInfoTask.java @@ -311,7 +311,14 @@ public class SendUserInfoTask { } else { boolean bFaceFalgs = false; - String cardNum = cardNo(student_num); + String cardNum = ""; + //大华一体机,刷卡开门需要平台十六进制反读直接下发才可正常开门,因这两所学校已下发完成且不用刷卡,所以不做处理, + // 以后使用大华一体机,下发卡号统一处理直接下发,不做取反处理 + if(attendanceBean.getClint_id().startsWith("ytj") + &&Integer.parseInt(attendanceBean.getSchool_id())!=126 + &&Integer.parseInt(attendanceBean.getSchool_id())!=393) + {cardNum = student_num;} + else{cardNum =cardNo(student_num);} // GateModule.getFace(user_id, loginHandleLong); // GateModule.getUser(user_id, loginHandleLong); // GateModule.getCard(cardNum, loginHandleLong); @@ -321,17 +328,33 @@ public class SendUserInfoTask { newRecordNo=GateModule.modifyCard(bCardFlags, cardNum, user_id, name, "123456", Res.string().getCardStatusInt(1), Res.string().getCardTypeInt(1), 0, 0, 1, startTime, endTime, loginHandleLong, userType); - if(newRecordNo==1){ - userDao.updateRecordNo(user_id, bCardFlags, attendanceBean.getClint_id());} + + if(newRecordNo==1) { + + userDao.updateRecordNo(user_id, bCardFlags, attendanceBean.getClint_id()); bFaceFalgsInt = GateModule.modifyFaceInfo(user_id, memory, loginHandleLong); - if(bFaceFalgsInt==1) {//1照片修改成功 - bFaceFalgs=true; + if (bFaceFalgsInt == 1) {//1照片修改成功 + bFaceFalgs = true; + } +// else if (bFaceFalgsInt == 1029)//问题,编辑人脸提示用户id不存在,故此增加此 +// { +// bCardFlags = GateModule.insertCard(cardNum, user_id, name, "123456" +// , Res.string().getCardStatusInt(1), Res.string().getCardTypeInt(1), 0, 1 +// , 1, startTime, endTime, loginHandleLong, userType); +// if (bCardFlags != -1) { +// userDao.updateRecordNo(user_id, bCardFlags, attendanceBean.getClint_id()); +// } +// //添加人脸 +// bFaceFalgs = GateModule.addFaceInfo(user_id, memory, loginHandleLong); +// } + else { + bFaceFalgs = false; } - else{bFaceFalgs=false;} //卡号添加成功,但是人脸不成功的话,就需要新增人脸 if (!bFaceFalgs) bFaceFalgs = GateModule.addFaceInfo(user_id, memory, loginHandleLong); + } else{ userDao.deleteRecordNo(user_id, bCardFlags); bCardFlags = GateModule.insertCard(cardNum, user_id, name, "123456" @@ -417,6 +440,7 @@ public class SendUserInfoTask { } catch (Exception e) { e.printStackTrace(); } + System.out.println("\n"); } //人脸发送失败信息添加 diff --git a/cloud/dahua/src/main/java/com/example/dahua/control/UserControl.java b/cloud/dahua/src/main/java/com/example/dahua/control/UserControl.java index 8a8c2a3..aa2e60d 100644 --- a/cloud/dahua/src/main/java/com/example/dahua/control/UserControl.java +++ b/cloud/dahua/src/main/java/com/example/dahua/control/UserControl.java @@ -51,9 +51,9 @@ public class UserControl { @RequestMapping(value = "uploadImgAndUserInfo", method = RequestMethod.GET) @ApiOperation(value = "上传用户信息") - public boolean uploadImgAndUserInfo(@RequestParam("file") String file, @RequestParam("schoolId") String schoolId, @RequestParam("studentCode") String studentCode, @RequestParam("clint_type") String clint_type) { + public boolean uploadImgAndUserInfo(@RequestParam("file") String file, @RequestParam("schoolId") String schoolId, @RequestParam("studentCode") String studentCode, @RequestParam("clint_type") String clint_type,@RequestParam(value = "deviceId",required = false) String deviceId) { // return userService.uploadImgAndUserInfo(file, schoolId, studentCode, clint_type); - return HttpUtils.uploadImgs(new File(file), schoolId, studentCode, clint_type, file.contains("Teacher") ? 1 : 2,""); + return HttpUtils.uploadImgs(new File(file), schoolId, studentCode, clint_type, file.contains("Teacher") ? 1 : 2,deviceId); } @RequestMapping(value = "sendPermission", method = RequestMethod.POST) diff --git a/cloud/dahua/src/main/java/com/example/dahua/module/GateModule.java b/cloud/dahua/src/main/java/com/example/dahua/module/GateModule.java index 97eb165..970256d 100644 --- a/cloud/dahua/src/main/java/com/example/dahua/module/GateModule.java +++ b/cloud/dahua/src/main/java/com/example/dahua/module/GateModule.java @@ -380,7 +380,7 @@ public class GateModule { String strCmd = NetSDKLib.CFG_CMD_ACCESSTIMESCHEDULE; int nChannel = 120; // 通道号 // msg.stuTimeWeekDay[0].stuTimeSection[0].dwRecordMask - String name = "3"; + String name = "4"; System.arraycopy(name.getBytes(), 0, msg.szName, 0, name.getBytes().length); msg.bEnable = 1; @@ -721,8 +721,8 @@ public class GateModule { if (!bRet) { //System.err.println("修改卡信息失败." + ToolKits.getErrorCodePrint()); String ret=ToolKits.getErrorCodePrint(); - System.err.println("修改卡信息失败." + ret); String number = ret.substring(ret.indexOf("|") + 1, ret.indexOf(")")); + System.err.println("修改卡信息失败." + ret+" "+number); if(number.equals("21")||number.equals("147"))//147用户不存在,21对返回数据的校验出错 { // newRecordNo= insertCard( cardNo, userId, cardName, cardPwd, @@ -734,7 +734,8 @@ public class GateModule { return Integer.parseInt(number); } return 0; - } else { + } + else { System.out.println("修改卡信息成功 "); } @@ -1138,9 +1139,9 @@ public class GateModule { { return modifyFaceInfo( userId, memory, lLong)==1?true:false; } - if(number.equals("1029"))//照片已存在 + if(number.equals("1029"))//用户ID不存在 { - return addFaceInfo( userId, memory, lLong); + //return addFaceInfo( userId, memory, lLong); } return false; } -- libgit2 0.21.0