Exemplo n.º 1
0
 public int UploadImageInDataBase(HttpPostedFileBase file, string _empNo)
 {
     using (var context = new TAS2013Entities())
     {
         List<EmpPhoto> _empPhotoList = new List<EmpPhoto>();
         EmpPhoto _EmpPhoto = new EmpPhoto();
         Emp _Emp = new Emp();
         int empPhotoID = 0;
         _Emp = context.Emps.First(aa => aa.EmpNo == _empNo);
         _empPhotoList = context.EmpPhotoes.Where(aa => aa.EmpID == _Emp.EmpID).ToList();
         _EmpPhoto.EmpPic = ConvertToBytes(file);
         if (_empPhotoList.Count > 0)
         {
             //Update Existing Image
             _EmpPhoto.EmpID = _empPhotoList.FirstOrDefault().EmpID;
             _EmpPhoto.PhotoID = _empPhotoList.FirstOrDefault().PhotoID;
         }
         else
         {
             //Add New Image
             _EmpPhoto.EmpID = _Emp.EmpID;
             context.EmpPhotoes.Add(_EmpPhoto);
         }
         try
         {
             empPhotoID = _EmpPhoto.PhotoID;
             context.SaveChanges();
             return empPhotoID;
         }
         catch (Exception ex)
         {
             return empPhotoID;
         }
     }
 }
Exemplo n.º 2
0
        public int UploadImageInDataBase(HttpPostedFileBase file, Emp _Emp)
        {
            using (var context = new TAS2013Entities())
            {
                List<EmpPhoto> _empPhotoList = new List<EmpPhoto>();
                EmpPhoto _EmpPhoto = new EmpPhoto();
                int empPhotoID = 0;

                _empPhotoList = context.EmpPhotoes.Where(aa => aa.EmpID == _Emp.EmpID).ToList();
                _EmpPhoto.EmpPic = ConvertToBytes(file);
                if (_empPhotoList.Count > 0)
                {
                    _EmpPhoto.PhotoID = _empPhotoList.FirstOrDefault().PhotoID;
                    _empPhotoList.FirstOrDefault().EmpPic = _EmpPhoto.EmpPic;
                    context.EmpPhotoes.Attach(_empPhotoList.FirstOrDefault());
                    context.Entry(_empPhotoList.FirstOrDefault()).State = EntityState.Modified;
                    context.SaveChanges();

                }
                else
                {
                    //Add New Image
                    _EmpPhoto.EmpID = _Emp.EmpID;
                    context.EmpPhotoes.Add(_EmpPhoto);
                }
                try
                {

                    empPhotoID = _EmpPhoto.PhotoID;
                    context.SaveChanges();
                    return empPhotoID;
                }
                catch (Exception ex)
                {
                    return empPhotoID;
                }
            }
        }
Exemplo n.º 3
0
 private void AddJobCardData(Emp _selEmp, JobCardApp jcApp)
 {
     int _empID = _selEmp.EmpID;
     string _empDate = "";
     int _userID = (int)jcApp.UserID;
     DateTime _Date = (DateTime)jcApp.DateStarted;
     while (_Date <= jcApp.DateEnded)
     {
         _empDate = _selEmp.EmpID + _Date.ToString("yyMMdd");
         AddJobCardDataToDatabase(_empDate, _empID, _Date, _userID,jcApp);
         if (db.AttProcesses.Where(aa => aa.ProcessDate == _Date).Count()>0)
         {
             switch (jcApp.CardType)
             {
                 case 1://Day Off
                     AddJCDayOffToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                     break;
                 case 2://GZ Holiday
                     AddJCGZDayToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                     break;
                 case 3://Absent
                     AddJCAbsentToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                     break;
                 case 4://official Duty
                     AddJCODDayToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                     break;
                 case 8:// Double Duty
                     AddDoubleDutyAttData(_empDate, _empID, _Date, _userID, jcApp);
                     break;
                 case 9:// Badli Duty
                     AddBadliTableData(_empID,_empDate,_Date,(short)jcApp.OtherValue,jcApp.Remarks);
                     AddBadliAttData(_empDate, _empID, _Date, _userID, jcApp);
                     break;
                 //case 10:// Late In Margin
                 //    AddLateInMarginAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                 //    break;
             }
         }
         _Date = _Date.AddDays(1);
     }
     HelperClass.MyHelper.SaveAuditLog(_userID, (byte)MyEnums.FormName.EditAttendance, (byte)MyEnums.Operation.Edit, DateTime.Now);
 }
Exemplo n.º 4
0
        public void ManualProcessAttendance(DateTime date, List<Emp> emps)
        {
            BootstrapAttendance(date, emps);
            DateTime dateEnd = date.AddDays(1);
            List<AttData> attData = context.AttDatas.Where(aa => aa.AttDate >= date && aa.AttDate <= dateEnd).ToList();
            List<PollData> unprocessedPolls = context.PollDatas.Where(p => (p.EntDate >= date && p.EntDate <= dateEnd)).OrderBy(e => e.EntTime).ToList();
            foreach (var emp in emps)
            {
                List<PollData> polls = new List<PollData>();
                polls = unprocessedPolls.Where(p => p.EmpID == emp.EmpID).OrderBy(e => e.EntTime).ToList();
                foreach (PollData up in polls)
                {
                    try
                    {
                        //Check AttData with EmpDate
                        if (attData.Where(attd => attd.EmpDate == up.EmpDate).Count() > 0)
                        {
                            AttData attendanceRecord = attData.First(attd => attd.EmpDate == up.EmpDate);
                            employee = attendanceRecord.Emp;
                            Shift shift = employee.Shift;
                            //Set Time In and Time Out in AttData
                            if (attendanceRecord.Emp.Shift.OpenShift == true)
                            {
                                //Set Time In and Time Out for open shift
                                PlaceTimeInOuts.CalculateTimeINOUTOpenShift(attendanceRecord, up);
                                context.SaveChanges();
                            }
                            else
                            {
                                TimeSpan checkTimeEnd = new TimeSpan();
                                DateTime TimeInCheck = new DateTime();
                                if (attendanceRecord.TimeIn == null)
                                {
                                    TimeInCheck = attendanceRecord.AttDate.Value.Add(attendanceRecord.DutyTime.Value);
                                }
                                else
                                    TimeInCheck = attendanceRecord.TimeIn.Value;
                                if (attendanceRecord.ShifMin == 0)
                                    checkTimeEnd = TimeInCheck.TimeOfDay.Add(new TimeSpan(0, 480, 0));
                                else
                                    checkTimeEnd = TimeInCheck.TimeOfDay.Add(new TimeSpan(0, (int)attendanceRecord.ShifMin, 0));
                                if (checkTimeEnd.Days > 0)
                                {
                                    //if Time out occur at next day
                                    if (up.RdrDuty == 5)
                                    {
                                        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)
                                            {
                                                TimeSpan t1 = new TimeSpan(11, 00, 00);
                                                if (up.EntTime.TimeOfDay < t1)
                                                {
                                                    if ((up.EntTime - _attData.TimeIn.Value).Hours < 18)
                                                    {
                                                        attendanceRecord = _attData;
                                                        up.EmpDate = up.EmpID.ToString() + dt.Date.ToString("yyMMdd");
                                                    }
                                                }
                                            }
                                            else
                                            {
                                                attendanceRecord = _attData;
                                                up.EmpDate = up.EmpID.ToString() + dt.Date.ToString("yyMMdd");
                                            }

                                        }
                                    }
                                }
                                //Set Time In and Time Out
                                //Set Time In and Time Out
                                if (up.RdrDuty == 5)
                                {
                                    if (attendanceRecord.TimeIn != null)
                                    {
                                        TimeSpan dt = (TimeSpan)(up.EntTime.TimeOfDay - attendanceRecord.TimeIn.Value.TimeOfDay);
                                        if (dt.Minutes < 0)
                                        {
                                            DateTime dt1 = new DateTime();
                                            dt1 = up.EntDate.Date.AddDays(-1);
                                            var _attData = context.AttDatas.FirstOrDefault(aa => aa.AttDate == dt1 && aa.EmpID == up.EmpID);
                                            attendanceRecord = _attData;
                                            up.EmpDate = up.EmpID.ToString() + dt1.Date.ToString("yyMMdd");
                                            PlaceTimeInOuts.CalculateTimeINOUT(attendanceRecord, up);
                                        }
                                        else
                                            PlaceTimeInOuts.CalculateTimeINOUT(attendanceRecord, up);
                                    }
                                    else
                                        PlaceTimeInOuts.CalculateTimeINOUT(attendanceRecord, up);
                                }
                                else
                                    PlaceTimeInOuts.CalculateTimeINOUT(attendanceRecord, up);
                            }
                            if (employee.Shift.OpenShift == true)
                            {
                                if (up.EntTime.TimeOfDay < PlaceTimeInOuts.OpenShiftThresholdEnd)
                                {
                                    DateTime dt = up.EntDate.Date.AddDays(-1);
                                    using (var ctxx = new TAS2013Entities())
                                    {
                                        CalculateWorkMins.CalculateOpenShiftTimes(ctxx.AttDatas.FirstOrDefault(aa => aa.AttDate == dt && aa.EmpID == up.EmpID), shift);
                                        ctxx.SaveChanges();
                                        ctxx.Dispose();
                                    }
                                }
                            }
                            //If TimeIn and TimeOut are not null, then calculate other Atributes
                            if (attendanceRecord.TimeIn != null && attendanceRecord.TimeOut != null)
                            {
                                if (context.Rosters.Where(r => r.EmpDate == up.EmpDate).Count() > 0)
                                {
                                    CalculateWorkMins.CalculateRosterTimes(attendanceRecord, context.Rosters.FirstOrDefault(r => r.EmpDate == up.EmpDate), shift);
                                    context.SaveChanges();
                                }
                                else
                                {
                                    if (shift.OpenShift == true)
                                    {
                                        if (up.EntTime.TimeOfDay < PlaceTimeInOuts.OpenShiftThresholdEnd)
                                        {
                                            DateTime dt = up.EntDate.Date.AddDays(-1);
                                            using (var ctx2 = new TAS2013Entities())
                                            {
                                                CalculateWorkMins.CalculateOpenShiftTimes(ctx2.AttDatas.FirstOrDefault(aa => aa.AttDate == dt && aa.EmpID == up.EmpID), shift);
                                                ctx2.SaveChanges();
                                                ctx2.Dispose();
                                            }
                                            CalculateWorkMins.CalculateOpenShiftTimes(attendanceRecord, shift);
                                            context.SaveChanges();
                                        }
                                        else
                                        {
                                            //Calculate open shifft time of the same date
                                            CalculateWorkMins.CalculateOpenShiftTimes(attendanceRecord, shift);
                                            context.SaveChanges();
                                        }
                                    }
                                    else
                                    {
                                        CalculateWorkMins.CalculateShiftTimes(attendanceRecord, shift);
                                        context.SaveChanges();
                                    }
                                }
                            }
                            up.Process = true;
                        }
                    }
                    catch (Exception ex)
                    {
                        string _error = "";
                        if (ex.InnerException.Message != null)
                            _error = ex.InnerException.Message;
                        else
                            _error = ex.Message;
                    }
                    context.SaveChanges();
                }
            }
            context.Dispose();
        }
Exemplo n.º 5
0
        private void AddJobCardData(Emp _selEmp, JobCardApp jcApp)
        {
            int _empID = _selEmp.EmpID;
            string _empDate = "";
            int _userID = (int)jcApp.UserID;
            DateTime _Date = (DateTime)jcApp.DateStarted;
            while (_Date <= jcApp.DateEnded)
            {
                _empDate = _selEmp.EmpID + _Date.ToString("yyMMdd");
                AddJobCardDataToDatabase(_empDate, _empID, _Date, _userID, jcApp);
                if (db.AttProcesses.Where(aa => aa.ProcessDate == _Date).Count() > 0)
                {
                    switch (jcApp.CardType)
                    {

                        case 8:// Training
                            AddJCTrainingToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                            break;
                        case 9:// Tour
                            AddJCTourToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                            break;
                        case 10:// Visit
                            AddJCVisitToAttData(_empDate, _empID, _Date, _userID, (short)jcApp.CardType);
                            break;
                    }
                }
                _Date = _Date.AddDays(1);
            }
        }
Exemplo n.º 6
0
 private void CalculateWorkCardAttendance(Emp _selEmp,short _WorkCardID, DateTime _dateStart, DateTime _dateEnd)
 {
     int _empID = _selEmp.EmpID;
     string _empDate = "";
     int _userID = Convert.ToInt32(Session["LogedUserID"].ToString());
     short _CompID = Convert.ToInt16(Session["UserCompany"].ToString());
     DateTime _Date = _dateStart;
     while (_Date <= _dateEnd)
     {
         _empDate = _selEmp.EmpID + _Date.ToString("yyMMdd");
         switch (_WorkCardID)
         {
             case 1:
                 AddJobCardToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, DateTime.Now);
                 break;
             case 2:
                 AddJobCardToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, DateTime.Now);
                 break;
             case 3:
                 AddJobCardToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, DateTime.Now);
                 break;
             case 4:
                 AddJobCardToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, DateTime.Now);
                 break;
             case 5:
                 AddJobCardToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, DateTime.Now);
                 break;
         }
         _Date = _Date.AddDays(1);
     }
     HelperClass.MyHelper.SaveAuditLog(_userID, (byte)MyEnums.FormName.EditAttendance, (byte)MyEnums.Operation.Edit, DateTime.Now);
 }
Exemplo n.º 7
0
 private void AddJobCardData(Emp _selEmp, short _WorkCardID, DateTime _dateStart, DateTime _dateEnd)
 {
     int _empID = _selEmp.EmpID;
     string _empDate = "";
     int _userID = Convert.ToInt32(Session["LogedUserID"].ToString());
     short _CompID = Convert.ToInt16(Session["UserCompany"].ToString());
     DateTime _CreatedDate = DateTime.Now;
     DateTime _Date = _dateStart;
     while (_Date <= _dateEnd)
     {
         _empDate = _selEmp.EmpID + _Date.ToString("yyMMdd");
         AddJobCardDataToDatabase(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID, _CreatedDate);
         if (db.AttProcesses.Where(aa => aa.ProcessDate == _Date).Count()>0)
         {
             switch (_WorkCardID)
             {
                 case 1://Day Off
                     AddJCDayOffToAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 2://GZ Holiday
                     AddJCGZDayToAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 3://Absent
                     AddJCAbsentToAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 4://official Duty
                     AddJCODDayToAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 5://Normal Day 565
                     AddJCNorrmalDayAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 6://Normal Day 540
                     AddJCNorrmalDayAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 7://Normal Day 480
                     AddJCNorrmalDayAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
                 case 8://Late In Margin
                     AddLateInMarginAttData(_empDate, _empID, _Date, _userID, _WorkCardID, _CompID);
                     break;
             }
         }
         _Date = _Date.AddDays(1);
     }
     HelperClass.MyHelper.SaveAuditLog(_userID, (byte)MyEnums.FormName.EditAttendance, (byte)MyEnums.Operation.Edit, DateTime.Now);
 }