public async Task <Result> Save(Person person, Estate estate) { if ((await GetDataByIdentifier(person.Id, estate.Id)).HasValue) { return(Result.Failure($"{person.FullName} ya se encuentra registrado en esta propieda")); } _dbContext.Add(PersonsByEstate.Create(person, estate)); await _dbContext.SaveChangesAsync(); return(Result.Ok()); }
public async Task <IActionResult> Create([Bind(ATTRIBUTES_TO_BIND)] ContractVM UpdateVm) { Person person = await _personRepository.GetById(UpdateVm.PersonId); Estate estate = await _estateRepository.GetById(UpdateVm.EstateId); WaterMeter meter = await _waterMeterRepository.GetById(UpdateVm.MeterId); ContractType contractType = await _contractTypeRepository.GetById(UpdateVm.ContractTypeId); Contract localContract = Contract.Create(contractType: contractType, personsByEstate: PersonsByEstate.Create(person, estate), waterMeter: meter, initialMeterRead: UpdateVm.InitialMeterRead, doubleBasicCharge: UpdateVm.DoubleBasicCharge, isActive: UpdateVm.IsActive); return(await ConfirmSaveConcrete(UpdateVm, localContract)); }