Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
getAddressCollection example
if
(
$context
->
getCustomer
(
)
=== null
)
{
throw
CartException::
customerNotLoggedIn
(
)
;
}
$customer
=
$context
->
getCustomer
(
)
;
$criteria
=
new
Criteria
(
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'id',
$addressId
)
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'customerId',
$customer
->
getId
(
)
)
)
;
$address
=
$this
->listAddressRoute->
load
(
$criteria
,
$context
,
$customer
)
->
getAddressCollection
(
)
->
get
(
$addressId
)
;
if
(
!
$address
)
{
throw
CustomerException::
addressNotFound
(
$addressId
)
;
}
return
$address
;
}
/** * @throws InconsistentCriteriaIdsException */
$addressId
=
$request
->
get
(
'addressId'
)
;
if
(
!Uuid::
isValid
(
$addressId
)
)
{
throw
new
InvalidUuidException
(
$addressId
)
;
}
$criteria
=
new
Criteria
(
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'id',
$addressId
)
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'customerId',
$customer
->
getId
(
)
)
)
;
$address
=
$this
->listAddressRoute->
load
(
$criteria
,
$context
,
$customer
)
->
getAddressCollection
(
)
->
get
(
$addressId
)
;
if
(
!
$address
)
{
throw
CustomerException::
addressNotFound
(
$addressId
)
;
}
return
$address
;
}
}
$page
=
$this
->genericLoader->
load
(
$request
,
$salesChannelContext
)
;
$page
= AddressListingPage::
createFrom
(
$page
)
;
$page
->
setSalutations
(
$this
->
getSalutations
(
$salesChannelContext
)
)
;
$page
->
setCountries
(
$this
->
getCountries
(
$salesChannelContext
)
)
;
$criteria
=
(
new
Criteria
(
)
)
->
addSorting
(
new
FieldSorting
(
'firstName', FieldSorting::ASCENDING
)
)
;
$page
->
setAddresses
(
$this
->listAddressRoute->
load
(
$criteria
,
$salesChannelContext
,
$customer
)
->
getAddressCollection
(
)
)
;
$page
->
setCart
(
$this
->cartService->
getCart
(
$salesChannelContext
->
getToken
(
)
,
$salesChannelContext
)
)
;
$page
->
setAddress
(
$page
->
getAddresses
(
)
->
get
(
$request
->
get
(
'addressId'
)
)
)
;
$this
->eventDispatcher->
dispatch
(
new
AddressListingPageLoadedEvent
(
$page
,
$salesChannelContext
,
$request
)
)
;
private
function
getById
(
string
$addressId
, SalesChannelContext
$context
, CustomerEntity
$customer
)
: CustomerAddressEntity
{
if
(
!Uuid::
isValid
(
$addressId
)
)
{
throw
new
InvalidUuidException
(
$addressId
)
;
}
$criteria
=
new
Criteria
(
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'id',
$addressId
)
)
;
$criteria
->
addFilter
(
new
EqualsFilter
(
'customerId',
$customer
->
getId
(
)
)
)
;
$address
=
$this
->listAddressRoute->
load
(
$criteria
,
$context
,
$customer
)
->
getAddressCollection
(
)
->
get
(
$addressId
)
;
if
(
!
$address
)
{
throw
CustomerException::
addressNotFound
(
$addressId
)
;
}
return
$address
;
}
private
function
handleCustomerVatIds
(
RequestDataBag
$dataBag
, SalesChannelContext
$context
, CustomerEntity
$customer
)
: void
{
$dataBagVatIds
=
$dataBag
->
get
(
'vatIds'
)
;