public ActionResult Edit(Guid id, ViewModels.Billing.FeeViewModel viewModel)
        {
            Common.Models.Account.Users  currentUser;
            Common.Models.Matters.Matter matter;
            Common.Models.Billing.Fee    model;

            using (Data.Transaction trans = Data.Transaction.Create(true))
            {
                try
                {
                    currentUser = Data.Account.Users.Get(User.Identity.Name);

                    matter = Data.Billing.Fee.GetMatter(id);

                    model = Mapper.Map <Common.Models.Billing.Fee>(viewModel);

                    model = Data.Billing.Fee.Edit(model, currentUser);

                    trans.Commit();

                    return(RedirectToAction("Details", "Matters", new { Id = matter.Id }));
                }
                catch
                {
                    trans.Rollback();
                    return(Edit(id));
                }
            }
        }
        public ActionResult Create(ViewModels.Billing.FeeViewModel viewModel)
        {
            Common.Models.Account.Users currentUser;
            Common.Models.Billing.Fee   model;
            Guid matterid;

            using (Data.Transaction trans = Data.Transaction.Create(true))
            {
                try
                {
                    currentUser = Data.Account.Users.Get(User.Identity.Name);

                    model = Mapper.Map <Common.Models.Billing.Fee>(viewModel);

                    model = Data.Billing.Fee.Create(model, currentUser);

                    matterid = Guid.Parse(Request["MatterId"]);

                    Data.Billing.Fee.RelateMatter(model, matterid, currentUser);

                    trans.Commit();

                    return(RedirectToAction("Details", "Matters", new { Id = matterid }));
                }
                catch
                {
                    trans.Rollback();
                    return(Create());
                }
            }
        }
        public ActionResult Edit(Guid id, ViewModels.Billing.FeeViewModel viewModel)
        {
            Common.Models.Account.Users  currentUser;
            Common.Models.Matters.Matter matter;
            Common.Models.Billing.Fee    model;

            currentUser = Data.Account.Users.Get(User.Identity.Name);
            matter      = Data.Billing.Fee.GetMatter(id);

            model = Mapper.Map <Common.Models.Billing.Fee>(viewModel);

            model = Data.Billing.Fee.Edit(model, currentUser);

            return(RedirectToAction("Details", "Matters", new { Id = matter.Id }));
        }
        public ActionResult Create(ViewModels.Billing.FeeViewModel viewModel)
        {
            Common.Models.Account.Users currentUser;
            Common.Models.Billing.Fee   model;
            Guid matterid;

            currentUser = Data.Account.Users.Get(User.Identity.Name);

            model = Mapper.Map <Common.Models.Billing.Fee>(viewModel);

            model = Data.Billing.Fee.Create(model, currentUser);

            matterid = Guid.Parse(Request["MatterId"]);

            Data.Billing.Fee.RelateMatter(model, matterid, currentUser);

            return(RedirectToAction("Details", "Matters", new { Id = matterid }));
        }