start quesitonnaire

This commit is contained in:
verboomp
2026-02-19 11:04:02 +01:00
parent 168fc986f2
commit 9b3446685a
47 changed files with 2456 additions and 97 deletions

View File

@@ -46,3 +46,5 @@ class CustomerDto {
);
}
}

View File

@@ -0,0 +1,49 @@
import 'package:fotodocumentation/dto/questionnaire_dto.dart';
import 'package:fotodocumentation/utils/date_time_utils.dart';
class QuestionnaireCustomerListDto {
final int id;
final String name;
final String customerNumber;
final String? zip;
final String? city;
final DateTime? lastUpdateDate;
QuestionnaireCustomerListDto({required this.id, required this.name, required this.customerNumber, this.zip, this.city, this.lastUpdateDate});
/// Create from JSON response
factory QuestionnaireCustomerListDto.fromJson(Map<String, dynamic> json) {
return QuestionnaireCustomerListDto(
id: json['id'] as int,
name: json['name'] as String,
customerNumber: json['customerNumber'] as String,
zip: json['zip'] as String?,
city: json['city'] as String?,
lastUpdateDate: DateTimeUtils.toDateTime(json['lastUpdateDate']),
);
}
}
class QuestionnaireCustomerDto {
final int id;
final String name;
final String customerNumber;
final String? zip;
final String? city;
final List<QuestionnaireDto> questionnaires;
QuestionnaireCustomerDto({required this.id, required this.name, required this.customerNumber, required this.questionnaires, this.zip, this.city});
/// Create from JSON response
factory QuestionnaireCustomerDto.fromJson(Map<String, dynamic> json) {
return QuestionnaireCustomerDto(
id: json['id'] as int,
name: json['name'] as String,
customerNumber: json['customerNumber'] as String,
zip: json['zip'] as String?,
city: json['city'] as String?,
questionnaires: List<QuestionnaireDto>.from(json["questionnaires"].map((x) => QuestionnaireDto.fromJson(x))),
);
}
}

View File

@@ -0,0 +1,30 @@
import 'package:fotodocumentation/utils/date_time_utils.dart';
class QuestionnaireDto {
final int id;
final String? comment;
final String? category;
int evaluation;
final DateTime questionnaireDate;
final String? username;
QuestionnaireDto(
{required this.id, required this.comment, required this.category, required this.evaluation, required this.questionnaireDate, required this.username});
/// Create from JSON response
factory QuestionnaireDto.fromJson(Map<String, dynamic> json) {
return QuestionnaireDto(
id: json['id'] as int,
comment: json['comment'] as String?,
category: json['category'] as String?,
evaluation: json["evaluation"] as int,
questionnaireDate: DateTimeUtils.toDateTime(json['questionnaireDate']) ?? DateTime.now(),
username: json['username'] as String?,
);
}
@override
String toString() {
return 'QuestionnaireDto{id: $id}';
}
}