-- 创建菜单分类表 CREATE TABLE menu_cate ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 主键 name TEXT NOT NULL DEFAULT '', -- 分类名称 logo TEXT NOT NULL DEFAULT '', -- 分类Logo description TEXT, -- 分类描述 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 sort INTEGER NOT NULL DEFAULT 0, -- 排序 status INTEGER NOT NULL DEFAULT 1 -- 状态 (1-Active, 0-Inactive) ); -- 新增菜单分类表的更新时间触发器 CREATE TRIGGER trg_menu_cate_update_time AFTER UPDATE ON menu_cate FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE menu_cate SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 创建商品表 CREATE TABLE menu_commodity ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 主键 name TEXT NOT NULL DEFAULT '', -- 商品名称 cate_id INTEGER NOT NULL DEFAULT 0, -- 分类ID goods_no TEXT NOT NULL DEFAULT '', -- 商品编号 is_single_spec INTEGER NOT NULL DEFAULT 1, -- 是否单规格 (1-单规格, 0-多规格) logo TEXT NOT NULL DEFAULT '', -- 商品Logo price REAL NOT NULL DEFAULT 0.00, -- 价格 line_price REAL NOT NULL DEFAULT 0.00, -- 商品原价 stock INTEGER NOT NULL DEFAULT 0, -- 库存 sort INTEGER NOT NULL DEFAULT 0, -- 排序 description TEXT NOT NULL DEFAULT '', -- 商品描述 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 status INTEGER NOT NULL DEFAULT 1, -- 状态 (1-Active, 0-Inactive), FOREIGN KEY (cate_id) REFERENCES menu_cate (id) ); -- 新增订单退款表的更新时间触发器 CREATE TRIGGER trg_menu_commodity_update_time AFTER UPDATE ON menu_commodity FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE menu_commodity SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 创建SKU表 CREATE TABLE menu_sku ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 主键 sku_no TEXT NOT NULL DEFAULT '', -- SKU编号 logo TEXT NOT NULL DEFAULT '', -- SKU Logo goods_id INTEGER NOT NULL DEFAULT 0, -- 商品ID stock INTEGER NOT NULL DEFAULT 0, -- 库存 price REAL NOT NULL DEFAULT 0.00, -- 价格 line_price REAL NOT NULL DEFAULT 0.00, -- 商品原价 status INTEGER NOT NULL DEFAULT 1, -- 状态 (1-Active, 0-Inactive), FOREIGN KEY (goods_id) REFERENCES menu_commodity (id) ); -- 创建规格表 CREATE TABLE menu_spec ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 主键 goods_id INTEGER NOT NULL DEFAULT 0, -- 商品ID name TEXT NOT NULL DEFAULT '', -- 规格名称 value TEXT NOT NULL DEFAULT '', -- 规格值 status INTEGER NOT NULL DEFAULT 1, -- 状态 (1-Active, 0-Inactive), FOREIGN KEY (goods_id) REFERENCES menu_commodity (id) ); -- 创建SKU和规格的中间表 CREATE TABLE menu_sku_spec ( sku_id INTEGER NOT NULL, -- SKU ID spec_id INTEGER NOT NULL, -- 规格ID PRIMARY KEY (sku_id, spec_id), FOREIGN KEY (sku_id) REFERENCES menu_sku (id), FOREIGN KEY (spec_id) REFERENCES menu_spec (id) ); -- 创建店铺订单表信息 CREATE TABLE store_order ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 自增ID order_sn TEXT NOT NULL DEFAULT '', -- 订单号 table_id INTEGER NOT NULL, -- 所属桌码ID pay_type INTEGER NOT NULL DEFAULT 0, -- 支付方式 (1-现金, 0-Paypal) amount REAL NOT NULL DEFAULT 0.00, -- 订单金额 pay_amount REAL NOT NULL DEFAULT 0.00, -- 支付金额 discount REAL NOT NULL DEFAULT 0.00, -- 折扣金额 param TEXT NOT NULL DEFAULT '', -- 订单参数 service_fee REAL DEFAULT NULL, -- 服务费 remark TEXT NOT NULL DEFAULT '', -- 用户备注 create_time DATETIME DEFAULT NULL, -- 创建时间 update_time DATETIME DEFAULT NULL, -- 更新时间 status TEXT NOT NULL DEFAULT 'A', -- 订单状态 pay_time DATETIME DEFAULT NULL, -- 支付时间 pay_status INTEGER NOT NULL DEFAULT 1, -- 支付状态 settle_status INTEGER NOT NULL DEFAULT 1, -- 结算状态 goods TEXT NOT NULL DEFAULT '{}' -- 订单商品信息 ); -- 新增订单表的更新时间触发器 CREATE TRIGGER trg_order_update_time AFTER UPDATE ON store_order FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE store_order SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 创建店铺材料表信息 CREATE TABLE store_material ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 材料表id material_no TEXT NOT NULL, -- 材料编号 material_type TEXT NOT NULL, -- 材料类别 name TEXT NOT NULL, -- 材料名称 specification TEXT NOT NULL, -- 规格 inventory INTEGER NOT NULL DEFAULT 0, -- 库存数量 shelf_life INTEGER NOT NULL DEFAULT 0, -- 保质期 unit TEXT NOT NULL, -- 单位 img TEXT NOT NULL, -- 材料文件/图片id purchase_period INTEGER NOT NULL DEFAULT 0, -- 采购期数 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 status INTEGER NOT NULL DEFAULT 1 -- 状态0下架1上架 ); -- 新增材料表的更新时间触发器 CREATE TRIGGER trg_material_update_time AFTER UPDATE ON store_material FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE store_material SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 店铺区域表 CREATE TABLE store_area ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 区域id name TEXT NOT NULL, -- 区域名称 description TEXT NOT NULL DEFAULT '', -- 区域描述 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 status INTEGER NOT NULL DEFAULT 1 -- 状态 (1-有效, 0-无效) ); -- 新增区域表的更新时间触发器 CREATE TRIGGER trg_area_update_time AFTER UPDATE ON store_area FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE store_area SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 店铺座位表 CREATE TABLE store_table ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 桌子id area_id INTEGER NOT NULL, -- 所属区域id table_no TEXT NOT NULL, -- 桌号 capacity INTEGER NOT NULL DEFAULT 0, -- 座位数 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 status INTEGER NOT NULL DEFAULT 1, -- 状态 (1-有效, 0-无效) FOREIGN KEY (area_id) REFERENCES store_area (id) ); -- 新增桌子表的更新时间触发器 CREATE TRIGGER trg_table_update_time AFTER UPDATE ON store_table FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE store_table SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END; -- 创建订单退款表 CREATE TABLE store_order_refund ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, -- 主键 order_id INTEGER NOT NULL, -- 关联订单ID refund_amount REAL NOT NULL DEFAULT 0.00, -- 退款金额 refund_reason TEXT NOT NULL DEFAULT '', -- 退款原因 refund_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 退款时间 create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 创建时间 update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 更新时间 status INTEGER NOT NULL DEFAULT 1, -- 状态 (1-有效, 0-无效) FOREIGN KEY (order_id) REFERENCES store_order (id) ); -- 新增订单退款表的更新时间触发器 CREATE TRIGGER trg_order_refund_update_time AFTER UPDATE ON store_order_refund FOR EACH ROW WHEN NEW.update_time = OLD.update_time BEGIN UPDATE store_order_refund SET update_time = CURRENT_TIMESTAMP WHERE id = OLD.id; END;