public ActionResult PermissionRoleDestroy([DataSourceRequest] DataSourceRequest request, PermissionRole dictionary) { if (dictionary != null) { var roleId = dictionary.Id; var dbRole = db.PermissionRoles.SingleOrDefault(x => x.Id == roleId); if (dbRole == null) { ModelState.AddModelError("Message", Convert.ToString("Роль не найдена")); return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); } var dbEmployees = db.EmployeePermissionRoles.Where(x => x.PermissionRoleId == roleId) .Join(db.Employees, x => x.EmployeeId, x => x.Id, (r, e) => e).ToList(); if (dbEmployees.Count > 0) { var empl = dbEmployees[0]; var employeeNames = empl.LastName + " " + empl.FirstName + " " + empl.MiddleName; var otherCount = dbEmployees.Count - 1; if (otherCount > 0) { employeeNames += " и ещё " + otherCount + " сотрудник(ов)"; } ModelState.AddModelError("Message", Convert.ToString("Роль использует " + employeeNames)); return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); } db.PermissionRoles.Remove(dbRole); ActionLogger.WriteInt(db, "Удаление роли прав доступа", "RoleId: " + dbRole.Id + "; Name: " + dbRole.Name); db.SaveChanges(); EmployePermissionHelper.RemoveRolePermissionKeys(dbRole.Id); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
public ActionResult PermissionRoleCreate([DataSourceRequest] DataSourceRequest request, PermissionRole dictionary) { if (dictionary != null) { db.PermissionRoles.Add(dictionary); ActionLogger.WriteInt(db, "Создание роли прав доступа", "Name: " + dictionary.Name); db.SaveChanges(); EmployePermissionHelper.AddRoleDefaultPermissionKeys(dictionary.Id); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
public ActionResult EmployeePermissionRoleDestroy([DataSourceRequest] DataSourceRequest request, PermissionRoleModel dictionary, Guid employeeId) { if (dictionary != null) { var dbEmployeeRole = db.EmployeePermissionRoles.Single(x => x.Id == dictionary.EmployeeRoleId); db.EmployeePermissionRoles.Remove(dbEmployeeRole); ActionLogger.WriteInt(db, "Удаление сотруднику роли прав доступа", "RoleId: " + dbEmployeeRole.PermissionRoleId + "; EmployeeId: " + dbEmployeeRole.EmployeeId); db.SaveChanges(); EmployePermissionHelper.ClearEmployeePermission(); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
public ActionResult PermissionRoleKeysUpdate([DataSourceRequest] DataSourceRequest request, PermissionModel permissionModel, int roleId) { if (permissionModel != null && ModelState.IsValid) { var employeePermission = db.PermissionRoleKeys.First(o => o.PermissionRoleId == roleId && o.PermissionKey == permissionModel.KeyType); var prevValue = employeePermission.PermissionValue; employeePermission.PermissionValue = permissionModel.KeyValue; ActionLogger.WriteInt(db, "Обновление разрешений у роли прав доступа", "RoleId: " + roleId + "; Key: " + permissionModel.KeyType + "; PrevValue: " + prevValue + "; CurrentValue: " + permissionModel.KeyValue); db.SaveChanges(); EmployePermissionHelper.ClearEmployeePermission(); } return(Json(new[] { permissionModel }.ToDataSourceResult(request, ModelState))); }
public ActionResult EmployeePermissionRoleUpdate([DataSourceRequest] DataSourceRequest request, PermissionRoleModel dictionary, Guid employeeId) { if (dictionary != null && ModelState.IsValid) { var dbEmployeeRole = db.EmployeePermissionRoles.SingleOrDefault(x => x.PermissionRoleId == dictionary.RoleId && x.EmployeeId == employeeId && x.Id != dictionary.EmployeeRoleId); if (dbEmployeeRole != null) { ModelState.AddModelError("Message", Convert.ToString("Роль уже присвоена")); return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); } dbEmployeeRole = db.EmployeePermissionRoles.Single(x => x.Id == dictionary.EmployeeRoleId); var prevRoleId = dbEmployeeRole.PermissionRoleId; dbEmployeeRole.PermissionRoleId = dictionary.RoleId; ActionLogger.WriteInt(db, "Обновление сотруднику роли прав доступа", "PrevRoleId: " + prevRoleId + "; CurrentRoleId: " + dictionary.RoleId); db.SaveChanges(); EmployePermissionHelper.ClearEmployeePermission(); } return(Json(new[] { dictionary }.ToDataSourceResult(request, ModelState))); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); ModelBinders.Binders.Add(typeof(DateTime), new CustomDateBinder()); ModelBinders.Binders.Add(typeof(DateTime?), new NullableCustomDateBinder()); Stream stream = new MemoryStream(StrToByteArray(Resources.Licence)); stream.Position = 0; Aspose.Pdf.License licensePdf = new Aspose.Pdf.License(); Aspose.Words.License licenseWords = new Aspose.Words.License(); Aspose.Cells.License licenseCells = new Aspose.Cells.License(); Aspose.Slides.License licenseSlides = new Aspose.Slides.License(); Aspose.BarCode.License licenseBarCode = new Aspose.BarCode.License(); licensePdf.SetLicense(stream); stream.Position = 0; licenseWords.SetLicense(stream); stream.Position = 0; licenseCells.SetLicense(stream); stream.Position = 0; licenseSlides.SetLicense(stream); stream.Position = 0; licenseBarCode.SetLicense(stream); stream.Close(); // CreateLogins(); // CheckLogins(); LogHelper.InitLogger(); LogHelper.Log.Info("Application Start"); EmployePermissionHelper.Init(); QScheduler.Start(); }
public ActionResult PermissionRoleKeysRead([DataSourceRequest] DataSourceRequest request, int roleId) { ActionLogger.WriteInt("Получение списка разрешений роли прав доступа", "RoleId: " + roleId); var data = db.PermissionRoleKeys.Where(o => o.PermissionRoleId == roleId) .Join(db.PermissionKeys, x => x.PermissionKey, x => x.Key, (r, k) => new { RoleKeys = r, Key = k }) .ToList().Select(o => new PermissionModel() { Id = o.RoleKeys.Id, GroupName = o.Key.GroupName, KeyDescription = EmployePermissionHelper.GeKeys().First(x => x.Key == o.RoleKeys.PermissionKey).KeyDescription, KeyName = EmployePermissionHelper.GeKeys().First(x => x.Key == o.RoleKeys.PermissionKey).KeyName, KeyType = o.RoleKeys.PermissionKey, KeyValue = o.RoleKeys.PermissionValue, KeyPermission = EmployePermissionHelper.GeKeysValue() .Where(x => x.PermissionKey == o.RoleKeys.PermissionKey) .First(y => y.Value == o.RoleKeys.PermissionValue) .Name }); return(Json(data.ToDataSourceResult(request))); }
private bool IsAllow(Guid employeeId, string key) { var permission = EmployePermissionHelper.IsVisibility(key, employeeId); return(permission); }