Commit Graph

283 Commits

Author SHA1 Message Date
b47c261487 added existence check to dictionary key usage 2024-02-14 16:55:21 +01:00
e8f6a17e7f change parameter order 2024-02-14 16:42:55 +01:00
c6bbbf94e3 do not use execute_scalar 2024-02-14 16:24:06 +01:00
77722703ac added trace output 2024-02-14 16:12:07 +01:00
fc1b55c7b9 added remaining fields to user query 2024-02-14 15:51:12 +01:00
8a6ded2813 fixes for errors reported in server log 2024-02-14 15:41:21 +01:00
898cfdf07d Merged current state of develop 2024-02-14 10:56:35 +01:00
6e114d15e7 Set default shipcall lookup to max 1 day in the past 2024-02-09 12:42:18 +01:00
e3017349b0 added finally statement to close pooledConnection under all circumstances 2024-02-05 09:48:34 +01:00
50b7dd8cc5 fix shipcall query to include times eta/etd 2024-02-04 11:20:32 +01:00
801c4a1383 fixed deleted in ship (was int, is now: bool) 2024-01-15 17:16:22 +01:00
708fa5ce37 fixed naming in query 2024-01-15 17:10:21 +01:00
801800df92 added missing fields in query 2024-01-15 17:04:49 +01:00
a4e51f2483 changed local path 2024-01-15 17:00:19 +01:00
c51264a55d added new fields to evaluation object 2024-01-15 16:25:08 +01:00
c1d8b2e855 fixed notification endpoint to return real data for a shipcall 2024-01-13 19:09:50 +01:00
1ef74b51ba added ship delete and fixed schema loading error for shipclass 2024-01-13 19:09:50 +01:00
dd4ae7def8 fixed error, but enum values are still serialized as int 2024-01-13 19:09:50 +01:00
01dda53425 Tried to create history endpoint but failed. Not working. 2024-01-13 19:09:50 +01:00
a52cc27d69 Fixed SQL and added endpoint for history data 2024-01-13 19:09:50 +01:00
ae9053bcaf Added POST and PUT endpoint for /ship 2024-01-13 19:09:50 +01:00
aba1d9d00b Changed validation rule 002 A-C so that the agency time is set as reference time allowing 15 minute deviation 2024-01-13 19:02:43 +01:00
d8fabe0f97 Fixed time comparison validation func. Now compares min/max value of array. 2024-01-13 19:01:56 +01:00
db2ba28d61 Merge branch 'bugfix/ui_fixes_1.1' into develop 2023-12-26 17:15:13 +01:00
e7e9d79c5d Version bump to 1.1.1 2023-12-26 17:13:10 +01:00
b4764e29b6 disable port authority validation logic 2023-12-24 11:20:43 +01:00
scopesorting
191aff720b Implemented the feature to ignore port administration. However, the flag is currently disabled. 2023-12-19 09:51:29 +01:00
scopesorting
e7b7d7e18f correcting 0004A & 0004B 2023-12-19 09:51:29 +01:00
scopesorting
ca8a7ab291 updating rule 0004A&0004B by using a rounding method for time differences. 2023-12-19 09:51:29 +01:00
scopesorting
a29b3ead0e bugfix of 0004A and B, where the tide window may have deviated by few seconds, so the wrong state would be concluded. 2023-12-19 09:51:29 +01:00
24757c1702 Version bump 1.0.0 -> 1.1.0 2023-12-17 11:12:52 +01:00
scopesorting
99c798bfe0 changing 'exit' with sys.exit to avoid 'NameError' for the exit call 2023-12-15 16:40:51 +01:00
scopesorting
31a5034e17 Solving: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit argument instead. Additional metadata: {'Required': False} 2023-12-15 16:40:51 +01:00
scopesorting
dfdd4da1d8 correcting minor typos in the documentation and verbosity 2023-12-15 16:40:51 +01:00
scopesorting
2f67e58ace created a feature flag, which disables the PORT_ADMINISTRATION validation rules. Currently, the flag is 'hardcoded' once in the library. Adapting the test to properly facilitate the feature flag
cherry picking all open adjustments to the develop branch.
2023-12-15 16:40:51 +01:00
scopesorting
ad7637368b removing unused if-statements 2023-12-15 16:40:51 +01:00
scopesorting
08ab984096 updating the sql handler's method of filtering for the filled-in header 2023-12-15 16:40:51 +01:00
scopesorting
836c1aa802 fixing the 'KeyError' when using an empty times dataframe. Returning 'green' 2023-12-15 16:40:51 +01:00
scopesorting
6ce6e882e9 more concise evaluation messages for 0001. Adding newlines (works on Windows) when multiple evaluation messages are shown. Properly adding the ShipcallType filters for each rule (whether incoming, outgoing or shifting). Added a regular expression to abbreviate an evaluation message when 512 characters are exceeded.
fixing a version conflict for validation rule functions.
2023-12-15 16:40:51 +01:00
scopesorting
d004e77650 created a feature flag, which disables the PORT_ADMINISTRATION validation rules. Currently, the flag is 'hardcoded' once in the library. Adapting the test to properly facilitate the feature flag
cherry picking the feature flag of 'port administration' rules
2023-12-15 16:40:51 +01:00
scopesorting
ad593ff2a2 more concise evaluation messages for 0001. Adding newlines (works on Windows) when multiple evaluation messages are shown. Properly adding the ShipcallType filters for each rule (whether incoming, outgoing or shifting). Added a regular expression to abbreviate an evaluation message when 512 characters are exceeded. 2023-12-01 09:44:22 +02:00
scopesorting
fce8ce0c68 changing the ParticipantType to an IntFlag, so multiple roles are possible. Adapting every validation rule (0001, 0003, 0004, 0005), which may be affected by this change. Changing the filter for a participant type to properly include the change. Changing the pier_side rule (0006B), which uses the shipcall and times_terminal. New shipcalls should now be evaluated properly, unless no participant is assigned at all. If the ladder case can occur, the validation rules 0001N+0001O will be added (held back for now). 2023-12-01 09:44:09 +02:00
scopesorting
6f9b4a6b5a removing verbosity in validation rule functions, and returning 'None', when a selected times dataframe is empty. In case of empty results, the function now properly computes the delta towards a query time and returns YELLOW, when a violation is observed. This should finally fix the bugs for 0001 A-M 2023-12-01 09:43:49 +02:00
scopesorting
9a12d74e77 updating validation rules 0001 A-M. Instead of filtering by times_df (which may not exist), the rules make use of the shipcall_participant_map. When one of the participants in a rule is not assigned, no violation is observed. When there are multiple entries of a participant (due to an input bug), the function still verifies properly. When critical time is observed, and there is not yet an entry for the respective key time, there will be a 'yellow' state. 2023-12-01 09:43:31 +02:00
scopesorting
9f61e2af38 updating check_time_delta_violation_query_time_to_now: no longer ignoring events of the past (delta<=0) 2023-12-01 09:43:17 +02:00
scopesorting
4859ff6803 ensuring that len(df_times) always works. Preventing 'None' from occuring 2023-12-01 09:42:48 +02:00
scopesorting
834da84786 minot adjustments & refactoring 2023-11-28 16:49:16 +02:00
scopesorting
8027620f22 fixing the 'KeyError' when using an empty times dataframe. Returning 'green' 2023-11-28 16:48:53 +02:00
c36e913472 added trace output and fixed a bug when saving shipcalls without times 2023-11-28 16:48:16 +02:00
721baa3a06 moved schedule import after venv sitepackage path set 2023-11-22 10:48:27 +01:00
scopesorting
fd0efe0046 adding schedule routine jobs, which will be executed in a background thread within WSGI while running the Flask application. 2023-11-21 12:47:04 +01:00
scopesorting
9346920a97 potentially solving the 'shipcall_id' error log 2023-11-21 11:51:49 +01:00
scopesorting
3cc1591aba potentially correcting 0006A/0006B 2023-11-21 11:41:56 +01:00
scopesorting
a5220fd6f2 refactoring: simplification of error messages. These now stem from a string, which is the function name. Previously, the inspect module was used with a rather complex function call to obtain the method's name. The simplification makes code more readable for future work. 2023-11-20 16:43:27 +01:00
scopesorting
49bbb77624 refactoring a few methods 2023-11-20 16:35:31 +01:00
scopesorting
40dc022b25 fixing np to_list error, which may have caused the evaluation function to stop altogether. 2023-11-20 16:22:58 +01:00
scopesorting
21e9c75781 typo. 2023-11-14 12:07:59 +01:00
scopesorting
c6d1bf30a6 adapting rules 0001-L & 0001-M (times terminal) and 0006-B. However, for 0006-B the provided solution is not verified, as the errors could not be reproduced locally. 2023-11-14 12:06:39 +01:00
fd5bd76db2
Merge pull request #15 from puls200/feature/hotfix_20231110
Feature/hotfix 20231110
2023-11-10 18:07:12 +01:00
scopesorting
e9aace6268 creating stub objects for every single validation function. Unit tests are created for each function to check whether they return 'GREEN' whenever no violation is expected, or 'YELLOW'/'RED' when a rule violation is artificially forced. The test framework now successfully runs 116 unit tests. Adapted some validation functions, applied refactoring and solved potential obstacles along the way. At least from the perspective of unit tests, every function now works as expected. 2023-11-10 17:59:08 +01:00
scopesorting
b2cde8b6f5 correcting the open issues from 09.11.2023 (0001 A-M was previously commited, 0006A+B are corrected herein) 2023-11-10 17:50:01 +01:00
9d61b95378 Version bump to 0.9.6 2023-11-10 14:36:25 +01:00
scopesorting
2374cf4ff0
Feature/removing pandas warning (#14)
* removing the Pandas 'sqlalchemy' warning by refactoring

* removing the Pandas 'sqlalchemy' warning by refactoring.

* reformatting
2023-11-07 07:08:52 +01:00
scopesorting
8606e1fdb6 removing the Pandas 'sqlalchemy' warning by refactoring
removing the Pandas 'sqlalchemy' warning by refactoring.

reformatting
2023-11-04 10:26:43 +01:00
ead190d219
Merge pull request #11 from puls200/feature/hotfix_20231031_traffic_lights
Validation rule bug fixes as noted in test version 0.9.4
2023-11-01 16:07:38 +01:00
scopesorting
8e2e676cb0 hotfixing open errors, as defined by Daniel Schick and Christin Hollman (26.10. and 27.10.). Adding descriptions for the error codes instead of using 'cryptic' function names. This should make the application much more readable. 2023-10-31 18:15:59 +01:00
1695ca101e Set development / feature branch to 'devel' settings, added scripts to move to test and to production. Added script to increase version, store version and to update the respective files 2023-10-29 17:56:06 +01:00
b254759562 fixed mixup in enum ids outgoing/shifting for shipcall queries 2023-10-28 12:43:36 +02:00
c8e634156b Allow changes of users phone and email contact info by the user 2023-10-26 16:29:17 +02:00
3e63b9ce46 added missing paranthesis 2023-10-26 16:21:26 +02:00
cc284b2612 fixed search query 2023-10-26 16:11:34 +02:00
13c5866884 Fixed eta / etd search error and evaluate searchFromEta as filter used against the back-end to retrieve shipcalls from the past 2023-10-26 15:00:15 +02:00
scopesorting
d1f4703102 updating rules 0002 A-C (check_participants_agree_on_estimated_time) and 0004 B (typo in function) 2023-10-25 14:20:24 +02:00
scopesorting
e4cb2eb639 correcting an import error for 'evaluate_shipcall_state', updating misc/Deployment to describe the creation of a virtual environment, Python installation and running tests (pytest and pytest-coverage). 2023-10-19 13:26:19 +02:00
scopesorting
25db0cf44f Adding validation rules (traffic light status) to the system. Post & Put calls of shipcalls and times now execute the traffic light evaluation and store the result in the connected MySQL database instance. The 'brecal_utils' library is merged with 'BreCal', including the stub objects and test functions. Requirements were adapted, and installation of a virtual environment works from scratch (on a linux system). 2023-10-17 09:09:35 +02:00
3044ca2621 add missing include 2023-10-16 18:47:22 +02:00
26b71052ae add missing key 2023-10-16 18:43:48 +02:00
2857c8693a fixes 2023-10-16 17:46:30 +02:00
da0287ae6e fixes 2023-10-16 17:42:45 +02:00
e5e262fd4f improve connection handling on startup 2023-10-16 17:31:57 +02:00
6597c46a9d removed connection data file 2023-10-16 15:36:38 +02:00
fe53c85447 made simple path change and added documentation pt 1 2023-10-16 15:34:18 +02:00
d36517f63b merged participant type for assignment side quest 2023-10-09 18:02:02 +02:00
c1a2f78a14 saving is possible (again), fixed the nested parameter 2023-10-09 17:37:44 +02:00
dc30fe9c53 added type flag to participant assignment for ship call pt. 1 2023-10-07 14:18:00 +02:00
eb51074328 Fixed issues when editing the shipcall as BSMD 2023-10-07 14:16:38 +02:00
da8ef2f113 bugfix 2023-10-07 14:16:38 +02:00
bf54b0e9d8 database extension 2023-10-06 16:13:05 +02:00
97adf65c0c Fixed all sorts of small bugs, should be working now 2023-10-04 10:38:08 +02:00
7d5887b29d Korrektur fürs Passwort ändern 2023-10-04 07:34:18 +02:00
6872df4278 Increased token timeout to 2 hours, introduced a background task to refresh token at about 70 min interval 2023-10-04 07:34:14 +02:00
916beedbb8 added evaluation and evaluation_message to shipcall (für die Ampel) 2023-09-29 14:22:04 +02:00
110ff5ccce EXTENDED TIMES TO DIFFERENTIATE BETWEEN PARTICIPANT TYPES
Participants can be of multiple types (e.g. agent and terminal), therefore the participant
type must be stored in the times data record in order to assign times correctly during
display and to differentiate in calculation.
2023-09-21 08:23:19 +02:00
89a6a4f726 extended times and use flags on participant, added code to have a test version of the client 2023-09-05 16:38:40 +02:00
f255b16ff4 Work in progress, edit dialog completed, saving new elements works 2023-08-23 09:38:44 +02:00
95fab27229 Edit and save a shipcall 2023-08-21 15:34:09 +02:00
411ea8135e Changing Password is functional through API and Client 2023-08-18 15:29:20 +02:00
3d7906a9f2 Synchronizing data structures including the latest changes in Excel spec
Database
API (yaml)
Flask
2023-08-17 10:05:48 +02:00
84462aead4 work on shipcall control 2023-08-14 16:00:34 +02:00
7655ebe724 put and post for participants of shipcall 2023-08-14 09:15:36 +02:00
dbf2ec3c5d saving participant entries, wip 2023-08-13 12:18:49 +02:00
794cd8efaf added shipcall participant list to API GET call 2023-08-11 15:07:42 +02:00
383f6a38c7 Client very WIP und Fehlerkorrektur API 2023-08-08 07:43:47 +02:00
6b93f0ac3f Type für Participant, Content-Type in responses korrigiert 2023-08-07 12:19:20 +02:00
8a9e3884fe Closing pooled connections 2023-07-27 09:58:06 +02:00
6d4392c1bc fixed error result values in python api 2023-07-13 10:07:23 +02:00
5544d0126d fixed complete participant download and removed all TODOs regarding
token verifikation. Also removed the /verify call since it is now covered by /login.
2023-07-11 15:46:17 +02:00
d2c84f8d68 A lot of small errors fixed on deployment, some things work different with mysql and MariaDB 2023-06-27 11:32:50 +02:00
3f211919af added JWT Authentication (expiring bearer token) 2023-06-26 08:38:45 +02:00
b9d35b9244 added a user login 2023-06-23 15:20:26 +02:00
15cc4bf8da API up and running.
There are still open issues but in principle, it is working
2023-06-22 10:56:13 +02:00
20f38fff91 POST zum Laufen gebracht.. RTFM! :-) 2023-06-20 07:44:27 +02:00
d0a77b3f0f die meisten GET calls sind drin, 2 funktionieren noch nicht 2023-06-19 16:04:02 +02:00
a40df31f9d Updated models for current API 2023-06-19 11:14:44 +02:00
a0b0462302 fixed participant loading 2023-06-19 10:23:40 +02:00
f6f2f73d01 some work on returning berths (ok) and participants (so far not ok) 2023-06-16 14:11:02 +02:00
fdeacdca6e Datenmodell neu, Verbindungsdaten Flask aus einer Datei laden 2023-06-16 12:25:53 +02:00
fd0497fee4 role / securable mappings 2023-04-21 11:57:04 +02:00
a833863761 added ship endpoint 2023-04-08 18:19:26 +02:00
205ab2e9f1 Tabellen mit Infos von Christin aktualisiert 2023-03-25 19:33:49 +01:00
f929ca338f Mit berths klappt es jetzt und so wird's auch passieren 2023-03-24 07:46:14 +01:00
f64ea1b7cd WIP, berths dont work yet 2023-03-23 17:56:04 +01:00
d4cad33513 some more preparational work done 2023-03-23 17:11:42 +01:00
1bca77bf12 included simple function to create api key 2023-03-19 12:13:42 +01:00
7898a72fdb successful connect with pydapper connection pool and local DB 2023-03-19 12:10:46 +01:00
695c5afee8 wip 2023-03-18 19:23:04 +01:00
8fb1d9b4d7 added logging lib 2023-03-17 09:03:26 +01:00
c88f55427d Merge branch 'yaml_export' into feature/db_storage 2023-03-17 08:50:24 +01:00
800801bc19 added new API for berths 2023-03-17 08:44:41 +01:00
b5c7a35e3d erster Versuch Daten aus der DB zu laden erfolgreich 2023-03-14 11:33:57 +01:00
d130dc08b0 updated environment 2023-03-12 11:56:24 +01:00
29419540de tried to return a participant 2023-03-04 15:37:03 +01:00
c69d13d1f3 Open API 3.0
- Added first draft of yaml file
- Added Python stubs generated by postman export tool
2023-03-02 09:22:37 +01:00