43 lines
1.1 KiB
Dart
43 lines
1.1 KiB
Dart
import 'dart:convert';
|
|
|
|
import '../utils/app_time.dart';
|
|
|
|
class ItServiceRequestAction {
|
|
ItServiceRequestAction({
|
|
required this.id,
|
|
required this.requestId,
|
|
required this.userId,
|
|
this.actionTaken,
|
|
required this.createdAt,
|
|
required this.updatedAt,
|
|
});
|
|
|
|
final String id;
|
|
final String requestId;
|
|
final String userId;
|
|
final String? actionTaken; // Quill Delta JSON
|
|
final DateTime createdAt;
|
|
final DateTime updatedAt;
|
|
|
|
factory ItServiceRequestAction.fromMap(Map<String, dynamic> map) {
|
|
String? quillField(dynamic raw) {
|
|
if (raw == null) return null;
|
|
if (raw is String) return raw;
|
|
try {
|
|
return jsonEncode(raw);
|
|
} catch (_) {
|
|
return raw.toString();
|
|
}
|
|
}
|
|
|
|
return ItServiceRequestAction(
|
|
id: map['id'] as String,
|
|
requestId: map['request_id'] as String,
|
|
userId: map['user_id'] as String,
|
|
actionTaken: quillField(map['action_taken']),
|
|
createdAt: AppTime.parse(map['created_at'] as String),
|
|
updatedAt: AppTime.parse(map['updated_at'] as String),
|
|
);
|
|
}
|
|
}
|