Commit graph

319 commits

Author SHA1 Message Date
Jan
8608fe349b Remove obsolete controllers and repositories.
This commit deletes unused controllers like PremiseController and repos such as NodeRepository. It also introduces new DTOs, services, and updates existing ones for improved modularity and functionality. These changes streamline the codebase and enhance maintainability.
2025-04-10 15:51:26 +02:00
Jan
dd830e0097 Rename "sink" references to "destination" in schema
Updated column names, table names, indexes, and foreign key references to replace "sink" with "destination" for consistency and clarity. Added new cost-related fields to the "premiss_destination" table to better represent associated expenses.
2025-04-08 12:54:58 +02:00
Jan
851c7823e0 Remove unused DTOs and services.
Unused DTOs and transformation services were removed to clean up the codebase and reduce clutter. Added new utility exceptions and DTOs, including `NotFoundException`, `ReferencedException`, and `LocationDTO`, to improve error handling and code organization.
2025-03-30 21:17:52 +02:00
Jan
b55aca0ddf Add DTOs, repositories, and logic for properties management.
Introduced new DTOs for handling properties at the packaging and country levels, alongside corresponding repositories and property validation. Enhanced CountryService and PackagingService with update and retrieval logic for property values. Updated database schema to support unique constraints and property mapping.
2025-03-29 21:14:03 +01:00
Jan
c5096b129b Remove outdated DTOs and refactor material-related services
Removed legacy DTOs (`PackagingDTO`, `PackagingListEntry`, etc.) that were no longer in use. Introduced modular, type-specific DTOs (`MaterialGetDTO`, `MaterialPostDTO`, etc.) and improved service layer responsibilities with a new `MaterialTransformerService`. This enhances maintainability and prepares for future feature extensions.
2025-03-28 21:35:55 +01:00
Jan
631a5c2f53 Refactor packaging and material models for improved clarity
Introduced dedicated classes (`PackagingMaterial`, `MaterialPackaging`, `PackagingSupplier`, `MaterialSupplier`) to better encapsulate packaging and material-related data. Updated repository methods and model references to ensure proper use of the new classes, improving maintainability and reducing ambiguity in the domain model.
2025-03-26 21:37:27 +01:00
Jan
2b0ee0d417 Refactor packaging-related classes and add new repository/service/controller.
Replaced `SearchQueryResult` utility class with a more robust `SearchQueryResult` under a new pagination package. Introduced `PackagingRepository` and `PackagingController` to manage packaging entities. Enhanced data models with new entities (`NodeType`, `PackagingDimension`), and updated existing ones (`Packaging`, `PackagingListEntry`) to improve modularity and support handling units.
2025-03-25 21:20:22 +01:00
Jan
6467a17cf8 Make CREATE TABLE statements idempotent with IF NOT EXISTS
Updated all CREATE TABLE statements to include the "IF NOT EXISTS" clause, ensuring schema initialization does not fail if tables already exist. Additionally, reorganized and split some table definitions for better modularity and maintainability.
2025-03-25 21:18:18 +01:00
Jan
e09983953a Refactor MaterialController to use MaterialService
Replaced direct MaterialRepository usage in MaterialController with MaterialService to encapsulate business logic. Introduced MaterialService, centralizing operations like create, update, and delete while adding normalization for part numbers. Updated MaterialRepository with a new `create` method and adjusted `getById` for clarity.
2025-03-25 10:54:54 +01:00
Jan
a1c8ef6b1b Add models, DTOs, repository, and controller for materials
Integrated Material domain entities with DTOs, repository, and controller, enabling CRUD functionality, pagination, and validation. Added utility classes like `UnitConverter`, and exception handling via global handlers. New classes include models for packaging, countries, and error handling structures.
2025-03-23 20:36:28 +01:00
Jan
332fd96eee Add user reference field in SysUserNode
Introduced a `user` field with `AggregateReference` to link SysUserNode to SysUser. This ensures better relational mapping and enforces non-null constraints with `@NotNull` and proper column mapping.
2025-03-21 21:15:00 +01:00
Jan
71639aac57 Add repository interfaces for core domain models
Introduce CrudRepository interfaces for managing core entities such as Premiss, SysUser, Material, and others. These additions enable basic CRUD operations for database interactions, streamlining persistence functionality in the application.
2025-03-21 21:14:23 +01:00
Jan
c4d3933061 Add entities for calculations, countries, rates, and nodes
Introduced several domain model classes for the application including `CalculationJob` and its related entities, `Country`, `RegionCode`, `ContainerRate`, and `DistanceMatrix`. These classes provide comprehensive data structures for logistics calculations, geographical mappings, and rate management.
2025-03-21 16:19:09 +01:00
Jan
d06bf1d881 Merge branch 'main' of git.avatic.de:avatic/lcc_tool 2025-03-20 19:10:09 +01:00
Jan
3e45368b3a Add comprehensive API documentation for LCC backend
This commit introduces a detailed README file outlining the LCC Backend API, including endpoint descriptions, request/response formats, and authentication methods. It covers various domains such as system configuration, transport rates, user management, calculations, and reporting. This documentation aims to assist developers in understanding and utilizing the API effectively.
2025-03-20 19:07:33 +01:00
Jan
b7866ad584 readme.md aktualisiert
Added link to database documentation
2025-03-18 11:22:29 +00:00
Jan
812441a9e0 Add comprehensive API documentation for LCC backend
This commit introduces a detailed README file outlining the LCC Backend API, including endpoint descriptions, request/response formats, and authentication methods. It covers various domains such as system configuration, transport rates, user management, calculations, and reporting. This documentation aims to assist developers in understanding and utilizing the API effectively.
2025-03-18 10:56:55 +01:00
Jan
19d8d236fa Add database schema and configuration properties
Introduced MySQL configuration and properties setup in `application.properties`. Added a comprehensive database schema covering users, logistics, packaging, and calculations. Updated `.gitignore` to exclude the `env.properties` file.
2025-02-25 18:31:47 +01:00
Jan
0f91ad44e8 first commit 2025-02-23 13:10:49 +01:00