private void LoadRelatedConciergeList(ManageProspectsViewModel manageProspectViewModel, UserAccount user, BasicLoanData loan, Guid loanId, int?contactId = null, Boolean?isLoa = null)
        {
            Guid companyId  = Guid.Empty;
            int  channelId  = 0;
            int  divisionId = 0;

            if (manageProspectViewModel.CompanyId != null && manageProspectViewModel.CompanyId != "-1" && manageProspectViewModel.CompanyId != "0")
            {
                companyId = Guid.Parse(manageProspectViewModel.CompanyId);
            }

            if (manageProspectViewModel.ChannelId > 0)
            {
                channelId = manageProspectViewModel.ChannelId;
            }

            if (manageProspectViewModel.DivisionId > 0)
            {
                divisionId = manageProspectViewModel.DivisionId;
            }

            var conciergeList = !WebCommonHelper.LicensingEnabled() ?
                                UserAccountServiceFacade.RetrieveConciergeInfo(null, null, null, null, companyId, channelId, divisionId, manageProspectViewModel.BranchId) :
                                UserAccountServiceFacade.RetrieveConciergeInfo(loanId, manageProspectViewModel.ProspectId, isLoa, user.UserAccountId, companyId, channelId, divisionId, manageProspectViewModel.BranchId);

            if (conciergeList != null)
            {
                conciergeList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            manageProspectViewModel.ConciergeInfoList = conciergeList;
        }
        public ActionResult ChangeProspectLO(int contactId, int newOwnerAccountId, string lid)
        {
            try
            {
                UserAccount loggedUser = null;
                if (HttpContext != null && HttpContext.Session != null && HttpContext.Session[SessionHelper.UserData] != null)
                {
                    loggedUser = ( UserAccount )HttpContext.Session[SessionHelper.UserData];
                }
                else
                {
                    // TODO: Handle if user don't have priviledges to see this log
                    throw new UnauthorizedAccessException("User is not authorized to access this method!");
                }

                var licenseExpiredClass   = "notdisplayed";
                var licenseExpiredMessage = String.Empty;

                var updated = ContactServiceFacade.UpdateContactOwner(contactId, newOwnerAccountId, loggedUser.UserAccountId);

                if (!updated || newOwnerAccountId == 0 || !WebCommonHelper.LicensingEnabled())
                {
                    return(Json(new
                    {
                        LicenseExpiredClass = licenseExpiredClass,
                        LicenseExpiredMessage = licenseExpiredMessage
                    }, JsonRequestBehavior.AllowGet));
                }

                Guid loanId;
                Guid.TryParse(lid, out loanId);

                // Check if concierge/branch is licensed
                var isUserStateLicensedForLoan = UserAccountServiceFacade.IsUserStateLicensedForLoan(newOwnerAccountId, loanId, contactId);

                licenseExpiredMessage = LicenseHelper.ConfigureLicenseExpiredMessage(licenseExpiredMessage, isUserStateLicensedForLoan);
                if (!String.IsNullOrEmpty(licenseExpiredMessage))
                {
                    licenseExpiredClass = "licenseExpiredNotification";
                }

                return(Json(new
                {
                    LicenseExpiredClass = licenseExpiredClass,
                    LicenseExpiredMessage = licenseExpiredMessage
                }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                TraceHelper.Error(TraceCategory.Global, "LoanController::ChangeProspectLO", ex);
                return(Json(null, JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 3
0
        private void LoadRelatedConciergeList(AssignLoanInfoViewModel assignLoanInfoViewModel, UserAccount user, BasicLoanData loan, Guid loanId, int?contactId = null, Boolean?isLoa = null)
        {
            Guid companyId  = Guid.Empty;
            int  channelId  = 0;
            int  divisionId = 0;

            if (assignLoanInfoViewModel.CompanyId != null && assignLoanInfoViewModel.CompanyId != "-1" && assignLoanInfoViewModel.CompanyId != "0")
            {
                companyId = Guid.Parse(assignLoanInfoViewModel.CompanyId);
            }

            if (assignLoanInfoViewModel.ChannelId > 0)
            {
                channelId = assignLoanInfoViewModel.ChannelId;
            }

            if (assignLoanInfoViewModel.DivisionId > 0)
            {
                divisionId = assignLoanInfoViewModel.DivisionId;
            }

            var conciergeList = !WebCommonHelper.LicensingEnabled() ?
                                UserAccountServiceFacade.RetrieveConciergeInfo(null, null, null, null, companyId, channelId, divisionId, assignLoanInfoViewModel.BranchId) :
                                UserAccountServiceFacade.RetrieveConciergeInfo(loanId, null, isLoa, user.UserAccountId, companyId, channelId, divisionId, assignLoanInfoViewModel.BranchId);

            if (conciergeList != null)
            {
                conciergeList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            assignLoanInfoViewModel.ConciergeList = conciergeList;
            if (loan != null)
            {
                assignLoanInfoViewModel.ConciergeNMLS =
                    conciergeList.FirstOrDefault(d => d.UserAccountId.Equals(loan.ConciergeId)) != null
                        ? conciergeList.FirstOrDefault(d => d.UserAccountId.Equals(loan.ConciergeId)).NMLSNumber
                        : "";
            }
        }
Ejemplo n.º 4
0
        public override void Execute()
        {
            base.Execute();

            UserAccount user;

            if (base.HttpContext.Session[SessionHelper.UserData] != null && (( UserAccount )base.HttpContext.Session[SessionHelper.UserData]).Username == base.HttpContext.User.Identity.Name)
            {
                user = ( UserAccount )base.HttpContext.Session[SessionHelper.UserData];
            }
            else
            {
                user = UserAccountServiceFacade.GetUserByName(base.HttpContext.User.Identity.Name);
            }

            if (user == null)
            {
                throw new InvalidOperationException("User is null");
            }

            AssignLoanInfoViewModel assignLoanInfoViewModel = null;

            if ((base.HttpContext != null) && (base.HttpContext.Session[SessionHelper.AssignLoanInfo] != null))
            {
                assignLoanInfoViewModel = new AssignLoanInfoViewModel().FromXml(base.HttpContext.Session[SessionHelper.AssignLoanInfo].ToString());
            }
            else
            {
                // possible state retrieval?
                assignLoanInfoViewModel = new AssignLoanInfoViewModel();
            }

            /* parameter processing */
            Guid branchId = Guid.Empty;

            if (!InputParameters.ContainsKey("BranchId"))
            {
                throw new ArgumentException("BranchId was expected!");
            }

            if (InputParameters["BranchId"].ToString() != "-1" && InputParameters["BranchId"].ToString() != "0")
            {
                branchId = Guid.Parse(InputParameters["BranchId"].ToString());
            }

            assignLoanInfoViewModel.BranchId = branchId;

            assignLoanInfoViewModel.ConciergeList.Clear();
            assignLoanInfoViewModel.ConciergeId = null;


            var isLoa = false;

            if (user.Roles != null && user.Roles.Any(r => r.RoleName == RoleName.LoanOfficerAssistant && r.IsActive))
            {
                isLoa = true;
            }

            /* Command processing */
            Guid _compId;

            Guid.TryParse(assignLoanInfoViewModel.CompanyId, out _compId);


            var conciergeList = !WebCommonHelper.LicensingEnabled() ?
                                UserAccountServiceFacade.RetrieveConciergeInfo(null, null, null, null, _compId, assignLoanInfoViewModel.ChannelId, assignLoanInfoViewModel.DivisionId, assignLoanInfoViewModel.BranchId) :
                                UserAccountServiceFacade.RetrieveConciergeInfo(assignLoanInfoViewModel.LoanId, null, isLoa, user.UserAccountId, _compId, assignLoanInfoViewModel.ChannelId, assignLoanInfoViewModel.DivisionId, assignLoanInfoViewModel.BranchId);

            if (conciergeList != null && !conciergeList.Any(d => d.ConciergeName == "Select One"))
            {
                conciergeList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            assignLoanInfoViewModel.ConciergeList = conciergeList;



            var loaList = UserAccountServiceFacade.RetrieveLOAInfo(_compId, assignLoanInfoViewModel.ChannelId, assignLoanInfoViewModel.DivisionId, assignLoanInfoViewModel.BranchId, true);

            if (loaList != null && !loaList.Any(d => d.ConciergeName == "Select One"))
            {
                loaList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            assignLoanInfoViewModel.LoaList = loaList;

            ViewName = "_assignloaninfo";
            ViewData = assignLoanInfoViewModel;

            /* Persist new state */
            base.HttpContext.Session[SessionHelper.AssignLoanInfo] = assignLoanInfoViewModel.ToXml();
            //base.HttpContext.Session[ SessionHelper.UserAccountIds ] = new List<int>();
        }
Ejemplo n.º 5
0
        public override void Execute()
        {
            base.Execute();
            UserAccount user;

            if (base.HttpContext.Session[SessionHelper.UserData] != null && (( UserAccount )base.HttpContext.Session[SessionHelper.UserData]).Username == base.HttpContext.User.Identity.Name)
            {
                user = ( UserAccount )base.HttpContext.Session[SessionHelper.UserData];
            }
            else
            {
                user = UserAccountServiceFacade.GetUserByName(base.HttpContext.User.Identity.Name);
            }

            if (user == null)
            {
                throw new InvalidOperationException("User is null");
            }

            ManageProspectsViewModel manageProspectViewModel = null;

            if ((base.HttpContext != null) && (base.HttpContext.Session[SessionHelper.ManageProspects] != null))
            {
                manageProspectViewModel = new ManageProspectsViewModel().FromXml(base.HttpContext.Session[SessionHelper.ManageProspects].ToString());
            }
            else
            {
                // possible state retrieval?
                manageProspectViewModel = new ManageProspectsViewModel();
            }

            /* parameter processing */
            Guid companyId = Guid.Empty;

            if (!InputParameters.ContainsKey("CompanyId"))
            {
                throw new ArgumentException("CompanyId was expected!");
            }

            bool channelResetOccurred = false;

            if (InputParameters["CompanyId"].ToString().Equals("0") || InputParameters["CompanyId"].ToString().Equals("-1"))
            {
                channelResetOccurred = true;
            }
            else
            {
                companyId = Guid.Parse(InputParameters["CompanyId"].ToString());
            }

            manageProspectViewModel.CompanyId = companyId.ToString();

            manageProspectViewModel.Channels.Clear();
            manageProspectViewModel.Channels.Add(_viewAllItem);
            manageProspectViewModel.ChannelId = 0;

            manageProspectViewModel.Divisions.Clear();
            manageProspectViewModel.Divisions.Add(_viewAllItem);
            manageProspectViewModel.DivisionId = 0;

            manageProspectViewModel.Branches.Clear();
            manageProspectViewModel.Branches.Add(_viewAllItem);
            manageProspectViewModel.BranchId = Guid.Empty;

            manageProspectViewModel.ConciergeInfoList.Clear();
            manageProspectViewModel.SelectedConcierge = null;


            var isLoa = false;

            if (user.Roles != null && user.Roles.Any(r => r.RoleName == RoleName.LoanOfficerAssistant && r.IsActive))
            {
                isLoa = true;
            }


            /* Command processing */
            Guid _compId;

            Guid.TryParse(manageProspectViewModel.CompanyId, out _compId);


            var conciergeList = !WebCommonHelper.LicensingEnabled() ?
                                UserAccountServiceFacade.RetrieveConciergeInfo(null, null, null, null, _compId, null, null, null) :
                                UserAccountServiceFacade.RetrieveConciergeInfo(manageProspectViewModel.LoanId, null, isLoa, user.UserAccountId, _compId, null, null, null);

            if (conciergeList != null && !conciergeList.Any(d => d.ConciergeName == "Select One"))
            {
                conciergeList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            manageProspectViewModel.ConciergeInfoList = conciergeList;



            var loaList = UserAccountServiceFacade.RetrieveLOAInfo(_compId, null, null, null, true);

            if (loaList != null && !loaList.Any(d => d.ConciergeName == "Select One"))
            {
                loaList.Insert(0, new ConciergeInfo()
                {
                    NMLSNumber = "", ConciergeName = "Select One", UserAccountId = 0
                });
            }

            manageProspectViewModel.LoaInfoList = loaList;

            if (!channelResetOccurred)
            {
                /* Command processing */
                var result = UserAccountServiceFacade.GetChannels(companyId);
                if (result != null)
                {
                    foreach (Channel channel in result.OrderBy(r => r.Name))
                    {
                        manageProspectViewModel.Channels.Add(new DropDownItem()
                        {
                            Text     = channel.Name,
                            Value    = channel.ChannelId.ToString(),
                            Selected = false
                        });
                    }
                }
            }

            manageProspectViewModel.Statuses = new Collection <KeyValuePair <String, String> >();
            foreach (ContactStatus contactStatus in Enum.GetValues(typeof(ContactStatus)))
            {
                if (contactStatus != ContactStatus.None)
                {
                    manageProspectViewModel.Statuses.Add(new KeyValuePair <String, String>((( int )contactStatus).ToString(),
                                                                                           MML.Web.LoanCenter.Helpers.LoanCenterEnumHelper.ContactStatusToString(contactStatus)));
                }
            }

            manageProspectViewModel.Statuses = new Collection <KeyValuePair <String, String> >(manageProspectViewModel.Statuses.OrderBy(s => s.Value).ToList());

            ViewName = "Commands/_manageprospects";
            ViewData = manageProspectViewModel;

            /* Persist new state */
            base.HttpContext.Session[SessionHelper.ManageProspects] = manageProspectViewModel.ToXml();
        }