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

E5E3: As a user, I can start a conflict about the deal, so I can express I do not agree to the deal anymore #37

Open
matthewcarano opened this issue Sep 9, 2022 · 1 comment
Milestone

Comments

@matthewcarano
Copy link
Contributor

matthewcarano commented Sep 9, 2022

Abstract:

A request becomes a deal when both parties agree to the deal, and are equally invested in it.

Either Seeker or Provider may put the deal in a state of conflict. This means the funds are locked, and only the Marketplacemaintainer can decide how the funds will be paid out.

How it could work:

On the detail-view of the deal, the user taps "Start conflict". The user then inputs a reason for starting the conflict. This reason appears in the deal's chat.

The Marketplacemaintainer is added to the chat conversation.

In the deal chat a service message appears that says: "This deal is now in conflict, the Marketplacemaintainer (name_Marketplacemaintainer) is added". The reason for conflict, stated by the user, is also transferred into the chat.


What it looks like:

Screen Shot 2022-09-21 at 7 34 46 AM

Screen Shot 2022-09-09 at 3 49 35 PM

Screen Shot 2022-09-09 at 3 39 09 PM

Screen Shot 2022-09-21 at 7 35 43 AM

When an item is in a deal, directly below the green area a button is visible with copy "start conflict" (seen by both Seeker and Provider) (1).

When this button is tapped, the view changes to the reason-input-view (2). This view contains:

  • inputfield, label "What’s your motivation for putting this deal in conflict?"
  • a black x-mark (cancel button)
  • a big white iconbutton with next-icon (confirm button)

When the inputfield is empty, the confirm button is disabled. When the inputfield contains at least 1 character, the confirm button is enabled.
Tapping the cancelbutton aborts the whole action (thus changing the view back to the detailview. Tapping the confirm-button changes the view to the confirm-conflict-page (3).

The copy on the confirm-conflict-page (3) is "Do you want to start a conflict on [deal name]?".

The small copy is "This can not be undone. The marketplace maintainer will be notified to help resolve this conflict."

After signing through the password-unlock component (4), the view changes to conflict-progress page (5).

conflict-progress page (5) is a processing page (https://github.com/swarmcity/SwarmCityPM#26), in this case the copy is "Action is being processed."

The view automatically changes back to the detailview of the item, now showing that the item is in conflict (6), visible directly below the request text:

  • a dotted horizontal line
  • the reply of the Provider, consisting of:
    • reply description
    • Datetime
    • "for" (small) and "(amount)" and "DAI"
    • avatar
    • name an "•" and ProviderRep* and "SWR" (blue)
      *visually presented simple as "SWR"
  • a horizontal divider line
  • a chat-button
  • copy "This deal is in conflict."
  • smaller copy "The Marketplacemaintainer is added to the chat."
  • avatar of Marketplacemaintainer
  • name of Marketplacemaintainer
  • a red border
  • a button with (black) copy "payout" (ONY VISIBLE FOR SEEKER)

When looking at the item in conflict on the marketplace-page (7), we see some visual elements have been added to express that the item is in conflict:

  • the avatar of the Marketplacemaintainer is added, horizontally after and behind the avatar of the provider
  • copy "This deal is in conflict."

Screen Shot 2022-09-09 at 3 57 16 PM

In the chatview it will also be visible that the deal is now in conflict.

  • Marketplacemaintainer avatar added to the top of the chat screen
  • timestamp of when deal was put in conflict
  • a "servicemessage" with copy: "This deal is now in conflict"
  • The avatar of the one who put the deal in conflict
  • copy: '[username]'s motivation'
  • The motivation for putting the deal in conflict, as stated by the one who putted this deal in conflict.
  • timestamp of when the Marketplacemaintainer was added.
  • a "servicemessage" with copy: "The marketplace maintainer is added."
  • avatar of Marketplacemaintainer
  • username of Marketplacemaintainer

Desktop view:

Screen Shot 2022-09-09 at 4 09 41 PM

Screen Shot 2022-09-09 at 4 09 50 PM

Screen Shot 2022-09-09 at 4 10 44 PM

Screen Shot 2022-09-09 at 4 11 02 PM

Screen Shot 2022-09-09 at 4 11 13 PM

Screen Shot 2022-09-21 at 8 05 30 AM

@kikipluche kikipluche added this to the Episode 5 milestone Oct 20, 2022
@matthewcarano
Copy link
Contributor Author

The rest of the conflict flow (from the perspective of the marketplace owner) is in Issues #192 and #43.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants