27 lines
960 B
C#
27 lines
960 B
C#
using DysonNetwork.Shared.Proto;
|
|
using Grpc.Core;
|
|
|
|
namespace DysonNetwork.Pass.Credit;
|
|
|
|
public class SocialCreditServiceGrpc(SocialCreditService creditService) : Shared.Proto.SocialCreditService.SocialCreditServiceBase
|
|
{
|
|
public override async Task<Shared.Proto.SocialCreditRecord> AddRecord(AddSocialCreditRecordRequest request, ServerCallContext context)
|
|
{
|
|
var accountId = Guid.Parse(request.AccountId);
|
|
var record = await creditService.AddRecord(
|
|
request.ReasonType,
|
|
request.Reason,
|
|
request.Delta,
|
|
accountId);
|
|
|
|
return record.ToProto();
|
|
}
|
|
|
|
public override async Task<SocialCreditResponse> GetSocialCredit(GetSocialCreditRequest request, ServerCallContext context)
|
|
{
|
|
var accountId = Guid.Parse(request.AccountId);
|
|
var amount = await creditService.GetSocialCredit(accountId);
|
|
|
|
return new SocialCreditResponse { Amount = amount };
|
|
}
|
|
} |