feat: 增强日历功能并集成 AgentScope 代理服务

This commit is contained in:
qzl
2026-03-11 15:28:29 +08:00
parent e55e445906
commit e20e7d2a02
85 changed files with 5175 additions and 885 deletions
@@ -35,6 +35,7 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
late List<DateTime> _monthDates;
final ScrollController _dayStripController = ScrollController();
Key _eventsKey = UniqueKey();
List<ScheduleItemModel> _events = const [];
@override
void initState() {
@@ -47,6 +48,7 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
_selectedDate = _calendarManager.selectedDate;
_updateMonthDates();
_loadEvents();
WidgetsBinding.instance.addPostFrameCallback((_) {
_scrollToSelectedDate();
@@ -57,6 +59,16 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
_monthDates = monthDatesFor(_selectedDate);
}
Future<void> _loadEvents() async {
final events = await sl<CalendarService>().getEventsForDay(_selectedDate);
if (!mounted) {
return;
}
setState(() {
_events = events;
});
}
@override
void dispose() {
_dayStripController.dispose();
@@ -147,6 +159,7 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
setState(() {
_eventsKey = UniqueKey();
});
_loadEvents();
},
),
child: Container(
@@ -191,6 +204,7 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
_calendarManager.setSelectedDate(date);
_updateMonthDates();
_scrollToSelectedDate(animate: true);
_loadEvents();
},
child: SizedBox(
width: _dayItemWidth,
@@ -267,7 +281,7 @@ class _CalendarDayWeekScreenState extends State<CalendarDayWeekScreen> {
Widget _buildTimelineBoard() {
final now = DateTime.now();
final showCurrent = shouldShowCurrentMarker(_selectedDate, now);
final events = CalendarService().getEventsForDay(_selectedDate);
final events = _events;
final eventColumns = _calculateEventColumns(events);