コード例 #1
0
        public ActionResult RolesList()
        {
            DXInfo.Models.ynhnTransportManage db = new DXInfo.Models.ynhnTransportManage();
            var roles = from r in db.aspnet_Roles select r;

            return(PartialView(roles));
        }
コード例 #2
0
        public static IEnumerable <string> GetAllSitemapKeys(HttpContextBase context)
        {
            if (context.User.Identity.IsAuthenticated)
            {
                DXInfo.Models.ynhnTransportManage db = new DXInfo.Models.ynhnTransportManage();
                MembershipUser user   = Membership.GetUser();
                Guid           userId = Guid.Parse(user.ProviderUserKey.ToString());
                //List<Guid> roleids = db.aspnet_UsersInRoles.Where(w => w.UserId == userId).Select(s => s.RoleId).ToList<Guid>();
                //string[] roles = Roles.GetRolesForUser();
                //string role = "";
                //foreach (string str in roles)
                //{
                //    role += "'" + str + "',";
                //}
                //role = role.Substring(0, role.Length - 1);
                //var ruleforrole = (from a in db.aspnet_AuthorizationRules where roleids.Contains(a.RoleId) select a.SiteMapKey).ToList();

                var ruleforrole = (from a in db.aspnet_AuthorizationRules
                                   join b in db.aspnet_UsersInRoles.Where(w => w.UserId == userId) on a.RoleId equals b.RoleId
                                   select a.SiteMapKey).ToList();
                //var ruleforuser = (from a in db.aspnet_AuthorizationRules where a.UserName == context.User.Identity.Name select a.SiteMapKey).ToList();
                var ruleforuser = (from a in db.aspnet_AuthorizationRules.Where(w => w.UserId == userId)
                                   select a.SiteMapKey).ToList();
                return(ruleforrole.Concat(ruleforuser));
            }
            return(null);
        }
コード例 #3
0
        public ActionResult SitemapsList()
        {
            DXInfo.Models.ynhnTransportManage db = new DXInfo.Models.ynhnTransportManage();
            var sitemaps = from r in db.aspnet_Sitemaps where r.IsAuthorize == true select r;

            return(PartialView(sitemaps));
        }
コード例 #4
0
        private ActionResult DisplayUsersOfRole(Guid roleId)
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            //string sql = "select * from aspnet_roles where roleId='"+roleId.ToString()+"'";
            //var roles = contex.Database.SqlQuery<RoleInfoModel>(sql).ToList();
            var    role = contex.aspnet_Roles.FirstOrDefault <aspnet_Role>(r => r.RoleId == roleId);
            string sql  = string.Format(@"select a.UserId,a.UserName,b.FullName,c.DeptName ,a.LastActivityDate,d.IsApproved,d.LastLoginDate,d.CreateDate,
case when e.RoleId is null then CONVERT(bit,0) else CONVERT(bit,1) end as IsInRole
from aspnet_Users a
left join aspnet_Membership d on a.UserId=d.UserId
left join aspnet_CustomProfile b on a.UserId=b.UserId
left join Depts c on b.DeptId=c.DeptId
left join (select * from aspnet_UsersInRoles where RoleId='{0}') e on a.UserId=e.UserId
left join aspnet_Roles f on e.RoleId=f.RoleId
order by a.LastActivityDate desc", roleId.ToString());

            var users = contex.Database.SqlQuery <UserInfoForRoleModel>(sql).ToList();

            ForRoleAddUserModel ru = new ForRoleAddUserModel();

            ru.RoleId      = role.RoleId;
            ru.RoleName    = role.RoleName;
            ru.Description = role.Description;

            ru.Users = users;

            return(View("ForRoleAddUser", ru));
        }
コード例 #5
0
        public ActionResult EditRows(UserInfoModel editedUser)
        {
            var gridModel = GridModel;

            //var context = db;
            if (gridModel.Grid.AjaxCallBackMode == AjaxCallBackMode.EditRow)
            {
                MembershipService.UpdateUser(editedUser.UserId, editedUser.FullName, editedUser.DeptId);
                //editedUser.IsApproved = this.Request.Form["IsApproved"].Contains("true");
                MembershipService.ChangeApproval(editedUser.UserId, editedUser.IsApproved);
            }
            if (gridModel.Grid.AjaxCallBackMode == AjaxCallBackMode.DeleteRow)
            {
                MembershipService.DeleteUser(editedUser.UserId);
                using (DXInfo.Models.ynhnTransportManage context = new DXInfo.Models.ynhnTransportManage())
                {
                    var cus = context.aspnet_CustomProfile.Where(w => w.UserId == editedUser.UserId);
                    if (cus.Count() > 0)
                    {
                        foreach (DXInfo.Models.aspnet_CustomProfile oldcus in cus)
                        {
                            context.aspnet_CustomProfile.Remove(oldcus);
                        }
                        context.SaveChanges();
                    }
                }
            }
            return(RedirectToAction("Users", "Account"));
        }
コード例 #6
0
        public static IEnumerable <SelectListItem> GetBalanceType()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var users     = contex.NameCode.Where(w => w.Type == "BalanceType").ToList();
            var listItems =
                from v in users
                select
                new SelectListItem()
            {
                Text  = v.Name,
                Value = v.ID.ToString()
            };

            return(listItems);
        }
コード例 #7
0
        public static IEnumerable <SelectListItem> GetVehicle()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var vehicles  = contex.Vehicles.ToList();
            var listItems =
                from v in vehicles
                select
                new SelectListItem()
            {
                Text  = v.PlateNo,
                Value = v.Id.ToString()
            };

            return(listItems);
        }
コード例 #8
0
        public static IEnumerable <SelectListItem> GetDrivers()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var users     = contex.Drivers.ToList();
            var listItems =
                from v in users
                select
                new SelectListItem()
            {
                Text  = v.Name,
                Value = v.Id.ToString()
            };

            return(listItems);
        }
コード例 #9
0
        public static IEnumerable <SelectListItem> GetDepts()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var depts = from d in contex.Depts
                        orderby d.DeptCode
                        select d;
            List <SelectListItem> listItems = new List <SelectListItem>();

            foreach (Dept dept in depts.ToList <Dept>())
            {
                SelectListItem listItem = new SelectListItem();
                listItem.Text  = dept.DeptName;
                listItem.Value = dept.DeptId.ToString();
                listItems.Add(listItem);
            }
            return(listItems);
        }
コード例 #10
0
        public static IEnumerable <SelectListItem> GetUsers()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var users     = contex.aspnet_CustomProfile.ToList();
            var listItems =
                (from v in users
                 select
                 new SelectListItem()
            {
                Text = v.FullName,
                Value = v.UserId.ToString()
            }).ToList <SelectListItem>();

            listItems.Insert(0, new SelectListItem()
            {
                Text = "", Value = ""
            });
            return(listItems);
        }
コード例 #11
0
        public static IEnumerable <SelectListItem> GetInv()
        {
            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            var vehicles  = contex.Inventory.ToList();
            var listItems =
                (from v in vehicles
                 select
                 new SelectListItem()
            {
                Text = v.Name,
                Value = v.Id.ToString()
            }).ToList <SelectListItem>();

            listItems.Insert(0, new SelectListItem()
            {
                Text = "", Value = ""
            });
            return(listItems);
        }
コード例 #12
0
        private ActionResult DisplayRolesOfUser(Guid id)
        {
            MembershipUser user = MembershipService.GetUser(id);

            if (user == null)
            {
                ModelState.AddModelError("", "未能找到用户信息");
                return(View());
            }
            DXInfo.Profile.CustomProfile profile = DXInfo.Profile.CustomProfile.GetUserProfile(user.UserName);
            if (profile == null)
            {
                ModelState.AddModelError("", "未能找到配置信息");
                return(View());
            }
            Dept dept = MembershipService.GetDept(profile.DeptId);

            if (dept == null)
            {
                ModelState.AddModelError("", "未能找到部门信息");
                return(View());
            }

            AddUserToRolesModel model = new AddUserToRolesModel();

            model.UserId   = Guid.Parse(user.ProviderUserKey.ToString());
            model.UserName = user.UserName;
            model.FullName = profile.FullName;
            model.DeptName = profile.DeptName;

            DXInfo.Models.ynhnTransportManage contex = new DXInfo.Models.ynhnTransportManage();
            string sql = string.Format(@"select a.RoleId,a.RoleName,a.Description,case when b.UserId is null then CONVERT(bit,0) else CONVERT(bit,1) end as IsInRole from aspnet_Roles a
left join (select * from aspnet_UsersInRoles where UserId='{0}') b on a.RoleId=b.RoleId", id.ToString());

            var roles = contex.Database.SqlQuery <RolesInfoModel>(sql).ToList();

            model.Roles = roles.AsEnumerable <RolesInfoModel>();
            return(View("AddUserToRole", model));
        }
コード例 #13
0
        private void SetUpDeptDropDown(JQGrid ordersGrid)
        {
            // setup the grid search criteria for the columns
            JQGridColumn deptsColumn = ordersGrid.Columns.Find(c => c.DataField == "DeptId");

            if (ordersGrid.AjaxCallBackMode == AjaxCallBackMode.RequestData)
            {
                var context  = new DXInfo.Models.ynhnTransportManage();
                var editList = (from d in context.Depts
                                select new
                {
                    d.DeptName,
                    d.DeptId
                }).ToList();
                var list = editList.Select(s => new SelectListItem {
                    Text = s.DeptName, Value = s.DeptId.ToString()
                });
                deptsColumn.EditList   = list.ToList <SelectListItem>();
                deptsColumn.SearchList = list.ToList <SelectListItem>();
                deptsColumn.SearchList.Insert(0, new SelectListItem {
                    Text = "所有", Value = ""
                });
            }
        }
コード例 #14
0
        public ActionResult LogOn(LogOnModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                int icount = db.aspnet_Users.Count();
                if (icount == 0)
                {
                    MembershipCreateStatus createStatus = MembershipService.CreateUser("admin", "123456", "系统管理员", Guid.Empty);
                    model.UserName = "******";
                    model.Password = "******";
                }
                if (MembershipService.ValidateUser(model.UserName, model.Password))
                {
                    //DXInfo.Models.ekey tk = null;
                    if (!string.IsNullOrEmpty(model.HardwareID))
                    {
                        using (DXInfo.Models.ynhnTransportManage context = new DXInfo.Models.ynhnTransportManage())
                        {
                            var key = context.ekey.Where(w => w.HardwareID == model.HardwareID).FirstOrDefault();
                            var us  = context.aspnet_Users.Where(w => w.UserName == model.UserName).FirstOrDefault();
                            if (key == null)
                            {
                                DXInfo.Models.ekey tk = new ekey();
                                tk.HardwareID = model.HardwareID;
                                tk.CardNo     = model.CardNo;
                                tk.CreateDate = DateTime.Now;
                                tk.IsUse      = true;
                                tk.UserId     = us != null ? us.UserId : Guid.Empty;
                                context.ekey.Add(tk);
                                context.SaveChanges();
                            }
                            else
                            {
                                if (!key.IsUse)
                                {
                                    ModelState.AddModelError("", "提供的用户名或密码不正确。");
                                    return(View(model));
                                }
                            }
                        }
                    }
                    FormsService.SignIn(model.UserName, model.RememberMe);

                    if (Url.IsLocalUrl(returnUrl))
                    {
                        return(Redirect(returnUrl));
                    }
                    else
                    {
                        return(RedirectToAction("Index", "Home"));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "提供的用户名或密码不正确。");
                }
            }

            // 如果我们进行到这一步时某个地方出错,则重新显示表单
            return(View(model));
        }