import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'announcement_model.dart';

final mockAnnouncements = <AnnouncementModel>[
  AnnouncementModel(
    id: 'ann-001',
    title: '关于2026年端午节放假安排的通知',
    content:
        '根据国务院办公厅通知精神，现将2026年端午节放假安排通知如下：6月25日（星期四）至6月27日（星期六）放假调休，共3天。6月28日（星期日）上班。请各部门提前做好工作安排，确保节日期间各项工作正常运转。',
    type: '通知公告',
    publisherId: 'u-admin',
    publisherName: '行政管理部',
    publishTime: DateTime(2026, 5, 22),
    isTop: true,
    expiryDate: DateTime(2026, 6, 28),
    readCount: 45,
    unreadCount: 12,
    attachments: ['放假安排表.pdf'],
    createTime: DateTime(2026, 5, 22),
  ),
  AnnouncementModel(
    id: 'ann-002',
    title: '关于启用新版考勤系统的通知',
    content:
        '为提升考勤管理效率，公司决定于2026年6月1日起全面启用新版考勤系统。新旧系统切换期间，请各部门配合完成以下事项：1. 5月28日前完成全员信息核对；2. 5月29日-31日进行系统试运行。如有问题请及时联系IT部门。',
    type: '系统公告',
    publisherId: 'u-admin',
    publisherName: '信息技术部',
    publishTime: DateTime(2026, 5, 20),
    isTop: false,
    requireConfirm: true,
    expiryDate: DateTime(2026, 6, 15),
    readCount: 30,
    unreadCount: 27,
    attachments: ['新版考勤系统操作手册.pdf'],
    createTime: DateTime(2026, 5, 20),
  ),
  AnnouncementModel(
    id: 'ann-003',
    title: '2026年第二季度团建活动报名通知',
    content:
        '为增强团队凝聚力，公司将于2026年6月10日组织第二季度团建活动。本次活动地点为北京市怀柔区雁栖湖，活动内容包括户外拓展训练、团队协作游戏和烧烤晚会。请各部门于6月3日前将参加人数报至行政管理部。',
    type: '活动通知',
    publisherId: 'u-admin',
    publisherName: '行政管理部',
    publishTime: DateTime(2026, 5, 18),
    isTop: false,
    expiryDate: DateTime(2026, 6, 10),
    readCount: 52,
    unreadCount: 5,
    createTime: DateTime(2026, 5, 18),
  ),
];

final announcementPageProvider = StateProvider<int>((ref) => 1);

final announcementListProvider =
    FutureProvider.autoDispose<List<AnnouncementModel>>((ref) async {
      ref.watch(announcementPageProvider);
      return mockAnnouncements;
    });
