20#ifndef ORES_REFDATA_CORE_REPOSITORY_BUSINESS_UNIT_TYPE_REPOSITORY_HPP
21#define ORES_REFDATA_CORE_REPOSITORY_BUSINESS_UNIT_TYPE_REPOSITORY_HPP
25#include <sqlgen/postgres.hpp>
26#include <boost/uuid/uuid.hpp>
27#include "ores.logging/make_logger.hpp"
28#include "ores.database/domain/context.hpp"
29#include "ores.refdata.api/domain/business_unit_type.hpp"
38 inline static std::string_view logger_name =
39 "ores.refdata.repository.business_unit_type_repository";
41 [[nodiscard]]
static auto& lg() {
43 static auto instance = make_logger(logger_name);
55 void write(
const std::vector<domain::business_unit_type>& business_unit_types);
57 std::vector<domain::business_unit_type> read_latest();
58 std::vector<domain::business_unit_type> read_latest(
const boost::uuids::uuid&
id);
59 std::vector<domain::business_unit_type> read_latest_by_code(
const std::string& code);
61 std::vector<domain::business_unit_type> read_all(
const boost::uuids::uuid&
id);
62 void remove(
const boost::uuids::uuid&
id);
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Database persistence layer for risk domain types.
Definition book_entity.hpp:28
Context for the operations on a postgres database.
Definition context.hpp:47
Classification of organisational unit roles within a hierarchy.
Definition business_unit_type.hpp:37
Reads and writes business unit types to data storage.
Definition business_unit_type_repository.hpp:36