Это простой сервис отслеживания посылок, написанный на Go с использованием СУБД SQLite, со следующий функционалом:
- регистрация новой посылки
- получение списка посылок клиента
- изменение статуса посылки
- изменение адреса доставки
- удаление посылки
- Информация о посылках хранится в БД
- Посылка может быть зарегистрирована, отправлена или доставлена
- При регистрации посылки создаётся новая запись в БД
- У только что зарегистрированной должен быть статус «зарегистрирована»
- Трек-номер посылки равен её идентификатору в таблице
- Если посылка в статусе «зарегистрирована», можно изменить адрес доставки или удалить посылку
main.goточка входа в программу:- реализует подключается к базе данных SQLite
- структура
Parcelпредставляет посылку с полями: номер, id клиента, статус, адрес, дата создания - структура
ParcelServiceреализует логику работы с посылками и использует объект типаParcelStoreдля работы с данными о посылке. Включает методы:Registerрегистрирует новую посылку, присваивает статус “registered”, генерирует дату создания и сохраняет вParcelStorePrintClientParcelsвыводит на консоль список посылок для указанного клиентаNextStatusобновляет статус посылки в соответствии с логикой (registered -> sent -> delivered)ChangeAddressизменяет адрес посылкиDeleteудаляет посылку из хранилища
parcel.go- реализация методов структурыParcelStore, описывающих CRUD операции взаимодействия с базой данных SQL.
go run main.go parcel.gogo build -o tracker ../tracker
Новая посылка № 1 на адрес Псков, д. Пушкина, ул. Колотушкина, д. 5 от клиента с идентификатором 1 зарегистрирована 2025-03-25T12:47:45Z
У посылки № 1 новый статус: sent
Посылки клиента 1:
Посылка № 1 на адрес Саратов, д. Верхние Зори, ул. Козлова, д. 25 от клиента с идентификатором 1 зарегистрирована 2025-03-25T12:47:45Z, статус sent
Посылки клиента 1:
Посылка № 1 на адрес Саратов, д. Верхние Зори, ул. Козлова, д. 25 от клиента с идентификатором 1 зарегистрирована 2025-03-25T12:47:45Z, статус sent
Новая посылка № 2 на адрес Псков, д. Пушкина, ул. Колотушкина, д. 5 от клиента с идентификатором 1 зарегистрирована 2025-03-25T12:47:45Z
Посылки клиента 1:
Посылка № 1 на адрес Саратов, д. Верхние Зори, ул. Козлова, д. 25 от клиента с идентификатором 1 зарегистрирована 2025-03-25T12:47:45Z, статус sent