migrations_v1.sql 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. CREATE TABLE IF NOT EXISTS "company" (
  2. "company_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  3. "company_name" TEXT NOT NULL,
  4. "company_flag" TEXT NOT NULL
  5. );
  6. CREATE TABLE IF NOT EXISTS "role" (
  7. "role_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  8. "company_id" INTEGER NOT NULL,
  9. "role_name" TEXT NOT NULL,
  10. "role_permission" TEXT NOT NULL,
  11. "role_flag" TEXT NOT NULL,
  12. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  13. );
  14. CREATE TABLE IF NOT EXISTS "status" (
  15. "status_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  16. "status_status" TEXT NOT NULL
  17. );
  18. CREATE TABLE IF NOT EXISTS "description" (
  19. description_id INTEGER PRIMARY KEY AUTOINCREMENT,
  20. description_text TEXT NOT NULL,
  21. product_id INTEGER NOT NULL,
  22. company_id INTEGER NOT NULL,
  23. FOREIGN KEY (product_id) REFERENCES product(product_id),
  24. FOREIGN KEY (company_id) REFERENCES company(company_id)
  25. );
  26. CREATE TABLE IF NOT EXISTS "user" (
  27. "user_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  28. "user_name" TEXT NOT NULL,
  29. "user_email" TEXT NOT NULL UNIQUE,
  30. "user_password" TEXT NOT NULL,
  31. "company_id" INTEGER NOT NULL,
  32. "role_id" INTEGER NOT NULL,
  33. "user_flag" TEXT NOT NULL,
  34. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id"),
  35. FOREIGN KEY ("role_id") REFERENCES "role" ("role_id")
  36. );
  37. CREATE TABLE IF NOT EXISTS "table" (
  38. "table_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  39. "company_id" INTEGER NOT NULL,
  40. "table_number" TEXT NOT NULL,
  41. "status_id" INTEGER NOT NULL,
  42. "table_flag" TEXT NOT NULL,
  43. FOREIGN KEY ("status_id") REFERENCES "status" ("status_id"),
  44. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  45. );
  46. CREATE TABLE IF NOT EXISTS "category" (
  47. "category_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  48. "company_id" INTEGER NOT NULL,
  49. "category_name" TEXT NOT NULL,
  50. "category_flag" TEXT NOT NULL,
  51. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  52. );
  53. CREATE TABLE IF NOT EXISTS "product" (
  54. "product_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  55. "company_id" INTEGER NOT NULL,
  56. "category_id" INTEGER NOT NULL,
  57. "product_is_kitchen" BOOLEAN NOT NULL,
  58. "product_name" TEXT NOT NULL,
  59. "product_price" TEXT NOT NULL,
  60. "product_flag" TEXT NOT NULL,
  61. FOREIGN KEY ("category_id") REFERENCES "category" ("category_id"),
  62. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  63. );
  64. CREATE TABLE IF NOT EXISTS "order" (
  65. "order_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  66. "table_id" INTEGER NOT NULL,
  67. "user_id" INTEGER NOT NULL,
  68. "company_id" INTEGER NOT NULL,
  69. "order_name" TEXT NOT NULL,
  70. "order_phone" TEXT NOT NULL,
  71. "status_id" INTEGER NOT NULL,
  72. "order_created_at" TEXT NOT NULL,
  73. "order_flag" TEXT NOT NULL,
  74. FOREIGN KEY ("table_id") REFERENCES "table" ("table_id"),
  75. FOREIGN KEY ("user_id") REFERENCES "user" ("user_id"),
  76. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id"),
  77. FOREIGN KEY ("status_id") REFERENCES "status" ("status_id")
  78. );
  79. CREATE TABLE IF NOT EXISTS "order_item" (
  80. "order_item_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  81. "order_id" INTEGER NOT NULL,
  82. "product_id" INTEGER NOT NULL,
  83. "company_id" INTEGER NOT NULL,
  84. FOREIGN KEY ("order_id") REFERENCES "order" ("order_id"),
  85. FOREIGN KEY ("product_id") REFERENCES "product" ("product_id"),
  86. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  87. );
  88. CREATE TABLE IF NOT EXISTS "sale" (
  89. "sale_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  90. "company_id" INTEGER NOT NULL,
  91. "order_id" INTEGER NOT NULL,
  92. "product_id" INTEGER NOT NULL,
  93. "sale_total" TEXT NOT NULL,
  94. "sale_created_at" TEXT NOT NULL,
  95. "sale_flag" TEXT NOT NULL,
  96. FOREIGN KEY ("order_id") REFERENCES "order" ("order_id"),
  97. FOREIGN KEY ("product_id") REFERENCES "product" ("product_id"),
  98. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  99. );
  100. CREATE TABLE IF NOT EXISTS "fee" (
  101. "fee_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  102. "company_id" INTEGER NOT NULL,
  103. "fee_fixed" TEXT NOT NULL,
  104. "fee_perc" TEXT NOT NULL,
  105. "fee_flag" TEXT NOT NULL,
  106. FOREIGN KEY ("company_id") REFERENCES "company" ("company_id")
  107. );
  108. CREATE TABLE IF NOT EXISTS "api_key" (
  109. "api_key_id" INTEGER PRIMARY KEY AUTOINCREMENT,
  110. "user_id" INTEGER NOT NULL,
  111. "api_key_user" TEXT NOT NULL,
  112. "api_key_secret" TEXT NOT NULL,
  113. FOREIGN KEY ("user_id") REFERENCES "user" ("user_id")
  114. );