Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: cXML punchout functionality #550

Merged
merged 8 commits into from
Apr 1, 2021

Conversation

shauke
Copy link
Collaborator

@shauke shauke commented Feb 15, 2021

PR Type

[x] Feature

What Is the Current Behavior?

Add cXML punchout functionality and OCI punchout improvements/API update + additional PWA additions.

login/start cXML punchout session

  • login cXML user with URL parameter 'access-token'
  • fetch cXML session data by 'sid'
  • use given basketid from session data
  • save returnUrl for cXML transfer cart
  • improved error handling (including logout)

transfer basket to cXML punchout system

  • ICM returns cXML for punchout request
  • send cXML response to given return url
  • transfer button handling improvement (use disabeling)
  • error handling

show reduced storefront UI for cXML punchout user

  • ishHasNotRole with string array ['APP_B2B_OCI_USER', 'APP_B2B_CXML_USER']
  • ishHasNotRole not working with SSR (footer still visible)

OCI punchout improvements

  • initialize concurrent OCI punchout user sessions with different baskets
  • use new OCI Punchout REST API v2 including product validation and background search

General

  • fix broken e2e tests
  • set basketid via state management and use this basketid in basket service (single source of truth)
  • export currentBasketId similar to ApiService.b2bUserEndpoint() and use this in payment.service

Does this PR Introduce a Breaking Change?

[x] Yes

BREAKING CHANGES: required Intershop Commerce Management version: 7.10.29.0 (cXML), 7.10.28.0 (OCI)

@shauke shauke added the feature New feature or request label Feb 15, 2021
@shauke shauke added this to the 0.29 milestone Feb 15, 2021
@shauke shauke added the wait Waiting for something (e.g. new ICM release) label Mar 3, 2021
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch 3 times, most recently from e2d8dd4 to 7c9b604 Compare March 4, 2021 09:42
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch 3 times, most recently from 2b93013 to 882cf4e Compare March 17, 2021 20:04
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch from 882cf4e to 4f135f5 Compare March 19, 2021 08:22
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch from 466c8b8 to c86c274 Compare March 29, 2021 15:19
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch from 07dd017 to cab1388 Compare March 31, 2021 08:32
@shauke shauke marked this pull request as ready for review March 31, 2021 08:42
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch 2 times, most recently from e3f609e to af27bdb Compare April 1, 2021 07:29
SGrueber and others added 4 commits April 1, 2021 11:54
…d of 'current'

- add functionality to directly trigger the creation of a new basket and use this basket for subsequent basket interactions
- add functionality to load a specific basket with a given basket id and use this basket for subsequent basket interactions
- provide currentBasketEndpoint() basket REST API wrapper helper function

Co-authored-by: Stefan Hauke <s.hauke@intershop.de>
Co-authored-by: Danilo Hoffmann <dhhyi@aol.com>
… check against multiple roles if one is included

- explicitly trigger the change detection if the directive result changes (fix to apply UI changes after login/logout)
…dation and background search

- create a new basket for every punchout session to avoid basket conflicts for concurrent sessions
- removed no longer needed mock data

BREAKING CHANGES: required Intershop Commerce Management version: 7.10.28.0
… adaptions

- check for new 'APP_B2B_CXML_USER' or 'APP_B2B_OCI_USER' role
- check for new permission 'APP_B2B_SEND_PUNCHOUT_BASKET'

BREAKING CHANGES: required Intershop Commerce Management version: 7.10.29.0
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch from af27bdb to 4329160 Compare April 1, 2021 09:59
@shauke shauke removed the wait Waiting for something (e.g. new ICM release) label Apr 1, 2021
- login user from cXML PunchOutSetupResponse with access-token from URL
- use basket given by cXML session information
- transfer basket with cXML PunchOutOrderMessage

BREAKING CHANGES: required Intershop Commerce Management version: 7.10.29.0
@shauke shauke force-pushed the feature/login-user-via-token-from-url-parameter branch from 4329160 to 0fb8db2 Compare April 1, 2021 10:40
@shauke shauke merged commit b23d5ef into develop Apr 1, 2021
@shauke shauke deleted the feature/login-user-via-token-from-url-parameter branch April 1, 2021 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants