示例#1
0
        public OrganizationResponse GetOrganizationInfo(OrganizationRequest request)
        {
            try
            {
                Epi.Web.BLL.Organization organizationImplementation = new Epi.Web.BLL.Organization(_organizationDao);

                OrganizationResponse response = new OrganizationResponse();

                if (!ValidRequest(request, response, Validate.All))
                {
                    return(response);
                }
                OrganizationBO organizationBO = organizationImplementation.GetOrganizationByKey(request.Organization.OrganizationKey);

                response.OrganizationList = new List <OrganizationDTO>();

                response.OrganizationList.Add(organizationBO.ToOrganizationDTO());

                return(response);
            }
            catch (Exception ex)
            {
                throw new FaultException <CustomFaultException>(new CustomFaultException(ex));
            }
        }
示例#2
0
        public UserResponse GetUserInfo(UserRequest request)
        {
            UserResponse response = new UserResponse();

            Epi.Web.BLL.User userImplementation = new Epi.Web.BLL.User(_userDao);

            UserBO         userBO = request.User.ToUserBO();
            OrganizationBO orgBO  = request.Organization.ToOrganizationBO();
            UserBO         result = new UserBO();

            if (!request.IsAuthenticated)
            {
                result = userImplementation.GetUserByUserIdAndOrgId(userBO, orgBO);
            }
            else
            {
                result = userImplementation.GetUserByEmail(userBO);
            }

            if (result != null)
            {
                response.User = new List <UserDTO>();
                response.User.Add(result.ToUserDTO());
            }

            return(response);
        }
        public Organization Update(Organization obj)
        {
            OrganizationBO organizationBO = new OrganizationBO(obj);

            organizationDao.Update(organizationBO);
            return(obj);
        }
示例#4
0
        private OrganizationBO GetOrganizationObjByKey(string OrganizationKey)
        {
            OrganizationKey = Epi.Web.Enter.Common.Security.Cryptography.Encrypt(OrganizationKey);
            OrganizationBO result = this.OrganizationDao.GetOrganizationInfoByKey(OrganizationKey);

            return(result);
        }
        public bool UpdateUserInfo(UserBO User, OrganizationBO OrgBO)
        {
            try
            {
                using (var Context = DataObjectFactory.CreateContext())
                {
                    User user = Context.Users.First(x => x.UserID == User.UserId);
                    // user.UserName = User.UserName;
                    user.EmailAddress = User.EmailAddress;
                    user.FirstName    = User.FirstName;
                    user.LastName     = User.LastName;

                    UserOrganization UserOrganization = Context.UserOrganizations.First(x => x.OrganizationID == OrgBO.OrganizationId && x.UserID == User.UserId);
                    UserOrganization.RoleId = User.Role;
                    UserOrganization.Active = User.IsActive;

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
示例#6
0
        private OrganizationBO GetOrganizationObjByKey(string OrganizationKey)
        {
            OrganizationKey = Cryptography.Encrypt(OrganizationKey);
            OrganizationBO result = this.OrganizationDao.GetOrganizationInfoByKey(OrganizationKey);

            return(result);
        }
示例#7
0
文件: Account.cs 项目: fgma75/epiinfo
        private void NotifyAdminAccountCreation(AdminBO AdminBO, OrganizationBO Organization)
        {
            string NotifyAdmin = ConfigurationManager.AppSettings["NOTIFY_ADMIN_IS_ENABLED"];
            string AdminEmail  = ConfigurationManager.AppSettings["NOTIFY_ADMIN_EMAIL"];

            string strOrgKeyDecrypted = Epi.Web.Common.Security.Cryptography.Decrypt(Organization.OrganizationKey.ToString());
            // List<AdminBO> AdminBOList = new List<AdminBO>();
            List <string> AdminList = new List <string>();

            if (NotifyAdmin.ToUpper() == "TRUE")
            {
                AdminList.Add(AdminEmail);
            }

            //AdminBOList = GetOrganizationAdmins(SurveyInfo);
            //foreach (var item in AdminBOList)
            //    {
            //  AdminList.Add(item.AdminEmail);
            //    }

            Epi.Web.Common.Email.Email Email = new Web.Common.Email.Email();
            Email.Body    = "Organization Name:" + Organization.Organization + "\nOrganization Key: " + strOrgKeyDecrypted + "\nAdmin Email: " + AdminBO.AdminEmail + "\n\nThank you.";
            Email.From    = ConfigurationManager.AppSettings["EMAIL_FROM"];
            Email.To      = AdminList;
            Email.Subject = "An organization account has been created.";
            if (AdminList.Count() > 0)
            {
                bool success = Epi.Web.Common.Email.EmailHandler.SendMessage(Email);
            }
        }
        public bool InsertUser(UserBO User, OrganizationBO OrgBO)
        {
            try
            {
                User.UGuid = Guid.NewGuid();
                using (var Context = DataObjectFactory.CreateContext())
                {
                    var Org = Context.Organizations.Where(x => x.OrganizationId == OrgBO.OrganizationId).Single();

                    Context.Organizations.Attach(Org);



                    Context.Users.Add(Mapper.ToUserEntity(User));

                    UserOrganization UserOrganizationEntity = Mapper.ToUserOrganizationEntity(User, OrgBO);
                    Context.UserOrganizations.Add(UserOrganizationEntity);



                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
示例#9
0
        public bool SetUserInfo(UserRequest UserInfo)
        {
            OrganizationRequest OrganizationRequest = new OrganizationRequest();

            OrganizationRequest.Organization.OrganizationKey = UserInfo.Organization.OrganizationKey;
            bool IsSet = false;

            try
            {
                Epi.Web.Interfaces.DataInterfaces.IUserDao IUserDao = new EF.EntityUserDao();
                Epi.Web.BLL.User Implementation = new Epi.Web.BLL.User(IUserDao);

                Epi.Web.Interfaces.DataInterfaces.IOrganizationDao IOrganizationDao = new EF.EntityOrganizationDao();
                Epi.Web.BLL.Organization OrgImplementation = new Epi.Web.BLL.Organization(IOrganizationDao);


                OrganizationBO OrganizationBO = OrgImplementation.GetOrganizationByKey(UserInfo.Organization.OrganizationKey);

                IsSet = Implementation.SetUserInfo(Mapper.ToUserBO(UserInfo.User), OrganizationBO);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(IsSet);
        }
        public ActionResult Organization(OrganizationViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    OrganizationBO organization = new OrganizationBO
                    {
                        Name      = model.FullName,
                        ShortName = model.ShortName,
                        Status    = Entity.Enums.Status.ACTIVE,
                        Audit     = new Entity.Entities.Audit(CurrentUserId)
                    };
                    zeus.organizationManager.Add(organization);

                    return(View());
                }
                return(View());
            }
            catch (Exception ex)
            {
                LogError(ex, CurrentUserId);
                return(View(model));
            }
        }
示例#11
0
        public OrganizationBO GetOrganizationByOrgId(int OrganizationId)
        {
            OrganizationBO OrganizationBO = new OrganizationBO();

            try
            {
                using (var Context = DataObjectFactory.CreateContext())
                {
                    var Query = from response in Context.Organizations
                                where response.OrganizationId == OrganizationId
                                select response;

                    if (Query.Count() > 0)
                    {
                        OrganizationBO = Mapper.Map(Query.SingleOrDefault());
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            return(OrganizationBO);
        }
示例#12
0
        /// <summary>
        /// Checks whether a particular organization name already exists in database
        /// </summary>
        /// <param name="key"></param>
        /// <param name="organizationName"></param>
        /// <returns></returns>
        public bool OrganizationNameExists(string organizationName, string key, string operation)
        {
            bool orgExists = false;

            key = Epi.Web.Enter.Common.Security.Cryptography.Encrypt(key);
            List <OrganizationBO> orgBOList = GetOrganizationNames();

            //first find if the whether the organization name exists in the database
            foreach (OrganizationBO oBo in orgBOList)
            {
                if (oBo.Organization.ToLower() == organizationName.ToLower())
                {
                    orgExists = true;
                }
            }

            if (operation == "Update")
            {
                //for update if we are updating the organization name to the same value, we should let it pass
                //so turning the value to false
                OrganizationBO result = this.OrganizationDao.GetOrganizationInfoByKey(key);
                if (organizationName.ToLower() == result.Organization.ToLower())
                {
                    orgExists = false;
                }
            }



            return(orgExists);
        }
示例#13
0
        public OrganizationBO GetOrganizationInfoByKey(string key)
        {
            OrganizationBO OrganizationBO = new OrganizationBO();

            try
            {
                using (var Context = DataObjectFactory.CreateContext())
                {
                    var Query = (from response in Context.Organizations
                                 where response.OrganizationKey == key
                                 select response);
                    if (Query.Count() > 0)
                    {
                        OrganizationBO = Mapper.Map(Query.SingleOrDefault());
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            return(OrganizationBO);
        }
示例#14
0
        public bool UpdateUser(UserBO User, OrganizationBO OrgBO)
        {
            bool success = false;

            switch (User.Operation)
            {
            case OperationMode.UpdatePassword:
                string password = string.Empty;

                if (User.ResetPassword)
                {
                    password           = User.PasswordHash;
                    User.ResetPassword = false;
                }
                else
                {
                    PasswordGenerator passGen = new PasswordGenerator();
                    password           = passGen.Generate();
                    User.ResetPassword = true;
                }


                string         KeyForUserPasswordSalt = ReadSalt();
                PasswordHasher PasswordHasher         = new Web.Enter.Common.Security.PasswordHasher(KeyForUserPasswordSalt);
                string         salt = PasswordHasher.CreateSalt(User.UserName);

                User.PasswordHash = PasswordHasher.HashPassword(salt, password);
                success           = UserDao.UpdateUserPassword(User);

                if (success)
                {
                    List <string> EmailList = new List <string>();
                    EmailList.Add(User.UserName);
                    Email email = new Email()
                    {
                        To       = EmailList,
                        Password = password
                    };

                    if (User.ResetPassword)
                    {
                        success = SendEmail(email, EmailCombinationEnum.ResetPassword);
                    }
                    else
                    {
                        success = SendEmail(email, EmailCombinationEnum.PasswordChanged);
                    }
                }
                return(success);

            case OperationMode.UpdateUserInfo:
                success = UserDao.UpdateUserInfo(User, OrgBO);
                return(success);

            default:
                break;
            }
            return(false);
        }
示例#15
0
        public bool IsUserExistsInOrganizaion(UserBO user, OrganizationBO orgBO)
        {
            bool exists = false;

            exists = _userDao.IsUserExistsInOrganizaion(user, orgBO);

            return(exists);
        }
        public bool IsUserExistsInOrganizaion(UserBO User, OrganizationBO OrgBO)
        {
            bool Exists = false;

            Exists = UserDao.IsUserExistsInOrganizaion(User, OrgBO);

            return(Exists);
        }
示例#17
0
        public OrganizationBO GetOrganizationById(int OrganizationId)
        {
            OrganizationBO result = this.OrganizationDao.GetOrganizationInfoById(OrganizationId);
            string         orgKey = Cryptography.Decrypt(result.OrganizationKey);

            result.OrganizationKey = orgKey;
            return(result);
        }
        public UserBO GetUserByUserIdAndOrgId(UserBO UserBO, OrganizationBO OrgBO)
        {
            UserBO UserResponseBO;

            UserResponseBO = UserDao.GetUserByUserIdAndOrgId(UserBO, OrgBO);

            return(UserResponseBO);
        }
示例#19
0
        //public bool IsUserExistsInOrganizaion(UserBO User, OrganizationBO OrgBO)
        //{
        //    bool Exists = false;
        //    Exists = UserDao.IsUserExistsInOrganizaion(User, OrgBO);

        //    return Exists;
        //}

        //private string ReadSalt()
        //{
        //    return ConfigurationManager.AppSettings["KeyForUserPasswordSalt"];
        //}

        public UserBO GetUserByUserId(UserBO User, OrganizationBO Org)
        {
            UserBO UserResponseBO;

            UserResponseBO          = UserDao.GetUserByUserId(User);
            UserResponseBO.IsActive = UserDao.IsUserActive(User.UserId, Org.OrganizationId);

            return(UserResponseBO);
        }
示例#20
0
 public static Organization ToEF(OrganizationBO pBo)
 {
     return(new Organization
     {
         Organization1 = pBo.Organization,
         IsEnabled = pBo.IsEnabled,
         OrganizationKey = pBo.OrganizationKey,
     });
 }
示例#21
0
 public static Organization ToOrganization(OrganizationBO organizationBO)
 {
     return(new Organization
     {
         Organization1 = organizationBO.Organization,
         IsEnabled = organizationBO.IsEnabled,
         OrganizationKey = organizationBO.OrganizationKey
     });
 }
示例#22
0
        public bool UpdateUser(UserAuthenticationRequest request)
        {
            Epi.Web.BLL.User userImplementation = new Epi.Web.BLL.User(_userDao);

            UserBO         UserBO = request.User.ToUserBO();
            OrganizationBO OrgBO  = new OrganizationBO();

            return(userImplementation.UpdateUser(UserBO, OrgBO));
        }
示例#23
0
 public static OrganizationDTO ToDataTransferObjects(OrganizationBO pBO)
 {
     return(new OrganizationDTO
     {
         //  AdminId = pBO.AdminId,
         IsEnabled = pBO.IsEnabled,
         Organization = pBO.Organization,
         OrganizationKey = pBO.OrganizationKey
     });
 }
示例#24
0
        public static UserOrganization ToUserOrganizationEntity(UserBO User, OrganizationBO Organization)
        {
            UserOrganization UserOrganization = new UserOrganization();

            UserOrganization.Active         = User.IsActive;
            UserOrganization.RoleId         = User.Role;
            UserOrganization.OrganizationID = Organization.OrganizationId;


            return(UserOrganization);
        }
示例#25
0
文件: Mapper.cs 项目: fgma75/epiinfo
        internal static UserOrganization ToUserOrganizationEntity(UserBO User, OrganizationBO Organization)
        {
            UserOrganization UserOrganization = new UserOrganization();

            UserOrganization.Active         = User.IsActive;
            UserOrganization.RoleId         = User.Role;
            UserOrganization.OrganizationID = Organization.OrganizationId;
            UserOrganization.UserID         = User.UserId;
            //UserOrganization.Role = User.Role;
            return(UserOrganization);
        }
        public bool UpdateUser(UserAuthenticationRequest request)
        {
            Epi.Web.Enter.Interfaces.DataInterfaces.IDaoFactory entityDaoFactory = new EF.EntityDaoFactory();
            Epi.Web.Enter.Interfaces.DataInterface.IUserDao     IUserDao         = entityDaoFactory.UserDao;
            Epi.Web.BLL.User Implementation = new Epi.Web.BLL.User(IUserDao);

            UserBO         UserBO = Mapper.ToUserBO(request.User);
            OrganizationBO OrgBO  = new OrganizationBO();

            return(Implementation.UpdateUser(UserBO, OrgBO));
        }
 public static OrganizationDTO ToOrganizationDTO(this OrganizationBO organizationBO)
 {
     return(new OrganizationDTO
     {
         IsEnabled = organizationBO.IsEnabled,
         IsHostOrganization = organizationBO.IsHostOrganization,
         Organization = organizationBO.Organization,
         OrganizationKey = Epi.Common.Security.Cryptography.Decrypt(organizationBO.OrganizationKey),
         OrganizationId = organizationBO.OrganizationId
     });
 }
示例#28
0
 public static OrganizationDTO ToDataTransferObjects(OrganizationBO pBO)
 {
     return(new OrganizationDTO
     {
         //  AdminId = pBO.AdminId,
         IsEnabled = pBO.IsEnabled,
         Organization = pBO.Organization,
         OrganizationKey = Epi.Web.Enter.Common.Security.Cryptography.Decrypt(pBO.OrganizationKey),
         OrganizationId = pBO.OrganizationId
     });
 }
示例#29
0
        public bool UpdateUserInfo(UserRequest UserInfo)
        {
            Epi.Web.Interfaces.DataInterfaces.IDaoFactory entityDaoFactory = new EF.EntityDaoFactory();
            Epi.Web.Interfaces.DataInterfaces.IUserDao    IUserDao         = new EF.EntityUserDao();
            Epi.Web.BLL.User Implementation = new Epi.Web.BLL.User(IUserDao);

            var            UserBO = Mapper.ToUserBO(UserInfo.User);
            OrganizationBO OrgBO  = new OrganizationBO();

            OrgBO = Mapper.ToBusinessObject(UserInfo.Organization);
            return(Implementation.UpdateUser(UserBO, OrgBO));
        }
示例#30
0
 public virtual void Update(OrganizationBO organization)
 {
     if (organization == null)
     {
         throw new ArgumentNullException("organization", "Organization is null");
     }
     else
     {
         db.organizationRepository.Edit(organization);
         unitofWork.Commit();
     }
 }