public HttpResponseMessage GetAdminsAbilitati(int idSender) { BackendUserService bus = new BackendUserService(); UsersMailModel model = new UsersMailModel(); try { List <BackendUser> listaUtentiAbilitati = bus.GetDipendentiDipartimentoAbilitati(idSender); var ListaAdmins = listaUtentiAbilitati.Where(x => x.RoleMail > 0); List <UserMail> list = new List <UserMail>(); foreach (BackendUser b in ListaAdmins) { UserMail u = new UserMail() { UserId = (int)b.UserId, UserName = b.UserName }; list.Add(u); } model.success = "true"; model.UsersList = list.ToArray(); model.Totale = list.Count.ToString(); } catch (Exception ex) { if (!ex.GetType().Equals(typeof(ManagedException))) { ErrorLogInfo error = new ErrorLogInfo(); error.freeTextDetails = ex.Message; error.logCode = "ERR_U002"; error.loggingAppCode = "PEC"; error.loggingTime = System.DateTime.Now; error.uniqueLogID = System.DateTime.Now.Ticks.ToString(); log.Error(error); model.message = ex.Message; model.success = "false"; } else { model.message = ex.Message; model.success = "false"; } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); }
public HttpResponseMessage GetMailSendersByUserMails(int?page, int?start, int?limit) { MailServerConfigFacade mailServerConfigFacade = MailServerConfigFacade.GetInstance(); List <MailUser> users = new List <MailUser>(); UsersMailModel model = new UsersMailModel(); try { string username = MySecurityProvider.CurrentPrincipal.MyIdentity.UserName; MailServerConfigFacade mailSCF = null; mailSCF = MailServerConfigFacade.GetInstance(); users = SessionManager <List <MailUser> > .get(SessionKeys.ACCOUNTS_LIST); if (!(users == null || users.Count == 0)) { users = mailSCF.GetManagedAccountByUser(username).ToList(); if (users == null) { users = new List <MailUser>(); } if (users.Where(x => x.UserId.Equals(-1)).Count() == 0) { users.Insert(0, new MailUser() { UserId = -1, EmailAddress = "" }); } SessionManager <List <MailUser> > .set(SessionKeys.ACCOUNTS_LIST, users); } model.MailUsers = users; } catch (ManagedException bex) { if (bex.GetType() != typeof(ManagedException)) { ManagedException mEx = new ManagedException(bex.Message, "ERR_E002", string.Empty, string.Empty, bex); ErrorLogInfo er = new ErrorLogInfo(mEx); log.Error(er); model.success = "false"; model.message = bex.Message; return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); }
public HttpResponseMessage GetAllUsers() { BackendUserService bus = new BackendUserService(); UsersMailModel model = new UsersMailModel(); List <UserMail> list = new List <UserMail>(); try { if (CacheManager <List <UserMail> > .exist(Com.Delta.Web.Cache.CacheKeys.ALL_USERS)) { list = CacheManager <List <UserMail> > .get(Com.Delta.Web.Cache.CacheKeys.ALL_USERS, VincoloType.BACKEND); } else { list = Helpers.GetAllUsers(); } model.success = "true"; model.UsersList = list.ToArray(); model.Totale = list.Count.ToString(); } catch (Exception ex) { if (!ex.GetType().Equals(typeof(ManagedException))) { ErrorLogInfo error = new ErrorLogInfo(); error.freeTextDetails = ex.Message; error.logCode = "ERR_U003"; error.loggingAppCode = "PEC"; error.loggingTime = System.DateTime.Now; error.uniqueLogID = System.DateTime.Now.Ticks.ToString(); log.Error(error); model.message = ex.Message; model.success = "false"; } else { model.message = ex.Message; model.success = "false"; } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); }
public HttpResponseMessage UpdateOwnProfile(FormDataCollection formsValues) { UsersMailModel model = new UsersMailModel(); var userName = formsValues["UserName"]; var password = formsValues["Password"]; var cognome = formsValues["Cognome"]; var nome = formsValues["Nome"]; var domain = formsValues["Domain"]; var codicefiscale = formsValues["CodiceFiscale"]; var userStore = new UserStore(); string result = "OK"; try { var user = userStore.FindByNameAsync(userName).Result; if (!(string.IsNullOrEmpty(password))) { user.PasswordHash = MySecurityProvider.PlainToSHA256(password); user.SecurityStamp = System.DateTime.Now.Ticks.ToString(); result = userStore.UpdateAsync(user).Result; } if (result == "OK") { BackendUserService bus = new BackendUserService(); BackendUser userBackend = new BackendUser(); userBackend.Cognome = cognome.Trim().ToUpper(); userBackend.Nome = nome.Trim().ToUpper(); userBackend.UserName = userName.Trim().ToUpper(); userBackend.Domain = domain; userBackend.CodiceFiscale = codicefiscale.Trim().ToUpper(); userBackend.UserId = long.Parse(user.Id); bus.Update(userBackend); model.success = "true"; } else { model.success = "false"; model.message = "Utente non aggiornato"; return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } } catch (Exception ex) { if (ex.GetType() != typeof(ManagedException)) { ManagedException mEx = new ManagedException("Errore aggiornamento utente. Dettaglio: " + ex.Message + "StackTrace: " + ((ex.StackTrace != null) ? ex.StackTrace.ToString() : " vuoto "), "ERR322", string.Empty, string.Empty, ex.InnerException); ErrorLogInfo err = new ErrorLogInfo(mEx); log.Error(err); model.success = "false"; model.message = string.Format("Utente {0} non correttamente aggiornato", userName); return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } model.success = "false"; model.message = ex.Message; return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); }
public HttpResponseMessage GetOwnProfile() { BackendUserService buservice = new BackendUserService(); UsersMailModel model = new UsersMailModel(); string UserName = MySecurityProvider.CurrentPrincipal.MyIdentity.UserName; BackendUser _bUser = null; try { if (!(SessionManager <BackendUser> .exist(Com.Delta.Web.Session.SessionKeys.BACKEND_USER))) { _bUser = (BackendUser)buservice.GetByUserName(MySecurityProvider.CurrentPrincipal.MyIdentity.UserName); SessionManager <BackendUser> .set(Com.Delta.Web.Session.SessionKeys.BACKEND_USER, _bUser); } else { _bUser = SessionManager <BackendUser> .get(Com.Delta.Web.Session.SessionKeys.BACKEND_USER); } if (_bUser != null) { OwnProfile p = new OwnProfile(); p.Cognome = _bUser.Cognome; p.Department = _bUser.Department; p.Domain = _bUser.Domain; p.CodiceFiscale = _bUser.CodiceFiscale; if (_bUser.MappedMails != null && _bUser.MappedMails.Count > 0) { p.MappedMails = new List <CasellaMail>(); List <CasellaMail> l = new List <CasellaMail>(); foreach (BackEndUserMailUserMapping b in _bUser.MappedMails) { CasellaMail m = new CasellaMail { idMail = b.Id.ToString(), emailAddress = b.Casella }; l.Add(m); } p.MappedMails = l; } p.Nome = _bUser.Nome; p.RoleMail = _bUser.RoleMail; p.RoleMailDesription = (_bUser.RoleMail == 0) ? "Utente" : "Amministratore"; p.UserId = (int)_bUser.UserId; p.UserName = _bUser.UserName; p.UserRole = _bUser.UserRole; p.Password = string.Empty; var roleStore = new RoleStore(); var roles = roleStore.GetRolesByUserId((int)_bUser.UserId).Result; p.Roles = roles; model.OwnProfiles = new List <OwnProfile>(); model.OwnProfiles.Add(p); model.success = "true"; model.Totale = "1"; } else { model.success = "false"; model.message = "Utente non collegato a caselle di posta"; } } catch (Exception ex) { if (!ex.GetType().Equals(typeof(ManagedException))) { ErrorLogInfo error = new ErrorLogInfo(); error.freeTextDetails = ex.Message; error.logCode = "ERR_U002"; error.loggingAppCode = "PEC"; error.loggingTime = System.DateTime.Now; error.uniqueLogID = System.DateTime.Now.Ticks.ToString(); log.Error(error); model.message = ex.Message; model.success = "false"; } else { model.message = ex.Message; model.success = "false"; } } return(this.Request.CreateResponse <UsersMailModel>(HttpStatusCode.OK, model)); }