feat: 静态页面开发完成
This commit is contained in:
@@ -33,11 +33,51 @@ class WorkOrderNotifier extends StateNotifier<WorkOrderState> {
|
||||
|
||||
Future<WorkOrder?> getDetail(String id) async {
|
||||
try {
|
||||
return await apiService.getWorkOrderDetail(id);
|
||||
final order = await apiService.getWorkOrderDetail(id);
|
||||
_upsertOrder(order);
|
||||
return order;
|
||||
} catch (_) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool> acceptOrder(String id) async {
|
||||
try {
|
||||
final updated = await apiService.acceptWorkOrder(id);
|
||||
_upsertOrder(updated);
|
||||
return true;
|
||||
} catch (_) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool> transferOrder(String id, String department) async {
|
||||
try {
|
||||
final updated = await apiService.transferWorkOrder(id, department);
|
||||
_upsertOrder(updated);
|
||||
return true;
|
||||
} catch (_) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
Future<bool> completeOrder(String id) async {
|
||||
try {
|
||||
final updated = await apiService.completeWorkOrder(id);
|
||||
_upsertOrder(updated);
|
||||
return true;
|
||||
} catch (_) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
void _upsertOrder(WorkOrder order) {
|
||||
final exists = state.orders.any((o) => o.id == order.id);
|
||||
final newOrders = exists
|
||||
? state.orders.map((o) => o.id == order.id ? order : o).toList()
|
||||
: [...state.orders, order];
|
||||
state = state.copyWith(orders: newOrders);
|
||||
}
|
||||
}
|
||||
|
||||
final workOrderProvider = StateNotifierProvider<WorkOrderNotifier, WorkOrderState>((ref) {
|
||||
|
||||
Reference in New Issue
Block a user