Пример #1
0
        public void ResetPersonaToDefault()
        {
            var defaulPersona = PersonaList.FirstOrDefault(x => x.Value == _compendiumIndex);

            if (defaulPersona == null)
            {
                return;
            }

            IsEnabled           = true;
            PersonaId           = _compendiumIndex;
            _persona.Level      = defaulPersona.Properties.Level;
            _persona.Experience = 0;
            _persona.Strength   = defaulPersona.Properties.Strength;
            _persona.Magic      = defaulPersona.Properties.Magic;
            _persona.Endurance  = defaulPersona.Properties.Endurance;
            _persona.Agility    = defaulPersona.Properties.Agility;
            _persona.Luck       = defaulPersona.Properties.Luck;

            for (int i = defaulPersona.Properties.Skills.Count; i < _persona.Skills.Length; i++)
            {
                _persona.Skills[i] = Skill.Empty;
            }
            for (int i = Math.Min(defaulPersona.Properties.Skills.Count, _persona.Skills.Length) - 1; i >= 0; i--)
            {
                _persona.Skills[i] = (Skill)defaulPersona.Properties.Skills[i];
            }

            OnAllPropertiesChanged();
        }
Пример #2
0
 public PersonaViewModel(Persona persona, IPersonaList personaList, ISkillList skillList)
 {
     _persona     = persona;
     _personaList = personaList;
     _skillList   = skillList;
     _vm          = PersonaList.FirstOrDefault(x => x.Value == PersonaId);
 }
Пример #3
0
        public PersonaViewModel(int compendiumIndex, Persona persona, IPersonaList personaList, ISkillList skillList)
        {
            _compendiumIndex = compendiumIndex;
            _persona         = persona;
            _personaList     = personaList;
            _skillList       = skillList;
            _vm = PersonaList.FirstOrDefault(x => x.Value == PersonaId);
            ResetPersonaCommand = new RelayCommand(_ =>
            {
                if (MessageBox.Show("This will reset stats and skills of your persona. Do you want to continue?",
                                    "Reset Persona to default", MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes)
                {
                    return;
                }

                ResetPersonaToDefault();
            }, _ => _compendiumIndex >= 0);
        }
Пример #4
0
        public void startSession()
        {
            App.Current.Dispatcher.Invoke(() =>
                                          BindingOperations.EnableCollectionSynchronization(PersonaList, personaListLock));
            App.Current.Dispatcher.Invoke(() =>
                                          BindingOperations.EnableCollectionSynchronization(EventResults, eventResultsLock));

            foreach (Persona persona in Engine.getCurrentPersonaList())
            {
                PersonaList.Add(persona);
            }
            ActivePersona = PersonaList[Engine.getDefaultPersonaIdx()];

            foreach (EventResult eventResult in Engine.getEventResults())
            {
                EventResults.Add(eventResult);
            }

            log.Info("Session started.");
        }
Пример #5
0
        private void matchThePersona()
        {
            String currentUser = EncompassApplication.Session.UserID;

            Excel.Application userApp       = new Excel.Application();
            Excel.Workbook    userWorkbook  = userApp.Workbooks.Open(@"\\ftwfs02\Groups\POS\Encompass Support\New User Plugin\UserTest16.xlsx");
            Excel._Worksheet  userWorksheet = userWorkbook.Sheets[1];
            Excel.Range       userRange     = userWorksheet.UsedRange;
            int    rCnt     = 1;
            int    cCnt     = 1;
            int    rowCount = userRange.Rows.Count;
            int    colCount = userRange.Columns.Count;
            string newFirst;
            string newLast;
            string userID;
            string stopGO = "2";
            string eMail;
            string taskNo;
            string mgrID;
            string procTitle;
            string pWord = "P@ssword1";

            for (rCnt = 2; rCnt <= rowCount; rCnt++)
            {
                PersName = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                userID = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                newFirst = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                newLast = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                eMail = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                taskNo = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                mgrID = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt++;
                procTitle = (string)(userWorksheet.Cells[rCnt, cCnt].Value2);
                cCnt      = 1;

                if (userID.Length >= 17)
                {
                    MessageBox.Show("User " + userID + " length is longer than 16 characters.  The program will stop and all Users after this user will not be created.  Please adjust.");
                }

                List <PersonaPull> pSelect  = CDO.PersonaPull.ToList();
                List <string>      persColl = new List <string>();

                List <string> mngrGroup  = new List <string>();
                UserGroupList userGroups = new UserGroupList();
                List <string> userGroup  = new List <string>();
                UserGroupList mngrGroups = new UserGroupList();
                PersonaList   listPers   = new PersonaList();

                foreach (PersonaPull item in pSelect)
                {
                    if (PersName != "")
                    {
                        if (item.PersName == PersName)
                        {
                            OrgFolder = item.OrgFolder;
                            Access    = item.Access;
                            userGroup = item.Group.ToList();
                            persColl  = item.PersonaName.ToList();

                            foreach (string perColl in persColl)
                            {
                                listPers.Add(EncompassApplication.Session.Users.Personas.GetPersonaByName(perColl));
                            }
                        }
                    }
                }

                OrganizationList orgs = EncompassApplication.Session.Organizations.GetAllOrganizations();
                foreach (Organization org in orgs)
                {
                    UserList orgUsers = org.GetUsers();
                    foreach (User useID in orgUsers)
                    {
                        if (useID.ID.ToString() == userID.ToLower())

                        {
                            EncompassApplication.CurrentLoan.Fields["CX.ADMIN.CREATE.USERS.DUP"].Value = EncompassApplication.CurrentLoan.Fields["CX.ADMIN.CREATE.USERS.DUP"].Value + "\n" + userID + "\n";
                            goto stop;
                        }
                    }

                    if (OrgFolder == "Processing Teams" ^ OrgFolder == "Closing Teams" ^ OrgFolder == "Underwriting Teams")
                    {
                        OrganizationList procOrgs = EncompassApplication.Session.Organizations.GetAllOrganizations();
                        foreach (Organization procOrg in procOrgs)
                        {
                            if (mgrID != "DavidJobes" ^ mgrID != "MichaelTrainor")
                            {
                                if (mgrID.ToLower() == procOrg.Description)
                                {
                                    OrgFolder = procOrg.ToString();
                                }
                            }
                            if (mgrID == "MichaelTrainor" && OrgFolder == "Processing Teams")
                            {
                                if (procTitle == "Digital Risk")
                                {
                                    OrgFolder = "Digital Risk Processors";
                                }
                                else if (procTitle == "Maxwell")
                                {
                                    OrgFolder = "Maxwell Processors";
                                }
                                else if (procTitle == "Accenture")
                                {
                                    OrgFolder = "Accenture Processors";
                                }
                                else
                                {
                                    OrgFolder = "Digital Risk Processors";
                                }
                            }
                            else if (mgrID == "DavidJobes" && OrgFolder == "Processing Teams")
                            {
                                OrgFolder = "CD Operations";
                            }
                            else if (mgrID == "MichaelTrainor" && OrgFolder == "Closing Teams")
                            {
                                OrgFolder = "Sourcepoint Closers";
                            }
                        }
                    }
                }

                OrganizationList userOrgs = EncompassApplication.Session.Organizations.GetOrganizationsByName(OrgFolder);
                foreach (Organization userOrg in userOrgs)
                {
                    User newUser = userOrg.CreateUser(userID, pWord, listPers);
                    newUser.FirstName     = newFirst;
                    newUser.LastName      = newLast;
                    newUser.Email         = eMail;
                    newUser.WorkingFolder = "My Pipeline";
                    SubordinateLoanAccessRight readWrite  = SubordinateLoanAccessRight.ReadWrite;
                    SubordinateLoanAccessRight readOnly   = SubordinateLoanAccessRight.ReadOnly;
                    PeerLoanAccessRight        readWritep = PeerLoanAccessRight.ReadWrite;
                    PeerLoanAccessRight        readNo     = PeerLoanAccessRight.None;

                    if (Access == "Full")
                    {
                        newUser.SubordinateLoanAccessRight = readWrite;
                        newUser.PeerLoanAccessRight        = readWritep;
                    }
                    else
                    {
                        newUser.SubordinateLoanAccessRight = readOnly;
                        newUser.PeerLoanAccessRight        = readNo;
                    }
                    CCSiteInfo ccSite = new CCSiteInfo();
                    ccSite.UseParentInfo = false;
                    ccSite.UseParentInfo = true;
                    //newUser.Refresh();
                    newUser.Commit();
                    listPers.Clear();

                    foreach (string uGroup in userGroup)
                    {
                        userGroups.Add(EncompassApplication.Session.Users.Groups.GetGroupByName(uGroup));
                    }

                    foreach (UserGroup addUser in userGroups)
                    {
                        User idGet = EncompassApplication.Session.Users.GetUser(userID);
                        addUser.AddUser(idGet);
                    }

                    string glass  = "TPO Wholesale Manager - Glass";
                    string cullen = "TPO Wholesale Manager - Cullen";
                    string murphy = "TPO Wholesale Manager - Murphy";
                    mngrGroup.Add(glass);
                    mngrGroup.Add(cullen);
                    mngrGroup.Add(murphy);

                    foreach (string mGroup in mngrGroup)
                    {
                        mngrGroups.Add(EncompassApplication.Session.Users.Groups.GetGroupByName(mGroup));
                    }
                    foreach (UserGroup addMngr in mngrGroups)
                    {
                        User idMngr = EncompassApplication.Session.Users.GetUser(userID);

                        if (mgrID == "michaelcullen")
                        {
                            if (addMngr == EncompassApplication.Session.Users.Groups.GetGroupByName(cullen))
                            {
                                addMngr.AddUser(idMngr);
                            }
                        }
                        if (mgrID == "ronaldglass")
                        {
                            if (addMngr == EncompassApplication.Session.Users.Groups.GetGroupByName(glass))
                            {
                                addMngr.AddUser(idMngr);
                            }
                        }
                        if (mgrID == "glenmurphy")
                        {
                            if (addMngr == EncompassApplication.Session.Users.Groups.GetGroupByName(murphy))
                            {
                                addMngr.AddUser(idMngr);
                            }
                        }
                    }

                    IOrganizationManager orgMgr   = EllieMae.EMLite.RemotingServices.Session.OrganizationManager;
                    UserInfo             userInfo = orgMgr.GetUser(userID);
                    userInfo.RequirePasswordChange = true;
                    userInfo.PersonaAccessComments = "Created via " + taskNo + " on " + DateTime.Now;
                    orgMgr.UpdateUser(userInfo);
                }
stop:
                stopGO = "1";
            }

            userWorkbook.Close(true, null, null);
            userApp.Quit();
            Marshal.ReleaseComObject(userWorksheet);
            Marshal.ReleaseComObject(userWorkbook);
            Marshal.ReleaseComObject(userApp);
        }