public APIResultViewModel SetEmployeeName(int BMDCode, string EmployeeName) { Boolean vRet; int vErrorCode = 0; APIResultViewModel Result = new APIResultViewModel(); vRet = SBXPCDLL.EnableDevice(this.MachineNo, 0); // 0 : false if (!vRet) { Result.Result = eExecutionResult.Error; Result.Error = util.gstrNoDevice; return(Result); } vRet = SBXPCDLL.SetUserName1(this.MachineNo, BMDCode, EmployeeName); if (vRet) { Result.Result = eExecutionResult.Succeed; } else { SBXPCDLL.GetLastError(this.MachineNo, out vErrorCode); Result.Error = util.ErrorPrint(vErrorCode); Result.Result = eExecutionResult.Error; } SBXPCDLL.EnableDevice(this.MachineNo, 1); // 1 : true return(Result); }
public APIResultViewModel GetEmployeeAttendanceAllLog() { APIResultViewModel Result = new APIResultViewModel(); Boolean vRet; int vErrorCode = 0; vRet = SBXPCDLL.EnableDevice(MachineNo, 0); // 0 : Disable device if (!vRet) { Result.Result = eExecutionResult.Error; Result.Error = "Can not open device. No device found."; return(Result); } vRet = SBXPCDLL.ReadAllGLogData(MachineNo); if (!vRet) { SBXPCDLL.GetLastError(MachineNo, out vErrorCode); Result.Result = eExecutionResult.Error; Result.Error = "Can not read attendance. " + util.ErrorPrint(vErrorCode); vRet = SBXPCDLL.EnableDevice(MachineNo, 1); // 0 : Enable device return(Result); } if (vRet) { List <GLogInfo> glogs_ = new List <GLogInfo>(); while (true) { GLogInfo gi = new GLogInfo(); vRet = SBXPCDLL.GetAllGLogData(MachineNo, out gi.tmno, out gi.seno, out gi.smno, out gi.vmode, out gi.yr, out gi.mon, out gi.day, out gi.hr, out gi.min, out gi.sec); if (!vRet) { break; } glogs_.Add(gi); } Result.Result = eExecutionResult.Succeed; Result.ResultValue = glogs_; } vRet = SBXPCDLL.EnableDevice(MachineNo, 1); // 0 : Enable device return(Result); }
public APIResultViewModel EnrollNewEmployee(int BMDCode, string EmployeeName) { APIResultViewModel Result = new APIResultViewModel(); Boolean vRet; int vErrorCode = 0; eEnroll_FingerNo FingerNo = eEnroll_FingerNo.Password; // Setting password glngEnrollPData = 1; // setting password statically value "1" eEnroll_UserLevl UserLevel = eEnroll_UserLevl.Employee; GCHandle gh; IntPtr AddrOfTemplngEnrollData; vRet = SBXPCDLL.EnableDevice(MachineNo, 0); // 0 : false if (!vRet) { } gh = GCHandle.Alloc(gTemplngEnrollData, GCHandleType.Pinned); AddrOfTemplngEnrollData = gh.AddrOfPinnedObject(); vRet = SBXPCDLL.SetEnrollData1(MachineNo, BMDCode, (int)FingerNo, (int)UserLevel, AddrOfTemplngEnrollData, glngEnrollPData); gh.Free(); if (vRet) { Result.Result = eExecutionResult.Succeed; } else { Result.Result = eExecutionResult.Error; if (SBXPCDLL.GetLastError(MachineNo, out vErrorCode)) { Result.Error = util.ErrorPrint(vErrorCode); } } if (Result.Result == eExecutionResult.Succeed) { Result = SetEmployeeName(BMDCode, EmployeeName); } SBXPCDLL.EnableDevice(MachineNo, 1); // 1 : true //-- return(Result); }
protected APIResultViewModel GetEnrollmentData(int vEnrollNumber, eEnrollmentData_BackupNo BackupNo) { int vEMachineNumber; int vFingerNumber; int vPrivilege = 0; Boolean vRet; int vErrorCode = 0; int i; GCHandle gh; IntPtr AddrOfTemplngEnrollData; APIResultViewModel Result = new APIResultViewModel(); vRet = SBXPCDLL.EnableDevice(this.MachineNo, 0); // 0 : false if (!vRet) { Result.Result = eExecutionResult.Error; Result.Error = "Can not connect to device."; return(Result); } vFingerNumber = (int)BackupNo; if (vFingerNumber == 10) { vFingerNumber = 15; } vEMachineNumber = this.MachineNo; gh = GCHandle.Alloc(gTemplngEnrollData, GCHandleType.Pinned); AddrOfTemplngEnrollData = gh.AddrOfPinnedObject(); glngEnrollPData = 0; vRet = SBXPCDLL.GetEnrollData1(this.MachineNo, vEnrollNumber, vFingerNumber, out vPrivilege, AddrOfTemplngEnrollData, out glngEnrollPData); gh.Free(); if (vRet) { if (vFingerNumber == 11) // Card Number { Result.ResultValue = Convert.ToString(glngEnrollPData, 16).ToUpper(); } else if (vFingerNumber == 14) // User timezone { Result.ResultValue = Convert.ToString(glngEnrollPData % 64); glngEnrollPData = glngEnrollPData / 64; Result.ResultValue += Convert.ToString(glngEnrollPData % 64); glngEnrollPData = glngEnrollPData / 64; Result.ResultValue += Convert.ToString(glngEnrollPData % 64); glngEnrollPData = glngEnrollPData / 64; Result.ResultValue += Convert.ToString(glngEnrollPData % 64); glngEnrollPData = glngEnrollPData / 64; Result.ResultValue += Convert.ToString(glngEnrollPData % 64); glngEnrollPData = glngEnrollPData / 64; } else if (vFingerNumber == 15) // Password { Result.ResultValue = ""; while (glngEnrollPData > 0) { i = glngEnrollPData % 16 - 1; Result.ResultValue += Convert.ToString(i); glngEnrollPData = glngEnrollPData / 16; } } else if (vFingerNumber == 16) // User department { Result.ResultValue = Convert.ToString(glngEnrollPData); } else if (vFingerNumber == 17) // Face Data { Result.ResultValue = ""; for (i = 0; i < DATASIZE_FACE; i++) { Result.ResultValue += Convert.ToString(gTemplngEnrollData[i]); } } else // other { Result.ResultValue = ""; for (i = 0; i < DATASIZE; i++) { Result.ResultValue += Convert.ToString(gTemplngEnrollData[i]); } } } else { SBXPCDLL.GetLastError(this.MachineNo, out vErrorCode); Result.Result = eExecutionResult.Error; Result.Error = util.ErrorPrint(vErrorCode); } SBXPCDLL.EnableDevice(this.MachineNo, 1); //-- return(Result); }