所有一级页面和不分二级页面

This commit is contained in:
2026-05-25 12:58:29 +08:00
parent b9f747de05
commit afef5c4ef1
158 changed files with 13082 additions and 1602 deletions

View File

@@ -0,0 +1,12 @@
import '../models/workorder_model.dart';
/// 工单远程数据源抽象类
abstract class WorkOrderRemoteDataSource {
/// 获取工单列表
Future<List<WorkOrderModel>> getWorkOrderList({
String? status,
});
/// 获取工单统计
Future<WorkOrderCountModel> getWorkOrderCount();
}

View File

@@ -0,0 +1,87 @@
import '../../../../../core/consts/workorder_consts.dart';
import 'workorder_remote_datasource.dart';
import '../models/workorder_model.dart';
/// 工单远程数据源实现(模拟数据)
class WorkOrderRemoteDataSourceImpl implements WorkOrderRemoteDataSource {
@override
Future<List<WorkOrderModel>> getWorkOrderList({String? status}) async {
// 模拟网络延迟
await Future.delayed(const Duration(seconds: 1));
// 模拟数据
final allOrders = [
WorkOrderModel(
id: '1',
title: '逆变器通讯故障处理',
orderNo: 'WO-20250521001',
priority: WorkOrderPriority.high,
executor: null,
createTime: DateTime(2025, 5, 21, 10, 12),
completeTime: null,
location: 'A区 / INV-001',
status: WorkOrderStatus.pending,
progress: null,
),
WorkOrderModel(
id: '2',
title: '组件清洗作业',
orderNo: 'WO-20250521002',
priority: WorkOrderPriority.medium,
executor: '张工',
createTime: DateTime(2025, 5, 21, 9, 30),
completeTime: null,
location: 'B区',
status: WorkOrderStatus.executing,
progress: 60.0,
),
WorkOrderModel(
id: '3',
title: '汇流箱巡检',
orderNo: 'WO-20250520098',
priority: WorkOrderPriority.low,
executor: '李工',
createTime: DateTime(2025, 5, 20, 14, 20),
completeTime: DateTime(2025, 5, 20, 16, 32),
location: 'C区',
status: WorkOrderStatus.completed,
progress: 100.0,
),
];
// 根据状态筛选
if (status != null && status != 'all') {
return allOrders
.where((order) => _statusToString(order.status) == status)
.toList();
}
return allOrders;
}
@override
Future<WorkOrderCountModel> getWorkOrderCount() async {
// 模拟网络延迟
await Future.delayed(const Duration(milliseconds: 500));
// 模拟统计数据
return WorkOrderCountModel(
pendingCount: 12,
executingCount: 8,
todayCompletedCount: 18,
);
}
String _statusToString(WorkOrderStatus status) {
switch (status) {
case WorkOrderStatus.pending:
return 'pending';
case WorkOrderStatus.executing:
return 'executing';
case WorkOrderStatus.completed:
return 'completed';
case WorkOrderStatus.all:
return 'all';
}
}
}