table.sql 6.36 KB
CREATE TABLE `test_example_db` (
    `id` int NOT NULL AUTO_INCREMENT,
    `enterpriseId` int NOT NULL COMMENT '企业 ID',
    `name` varchar(255) NOT NULL COMMENT '用户昵称',
    `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '用户状态;启用:1;停用:2',
    `createdBy` int NOT NULL COMMENT '创建人 ID',
    `createdAt` datetime NOT NULL COMMENT '创建时间',
    `creationSource` int NOT NULL COMMENT '创建来源',
    `updatedBy` int NOT NULL COMMENT '修改人 ID',
    `updatedAt` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
    `updateSource` int NOT NULL COMMENT '修改来源',
    `isDeleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否删除;0:未删除,1:已删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='例子DB';

CREATE TABLE `client_customer_orders` (
    `id` INT AUTO_INCREMENT PRIMARY KEY COMMENT '订单表主键,自增整数',
    `orderCode` VARCHAR(255) NOT NULL COMMENT '订单号',
    `enterpriseId` INT NOT NULL COMMENT '企业 ID',
    `clientId` INT NOT NULL COMMENT '院区 ID',
    `stallId` INT NOT NULL COMMENT '档口 ID',
    `customerId` INT DEFAULT NULL COMMENT '客户 ID',
    `openId` VARCHAR(255) DEFAULT NULL COMMENT '阳光厅点餐客户 ID',
    `status` INT NOT NULL COMMENT '状态订单;待备餐=1,备餐中=2, 部分出餐=3, 已出餐=4, 已取消=5',
    `menuId` INT NOT NULL COMMENT '餐单 id',
    `totalNum` INT NOT NULL COMMENT '订单商品总数',
    `payPrice` INT COMMENT '实际支付金额, 单位为分',
    `onlinePay` TINYINT(1) COMMENT '是否在线付费;0=未付费,1=付费',
    `payTime` DATETIME COMMENT '支付时间',
    `payStatus` INT COMMENT '支付状态, 1=待支付,2=支付中,3=支付成功, 4=支付失败, 5=支付取消',
    `errorMsg` VARCHAR(255) COMMENT '支付失败原因',
    `transactionId` VARCHAR(255) COMMENT '支付平台响应 id',
    `mealTime` DATETIME NOT NULL COMMENT '用餐日期',
    `address` VARCHAR(255) COMMENT '订餐地址',
    `roomNo` VARCHAR(255) COMMENT '房间号',
    `tableCode` VARCHAR(255) COMMENT '点餐桌码',
    `pickupCode` VARCHAR(255) COMMENT '取餐码',
    `orderType` INT COMMENT '订单类型 购买类型:1=堂食, 2=外送',
    `remark` VARCHAR(255) COMMENT '备注',
    `customerNoticeJson` JSON COMMENT '下单客户当时的忌口、医嘱',
    `createdBy` INT NOT NULL COMMENT '创建人 ID,有可能是在小程序端点餐的人,有可能是在院区端直接添加订单的',
    `createdAt` DATETIME NOT NULL COMMENT '创建时间',
    `creationSource` INT NOT NULL COMMENT '创建来源:小程序点餐=1; 院区端=2; kds=3业务中台 = 4',
    `updatedBy` INT NOT NULL COMMENT '修改人 ID, 修改人可能是院区端登陆的用户,也可能是 KDS 端登陆用户',
    `updatedAt` DATETIME NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
    `updateSource` INT COMMENT '更新来源:小程序点餐=1; 院区端=2; kds=3业务中台 = 4',
    `isDeleted` TINYINT(1) NOT NULL COMMENT '是否删除;0:未删除,1:已删除'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='项目点客户订单表';

ALTER TABLE `client_customer_orders`
ADD COLUMN `closeTimeType` tinyint(4) NOT NULL COMMENT '餐单截单类型;0:立即,1:预定' AFTER `menuId`,
ADD COLUMN `isRead` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否已读;0:未读,1:已读' AFTER `isDeleted`,
ADD COLUMN `isConfirm` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否确认;0:未确认,1:已确认' AFTER `isRead`,
ADD COLUMN `isAllocation` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否调拨;0:未调拨,1:已调拨' AFTER `isConfirm`;

CREATE TABLE `client_customer_order_details` (
    `id` INT AUTO_INCREMENT PRIMARY KEY COMMENT '订单详情表主键,自增整数',
    `enterpriseId` INT NOT NULL COMMENT '企业 ID',
    `orderId` INT NOT NULL COMMENT '订单ID',
    `menuDetailId` INT NOT NULL COMMENT '餐单详情 id,即菜品',
    `count` INT NOT NULL COMMENT '菜品所点份数',
    `mealId` INT NOT NULL COMMENT '菜品所属餐别 ID',
    `categoryId` INT NOT NULL COMMENT '菜品所属品类 ID',
    `skuId` INT NOT NULL COMMENT '菜品 ID',
    `showName` VARCHAR(255) COMMENT '菜品展示名称',
    `mealDetailJson` JSON COMMENT '菜品详情,菜品主料、口味、能量、脂肪、蛋白质、碳水化合物、忌口、医嘱等',
    `price` INT COMMENT '菜品价格',
    `createdBy` INT NOT NULL COMMENT '创建人 ID,有可能是在小程序端点餐的人,有可能是在院区端直接添加订单的',
    `createdAt` DATETIME NOT NULL COMMENT '创建时间',
    `creationSource` INT NOT NULL COMMENT '创建来源:小程序=1; 院区端=2; ADS 端=3业务中台 = 4',
    `updatedBy` INT NOT NULL COMMENT '修改人 ID, 修改人可能是院区端登陆的用户,也可能是 KDS 端登陆用户',
    `updatedAt` DATETIME NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
    `updateSource` INT COMMENT '更新来源:小程序=1; 院区端=2; KDS 端=3 业务中台 = 4',
    `notServe` TINYINT(1) NOT NULL COMMENT '是否不出餐:默认出餐=0;不出餐=1;',
    `isDeleted` TINYINT(1) NOT NULL COMMENT '是否删除;0:未删除,1:已删除'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='项目点客户订单详情表';

ALTER TABLE `client_customer_order_details`
ADD COLUMN `adjustSkuRemark` varchar(255) DEFAULT NULL COMMENT '调整配料' AFTER `price`,
ADD COLUMN `serveStatus` INT COMMENT '出餐状态:未出餐=1; 不出餐=2; 已出餐=3' AFTER `adjustSkuRemark`,
DROP COLUMN `notServe`;

CREATE TABLE `client_customer_order_operation_records` (
  `id` INT AUTO_INCREMENT PRIMARY KEY COMMENT '订单操作记录id',
  `enterpriseId` INT NOT NULL,
   orderId INT NOT NULL,
   type INT NOT NULL DEFAULT 0 COMMENT '类型;1:创建订单,2:取消订单,3:替换菜品, 4:加餐, 5:不出餐',
   originalOrderJson JSON COMMENT '原始订单记录 JSON',
   adjustOrderJson JSON COMMENT '调整订单记录 JSON',
   originalOrderDetailJson JSON COMMENT '原始订单明细 JSON',
   adjustOrderDetailJson JSON COMMENT '调整订单明细 JSON',
   operator VARCHAR(255) NOT NULL COMMENT '操作人',
  `createdBy` INT NOT NULL,
  `createdAt` DATETIME NOT NULL,
  `creationSource` INT NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='项目点客户订单操作记录表';