public async Task <ResponseModel> Post() { var clientId = this.GetClientId(); if (string.IsNullOrEmpty(clientId)) { return(ResponseModel <KycModelStatusResponseModel> .CreateFail(ResponseModel.ErrorCodeType.NotAuthenticated, Phrases.OperationCanNotBePerformed)); } var status = await _kycRepository.GetKycStatusAsync(clientId); if (status == KycStatus.NeedToFillData) { await _kycRepository.SetStatusAsync(clientId, KycStatus.Pending); return(ResponseModel.CreateOk()); } if (status == KycStatus.Pending) { return(ResponseModel.CreateOk()); } return(ResponseModel.CreateFail(ResponseModel.ErrorCodeType.InconsistentData, Phrases.OperationCanNotBePerformed)); }
public async Task <bool> ChangeKycStatus(string clientId, KycStatus kycStatus, string changer) { var currentStatus = await _kycRepository.GetKycStatusAsync(clientId); if (currentStatus != kycStatus) { await _kycRepository.SetStatusAsync(clientId, kycStatus); await _auditLogRepository.AddAuditRecordAsync(clientId, currentStatus, kycStatus, AuditRecordType.KycStatus, changer); await UpdateKycBadge(); return(true); } return(false); }
public async Task ChangeKycStatus(string clientId, KycStatus kycStatus) { await _kycRepository.SetStatusAsync(clientId, kycStatus); await UpdateKycBadge(); }