コード例 #1
0
        public ActionResult DayView(ViewModels.Timing.DayViewModel currentDVM)
        {
            int id;
            DateTime date;
            List<ViewModels.Contacts.ContactViewModel> employeeContactList;
            ViewModels.Timing.DayViewModel dayViewVM = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List<ViewModels.Contacts.ContactViewModel>();

            if (RouteData.Values["Id"] != null)
            {
                id = int.Parse((string)RouteData.Values["Id"]);
            }
            else if (currentDVM.Employee != null && currentDVM.Employee.Id.HasValue)
            {
                id = currentDVM.Employee.Id.Value;
            }
            else
            {
                dynamic profile = ProfileBase.Create(Membership.GetUser().UserName);
                if (profile.ContactId != null && !string.IsNullOrEmpty(profile.ContactId))
                    id = int.Parse(profile.ContactId);
                else
                    throw new ArgumentNullException("Must supply an Id or have a ContactId set in profile.");
            }
            dayViewVM.Employee = Mapper.Map<ViewModels.Contacts.ContactViewModel>(Data.Contacts.Contact.Get(id));
            
            if (Request["Date"] != null)
                date = DateTime.Parse(Request["Date"]);
            else
                date = DateTime.Today;
            
            Data.Timing.Time.ListForDay(id, date).ForEach(x =>
            {
                ViewModels.Timing.DayViewModel.Item dayVMItem;

                dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                dayVMItem.Time = Mapper.Map<ViewModels.Timing.TimeViewModel>(x);

                dayVMItem.Task = Mapper.Map<ViewModels.Tasks.TaskViewModel>(Data.Timing.Time.GetRelatedTask(dayVMItem.Time.Id.Value));

                dayVMItem.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(Data.Tasks.Task.GetRelatedMatter(dayVMItem.Task.Id.Value));

                dayViewVM.Items.Add(dayVMItem);
            });

            Data.Contacts.Contact.ListEmployeesOnly().ForEach(x =>
            {
                employeeContactList.Add(Mapper.Map<ViewModels.Contacts.ContactViewModel>(x));
            });

            ViewData["Date"] = date;
            ViewData["EmployeeContactList"] = employeeContactList;
            return View(dayViewVM);
        }
コード例 #2
0
        public ActionResult DayView(ViewModels.Timing.DayViewModel currentDVM)
        {
            int      id;
            DateTime date;
            List <ViewModels.Contacts.ContactViewModel> employeeContactList;

            ViewModels.Timing.DayViewModel dayViewVM = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List <ViewModels.Contacts.ContactViewModel>();

            if (RouteData.Values["Id"] != null)
            {
                id = int.Parse((string)RouteData.Values["Id"]);
            }
            else if (currentDVM.Employee != null && currentDVM.Employee.Id.HasValue)
            {
                id = currentDVM.Employee.Id.Value;
            }
            else
            {
                dynamic profile = ProfileBase.Create(Membership.GetUser().UserName);
                if (profile.ContactId != null && !string.IsNullOrEmpty(profile.ContactId))
                {
                    id = int.Parse(profile.ContactId);
                }
                else
                {
                    throw new ArgumentNullException("Must supply an Id or have a ContactId set in profile.");
                }
            }
            dayViewVM.Employee = Mapper.Map <ViewModels.Contacts.ContactViewModel>(Data.Contacts.Contact.Get(id));

            if (Request["Date"] != null)
            {
                date = DateTime.Parse(Request["Date"]);
            }
            else
            {
                date = DateTime.Today;
            }

            Data.Timing.Time.ListForDay(id, date).ForEach(x =>
            {
                ViewModels.Timing.DayViewModel.Item dayVMItem;

                dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                dayVMItem.Time = Mapper.Map <ViewModels.Timing.TimeViewModel>(x);

                dayVMItem.Task = Mapper.Map <ViewModels.Tasks.TaskViewModel>(Data.Timing.Time.GetRelatedTask(dayVMItem.Time.Id.Value));

                dayVMItem.Matter = Mapper.Map <ViewModels.Matters.MatterViewModel>(Data.Tasks.Task.GetRelatedMatter(dayVMItem.Task.Id.Value));

                dayViewVM.Items.Add(dayVMItem);
            });

            Data.Contacts.Contact.ListEmployeesOnly().ForEach(x =>
            {
                employeeContactList.Add(Mapper.Map <ViewModels.Contacts.ContactViewModel>(x));
            });

            ViewData["Date"] = date;
            ViewData["EmployeeContactList"] = employeeContactList;
            return(View(dayViewVM));
        }
コード例 #3
0
        public ActionResult Timesheet_Print3rdParty(ViewModels.Home.DashboardViewModel currentDVM)
        {
            Guid id;
            int contactId = 0;
            Common.Models.Matters.Matter matter;
            DateTime? from = null, to = null;
            List<ViewModels.Contacts.ContactViewModel> employeeContactList;
            List<Common.Models.Timing.Time> timeList = null;
            ViewModels.Timing.DayViewModel viewModel = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List<ViewModels.Contacts.ContactViewModel>();

            id = Guid.Parse((string)RouteData.Values["Id"]);
            if (!string.IsNullOrEmpty(Request["From"]))
                from = DateTime.Parse(Request["From"]);
            if (!string.IsNullOrEmpty(Request["To"]))
                to = DateTime.Parse(Request["To"]);

            using (IDbConnection conn = Data.Database.Instance.GetConnection())
            {
                matter = Data.Matters.Matter.Get(id, conn, false);

                if (currentDVM.Employee != null && currentDVM.Employee.Id.HasValue)
                {
                    contactId = currentDVM.Employee.Id.Value;
                }
                else if (!string.IsNullOrEmpty(Request["empid"]))
                {
                    contactId = int.Parse(Request["empid"]);
                }

                if (contactId > 0)
                {
                    viewModel.Employee = Mapper.Map<ViewModels.Contacts.ContactViewModel>(
                        Data.Contacts.Contact.Get(contactId, conn, false));
                    timeList = Data.Timing.Time.ListForMatterWithinRange(matter.Id.Value, contactId, from, to, conn, false);
                }
                else
                {
                    timeList = Data.Timing.Time.ListForMatterWithinRange(matter.Id.Value, from, to, conn, false);
                }

                timeList.ForEach(x =>
                {
                    ViewModels.Timing.DayViewModel.Item dayVMItem;

                    dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                    dayVMItem.Time = Mapper.Map<ViewModels.Timing.TimeViewModel>(x);

                    dayVMItem.Task = Mapper.Map<ViewModels.Tasks.TaskViewModel>(
                        Data.Timing.Time.GetRelatedTask(dayVMItem.Time.Id.Value, conn, false));

                    dayVMItem.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(
                        Data.Tasks.Task.GetRelatedMatter(dayVMItem.Task.Id.Value, conn, false));

                    viewModel.Items.Add(dayVMItem);
                });

                Data.Contacts.Contact.ListEmployeesOnly(conn, false).ForEach(x =>
                {
                    employeeContactList.Add(Mapper.Map<ViewModels.Contacts.ContactViewModel>(x));
                });
            }


            if (from.HasValue)
                ViewBag.From = from.Value;
            if (to.HasValue)
                ViewBag.To = to.Value;

            ViewBag.Matter = matter.Title;
            ViewBag.CourtType = matter.CourtType;
            ViewBag.CourtType = matter.CourtGeographicalJurisdiction;
            ViewBag.CourtSittingInCity = matter.CourtSittingInCity;
            ViewBag.CaseNumber = matter.CaseNumber;
            ViewBag.MatterId = matter.Id;
            ViewBag.EmployeeContactList = employeeContactList;
            return View(viewModel);
        }
コード例 #4
0
        public ActionResult Timesheet(ViewModels.Home.DashboardViewModel currentDVM)
        {
            Guid id;
            int contactId;
            Common.Models.Matters.Matter matter;
            DateTime? from = null, to = null;
            List<ViewModels.Contacts.ContactViewModel> employeeContactList;
            ViewModels.Timing.DayViewModel viewModel = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List<ViewModels.Contacts.ContactViewModel>();

            id = Guid.Parse((string)RouteData.Values["Id"]);
            if (!string.IsNullOrEmpty(Request["From"]))
                from = DateTime.Parse(Request["From"]);
            if (!string.IsNullOrEmpty(Request["To"]))
                to = DateTime.Parse(Request["To"]);

            using (Data.Transaction trans = Data.Transaction.Create(true))
            {
                try
                {
                    matter = Data.Matters.Matter.Get(trans, id);

                    if (currentDVM.Employee != null && currentDVM.Employee.Id.HasValue)
                    {
                        contactId = currentDVM.Employee.Id.Value;
                    }
                    else
                    {
                        dynamic profile = ProfileBase.Create(Membership.GetUser().UserName);
                        if (profile.ContactId != null && !string.IsNullOrEmpty(profile.ContactId))
                            contactId = int.Parse(profile.ContactId);
                        else
                            throw new ArgumentNullException("Must supply an Id or have a ContactId set in profile.");
                    }
                    viewModel.Employee = Mapper.Map<ViewModels.Contacts.ContactViewModel>(
                        Data.Contacts.Contact.Get(trans, contactId));

                    Data.Timing.Time.ListForMatterWithinRange(trans, matter.Id.Value, from, to).ForEach(x =>
                    {
                        ViewModels.Timing.DayViewModel.Item dayVMItem;

                        dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                        dayVMItem.Time = Mapper.Map<ViewModels.Timing.TimeViewModel>(x);

                        dayVMItem.Task = Mapper.Map<ViewModels.Tasks.TaskViewModel>(
                            Data.Timing.Time.GetRelatedTask(trans, dayVMItem.Time.Id.Value));

                        dayVMItem.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(
                            Data.Tasks.Task.GetRelatedMatter(trans, dayVMItem.Task.Id.Value));

                        viewModel.Items.Add(dayVMItem);
                    });

                    Data.Contacts.Contact.ListEmployeesOnly(trans).ForEach(x =>
                    {
                        employeeContactList.Add(Mapper.Map<ViewModels.Contacts.ContactViewModel>(x));
                    });
                }
                catch
                {
                    trans.Rollback();
                    return Timesheet(id);
                }
            }

            if (from.HasValue)
                ViewBag.From = from.Value;
            if (to.HasValue)
                ViewBag.To = to.Value;

            ViewBag.Matter = matter.Title;
            ViewBag.MatterId = matter.Id;
            ViewBag.EmployeeContactList = employeeContactList;
            return View(viewModel);
        }
コード例 #5
0
        public ActionResult Timesheet(Guid id)
        {
            int contactId;
            Common.Models.Matters.Matter matter;
            List<ViewModels.Contacts.ContactViewModel> employeeContactList;
            ViewModels.Timing.DayViewModel viewModel = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List<ViewModels.Contacts.ContactViewModel>();

            dynamic profile = ProfileBase.Create(Membership.GetUser().UserName);
            if (profile.ContactId != null && !string.IsNullOrEmpty(profile.ContactId))
                contactId = int.Parse(profile.ContactId);
            else
                throw new ArgumentNullException("Must have a ContactId set in profile.");

            using (IDbConnection conn = Data.Database.Instance.GetConnection())
            {
                viewModel.Employee = Mapper.Map<ViewModels.Contacts.ContactViewModel>(
                Data.Contacts.Contact.Get(contactId, conn, false));

                Data.Timing.Time.ListForMatterWithinRange(id, null, null, conn, false).ForEach(x =>
                {
                    ViewModels.Timing.DayViewModel.Item dayVMItem;

                    dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                    dayVMItem.Time = Mapper.Map<ViewModels.Timing.TimeViewModel>(x);

                    dayVMItem.Task = Mapper.Map<ViewModels.Tasks.TaskViewModel>(
                        Data.Timing.Time.GetRelatedTask(dayVMItem.Time.Id.Value, conn, false));

                    dayVMItem.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(
                        Data.Tasks.Task.GetRelatedMatter(dayVMItem.Task.Id.Value, conn, false));

                    viewModel.Items.Add(dayVMItem);
                });

                Data.Contacts.Contact.ListEmployeesOnly(conn, false).ForEach(x =>
                {
                    employeeContactList.Add(Mapper.Map<ViewModels.Contacts.ContactViewModel>(x));
                });

                matter = Data.Matters.Matter.Get(id, conn, false);
            }

            ViewBag.Matter = matter;
            ViewBag.EmployeeContactList = employeeContactList;
            return View(viewModel);
        }
コード例 #6
0
        public ActionResult Timesheet_PrintClient(ViewModels.Home.DashboardViewModel currentDVM)
        {
            Guid id;
            int contactId = 0;
            Common.Models.Matters.Matter matter;
            DateTime? from = null, to = null;
            List<ViewModels.Contacts.ContactViewModel> employeeContactList;
            List<Common.Models.Timing.Time> timeList = null;
            ViewModels.Timing.DayViewModel viewModel = new ViewModels.Timing.DayViewModel();

            employeeContactList = new List<ViewModels.Contacts.ContactViewModel>();

            id = Guid.Parse((string)RouteData.Values["Id"]);
            if (!string.IsNullOrEmpty(Request["From"]))
                from = DateTime.Parse(Request["From"]);
            if (!string.IsNullOrEmpty(Request["To"]))
                to = DateTime.Parse(Request["To"]);

            matter = Data.Matters.Matter.Get(id);

            if (currentDVM.Employee != null && currentDVM.Employee.Id.HasValue)
            {
                contactId = currentDVM.Employee.Id.Value;
            }
            else if (!string.IsNullOrEmpty(Request["empid"]))
            {
                contactId = int.Parse(Request["empid"]);
            }


            if (contactId > 0)
            {
                viewModel.Employee = Mapper.Map<ViewModels.Contacts.ContactViewModel>(Data.Contacts.Contact.Get(contactId));
                timeList = Data.Timing.Time.ListForMatterWithinRange(matter.Id.Value, contactId, from, to);
            }
            else
            {
                timeList = Data.Timing.Time.ListForMatterWithinRange(matter.Id.Value, from, to);
            }


            timeList.ForEach(x =>
            {
                ViewModels.Timing.DayViewModel.Item dayVMItem;

                dayVMItem = new ViewModels.Timing.DayViewModel.Item();

                dayVMItem.Time = Mapper.Map<ViewModels.Timing.TimeViewModel>(x);

                dayVMItem.Task = Mapper.Map<ViewModels.Tasks.TaskViewModel>(Data.Timing.Time.GetRelatedTask(dayVMItem.Time.Id.Value));

                dayVMItem.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(Data.Tasks.Task.GetRelatedMatter(dayVMItem.Task.Id.Value));

                viewModel.Items.Add(dayVMItem);
            });

            Data.Contacts.Contact.ListEmployeesOnly().ForEach(x =>
            {
                employeeContactList.Add(Mapper.Map<ViewModels.Contacts.ContactViewModel>(x));
            });


            if (from.HasValue)
                ViewData["From"] = from.Value;
            if (to.HasValue)
                ViewData["To"] = to.Value;

            ViewData["Matter"] = matter.Title;
            ViewData["Jurisdiction"] = matter.Jurisdiction;
            ViewData["CaseNumber"] = matter.CaseNumber;
            ViewData["MatterId"] = matter.Id;
            ViewData["EmployeeContactList"] = employeeContactList;
            return View(viewModel);
        }