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; } } }
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; } } }
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); }
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(); }
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); } }
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); }
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); }