map method
override
Maps the given row returned by the database into the fitting data class.
Implementation
@override
User map(Map<String, dynamic> data, {String? tablePrefix}) {
final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : '';
return User(
id: attachedDatabase.typeMapping.read(
DriftSqlType.int,
data['${effectivePrefix}id'],
)!,
fetchedAt: attachedDatabase.typeMapping.read(
DriftSqlType.dateTime,
data['${effectivePrefix}fetched_at'],
),
studentId: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}student_id'],
)!,
nameZh: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}name_zh'],
)!,
nameEn: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}name_en'],
),
dateOfBirth: attachedDatabase.typeMapping.read(
DriftSqlType.dateTime,
data['${effectivePrefix}date_of_birth'],
),
programZh: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}program_zh'],
),
programEn: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}program_en'],
),
departmentZh: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}department_zh'],
),
departmentEn: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}department_en'],
),
avatarFilename: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}avatar_filename'],
)!,
email: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}email'],
)!,
passwordExpiresInDays: attachedDatabase.typeMapping.read(
DriftSqlType.int,
data['${effectivePrefix}password_expires_in_days'],
),
semestersFetchedAt: attachedDatabase.typeMapping.read(
DriftSqlType.dateTime,
data['${effectivePrefix}semesters_fetched_at'],
),
);
}