wiki:QueryViewsOptimization

Оптимизација на прашалници и погледи

Погледи

Овие погледи ги откриваат менито на ресторанот за пребарувањ и нарачки базирани на договорот помеѓу ресторанот и фирмата.

Поглед Цел Изворни табели Забелешки
v_menu_meal Ги листа сите оброци со категорија, ресторан, состојки и алергени meal, category, restaurant, meal_ingredient, ingredient, alergen_ingredient, alergen Користи CTE табели и string агрегација за листање на состојки/алергени
v_menu_drink Ги листа сите пијалоци со детали за ресторанот drink, restaurant Обичен join поглед без агрегации.

Orders и Deliveries

Овие погледи се основните оперативни погледи за креирање нарачки преку веб апликацијата.

Поглед Цел Изворни табели Забелешки
v_orders_full Покажува целосни детали за една нарачка, контекст заз купувач/компанија, достава и нарачани предмети. customer_order, company_order, customer, api_user, company, delivery, delivery_status, driver, order_status, order_meal, order_drink, meal, drink Користи CTE табели за да агрегира нарачани оброци и пијалоци во читливи листи
v_driver_deliveries Покажува назначени достави за возачи и соодветните нарачки delivery, delivery_status, driver, api_user, restaurant, company_order, company, customer_order, customer, order_meal, order_drink, meal, drink Го користи истиот шаблон за агрегирање на елементи од нарачката како и v_orders_full

Reviews

Овој поглед ги спојува двата поттипа на review во еден извештај.

Поглед Цел Изворни табели Забелешки
v_reviews_full Дава унифициран извештај за оценки на нарачки и достави. review, order_review, delivery_review, customer_order, delivery, company_order, customer, driver, api_user, company Користи UNION ALL да ги комбинира двата дела од извештајот

Contracts, Billing и Loyalty

Овие погледи поддржуваат креирање извештаи на ниво на компанија.

Поглед Цел Изворни табели Забелешки
v_contracts_revenue Го сумаризира приходот по компанија и ресторан за активните договори. contract, company, restaurant, contract_status, customer_order, company_order, order_meal, order_drink, meal, drink Користи restaurant-by-order CTE табела да ги мапира измешаните нарачки назад до ресторанот
v_company_billing_overview Покажува салдо од фактури, број на нарачки по customer и број на компаниски договори. invoice, company_order, customer_order, contract, company Користи CTE табели за број на договори на компанија и салдо од фактури.
v_customer_loyalty_full_v2 Го покажува статусот на лојалност (loyalty status), информации за ниво (tier) и статистика за нарачки на еден муштерија. customer_loyalty, customer, company, api_user, customer_loyalty_status, loyalty_tier, customer_order /

Operational Support

Овие погледи поддржуваат internal routing, scheduling, и shared company membership pages.

Поглед Цел Изворни табели Забелешки
v_driver_lunch_timers Ги листа распоредите за ручек за возачи, договори и компании. lunch_time, contract, company, restaurant, driver, api_user Најдобро за неделно распоредување и потсетници за возачите.
v_company_users Ги комбинира customers, drivers, и api_admin корисници во еден поглед за компаниите. customer, company, contract, restaurant, driver, api_admin, api_user Користи UNION за да ги прикаже трите вида на улоги заедно.
v_customer_contract_meals Ги листа оброците кои се достапни на available to a customer under active contracts customer, api_user, company, contract, contract_status, restaurant, meal, category, meal_ingredient, ingredient, alergen_ingredient, alergen Filters to active contracts and current contract dates only
v_customer_contract_drinks Ги листа пијалоците достапни на клиент со активен договор. customer, api_user, company, contract, contract_status, restaurant, drink Исто филтрирање како погледот за оброци.
v_customer_contract_menu Ги комбинира погледите за оброци и пијалоци достапни под еден договор во едно мени. v_customer_contract_meals, v_customer_contract_drinks Користи UNION ALL и item_type дискриминатор.

Индекси

Датотека на индекс Индекси Поддржани погледи Забелешки
indexes/v_menu_meal_index.sql meal(cat_id, meal_id), meal_ingredient(meal_id, ingr_id), alergen_ingredient(ingr_id, alergen_id) v_menu_meal and v_customer_contract_meals Поддржува спојувања на category и надоградување на ingredient/allergen.
indexes/v_menu_drink_index.sql drink(rest_id, drink_id) v_menu_drink, v_customer_contract_drinks Поддржува пребарување за погледи за пијалоци на ресторан.

Order и Delivery индекси

Датотека на индекс Индекси Поддржани погледи Забелешки
indexes/v_orders_full_index.sql customer_order(comp_order_id), customer_order(customer_user_id, order_datetime DESC), delivery(driver_user_id, delivery_date), order_meal(order_id, meal_id), order_drink(order_id, drink_id) v_orders_full, v_driver_deliveries, v_contracts_revenue, v_company_billing_overview, v_reviews_full Поддржува пребарување на нарачки, филтрирање на достави и агрегација на елементи на нарачка.
indexes/v_driver_deliveries_index.sql delivery(driver_user_id, delivery_date), order_meal(order_id, meal_id), order_drink(order_id, drink_id), customer_order(comp_order_id) v_driver_deliveries Креирано за пребарување на достави од страна на доставувачи.
indexes/v_reviews_full_index.sql customer_order(comp_order_id) v_reviews_full Погледот за review во главно зависи од заедничките нарачки и доставувања.

Contract, Billing, Loyalty, и Scheduling индекси

Датотека на индекс Индекси Поддржани погледи Забелешки
indexes/v_contracts_revenue_index.sql order_meal(order_id, meal_id), order_drink(order_id, drink_id), customer_order(comp_order_id), contract(company_id, rest_id) v_contracts_revenue Поддржува агрегација за приход по договор по компанија и ресторан.
indexes/v_company_billing_overview_index.sql contract(company_id), customer_order(comp_order_id) v_company_billing_overview Помага на прегледот за наплаќање по договори и салдо на фактурите.
indexes/v_customer_loyalty_full_v2_index.sql customer_order(customer_user_id, order_datetime DESC) v_customer_loyalty_full_v2 Поддржува статистики latest-order и aggregate-order за извештаи за лојалност.
indexes/v_driver_lunch_timers_index.sql lunch_time(lunch_weekday, contract_id), driver(rest_id), contract(rest_id, company_id) v_driver_lunch_timers Поддржува неделно филтрирање и рутирање restaurant/contract.
Last modified 2 weeks ago Last modified on 05/10/26 14:02:25
Note: See TracWiki for help on using the wiki.