diff --git a/.github/workflows/e2e-tests-xray_frontend.yml b/.github/workflows/e2e-tests-xray_frontend.yml
index 782da21677..f86969bc58 100644
--- a/.github/workflows/e2e-tests-xray_frontend.yml
+++ b/.github/workflows/e2e-tests-xray_frontend.yml
@@ -116,7 +116,7 @@ jobs:
CYPRESS_ADMIN_PW: ${{ secrets.TRACE_X_ADMIN_PW }}
CYPRESS_USER_LOGIN: ${{ secrets.TRACE_X_USER_LOGIN }}
CYPRESS_USER_PW: ${{ secrets.TRACE_X_USER_PW }}
- REDIRECT_URI: https://traceability-portal-e2e-a.dev.demo.catena-x.net/dashboard
+ CYPRESS_REDIRECT_URI: https://traceability-portal-e2e-a.dev.demo.catena-x.net/dashboard
- name: Submit results to Xray
# we don't want to submit results to xray when it was run by PR
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index 88686f29ac..a7726390f9 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -17,42 +17,42 @@ jobs:
run: echo HELM_VERSION=$(cat charts/traceability-foss/CHANGELOG.md | sed -n 's/.*\[\([0-9]\+\.[0-9]\+\.[0-9]\+\)\].*/\1/p' | head -n 1) >> $GITHUB_ENV
- name: Update Chart.yaml appVersion
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/Chart.yaml
- name: Update Chart.yaml version
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml
- name: Update frontend dependency version in Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.dependencies[0].version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml
- name: Update backend dependency version in Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.dependencies[1].version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/Chart.yaml
- name: Update frontend version in frontend/Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/charts/frontend/Chart.yaml
- name: Update frontend appVersion in frontend/Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/charts/frontend/Chart.yaml
- name: Update backend version in backend/Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.version = "${{ env.HELM_VERSION }}"' charts/traceability-foss/charts/backend/Chart.yaml
- name: Update backend appVersion in frontend/Chart.yaml
- uses: mikefarah/yq@v4.42.1
+ uses: mikefarah/yq@v4.43.1
with:
cmd: yq -i eval '.appVersion = "${{ github.ref_name }}"' charts/traceability-foss/charts/backend/Chart.yaml
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8b531f5253..6857e53d51 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,7 @@ _**For better traceability add the corresponding GitHub issue number in each cha
- #706 Created notification classes to support both alert and investigations
- #706 Notification controller having the same endpoints as alerts and investigations controllers
- #736 add contractAgreementId as searchable field for /contracts
+- Added capitalization section in guidelines.md
### Changed
- #709 Bumped spring-core from 6.0.17 to 6.1.5
@@ -32,6 +33,10 @@ _**For better traceability add the corresponding GitHub issue number in each cha
- #718 update tj-actions/changed-files from v42 to v44
- #718 update maven-project-info-reports-plugin from 3.4.5 to 3.5.0
- #718 update jsonschema2pojo-core from 1.1.1 to 1.2.1
+- #718 migrate Spring Boot from 3.1.9 to 3.2.4
+- #630 Updated user manual with new part detailed view also for supplier and customer parts
+- #736 fixed bug in request logic of contracts detailed view
+- Improved the release documentation
### Removed
- Shedlock, resilence4j, templateResolver as not used anymore
diff --git a/DEPENDENCIES_BACKEND b/DEPENDENCIES_BACKEND
index 52eb6fcef4..6bdeb0e558 100644
--- a/DEPENDENCIES_BACKEND
+++ b/DEPENDENCIES_BACKEND
@@ -108,7 +108,7 @@ maven/mavencentral/io.micrometer/micrometer-core/1.12.4, Apache-2.0 AND (Apache-
maven/mavencentral/io.micrometer/micrometer-jakarta9/1.12.4, Apache-2.0, approved, #12923
maven/mavencentral/io.micrometer/micrometer-observation/1.12.4, Apache-2.0, approved, #11680
maven/mavencentral/io.micrometer/micrometer-registry-prometheus/1.11.4, Apache-2.0, approved, #9805
-maven/mavencentral/io.micrometer/micrometer-registry-prometheus/1.12.4, , restricted, clearlydefined
+maven/mavencentral/io.micrometer/micrometer-registry-prometheus/1.12.4, Apache-2.0, approved, #14187
maven/mavencentral/io.minio/minio/8.5.6, Apache-2.0, approved, #9097
maven/mavencentral/io.opentelemetry/opentelemetry-api/1.29.0, Apache-2.0, approved, #10088
maven/mavencentral/io.opentelemetry/opentelemetry-api/1.31.0, Apache-2.0, approved, #11087
@@ -330,12 +330,12 @@ maven/mavencentral/org.hibernate.validator/hibernate-validator/8.0.1.Final, Apac
maven/mavencentral/org.javassist/javassist/3.29.2-GA, Apache-2.0 AND LGPL-2.1-or-later AND MPL-1.1, approved, #6023
maven/mavencentral/org.jboss.logging/jboss-logging/3.5.0.Final, Apache-2.0, approved, #9471
maven/mavencentral/org.jboss.logging/jboss-logging/3.5.3.Final, Apache-2.0, approved, #9471
-maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-common/1.9.0, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-common/1.9.23, , restricted, clearlydefined
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-common/1.9.0, Apache-2.0, approved, #14186
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-common/1.9.23, Apache-2.0, approved, #14186
maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.6.10, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.9.23, , restricted, clearlydefined
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.9.23, None, restricted, #14188
maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.6.10, Apache-2.0, approved, clearlydefined
-maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.9.23, , restricted, clearlydefined
+maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.9.23, None, restricted, #14185
maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib/1.6.20, Apache-2.0, approved, clearlydefined
maven/mavencentral/org.jetbrains.kotlin/kotlin-stdlib/1.9.23, Apache-2.0, approved, #11827
maven/mavencentral/org.jetbrains/annotations/24.1.0, Apache-2.0, approved, clearlydefined
@@ -350,7 +350,7 @@ maven/mavencentral/org.junit.platform/junit-platform-launcher/1.10.2, EPL-2.0, a
maven/mavencentral/org.junit.platform/junit-platform-suite-api/1.10.2, EPL-2.0, approved, #9707
maven/mavencentral/org.junit.platform/junit-platform-suite-commons/1.10.2, EPL-2.0, approved, #9716
maven/mavencentral/org.junit.platform/junit-platform-suite-engine/1.10.2, EPL-2.0, approved, #9710
-maven/mavencentral/org.junit.platform/junit-platform-suite/1.10.2, , restricted, clearlydefined
+maven/mavencentral/org.junit.platform/junit-platform-suite/1.10.2, EPL-2.0, approved, #14183
maven/mavencentral/org.jvnet.mimepull/mimepull/1.9.15, CDDL-1.1 OR GPL-2.0-only WITH Classpath-exception-2.0, approved, CQ21484
maven/mavencentral/org.latencyutils/LatencyUtils/2.0.3, BSD-2-Clause, approved, CQ17408
maven/mavencentral/org.mockito/mockito-core/5.7.0, MIT AND (Apache-2.0 AND MIT) AND Apache-2.0, approved, #11424
@@ -387,7 +387,7 @@ maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-client/3.
maven/mavencentral/org.springframework.boot/spring-boot-starter-oauth2-resource-server/3.2.4, Apache-2.0, approved, #11931
maven/mavencentral/org.springframework.boot/spring-boot-starter-security/3.2.4, Apache-2.0, approved, #12069
maven/mavencentral/org.springframework.boot/spring-boot-starter-test/3.2.4, Apache-2.0, approved, #12917
-maven/mavencentral/org.springframework.boot/spring-boot-starter-thymeleaf/3.2.4, , restricted, clearlydefined
+maven/mavencentral/org.springframework.boot/spring-boot-starter-thymeleaf/3.2.4, Apache-2.0, approved, #14184
maven/mavencentral/org.springframework.boot/spring-boot-starter-tomcat/3.2.4, Apache-2.0, approved, #11923
maven/mavencentral/org.springframework.boot/spring-boot-starter-validation/3.2.4, Apache-2.0, approved, #12921
maven/mavencentral/org.springframework.boot/spring-boot-starter-web/3.2.4, Apache-2.0, approved, #11916
diff --git a/docs/RELEASE.md b/docs/RELEASE.md
index 0d6d3b5aea..a2d52d4eab 100644
--- a/docs/RELEASE.md
+++ b/docs/RELEASE.md
@@ -3,40 +3,50 @@
Product Traceability FOSS Release guide
-## Release an app
-Prerequisite:
-Make sure eclipse / catena git repositories are in sync
+# Release an app
-1) Decide which version will be incremented. Following shows example for 1.0.0
-2) Create a release branch in [IRS](https://github.com/eclipse-tractusx/item-relationship-service) named release/trace-x-irs-client-lib-release
+### Prerequisite:
+- Make sure eclipse / catena git repositories are in sync
+- Before releasing Trace-X, it is required to go through the [IRS Library Release](#irs-library-release) steps
+
+### IRS Library Release
+The goal is to not use a -SNAPSHOT version in the Trace-X Release.
+1) Check if the irs-registry-client version has a -SNAPSHOT suffix: [IRS Repo](https://github.com/eclipse-tractusx/item-relationship-service/blob/f731e2e7403b738d516a7a25b19c756cc32b04f3/pom.xml#L76)
+2) If yes, continue with the next steps. If no, skip to the [Trace-X Release process](#trace-x-release-process)
3) Click on the [Update irs-registry-client Version workflow](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/update-registry-library.yaml).
-4) Select "Run workflow," choose the release branch and select the type of version increment major, minor or patch. Use the Semantic Versioning guidelines to accurately determine the specific type of version increment. [Semantic Versioning](https://semver.org/spec/v2.0.0.html). Don't forget to check the box to remove the snapshot.
-5) The irs lib version in (irs)[https://github.com/eclipse-tractusx/item-relationship-service/blob/65a42336b7ec7ae50690ec7590d05d8e3b15555a/pom.xml#L76] should align with the potential (newer one)[https://github.com/catenax-ng/tx-traceability-foss/blob/fb1130d4c1dd4f869e61d334310e99bc191fa0c7/pom.xml#L103] in trace-x main
-6) A pull request (name: Update irs-registry-client to "Version") will be generated in which you have to make sure the irs lib version is now correct (change it manually if necessary). Check if Actions finish successfully. (If Dash IP Check fails, update the DEPENDENCIES file with the mvn command on the generated pull request branch)
-7) Merge the created Pull request and make sure the release branch is deleted afterward (default behaviour).
-8) In [IRS](https://github.com/eclipse-tractusx/item-relationship-service), the gitHub action [Upload to Central Maven Registry ](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/maven-deploy.yaml) will release the irs-registry-client library with the version defined in step 3
-9) Create and Checkout release branch on catena /release/1.0.0
-10) Update in the above created release branch to the created one in step 3.
-11) Edit changelog: Align the new version (1.0.0) with the changes and add new UNRELEASED section
-12) Edit /charts/traceability-foss/CHANGELOG.md
-13) Add an Entry for an incremented (patch) version (1.0.0 -> 1.0.1)
-14) Push onto /release/1.0.0 catena and eclipse
-15) Open Release App Page Catena: https://github.com/catenax-ng/tx-traceability-foss/releases
-16) Draft a new release
-17) On dropdown choose a tag - use the version 1.0.0 (Create new tag will appear - select it)
-18) On dropdown target use your /release/1.0.0
-19) Title = Version of app -> 1.0.0
-20) Description = Changelog Content of app
-21) Checkbox set as latest release
-22) Verify that github action [Release](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/release.yaml) generation has been triggered
-23) Verify that an automatic pull request has been opened (Prepare Helm release for next version)
-24) Validate that the versions within that pull requests are correct
-25) Merge pull request (Prepare Helm release for next version)
-26) Merge release branch into main (when merging make sure to restore release branch since it should stay)
-27) Open the github action for helm release generation: https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/helm-chart-release.yaml
-28) Execute it from main branch
-29) Validate that the helm charts release has been generated within the release page
-30) Create a new branch from release/1.0.0 and name it release/helm-environments-1.0.0 (helm app version not chart version)
-31) Repeat step 8 to 23 for tractus-x: [GitHub Releases page](https://github.com/eclipse-tractusx/traceability-foss/releases)
-32) Sync catena and eclipse main branch
-33) Create a message in the Trace-X channel of the Eclipse Foundation Chat to notify the community about the new release (add a link to the tractus-x release)
+4) Select "Run workflow" select the type of version increment major, minor or patch (Can be adjusted on generated PR branch). Check the box to remove the snapshot. Click on "Run".
+5) A pull request (name: Update irs-registry-client to "Version") will be generated in which you have to make sure the irs lib version is now correct (change it manually if necessary).
+6) Merge the generated Pull request
+7) The GitHub action [Upload to Central Maven Registry ](https://github.com/eclipse-tractusx/item-relationship-service/actions/workflows/maven-deploy.yaml) will automatically release the irs-registry-client library with the new version defined in step 4
+
+### Trace-X Release process
+
+1) Decide which to which version the release trace-x will be incremented. Following shows example for releasing a version 1.0.0
+2) Create and Checkout release branch on catena /release/1.0.0
+3) Optional: If [IRS Library Release](#irs-library-release) was needed:
+ 1) If the action of [IRS Library Release](#irs-library-release) step 7 was executed successfully
+ 2) Update in the above created release
+4) Edit changelog: Align the new version (1.0.0) with the changes and add a new UNRELEASED section
+5) Edit /charts/traceability-foss/CHANGELOG.md
+6) Add an Entry for an incremented (patch) version (1.0.0 -> 1.0.1)
+7) Update the [Compatability Matrix](https://github.com/catenax-ng/tx-traceability-foss/blob/main/COMPATIBILITY_MATRIX.md) with a new entry for the release version
+8) Push onto /release/1.0.0 catena and eclipse
+9) Open Release App Page Catena: https://github.com/catenax-ng/tx-traceability-foss/releases
+10) Draft a new release
+11) On dropdown choose a tag - use the version 1.0.0 (Create new tag will appear - select it)
+12) On dropdown target use your /release/1.0.0
+13) Title = Version of app -> 1.0.0
+14) Description = Changelog Content of app
+15) Checkbox set as latest release
+16) Verify that GitHub action [Release](https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/release.yaml) generation has been triggered
+17) Verify that an automatic pull request has been opened (Prepare Helm release for next version)
+18) Validate that the versions within that pull requests are correct
+19) Merge pull request (Prepare Helm release for next version)
+20) Merge release branch into main (when merging make sure to restore release branch since it should stay)
+21) Open the GitHub action for helm release generation: https://github.com/catenax-ng/tx-traceability-foss/actions/workflows/helm-chart-release.yaml
+22) Execute it from main branch
+23) Validate that the helm charts release has been generated within the release page
+24) Create a new branch from release/1.0.0 and name it release/helm-environments-1.0.0 (helm app version not chart version)
+25) Repeat step 9 to 24 for tractus-x: [GitHub Releases page](https://github.com/eclipse-tractusx/traceability-foss/releases)
+26) Sync catena and eclipse main branch
+27) Create a message in the Trace-X channel of the Eclipse Foundation Chat to notify the community about the new release (add a link to the tractus-x release)
diff --git a/docs/src/docs/arc42/cross-cutting/safety-security.adoc b/docs/src/docs/arc42/cross-cutting/safety-security.adoc
index 317366bee7..afe3c3c281 100644
--- a/docs/src/docs/arc42/cross-cutting/safety-security.adoc
+++ b/docs/src/docs/arc42/cross-cutting/safety-security.adoc
@@ -13,8 +13,7 @@ JWT token should also contain two claims:
The list of values will be converted to roles by Trace-X.
Currently, Trace-X API handles three roles: **'User'** and **'Supervisor'** and **'Admin'.**
-// TODO: Add Link to the role matrix
-You can have a look at the rights and roles matrix in the system overview of the administration guide.
+You can have a look at the https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/src/docs/administration/system-overview.adoc#rights-and-role-matrix-of-trace-x[rights and role matrix] in the system overview of the administration guide.
=== Trace-X as EDC client
diff --git a/docs/src/docs/arc42/introduction-goals/requirements.adoc b/docs/src/docs/arc42/introduction-goals/requirements.adoc
index f63e2dba08..2b9b7ec4df 100644
--- a/docs/src/docs/arc42/introduction-goals/requirements.adoc
+++ b/docs/src/docs/arc42/introduction-goals/requirements.adoc
@@ -8,8 +8,8 @@
* Notifications/Messages regarding quality-related incidents and a tool for inspecting the supply chain.
== Essential features
-* List and view manufactured parts based on BoM AsBuild
-* List and view planned parts based on BoM AsPlanned
+* List, view and publish manufactured parts based on BoM AsBuild
+* List, view and publish planned parts based on BoM AsPlanned
* Filter and search functionality on part views
* Show detailed information on manufactured parts from AAS description assets and Aspects
* Uses Submodels SerialPart, AssemblyPartRelationship and Batch
diff --git a/docs/src/docs/arc42/solution-strategy/structure.adoc b/docs/src/docs/arc42/solution-strategy/structure.adoc
index fde12a0419..e9f81a699a 100644
--- a/docs/src/docs/arc42/solution-strategy/structure.adoc
+++ b/docs/src/docs/arc42/solution-strategy/structure.adoc
@@ -6,7 +6,7 @@ It roughly can be broken down into the following parts:
* Asset controllers to get the asset information
* Dashboard controller to get dashboard related summed up information
* Registry controller to fetch assets from the Digital Twin Registry
-* Notification controllers to get notification information and create EDC notification offers
+* Notification controller to get notification information and create EDC notification offers
* Submodel controller for providing asset data functionality
* Import controller for importing Trace-X data for data provisioning
* Contract controller to get information about contract agreements
diff --git a/docs/src/docs/user/user-manual.adoc b/docs/src/docs/user/user-manual.adoc
index 205d8b6c25..d5aa9ae38f 100644
--- a/docs/src/docs/user/user-manual.adoc
+++ b/docs/src/docs/user/user-manual.adoc
@@ -101,26 +101,26 @@ Navigates to the Catena-X portal.
Only applicable for the admin user role.
Possibility to check the network status based on logfiles and will provide access to configuration possibilities for the application.
-==== Contracts View and export
+==== Contracts view and export
-In the Contracts View an admin user can view contract agreements and sort them by the contract ID.
+In the Contracts view an admin user can view contract agreements and sort them by the contract ID.
-Also, it's possible to select contracts and export/download them as a .csv file
+Also, it's possible to select contracts and export/download them as a .csv file.
image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/user-guide/admin_contract_view.png[]
-By clicking on the burger menu of a data row you can get to the detailed view of a contract
+By clicking on the burger menu of a data row you can get to the detailed view of a contract.
-==== Contract Detailed View
+==== Contract detailed view
-The Contract Detailed View is divided into two sections.
+The contract detailed view is divided into two sections.
On the left, you'll find a
general overview of the contract data.
On the right, policy details are
-displayed in JSON format. Use the View Selector to switch between
-JSON View and JSON Tree View. Expand the policy details card on the right
+displayed in JSON format. Use the view selector to switch between
+JSON view and JSON tree view. Expand the policy details card on the right
upper side for full-width display.
image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/user-guide/admin_contract_detailed_view.png[]
@@ -290,7 +290,7 @@ Information about the identifiers at the customer for the respective part/batch.
==== Traction battery code data
If the asset has the "traction battery code" aspect model, an additional section underneath will be displayed.
-In this section there are detailed information about the traction battery and a table with its subcomponents
+In this section there is detailed information about the traction battery and a table with its subcomponents
==== Creation of a quality incident from detailed view
diff --git a/docs/src/images/arc42/user-guide/customer-parts-list-detailed-view.png b/docs/src/images/arc42/user-guide/customer-parts-list-detailed-view.png
index a895bc0628..39468fb1d7 100644
Binary files a/docs/src/images/arc42/user-guide/customer-parts-list-detailed-view.png and b/docs/src/images/arc42/user-guide/customer-parts-list-detailed-view.png differ
diff --git a/docs/src/images/arc42/user-guide/supplier-parts-list-detailed-view.png b/docs/src/images/arc42/user-guide/supplier-parts-list-detailed-view.png
index f071b4a852..8ee3be52d7 100644
Binary files a/docs/src/images/arc42/user-guide/supplier-parts-list-detailed-view.png and b/docs/src/images/arc42/user-guide/supplier-parts-list-detailed-view.png differ
diff --git a/docs/src/uml-diagrams/arc42/cross-cutting/domain-model/domain-model-quality-notifications.puml b/docs/src/uml-diagrams/arc42/cross-cutting/domain-model/domain-model-quality-notifications.puml
index f821996874..03b2bd71af 100644
--- a/docs/src/uml-diagrams/arc42/cross-cutting/domain-model/domain-model-quality-notifications.puml
+++ b/docs/src/uml-diagrams/arc42/cross-cutting/domain-model/domain-model-quality-notifications.puml
@@ -7,6 +7,8 @@ title: Quality Notification Domain
class QualityNotification {
bpn : BPN;
+ title : String;
+ type: QualityNotificationType;
notificationId : QualityNotificationId;
notificationStatus : QualityNotificationStatus;
description: String;
@@ -19,6 +21,11 @@ class QualityNotification {
messages: List;
}
+enum QualityNotificationType{
+ ALERT;
+ INVESTIGATION;
+}
+
class QualityNotificationId {
id: Long;
}
@@ -61,6 +68,7 @@ enum QualityNotificationStatus{
QualityNotification --> QualityNotificationId
QualityNotification --> BPN
+QualityNotification --> QualityNotificationType
QualityNotification --> QualityNotificationStatus
QualityNotification --> QualityNotificationSide
QualityNotification *-- QualityNotificationMessage
diff --git a/docs/src/uml-diagrams/arc42/runtime-view/data-consumption-process.puml b/docs/src/uml-diagrams/arc42/runtime-view/data-consumption-process.puml
index 81e4c40908..13255f1ef1 100644
--- a/docs/src/uml-diagrams/arc42/runtime-view/data-consumption-process.puml
+++ b/docs/src/uml-diagrams/arc42/runtime-view/data-consumption-process.puml
@@ -10,7 +10,7 @@ participant IRS
User -> TraceX: Open asset list
TraceX -> DTR: lookup assets by configured BPN
rnote right TraceX
-Once per day, schedule based
+Every 2 hours, schedule based
end rnote
TraceX <-- DTR: List
diff --git a/frontend/GUIDELINES.md b/frontend/GUIDELINES.md
index 7e62794b6f..b24c67ca98 100644
--- a/frontend/GUIDELINES.md
+++ b/frontend/GUIDELINES.md
@@ -206,6 +206,13 @@ You might find some CSS warnings on vscode. To disable those, you must configure
This prevents the default linter from validating the css.
+### Capitalization
+Please make sure to follow this [capitalization guideline](https://developers.google.com/style/capitalization) to keep consistent capitalization throughout the UI.
+
+The most significant rules are:
+- The start of a header / label / sentence begins with an upper case followed by lowercase letters
+- Domain specific names such as "As-Built", "As-Planned" can also be written in upper case even when the letter is not at the start of a header / label / sentence.
+
### Icons
We use the open source icons from [Material Icons](https://fonts.google.com/icons?query=Material+Icon).
diff --git a/frontend/TESTING.md b/frontend/TESTING.md
index 5deaad5eca..11c0e4bef7 100644
--- a/frontend/TESTING.md
+++ b/frontend/TESTING.md
@@ -27,7 +27,8 @@ To be able to use Behavior-driven development (BDD) approach we have configured
### Using host machine browsers
- local env (via cypress app):
- - run command `ng e2e` - it should open new window with Cypress tool
+ - Prerequisite: Having a cypress.local.config.ts file which contains all env variables. It will be ignored by git.
+ - run command `npm run cypress:local` - it should open new window with Cypress tool
- click on "E2E testing" and then on "Start E2E Testing in Chrome"
- you should see new window under url: http://localhost:4200/\_\_/#/specs when you can click on given scenario to run it.
- local env (run tests in command line): `yarn run cypress:run`
diff --git a/frontend/package.json b/frontend/package.json
index 16e3509f83..09e6104f9a 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -33,6 +33,7 @@
"e2e": "ng e2e",
"cypress:open": "cypress open",
"cypress:local": "cypress open --config-file cypress.local.config.ts",
+ "cypress:run-local": "cypress run --config-file cypress.local.config.ts",
"cypress:run": "cypress run"
},
"private": true,
diff --git a/frontend/src/app/modules/page/admin/presentation/contracts/contracts.component.ts b/frontend/src/app/modules/page/admin/presentation/contracts/contracts.component.ts
index 7855cc9369..c4974ce485 100644
--- a/frontend/src/app/modules/page/admin/presentation/contracts/contracts.component.ts
+++ b/frontend/src/app/modules/page/admin/presentation/contracts/contracts.component.ts
@@ -34,7 +34,6 @@ export class ContractsComponent {
this.contractsFacade.setContracts(0,10,[null,null]);
}
})
- console.log("ngOnInit")
this.pagination = { page: 0, pageSize: 10, sorting: [ '', null ] };
this.tableConfig = {
diff --git a/frontend/src/app/modules/page/admin/presentation/contracts/contracts.facade.ts b/frontend/src/app/modules/page/admin/presentation/contracts/contracts.facade.ts
index 440b54d10e..a6d8cba5df 100644
--- a/frontend/src/app/modules/page/admin/presentation/contracts/contracts.facade.ts
+++ b/frontend/src/app/modules/page/admin/presentation/contracts/contracts.facade.ts
@@ -1,12 +1,12 @@
-import {Injectable} from '@angular/core';
-import {Pagination} from '@core/model/pagination.model';
-import {Contract} from '@page/admin/core/admin.model';
-import {AdminService} from '@page/admin/core/admin.service';
-import {ContractsState} from '@page/admin/presentation/contracts/contracts.state';
-import {provideDataObject} from '@page/parts/core/parts.helper';
-import {TableHeaderSort} from '@shared/components/table/table.model';
-import {View} from '@shared/model/view.model';
-import {Observable, Subject, Subscription} from 'rxjs';
+import { Injectable } from '@angular/core';
+import { Pagination } from '@core/model/pagination.model';
+import { Contract } from '@page/admin/core/admin.model';
+import { AdminService } from '@page/admin/core/admin.service';
+import { ContractsState } from '@page/admin/presentation/contracts/contracts.state';
+import { provideDataObject } from '@page/parts/core/parts.helper';
+import { TableHeaderSort } from '@shared/components/table/table.model';
+import { View } from '@shared/model/view.model';
+import { Observable, Subject, Subscription } from 'rxjs';
@Injectable()
export class ContractsFacade {
@@ -46,7 +46,7 @@ export class ContractsFacade {
public setSelectedContractById(contractId: string): void {
this.selectedContractSubscription = this.adminService.getContracts(0, 10, [null,null], {contractId: [contractId]}).subscribe({
- next: data => (this.contractsState.selectedContract = { data: data.content as unknown as Contract}),
+ next: data => (this.contractsState.selectedContract = { data: data.content[0] as unknown as Contract}),
error: error => (this.contractsState.selectedContract = {error})
})
}
diff --git a/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.html b/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.html
index 37f6bda677..b703b7cacf 100644
--- a/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.html
+++ b/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.html
@@ -72,104 +72,6 @@
-
-
-
-
- find_in_page
- {{ 'pageTitle.investigations' | i18n }}
-
-
-
-
-
- drafts
-
- {{ 'commonAlert.tabs.received' | i18n }}
-
-
-
-
-
-
-
-
- remove_red_eye
- {{ 'commonAlert.viewAll' | i18n }}
-
-
-
-
-
-
-
-
-
-
-
-
-
- drafts
-
- {{ 'commonAlert.tabs.queuedAndRequested' | i18n }}
-
-
-
-
-
-
-
-
- remove_red_eye
- {{ 'commonAlert.viewAll' | i18n }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -188,7 +90,7 @@
drafts
- {{ 'commonAlert.tabs.received' | i18n }}
+ {{ 'commonAlert.tabs.queuedAndRequested' | i18n }}
@@ -213,12 +115,12 @@
@@ -229,7 +131,7 @@
drafts
- {{ 'commonAlert.tabs.queuedAndRequested' | i18n }}
+ {{ 'commonAlert.tabs.received' | i18n }}
@@ -254,12 +156,12 @@
diff --git a/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.ts b/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.ts
index 68bf92c159..0edd845bf4 100644
--- a/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.ts
+++ b/frontend/src/app/modules/page/dashboard/presentation/dashboard.component.ts
@@ -70,7 +70,7 @@ export class DashboardComponent implements OnInit, OnDestroy {
const {
link: alertLink,
queryParams: alertQueryParams,
- } = getRoute(ALERT_BASE_ROUTE, NotificationStatusGroup.RECEIVED);
+ } = getRoute(ALERT_BASE_ROUTE, NotificationStatusGroup.QUEUED_AND_REQUESTED);
this.alertLink = alertLink;
this.alertParams = alertQueryParams;
diff --git a/frontend/src/app/modules/shared/components/request-notification/request-notification.component.ts b/frontend/src/app/modules/shared/components/request-notification/request-notification.component.ts
index de6559ed9c..b9ea051f40 100644
--- a/frontend/src/app/modules/shared/components/request-notification/request-notification.component.ts
+++ b/frontend/src/app/modules/shared/components/request-notification/request-notification.component.ts
@@ -97,8 +97,9 @@ export class RequestNotificationComponent {
const { description, bpn, severity } = this.formGroup.value;
const { link, queryParams } = getRoute(ALERT_BASE_ROUTE, NotificationStatusGroup.QUEUED_AND_REQUESTED);
-
let type = this.isInvestigation ? 'INVESTIGATION' : 'ALERT';
+
+
this.notificationService.createAlert(partIds, description, severity, bpn, isAsBuilt, type).subscribe({
next: () => this.onSuccessfulSubmit(link, queryParams),
error: (err) => this.onUnsuccessfulSubmit(err.error.message),
diff --git a/frontend/src/app/modules/shared/components/toasts/toast-message/toast-message.component.html b/frontend/src/app/modules/shared/components/toasts/toast-message/toast-message.component.html
index 6641630b6a..d96fe73094 100644
--- a/frontend/src/app/modules/shared/components/toasts/toast-message/toast-message.component.html
+++ b/frontend/src/app/modules/shared/components/toasts/toast-message/toast-message.component.html
@@ -26,7 +26,7 @@
{{ toastMessage.message | i18n }} {{toastMessage.stringMessage}}
{{toastMessage?.actions[0].text | i18n}}
+ href="{{toastMessage?.actions[0].link}}?tabIndex={{toastMessage?.actions[0]?.linkQueryParams?.tabIndex}}">{{toastMessage?.actions[0].text | i18n}}
spring-boot-starter-oauth2-resource-server
-
org.springframework.security
diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asbuilt/service/AssetAsBuiltServiceImpl.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asbuilt/service/AssetAsBuiltServiceImpl.java
index 93b8c389f6..984eb35784 100644
--- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asbuilt/service/AssetAsBuiltServiceImpl.java
+++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asbuilt/service/AssetAsBuiltServiceImpl.java
@@ -70,6 +70,7 @@ protected BomLifecycle getBomLifecycle() {
return BomLifecycle.AS_BUILT;
}
+ @Override
protected JobRepository getJobRepository() {
return jobRepository;
}
diff --git a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asplanned/service/AssetAsPlannedServiceImpl.java b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asplanned/service/AssetAsPlannedServiceImpl.java
index 302e2ac429..a4c23b070d 100644
--- a/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asplanned/service/AssetAsPlannedServiceImpl.java
+++ b/tx-backend/src/main/java/org/eclipse/tractusx/traceability/assets/domain/asplanned/service/AssetAsPlannedServiceImpl.java
@@ -65,6 +65,7 @@ protected BomLifecycle getBomLifecycle() {
return BomLifecycle.AS_PLANNED;
}
+ @Override
protected JobRepository getJobRepository() {
return jobRepository;
}
diff --git a/tx-backend/src/test/java/org/eclipse/tractusx/traceability/integration/common/config/RestAssuredConfig.java b/tx-backend/src/test/java/org/eclipse/tractusx/traceability/integration/common/config/RestAssuredConfig.java
index 346b246b9a..ab3d73a23e 100644
--- a/tx-backend/src/test/java/org/eclipse/tractusx/traceability/integration/common/config/RestAssuredConfig.java
+++ b/tx-backend/src/test/java/org/eclipse/tractusx/traceability/integration/common/config/RestAssuredConfig.java
@@ -32,7 +32,7 @@ public class RestAssuredConfig {
private final ServerProperties serverProperties;
@EventListener(WebServerInitializedEvent.class)
- void onServletContainerInitialized(WebServerInitializedEvent event) {
+ void onServletContainerInitialized() {
RestAssured.port = serverProperties.getPort();
}
}
diff --git a/tx-cucumber-tests/src/test/java/org/eclipse/tractusx/traceability/test/tooling/rest/RestProvider.java b/tx-cucumber-tests/src/test/java/org/eclipse/tractusx/traceability/test/tooling/rest/RestProvider.java
index 81f102c5d1..f346f205bb 100644
--- a/tx-cucumber-tests/src/test/java/org/eclipse/tractusx/traceability/test/tooling/rest/RestProvider.java
+++ b/tx-cucumber-tests/src/test/java/org/eclipse/tractusx/traceability/test/tooling/rest/RestProvider.java
@@ -174,7 +174,7 @@ public void closeNotification(final Long notificationId) {
))
.then();
try {
- ValidatableResponse validatableResponse = result.statusCode(HttpStatus.SC_NO_CONTENT);
+ result.statusCode(HttpStatus.SC_NO_CONTENT);
return true;
} catch (Exception e) {
return false;