public static DtoTimeSheet DtoTimeSheet(TimeSheetView ts, bool isEmpty = false) { var timeSheet = new DtoTimeSheet { IdTimeSheet = ts.id, DateBegin = ts.DateBeginPeriod, DateEnd = ts.DateEndPeriod, DateComposition = ts.DateComposition, Department = DtoDepartment(ts.Dep.Department), ApproveStep = ts.ApproveStep, IsFake = ts.IsFake, EmployeesCount = ts.EmployeeCount }; if (isEmpty) { return(timeSheet); } var rec = ts.TimeSheetRecord.ToArray(); var employees = rec.DistinctBy(d => d.idFactStaffHistory); timeSheet.Employees = employees.Select(s => DtoTimeSheetEmployee(s.FactStaffHistory, rec.Where(w => w.idFactStaffHistory == s.idFactStaffHistory))).ToArray(); return(timeSheet); }
// GET: TimeSheets/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var timeSheet = db.TimeSheets.Find(id); if (timeSheet == null) { return(HttpNotFound()); } var timeSheetFile = timeSheet.File; var tempFileName = Path.GetTempFileName(); using (var stream = new FileStream(tempFileName, FileMode.Create)) { stream.Write(timeSheetFile, 0, timeSheetFile.Length); } var numberOfDays = 0; var text = new List <Dictionary <Employee, List <JobStatus> > >(); using (var sr = new StreamReader(tempFileName, Encoding.GetEncoding(1251))) { var line = sr.ReadLine(); while ((line = sr.ReadLine()) != null) { numberOfDays = line.Split(';').Length - 1; var strEmployeeId = line.Substring(0, line.IndexOf(';')); var employeeId = int.Parse(strEmployeeId); var employee = db.Employees.First(x => x.Id == employeeId); line = line.Replace(string.Join(string.Empty, strEmployeeId, ";"), string.Empty); var listJobStatus = new List <JobStatus>(); foreach (var jobStatus in line.Split(';')) { Enum.TryParse(jobStatus, out JobStatus jS); listJobStatus.Add(jS); } var dictionary = new Dictionary <Employee, List <JobStatus> > { { employee, new List <JobStatus>(listJobStatus) } }; text.Add(new Dictionary <Employee, List <JobStatus> >(dictionary)); listJobStatus.Clear(); dictionary.Clear(); } } ViewBag.JobStatus = Enum.GetValues(typeof(JobStatus)).Cast <JobStatus>(); var timeSheetView = new TimeSheetView(timeSheet, text, numberOfDays); return(View(timeSheetView)); }
private void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (CheckOpenSimulation()) { return; } //Limpando a view atual UserControl usc = null; GridMain.Children.Clear(); //Verificando qual tela será carregada switch (((ListViewItem)((ListView)sender).SelectedItem).Name) { case "Main": usc = new HomeView(); GridMain.Children.Add(usc); break; case "EDPSimulation": usc = new SimulationEDP(); GridMain.Children.Add(usc); break; case "CostFormation": usc = new HomeView(); GridMain.Children.Add(usc); CostFormationView window = new CostFormationView(); window.ShowDialog(); window.Activate(); break; case "TimeSheet": if (Menu.usermanager == null) { MessageBox.Show("Usuário não existe na base de dados atual!", "Aviso", MessageBoxButton.OK, MessageBoxImage.Warning); return; } usc = new TimeSheetView(); GridMain.Children.Add(usc); break; case "Settings": usc = new SettingsView(); GridMain.Children.Add(usc); break; default: break; } }
public TimeSheetManager(int idDepartment, DateTime dateBeginPeriod, DateTime dateEndPeriod, int idApprover, bool isFake = false) { SetDataContext(); _timeSheet = new TimeSheetView { idDepartment = idDepartment, idCreater = idApprover, DateBeginPeriod = dateBeginPeriod, DateEndPeriod = dateEndPeriod, DateComposition = DateTime.Now, ApproveStep = 0, IsFake = isFake, id = -1 }; }
public static DtoTimeSheet DtoTimeSheet(TimeSheetView ts) { var timeSheet = new DtoTimeSheet { IdTimeSheet = ts.id, DateBegin = ts.DateBeginPeriod, DateEnd = ts.DateEndPeriod, DateComposition = ts.DateComposition, Department = DtoDepartment(ts.Dep.Department), IsFake = ts.IsFake, EmployeesCount = ts.EmployeeCount, ApproveStep = ts.ApproveStep }; return(timeSheet); }
public ActionResult TimesheetAuthorized(int ResourcesID) { if (TempData["TimeSerachBO"] != null || Request.IsAjaxRequest()) { TimeSheetView timeSheetView1 = new TimeSheetView(); TimeSearchBO TsearchBO = TempData["TimeSerachBO"] as TimeSearchBO; timeSheetView1.timeSheetBBO = timeSheetBL.GetfilterTimeSheet(TsearchBO).Where(x => x.ResourcesID == ResourcesID).SingleOrDefault(); timeSheetView1.timeSheetBBO.MonthID = TsearchBO.MonthID; timeSheetView1.timeSheetBBO.Year = TsearchBO.Year; return(Json(new { success = true, partialview = RenderViewToString("_TimeSheetAuthorized", timeSheetView1.timeSheetBBO), message = "" })); } return(RedirectToAction("TimeSheet")); }
public ActionResult SearchTimeSheet(TimeSearchBO TsearchBO, string ButtonType) { TimeSheetView timeSheetView1 = new TimeSheetView(); timeSheetView1.TsearchBBO = TsearchBO; timeSheetView1.timeSheetView = timeSheetBL.GetfilterTimeSheet(TsearchBO); TempData["TimeSerachBO"] = TsearchBO; if (ButtonType == "Search") { return(PartialView("_TimeSheetView", timeSheetView1.timeSheetView)); } else { viewBagList(); timeSheetView1.graphID = 123; return(PartialView("_GraphView", timeSheetView1.timeSheetView)); } }
public ActionResult TimeSheet(TimeSheetView timeSheetView) { // = new TimeSheetView(); TempData["TimeSerachBO"] = timeSheetView.TsearchBBO; if (TempData["TimeSerachBO"] != null) { timeSheetView.TsearchBBO = TempData["TimeSerachBO"] as TimeSearchBO; } else { timeSheetView.TsearchBBO = new TimeSearchBO(); timeSheetView.TsearchBBO.MonthID = DateTime.Now.Month; timeSheetView.TsearchBBO.Year = DateTime.Now.Year.ToString(); } viewBagList(); TimeSheetBO timeSheetBO = new TimeSheetBO(); var timeSheetList = timeSheetBL.GetfilterTimeSheet(timeSheetView.TsearchBBO); timeSheetView.timeSheetBBO = new TimeSheetBO(); timeSheetView.timeSheetView = timeSheetList; TempData["TimeSerachBO"] = timeSheetView.TsearchBBO; return(View(timeSheetView)); }