-- =============================================
-- 全量工单统计 — 建表 SQL
-- 模块: urbanops-module-workorder
-- 日期: 2026-06-11
-- =============================================

CREATE TABLE IF NOT EXISTS `workorder_full_order_statistics` (
    `id`                BIGINT       NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    `company_id`        BIGINT       NOT NULL COMMENT '公司/班组ID（关联 system_dept.id）',
    `company_name`      VARCHAR(100) DEFAULT NULL COMMENT '公司/班组名称（冗余）',
    `type`              TINYINT      NOT NULL DEFAULT 1 COMMENT '类型: 1=按公司, 2=按班组',
    `start_date`        DATE         NOT NULL COMMENT '统计开始日期',
    `end_date`          DATE         NOT NULL COMMENT '统计结束日期',
    `work_order_count`  INT          NOT NULL DEFAULT 0 COMMENT '工单完成数量',
    `inspection_count`  INT          NOT NULL DEFAULT 0 COMMENT '巡查记录数量',
    `maintenance_count` INT          NOT NULL DEFAULT 0 COMMENT '养护记录数量',
    `remark`            VARCHAR(500) DEFAULT NULL COMMENT '备注',
    `creator`           VARCHAR(64)  DEFAULT '' COMMENT '创建者',
    `create_time`       DATETIME     DEFAULT CURRENT_TIMESTAMP NOT NULL COMMENT '创建时间',
    `updater`           VARCHAR(64)  DEFAULT '' COMMENT '更新者',
    `update_time`       DATETIME     DEFAULT CURRENT_TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    `deleted`           TINYINT      DEFAULT 0 NOT NULL COMMENT '逻辑删除: 0=正常, 1=已删除',
    `tenant_id`         BIGINT       DEFAULT 0 NOT NULL COMMENT '租户编号',
    PRIMARY KEY (`id`),
    INDEX `idx_company_id` (`company_id`),
    INDEX `idx_type` (`type`),
    INDEX `idx_date_range` (`start_date`, `end_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='全量工单统计表';
