Пример #1
0
        private void MatterContactAssignment(
            ViewModels.Matters.MatterContactViewModel viewModel,
            Common.Models.Matters.Matter matter,
            Common.Models.Account.Users currentUser,
            Data.Transaction trans)
        {
            if (viewModel != null && viewModel.Contact != null &&
                viewModel.Contact.Id.HasValue)
            {
                Common.Models.Matters.MatterContact mcOld;

                mcOld = Data.Matters.MatterContact.Get(matter.Id.Value, viewModel.Contact.Id.Value);

                if (mcOld == null)
                { // Create
                    Common.Models.Matters.MatterContact mcNew;
                    mcNew        = Mapper.Map <Common.Models.Matters.MatterContact>(viewModel);
                    mcNew.Matter = matter;
                    mcNew        = Data.Matters.MatterContact.Create(trans, mcNew, currentUser);
                }
                else
                { // Enable
                    Common.Models.Matters.MatterContact mcNew;
                    mcNew        = Mapper.Map <Common.Models.Matters.MatterContact>(viewModel);
                    mcNew.Matter = matter;
                    mcNew.Id     = mcOld.Id;
                    mcNew        = Data.Matters.MatterContact.Enable(trans, mcNew, currentUser);
                    mcNew        = Data.Matters.MatterContact.Edit(trans, mcNew, currentUser);
                }
            }
        }
Пример #2
0
        public ActionResult Edit(int id, ViewModels.Matters.MatterContactViewModel viewModel)
        {
            Common.Models.Account.Users         currentUser;
            Common.Models.Matters.MatterContact model, modelCurrent;

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

                    modelCurrent         = Data.Matters.MatterContact.Get(trans, id);
                    modelCurrent.Contact = Data.Contacts.Contact.Get(trans, modelCurrent.Contact.Id.Value);

                    model = Mapper.Map <Common.Models.Matters.MatterContact>(viewModel);

                    model.Matter  = modelCurrent.Matter;
                    model.Contact = modelCurrent.Contact;

                    model = Data.Matters.MatterContact.Edit(model, currentUser);

                    trans.Commit();

                    return(RedirectToAction("Contacts", "Matters",
                                            new { id = model.Matter.Id.Value.ToString() }));
                }
                catch
                {
                    trans.Rollback();
                    throw;
                }
            }
        }
Пример #3
0
        public ActionResult Delete(int id, ViewModels.Matters.MatterContactViewModel viewModel)
        {
            Common.Models.Account.Users         currentUser;
            Common.Models.Matters.MatterContact model;
            Guid matterId;

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

                    model         = Data.Matters.MatterContact.Get(viewModel.Id.Value);
                    model.Contact = Data.Contacts.Contact.Get(trans, model.Contact.Id.Value);
                    matterId      = model.Matter.Id.Value;

                    model = Data.Matters.MatterContact.Disable(model, currentUser);

                    trans.Commit();
                    return(RedirectToAction("Contacts", "Matters",
                                            new { id = matterId.ToString() }));
                }
                catch
                {
                    trans.Rollback();
                    return(Edit(id));
                }
            }
        }
        public ActionResult AssignContact(ViewModels.Matters.MatterContactViewModel model)
        {
            Common.Models.Account.Users         currentUser;
            Common.Models.Matters.MatterContact matterContact;

            // We need to reset the Id of the model as it is picking up the id from the route,
            // which is incorrect
            model.Id = null;

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

            matterContact = Data.Matters.MatterContact.Get(model.Matter.Id.Value, model.Contact.Id.Value);

            if (matterContact == null)
            { // Create
                matterContact = Mapper.Map <Common.Models.Matters.MatterContact>(model);
                matterContact = Data.Matters.MatterContact.Create(matterContact, currentUser);
            }
            else
            { // Enable
                matterContact = Mapper.Map <Common.Models.Matters.MatterContact>(model);
                matterContact = Data.Matters.MatterContact.Enable(matterContact, currentUser);
            }

            if (model.Role == "Lead Attorney")
            {
                Common.Models.Matters.Matter matter = Data.Matters.Matter.Get(model.Matter.Id.Value);
                matter.LeadAttorney = Mapper.Map <Common.Models.Contacts.Contact>(model.Contact);
                Data.Matters.Matter.Edit(matter, currentUser);
            }

            return(RedirectToAction("Contacts", "Matters",
                                    new { id = matterContact.Matter.Id.Value.ToString() }));
        }
        public ActionResult AssignContact(int id)
        {
            Common.Models.Matters.Matter matter;
            ViewModels.Matters.MatterContactViewModel vm;
            Guid matterId = Guid.Empty;

            if (Request["MatterId"] == null)
            {
                return(View("InvalidRequest"));
            }

            if (!Guid.TryParse(Request["MatterId"], out matterId))
            {
                return(View("InvalidRequest"));
            }

            vm         = new ViewModels.Matters.MatterContactViewModel();
            vm.Matter  = Mapper.Map <ViewModels.Matters.MatterViewModel>(Data.Matters.Matter.Get(matterId));
            vm.Contact = Mapper.Map <ViewModels.Contacts.ContactViewModel>(Data.Contacts.Contact.Get(id));

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

            ViewData["MatterId"] = matter.Id.Value;
            ViewData["Matter"]   = matter.Title;

            return(View(vm));
        }
        public ActionResult Edit(int id, ViewModels.Matters.MatterContactViewModel viewModel)
        {
            Common.Models.Account.Users         currentUser;
            Common.Models.Matters.MatterContact model, modelCurrent;

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

            modelCurrent = Data.Matters.MatterContact.Get(id);

            model = Mapper.Map <Common.Models.Matters.MatterContact>(viewModel);

            model.Matter  = modelCurrent.Matter;
            model.Contact = modelCurrent.Contact;

            model = Data.Matters.MatterContact.Edit(model, currentUser);

            if (model.Role == "Lead Attorney")
            {
                model.Matter = Data.Matters.Matter.Get(model.Matter.Id.Value);
                model.Matter.LeadAttorney = model.Contact;
                Data.Matters.Matter.Edit(model.Matter, currentUser);
            }

            return(RedirectToAction("Contacts", "Matters",
                                    new { id = model.Matter.Id.Value.ToString() }));
        }
        public ActionResult Conflicts(int id)
        {
            List <Common.Models.Matters.Matter> matterList = null;

            Common.Models.Contacts.Contact contact;
            List <Tuple <Common.Models.Matters.Matter, Common.Models.Matters.MatterContact, Common.Models.Contacts.Contact> > matterRelationshipList;

            ViewModels.Contacts.ConflictViewModel viewModel = new ViewModels.Contacts.ConflictViewModel();

            using (IDbConnection conn = Data.Database.Instance.GetConnection())
            {
                contact = Data.Contacts.Contact.Get(id, conn, false);

                viewModel.Contact = Mapper.Map <ViewModels.Contacts.ContactViewModel>(contact);

                viewModel.Matters = new List <ViewModels.Contacts.ConflictViewModel.MatterRelationship>();

                matterList = Data.Contacts.Contact.ListMattersForContact(id, conn, false);

                foreach (var x in matterList)
                {
                    ViewModels.Contacts.ConflictViewModel.MatterRelationship mr = new ViewModels.Contacts.ConflictViewModel.MatterRelationship();

                    mr.Matter = Mapper.Map <ViewModels.Matters.MatterViewModel>(x);

                    mr.MatterContacts = new List <ViewModels.Matters.MatterContactViewModel>();

                    matterRelationshipList = Data.Contacts.Contact.ListMatterRelationshipsForContact(id, x.Id.Value, conn, false);

                    matterRelationshipList.ForEach(y =>
                    {
                        ViewModels.Matters.MatterContactViewModel mc = Mapper.Map <ViewModels.Matters.MatterContactViewModel>(y.Item2);
                        mc.Contact = Mapper.Map <ViewModels.Contacts.ContactViewModel>(y.Item3);
                        mc.Matter  = mr.Matter;
                        mr.MatterContacts.Add(mc);
                    });

                    viewModel.Matters.Add(mr);
                }
                ;
            }

            return(View(viewModel));
        }
        public ActionResult AssignContact(int id)
        {
            Common.Models.Matters.Matter matter;
            ViewModels.Matters.MatterContactViewModel vm;
            Guid matterId = Guid.Empty;

            if (Request["MatterId"] == null)
                return View("InvalidRequest");

            if (!Guid.TryParse(Request["MatterId"], out matterId))
                return View("InvalidRequest");

            vm = new ViewModels.Matters.MatterContactViewModel();
            vm.Matter = Mapper.Map<ViewModels.Matters.MatterViewModel>(Data.Matters.Matter.Get(matterId));
            vm.Contact = Mapper.Map<ViewModels.Contacts.ContactViewModel>(Data.Contacts.Contact.Get(id));

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

            ViewData["MatterId"] = matter.Id.Value;
            ViewData["Matter"] = matter.Title;

            return View(vm);
        }