Exemple #1
0
        private bool isAlreadyExists(UnitOfWork unitOfWork, string EmailID)
        {
            try
            {
                TradeBulkEntities db = new TradeBulkEntities();
                var varible          = from x in db.Users select x;
                var v2 = from x in db.UserDetails select x;


                GenericRepository <User> ApprvedUserRepository;
                ApprvedUserRepository = unitOfWork.GetRepoInstance <User>();


                if (ApprvedUserRepository.GetAllExpressions(x => x.Email == EmailID).Count <User>() == 0)
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                LogHelper.WriteErrorLog(ex);
            }
            return(true);
        }
Exemple #2
0
        public void ApprovedUser(string Description, string Id)
        {
            try
            {
                using (UnitOfWork unitOfWork = new UnitOfWork())
                {
                    GenericRepository <UserDetail>        uDetails;
                    GenericRepository <UserDetailAddress> uDetailsAddress;
                    long id = Convert.ToInt64(Id);
                    uDetailsAddress = unitOfWork.GetRepoInstance <UserDetailAddress>();
                    Expression <Func <UserDetailAddress, object> >   parameter1     = v => v.UserDetail;
                    Expression <Func <UserDetailAddress, object> >   parameter2     = v => v.Address;
                    Expression <Func <UserDetailAddress, object> >   parameter3     = v => v.Address.Phone;
                    Expression <Func <UserDetailAddress, object> >   parameter4     = v => v.Address.Email;
                    Expression <Func <UserDetailAddress, object> >[] parameterArray = new Expression <Func <UserDetailAddress, object> >[] { parameter1, parameter2, parameter3, parameter4 };
                    IEnumerable <UserDetailAddress> ListUser = uDetailsAddress.GetAllExpressions(x => (x.UserDetail.IsApproved == null && x.UserDetailPID == id), null, naProperties: parameterArray);
                    string EmailID = ListUser.FirstOrDefault <UserDetailAddress>().Address.Email.ID;

                    if (!isAlreadyExists(unitOfWork, EmailID))
                    {
                        //check for the emil is not already exists

                        uDetails = unitOfWork.GetRepoInstance <UserDetail>();

                        UserDetail ApprovedUser = uDetails.GetByID(Convert.ToInt64(Id));
                        ApprovedUser.IsActive      = true;
                        ApprovedUser.IsApproved    = true;
                        ApprovedUser.ApproveReason = Description;
                        ApprovedUser.ApprovedDate  = DateTime.Now;

                        string strPassword = GenrateRandomPassword();
                        //User will be created here
                        GenericRepository <User> ApprvedUserRepository;
                        ApprvedUserRepository = unitOfWork.GetRepoInstance <User>();

                        User user = new User();
                        user.FirstName      = ApprovedUser.FirstName;
                        user.Email          = EmailID;
                        user.ActivationCode = Guid.NewGuid();
                        user.IsActive       = true;
                        user.LastName       = ApprovedUser.LastName;
                        user.Password       = Security.Encrypt(strPassword);
                        GenericRepository <Role> rolesrepo = unitOfWork.GetRepoInstance <Role>();
                        //user.Roles = rolesrepo.GetAllExpressions(x => x.RoleId == 2, null, null, null).ToList<Role>();//Customer Role i being assigned
                        string CrypticInfo = new string((Convert.ToInt64(DateTime.Now.ToString("yyyy")) + ApprovedUser.UserdetailPID).ToString().Substring(0, 3).Reverse().ToArray());
                        user.Username     = ApprovedUser.FirstName.Substring(0, 4).ToUpper() + CrypticInfo;
                        CrypticInfo       = string.Empty;
                        CrypticInfo       = new string((Convert.ToInt64(((DateTime)ApprovedUser.DateofBirth).ToString("yyyy")) + ApprovedUser.UserdetailPID).ToString().Substring(0, 3).Reverse().ToArray());
                        user.UserCode     = ApprovedUser.FirstName.Substring(0, 4).ToUpper() + CrypticInfo;
                        ApprovedUser.User = user;
                        ApprvedUserRepository.Insert(user);


                        unitOfWork.SaveChanges();
                        //Password will be generated here
                        //SendEmail(ToAddress,UserName,Password);
                        //Mail will be send from here
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.WriteErrorLog(ex);
            }
        }