Exemple #1
0
        protected override bool Register(ActiveUserResponse member, string sPassword, int iPrivilege)
        {
            bool returnResult = false;

            try
            {
                returnResult = base.Register(member, sPassword, iPrivilege);

                if (returnResult)
                {
                    for (int fingerIndex = 0; fingerIndex < 10; fingerIndex++)
                    {
                        if (fingerIndex == member.fingerIndex)
                        {
                            //remove & update finger
                            AxDevice.SSR_DelUserTmpExt(_attendanceDevice.MachineNo, member.member_id.ToString(), fingerIndex);
                            var isSuccess = AxDevice.SetUserTmpExStr(_attendanceDevice.MachineNo, member.member_id, member.fingerIndex, 1, member.templateData);
                            if (isSuccess)
                            {
                                OnThrowingMessage("Register user " + member.userName + " in device with Finger " + member.member_id, MessageType.Info);
                            }
                        }
                    }
                }
                return(returnResult);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
        protected override bool Register(ActiveUserResponse member, string sPassword, int iPrivilege)
        {
            bool   returnResult = false, isExitToDevice = false;
            string name, password;
            int    priv;

            try
            {
                bool isEnabled = true;
                if (!String.IsNullOrEmpty(member.cardNumber))
                {
                    bool isSet = AxDevice.SetStrCardNumber(member.cardNumber);
                    if (!isSet)
                    {
                        return(false);
                    }
                    if (isEnabled)
                    {
                        returnResult = AxDevice.SSR_SetUserInfo(_attendanceDevice.MachineNo, member.member_id.ToString(), member.userName, sPassword, iPrivilege, isEnabled);
                    }
                    else
                    {
                        //check if user exits in device. Delete User if only Exit
                        AxDevice.SSR_GetUserInfo(_attendanceDevice.MachineNo, member.member_id.ToString(), out name, out password, out priv, out isExitToDevice);
                        if (isExitToDevice)
                        {
                            returnResult = AxDevice.SSR_DeleteEnrollData(_attendanceDevice.MachineNo, member.member_id.ToString(), BusinessRules.BackupNumber);
                        }
                        else
                        {
                            return(returnResult);
                        }
                    }

                    if (returnResult)
                    {
                        OnThrowingMessage("Register user " + member.userName + " in device with pin " + member.member_id, MessageType.Info);
                    }
                    else
                    {
                        OnThrowingMessage("Failed to save user " + member.userName + " in device ", MessageType.Error);
                    }
                }
                return(returnResult);
            }
            catch (Exception ex)
            {
                //Log.Error(ex);
                return(false);
            }
        }
        protected override bool UnRegister(LoginResponse item, string sPassword, int iPrivilege)
        {
            try
            {
                for (int i = 0; i <= 9; i++)
                {
                    string sTmpData = string.Empty;
                    int    iTmpLength = 0, iFlag = 0;

                    if (AxDevice.GetUserTmpExStr(_attendanceDevice.Id, item.id, i, out iFlag, out sTmpData, out iTmpLength))
                    {
                        var sendData = new SaveApiTemplate
                        {
                            gymid          = Settings.Default.BranchId,
                            BackUpTemplate = new List <BackUpTemplate>
                            {
                                new BackUpTemplate
                                {
                                    name         = "",
                                    member_id    = item.id,
                                    Password     = "",
                                    prvlg        = 1,
                                    enabled      = 1,
                                    fingerIndex  = i,
                                    flag         = iFlag,
                                    templateData = sTmpData
                                }
                            }
                        };
                        SendTemplateBackUpToAPI(sendData);
                        AxDevice.SSR_DelUserTmp(_attendanceDevice.Id, item.id, i);
                    }
                }
                return(true);
            }
            catch
            {
                return(false);
            }
        }
        public override void ProcessLogList()
        {
            //for color device
            var idwEnrollNumber = "";
            var idwVerifyMode   = 0;
            var idwInOutMode    = 0;
            var idwYear         = 0;
            var idwMonth        = 0;
            var idwDay          = 0;
            var idwHour         = 0;
            var idwMinute       = 0;
            var idwSecond       = 0;
            var idwWorkCode     = 0;
            var strResetTime    = string.Empty;
            var dates           = new List <DateTime>();
            var attdlogList     = new List <AttendanceLog>();

            try
            {
                OnThrowingMessage("Retriving attendance data from device", MessageType.Info);

                //for color
                while (AxDevice.SSR_GetGeneralLogData(_attendanceDevice.MachineNo, out idwEnrollNumber, out idwVerifyMode, out idwInOutMode,
                                                      out idwYear, out idwMonth, out idwDay, out idwHour, out idwMinute, out idwSecond, ref idwWorkCode))
                {
                    double memberId;
                    if (Double.TryParse(idwEnrollNumber, out memberId))
                    {
                        // iGLCount++;
                        var date = new DateTime(idwYear, idwMonth, idwDay, idwHour, idwMinute, idwSecond);

                        var dr = tblS.NewRow();
                        dr["intEmployeeId"] = idwEnrollNumber;
                        dr["dtDate"]        = date.ToString();
                        dr["intInOut"]      = idwVerifyMode;
                        dr["intBranchId"]   = _attendanceDevice.BranchId;
                        if (date >= Settings.Default.Date)
                        {
                            if (string.IsNullOrEmpty(strResetTime))
                            {
                                strResetTime = date.ToString();
                            }
                            tblS.Rows.Add(dr);
                            dates.Add(date);
                        }
                    }
                    if (string.IsNullOrEmpty(strResetTime))
                    {
                        strResetTime = Settings.Default.Date.ToString();
                    }
                    if (dates.Any())
                    {
                        Settings.Default.Date = dates.OrderByDescending(x => x).First();
                    }
                    //await fillListView("Starting from " + strResetTime + " Compare To " + Settings.Default.Date, 0);
                    //fillListView("fetched In", iGLCount);
                    SaveSyncData(tblS);
                }
            }
            catch (Exception ex)
            {
                // Log.Error(ex);
                throw;
            }
        }