public void SaveChanges() { if (View.SelectedRoleAccess == null) { View.SelectedRoleAccess = new RoleAccessViewModel(); } View.SelectedRoleAccess.RoleId = View.RoleId; View.SelectedRoleAccess.ApplicationModulId = View.ApplicationModulId; DbConstant.AccessTypeEnum accessType = DbConstant.AccessTypeEnum.Read; if (View.AllowCreate) { accessType = accessType | DbConstant.AccessTypeEnum.Create; } if (View.AllowUpdate) { accessType = accessType | DbConstant.AccessTypeEnum.Update; } if (View.AllowDelete) { accessType = accessType | DbConstant.AccessTypeEnum.Delete; } View.SelectedRoleAccess.AccessCode = (int)accessType; if (View.SelectedRoleAccess.Id > 0) { Model.UpdateRoleAccess(View.SelectedRoleAccess); } else { Model.InsertRoleAccess(View.SelectedRoleAccess); } }
public static bool IsAccessible(int accessCode, DbConstant.AccessTypeEnum accessType) { int defaultAction = (int)DbConstant.AccessTypeEnum.Read; defaultAction = defaultAction | accessCode; return(defaultAction.Has(accessType)); }
public static bool Validate(this ModulInfo sender, DbConstant.AccessTypeEnum accessType) { if (sender != null) { return(IsAccessible(sender.AccessCode, accessType)); } return(false); }
private bool Has(int accessCode, DbConstant.AccessTypeEnum flags) { return((int)accessCode == ((int)flags | (int)accessCode)); }
public static bool Has(this int accessCode, DbConstant.AccessTypeEnum flags) { return((int)accessCode == ((int)flags | (int)accessCode)); }