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); }
private bool AddJobCardDataToDatabase(string _empDate, int _empID, DateTime _currentDate, int _userID,JobCardApp jcApp) { bool check = false; try { JobCardEmp _jobCardEmp = new JobCardEmp(); _jobCardEmp.EmpDate = _empDate; _jobCardEmp.EmpID = _empID; _jobCardEmp.Dated = _currentDate; _jobCardEmp.SubmittedFrom = _userID; _jobCardEmp.WrkCardID = jcApp.CardType; _jobCardEmp.DateCreated = DateTime.Now; _jobCardEmp.WorkMin = jcApp.WorkMin; _jobCardEmp.JCAppID = jcApp.JobCardID; _jobCardEmp.OtherValue = jcApp.OtherValue; db.JobCardEmps.Add(_jobCardEmp); if (db.SaveChanges() > 0) { check= true; } } catch (Exception ex) { check = false; } return check; }
private bool AddDoubleDutyAttData(string _empDate, int _empID, DateTime _Date, int _userID, JobCardApp jcApp) { bool check = false; try { //Normal Duty using (var context = new TAS2013Entities()) { AttData _attdata = context.AttDatas.FirstOrDefault(aa => aa.EmpDate == _empDate); JobCard _jcCard = context.JobCards.FirstOrDefault(aa => aa.WorkCardID == jcApp.CardType); if (_attdata != null) { _attdata.DutyCode = "D"; _attdata.StatusAB = false; _attdata.StatusDO = false; _attdata.StatusLeave = false; _attdata.StatusP = true; _attdata.WorkMin = _jcCard.WorkMin; _attdata.Remarks = _attdata.Remarks+"[DD][Manual]"; _attdata.StatusMN = true; _attdata.TimeIn = null; _attdata.TimeOut = null; _attdata.EarlyIn = null; _attdata.EarlyOut = null; _attdata.LateIn = null; _attdata.LateOut = null; _attdata.OTMin = null; _attdata.StatusEI = null; _attdata.StatusEO = null; _attdata.StatusLI = null; _attdata.StatusLO = null; _attdata.StatusP = true; } context.SaveChanges(); if (context.SaveChanges() > 0) check = true; context.Dispose(); } } catch (Exception ex) { } return check; }
public ActionResult EditAttJobCard() { User LoggedInUser = Session["LoggedUser"] as User; try { string _EmpNo = ""; int CompID = Convert.ToInt16(Request.Form["CompanyIDJobCard"].ToString()); List<Emp> _Emp = new List<Emp>(); short _WorkCardID = Convert.ToInt16(Request.Form["JobCardType"].ToString()); //First Save Job Card Application JobCardApp jobCardApp = new JobCardApp(); jobCardApp.CardType = _WorkCardID; jobCardApp.DateCreated = DateTime.Now; jobCardApp.UserID = LoggedInUser.UserID; jobCardApp.DateStarted = Convert.ToDateTime(Request.Form["JobDateFrom"]); jobCardApp.DateEnded = Convert.ToDateTime(Request.Form["JobDateTo"]); // For Double Duty Only if(jobCardApp.CardType==8) jobCardApp.WorkMin = Convert.ToInt16(Request.Form["DDWorkMins"].ToString()); if (jobCardApp.CardType == 9) jobCardApp.OtherValue = Convert.ToInt16(Request.Form["DesignationID"].ToString()); jobCardApp.Status = false; switch (Request.Form["cars"].ToString()) { case "shift": jobCardApp.CriteriaData = Convert.ToInt32(Request.Form["ShiftList"].ToString()); jobCardApp.JobCardCriteria = "S"; db.JobCardApps.Add(jobCardApp); if (db.SaveChanges() > 0) { AddJobCardAppToJobCardData(); } break; case "crew": jobCardApp.CriteriaData = Convert.ToInt32(Request.Form["CrewList"].ToString()); jobCardApp.JobCardCriteria = "C"; db.JobCardApps.Add(jobCardApp); if (db.SaveChanges() > 0) { AddJobCardAppToJobCardData(); } break; case "section": jobCardApp.CriteriaData = Convert.ToInt32(Request.Form["SectionList"].ToString()); jobCardApp.JobCardCriteria = "T"; db.JobCardApps.Add(jobCardApp); if (db.SaveChanges() > 0) { AddJobCardAppToJobCardData(); } break; case "employee": if (Request.Form["cars"].ToString() == "employee") { _EmpNo = Request.Form["JobEmpNo"]; _Emp = db.Emps.Where(aa => aa.EmpNo == _EmpNo && aa.CompanyID == CompID).ToList(); if (_Emp.Count > 0) { jobCardApp.CriteriaData = _Emp.FirstOrDefault().EmpID; jobCardApp.JobCardCriteria = "E"; db.JobCardApps.Add(jobCardApp); if (db.SaveChanges() > 0) { AddJobCardAppToJobCardData(); } } } break; } //Add Job Card to JobCardData and Mark Legends in Attendance Data if attendance Created Session["EditAttendanceDate"] = DateTime.Today.Date.ToString("yyyy-MM-dd"); ViewBag.JobCardType = new SelectList(db.JobCards.OrderBy(s=>s.WorkCardName), "WorkCardID", "WorkCardName"); ViewBag.ShiftList = new SelectList(db.Shifts.OrderBy(s=>s.ShiftName), "ShiftID", "ShiftName"); ViewBag.CrewList = new SelectList(db.Crews.OrderBy(s=>s.CrewName), "CrewID", "CrewName"); ViewBag.SectionList = new SelectList(db.Sections.OrderBy(s=>s.SectionName), "SectionID", "SectionName"); ViewBag.CMessage = "Job Card Created sucessfully"; ViewData["datef"] = Session["EditAttendanceDate"].ToString(); ViewData["JobDateFrom"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewData["JobDateTo"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewBag.CompanyID = new SelectList(db.Companies, "CompID", "CompName", LoggedInUser.CompanyID); ViewBag.CompanyIDJobCard = new SelectList(db.Companies, "CompID", "CompName", LoggedInUser.CompanyID); ViewBag.DesignationID = new SelectList(db.Designations.Where(aa => aa.CompanyID == LoggedInUser.CompanyID), "DesignationID", "DesignationName"); return View("Index"); } catch (Exception) { //ViewData["datef"] = HttpContext.Session["EditAttendanceDate"].ToString(); ViewData["JobDateFrom"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewData["JobDateTo"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewBag.JobCardType = new SelectList(db.JobCards.OrderBy(s=>s.WorkCardName), "WorkCardID", "WorkCardName"); ViewBag.ShiftList = new SelectList(db.Shifts.OrderBy(s=>s.ShiftName), "ShiftID", "ShiftName"); ViewBag.CrewList = new SelectList(db.Crews.OrderBy(s=>s.CrewName), "CrewID", "CrewName"); ViewBag.SectionList = new SelectList(db.Sections.OrderBy(s=>s.SectionName), "SectionID", "SectionName"); ViewBag.CMessage = "An Error occured while creating Job Card of" + Request.Form["JobCardType"].ToString(); ViewBag.CompanyIDJobCard = new SelectList(db.Companies, "CompID", "CompName", LoggedInUser.CompanyID); ViewBag.DesignationID = new SelectList(db.Designations.Where(aa => aa.CompanyID == LoggedInUser.CompanyID), "DesignationID", "DesignationName"); return View("Index"); } }
private bool ValidateJobCard(JobCardApp jobCardApp) { List<JobCardApp> _Lc = new List<JobCardApp>(); DateTime _DTime = new DateTime(); DateTime _DTimeLV = new DateTime(); _Lc = db.JobCardApps.Where(aa => aa.CriteriaData == jobCardApp.CriteriaData).ToList(); foreach (var item in _Lc) { _DTime = (DateTime)item.DateStarted; _DTimeLV = (DateTime)jobCardApp.DateStarted; while (_DTime <= item.DateEnded) { while (_DTimeLV <= jobCardApp.DateEnded) { if (_DTime == _DTimeLV) return false; _DTimeLV = _DTimeLV.AddDays(1); } _DTime = _DTime.AddDays(1); } } return true; }
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); } }
public ActionResult EditAttJobCard() { User LoggedInUser = Session["LoggedUser"] as User; string Message = ""; QueryBuilder qb = new QueryBuilder(); string query = qb.MakeCustomizeQuery(LoggedInUser); DataTable dt = qb.GetValuesfromDB("select * from EmpView " + query); List<EmpView> emps = dt.ToList<EmpView>(); try { string _EmpNo = ""; // int CompID = Convert.ToInt16(Request.Form["CompanyID"].ToString()); List<EmpView> _Emp = new List<EmpView>(); short _WorkCardID = Convert.ToInt16(Request.Form["JobCardType"].ToString()); //First Save Job Card Application JobCardApp jobCardApp = new JobCardApp(); jobCardApp.CardType = _WorkCardID; jobCardApp.DateCreated = DateTime.Now; jobCardApp.DateStarted = Convert.ToDateTime(Request.Form["JobDateFrom"]); jobCardApp.DateEnded = Convert.ToDateTime(Request.Form["JobDateTo"]); jobCardApp.Status = false; jobCardApp.UserID = LoggedInUser.UserID; _EmpNo = Request.Form["JobEmpNo"]; _Emp = emps.Where(aa => aa.EmpNo == _EmpNo).ToList(); if (_Emp.Count > 0) { jobCardApp.CriteriaData = _Emp.FirstOrDefault().EmpID; jobCardApp.JobCardCriteria = "E"; if (ValidateJobCard(jobCardApp)) { db.JobCardApps.Add(jobCardApp); if (db.SaveChanges() > 0) { AddJobCardAppToJobCardData(); Message = "Job Card Created Sucessfully."; } } else Message = "Job Card already created for FPID: " + _EmpNo; } else Message = "No Employee found, Please enter a valid FPID"; //Add Job Card to JobCardData and Mark Legends in Attendance Data if attendance Created Session["EditAttendanceDate"] = DateTime.Today.Date.ToString("yyyy-MM-dd"); ViewData["datef"] = Session["EditAttendanceDate"].ToString(); ViewData["JobDateFrom"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewData["JobDateTo"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewBag.JobCardType = new SelectList(db.JobCards, "WorkCardID", "WorkCardName"); } catch (Exception ex) { Message = "An Error occured while creating Job Card of " + Request.Form["JobCardType"].ToString(); } //List<EmpView> emps = new List<EmpView>(); ViewData["JobDateFrom"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewData["JobDateTo"] = DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd"); ViewBag.JobCardType = new SelectList(db.JobCards, "WorkCardID", "WorkCardName"); ViewBag.CMessage = Message; ViewBag.CurrentFilter = ""; int pageSize = 10; int? page = 1; int pageNumber = (page ?? 1); return View("Index",emps.ToPagedList(pageNumber, pageSize)); }