private void CalculateTimeINOUTOpenShift(AttData attendanceRecord, PollData up)
        {
            try
            {
                switch (up.RdrDuty)
                {
                    case 1: //IN
                        if (attendanceRecord.Tin0 == null)
                        {
                            if (up.EntTime.TimeOfDay < OpenShiftThresholdEnd)
                            {
                                DateTime dt = new DateTime();
                                dt = up.EntDate.Date.AddDays(-1);
                                var _attData = context.AttDatas.FirstOrDefault(aa => aa.AttDate == dt && aa.EmpID == up.EmpID);
                                if (_attData != null)
                                {

                                    if (_attData.TimeIn != null)
                                    {
                                        if (_attData.TimeIn.Value.TimeOfDay > OpenShiftThresholdStart)
                                        {
                                            //attdata - 1 . multipleTimeIn =  up.EntTime

                                        }
                                        else
                                        {
                                            attendanceRecord.Tin0 = up.EntTime;
                                            attendanceRecord.TimeIn = up.EntTime;
                                            attendanceRecord.StatusAB = false;
                                            attendanceRecord.StatusP = true;
                                            attendanceRecord.Remarks = null;
                                            attendanceRecord.StatusIN = true;
                                        }
                                    }
                                    else
                                    {
                                        attendanceRecord.Tin0 = up.EntTime;
                                        attendanceRecord.TimeIn = up.EntTime;
                                        attendanceRecord.StatusAB = false;
                                        attendanceRecord.StatusP = true;
                                        attendanceRecord.Remarks = null;
                                        attendanceRecord.StatusIN = true;
                                    }
                                }
                                else
                                {
                                    attendanceRecord.Tin0 = up.EntTime;
                                    attendanceRecord.TimeIn = up.EntTime;
                                    attendanceRecord.StatusAB = false;
                                    attendanceRecord.StatusP = true;
                                    attendanceRecord.Remarks = null;
                                    attendanceRecord.StatusIN = true;
                                }
                            }
                            else
                            {
                                attendanceRecord.Tin0 = up.EntTime;
                                attendanceRecord.TimeIn = up.EntTime;
                                attendanceRecord.StatusAB = false;
                                attendanceRecord.StatusP = true;
                                attendanceRecord.Remarks = null;
                                attendanceRecord.StatusIN = true;
                            }

                        }
                        else if (attendanceRecord.Tin1 == null)
                        {
                            attendanceRecord.Tin1 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin2 == null)
                        {
                            attendanceRecord.Tin2 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin3 == null)
                        {
                            attendanceRecord.Tin3 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin4 == null)
                        {
                            attendanceRecord.Tin4 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin5 == null)
                        {
                            attendanceRecord.Tin5 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin6 == null)
                        {
                            attendanceRecord.Tin6 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin7 == null)
                        {
                            attendanceRecord.Tin7 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin8 == null)
                        {
                            attendanceRecord.Tin8 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin9 == null)
                        {
                            attendanceRecord.Tin9 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else if (attendanceRecord.Tin10 == null)
                        {
                            attendanceRecord.Tin10 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        else
                        {
                            attendanceRecord.Tin11 = up.EntTime;
                            SortingInTime(attendanceRecord);
                        }
                        break;
                    case 5: //OUT
                        if (up.EntTime.TimeOfDay < OpenShiftThresholdEnd)
                        {
                            DateTime dt = up.EntDate.AddDays(-1);
                            if (context.AttDatas.Where(aa => aa.AttDate == dt && aa.EmpID == up.EmpID).Count() > 0)
                            {
                                AttData AttDataOfPreviousDay = context.AttDatas.FirstOrDefault(aa => aa.AttDate == dt && aa.EmpID == up.EmpID);
                                if (AttDataOfPreviousDay.TimeIn != null)
                                {
                                    if (AttDataOfPreviousDay.TimeIn.Value.TimeOfDay > OpenShiftThresholdStart)
                                    {
                                        //AttDate -1, Possible TimeOut = up.entryTime
                                        MarkOUTForOpenShift(up.EntTime, AttDataOfPreviousDay);
                                    }
                                    else
                                    {
                                        // Mark as out of that day
                                        MarkOUTForOpenShift(up.EntTime, attendanceRecord);
                                    }
                                }
                                else
                                    MarkOUTForOpenShift(up.EntTime, attendanceRecord);
                            }
                            else
                            {
                                // Mark as out of that day
                                MarkOUTForOpenShift(up.EntTime, attendanceRecord);
                            }

                        }
                        else
                        {
                            //Mark as out of that day
                            MarkOUTForOpenShift(up.EntTime, attendanceRecord);
                        }
                        //-------------------------------------------------------
                        context.SaveChanges();
                        break;
                }
            }
            catch (Exception ex)
            {
                string _error = "";
                if (ex.InnerException.Message != null)
                    _error = ex.InnerException.Message;
                else
                    _error = ex.Message;
                _myHelperClass.WriteToLogFile("Attendance Processing Error at Markin In/Out " + _error);
            }
        }
 private void CalculateTimeINOUT(AttData attendanceRecord, PollData up)
 {
     try
     {
         switch (up.RdrDuty)
         {
             case 1: //IN
                 if (attendanceRecord.Tin0 == null)
                 {
                     attendanceRecord.Tin0 = up.EntTime;
                     attendanceRecord.TimeIn = up.EntTime;
                     attendanceRecord.StatusAB = false;
                     attendanceRecord.StatusP = true;
                     attendanceRecord.Remarks = null;
                 }
                 else if (attendanceRecord.Tin1 == null)
                 {
                     attendanceRecord.Tin1 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin2 == null)
                 {
                     attendanceRecord.Tin2 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin3 == null)
                 {
                     attendanceRecord.Tin3 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin4 == null)
                 {
                     attendanceRecord.Tin4 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin5 == null)
                 {
                     attendanceRecord.Tin5 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin6 == null)
                 {
                     attendanceRecord.Tin6 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin7 == null)
                 {
                     attendanceRecord.Tin7 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin8 == null)
                 {
                     attendanceRecord.Tin8 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin9 == null)
                 {
                     attendanceRecord.Tin9 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tin10 == null)
                 {
                     attendanceRecord.Tin10 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 else
                 {
                     attendanceRecord.Tin11 = up.EntTime;
                     SortingInTime(attendanceRecord);
                 }
                 break;
             case 5: //OUT
                 if (attendanceRecord.Tout0 == null)
                 {
                     attendanceRecord.Tout0 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout1 == null)
                 {
                     attendanceRecord.Tout1 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout2 == null)
                 {
                     attendanceRecord.Tout2 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout3 == null)
                 {
                     attendanceRecord.Tout3 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout4 == null)
                 {
                     attendanceRecord.Tout4 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout5 == null)
                 {
                     attendanceRecord.Tout5 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout6 == null)
                 {
                     attendanceRecord.Tout6 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout7 == null)
                 {
                     attendanceRecord.Tout7 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout8 == null)
                 {
                     attendanceRecord.Tout8 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout9 == null)
                 {
                     attendanceRecord.Tout9 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else if (attendanceRecord.Tout10 == null)
                 {
                     attendanceRecord.Tout10 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 else
                 {
                     attendanceRecord.Tout11 = up.EntTime;
                     attendanceRecord.TimeOut = up.EntTime;
                     SortingOutTime(attendanceRecord);
                 }
                 break;
             case 8: //DUTY
                 if (attendanceRecord.Tin0 != null)
                 {
                     if (attendanceRecord.Tout0 == null)
                     {
                         attendanceRecord.Tout0 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin1 == null)
                     {
                         attendanceRecord.Tin1 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout1 == null)
                     {
                         attendanceRecord.Tout1 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin2 == null)
                     {
                         attendanceRecord.Tin2 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout2 == null)
                     {
                         attendanceRecord.Tout2 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin3 == null)
                     {
                         attendanceRecord.Tin3 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout3 == null)
                     {
                         attendanceRecord.Tout3 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin4 == null)
                     {
                         attendanceRecord.Tin4 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout4 == null)
                     {
                         attendanceRecord.Tout4 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin5 == null)
                     {
                         attendanceRecord.Tin5 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout5 == null)
                     {
                         attendanceRecord.Tout5 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin6 == null)
                     {
                         attendanceRecord.Tin6 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout6 == null)
                     {
                         attendanceRecord.Tout6 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     //
                     else if (attendanceRecord.Tin7 == null)
                     {
                         attendanceRecord.Tin7 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout7 == null)
                     {
                         attendanceRecord.Tout7 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin8 == null)
                     {
                         attendanceRecord.Tin8 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout8 == null)
                     {
                         attendanceRecord.Tout8 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin9 == null)
                     {
                         attendanceRecord.Tin9 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout9 == null)
                     {
                         attendanceRecord.Tout9 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin10 == null)
                     {
                         attendanceRecord.Tin10 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout10 == null)
                     {
                         attendanceRecord.Tout10 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin11 == null)
                     {
                         attendanceRecord.Tin11 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout11 == null)
                     {
                         attendanceRecord.Tout11 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin12 == null)
                     {
                         attendanceRecord.Tin12 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tout12 == null)
                     {
                         attendanceRecord.Tout12 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else if (attendanceRecord.Tin13 == null)
                     {
                         attendanceRecord.Tin13 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                     else
                     {
                         attendanceRecord.Tout13 = up.EntTime;
                         attendanceRecord.TimeOut = up.EntTime;
                     }
                 }
                 else
                 {
                     attendanceRecord.Tin0 = up.EntTime;
                     attendanceRecord.TimeIn = up.EntTime;
                     attendanceRecord.StatusAB = false;
                     attendanceRecord.StatusP = true;
                     attendanceRecord.Remarks = null;
                 }
                 break;
         }
     }
     catch (Exception ex)
     {
         //Error in TimeIN/OUT
         _myHelperClass.WriteToLogFile("Error At Creating Attendance");
     }
 }
Example #3
0
        private void SaveAttDataToPollData(List<ReadersCommLibrary.Poll> records, Int16 _RdrID)
        {
            using (var context = new TAS2013Entities())
            {
                List<Emp> emps = context.Emps.Where(aa => aa.Status == true).ToList();
                foreach (var entry in records)
                {
                    try
                    {
                        var emp = emps.Where(aa => aa.FpID == entry.ID);
                        var reader = context.Readers.Where(aa => aa.RdrID == _RdrID);
                        if (emp.Count() > 0)
                        {
                            PollData p = new PollData();
                            p.EmpID = emp.FirstOrDefault().EmpID;
                            p.EntDate = entry.EntryDateTime.Date;
                            p.EntTime = entry.EntryDateTime;
                            p.EmpDate = emp.FirstOrDefault().EmpID.ToString() + entry.EntryDateTime.Date.ToString("yyMMdd");
                            p.CardNo = emp.FirstOrDefault().CardNo;
                            p.RdrID = reader.FirstOrDefault().RdrID;
                            p.FpID = entry.ID;
                            p.RdrDuty = reader.FirstOrDefault().RdrDutyCode.RdrDutyID;
                            p.Split = false;
                            p.Process = false;
                            p.AddedDate = DateTime.Today;
                            context.PollDatas.AddObject(p);
                            context.SaveChanges();
                        }
                        else
                        {
                            PollDataError pde = new PollDataError();
                            pde.DeviceRegID = entry.ID;
                            pde.EntryDate = entry.EntryDateTime.Date;
                            pde.EntryTime = entry.EntryDateTime;
                            pde.AddedDate = DateTime.Today;
                            context.PollDataErrors.AddObject(pde);
                            context.SaveChanges();
                        }
                    }
                    catch (Exception ex)
                    {

                    }
                }
            }
        }
        public void CopyingPolls()
        {
            int totalcount        = 0;
            int convertedCount    = 0;
            int notConvertedCount = 0;
            List <OldDatabase.OldModel.PollData> _OldPolls = new List <OldDatabase.OldModel.PollData>();
            DateTime _dt  = new DateTime();
            DateTime _st1 = new DateTime();

            _dt  = GlobalSettings._dateTime;
            _st1 = GlobalSettings._dateTime.AddDays(1);
            oldDB.CommandTimeout = 0;
            //_OldPolls = oldDB.PollDatas.Where(aa => aa.EntryDate >= _dt && aa.EmpNo == "000180" ).ToList();
            /////////Second Time and Ownwards
            _OldPolls = oldDB.PollDatas.Where(p => p.Version == -1 && p.EntryDate >= _dt.Date).ToList();
            /////////First Time
            //_OldPolls = oldDB.PollDatas.Where(aa => aa.EntryDate >= _dt && aa.EntryDate <= _st1).ToList();
            totalcount = _OldPolls.Count;
            MyCustomFunctions _myHelperClass = new MyCustomFunctions();

            foreach (var pollsToBeConverted in _OldPolls)
            {
                try
                {
                    if (pollsToBeConverted.EmpNo != "<ERR>")
                    {
                        TASDownloadService.Model.PollData convertedPolls = new TASDownloadService.Model.PollData();
                        //convertedPolls.PollID = Convert.ToInt64(pollsToBeConverted.TranNo);
                        convertedPolls.CardNo  = pollsToBeConverted.CardNo;
                        convertedPolls.EmpID   = Convert.ToInt16(pollsToBeConverted.EmpNo);
                        convertedPolls.RdrDuty = Convert.ToByte(pollsToBeConverted.DutyCode);
                        convertedPolls.EntDate = pollsToBeConverted.EntryDate.Value;
                        convertedPolls.EntTime = pollsToBeConverted.EntryDate.Value + GlobalSettings.ConvertTime(pollsToBeConverted.EntryTime);
                        convertedPolls.RdrID   = (short)pollsToBeConverted.ReaderID;
                        convertedPolls.EmpDate = Convert.ToInt64(pollsToBeConverted.EmpDate).ToString();
                        convertedPolls.Process = false;
                        newDB.PollDatas.AddObject(convertedPolls);
                        if (newDB.SaveChanges() > 0)
                        {
                            convertedCount++;

                            pollsToBeConverted.Version = 1;
                            oldDB.SaveChanges();
                        }
                    }
                }
                catch (Exception ex)
                {
                    notConvertedCount++;
                    string _error = "";
                    if (ex.InnerException.Message != null)
                    {
                        _error = ex.InnerException.Message;
                    }
                    else
                    {
                        _error = ex.Message;
                    }
                    _myHelperClass.WriteToLogFile("Exception at CopyingPoll Function: Total/Converted " + totalcount.ToString() + "/" + convertedCount.ToString() + _error);
                }
            }
            _myHelperClass.WriteToLogFile("Copying Poll Completed: Total/Converted " + totalcount.ToString() + "/" + convertedCount.ToString());
        }
 /// <summary>
 /// Create a new PollData object.
 /// </summary>
 /// <param name="pollID">Initial value of the PollID property.</param>
 /// <param name="empID">Initial value of the EmpID property.</param>
 /// <param name="empDate">Initial value of the EmpDate property.</param>
 /// <param name="entDate">Initial value of the EntDate property.</param>
 /// <param name="entTime">Initial value of the EntTime property.</param>
 /// <param name="rdrID">Initial value of the RdrID property.</param>
 public static PollData CreatePollData(global::System.Int64 pollID, global::System.Int32 empID, global::System.String empDate, global::System.DateTime entDate, global::System.DateTime entTime, global::System.Int16 rdrID)
 {
     PollData pollData = new PollData();
     pollData.PollID = pollID;
     pollData.EmpID = empID;
     pollData.EmpDate = empDate;
     pollData.EntDate = entDate;
     pollData.EntTime = entTime;
     pollData.RdrID = rdrID;
     return pollData;
 }
 /// <summary>
 /// Deprecated Method for adding a new object to the PollDatas EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToPollDatas(PollData pollData)
 {
     base.AddObject("PollDatas", pollData);
 }