Example #1
0
        public List <UserWrapper> FindAllStatic()
        {
            if (userWrappers != null)
            {
                return(userWrappers);
            }

            using (var dbContext = new HamidDbContext())
            {
                userWrappers = (from user in dbContext.Users
                                join userStatus in dbContext.UserStatus
                                on user.FK_UserStatus_ID equals userStatus.ID
                                select new UserWrapper()
                {
                    FullName = user.FullName,
                    UserName = user.UserName,
                    ID = user.ID,
                    Email = user.Email,
                    IsAdminDescrp = user.IsAdmin ? "بلی" : "خیر",
                    UserStatusDescrp = userStatus.Descrp
                }).ToList();

                return(userWrappers);
            }
        }
Example #2
0
 public List <UserStatus> FindAll()
 {
     using (var dbContext = new HamidDbContext())
     {
         var result = dbContext.UserStatus.ToList();
         return(result);
     }
 }
Example #3
0
 /// <summary>
 /// برگرداندن نام فارسی دسترسی
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public string GetAccessNameFaByID(int id)
 {
     using (var context = new HamidDbContext())
     {
         var result = context.Accesses.Where(e => e.ID == id).Select(e => e.AccessNameFa).FirstOrDefault();
         return(result);
     }
 }
Example #4
0
 /// <summary>
 /// حذف دسترسی
 /// </summary>
 /// <param name="id"></param>
 public void DeleteAccess(int id)
 {
     using (var context = new HamidDbContext())
     {
         //Remove All childs of input access and input access itself
         context.Accesses.RemoveRange(context.Accesses.Where(e => e.ParentID == id || e.ID == id).ToList());
         context.SaveChanges();
     }
 }
Example #5
0
        /// <summary>
        /// درج دسترسی
        /// </summary>
        /// <param name="input"></param>
        public void InsertAccess(Access input)
        {
            Validate(input);

            using (var context = new HamidDbContext())
            {
                context.Accesses.Add(input);
                context.SaveChanges();
            }
        }
Example #6
0
        public void Add(User model)
        {
            Validate(model);

            using (var dbContext = new HamidDbContext())
            {
                model.EmailVerificationID = Guid.Empty;
                //model.FK_UserStatus_ID = 1;
                dbContext.Users.Add(model);
                dbContext.SaveChanges();
            }
        }
Example #7
0
 public User Find(int id)
 {
     using (var dbContext = new HamidDbContext())
     {
         var result = dbContext.Users.Where(e => e.ID == id).FirstOrDefault();
         if (result == null)
         {
             throw new BusinessException("کاربر یافت نشد");
         }
         return(result);
     }
 }
Example #8
0
 public void Delete(int id)
 {
     using (var dbContext = new HamidDbContext())
     {
         var dbModel = dbContext.Users.Where(e => e.ID == id).FirstOrDefault();
         if (dbModel == null)
         {
             throw new BusinessException("کاربر یافت نشد");
         }
         dbContext.Users.Remove(dbModel);
         dbContext.SaveChanges();
     }
 }
Example #9
0
 /// <summary>
 /// ویرایش دسترسی
 /// </summary>
 /// <param name="input"></param>
 public void UpdateAccess(Access input)
 {
     Validate(input);
     using (var context = new HamidDbContext())
     {
         var access = context.Accesses.Where(e => e.ID == input.ID).FirstOrDefault();
         access.AccessName   = input.AccessName;
         access.AccessNameFa = input.AccessNameFa;
         access.IsMenu       = input.IsMenu;
         access.Order        = input.Order;
         access.Url          = input.Url;
         context.SaveChanges();
     }
 }
Example #10
0
        public User Register(UserWrapper model)
        {
            if (string.IsNullOrWhiteSpace(model.Email) ||
                string.IsNullOrWhiteSpace(model.Password) ||
                string.IsNullOrWhiteSpace(model.FullName) ||
                string.IsNullOrWhiteSpace(model.RePassword) ||
                string.IsNullOrWhiteSpace(model.UserName)
                )
            {
                throw new BusinessException("برخی از فیلد ها خالی هستند");
            }


            if (model.Password != model.RePassword)
            {
                throw new BusinessException("کلمه عبور و تکرار آن با هم برابر نیستند");
            }

            var user = new User()
            {
                Email = model.Email,
                EmailVerificationID = Guid.NewGuid(),
                FullName            = model.FullName,
                IsAdmin             = false,
                Password            = model.Password,
                FK_UserStatus_ID    = 0,
                UserName            = model.UserName
            };

            using (var context = new HamidDbContext())
            {
                if (context.Users.Where(e => e.UserName == model.UserName).Count() > 0)
                {
                    throw new BusinessException("نام کاربری تکراری است");
                }

                if (context.Users.Where(e => e.Email == model.Email).Count() > 0)
                {
                    throw new BusinessException("ایمیل تکراری است");
                }

                context.Users.Add(user);

                context.SaveChanges();

                return(user);
            }
        }
Example #11
0
        public JqGridOutput GetData(JqGridInput input)
        {
            //Searching is not implemented


            using (var dbContext = new HamidDbContext())
            {
                var items      = dbContext.Users.AsQueryable();
                var totalItems = items.Count();



                //------------- Sort ---------------
                if (!string.IsNullOrEmpty(input.SortIndex))
                {
                    switch (input.SortIndex)
                    {
                    case "ID":
                        items = input.SortOrder == "asc" ? items.OrderBy(e => e.ID) : items.OrderByDescending(e => e.ID);
                        break;

                    case "FullName":
                        items = input.SortOrder == "asc" ? items.OrderBy(e => e.FullName) : items.OrderByDescending(e => e.FullName);
                        break;

                    case "UserName":
                        items = input.SortOrder == "asc" ? items.OrderBy(e => e.UserName) : items.OrderByDescending(e => e.UserName);
                        break;
                    }
                }
                else
                {
                    items = items.OrderBy(e => e.ID);
                }
                //--------------------------------------


                var output = new JqGridOutput();
                output.Page    = input.PageNumber;
                output.Total   = (int)Math.Ceiling((double)totalItems / input.PageSize);
                output.Records = totalItems;
                output.Rows    = items.Skip((input.PageNumber - 1) * input.PageSize).Take(input.PageSize).ToList();


                return(output);
            }
        }
Example #12
0
        public void ActivateUser(string verificationID)
        {
            using (var myContext = new HamidDbContext())
            {
                var user = myContext.Users.Where(e => e.EmailVerificationID.ToString().Replace("-", "") == verificationID).FirstOrDefault();
                if (user == null)
                {
                    throw new BusinessException("کد فعال سازی معتبر نمیباشد");
                }

                else
                {
                    user.FK_UserStatus_ID = 1;
                    myContext.SaveChanges();
                }
            }
        }
Example #13
0
        public User Login(UserWrapper model)
        {
            if (string.IsNullOrWhiteSpace(model.UserNameOrEmail) || string.IsNullOrWhiteSpace(model.Password))
            {
                throw new BusinessException("برخی از فیلد ها خالی هستند");
            }

            using (var context = new HamidDbContext())
            {
                var result = context.Users.Where(e => (e.UserName == model.UserNameOrEmail || e.Email == model.UserNameOrEmail) && e.Password == model.Password).FirstOrDefault();
                if (result == null)
                {
                    throw new BusinessException("اطلاعات کاربری اشتباه است");
                }
                return(result);
            }
        }
Example #14
0
        public void Edit(User model)
        {
            Validate(model);

            using (var dbContext = new HamidDbContext())
            {
                var dbModel = dbContext.Users.Where(e => e.ID == model.ID).FirstOrDefault();
                if (dbModel == null)
                {
                    throw new BusinessException("کاربر یافت نشد");
                }
                dbModel.Email            = model.Email;
                dbModel.FK_UserStatus_ID = model.FK_UserStatus_ID;
                dbModel.FullName         = model.FullName;
                dbModel.UserName         = model.UserName;
                dbModel.IsAdmin          = model.IsAdmin;
                dbModel.Password         = model.Password;
                dbContext.SaveChanges();
            }
        }
Example #15
0
 /// <summary>
 /// لود دسترسی
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public AccessWrapper LoadAccessWrapper(int id)
 {
     using (var context = new HamidDbContext())
     {
         var model = (from access in context.Accesses
                      join accessParent in context.Accesses
                      on access.ParentID equals accessParent.ID
                      where access.ID == id
                      select new AccessWrapper
         {
             //ID = access.ID,
             AccessName = access.AccessName,
             AccessNameFa = access.AccessNameFa,
             IsMenu = access.IsMenu,
             Order = access.Order,
             Url = access.Url,
             ParentAccessName = accessParent.AccessNameFa
         }
                      ).FirstOrDefault();
         return(model);
     }
 }
Example #16
0
        public UserWrapper ForgetPassword(string userNameOrEmail)
        {
            using (var context = new HamidDbContext())
            {
                var user = context.Users.Where(e => e.UserName == userNameOrEmail || e.Email == userNameOrEmail).FirstOrDefault();
                if (user == null)
                {
                    throw new BusinessException("کاربری با این مشخصات یافت نشد");
                }

                var random      = new Random((int)System.DateTime.Now.ToBinary());
                var newPassword = random.Next(1000, int.MaxValue).ToString();
                user.Password = newPassword;
                context.SaveChanges();
                //return new UserForgetPasswordEmailWrapper
                return(new UserWrapper
                {
                    FullName = user.FullName,
                    NewPassword = newPassword,
                    Email = user.Email
                });
            }
        }
Example #17
0
        public static void Log(string logName, string logText, byte logType = 0, byte logPriority = 0)
        {
            try
            {
                var userSession = (Hamid.Model.Common.UserSession)System.Web.HttpContext.Current.Session["UserSession"];

                using (var context = new HamidDbContext())
                {
                    context.Logs.Add(new Model.Table.Log
                    {
                        LogDate     = DateTime.Now,
                        LogName     = logName,
                        LogPriority = logPriority,
                        LogText     = logText,
                        LogType     = logType,
                        UserCode    = userSession != null ? userSession.UserID : 0
                    });
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
            }
        }