123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- import 'package:cpt_sg/modules/job/job_list/job_list_page.dart';
- import 'package:cpt_sg/modules/report/dashboard/dashboard_item.dart';
- import 'package:flutter/material.dart';
- import 'package:get/get.dart';
- import 'package:widgets/ext/ex_widget.dart';
- import 'package:widgets/load_state_layout.dart';
- import 'package:widgets/widget_export.dart';
- import 'dashboard_controller.dart';
- import 'package:plugin_basic/base/base_state.dart';
- import 'package:plugin_basic/base/base_stateful_page.dart';
- import 'package:plugin_basic/utils/ext_get_nav.dart';
- import 'package:router/path/router_path.dart';
- import 'package:shared/utils/screen_util.dart';
- import 'package:widgets/my_appbar.dart';
- import 'dashboard_state.dart';
- class SGDashboardPage extends BaseStatefulPage<DashboardController> {
- SGDashboardPage({Key? key}) : super(key: key);
- //启动当前页面
- static void startInstance() {
- return Get.start(RouterPath.dashboardSG);
- }
- @override
- DashboardController createRawController() {
- return DashboardController();
- }
- @override
- State<SGDashboardPage> createState() => _DeviceListState();
- }
- class _DeviceListState extends BaseState<SGDashboardPage, DashboardController> {
- late DashboardState state;
- @override
- void initState() {
- super.initState();
- state = controller.state;
- }
- @override
- Widget build(BuildContext context) {
- return autoCtlGetBuilder(builder: (controller) {
- return SafeArea(
- bottom: true,
- top: false,
- child: Container(
- width: double.infinity,
- height: double.infinity,
- padding: EdgeInsets.only(top: ScreenUtil.getStatusBarH(context)),
- decoration: const BoxDecoration(
- gradient: LinearGradient(
- colors: [
- Color(0xFF091D44),
- Color(0xFF245A8A),
- Color(0xFF7F7CEC),
- ],
- begin: Alignment.topCenter,
- end: Alignment.bottomCenter,
- ),
- ),
- child: Column(
- children: [
- MyAppBar.titleBar(context, "Dashboard".tr),
- //底部的列表
- EasyRefresh(
- controller: controller.refreshController,
- onRefresh: controller.onRefresh,
- child: LoadStateLayout(
- state: controller.loadingState,
- errorMessage: controller.errorMessage,
- errorRetry: () {
- controller.retryRequest();
- },
- successSliverWidget: [
- SliverList(
- delegate: SliverChildBuilderDelegate(
- (context, index) {
- return DashboardItem(
- index: index,
- item: state.datas[index],
- OnItemClickAction: (String? agencyId, String? outletId, String? day) {
- JobListPage.startInstance(date: day, outletId: outletId, agencyId: agencyId);
- },
- );
- },
- childCount: state.datas.length,
- ))
- ],
- ),
- ).marginOnly(top: 5).expanded(),
- ],
- ),
- ),
- );
- });
- }
- }
|