| Version 13 (modified by , 4 days ago) ( diff ) |
|---|
Database Creation
Во овој дел е прикажан процесот на креирање и иницијализација на базата на податоци преку DDL и DML скрипти, како и дефинирање на погледи (views) за поедноставување на одредени пребарувања и прикажување на податоците.
DDL скрипта за креирање на табелите
Во оваа DDL скрипта се поставени повеќе ограничувања со цел да се спречи внесување невалидни податоци и да се зачува конзистентноста на самиот систем. На пример, кај корисниците се проверува дали email адресите и телефонските броеви се во валиден формат, дали лозинката има минимална должина и дали датумот на раѓање е реален. Слични проверки има и кај компании, возила, регистрации и плаќања, каде што не се дозволени негативни цени, невалидни координати или датуми што логички не се точни.
Дополнително, поставени се ограничувања со кои се осигурува дека:
- датумот на истекување е секогаш по датумот на издавање,
- крајното време на возење е по почетното,
- rating вредностите се во дозволен опсег,
- секвенците (seqno) се уникатни во рамки на еден ентитет,
- еден preference може да се однесува или на компанија или на freelance возач, но не на двата истовремено.
DML скрипта за пополнување на табелите
Погледи
vw_unassigned_requests: Ги прикажува сите барања за превоз кои сe уште немаат добиено понуда (т.е. се во статус pending), заедно со основни информации за клиентот кој го креирал барањето.vw_live_offers_for_customer: Прикажува активни понуди за одредени клиенти, со детали за цената, ETA и податоци за возачот и клиентот за полесна комуникација и следење.vw_available_drivers: Ги враќа возачите кои моментално се достапни за возење, земајќи ги предвид валидноста на возачката дозвола и дали моментално се на смена.customer_payments_ride: Прикажува информации за извршени плаќања од клиенти поврзани со завршени возења, вклучувајќи износ, метод на плаќање и време на завршување на возењето.vw_active_ride_vehicle_details: Ги прикажува клучните информации за возилото (бренд, модел, регистарска табличка) и возачот (име, телефон, проценето време на пристигнување - ETA) за возења кои се моментално активни (in_progress), со цел патникот лесно да го препознае таксито кое доаѓа да го земе.reports_on_drivers_rides: Прикажува пријави поврзани со возења, заедно со податоци за возачот и возилото, со цел следење на инциденти и проблеми.reviews_on_drivers: Прикажува оценки и коментари за возачите базирани на завршени возења, за анализа на квалитетот на услугата.user_message_driver: Ги прикажува пораките испратени од клиенти до возачи во рамки на конкретно возење, со цел следење на комуникацијата.vw_live_ride_monitor: Обезбедува реален преглед на активни возења, вклучувајќи податоци за клиент, возач, компанија, број на патници и статус на возењето за оперативен мониторинг.
Attachments (4)
- ddl.sql (18.4 KB ) - added by 3 weeks ago.
- dml.sql (81.7 KB ) - added by 3 weeks ago.
- views.sql (4.8 KB ) - added by 4 days ago.
- ddl (1).sql (18.4 KB ) - added by 6 hours ago.
Download all attachments as: .zip
