public ActionResult HoursPerWorkAssignmentAsExcel2() { StringBuilder csv = new StringBuilder(); // luodaan CSV-muotoinen tiedosto TimesheetEntities entities = new TimesheetEntities(); try { DateTime today = DateTime.Today; DateTime tomorrow = today.AddDays(1); // haetaan kaikki kuluvan päivän tuntikirjaukset List <Timesheets> allTimesheetsToday = (from ts in entities.Timesheets where (ts.StartTime > today) && (ts.StartTime < tomorrow) && (ts.WorkComplete == true) select ts).ToList(); foreach (Timesheets timesheet in allTimesheetsToday) { csv.AppendLine(timesheet.Id_Employee + ";" + timesheet.StartTime + ";" + timesheet.StopTime + ";"); } } finally { entities.Dispose(); } // palautetaan CSV-tiedot selaimelle byte[] buffer = Encoding.UTF8.GetBytes(csv.ToString()); return(File(buffer, "text/csv", "Työtunnit.csv")); }
public ActionResult GetTimesheetCounts(string onlyComplete) { ReportChartDataViewModel model = new ViewModels.ReportChartDataViewModel(); TimesheetEntities entities = new TimesheetEntities(); try { model.Labels = (from wa in entities.WorkAssignments orderby wa.Id_WorkAssignment select wa.Title).ToArray(); if (onlyComplete == "1") { model.Counts = (from ts in entities.Timesheets where (ts.WorkComplete == true) orderby ts.Id_WorkAssignment group ts by ts.Id_WorkAssignment into grp select grp.Count()).ToArray(); } else { model.Counts = (from ts in entities.Timesheets orderby ts.Id_WorkAssignment group ts by ts.Id_WorkAssignment into grp select grp.Count()).ToArray(); } } finally { entities.Dispose(); } return(Json(model, JsonRequestBehavior.AllowGet)); }
protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); }
// GET: Reports public ActionResult HoursPerWorkAssignment() { //tähän luotu luokka TimesheetEntities entities = new TimesheetEntities(); try { DateTime today = DateTime.Today; DateTime tomorrow = today.AddDays(1); // haetaan kaikki kuluvan päivän tuntikirjaukset List <Timesheet> allTimesheetsToday = (from sh in entities.Timesheets where (sh.StartTime > today) && (sh.StartTime < tomorrow) && (sh.WorkCompleted == true) select sh).ToList(); // ryhmitellään kirjaukset tehtävittäin ja lasketaan kestot List <HoursPerWorkAssignmentsModel> model = new List <HoursPerWorkAssignmentsModel>(); foreach (Timesheet timesheet in allTimesheetsToday) { int assignmentId = timesheet.id_WorkAssignment.Value; HoursPerWorkAssignmentsModel existing = model.Where( m => m.WorkAssignmentId == assignmentId).FirstOrDefault(); if (existing != null) { existing.TotalHours += (timesheet.StopTime.Value - timesheet.StartTime.Value).TotalHours; } else { existing = new HoursPerWorkAssignmentsModel() { WorkAssignmentId = assignmentId, WorkAssigmentName = timesheet.WorkAssignment.Title, TotalHours = (timesheet.StopTime.Value - timesheet.StartTime.Value).TotalHours }; model.Add(existing); } } return(View(model)); } finally { entities.Dispose(); } }
public string[] GetAll() { string[] assignmentNames = null; TimesheetEntities entities = new TimesheetEntities(); try { assignmentNames = (from wa in entities.WorkAssignments where (wa.Active == true) select wa.Title).ToArray(); } finally { entities.Dispose(); } return(assignmentNames); }
public string[] GetAll() { string[] employeeNames = null; TimesheetEntities entities = new TimesheetEntities(); try { //Jos olisi lista List<string> alkuun ja ToArrayn tilaalle ToLista(); employeeNames = (from e in entities.Employees where (e.Active == true) select e.FirstName + " " + e.LastName).ToArray(); } finally { entities.Dispose(); } return(employeeNames); }
public string[] GetAll() { string[] assingnmentNames = null; TimesheetEntities entities = new TimesheetEntities(); try { //Jos olisi lista List<string> alkuun ja ToArrayn tilaalle ToList(); assingnmentNames = (from wa in entities.WorkAssignments where (wa.Active == true) select wa.Title).ToArray(); } finally { entities.Dispose(); } return(assingnmentNames); }
public string[] GetAll() { string[] employeeNames = null; TimesheetEntities entities = new TimesheetEntities(); try { employeeNames = (from e in entities.Employees where (e.Active == true) select e.FirstName + " " + e.LastName).ToArray(); } finally { entities.Dispose(); } return(employeeNames); }
public bool PostStatus(FotoModel input)//, string Name, byte[]FotoData) { TimesheetEntities entities = new TimesheetEntities(); try { string[] nameParts = input.Name.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); string first = nameParts[0]; string last = nameParts[1]; Employee existing = (from ts in entities.Employees where (ts.FirstName == first) && (ts.LastName == last) select ts).FirstOrDefault(); if (existing != null) { existing.EmployeePicture = input.Fotodata; } else { return(false); } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public byte[] GetEmployeeImage(string employeeName) { TimesheetEntities entities = new TimesheetEntities(); try { string[] nameParts = employeeName.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries); string first = nameParts[0]; string last = nameParts[1]; byte[] bytes = (from e in entities.Employees where (e.Active == true) && (e.FirstName == first) && (e.LastName == last) select e.EmployeePicture).FirstOrDefault(); return(bytes); } finally { entities.Dispose(); } }
public string PutEmployeeImage() { TimesheetEntities entities = new TimesheetEntities(); try { Employee newEmployee = new Employee() { FirstName = "Heebo", LastName = "X", EmployeePicture = File.ReadAllBytes(@"C:\Users\maria\Koodit\Heebo.png") }; entities.Employees.Add(newEmployee); entities.SaveChanges(); return("OK!"); } finally { entities.Dispose(); } }
public ActionResult HoursPerWorkAssignmentAsExcel2() { StringBuilder csv = new StringBuilder(); TimesheetEntities entities = new TimesheetEntities(); try { DateTime today = DateTime.Today; DateTime tomorrow = today.AddDays(1); // haetaan kaikki kuluvan päivän tuntikirjaukset List <Timesheet> allTimesheetsToday = (from sh in entities.Timesheets where (sh.StartTime > today) && (sh.StartTime < tomorrow) && (sh.WorkCompleted == true) select sh).ToList(); // ryhmitellään kirjaukset tehtävittäin ja lasketaan kestot List <HoursPerWorkAssignmentsModel> model = new List <HoursPerWorkAssignmentsModel>(); foreach (Timesheet timesheet in allTimesheetsToday) { csv.AppendLine(timesheet.Id_Employee + "," + timesheet.StartTime + "," + timesheet.StopTime + ","); } } finally { entities.Dispose(); } //palautetaan CSV-tiedot selaimelle byte[] buffer = Encoding.UTF8.GetBytes(csv.ToString()); return(File(buffer, "Text/csv", "Työtunnit.csv")); }
public string PutEmployeeImage() { TimesheetEntities entities = new TimesheetEntities(); try { Employee newEmployee = new Employee() { FirstName = "Aaro", LastName = "aalto", EmployeePicture = System.IO.File.ReadAllBytes(@"C:\Temp\Heebo.png") }; entities.Employees.Add(newEmployee); entities.SaveChanges(); return("OK!"); } finally { entities.Dispose(); } //return "Error"; }
public bool PostStatus(WorkAssignmentOperationModel input) { TimesheetEntities entities = new TimesheetEntities(); try { WorkAssignments assignment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } if (input.Operation == "Start") { int assignmentId = assignment.Id_WorkAssignment; Timesheets newEntry = new Timesheets() { Id_WorkAssignment = assignmentId, StartTime = DateTime.Now, WorkComplete = false, Active = true, CreatedAt = DateTime.Now }; entities.Timesheets.Add(newEntry); //Päivitetään samalla work-assignmentin tilatietoja assignment.InProgress = true; assignment.InProgressAt = DateTime.Now; assignment.LastModifiedAt = DateTime.Now; } else if (input.Operation == "Stop") { int assignmentId = assignment.Id_WorkAssignment; Timesheets existing = (from ts in entities.Timesheets where (ts.Id_WorkAssignment == assignmentId) && (ts.Active == true) && (ts.WorkComplete == false) orderby ts.StartTime descending select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; //Päivitetään samalla work-assignmentin tilatietoja assignment.InProgress = false; assignment.Completed = true; assignment.CompletedAt = DateTime.Now; assignment.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public bool PostStatus(WorkAssigmentOperationModel input) { TimesheetEntities entities = new TimesheetEntities(); try { //Jos olisi lista List<string> alkuun ja ToArrayn tilaalle ToLista(); WorkAssignment assingnment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assingnment == null) { return(false); } if (input.Operation == "Start") { int assignmentid = assingnment.Id_WorkAssignment; Timesheet newEntry = new Timesheet() { id_WorkAssignment = assignmentid, StartTime = DateTime.Now, WorkCompleted = false, Active = true, CreatedAt = DateTime.Now }; entities.Timesheets.Add(newEntry); } else if (input.Operation == "Stop") { int assignmentid = assingnment.Id_WorkAssignment; Timesheet existing = (from ts in entities.Timesheets where (ts.id_WorkAssignment == assignmentid) && (ts.Active == true) && (ts.WorkCompleted == false) orderby ts.StartTime descending select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkCompleted = true; existing.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }
public void CommitAndDispose() { db.SaveChanges(); db.Dispose(); }
public bool PostStatus(WorkAssignmentOperationModel input) { TimesheetEntities entities = new TimesheetEntities(); try { WorkAssignment assignment = (from wa in entities.WorkAssignments where (wa.Active == true) && (wa.Title == input.AssignmentTitle) select wa).FirstOrDefault(); if (assignment == null) { return(false); } //string value; //decimal number; NumberStyles style; CultureInfo provider; provider = new CultureInfo("fi-FI"); string valueString = input.Latitude.ToString("R", CultureInfo.InvariantCulture); style = NumberStyles.AllowDecimalPoint; if (input.Operation == "Start") { int assignmentId = assignment.id_WorkAssignment; Timesheet newEntry = new Timesheet() { id_WorkAssignment = assignmentId, StartTime = DateTime.Now, WorkComplete = false, Active = true, CreatedAt = DateTime.Now, Latitude = Convert.ToDecimal(input.Latitude), Longitude = Convert.ToDecimal(input.Longitude) }; entities.Timesheets.Add(newEntry); } else if (input.Operation == "Stop") { int assignmentId = assignment.id_WorkAssignment; Timesheet existing = (from ts in entities.Timesheets where (ts.id_WorkAssignment == assignmentId) && (ts.Active == true) && (ts.WorkComplete == false) orderby ts.StartTime descending select ts).FirstOrDefault(); if (existing != null) { existing.StopTime = DateTime.Now; existing.WorkComplete = true; existing.LastModifiedAt = DateTime.Now; } else { return(false); } } entities.SaveChanges(); } catch { return(false); } finally { entities.Dispose(); } return(true); }