Files
Backend-Api/CompanyManagment.EFCore/Repository/InstitutionContractTempRepository.cs

53 lines
2.0 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using _0_Framework.InfraStructure;
using Company.Domain.TemporaryClientRegistrationAgg;
using CompanyManagment.App.Contracts.InstitutionContract;
using CompanyManagment.App.Contracts.TemporaryClientRegistration;
using Microsoft.EntityFrameworkCore;
namespace CompanyManagment.EFCore.Repository;
public class InstitutionContractTempRepository : RepositoryBase<long, InstitutionContractTemp>, IInstitutionContractTempRepository
{
private readonly CompanyContext _context;
public InstitutionContractTempRepository(CompanyContext context) : base(context)
{
_context = context;
}
/// <summary>
/// دریافت قرارداد موقت
/// با توجه به آیدی طرف حساب
/// یا آیدی قرارداد
/// </summary>
/// <param name="id"></param>
/// <param name="contractingPartyId"></param>
/// <returns></returns>
public async Task<InstitutionContractTempViewModel> GetInstitutionContractTemp(long id, long contractingPartyTempId)
{
return await _context.InstitutionContractTemps
.Where(x => x.id == id || x.ContractingPartyTempId == contractingPartyTempId)
.Select(x => new InstitutionContractTempViewModel()
{
Id = x.id,
ContractingPartyTempId = x.ContractingPartyTempId,
RegistrationStatus = x.RegistrationStatus,
PaymentModel = x.PaymentModel,
PeriodModel = x.PeriodModel,
TotalPayment = x.TotalPayment,
ContractStartGr = x.ContractStartGr,
ContractEndGr = x.ContractEndGr,
OfficialCompany = x.OfficialCompany,
ValueAddedTax = x.ValueAddedTax,
VerifyCode = x.VerifyCode,
SendVerifyCodeTime = x.SendVerifyCodeTime,
VerifyCodeEndTime = x.VerifyCodeEndTime,
MessageId = x.MessageId
}).FirstOrDefaultAsync();
}
}