wiki:ERModel

Version 8 (modified by 222003, 3 days ago) ( diff )

--

Концептуален дизајн - ЕР Дијаграм и податочни побарувања

ER дијарграм

ER

Податочни Побарувања

Ентитети

users – Етитет кој што ги дефинира корисниците на апликацијата. Во множина затоа што User е резервиран збор во sql.

  • id – нумерички тип (примарен клуч)
  • first_name – текстуален тип (задолжителен атрибут)
  • last_name – текстуален тип (задолжителен атрибут)
  • username – текстуален тип (задолжителен атрибут, уникатен)
  • hashed_password – текстуален тип (задолжителен атрибут)
  • e_mail – текстуален тип (задолжителен атрибут, уникатен)
  • gender – текстуален тип (опционален атрибут)
  • date_created – датумски тип (задолжителен атрибут)

patient – Профил на пациентот. Произлегува од users.

  • id – нумерички тип (примарен клуч)
  • first_name – текстуален тип (задолжителен атрибут)
  • last_name – текстуален тип (задолжителен атрибут)
  • username – текстуален тип (задолжителен атрибут, уникатен)
  • hashed_password – текстуален тип (задолжителен атрибут)
  • e_mail – текстуален тип (задолжителен атрибут, уникатен)
  • gender – текстуален тип (опционален атрибут)
  • date_created – датумски тип (задолжителен атрибут)
  • is_verified – булова вредност (задолжителен атрибут)

pharmacist – Профил на фармацевтот. Произлегува од users.

  • id – нумерички тип (примарен клуч)
  • first_name – текстуален тип (задолжителен атрибут)
  • last_name – текстуален тип (задолжителен атрибут)
  • username – текстуален тип (задолжителен атрибут, уникатен)
  • hashed_password – текстуален тип (задолжителен атрибут)
  • e_mail – текстуален тип (задолжителен атрибут, уникатен)
  • gender – текстуален тип (опционален атрибут)
  • date_created – датумски тип (задолжителен атрибут)

admins – Профил на администраторот. Произлегува од users. Во множина затоа што Admin е резервиран збор во sql

  • id – нумерички тип (примарен клуч)
  • first_name – текстуален тип (задолжителен атрибут)
  • last_name – текстуален тип (задолжителен атрибут)
  • username – текстуален тип (задолжителен атрибут, уникатен)
  • hashed_password – текстуален тип (задолжителен атрибут)
  • e_mail – текстуален тип (задолжителен атрибут, уникатен)
  • gender – текстуален тип (опционален атрибут)
  • date_created – датумски тип (задолжителен атрибут)

company – Ентитет кој ги претставува компаниите што учествуваат во системот.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • description – текстуален тип (опционален атрибут)
  • registration_number – текстуален тип (задолжителен атрибут, уникатен)

pharmacy – Аптека која продава лекови на пациентите.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • description – текстуален тип (опционален атрибут)
  • registration_number – текстуален тип (задолжителен атрибут, уникатен)

manufacturer – Производител на брендирани лекови.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • description – текстуален тип (опционален атрибут)
  • registration_number – текстуален тип (задолжителен атрибут, уникатен)

distributor – Дистрибутер што ги снабдува аптеките со лекови.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • description – текстуален тип (опционален атрибут)
  • registration_number – текстуален тип (задолжителен атрибут, уникатен)

deliverycompany – Компанија за достава на нарачки до пациентите.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • description – текстуален тип (опционален атрибут)
  • registration_number – текстуален тип (задолжителен атрибут, уникатен)

contactinformation – Контакт информации за корисници и локации на компанија.

  • id – нумерички тип (примарен клуч)
  • phone – текстуален тип (опционален атрибут)
  • address – текстуален тип (опционален атрибут)

facility – Објекти поврзани со компаниите (аптеки, складишта).

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • code – текстуален тип (задолжителен атрибут, уникатен)

medicine – Ентитет кој ги дефинира генеричките не-брендирани лекови.

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)
  • active_ingredient – текстуален тип (опционален атрибут)

brandedmedicine – Ентитет кој ги претставува брендираните лекови со комерцијални имиња.

  • id – нумерички тип (примарен клуч)
  • price – нумерички тип (опционален атрибут)
  • description – текстуален тип (опционален атрибут)
  • dosage_form – текстуален тип (опционален атрибут)
  • strength – текстуален тип (опционален атрибут)
  • origin_country – текстуален тип (опционален атрибут)

brandedmedicineimage – Слики на брендираните лекови.

  • id – нумерички тип (примарен клуч)
  • image – текстуален тип (опционален атрибут)

inventory – Инвентар на одреден објект.

  • id – нумерички тип (примарен клуч)

clubcard – Клуб картичка за лојални пациенти.

  • id – нумерички тип (примарен клуч)
  • program – текстуален тип (опционален атрибут)
  • points – нумерички тип (опционален атрибут)

paymentmethod – Начин на плаќање (картичка, готово, банкарски трансфер).

  • id – нумерички тип (примарен клуч)
  • name – текстуален тип (задолжителен атрибут)

payment – Информации за уплатите извршени од пациентите.

  • id – нумерички тип (примарен клуч)
  • payment_date – датумски тип (задолжителен атрибут)
  • amount – нумерички тип (задолжителен атрибут)
  • status – текстуален тип (задолжителен атрибут)

sensitivepatientdata – Чувствителни податоци за пациентот, кои се користат за верификација.

  • id – нумерички тип (примарен клуч)
  • embg – текстуален тип (задолжителен атрибут)
  • portrait_photo – текстуален тип (задолжителен атрибут)

prescription – Рецепт издаден од лекар за пациент.

  • id – нумерички тип (примарен клуч)
  • issued_by – текстуален тип (задолжителен атрибут)
  • issued_at – датумски тип (задолжителен атрибут)
  • valid_to – датумски тип (задолжителен атрибут)
  • embg – текстуален тип (опционален атрибут)

orders – Нарачки направени од страна на пациентите.

  • id – нумерички тип (примарен клуч)
  • order_date – датумски тип (задолжителен атрибут)
  • expected_arrival_date – датумски тип (опционален атрибут)
  • status – текстуален тип (задолжителен атрибут)
  • total_price – нумерички тип (задолжителен атрибут)

shoppingcart – Кошничка за купување на пациентот.

  • id – нумерички тип (примарен клуч)

supplyorder – Нарачка за снабдување на аптека од страна на дистрибутер.

  • id – нумерички тип (примарен клуч)
  • order_date – датумски тип (задолжителен атрибут)
  • expected_arrival_date – датумски тип (опционален атрибут)

healthprofile – Здравствен профил на пациентот.

  • id – нумерички тип (примарен клуч)
  • blood_type - текстуален тип (опционален атрибут)

Релации

*contact - 1:N релација помеѓу Facility и Contact Information и Users и Contact Information, каде секој Објект/Корисник може да има повеќе информации за контакт, а секоја контакнта информација мора да припаѓа само на еден Објект/Корисник. Целосно учество од страната на Contact Information

*manages - 1:1 релација помеѓу Facility и Inventory, каде што еден објект може да управува со еден магацин, и еден магацин може да управуавн од страна на само еден обејкт. Целосно учество од двете страни.

*owns - 1:N релација помеѓу една компанија и еден објект, една компаноја може да поседува повеќе објекти, а еден обејкт мора да е дел од само една компанија. Целосно учество од страната на Facility.

*subscribes - 1:1 релација меѓу Patient и Club Card, еден пациент смее да има само една клуб картичка, и една картичка припаѓа само на еден пациент. Целосно учество од страната на Club Card.

*secures - 1:1 релација измеѓу Patient и Sensitive Patient Data, еден пациент може да има едно множество од сензитивни податоци, и сензитивни податоци мора да припаѓаат на само еден пациент. Потполно учество од страната на Sensitive Patient Data.

*verifies - 1:N релација измеѓу Pharmacist и Sensitive Patient Data, сензитивни податоци на пациент може да се верифицирани од страна на еден фармацефт, а еден фармацефт може да верифицира повеќе сензитивни податоци на пациент.

*refers_to - 1:N релација измеѓу Payment Method и Payment, каде што еден метод за плаќање може да се користи за повеќе плаќања, а едно плаќање може да користи само еден метод за плаќање. Целосно учество од страната на Payment.

*makes - 1:N релација измеѓу Patient и Payment, каде што еден пациент може да изврши повеќе плаќања, но едно плаќање може да е изврешно од само еден пациент. Потполно учество од страната на Payment.

*pays_for - 1:1 релација измеѓу Order и Payment, каде што едно плаќање може да се однесува кон само една нарачка, и една нарачка може да се изврши со само едно плаќање. Потполно учество од Payment.

*patient_order - 1:N релација измеѓу Patient и Order, еден пациент може да нарачува повеќе нарачки, а една нарачка може да е нарачана од само еден пациент. Потполно учество од страната на Order.

*shops - 1:1 релација измеѓу Patient и Shopping Cart, каде што еден пациент има една кошничка за пазарење, и една кошничка ја поседува само еден клиент. Потполно учество од страна на Shopping Cart.

*profiles - 1:1 релација измеѓу Patient и Health Profile, каде што еден пациент може да има само еден здравствен профил, и еден здравствен профил може да припаѓа на само еден пациент.

*image - 1

*perscribed - 1:N релација измеѓу Patient и Prescription, каде што еден пациент може да има повеќе лекови рецепти за лекови, а една рецепта се однесува кон само еден пациент.

*associates_with - 1:N релација измеѓу Medicine и Prescription, каде што една рецепта може да се однесува кон еден тип на лек, а еден тип на лек може да се соддржи во повеќе различни рецепти. Потполно учество од страната на Prescription.

*manufactures - 1:N релација измеѓу Manufacturer и Branded Medicine, каде што еден производител може да произведува повеќе брендирани лекови, а еден брендиран лек е произведен од еден производител. Потполно учество од страната на Branded Medicine.

*distributes - N:M релација измеѓу Distributor и Branded Medicine, каде што еден брендиран лек може да е дистрибуиран од страна на повеќе дистрибутори, и еден дистрибутор може да дистрибуира повеќе брендирани лекови.

*supply_pharmacy - 1:N релација измеѓу Distributor и Supply Order, каде што еден дистрибутер може да дистрибуира повеќе нарачки, но една нарачка мора да е дистрибуирана од страна на еден дистрибутер. Потполно учество од страната на Supply Order.

*order_pharmacy - 1:N релација измеѓу Pharmacy и Supply Order, каде што една аптека може да нарача повеќе нарачки, но една нарачка мора да е нарачана од страна на една аптека. Потполно учество од страната на Supply Order.

*contains - N:M релација која измеѓу Supply Order и Branded Medicine, каде што една нарачка може да соддржи повеќе брендирани лекови, и брендирани лекови може да учествуваат во повеќе нарачки. Соддржи и атрибут квантитет. Потполно учество од страната на Supply Order.

*stored_in

*instance_of

*allergic_reaction

*interaction

*order_content

*cart_content

*catalog

*delivers

Attachments (4)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.