diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-hdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-hdpi/android12splash.png
index b2901c9..c37ef58 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-hdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-hdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-mdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-mdpi/android12splash.png
index ff5c9b7..397dc9b 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-mdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-mdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-night-hdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-night-hdpi/android12splash.png
index b2901c9..c37ef58 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-night-hdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-night-hdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-night-mdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-night-mdpi/android12splash.png
index ff5c9b7..397dc9b 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-night-mdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-night-mdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-night-xhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-night-xhdpi/android12splash.png
index 411feda..be1739b 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-night-xhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-night-xhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png
index 04876eb..734cbfb 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png
index 6bd48d1..3c1a620 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-v21/background.png b/making_school_asignment_app/android/app/src/main/res/drawable-v21/background.png
index 3107d37..f3dd603 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-v21/background.png and b/making_school_asignment_app/android/app/src/main/res/drawable-v21/background.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-xhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-xhdpi/android12splash.png
index 411feda..be1739b 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-xhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-xhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-xxhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-xxhdpi/android12splash.png
index 04876eb..734cbfb 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-xxhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-xxhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable-xxxhdpi/android12splash.png b/making_school_asignment_app/android/app/src/main/res/drawable-xxxhdpi/android12splash.png
index 6bd48d1..3c1a620 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable-xxxhdpi/android12splash.png and b/making_school_asignment_app/android/app/src/main/res/drawable-xxxhdpi/android12splash.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/drawable/background.png b/making_school_asignment_app/android/app/src/main/res/drawable/background.png
index 3107d37..f3dd603 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/drawable/background.png and b/making_school_asignment_app/android/app/src/main/res/drawable/background.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
index d4c7c6e..d188848 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/making_school_asignment_app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-ldpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-ldpi/ic_launcher.png
new file mode 100644
index 0000000..e3b3df8
Binary files /dev/null and b/making_school_asignment_app/android/app/src/main/res/mipmap-ldpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
index e3b4759..6bd5e0b 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/making_school_asignment_app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
index bdb7212..a1379b2 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/making_school_asignment_app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
index 87c6147..b049db5 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/making_school_asignment_app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/making_school_asignment_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
index 4764358..f3ab3ed 100644
Binary files a/making_school_asignment_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and b/making_school_asignment_app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/making_school_asignment_app/android/app/src/main/res/values-night-v31/styles.xml b/making_school_asignment_app/android/app/src/main/res/values-night-v31/styles.xml
index 2df1a97..4dc9ba4 100644
--- a/making_school_asignment_app/android/app/src/main/res/values-night-v31/styles.xml
+++ b/making_school_asignment_app/android/app/src/main/res/values-night-v31/styles.xml
@@ -6,7 +6,7 @@
- false
- false
- shortEdges
- - #FFFFFF
+ - #8C68FF
- @drawable/android12splash
@@ -16,15 +14,10 @@
-
-
-
-
-
-
-
+
+
@@ -41,11 +34,11 @@
-
+
+
-
diff --git a/making_school_asignment_app/lib/common/job/marking_models/do_paper_bus.dart b/making_school_asignment_app/lib/common/job/marking_models/do_paper_bus.dart
index 30db848..4a1ec84 100644
--- a/making_school_asignment_app/lib/common/job/marking_models/do_paper_bus.dart
+++ b/making_school_asignment_app/lib/common/job/marking_models/do_paper_bus.dart
@@ -20,3 +20,18 @@ class BottomOperationBar extends Object {
Map toJson() => _$BottomOperationBarToJson(this);
}
+
+
+
+@JsonSerializable()
+ class ZoomKey extends Object {
+
+ ZoomKey();
+
+ factory ZoomKey.fromJson(Map srcJson) => _$ZoomKeyFromJson(srcJson);
+
+ Map toJson() => _$ZoomKeyToJson(this);
+
+}
+
+
diff --git a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/dropdown_switch_students_type.dart b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/dropdown_switch_students_type.dart
index 9fb8651..aa86086 100644
--- a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/dropdown_switch_students_type.dart
+++ b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/dropdown_switch_students_type.dart
@@ -66,6 +66,27 @@ class DropdownSwitchStudentsType extends StatelessWidget {
}).toList(),
onChanged: (value) {
if (logic.state.param.value.templateId == value) return;
+ var templateIds = logic.state.data.value?.templateIds;
+
+ if (value != null && templateIds != null) {
+ final templateIdKeyMap = logic.state.data.value?.templateIdKeyMap;
+
+ var answeredAlready = templateIds[value.toString()];
+ if (answeredAlready != null && !answeredAlready) {
+ final currentStudentId = sateData.value?.studentId;
+ final students = sateData.value?.students ?? [];
+
+ // 获取当前学生姓名
+ final currentStudent = currentStudentId != null ? students.firstWhereOrNull((e) => e.id == currentStudentId) : null;
+
+ final studentName = currentStudent?.name ?? '当前学生';
+ final questionNumber = templateIdKeyMap?[value] ?? '当前选择页';
+
+ ToastUtils.showInfo("$studentName第$questionNumber页,未作答 无需批阅");
+ return;
+ }
+ }
+
logic.state.param.value.templateId = value;
logic.state.param.value = DoPaperDetailsParam.fromJson(logic.state.param.value.toJson());
// _useSwitchStudentAndType.currentTab.value = _useSwitchStudentAndType.tabs.value.firstWhere((element) => element.pageIndex == value);
@@ -215,8 +236,9 @@ Widget $continueToReview(BuildContext context, {bool isFloatingAction = false})
var param = logic.state.param.value;
int? submitCount = data?.submitCount; // 提交数量
int? annotatedCount = data?.annotatedCount; // 批阅数量
-
- if (data == null || (submitCount == annotatedCount || (param.templateId == null && param.studentId == null))) return const SizedBox();
+ // || (submitCount == annotatedCount || (param.templateId == null && param.studentId == null))
+ // TODO true 这里如何判断当前题是否是顺序应该批阅的题 如 1/2/3/4 题 1、2题都已经批阅 目前所在位置是第4题 这个继续批阅的按钮如何判断应该展示
+ if (data == null || (data.needAnnotate ? true : data.totalUnAnnotateCount <= 0) ) return const SizedBox();
callFun() => easyThrottle(
'DO_PAPERS_JOB_CONTINUE_TO_REVIEW',
() {
@@ -270,7 +292,7 @@ Widget $historyHomework(BuildContext context) {
var currentStudent = sateData.value!.students.firstWhereOrNull((e) => e.id == studentId);
if (currentStudent == null) return;
var theState = Get.find().state;
- Get.toNamed(Routes.studentWorkDetailPage, arguments: {'studentId': studentId, 'studentName': currentStudent.name,'subject':theState.param.value.subject});
+ Get.toNamed(Routes.studentWorkDetailPage, arguments: {'studentId': studentId, 'studentName': currentStudent.name, 'subject': theState.param.value.subject});
}),
child: Row(
crossAxisAlignment: CrossAxisAlignment.center,
diff --git a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_number_view.dart b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_number_view.dart
index edaf173..085f3a2 100644
--- a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_number_view.dart
+++ b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_number_view.dart
@@ -6,7 +6,6 @@ import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:functional_widget_annotation/functional_widget_annotation.dart';
import 'package:making_school_asignment_app/common/job/marking_models/do_paper_details_result.dart';
-import 'package:making_school_asignment_app/common/job/marking_models/do_test_questions_image_info.dart';
import 'package:making_school_asignment_app/common/utils/anti_shake_throttling.dart';
import 'package:making_school_asignment_app/common/utils/toast_utils.dart';
import 'package:making_school_asignment_app/page/global_widget/my_text.dart';
@@ -34,13 +33,11 @@ class QuestionNumberView extends GetView {
onPanDown: (_) => sateData.panQuestView = false,
child: Obx(() {
var zoomFile = sateZoomData.zoomFile.value;
- if (zoomFile == null) return const SizedBox();
+ var studentQuestions = sateData.studentQuestions.value ?? [];
- return $QuestionNumberScrollView(
- controller: controller,
- sateData: sateData,
- sateZoomData: sateZoomData,
- );
+ if (zoomFile == null || studentQuestions.isEmpty) return const SizedBox();
+
+ return $QuestionNumberScrollView(controller: controller, sateData: sateData, sateZoomData: sateZoomData, studentQuestions: studentQuestions);
}),
),
);
@@ -53,19 +50,24 @@ Widget $questionNumberScrollView({
required ZoomState sateZoomData,
required HomeworkReviewState sateData,
required HomeworkReviewLogic controller,
+ required List studentQuestions,
}) {
final scrollControllerNum = useScrollController(); // 试题题号区域
- var studentQuestions = useState>(sateData.studentQuestions.value ?? []);
+ // var studentQuestions = useState>(sateData.studentQuestions.value ?? []);
var useZoom = useState(sateZoomData.initScale.value ?? 1);
var usePiddingTop = useState(sateZoomData.zoomFile.value?.imageHeightOffsetStart ?? 0);
useValueChanged(sateZoomData.zoomFile.value?.imageHeightOffsetStart, (_, __) {
usePiddingTop.value = sateZoomData.zoomFile.value?.imageHeightOffsetStart ?? 0;
});
useEffect(() {
- var studentQuestionsStream = sateData.studentQuestions.listen((e) {
- studentQuestions.value = e ?? [];
+ // var studentQuestionsStream = sateData.studentQuestions.listen((e) {
+ // studentQuestions.value = e ?? [];
+ // });
+ var sateDataDataStream = sateData.data.listen((e){
+ scrollControllerNum.jumpTo(0);
});
+
var stream = sateZoomData.initScale.listen((e) {
// print("initScale : $e");
useZoom.value = e ?? 1;
@@ -85,7 +87,8 @@ Widget $questionNumberScrollView({
return () {
stream.cancel();
- studentQuestionsStream.cancel();
+ sateDataDataStream.cancel();
+ // studentQuestionsStream.cancel();
};
}, []);
@@ -127,13 +130,14 @@ Widget $questionNumberScrollView({
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
- children: studentQuestions.value
+ children: studentQuestions
.map((e) => $ScoringQuestionsView(
- sateData,
- e,
- controller,
- sateZoomData.zoomFile.value!.scaleRatio,
- useZoom.value,
+ key: Key('${sateData.data.value?.templateId}_${sateData.data.value?.studentId}_${e.questionNo}'),
+ sateData:sateData,
+ item:e,
+ logic:controller,
+ scaleRatio:sateZoomData.zoomFile.value!.scaleRatio,
+ initScale:useZoom.value,
))
.toList(),
),
@@ -143,7 +147,14 @@ Widget $questionNumberScrollView({
// 单道题得分框
@hwidget
-Widget $scoringQuestionsView(BuildContext context, HomeworkReviewState sateData, StudentQuestions item, HomeworkReviewLogic logic, double scaleRatio, double initScale) {
+Widget $scoringQuestionsView(
+ BuildContext context, {
+ required HomeworkReviewState sateData,
+ required StudentQuestions item,
+ required HomeworkReviewLogic logic,
+ required double scaleRatio,
+ required double initScale,
+}) {
var studentScore = useState(item.studentScore);
useValueChanged(item.studentScore, (_, __) {
@@ -157,6 +168,7 @@ Widget $scoringQuestionsView(BuildContext context, HomeworkReviewState sateData,
useEffect(() {
/// 学生打分数据
studentScoreListener() {
+ print(item.toJson());
item.studentScore = studentScore.value;
var theVal = sateData.studentQuestions.value?.firstWhereOrNull((e) => e.questionNo == item.questionNo);
if (theVal != null) theVal.studentScore = studentScore.value;
diff --git a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_paper_view.dart b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_paper_view.dart
index d52f77e..a4689e3 100644
--- a/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_paper_view.dart
+++ b/making_school_asignment_app/lib/page/home_page/children/homework_review/components/question_paper_view.dart
@@ -11,7 +11,6 @@ import 'package:get/get.dart';
import 'package:making_school_asignment_app/common/job/marking_models/do_paper_bus.dart';
import 'package:making_school_asignment_app/common/job/marking_models/do_paper_details_param.dart';
import 'package:making_school_asignment_app/common/job/marking_models/do_paper_details_result.dart';
-import 'package:making_school_asignment_app/common/job/marking_models/do_test_questions_image_info.dart';
import 'package:making_school_asignment_app/common/mixins/event_bus_mixin.dart';
import 'package:making_school_asignment_app/common/utils/anti_shake_throttling.dart';
import 'package:making_school_asignment_app/common/utils/cached_network_img.dart';
diff --git a/making_school_asignment_app/lib/page/home_page/children/homework_review/configuration_files/index.dart b/making_school_asignment_app/lib/page/home_page/children/homework_review/configuration_files/index.dart
index 4ced550..5830dd5 100644
--- a/making_school_asignment_app/lib/page/home_page/children/homework_review/configuration_files/index.dart
+++ b/making_school_asignment_app/lib/page/home_page/children/homework_review/configuration_files/index.dart
@@ -32,9 +32,9 @@ class HomeworkReviewState {
// late String homeworkId;
// late String homeworkName;
late Rx param;
- late Rx data;
- late Rx?> studentQuestions;
- late Rx slide; // 滑动位置
+ late Rx data = Rx(null);
+ late Rx?> studentQuestions = Rx?>(null);
+ late Rx slide = 0.0.obs; // 滑动位置
bool? panQuestView = null;
// late Rx imageScale;
// late Rx imageScaleZoom = Rx(null);
@@ -98,10 +98,7 @@ class HomeworkReviewLogic extends GetxController with RequestToolMixin, EventBus
classId: Get.arguments['classId'],
subject: Get.arguments['subject'],
).obs;
- state.data = Rx(null);
- state.studentQuestions = Rx?>(null);
// state.imageScale = Rx(null);
- state.slide = 0.0.obs;
// 参数变化更新作业详情
_paramListen = state.param.listen((e) => getData());
@@ -110,7 +107,7 @@ class HomeworkReviewLogic extends GetxController with RequestToolMixin, EventBus
if (e == null) return;
var zoomState = zoomLogic.zoomState;
- state.studentQuestions.value = e.studentQuestions; // 赋值试题集合
+
final currentTemplateId = zoomState.zoomFile.value?.templateId; // 获取旧题号ID
if (currentTemplateId != null && currentTemplateId != e.templateId) {
@@ -176,7 +173,8 @@ class HomeworkReviewLogic extends GetxController with RequestToolMixin, EventBus
state.param.value.templateId ??= data.templateId;
state.param.value.studentId ??= data.studentId;
-
+
+ state.studentQuestions.value = data.studentQuestions; // 赋值试题集合
state.data.value = data;
} catch (e) {
print('获取数据报错了:$e');
diff --git a/making_school_asignment_app/lib/page/login_page/login_logic.dart b/making_school_asignment_app/lib/page/login_page/login_logic.dart
index 3b3d179..37674f3 100644
--- a/making_school_asignment_app/lib/page/login_page/login_logic.dart
+++ b/making_school_asignment_app/lib/page/login_page/login_logic.dart
@@ -35,6 +35,9 @@ class LoginLogic extends GetxController with RequestToolMixin {
}
// state.userNameController.text = "AppleTester";
// state.passwordController.text = "AppleTester123!";
+
+ // state.userNameController.text = "SZJY200504252";
+ // state.passwordController.text = "504252";
state.pwdFocus = FocusNode();
state.theFocus = FocusNode();
diff --git a/making_school_asignment_app/pubspec.yaml b/making_school_asignment_app/pubspec.yaml
index 03a7639..a8ec1ac 100644
--- a/making_school_asignment_app/pubspec.yaml
+++ b/making_school_asignment_app/pubspec.yaml
@@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
-version: 1.0.5+6
+version: 1.0.3+4
environment:
sdk: '>=3.4.1 <4.0.0'
@@ -100,7 +100,8 @@ dependencies:
device_info_plus: ^11.1.0
auto_size_text: ^3.0.0
-
+# dependency_overrides:
+# meta: ^1.15.0
dev_dependencies:
flutter_test:
diff --git a/making_school_asignment_app/web/index.html b/making_school_asignment_app/web/index.html
index d2e2c0e..29014c6 100644
--- a/making_school_asignment_app/web/index.html
+++ b/making_school_asignment_app/web/index.html
@@ -187,6 +187,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -210,7 +224,7 @@
body {
margin: 0;
min-height: 100%;
- background-color: #FFFFFF;
+ background-color: #8C68FF;
background-size: 100% 100%;
}