diff --git a/0_Framework/Application/Sms/ISmsService.cs b/0_Framework/Application/Sms/ISmsService.cs index 743b18e4..d3915923 100644 --- a/0_Framework/Application/Sms/ISmsService.cs +++ b/0_Framework/Application/Sms/ISmsService.cs @@ -27,9 +27,10 @@ public interface ISmsService Task GetCreditAmount(); - public Task SendInstitutionVerificationLink(string number,string fullName, Guid institutionId); + public Task SendInstitutionVerificationLink(string number, string fullName, Guid institutionId, long contractingPartyId, long institutionContractId); - public Task SendInstitutionVerificationCode(string number, string code); + public Task SendInstitutionVerificationCode(string number, string code, string contractingPartyFullName, + long contractingPartyId, long institutionContractId); #endregion diff --git a/Company.Domain/SmsResultAgg/SmsResult.cs b/Company.Domain/SmsResultAgg/SmsResult.cs index 7a460662..5270f4de 100644 --- a/Company.Domain/SmsResultAgg/SmsResult.cs +++ b/Company.Domain/SmsResultAgg/SmsResult.cs @@ -5,7 +5,8 @@ namespace Company.Domain.SmsResultAgg; public class SmsResult: EntityBase { - public SmsResult(int messageId, string status,string typeOfSms, string contractingPartyName,string mobile, long contractingPatyId, long institutionContractId) + public SmsResult(int messageId, string status,string typeOfSms, + string contractingPartyName,string mobile, long contractingPatyId, long institutionContractId) { MessageId = messageId; Status = status; diff --git a/CompanyManagment.Application/InstitutionContractApplication.cs b/CompanyManagment.Application/InstitutionContractApplication.cs index f6599b33..4ac9321b 100644 --- a/CompanyManagment.Application/InstitutionContractApplication.cs +++ b/CompanyManagment.Application/InstitutionContractApplication.cs @@ -1141,7 +1141,7 @@ public class InstitutionContractApplication : IInstitutionContractApplication await _smsService.SendInstitutionVerificationLink(contractingParty.Phone, contractingPartyFullName, - entity.PublicId); + entity.PublicId, contractingParty.id,entity.id ); await _institutionContractRepository.SaveChangesAsync(); @@ -1373,7 +1373,7 @@ public class InstitutionContractApplication : IInstitutionContractApplication throw new NotFoundException("طرف قرارداد یافت نشد"); var contractingPartyFullName = contractingParty.FName + " " + contractingParty.LName; await _smsService.SendInstitutionVerificationLink(contractingParty.Phone, contractingPartyFullName, - institutionContract.PublicId); + institutionContract.PublicId, contractingParty.id, institutionContract.id); return new OperationResult().Succcedded(); } diff --git a/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs b/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs index 5a0c90ac..8486eb7e 100644 --- a/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs +++ b/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs @@ -2339,7 +2339,7 @@ public class InstitutionContractRepository : RepositoryBase SendInstitutionVerificationLink(string number,string fullName, Guid institutionId) + public async Task SendInstitutionVerificationLink(string number, string fullName, Guid institutionId, long contractingPartyId, long institutionContractId) { var guidStr=institutionId.ToString(); var firstPart = guidStr.Substring(0, 15); @@ -341,15 +343,25 @@ public class SmsService : ISmsService new("CODE1",firstPart), new("CODE2",secondPart) }); + var smsResult = new SmsResult(verificationSendResult.Data.MessageId, verificationSendResult.Message, "لینک تاییدیه قرارداد مالی", + fullName, number, contractingPartyId, institutionContractId); + await _smsResultRepository.CreateAsync(smsResult); + await _smsResultRepository.SaveChangesAsync(); return verificationSendResult.Status == 0; } - public async Task SendInstitutionVerificationCode(string number, string code) + public async Task SendInstitutionVerificationCode(string number, string code, string contractingPartyFullName, + long contractingPartyId, long institutionContractId) { var verificationSendResult =await SmsIr.VerifySendAsync(number, 965348, new VerifySendParameter[] { new("VERIFYCODE", code) }); + + var smsResult = new SmsResult(verificationSendResult.Data.MessageId, verificationSendResult.Message, "کد تاییدیه قرارداد مالی", + contractingPartyFullName, number, contractingPartyId, institutionContractId); + await _smsResultRepository.CreateAsync(smsResult); + await _smsResultRepository.SaveChangesAsync(); return verificationSendResult.Status == 0; }