Exemplo n.º 1
0
        /// <summary>
        /// Function to delete entity whose primary key is passes.
        /// </summary>
        /// <param name="pk">Primary key of entity to be deleted</param>
        /// <param name="context">context to maintain transaction</param>
        public void Delete(object pk, AgroAppEntities context)
        {
            DbSet <T> table    = context.Set <T>();
            T         existing = table.Find(pk);

            context.Entry(existing).State = EntityState.Deleted;
        }
Exemplo n.º 2
0
        public async Task <ActionResult> ChangePassword([DataSourceRequest] DataSourceRequest request, ChangePasswordModel model)
        {
            int    result = 0;
            string message;

            try
            {
                var UserIdParam = new SqlParameter
                {
                    ParameterName = "UserId",
                    DbType        = DbType.Int32,
                    Value         = model.CurrentUserId
                };
                var PasswordParam = new SqlParameter
                {
                    ParameterName = "Password",
                    DbType        = DbType.String,
                    Value         = model.NewPassword
                };

                AgroAppEntities context = new AgroAppEntities();

                result = context.Database.SqlQuery <int>("SP_User_ChangePassword @UserId,@Password", UserIdParam, PasswordParam).FirstOrDefault();
            }
            catch (Exception ex)
            {
                return(Json(new { Message = CommonHelper.GetErrorMessage(ex), IsError = Convert.ToString((int)Enums.NotifyType.Error) }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new { id = result }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Function to update entity.
        /// </summary>
        /// <param name="entity">entity to be updated</param>
        /// <param name="context">context to maintain transaction</param>
        public void Update(T entity, AgroAppEntities context)
        {
            DbSet <T> table = context.Set <T>();

            table.Attach(entity);
            context.Entry(entity).State = EntityState.Modified;
        }
Exemplo n.º 4
0
 /// <summary>
 /// Function to insert entity.
 /// </summary>
 /// <param name="entity">entity to be inserted</param>
 public string Insert(T entity)
 {
     try
     {
         using (AgroAppEntities context = BaseContext.GetDbContext())
         {
             DbSet <T> table = context.Set <T>();
             table.Add(entity);
             context.SaveChanges();
             return(string.Empty);
         }
     }
     catch (DbEntityValidationException dbEx)
     {
         string messages = String.Empty;
         foreach (DbEntityValidationResult entityErr in dbEx.EntityValidationErrors)
         {
             foreach (DbValidationError error in entityErr.ValidationErrors)
             {
                 //Console.WriteLine("Error Property Name {0} : Error Message: {1}",
                 //                    error.PropertyName, error.ErrorMessage);
                 messages = messages + "<br/>" + string.Join("<br/>", error.ErrorMessage);
             }
         }
         return(messages);
     }
     catch (Exception ex)
     {
         return(CommonHelper.GetErrorMessage(ex));
     }
 }
Exemplo n.º 5
0
 public static List <RoleReadModel> RoleList()
 {
     using (AgroAppEntities Context = new AgroAppEntities())
     {
         return(Context.Database.SqlQuery <RoleReadModel>("SP_RoleList").ToList());
     }
 }
Exemplo n.º 6
0
        public ActionResult Index(LoginModel model)
        {
            //if (!ModelState.IsValid)
            //{
            //    return View("Index", model);
            //}
            var UserNameParam = new SqlParameter
            {
                ParameterName = "UserName",
                DbType        = DbType.String,
                Value         = model.UserName
            };
            var PasswordParam = new SqlParameter
            {
                ParameterName = "Password",
                DbType        = DbType.String,
                Value         = model.Password
            };

            UserModel logedInUser = new UserModel();

            using (AgroAppEntities obj = new AgroAppEntities())
            {
                try
                {
                    var List = obj.Database.SqlQuery <UserModel>("Sp_UserLogin @UserName,@Password", UserNameParam, PasswordParam).FirstOrDefault();
                    logedInUser = List;
                }
                catch (Exception ex)
                {
                    return(View());
                }
            }


            if (logedInUser == null)
            {
                ModelState.AddModelError("UserName", "Invalid Login Credentials.");
                return(View(model));
            }

            if (!logedInUser.IsActive)
            {
                ModelState.AddModelError("UserName", string.Format("User '{0}' is no longer active.", logedInUser.UserName));
                return(View(model));
            }

            SessionHelper.UserId                = Convert.ToInt32(logedInUser.UserId);
            SessionHelper.WelcomeUser           = logedInUser.Name;
            SessionHelper.RoleId                = logedInUser.RoleId;
            SessionHelper.Email                 = logedInUser.EmailAddress;
            SessionHelper.Password              = logedInUser.Password;
            SessionHelper.IsSuperAdmin          = logedInUser.IsSuperAdmin;
            SessionHelper.ProfilePic            = logedInUser.Image;
            SessionHelper.UserAccessPermissions = CustomRepository.UserAccessPermissions(SessionHelper.RoleId, logedInUser.IsSuperAdmin);
            FormsService.SignIn(logedInUser.UserName, model.RememberMe);

            return(RedirectToAction("Index", "Home"));
        }
Exemplo n.º 7
0
 /// <summary>
 /// Function to select entity by primary key
 /// </summary>
 /// <param name="pk">Primary key of entity to fetch</param>
 /// <returns></returns>
 public T SelectById(object pk)
 {
     using (AgroAppEntities context = BaseContext.GetDbContext())
     {
         DbSet <T> table = context.Set <T>();
         return(table.Find(pk));
     }
 }
Exemplo n.º 8
0
 /// <summary>
 /// Function to create entity instance
 /// </summary>
 /// <returns>New instance of entity</returns>
 public T CreateEntity()
 {
     using (AgroAppEntities context = BaseContext.GetDbContext())
     {
         DbSet <T> table = context.Set <T>();
         return(table.Create());
     }
 }
Exemplo n.º 9
0
        public static AgroAppEntities GetDbContext()
        {
            AgroAppEntities context = new AgroAppEntities();

            context.Configuration.ProxyCreationEnabled = false;
            ObjectContext objectContext = ((IObjectContextAdapter)context).ObjectContext;

            objectContext.CommandTimeout = int.MaxValue;
            return(context);
        }
Exemplo n.º 10
0
        public ActionResult ResetPassword(ResetPasswordModel userModel)
        {
            if (userModel.ConfirmPassword != userModel.Password)
            {
                ModelState.AddModelError("ConfirmPassword", "Password and Confirm Password must be same.");
                return(View("Index"));
            }

            UserModel model = new UserModel();

            using (AgroAppEntities obj = new AgroAppEntities())
            {
                var UserIdParam = new SqlParameter
                {
                    ParameterName = "UserId",
                    DbType        = DbType.String,
                    Value         = userModel.UserId
                };
                model = obj.Database.SqlQuery <UserModel>("SP_GetUserDetail @UserId", UserIdParam).FirstOrDefault();
            }

            if (model != null)
            {
                model.Token           = null;
                model.TokenExpiryDate = null;
                model.Password        = userModel.Password;

                using (AgroAppEntities obj = new AgroAppEntities())
                {
                    var UserIdParam = new SqlParameter
                    {
                        ParameterName = "UserId",
                        DbType        = DbType.Int32,
                        Value         = model.UserId
                    };
                    var PasswordParam = new SqlParameter
                    {
                        ParameterName = "Password",
                        DbType        = DbType.String,
                        Value         = model.Password
                    };
                    var result = obj.Database.SqlQuery <UserModel>("SP_UpdateUserPassword @UserId,@Password", UserIdParam, PasswordParam).FirstOrDefault();
                }
            }
            if (model.UserId > 0)
            {
                ModelState.AddModelError("ConfirmPassword", "Password reset successful.");
                return(View());
            }
            ModelState.AddModelError("ConfirmPassword", "Something went wrong. Please try again later.");
            return(View());
        }
Exemplo n.º 11
0
 /// <summary>
 /// Function to update entity.
 /// </summary>
 /// <param name="entity">entity to be updated</param>
 public string Update(T entity)
 {
     try
     {
         using (AgroAppEntities context = BaseContext.GetDbContext())
         {
             DbSet <T> table = context.Set <T>();
             table.Attach(entity);
             context.Entry(entity).State = EntityState.Modified;
             context.SaveChanges();
             return(string.Empty);
         }
     }
     catch (Exception ex)
     {
         return(CommonHelper.GetErrorMessage(ex));
     }
 }
Exemplo n.º 12
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="pk">Primary key of entity to be deleted</param>
 public string Delete(object pk)
 {
     try
     {
         using (AgroAppEntities context = BaseContext.GetDbContext())
         {
             DbSet <T> table    = context.Set <T>();
             T         existing = table.Find(pk);
             context.Entry(existing).State = EntityState.Deleted;
             context.SaveChanges();
             return(string.Empty);
         }
     }
     catch (Exception ex)
     {
         return(CommonHelper.GetDeleteException(ex));
     }
 }
Exemplo n.º 13
0
        public async Task <ActionResult> KendoRead([DataSourceRequest] DataSourceRequest request)
        {
            try
            {
                if (!request.Sorts.Any())
                {
                    request.Sorts.Add(new SortDescriptor("RoleName", ListSortDirection.Ascending));
                }
                List <RoleReadModel> model = new List <RoleReadModel>();
                using (AgroAppEntities obj = new AgroAppEntities())
                {
                    model = obj.Database.SqlQuery <RoleReadModel>("SP_GetRoleRightsList").ToList();
                }

                return(Json(model.ToDataSourceResult(request), JsonRequestBehavior.AllowGet));
            }

            catch (Exception ex)
            {
                return(Json(CommonHelper.GetErrorMessage(ex)));
            }
        }
Exemplo n.º 14
0
        public ActionResult ResetPassword(string Token)
        {
            UserModel userModel = new UserModel();

            using (AgroAppEntities obj = new AgroAppEntities())
            {
                var TokenParam = new SqlParameter
                {
                    ParameterName = "Token",
                    DbType        = DbType.String,
                    Value         = Token
                };
                userModel = obj.Database.SqlQuery <UserModel>("SP_CompareTokenForResetPassword", TokenParam).FirstOrDefault();
            }
            if (userModel != null)
            {
                if (userModel.UserId > 0 && userModel.TokenExpiryDate >= DateTime.Now)
                {
                    ResetPasswordModel model = new ResetPasswordModel {
                        UserId = userModel.UserId
                    };
                    return(View(model));
                }

                if (userModel.TokenExpiryDate < DateTime.Now)
                {
                    TempData["Message"] = "Token for reset password has been expired.please try agian to reset password.";
                    return(RedirectToAction("Index", "Login"));
                }
                TempData["Message"] = "Something Went wrong. Please try again later.";
                return(RedirectToAction("Index", "Login"));
            }
            else
            {
                TempData["Message"] = "Link has been expired";
                return(RedirectToAction("Index", "Login"));
            }
        }
Exemplo n.º 15
0
        public static List <UserAccessPermissionModel> UserAccessPermissions(int?roleId = null, bool isSuperAdmin = false)
        {
            List <UserAccessPermissionModel> dataList;

            using (AgroAppEntities context = new AgroAppEntities())
            {
                var UserIdParam = new SqlParameter
                {
                    ParameterName = "RoleId",
                    DbType        = DbType.Int32,
                    Value         = roleId
                };
                var IsSuperAdminParam = new SqlParameter
                {
                    ParameterName = "IsSuperAdmin",
                    DbType        = DbType.Boolean,
                    Value         = (object)isSuperAdmin ?? DBNull.Value
                };

                dataList = context.Database.SqlQuery <UserAccessPermissionModel>("sp_UserAccessPermissions @RoleId,@IsSuperAdmin", UserIdParam, IsSuperAdminParam).ToList();
            }

            return(dataList.ToList());
        }
Exemplo n.º 16
0
        /// <summary>
        /// Function to get entites
        /// </summary>
        /// <returns>DbSet result of entities</returns>
        public DbSet <T> GetEntities()
        {
            AgroAppEntities context = BaseContext.GetDbContext();

            return(context.Set <T>());
        }
Exemplo n.º 17
0
        public ActionResult ForgotPassword(string Email)
        {
            try
            {
                UserModel model = new UserModel();
                using (AgroAppEntities obj = new AgroAppEntities())
                {
                    var EmailParam = new SqlParameter
                    {
                        ParameterName = "EmailAddress",
                        DbType        = DbType.String,
                        Value         = Email
                    };
                    model = obj.Database.SqlQuery <UserModel>("SP_ForgotPassGetDetail @EmailAddress", EmailParam).FirstOrDefault();
                }
                string token = Guid.NewGuid().ToString();
                if (model.UserId > 0)

                {
                    string link = Url.Action("ResetPassword", "Login", new RouteValueDictionary(new { Token = token }), System.Web.HttpContext.Current.Request.Url.Scheme);

                    string resetLink = "<a href='" + link + "'>" + link + "</a>";
                    string toEmail   = model.EmailAddress;


                    string bodyTemplate = System.IO.File.ReadAllText(Server.MapPath("~/Template/ForgotPassword.html"));


                    bodyTemplate = bodyTemplate.Replace("[@FirstName]", model.Name);
                    bodyTemplate = bodyTemplate.Replace("[@link]", resetLink);

                    Task task = new Task(() => EmailHelper.SendAsyncEmail(toEmail, "ForgotPassword", bodyTemplate, true));
                    task.Start();


                    model.Token           = token;
                    model.TokenExpiryDate = DateTime.Now.AddDays(1);

                    using (AgroAppEntities obj = new AgroAppEntities())
                    {
                        var UserIdParam = new SqlParameter
                        {
                            ParameterName = "UserId",
                            DbType        = DbType.Int32,
                            Value         = model.UserId
                        };
                        var TokenParam = new SqlParameter
                        {
                            ParameterName = "Token",
                            DbType        = DbType.String,
                            Value         = model.Token
                        };
                        var TokenExpiryDateParam = new SqlParameter
                        {
                            ParameterName = "TokenExpiryDate",
                            DbType        = DbType.DateTime,
                            Value         = model.TokenExpiryDate
                        };
                        var result = obj.Database.SqlQuery <UserModel>("SP_UserForgotPassTokenSave @UserId,@Token,@TokenExpiryDate", UserIdParam, TokenParam, TokenExpiryDateParam).FirstOrDefault();
                    }

                    ModelState.AddModelError("Email", "Email For Reset Passsword has been sent. Please check your email.");
                    return(View());
                }
                else
                {
                    ModelState.AddModelError("Email", "Please enter valid Email Address.");
                    return(View());
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Email", "Please enter valid Email Address.");
                return(View("Index"));
            }
        }
Exemplo n.º 18
0
        /// <summary>
        /// Function to insert entity.
        /// </summary>
        /// <param name="entity">entity to be inserted</param>
        /// <param name="context">context to maintain transaction</param>
        public void Insert(T entity, AgroAppEntities context)
        {
            DbSet <T> table = context.Set <T>();

            table.Add(entity);
        }