The commit eliminates packaging-related DTOs, services, and transformers that are no longer in use. It introduces functionality to support user node management, including repository methods, new DTOs, and a GeoApiService placeholder. Adjustments were also made to schema constraints and node transformations.
Eliminates unused controllers, services, DTOs, and models for packaging and property types from the codebase. Streamlines the repository by renaming and refactoring existing classes to improve module organization.
Renamed classes and methods to improve naming consistency and enhance readability. Introduced overloaded `listCountries` methods handling both paginated and full data retrieval. Adjusted query logic and added documentation for improved maintainability.
Added full CRUD functionality for users and groups with JDBC templates, including pagination and group membership management. Refactored service layers to streamline DTO transformations and repository interactions.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.