PCS EC Sprint 64

Submitted by Anna Géczi on 13 January, 2021 - 08:58
Basic
Description
Summary
Key No.Brief DescriptionIssue type
[RNE014-2885]Dossier wizard: Change of validity period is not savedStory
[RNE014-3892]Fix issue with required time when pap is used in the subpath. Meaning Make sure that the required time is handled correctly when the user edits the subpath with PaPs.Story
[RNE014-3892]Remove duplicate dossier archives. We have duplicate dossier archives in the dataBase. In most of the systems, the archives belong to PaPs. The reason for this is that we are receiving the same update request multiple times at the same time. To overcome this problem, we can add a unique constraint for the change number per dossier archive. This should be fixed. Test cases:
- Create dossier from the wizard with two territories
- Add the first territory in the existing dossier (only departure time is required)
- Add the last territory in the existing dossier (arrival and departure times are required)
- Add sub-path in the first territory (only departure time is required)
- Add sub-path in the last territory (arrival and departure time are required)
- Add sub-path with Pap in the first territory (only departure time is required)
- Add sub-path with Pap in the last territory (arrival and departure time are required)
- Edit sub-path with Pap and add a first and last path section (only the first path section should have required fields)
- Add user variant (it is used the same logic as in 1) case)
Story
[RNE014-3893]Remove duplicate dossier archives. We have duplicate dossier archives in the dataBase. In most of the systems, the archives belong to PaPs. The reason for this is that we are receiving the same update request multiple times at the same time. To overcome this problem, we can add a unique constraint for the change number per dossier archive.Bug
[RNE014-3894]Excel import error improvements:
- Throw Validation exception when:
    • All columns of a row are empty
    • The 'Null' row is encountered
- Show errors in the following cases:
    • The PaP doesn't contain path sections or it contains only one
    • Duplicate locations (primary location code or name)
    •Duplicate directions
Story
[RNE014-3598]Implement excel import using the new template. Rename the module from "pcs-import" to "pcs-import-excel". There are two types of imports: RFC and CT. They have different excel sheets, so check the difference. We should create a new service where ExcelParser will be used. In a similar way as it works in the CatalogImportReader. Define the excel configuration and presentation models. Implement custom validators if needed (boolean, times...). Validate the excel sheets. We need to make sure that all sheets defined by the configuration are present. Add a unit parsing test for the provided configuration.Story
[RNE014-3608]Copy times - copy public/earliest/latest times. When the user applies the copy times option, he/she shall have the possibility to include the public/earliest/latest times in the copy. Earliest/latest and public times should be visible all the time.
1.) What should be done:
- Add information for coping of public and earliest/latest times in the copy strategy and copy times input
- Handle coping of times in the case when these options are selected by the user
- Add checkboxes on the frontend for public times and earliest/latest times
- Show these times on each path section
2.) Additional changes:
- Change label in sub-path view. Additional Times -> Earliest, Latest, Public (based on condition)
- Copy Times View. By default earliest, latest, the public is included. If not selected the earliest, latest, the public is not shown. Based on the selection and data build label.
- Change icon 'timer' to 'checkmark'
Story
[RNE014-3609]Include Catalogue path number and Path number to PDF export. Include Catalogue path number and path number to PDF export, only if the numbers are fulfilled.Story
[RNE014-3637]Parameter changes for removed values too - backend. Showing the added and changed values are already implemented. Regarding the removed values, PCS will show the removed parameter with its value as strikethrough. The change will also be included in the PDF export. Note: In the presentation model we should add information for the type of change (remove, insert/update) and removed value.
- Adjust service for calculation of train parameter changes
- Adjust presentation model to keep information for removed changes
Story
[RNE014-3883]Parameter changes for removed values too - frontend. In this view, the removed parameters should be shown with their value as strikethrough.Story
[RNE014-3742]Implement excel reader. Implement a general excel reader that reads and parses data from an excel document. The purpose of this reader is to parse the excel document, validate the data inside the cells, and produce a new intermediate result which later will be used to create the actual domain models. Also in case of validation errors, it needs to produce an appropriate result that will contain all errors and their corresponding row and cell numbers. The reader should support the processing of multiple sheets. To allow declarative processing of the data inside the excel document, we can create some kind of a composite structure and a builder to simplify the creation of the structure. For each cell, we can have basic data validation such as number, required, email, data, etc. The validation of the data consistency will be done after the input is parsed. This way we can have a specialized cell parser that can parse and validate a single cell and return parse results. The result may contain the data if it's parsed successfully or an error if it can't parse the data. The parse result should contain a row and cell number so we can use the latter while parsing the intermediate result.Story
[RNE014-3744]Error handling. Keep all errors in an object that can be returned to the client in order to fix the errors. We will have three types of errors:
• Parse Errors: Invalid cell data
• Data Errors: Errors that can be fixed in the wizard (OperationPoint, LocoType, ActivityType, Parameter)
• Data Warning: they can be ignored in the wizard. (OperationPointNotResolved, OperationPointInactive...
The parse errors will be detected early when parsing the excel document. And only when there are no parse errors, we can validate the structure further. To detect fixable errors, we can validate the intermediate result and validate the fields that can produce these kinds of errors.
Story
[RNE014-3745]Validate and save the intermediate resultStory
[RNE014-3746]Test excel import: Define excel test cases and check them in the application. Test cases for RFC and CT excel importsStory
[RNE014-3795]Add comments in the PDF. In the PDF Export options add Comments in order user to decide what he/she wants to do. Fetch comments for export in the case when export option Comments is selected (take into account ACL rules - if the user is able to see given comments). Implement comment in PDF service - comments should be shown in the same way as we show them in UIStory
[RNE014-3843]Last days of TTP: In case when we have a sub-path that does not belong to the last territory and the sub-path is running only on the last day of TTP and has an offset - the destination should be marked as an alternative destination.Story
[RNE014-3852]Cleanup the old excel import: delete all models and services that are used in the old import.Story
[RNE014-3872]Import Slovakian translationsStory
[RNE014-3875]Pap import - fix errorsStory
[RNE014-3876]Pap import - persist pap dossiersStory
[RNE014-3878] Define Direction on Dossier levelStory
[RNE014-3881]Validate that PaP import is working. Make sure that the async process for PaP import is started. Make sure that all data is converted and persisted properly.
What to check:
• Existing Parameter Set Codes are updated, new is not created
• Existing Distances are updated, new is not created
• Existing Dossiers are updated, new is not created
Story
[RNE014-3883]Replace Catalogue prefixes on the application level with Pap prefixes. All application services, converters, models related to pap import should have Pap prefix. Make sure that adjustments are made on the frontend too.Story
Issue type
Story
Priority
Major
Details
Taken in Patch Release
Wednesday, 23 December, 2020