Files
Singer-BE/Singer_Hexdive/Interfaces/ServiceInterfaces/BaseMerchantService.cs

26 lines
1.0 KiB
C#

using System.Text.Json;
namespace Singer_Hexdive.Interfaces.ServiceInterfaces
{
public abstract class BaseMerchantService
{
protected Dictionary<string, JsonElement> DeserializePayload(object payload)
{
if (payload is null)
throw new ArgumentNullException(nameof(payload));
var json = JsonSerializer.Serialize(payload);
return JsonSerializer.Deserialize<Dictionary<string, JsonElement>>(json)
?? throw new InvalidOperationException("Failed to deserialize payload.");
}
public abstract Task<object> GetM_PersonalDetails(object payload);
public abstract Task<object> PostM_PersonalDetails(object payload);
public abstract Task<object> GetM_BusinessDetails(object payload);
public abstract Task<object> PostM_BusinessDetails(object payload);
public abstract Task<object> GetM_BankDetails(object payload);
public abstract Task<object> PostM_BankDetails(object payload);
}
}