public ResultBM UpdateBeneficiary(BeneficiaryBM beneficieryBm) { try { BeneficiaryDAL beneficiaryDal = new BeneficiaryDAL(); PersonBLL personBll = new PersonBLL(); PersonBM personBm = null; ResultBM validationResult; ResultBM personResult; BeneficiaryDTO beneficiaryDto; // El validador no es necesario porque los datos sustanciales pertenecen a la persona personResult = personBll.UpdatePerson(beneficieryBm); if (!personResult.IsValid()) { return(personResult); } personBm = personResult.GetValue() as PersonBM; beneficiaryDto = new BeneficiaryDTO(personBm.id, beneficieryBm.beneficiaryId, beneficieryBm.destination, beneficieryBm.ages, beneficieryBm.health, beneficieryBm.accessibility, beneficieryBm.majorProblem); beneficiaryDal.UpdateDonor(beneficiaryDto); return(new ResultBM(ResultBM.Type.OK, "Se ha actualizado el beneficiario " + beneficieryBm.name + " " + beneficieryBm.lastName + ".", beneficieryBm)); } catch (Exception exception) { return(new ResultBM(ResultBM.Type.EXCEPTION, SessionHelper.GetTranslation("UPDATING_ERROR") + " " + exception.Message, exception)); } }
public ResultBM UpdateDonor(DonorBM donorBm) { try { OrganizationBLL organizationBll = new OrganizationBLL(); ResultBM resultOrganization = null; OrganizationBM organizationBm = null; DonorDAL donorDal = new DonorDAL(); PersonBLL personBll = new PersonBLL(); PersonBM personBm = null; ResultBM validationResult; ResultBM personResult; DonorDTO donorDto; // El validador no es necesario porque el donador es una combinación de otras entidades que ya poseen validadores. validationResult = IsValid(donorBm); if (!validationResult.IsValid()) { return(validationResult); } personResult = personBll.UpdatePerson(donorBm); if (!personResult.IsValid()) { return(personResult); } if (donorBm.organization != null) { resultOrganization = organizationBll.UpdateOrganization(donorBm.organization); if (!resultOrganization.IsValid()) { return(resultOrganization); } //if (resultOrganization.GetValue() == null) return new ResultBM(ResultBM.Type.FAIL, "Se ha producido un error al guardar la organización del donador.", resultOrganization); organizationBm = resultOrganization.GetValue <OrganizationBM>(); } personBm = personResult.GetValue() as PersonBM; donorDto = new DonorDTO(personBm.id, donorBm.donorId, organizationBm == null ? 0 : organizationBm.id, donorBm.CanBeContacted); donorDal.UpdateDonor(donorDto); return(new ResultBM(ResultBM.Type.OK, "Se ha creado el donador " + donorBm.name + " " + donorBm.lastName + ".", donorBm)); } catch (Exception exception) { return(new ResultBM(ResultBM.Type.EXCEPTION, SessionHelper.GetTranslation("UPDATING_ERROR") + " " + exception.Message, exception)); } }