Beispiel #1
0
        public void SaveFaceLog(string LogStr)
        {
            byte[] PhotoImage   = null;
            string InOutMode    = "";
            string VerifyStatus = "";
            int    DevMode      = 0;

            MonitoringLogs logs = JsonConvert.DeserializeObject <MonitoringLogs>(LogStr);

            MacSN = request.Headers.Get("dev_id");
            //获取设备模式
            DataTableReader dr = SystemInfo.db.GetDataReader("SELECT * FROM VDI_MacInfo WHERE MacSN='" + MacSN + "'");

            if (dr.Read())
            {
                Int32.TryParse(dr["DevModeID"].ToString(), out DevMode);
            }
            dr.Close();

            attLog        = new TFingerLog();
            attLog.Remark = request.Headers.Get("Host");
            UInt32 FingerNo = Convert.ToUInt32(logs.userId);

            attLog.CardID   = FingerNo.ToString("0000000000");
            attLog.CardTime = DateTime.Parse(readData.stringToTimeStr(logs.time));
            attLog.FingerNo = FingerNo;
            InOutMode       = logs.inOut;
            if (logs.doorMode == null)
            {
                attLog.DoorMode = 9;
            }
            else
            {
                attLog.DoorMode = readData.GetDoorMode(logs.doorMode);
            }
            VerifyStatus = logs.verifyMode;
            if (VerifyStatus != null)
            {
                attLog.VerifyMode = readData.GetVerifyModeID(VerifyStatus);
            }
            attLog.InOut  = readData.GetInOut(InOutMode);
            attLog.IoMode = logs.ioMode;
            readData.Star_SetLogName(attLog);
            bool IsKQ = readData.IsKQData(attLog);

            if (IsKQ)
            {
                readData.WriteTextFile(attLog, MacSN);
                if (textFormat.Allow)
                {
                    readData.WriteTextFormat(textFormat, attLog, MacSN);
                }
                if (DevMode == 0 || DevMode == 1)
                {
                    readData.SaveDB(attLog, MacSN, true, ref GUID);
                    if (GUID != "" && PhotoImage != null)
                    {
                        readData.SaveDBPhoto(GUID, PhotoImage);
                    }
                }
            }
            else
            {
                if (attLog.VerifyMode == 0)
                {
                    attLog.VerifyMode     = attLog.DoorMode;
                    attLog.VerifyModeName = attLog.DoorModeName;
                }
                readData.WriteTextFileMJ(attLog, MacSN);
                if (DevMode == 0 || DevMode == 2)
                {
                    readData.SaveDBMJ(attLog, MacSN, true, ref GUID);
                    if (GUID != "" && PhotoImage != null)
                    {
                        readData.SaveDBPhotoMJ(GUID, PhotoImage);
                    }
                }
            }
            if (IsKQ && attLog.DoorMode > 0)
            {
                attLog.VerifyMode     = attLog.DoorMode;
                attLog.VerifyModeName = attLog.DoorModeName;

                if (DevMode == 0 || DevMode == 2)
                {
                    readData.SaveDBMJ(attLog, MacSN, true, ref GUID);
                    if (GUID != "" && PhotoImage != null)
                    {
                        readData.SaveDBPhotoMJ(GUID, PhotoImage);
                    }
                }
            }

            if (prog != null)
            {
                prog(1, 1, MacSN, attLog, GUID, true);
            }
        }