-
Andri Joos authorede2f9c19c
calendar_event.dart 1.36 KiB
import 'package:api/model/request/calendar_event.dart';
import 'package:api/model/response/calendar_event.dart';
import 'package:lib/lib.dart';
class CalendarEventDbConverter {
static const userIdDbFieldName = "userId";
static const teamIdDbFieldName = "teamId";
static const titleDbFieldName = "title";
static const descriptionDbFieldName = "description";
static const startDbFieldName = "start";
static const endDbFieldName = "end";
static Map<String, dynamic> toDbData(CalendarEventRequest request) {
return {
userIdDbFieldName: request.userId,
teamIdDbFieldName: request.teamId,
titleDbFieldName: request.title,
descriptionDbFieldName: request.description,
startDbFieldName: request.start.toIso8601String(),
endDbFieldName: request.end.toIso8601String(),
};
}
static CalendarEventResponse fromDbData(Map<String, dynamic> map) {
return CalendarEventResponse(
id: getRequiredMapItem(RequestResponseVariables.idFieldName, map),
userId: getRequiredMapItem(userIdDbFieldName, map),
teamId: getRequiredMapItem(teamIdDbFieldName, map),
title: getRequiredMapItem(titleDbFieldName, map),
description: getOptionalMapItem(descriptionDbFieldName, map),
start: DateTime.parse(getRequiredMapItem(startDbFieldName, map)),
end: DateTime.parse(getRequiredMapItem(endDbFieldName, map)),
);
}
}