diff --git a/entities/cargo_entity.cpp b/entities/cargo_entity.cpp new file mode 100644 index 0000000..4169e06 --- /dev/null +++ b/entities/cargo_entity.cpp @@ -0,0 +1,21 @@ +#include "cargo_entity.h" + +cargo_entity::cargo_entity(const QString &title, int volume) : _title(title), _volume(volume) { + this->_id = volume; + auto hash = QCryptographicHash::hash(title.toLocal8Bit(), QCryptographicHash::Md5); + for (auto bit : hash) { + this->_id |= bit; + } +} + +unsigned long long cargo_entity::id() { + return this->_id; +} + +QString cargo_entity::title() { + return this->_title; +} + +unsigned int cargo_entity::volume() { + return this->_volume; +} diff --git a/entities/cargo_entity.h b/entities/cargo_entity.h new file mode 100644 index 0000000..1aed358 --- /dev/null +++ b/entities/cargo_entity.h @@ -0,0 +1,24 @@ +#ifndef CARGO_ENTITY_H +#define CARGO_ENTITY_H + +#include +#include + + +class cargo_entity +{ +private: + unsigned long long _id; + QString _title; + unsigned int _volume; + +public: + cargo_entity() = default; + cargo_entity(const QString &title, int volume); + + unsigned long long id(); + QString title(); + unsigned int volume(); +}; + +#endif // CARGO_ENTITY_H