rework ui

This commit is contained in:
verboomp
2026-01-29 12:37:44 +01:00
parent 38979c99e5
commit e062b4c688
18 changed files with 462 additions and 246 deletions

View File

@@ -1,26 +1,22 @@
import 'dart:convert' show base64Decode;
import 'package:flutter/material.dart';
import 'package:fotodocumentation/controller/picture_controller.dart';
import 'package:fotodocumentation/dto/picture_dto.dart';
import 'package:fotodocumentation/pages/customer/back_button.dart';
import 'package:fotodocumentation/pages/customer/picture_delete_dialog.dart';
import 'package:go_router/go_router.dart';
import 'package:intl/intl.dart';
import 'package:fotodocumentation/controller/base_controller.dart';
import 'package:fotodocumentation/l10n/app_localizations.dart';
import 'package:fotodocumentation/controller/customer_controller.dart';
import 'package:fotodocumentation/controller/picture_controller.dart';
import 'package:fotodocumentation/dto/customer_dto.dart';
import 'package:fotodocumentation/dto/picture_dto.dart';
import 'package:fotodocumentation/l10n/app_localizations.dart';
import 'package:fotodocumentation/pages/ui_utils/component/customer_back_button.dart';
import 'package:fotodocumentation/pages/customer/picture_delete_dialog.dart';
import 'package:fotodocumentation/pages/ui_utils/component/general_error_widget.dart';
import 'package:fotodocumentation/pages/ui_utils/component/page_header_widget.dart';
import 'package:fotodocumentation/pages/ui_utils/component/waiting_widget.dart';
import 'package:fotodocumentation/pages/ui_utils/general_style.dart';
import 'package:fotodocumentation/utils/di_container.dart';
import 'package:fotodocumentation/utils/global_router.dart';
import 'package:fotodocumentation/pages/customer/picture_widget.dart';
import 'package:go_router/go_router.dart';
import 'package:intl/intl.dart';
class CustomerWidget extends StatefulWidget {
final int customerId;
@@ -98,7 +94,6 @@ class _CustomerWidgetState extends State<CustomerWidget> {
children: [
PageHeaderWidget(text: dto.name, subText: subText),
CustomerBackButton(path: GlobalRouter.pathHome),
//_backButton(context),
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
@@ -209,7 +204,7 @@ class _CustomerWidgetState extends State<CustomerWidget> {
);
final dateStr = _dateFormat.format(pictureDto.pictureDate);
final evaluationColor = _generalStyle.evaluationColor(); // FIXME: set to color from DB
final evaluationColor = _generalStyle.evaluationColor(value: pictureDto.evaluation); // FIXME: set to color from DB
return InkWell(
key: Key("table_row_${customerDto.id}"),
onTap: () => _actionSelect(context, customerDto, pictureDto),
@@ -288,33 +283,6 @@ class _CustomerWidgetState extends State<CustomerWidget> {
);
}
Widget _backButton(BuildContext context) {
return ElevatedButton.icon(
onPressed: () => context.push(GlobalRouter.pathHome),
icon: Icon(
Icons.chevron_left,
color: _generalStyle.secondaryTextLabelColor,
size: 24,
),
label: Text(
AppLocalizations.of(context)!.backButtonLabel,
style: TextStyle(
fontFamily: _generalStyle.fontFamily,
fontWeight: FontWeight.normal,
fontSize: 16,
color: _generalStyle.secondaryTextLabelColor,
),
),
style: ElevatedButton.styleFrom(
backgroundColor: Colors.white,
elevation: 0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(8),
),
),
);
}
Widget _downloadButton(BuildContext context) {
return ElevatedButton.icon(
key: Key("download_all_button"),
@@ -360,7 +328,11 @@ class _CustomerWidgetState extends State<CustomerWidget> {
}
Future<void> _actionSelect(BuildContext context, CustomerDto customerDto, PictureDto pictureDto) async {
context.go(GlobalRouter.pathPicture, extra: PictureWidgetHolder(customerDto, pictureDto));
String uri = "${GlobalRouter.pathHome}${GlobalRouter.pathPicture}/${customerDto.id}/${pictureDto.id}";
context.go(uri);
setState(() {
_dto = _customerController.get(id: widget.customerId);
});
}
Future<void> _actionDownload(BuildContext context) async {