== Database Creation Во овој дел е прикажан процесот на креирање и иницијализација на базата на податоци преку DDL и DML скрипти, како и дефинирање на погледи (views) за поедноставување на одредени пребарувања и прикажување на податоците. == DDL скрипта за креирање на табелите [[html(ddl.sql)]] Во оваа DDL скрипта се поставени повеќе ограничувања со цел да се спречи внесување невалидни податоци и да се зачува конзистентноста на самиот систем. На пример, кај корисниците се проверува дали email адресите и телефонските броеви се во валиден формат, дали лозинката има минимална должина и дали датумот на раѓање е реален. Слични проверки има и кај компании, возила, регистрации и плаќања, каде што не се дозволени негативни цени, невалидни координати или датуми што логички не се точни. Дополнително, поставени се ограничувања со кои се осигурува дека: - датумот на истекување е секогаш по датумот на издавање, - крајното време на возење е по почетното, - rating вредностите се во дозволен опсег, - секвенците (seqno) се уникатни во рамки на еден ентитет, - еден preference може да се однесува или на компанија или на freelance возач, но не на двата истовремено. == DML скрипта за пополнување на табелите [[html(dml.sql)]] == Погледи [[html(views.sql)]] - `vw_unassigned_requests`: Ги прикажува сите барања за превоз кои сe уште немаат добиено понуда (т.е. се во статус pending), заедно со основни информации за клиентот кој го креирал барањето. - `vw_live_offers_for_customer`: Прикажува активни понуди за одредени клиенти, со детали за цената, ETA и податоци за возачот и клиентот за полесна комуникација и следење. - `vw_available_drivers`: Ги враќа возачите кои моментално се достапни за возење, земајќи ги предвид валидноста на возачката дозвола и дали моментално се на смена. - `customer_payments_ride`: Прикажува информации за извршени плаќања од клиенти поврзани со завршени возења, вклучувајќи износ, метод на плаќање и време на завршување на возењето. - `all_drivers`: Прикажува листа на сите возачи без разлика дали се регистрирани како возачи во компанија или како фриленс возачи, заедно со основни кориснички податоци (име, презиме, телефон, email) и ознака дали припаѓаат на компанија (from_company = true) или се фриленс возачи (from_company = false). - `reports_on_drivers_rides`: Прикажува пријави поврзани со возења, заедно со податоци за возачот и возилото, со цел следење на инциденти и проблеми. - `reviews_on_drivers`: Прикажува оценки и коментари за возачите базирани на завршени возења, за анализа на квалитетот на услугата. - `user_message_driver`: Ги прикажува пораките испратени од клиенти до возачи во рамки на конкретно возење, со цел следење на комуникацијата. - `vw_live_ride_monitor`: Обезбедува реален преглед на активни возења, вклучувајќи податоци за клиент, возач, компанија, број на патници и статус на возењето за оперативен мониторинг.