in membership-attribute-service/app/controllers/ContactController.scala [75:96]
private def update(
contactRepository: ContactRepository,
contactId: String,
address: DeliveryAddress,
)(implicit logPrefix: LogPrefix): Future[Unit] = {
val contactFields = {
def contactField(name: String, optValue: Option[String]): Map[String, String] =
optValue map { value =>
Map(name -> value.trim)
} getOrElse Map()
val mergedAddressLines = DeliveryAddress.mergeAddressLines(address)
Map() ++
contactField("MailingStreet", mergedAddressLines) ++
contactField("MailingCity", address.town) ++
contactField("MailingState", address.region) ++
contactField("MailingPostalCode", address.postcode) ++
contactField("MailingCountry", address.country) ++
contactField("Delivery_Information__c", address.instructions) ++
contactField("Address_Change_Information_Last_Quoted__c", address.addressChangeInformation)
}
contactRepository.update(contactId, contactFields)
}