дипломная работа. Даар. Разработка службы курьерской доставки в мобильном приложении
Скачать 0.63 Mb.
|
Раздел 4. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СЕРВЕРНОЙ ЧАСТИ СИСТЕМЫ И МОБИЛЬНЫХ ПРИЛОЖЕНИЙ4.1 Разработка структуры базы данныхВ процессе разработки системы была спроектирована база данных, представленная на рисунке 6. Структура позволяет гибко управлять как пользователями системы, так и курьерскими заказами, и их оплатой, а также устройствами пользователей с учетом того, что у пользователя может быть несколько устройств. Рисунок 6 – Структура разработанной базы данных Ниже, представлены основные таблицы, составляющие костяк системы. Все таблицы базы данных можно разделить на три категории: Категория «Посылка» Таблица t_order Таблица содержит информацию о типе отправляемой посылки. Таблица содержит следующие поля: idt_order. Первичный ключ; size_x, size_y, size_z. Габариты груза, указывается если груз не является документами (указан параметр idc_packet_type); dc_packet_type. Тип документов (А3, А4, А5 и т.д.).
Таблица t_order Таблица содержит информацию о текущем заказе. Таблица содержит следующие поля: idt_order. Первичный ключ; order_state. Статус заказа (курьер едет в точку «А», курьер находится в точке «А», получил посылку и т.д.); phone. Телефон отправителя; order_number. Уникальный номер заказа, необходим для идентификации заказов курьерами и клиентами; sender_name. Имя отправителя или название компании отправителя; rec_phone. Телефон получателя; rec_name. Имя получателя или название компании получателя; cost. Стоимость заказа; pickup_time. Время в которое необходимо забрать посылку. Храниться в виде таймштампа. По умолчанию, текущее время. delivery_time. Время доставки посылки, по умолчанию также текущее время. При сохранении значений происходит проверка pickup_time<= delivery_time; size_x, size_y, size_z. Габариты груза, указывается если груз не является документами (указан параметр idc_packet_type); idc_packet_type. Тип документов (А3, А4, А5 и т.д.); weight. Вес посылки; addr_a. Адрес точки А; lat_a, long_a. Координаты точки Б; addr_b. Адрес точки Б; lat_b, long_b. Координаты точки Б; cost_earn. Сумма выплаты курьеру за вычетом комиссии (20%); order_photo. Фотография груза. Храниться строка в виде Url фотографии на сервере; is_already_payed. Булевый флаг. Истина если заказ уже оплачен по безналичному расчету, ложь если оплата наличными.
Категория «Клиент» Таблица t_client Таблица содержит информацию о клиенте сделавшем курьерский заказ. Таблица содержит следующие поля: idt_client. Первичный ключ; a_time. Дата регистрации пользователя; email. Электронный адрес; idt_city. Город проживания; first_name, last_name, middle_name. Фамилия имя и отчество пользователя; rate. Рейтиг пользователя в баллах от 1 до 5; statistic. Статистические данные. Собираются с помощью сервиса FabricCrashlytics (модель телефона, ip, браузер, источник трафика). |