26 lines
1.0 KiB
C#
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);
|
|
|
|
}
|
|
}
|