This commit is contained in:
zhutao
2025-11-21 18:21:47 +08:00
parent 9c94ee31fd
commit 5784a0a5d4
32 changed files with 734 additions and 441 deletions

View File

@@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'content_view.dart';
import '../viewmodel/students_view_model.dart';
import '../viewmodel/tch_room_vm.dart';
class StatusView extends StatefulWidget {
const StatusView({super.key});
@@ -26,6 +26,8 @@ class _StatusViewState extends State<StatusView> {
void initState() {
super.initState();
_init();
final vm = context.read<TchRoomVM>();
vm.addListener(openRoom);
}
@override
@@ -36,10 +38,11 @@ class _StatusViewState extends State<StatusView> {
}
void _init() {
final vm = context.read<StudentsViewModel>();
//如果房间可以开始
final vm = context.read<TchRoomVM>();
//如果房间到点可以开始
if (vm.canEnterRoom) {
status = RoomStatus.start;
// openRoom();
} else {
status = RoomStatus.waiting;
startCountDown();
@@ -48,12 +51,12 @@ class _StatusViewState extends State<StatusView> {
///开始倒计时
void startCountDown() {
final vm = context.read<StudentsViewModel>();
final vm = context.read<TchRoomVM>();
//当前时间
DateTime now = DateTime.now();
//远端时间
setState(() {
_seconds = vm.startTime.difference(now).inSeconds;
_seconds = parseTime(vm.roomInfo.startTime).difference(now).inSeconds;
});
_timer = Timer.periodic(Duration(seconds: 1), (timer) {
setState(() {
@@ -71,8 +74,9 @@ class _StatusViewState extends State<StatusView> {
///开启自习室
void openRoom() {
final vm = context.read<StudentsViewModel>();
final vm = context.read<TchRoomVM>();
vm.toggleRoom(isOpen: true);
vm.removeListener(openRoom);
}
@override