public int Insert(SiteMenusInfo model) { model.Id = Guid.NewGuid(); _db.SiteMenus.Insert(model); return(1); }
public IList <SiteMenusInfo> GetList(int pageIndex, int pageSize, out int totalRecords, string sqlWhere, params SqlParameter[] cmdParms) { StringBuilder sb = new StringBuilder(500); sb.Append(@"select count(*) from SiteMenus "); if (!string.IsNullOrEmpty(sqlWhere)) { sb.AppendFormat(" where 1=1 {0} ", sqlWhere); } totalRecords = (int)SqlHelper.ExecuteScalar(SqlHelper.AspnetDbConnString, CommandType.Text, sb.ToString(), cmdParms); if (totalRecords == 0) { return(new List <SiteMenusInfo>()); } sb.Clear(); int startIndex = (pageIndex - 1) * pageSize + 1; int endIndex = pageIndex * pageSize; sb.Append(@"select * from(select row_number() over(order by Sort) as RowNumber, ApplicationId,Id,ParentId,IdStep,Title,Url,Descr,Sort,LastUpdatedDate from SiteMenus " ); if (!string.IsNullOrEmpty(sqlWhere)) { sb.AppendFormat(" where 1=1 {0} ", sqlWhere); } sb.AppendFormat(@")as objTable where RowNumber between {0} and {1} ", startIndex, endIndex); IList <SiteMenusInfo> list = new List <SiteMenusInfo>(); using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, sb.ToString(), cmdParms)) { if (reader != null && reader.HasRows) { while (reader.Read()) { SiteMenusInfo model = new SiteMenusInfo(); model.ApplicationId = reader.GetGuid(1); model.Id = reader.GetGuid(2); model.ParentId = reader.GetGuid(3); model.IdStep = reader.GetString(4); model.Title = reader.GetString(5); model.Url = reader.GetString(6); model.Descr = reader.GetString(7); model.Sort = reader.GetInt32(8); model.LastUpdatedDate = reader.GetDateTime(9); list.Add(model); } } } return(list); }
public List <SiteMenusInfo> GetMenusAccess(Guid appId, Guid accessId, bool isAdministrators) { var list = new List <SiteMenusInfo>(); var maInfo = new SiteMenusAccess().GetModel(appId, accessId); List <SiteMenusAccessItemInfo> maitems = null; if (maInfo != null) { maitems = JsonConvert.DeserializeObject <List <SiteMenusAccessItemInfo> >(maInfo.OperationAccess); } var cmdText = "select m.Id,m.ParentId,m.Title,m.Url,m.Descr from SiteMenus m where m.ApplicationId = @ApplicationId "; var parm = new SqlParameter("@ApplicationId", appId); using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, cmdText, parm)) { if (reader != null && reader.HasRows) { while (reader.Read()) { var model = new SiteMenusInfo(); model.Id = reader.GetGuid(0); model.ParentId = reader.GetGuid(1); model.Title = reader.GetString(2); model.Url = reader.GetString(3); model.Descr = reader.GetString(4); if (isAdministrators) { model.IsView = true; model.IsAdd = true; model.IsEdit = true; model.IsDelete = true; } else { if (maitems != null) { var maitemInfo = maitems.FirstOrDefault(m => Guid.Parse(m.MenuId.ToString()).Equals(model.Id)); model.IsView = maitemInfo == null ? false : maitemInfo.IsView; model.IsAdd = maitemInfo == null ? false : maitemInfo.IsAdd; model.IsEdit = maitemInfo == null ? false : maitemInfo.IsEdit; model.IsDelete = maitemInfo == null ? false : maitemInfo.IsDelete; } } list.Add(model); } } } return(list); }
public IList <SiteMenusInfo> GetListByParentName(string parentName) { StringBuilder sb = new StringBuilder(500); sb.Append(@"select m.ApplicationId,m.Id,m.ParentId,m.IdStep,m.Title,m.Url,m.Descr,m.Sort,m.LastUpdatedDate from SiteMenus m join SiteMenus m2 on CHARINDEX(convert(varchar(36),m2.Id),m.IdStep) > 0 and m2.Title = @Title order by m.Sort "); SqlParameter[] parms = { new SqlParameter("@Title", SqlDbType.NVarChar, 20) }; parms[0].Value = parentName; var list = new List <SiteMenusInfo>(); using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, sb.ToString(), parms)) { if (reader != null && reader.HasRows) { while (reader.Read()) { SiteMenusInfo model = new SiteMenusInfo(); model.ApplicationId = reader.GetGuid(0); model.Id = reader.GetGuid(1); model.ParentId = reader.GetGuid(2); model.IdStep = reader.GetString(3); model.Title = reader.GetString(4); model.Url = reader.GetString(5); model.Descr = reader.GetString(6); model.Sort = reader.GetInt32(7); model.LastUpdatedDate = reader.GetDateTime(8); list.Add(model); } } } return(list); }
protected override SiteMapNode GetRootNodeCore() { SiteMenusInfo rootNode = null; if (HttpContext.Current.User.Identity.IsAuthenticated) { rootNode = list.FirstOrDefault(m => m.Title == EnumData.EnumMenuName.首页.ToString() && !m.Url.Contains(FormsAuthentication.DefaultUrl.Replace("~", ""))); } else { rootNode = list.FirstOrDefault(m => m.Url.Contains(FormsAuthentication.DefaultUrl.Replace("~", ""))); } if (rootNode == null) { throw new Exception(MC.M_NotConfigError); } var temp = new SiteMapNode(this, rootNode.Id.ToString(), rootNode.Url, rootNode.Title, rootNode.Descr); return(temp); }
public IList <SiteMenusInfo> GetList(string sqlWhere, params SqlParameter[] cmdParms) { StringBuilder sb = new StringBuilder(500); sb.Append(@"select ApplicationId,Id,ParentId,IdStep,Title,Url,Descr,Sort,LastUpdatedDate from SiteMenus "); if (!string.IsNullOrEmpty(sqlWhere)) { sb.AppendFormat(" where 1=1 {0} ", sqlWhere); } sb.Append("order by Sort "); IList <SiteMenusInfo> list = new List <SiteMenusInfo>(); using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, sb.ToString(), cmdParms)) { if (reader != null && reader.HasRows) { while (reader.Read()) { SiteMenusInfo model = new SiteMenusInfo(); model.ApplicationId = reader.GetGuid(0); model.Id = reader.GetGuid(1); model.ParentId = reader.GetGuid(2); model.IdStep = reader.GetString(3); model.Title = reader.GetString(4); model.Url = reader.GetString(5); model.Descr = reader.GetString(6); model.Sort = reader.GetInt32(7); model.LastUpdatedDate = reader.GetDateTime(8); list.Add(model); } } } return(list); }
public SiteMenusInfo GetModel(Guid id) { SiteMenusInfo model = null; StringBuilder sb = new StringBuilder(300); sb.Append(@"select top 1 ApplicationId,Id,ParentId,IdStep,Title,Url,Descr,Sort,LastUpdatedDate from SiteMenus where Id = @Id " ); SqlParameter[] parms = { new SqlParameter("@Id", SqlDbType.UniqueIdentifier) }; parms[0].Value = id; using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, sb.ToString(), parms)) { if (reader != null) { if (reader.Read()) { model = new SiteMenusInfo(); model.ApplicationId = reader.GetGuid(0); model.Id = reader.GetGuid(1); model.ParentId = reader.GetGuid(2); model.IdStep = reader.GetString(3); model.Title = reader.GetString(4); model.Url = reader.GetString(5); model.Descr = reader.GetString(6); model.Sort = reader.GetInt32(7); model.LastUpdatedDate = reader.GetDateTime(8); } } } return(model); }
public ResResultModel SaveMenus(MenusModel model) { try { if (!HttpContext.Current.User.IsInRole("Administrators")) { throw new ArgumentException(MC.Role_InvalidError); } if (model == null) { return(ResResult.Response(false, MC.Request_Params_InvalidError)); } if (string.IsNullOrWhiteSpace(model.Title)) { return(ResResult.Response(false, MC.Request_Params_InvalidError)); } var Id = Guid.Empty; var parentId = Guid.Empty; if (model.Id != null && !string.IsNullOrWhiteSpace(model.Id.ToString())) { Guid.TryParse(model.Id.ToString(), out Id); } if (model.ParentId != null && !string.IsNullOrWhiteSpace(model.ParentId.ToString())) { Guid.TryParse(model.ParentId.ToString(), out parentId); } var appBll = new Applications(); var appId = appBll.GetAspnetAppId(Membership.ApplicationName); var bll = new SiteMenus(); int effect = 0; var modelInfo = new SiteMenusInfo(Guid.Parse(appId.ToString()), Id, parentId, model.IdStep, model.Title, model.Url, model.Descr, model.Sort, DateTime.Now); if (Id.Equals(Guid.Empty)) { //MenusDataProxy.ValidateAccess((int)EnumData.EnumOperationAccess.新增, true); modelInfo.Id = Guid.NewGuid(); modelInfo.IdStep = (modelInfo.Id + "," + modelInfo.IdStep).Trim(','); effect = bll.InsertByOutput(modelInfo); } else { //MenusDataProxy.ValidateAccess((int)EnumData.EnumOperationAccess.编辑, true); var oldInfo = bll.GetModel(Id); effect = bll.Update(modelInfo); } if (effect < 1) { return(ResResult.Response(false, "操作失败,数据库操作异常")); } return(ResResult.Response(true, "操作成功", modelInfo.Id)); } catch (Exception ex) { return(ResResult.Response(false, "操作异常:" + ex.Message + "")); } }
public IList <SiteMenusInfo> GetMenusAccess(string appName, string[] accessIds, bool isAdministrators) { var list = new List <SiteMenusInfo>(); var appId = new Applications().GetAspnetAppId(appName); IList <SiteMenusAccessInfo> maList = null; if (!isAdministrators) { var sbIn = new StringBuilder(300); foreach (var item in accessIds) { sbIn.AppendFormat("'{0}',", item); } var sqlWhere = string.Format("and ApplicationId = '{1}' and AccessId in ({0}) ", sbIn.ToString().Trim(','), appId); maList = new SiteMenusAccess().GetList(sqlWhere, null); } var cmdText = "select m.Id,m.ParentId,m.Title,m.Url,m.Descr from SiteMenus m where m.ApplicationId = @ApplicationId order by Sort "; var parm = new SqlParameter("@ApplicationId", appId); using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.AspnetDbConnString, CommandType.Text, cmdText, parm)) { if (reader != null && reader.HasRows) { while (reader.Read()) { var model = new SiteMenusInfo(); model.Id = reader.GetGuid(0); model.ParentId = reader.GetGuid(1); model.Title = reader.GetString(2); model.Url = reader.GetString(3); model.Descr = reader.GetString(4); if (isAdministrators) { model.IsView = true; model.IsAdd = true; model.IsEdit = true; model.IsDelete = true; } else { #region 权限控制 if (maList != null && maList.Count > 0) { List <SiteMenusAccessItemInfo> maitems = null; var qrmaList = maList.Where(m => m.AccessType == "Roles"); if (qrmaList != null && qrmaList.Count() > 0) { foreach (var item in qrmaList) { maitems = JsonConvert.DeserializeObject <List <SiteMenusAccessItemInfo> >(item.OperationAccess); var maitemInfo = maitems.FirstOrDefault(m => Guid.Parse(m.MenuId.ToString()).Equals(model.Id)); model.IsView = maitemInfo == null ? false : maitemInfo.IsView; model.IsAdd = maitemInfo == null ? false : maitemInfo.IsAdd; model.IsEdit = maitemInfo == null ? false : maitemInfo.IsEdit; model.IsDelete = maitemInfo == null ? false : maitemInfo.IsDelete; } } var qumaInfo = maList.FirstOrDefault(m => m.AccessType == "Users"); if (qumaInfo != null) { maitems = JsonConvert.DeserializeObject <List <SiteMenusAccessItemInfo> >(qumaInfo.OperationAccess); var maitemInfo = maitems.FirstOrDefault(m => Guid.Parse(m.MenuId.ToString()).Equals(model.Id)); if (maitemInfo != null) { if (maitemInfo.IsView) { model.IsView = false; } if (maitemInfo.IsAdd) { model.IsAdd = false; } if (maitemInfo.IsEdit) { model.IsEdit = false; } if (maitemInfo.IsDelete) { model.IsDelete = false; } } } } #endregion } if (model.IsView) { list.Add(model); } } } } return(list); }
public int Update(SiteMenusInfo model) { return(dal.Update(model)); }
public int InsertByOutput(SiteMenusInfo model) { return(dal.InsertByOutput(model)); }
public int Update(SiteMenusInfo model) { _db.SiteMenus.Update(model); return(1); }
public int InsertByOutput(SiteMenusInfo model) { _db.SiteMenus.Insert(model); return(1); }