Files

64 lines
2.3 KiB
C#
Raw Permalink Normal View History

using BS.Shared.DataContracts;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BS.Shared.Core
{
public class AppError
{
public string Code { get; set; }
public string Message { get; set; }
public Dictionary<string, string> Arguments { get; set; }
public List<AppError> InnerErrors { get; set; }
public string Displayname => $"AppError {Code}: {Message}";
2025-05-26 11:36:48 +02:00
// Private damit zentral alle Errors
private AppError(string code, string message, Dictionary<string, string> arguments = null, List<AppError> innerErrors = null)
{
Code = code;
Message = message;
Arguments = arguments;
InnerErrors = innerErrors;
}
2025-06-02 11:16:35 +02:00
public AppError()
{
}
2025-06-23 10:54:30 +02:00
// Muster:
// - public static readonly AppError Example = new AppError("Code", "Message");
// - Usage: var error = AppError.Example;
// Oder mit Abhängigkeit:
// - public static Func<object1, object2, ..., AppError> ExampleFunc = (obj1, obj2, ...) => new AppError(...);
// - Usage: var error = AppError.ExampleFunc(obj1, obj2, ...);
/// <summary>
/// Tenant ist in Anfrage null oder unbekannt
/// </summary>
2025-06-10 14:29:34 +02:00
public static AppError MultitenancyOperationTenantUnknown => new AppError("SERV.HLP.10001", "Tenant unbekannt");
2025-05-26 11:36:48 +02:00
2025-06-23 10:54:30 +02:00
/// <summary>
/// Logger Ordner kann nicht gefunden werden. Hinweis: Web.config
/// </summary>
public static AppError LoggerPathDoNotExist => new AppError("SERV.LOG.10002", "Server falsch konfiguriert");
2025-06-10 14:29:34 +02:00
public static AppError FileNameInvalidChar => new AppError("DATA.LFS.60001", "Fehler beim Speichern");
public static AppError FileNameNotEqFilePath => new AppError("DATA.LFS.60002", "Fehler beim Speichern");
public static AppError StoredFileAlreadyExists => new AppError("DATA.LFS.60003", "Fehler beim Speichern");
2025-05-26 11:36:48 +02:00
2025-07-03 13:55:46 +02:00
public static readonly AppError ApiResponseFailed = new AppError("API.100001", "Api Fehler");
public static readonly AppError JsonParsingError = new AppError("API.100002", "Json Parsing Fehler");
public static readonly Func<Type, AppError> UnsupportedType = (type) => new AppError("BEW.100001", $"Type nicht implementiert: {type}");
public static readonly Func<OrganisationDC, AppError> GkvDatenannahmestelleAdresseNotFound = (dc) => new AppError("GKV.70001", $"Unbekannte Datenannahmestelle. Bitte neu in der Organisation {dc.Name} ermitteln");
}
}