|
|
@@ -1,16 +1,115 @@
|
|
|
-PRAGMA foreign_keys=ON;
|
|
|
-
|
|
|
-CREATE TABLE user (
|
|
|
- user_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
- user_name TEXT NOT NULL,
|
|
|
- user_flag TEXT NOT NULL,
|
|
|
- user_password TEXT NOT NULL -- Nova coluna para senha hasheada
|
|
|
-);
|
|
|
-
|
|
|
-CREATE TABLE api_key (
|
|
|
- api_key_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
- user_id INTEGER NOT NULL,
|
|
|
- api_key_user TEXT NOT NULL,
|
|
|
- api_key_secret TEXT NOT NULL,
|
|
|
- FOREIGN KEY (user_id) REFERENCES user(user_id)
|
|
|
+CREATE TABLE "company" (
|
|
|
+ "company_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_name" TEXT NOT NULL,
|
|
|
+ "company_flag" TEXT NOT NULL
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "role" (
|
|
|
+ "role_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "role_name" TEXT NOT NULL,
|
|
|
+ "role_permission" TEXT NOT NULL,
|
|
|
+ "role_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "status" (
|
|
|
+ "status_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "status_status" TEXT NOT NULL
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "user" (
|
|
|
+ "user_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "user_name" TEXT NOT NULL,
|
|
|
+ "user_email" TEXT NOT NULL UNIQUE,
|
|
|
+ "user_password" TEXT NOT NULL,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "role_id" INTEGER NOT NULL,
|
|
|
+ "user_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id"),
|
|
|
+ FOREIGN KEY ("role_id") REFERENCES "role" ("role_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "table" (
|
|
|
+ "table_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "table_number" TEXT NOT NULL,
|
|
|
+ "status_id" INTEGER NOT NULL,
|
|
|
+ "table_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("status_id") REFERENCES "status" ("status_id"),
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "category" (
|
|
|
+ "category_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "category_name" TEXT NOT NULL,
|
|
|
+ "category_is_kitchen" BOOLEAN NOT NULL,
|
|
|
+ "category_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "product" (
|
|
|
+ "product_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "category_id" INTEGER NOT NULL,
|
|
|
+ "product_name" TEXT NOT NULL,
|
|
|
+ "product_price" TEXT NOT NULL,
|
|
|
+ "product_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("category_id") REFERENCES "category" ("category_id"),
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "order" (
|
|
|
+ "order_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "table_id" INTEGER NOT NULL,
|
|
|
+ "user_id" INTEGER NOT NULL,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "order_name" TEXT NOT NULL,
|
|
|
+ "order_phone" TEXT NOT NULL,
|
|
|
+ "status_id" INTEGER NOT NULL,
|
|
|
+ "order_created_at" TEXT NOT NULL,
|
|
|
+ "order_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("table_id") REFERENCES "table" ("table_id"),
|
|
|
+ FOREIGN KEY ("user_id") REFERENCES "user" ("user_id"),
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id"),
|
|
|
+ FOREIGN KEY ("status_id") REFERENCES "status" ("status_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "order_item" (
|
|
|
+ "order_item_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "order_id" INTEGER NOT NULL,
|
|
|
+ "product_id" INTEGER NOT NULL,
|
|
|
+ FOREIGN KEY ("order_id") REFERENCES "order" ("order_id"),
|
|
|
+ FOREIGN KEY ("product_id") REFERENCES "product" ("product_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "sale" (
|
|
|
+ "sale_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "order_id" INTEGER NOT NULL,
|
|
|
+ "product_id" INTEGER NOT NULL,
|
|
|
+ "sale_total" TEXT NOT NULL,
|
|
|
+ "sale_created_at" TEXT NOT NULL,
|
|
|
+ "sale_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("order_id") REFERENCES "order" ("order_id"),
|
|
|
+ FOREIGN KEY ("product_id") REFERENCES "product" ("product_id"),
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE "fee" (
|
|
|
+ "fee_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ "company_id" INTEGER NOT NULL,
|
|
|
+ "fee_fixed" TEXT NOT NULL,
|
|
|
+ "fee_perc" TEXT NOT NULL,
|
|
|
+ "fee_flag" TEXT NOT NULL,
|
|
|
+ FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
|
|
|
+);
|
|
|
+
|
|
|
+CREATE TABLE api_key (
|
|
|
+ api_key_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
+ user_id INTEGER NOT NULL,
|
|
|
+ api_key_user TEXT NOT NULL,
|
|
|
+ api_key_secret TEXT NOT NULL,
|
|
|
+ FOREIGN KEY (user_id) REFERENCES user(user_id)
|
|
|
);
|