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

Service task support in user interface #2349

Open
6 tasks
bjorntore opened this issue Aug 26, 2024 · 0 comments
Open
6 tasks

Service task support in user interface #2349

bjorntore opened this issue Aug 26, 2024 · 0 comments
Labels
area/process kind/user-story Used for issues that describes functionality for our users.

Comments

@bjorntore
Copy link
Contributor

bjorntore commented Aug 26, 2024

Description

This task is about creating frontend support for service tasks.

Service tasks are used to execute logic on the server that should be completed before the instance process continues.

We have implemented service tasks in such a way that when process next is called, and the process enters the service task, it's not imminently executed. The process is simply moved over to that task. Then, the next process next will cause the logic to execute. The reason we have done this is mostly due to error handling. If something fails while executing the service task, we want the process to be in that task, and allow for retrying, instead of it being stuck in the previous task.

This is similar to user actions, like signing and paying, which are also executed during a secondary request.

Backend PR: Altinn/app-lib-dotnet#745
Backend branch: feat/pdf-service-task

Additional Information

Image

Example flow:

  1. Frontend is in a data task.
  2. Frontend calls process next and enters the first service task.
  3. Frontend calls process next again. The service task logic is executed, and process moves to the next task.
  4. The next task is also a service task.
  5. The frontend calls process next to execute the service task, but it fails, and returns an error to frontend.
  6. Frontend can retry. If 'reject' path back to data task is added, that should work fine as well.

Tasks

  • Support service task in frontend.
  • Have ability to configure multiple tasks in the same PDF. Either via layout-set or via process task config.

Acceptance Criteria

  • Old PDF and eFormidling works just like before. Full backwards compatibility.
  • Can add a process task to render PDF of a number of tasks.
  • Can add process task to send eFormidling.
  • If a service task fails, the process current task is that service task, not another task.
@bjorntore bjorntore added kind/user-story Used for issues that describes functionality for our users. status/draft Status: When you create an issue before you have enough info to properly describe the issue. labels Aug 26, 2024
@bjorntore bjorntore moved this to 📈 Todo in Team Apps Aug 26, 2024
@bjorntore bjorntore added area/process and removed status/draft Status: When you create an issue before you have enough info to properly describe the issue. status/triage labels Aug 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/process kind/user-story Used for issues that describes functionality for our users.
Projects
Status: 📈 Todo
Development

No branches or pull requests

1 participant