-- 发票申请表
CREATE TABLE `sys_invoice` (
  `invoice_id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT '发票ID',
  `service_order_id` BIGINT(20) DEFAULT NULL COMMENT '服务单号(新系统订单ID)',
  `legacy_service_order_id` BIGINT(20) DEFAULT NULL COMMENT '服务单号(旧系统ServiceOrderID)',
  `invoice_type` INT(1) DEFAULT '1' COMMENT '开票类型(1-个人, 2-企业)',
  `invoice_name` VARCHAR(200) DEFAULT NULL COMMENT '发票抬头',
  `invoice_money` DECIMAL(10,2) DEFAULT '0.00' COMMENT '发票金额',
  `invoice_remarks` VARCHAR(500) DEFAULT NULL COMMENT '发票备注',
  `company_address` VARCHAR(500) DEFAULT NULL COMMENT '企业注册地址',
  `company_bank` VARCHAR(200) DEFAULT NULL COMMENT '企业开户银行',
  `company_bank_no` VARCHAR(100) DEFAULT NULL COMMENT '企业银行帐号',
  `zip_code` VARCHAR(20) DEFAULT NULL COMMENT '邮编',
  `mail_address` VARCHAR(500) DEFAULT NULL COMMENT '邮寄地址',
  `contact_name` VARCHAR(50) DEFAULT NULL COMMENT '联系人',
  `contact_phone` VARCHAR(50) DEFAULT NULL COMMENT '联系电话',
  `contact_email` VARCHAR(100) DEFAULT NULL COMMENT '联系邮箱',
  `status` INT(1) DEFAULT '0' COMMENT '申请状态(0-待审核, 1-已通过, 2-已驳回)',
  `invoice_no` VARCHAR(100) DEFAULT NULL COMMENT '发票编号(对应旧系统InvoiceNo)',
  `invoice_url` VARCHAR(2000) DEFAULT NULL COMMENT '发票链接/文件地址(对应旧系统InvoiceURL/EleCloud_PDF)',
  `apply_user_id` BIGINT(20) DEFAULT NULL COMMENT '申请人ID',
  `apply_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '申请时间',
  `audit_user_id` BIGINT(20) DEFAULT NULL COMMENT '审核人ID',
  `audit_time` DATETIME DEFAULT NULL COMMENT '审核时间',
  `audit_remarks` VARCHAR(500) DEFAULT NULL COMMENT '审核备注',
  `sync_status` INT(1) DEFAULT '0' COMMENT '同步状态(0-未同步, 1-已同步, 2-同步失败)',
  `legacy_invoice_id` INT(11) DEFAULT NULL COMMENT '旧系统发票ID(对应旧系统InvoiceID)',
  PRIMARY KEY (`invoice_id`),
  KEY `idx_service_order` (`service_order_id`),
  KEY `idx_legacy_order` (`legacy_service_order_id`),
  KEY `idx_apply_user` (`apply_user_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COMMENT='发票申请表';