public static string ShowDDLMenuByType(string type, int langID, int selectID) { List <ListItem.Item> list = ListItem.List.GetList(WebMenuService.Instance, langID, type); int userId = CPLogin.CurrentUser.ID; CPUserRoleEntity userRole = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == userId).ToSingle(); CPRoleEntity role = null; if (userRole != null) { role = CPRoleService.Instance.CreateQuery().Where(o => o.ID == userRole.RoleID).ToSingle(); } string s = string.Empty; for (int i = 0; list != null && i < list.Count; i++) { if (type == "News" && role != null && role.MenuIDs != null && role.MenuIDs.Contains(list[i].Value)) { s += "<option " + (list[i].Value == selectID.ToString() ? "selected" : string.Empty) + " value=\"" + list[i].Value + "\"> " + list[i].Name + "</option>"; } if (type != "News") { s += "<option " + (list[i].Value == selectID.ToString() ? "selected" : string.Empty) + " value=\"" + list[i].Value + "\"> " + list[i].Name + "</option>"; } } return(s); }
public static string GetRoleByLoginName(string loginName) { string role = string.Empty; CPUserEntity u = CPUserService.Instance.CreateQuery().Where(o => o.Activity == true && o.LoginName == loginName).ToSingle(); if (u == null) { return(role); } CPUserRoleEntity r = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == u.ID).ToSingle(); if (r == null) { return(role); } CPRoleEntity ur = CPRoleService.Instance.CreateQuery().Where(o => o.ID == r.RoleID).ToSingle(); if (ur == null) { return(role); } role = ur.Code; return(role); }
public void ActionIndex(ModNewsModel model) { // sap xep tu dong string orderBy = AutoSort(model.Sort); int userId = CPLogin.CurrentUser.ID; CPUserRoleEntity userRole = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == userId).ToSingle(); string roleCode = string.Empty; string menuIds = WebMenuService.Instance.GetChildIDForCP("News", model.MenuID, model.LangID); ArrayList menuIdsTemp = new ArrayList(); if (userRole != null) { var role = CPRoleService.Instance.CreateQuery().Where(o => o.ID == userRole.RoleID).ToSingle(); if (role != null) { roleCode = role.Code; string roleMenu = role.MenuIDs; string[] menuArr = menuIds.Split(','); foreach (string m in menuArr) { if (!string.IsNullOrEmpty(roleMenu)) { if (roleMenu.Contains(m)) { menuIdsTemp.Add(m); } } } menuIds = string.Join(",", menuIdsTemp.ToArray()); } } // tao danh sach if (!string.IsNullOrEmpty(menuIds)) { var dbQuery = ModNewsService.Instance.CreateQuery() .Where(!string.IsNullOrEmpty(model.SearchText), o => o.Name.Contains(model.SearchText)) .Where(model.State > 0, o => (o.State & model.State) == model.State) .Where(roleCode == "NV", o => o.CreateUser == userId) .Where(roleCode == "Admin" || roleCode == "GD", o => o.Activity1 == true) .WhereIn(o => o.MenuID, menuIds) .Take(model.PageSize) .OrderBy(orderBy) .Skip(model.PageIndex * model.PageSize); ViewBag.Data = dbQuery.ToList(); model.TotalRecord = dbQuery.TotalRecord; } ViewBag.Model = model; }
public void ActionAdd(ModNewsModel model) { int userId = CPLogin.CurrentUser.ID; CPUserRoleEntity userRole = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == userId).ToSingle(); string roleCode = string.Empty; if (userRole != null) { var role = CPRoleService.Instance.CreateQuery().Where(o => o.ID == userRole.RoleID).ToSingle(); if (role != null) { roleCode = role.Code; } } ViewBag.RoleCode = roleCode; if (model.RecordID > 0) { entity = ModNewsService.Instance.GetByID(model.RecordID); // khoi tao gia tri mac dinh khi update entity.UpdateUser = CPLogin.CurrentUser.ID; entity.Updated = DateTime.Now; if (!string.IsNullOrEmpty(roleCode) && roleCode == "NV" && (entity.Activity == false || entity.Activity1 == false)) { entity.Activity = null; entity.Activity1 = null; } } else { // khoi tao gia tri mac dinh khi insert entity = new ModNewsEntity { MenuID = model.MenuID, WarnNews = false, WarnUserIDs = "", CreateUser = CPLogin.CurrentUser.ID, Published = DateTime.Now, Activity1 = null, Activity = null, Order = GetMaxOrder(model) }; } ViewBag.Data = entity; ViewBag.Model = model; }
public override void ActionDelete(int[] arrID) { int userId = CPLogin.CurrentUser.ID; CPUserRoleEntity userRole = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == userId).ToSingle(); string roleCode = string.Empty; if (userRole != null) { var role = CPRoleService.Instance.CreateQuery().Where(o => o.ID == userRole.RoleID).ToSingle(); if (role != null) { roleCode = role.Code; } } var arr = string.Join(",", arrID); List <ModNewsEntity> lst = new List <ModNewsEntity>(); if (roleCode == "NV") { lst = ModNewsService.Instance.CreateQuery() .WhereIn(o => o.ID, arr) .Where(o => o.Activity == true || o.Activity1 == true) .ToList(); CPViewPage.Message.ListMessage.Add("Bài viết đã được Duyệt hoặc Sơ duyệt"); } else if (roleCode == "TP") { lst = ModNewsService.Instance.CreateQuery() .WhereIn(o => o.ID, arr) .Where(o => o.Activity == true) .ToList(); CPViewPage.Message.ListMessage.Add("Bài viết đã được Duyệt"); } if (lst != null && lst.Count > 0) { CPViewPage.Message.MessageType = Message.MessageTypeEnum.Error; } else { base.ActionDelete(arrID); } }
public void ActionIndex(ModThongKeBaoCaoModel model) { // sap xep tu dong string orderBy = AutoSort(model.Sort); int userId = CPLogin.CurrentUser.ID; CPUserRoleEntity userRole = CPUserRoleService.Instance.CreateQuery().Where(o => o.UserID == userId).ToSingle(); string roleCode = string.Empty; string menuIds = WebMenuService.Instance.GetChildIDForCP("News", model.MenuID, model.LangID); ArrayList menuIdsTemp = new ArrayList(); if (userRole != null) { var role = CPRoleService.Instance.CreateQuery().Where(o => o.ID == userRole.RoleID).ToSingle(); if (role != null) { roleCode = role.Code; string roleMenu = role.MenuIDs; string[] menuArr = menuIds.Split(','); foreach (string m in menuArr) { if (!string.IsNullOrEmpty(roleMenu)) { if (roleMenu.Contains(m)) { menuIdsTemp.Add(m); } } } menuIds = string.Join(",", menuIdsTemp.ToArray()); } } // tao danh sach if (!string.IsNullOrEmpty(menuIds)) { var dbQuery = ModNewsService.Instance.CreateQuery() .Where(!string.IsNullOrEmpty(model.SearchText), o => o.Name.Contains(model.SearchText)) .Where(model.State > 0, o => (o.State & model.State) == model.State) .Where(roleCode == "NV", o => o.CreateUser == userId) .Where(roleCode == "Admin" || roleCode == "GD", o => o.Activity1 == true) .WhereIn(o => o.MenuID, menuIds) .Take(model.PageSize) .OrderBy(orderBy) .Skip(model.PageIndex * model.PageSize); List <ModNewsEntity> lstNews = dbQuery.ToList(); // Thống kê theo tác giả List <ReportResultLine> reportByAuthor = lstNews .GroupBy(n => n.CreateUser) .Select(cl => new ReportResultLine { CreateUserId = cl.First().CreateUser, NewsNumber = cl.Count(), ViewNumber = cl.Sum(c => c.View) }).ToList(); // Thống kê theo danh mục List <ReportResultLine> reportByMenuId = lstNews .GroupBy(n => n.MenuID) .Select(cl => new ReportResultLine { MenuID = cl.First().MenuID, NewsNumber = cl.Count(), ViewNumber = cl.Sum(c => c.View) }).ToList(); ViewBag.ReportByAuthor = reportByAuthor; ViewBag.ReportByMenuId = reportByMenuId; ViewBag.TotalRecord = dbQuery.TotalRecord; } ViewBag.Model = model; }