报告饼图修改
This commit is contained in:
parent
047965aede
commit
b2f50b10a6
|
|
@ -1,5 +1,6 @@
|
|||
import 'package:fl_chart/fl_chart.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_echart/flutter_echart.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:functional_widget_annotation/functional_widget_annotation.dart';
|
||||
import 'package:marking_app/common/mixin/common.dart';
|
||||
|
|
@ -235,6 +236,7 @@ class _JobReportState extends State<JobReport> with CommonMixin {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
bool isPadFlag = isPad();
|
||||
return Scaffold(
|
||||
backgroundColor: Color.fromRGBO(245, 245, 245, 1),
|
||||
appBar: AppBar(
|
||||
|
|
@ -337,7 +339,7 @@ class _JobReportState extends State<JobReport> with CommonMixin {
|
|||
height: 6.r,
|
||||
),
|
||||
SizedBox(
|
||||
height: data.kgReport.details.length > 10 ? 300.r : data.kgReport.details.length * 50.r + 20.r,
|
||||
height: data.kgReport.details.length > 10 ? 300.r : data.kgReport.details.length * 50.r + (isPadFlag == true ?40.r:65.r),
|
||||
child: ReportTable(
|
||||
headList: ['题', '作答率', '作答人数', '正确率', '标准答案', '优先批阅概况'],
|
||||
bodyList: data.kgReport.details,
|
||||
|
|
@ -379,7 +381,7 @@ class _JobReportState extends State<JobReport> with CommonMixin {
|
|||
height: 10.r,
|
||||
),
|
||||
SizedBox(
|
||||
height: data.zgReport.details.length > 10 ? 300.r : data.zgReport.details.length * 50.r + 20.r,
|
||||
height: data.zgReport.details.length > 10 ? 300.r : data.zgReport.details.length * 50.r + 50.r,
|
||||
child: ReportTable(
|
||||
headList: ['题', '作答率', '作答人数', '正确率', '查看原题', '优先批阅概况'],
|
||||
bodyList: data.zgReport.details,
|
||||
|
|
@ -1196,7 +1198,7 @@ Widget $overallPerformance(int totalNumber, List<OverallTitles> overallTitles) {
|
|||
Color.fromRGBO(104, 136, 253, 1),
|
||||
Color.fromRGBO(255, 186, 33, 1),
|
||||
Color.fromRGBO(243, 163, 44, 1),
|
||||
Color.fromRGBO(211, 211, 211, 1).withOpacity(0.5),
|
||||
Color.fromRGBO(201, 201, 201, 1),
|
||||
Color.fromRGBO(211, 211, 211, 1),
|
||||
];
|
||||
return Container(
|
||||
|
|
@ -1216,7 +1218,36 @@ Widget $overallPerformance(int totalNumber, List<OverallTitles> overallTitles) {
|
|||
margin: EdgeInsets.only(bottom: 20.h),
|
||||
),
|
||||
Expanded(
|
||||
child: PieChart(
|
||||
child: PieChatWidget(
|
||||
dataList: overallTitles.asMap().keys.map((index) {
|
||||
var e = overallTitles[index];
|
||||
return EChartPieBean(
|
||||
title: e.title,
|
||||
|
||||
number: e.count,
|
||||
color: colorMap[index]);
|
||||
}).toList(),
|
||||
//是否需要背景
|
||||
isBackground: true,
|
||||
//是否画直线
|
||||
isLineText: true,
|
||||
//背景
|
||||
bgColor: Colors.white,
|
||||
//是否显示最前面的内容
|
||||
isFrontgText: false,
|
||||
//默认选择放大的块
|
||||
initSelect: 1,
|
||||
//初次显示以动画方式展开
|
||||
openType: OpenType.ANI,
|
||||
//旋转类型
|
||||
loopType: LoopType.DOWN_LOOP,
|
||||
//点击回调
|
||||
clickCallBack: (int value) {
|
||||
print("当前点击显示 $value");
|
||||
},
|
||||
),
|
||||
|
||||
/* PieChart(
|
||||
PieChartData(
|
||||
borderData: FlBorderData(show: false),
|
||||
sectionsSpace: 0,
|
||||
|
|
@ -1232,7 +1263,7 @@ Widget $overallPerformance(int totalNumber, List<OverallTitles> overallTitles) {
|
|||
);
|
||||
}).toList(),
|
||||
),
|
||||
),
|
||||
),*/
|
||||
)
|
||||
],
|
||||
),
|
||||
|
|
@ -1309,10 +1340,9 @@ Widget $unitTimeAnsweringSituation(BuildContext context, int jobid, List<Questio
|
|||
|
||||
return false; // 没有找到中文字符
|
||||
}
|
||||
|
||||
return Container(
|
||||
width: double.infinity,
|
||||
height: isPad() ? 520.h : 460.h,
|
||||
// height: isPad() ? 520.h : 460.h,
|
||||
margin: EdgeInsets.only(top: 20.h),
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h, horizontal: 12.w),
|
||||
decoration: BoxDecoration(color: Colors.white, borderRadius: BorderRadius.circular(10.r)),
|
||||
|
|
@ -1323,8 +1353,7 @@ Widget $unitTimeAnsweringSituation(BuildContext context, int jobid, List<Questio
|
|||
child: quickText('整体表现', color: Color.fromRGBO(92, 92, 92, 1), size: 14.sp, fontWeight: FontWeight.bold),
|
||||
margin: EdgeInsets.only(bottom: 20.h),
|
||||
),
|
||||
Expanded(
|
||||
child: Scrollbar(
|
||||
Scrollbar(
|
||||
thickness: 8.w,
|
||||
thumbVisibility: true,
|
||||
trackVisibility: true,
|
||||
|
|
@ -1456,7 +1485,6 @@ Widget $unitTimeAnsweringSituation(BuildContext context, int jobid, List<Questio
|
|||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
|
|
@ -1494,7 +1522,7 @@ Widget $personnelDataOverview(BuildContext context, List<StudentAnswerInfos> stu
|
|||
|
||||
return Container(
|
||||
width: double.infinity,
|
||||
height: isPad() ? 290.h : 264.h,
|
||||
// height: isPad() ? 290.h : 264.h,
|
||||
margin: EdgeInsets.only(top: 20.h),
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h, horizontal: 12.w),
|
||||
decoration: BoxDecoration(color: Colors.white, borderRadius: BorderRadius.circular(10.r)),
|
||||
|
|
@ -1505,8 +1533,7 @@ Widget $personnelDataOverview(BuildContext context, List<StudentAnswerInfos> stu
|
|||
child: quickText('人员数据概况', color: Color.fromRGBO(92, 92, 92, 1), size: 14.sp, fontWeight: FontWeight.bold),
|
||||
margin: EdgeInsets.only(bottom: 20.h),
|
||||
),
|
||||
Expanded(
|
||||
child: Scrollbar(
|
||||
Scrollbar(
|
||||
thickness: 8.w,
|
||||
thumbVisibility: true,
|
||||
trackVisibility: true,
|
||||
|
|
@ -1558,7 +1585,6 @@ Widget $personnelDataOverview(BuildContext context, List<StudentAnswerInfos> stu
|
|||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
||||
import 'package:marking_app/utils/easy_refresh/MyEmptyWidget.dart';
|
||||
import 'package:marking_app/utils/index.dart';
|
||||
import 'package:marking_app/utils/toast_utils.dart';
|
||||
import 'package:photo_view/photo_view.dart';
|
||||
|
||||
|
|
@ -283,6 +284,7 @@ class _ReportTableState extends State<ReportTable> {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
bool isPadFlag = isPad();
|
||||
return DataTable2(
|
||||
dividerThickness: 0,
|
||||
scrollController: _controller,
|
||||
|
|
@ -314,7 +316,7 @@ class _ReportTableState extends State<ReportTable> {
|
|||
fixedCornerColor: Colors.grey[400],
|
||||
minWidth: widget.headList.length > 6
|
||||
? 80.r * widget.headList.length
|
||||
: MediaQuery.of(context).size.width,
|
||||
: isPadFlag?MediaQuery.of(context).size.width:85.r * widget.headList.length,
|
||||
fixedTopRows: widget.fixedRows!,
|
||||
fixedLeftColumns: widget.fixedCols!,
|
||||
sortColumnIndex: _sortColumnIndex,
|
||||
|
|
@ -332,8 +334,8 @@ class _ReportTableState extends State<ReportTable> {
|
|||
? 40.r
|
||||
: widget.headList.length > 6
|
||||
? 80.r
|
||||
: (MediaQuery.of(context).size.width - 8.r) /
|
||||
widget.headList.length,
|
||||
: isPadFlag?(MediaQuery.of(context).size.width - 8.r) /
|
||||
widget.headList.length:85.r,
|
||||
);
|
||||
}),
|
||||
rows: List<DataRow>.generate(widget.bodyList.length,
|
||||
|
|
|
|||
|
|
@ -112,6 +112,9 @@ dependencies:
|
|||
data_table_2: ^2.5.10
|
||||
syncfusion_flutter_datepicker: ^21.2.10
|
||||
flutter_staggered_grid_view: ^0.6.2
|
||||
# 饼图
|
||||
flutter_echart: ^2.0.0
|
||||
|
||||
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
|
|
|
|||
Loading…
Reference in New Issue