Exemple #1
0
        private void TestToolStripMenuItem_Click(object sender, EventArgs e)
        {
            List <DaoAttendance> TotalAttInfo = new List <DaoAttendance>();

            DaoAttendance temp = new DaoAttendance();

            temp.UserID     = 323456;
            temp.UserName   = "******";
            temp.CardNum    = "223456";
            temp.Location   = "門口";
            temp.RecordTime = DateTime.Now;
            TotalAttInfo.Add(temp);

            ExportAttendanceToTxt(TotalAttInfo, true);
        }
Exemple #2
0
        /// <summary>
        /// 讀取考勤紀錄
        /// </summary>
        /// <param name="Index">指定要開始讀取的位置,會從此位置開始抓取資料到結尾</param>
        /// <returns></returns>
        public List <DaoAttendance> LoadAttendance(int Index = 0)
        {
            List <DaoAttendance> lAttInfo = new List <DaoAttendance>();

            //不處於連現狀態就不予處理;//
            if (m_daoFP.Connect != DaoFingerPrint.eConnectState.eCON_CONNECTED)
            {
                return(lAttInfo);
            }

            int    iEnrollNumber = 0;
            int    iVerifyMode   = 0;
            int    iInOutMode    = 0;
            int    iYear         = 0;
            int    iMonth        = 0;
            int    iDay          = 0;
            int    iHour         = 0;
            int    iMinute       = 0;
            int    iSecond       = 0;
            int    iWorkcode     = 0;
            int    iReserved     = 0;
            string sCardNum      = "";
            int    idwErrorCode  = 0;

            m_axCZKEM1.EnableDevice(m_daoFP.MachineNo, false);    //disable the device

            if (m_axCZKEM1.ReadGeneralLogData(m_daoFP.MachineNo)) //read all the attendance records to the memory
            {
                //資料已讀取到本機,重新開啟指紋機;//
                m_axCZKEM1.EnableDevice(m_daoFP.MachineNo, true);

                int ReadCount = 0;

                while (m_axCZKEM1.GetGeneralExtLogData(
                           m_daoFP.MachineNo,
                           ref iEnrollNumber,
                           ref iVerifyMode,
                           ref iInOutMode,
                           ref iYear,
                           ref iMonth,
                           ref iDay,
                           ref iHour,
                           ref iMinute,
                           ref iSecond,
                           ref iWorkcode,
                           ref iReserved))
                {
                    if (ReadCount >= Index)
                    {
                        DaoAttendance Info = new DaoAttendance();
                        Info.UserID = iEnrollNumber;
                        //Info.UserName;   //從Employees表格取得;//
                        //Info.CardNumber; //從Employees表格取得;//
                        Info.Location = m_daoFP.Name;
                        string Date = string.Format("{0}-{1:00}-{2:00} {3:00}:{4:00}:{5:00}", iYear, iMonth, iDay, iHour, iMinute, iSecond);
                        Info.RecordTime = DateTime.ParseExact(Date, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
                        lAttInfo.Add(Info);
                    }

                    ReadCount++;
                }
            }
            else
            {
                m_axCZKEM1.GetLastError(ref idwErrorCode);

                if (idwErrorCode != 0)
                {
                    //MessageBox.Show("Reading data from terminal failed,ErrorCode: " + idwErrorCode.ToString(), "Error");
                }
                else
                {
                    //MessageBox.Show("No data from terminal returns!", "Error");
                }

                m_axCZKEM1.EnableDevice(m_daoFP.MachineNo, true);
            }

            return(lAttInfo);
        }