feat: address missing features and bugs identified during Milestone 3 demo; improve localization, error handling, and navigation
This commit is contained in:
@@ -1,23 +0,0 @@
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
|
||||
extension ClientCreateOrderNavigator on IModularNavigator {
|
||||
void pushCreateOrder() {
|
||||
pushNamed('/client/create-order/');
|
||||
}
|
||||
|
||||
void pushRapidOrder() {
|
||||
pushNamed('/client/create-order/rapid');
|
||||
}
|
||||
|
||||
void pushOneTimeOrder() {
|
||||
pushNamed('/client/create-order/one-time');
|
||||
}
|
||||
|
||||
void pushRecurringOrder() {
|
||||
pushNamed('/client/create-order/recurring');
|
||||
}
|
||||
|
||||
void pushPermanentOrder() {
|
||||
pushNamed('/client/create-order/permanent');
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@ import 'package:core_localization/core_localization.dart';
|
||||
import 'package:design_system/design_system.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
import 'package:krow_core/core.dart';
|
||||
|
||||
/// Permanent Order Page - Long-term staffing placement.
|
||||
/// Placeholder for future implementation.
|
||||
@@ -18,7 +19,7 @@ class PermanentOrderPage extends StatelessWidget {
|
||||
backgroundColor: UiColors.bgPrimary,
|
||||
appBar: UiAppBar(
|
||||
title: labels.title,
|
||||
onLeadingPressed: () => Modular.to.navigate('/client/create-order/'),
|
||||
onLeadingPressed: () => Modular.to.navigate(ClientPaths.createOrder),
|
||||
),
|
||||
body: Center(
|
||||
child: Padding(
|
||||
|
||||
@@ -2,6 +2,7 @@ import 'package:core_localization/core_localization.dart';
|
||||
import 'package:design_system/design_system.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
import 'package:krow_core/core.dart';
|
||||
|
||||
/// Recurring Order Page - Ongoing weekly/monthly coverage.
|
||||
/// Placeholder for future implementation.
|
||||
@@ -18,7 +19,7 @@ class RecurringOrderPage extends StatelessWidget {
|
||||
backgroundColor: UiColors.bgPrimary,
|
||||
appBar: UiAppBar(
|
||||
title: labels.title,
|
||||
onLeadingPressed: () => Modular.to.navigate('/client/create-order/'),
|
||||
onLeadingPressed: () => Modular.to.toClientHome(),
|
||||
),
|
||||
body: Center(
|
||||
child: Padding(
|
||||
|
||||
@@ -3,10 +3,10 @@ import 'package:design_system/design_system.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
import 'package:krow_core/core.dart';
|
||||
import 'package:krow_domain/krow_domain.dart';
|
||||
import '../../blocs/client_create_order_bloc.dart';
|
||||
import '../../blocs/client_create_order_state.dart';
|
||||
import '../../navigation/client_create_order_navigator.dart';
|
||||
import '../../ui_entities/order_type_ui_metadata.dart';
|
||||
import '../order_type_card.dart';
|
||||
|
||||
@@ -43,7 +43,7 @@ class CreateOrderView extends StatelessWidget {
|
||||
backgroundColor: UiColors.bgPrimary,
|
||||
appBar: UiAppBar(
|
||||
title: t.client_create_order.title,
|
||||
onLeadingPressed: () => Modular.to.navigate('/client-main/home/'),
|
||||
onLeadingPressed: () => Modular.to.toClientHome(),
|
||||
),
|
||||
body: SafeArea(
|
||||
child: Padding(
|
||||
@@ -98,16 +98,16 @@ class CreateOrderView extends StatelessWidget {
|
||||
onTap: () {
|
||||
switch (type.id) {
|
||||
case 'rapid':
|
||||
Modular.to.pushRapidOrder();
|
||||
Modular.to.toCreateOrderRapid();
|
||||
break;
|
||||
case 'one-time':
|
||||
Modular.to.pushOneTimeOrder();
|
||||
Modular.to.toCreateOrderOneTime();
|
||||
break;
|
||||
case 'recurring':
|
||||
Modular.to.pushRecurringOrder();
|
||||
Modular.to.toCreateOrderRecurring();
|
||||
break;
|
||||
case 'permanent':
|
||||
Modular.to.pushPermanentOrder();
|
||||
Modular.to.toCreateOrderPermanent();
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'package:design_system/design_system.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
import 'package:krow_core/core.dart';
|
||||
import 'package:krow_domain/krow_domain.dart';
|
||||
import '../../blocs/one_time_order_bloc.dart';
|
||||
import '../../blocs/one_time_order_event.dart';
|
||||
@@ -50,7 +51,7 @@ class OneTimeOrderView extends StatelessWidget {
|
||||
OneTimeOrderHeader(
|
||||
title: labels.title,
|
||||
subtitle: labels.subtitle,
|
||||
onBack: () => Modular.to.navigate('/client/create-order/'),
|
||||
onBack: () => Modular.to.navigate(ClientPaths.createOrder),
|
||||
),
|
||||
Expanded(
|
||||
child: Center(
|
||||
@@ -89,7 +90,7 @@ class OneTimeOrderView extends StatelessWidget {
|
||||
OneTimeOrderHeader(
|
||||
title: labels.title,
|
||||
subtitle: labels.subtitle,
|
||||
onBack: () => Modular.to.navigate('/client/create-order/'),
|
||||
onBack: () => Modular.to.navigate(ClientPaths.createOrder),
|
||||
),
|
||||
Expanded(
|
||||
child: Stack(
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_modular/flutter_modular.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:krow_core/core.dart';
|
||||
import '../../blocs/rapid_order_bloc.dart';
|
||||
import '../../blocs/rapid_order_event.dart';
|
||||
import '../../blocs/rapid_order_state.dart';
|
||||
@@ -28,7 +29,7 @@ class RapidOrderView extends StatelessWidget {
|
||||
title: labels.success_title,
|
||||
message: labels.success_message,
|
||||
buttonLabel: labels.back_to_orders,
|
||||
onDone: () => Modular.to.navigate('/client-main/orders/'),
|
||||
onDone: () => Modular.to.navigate(ClientPaths.orders),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -82,7 +83,7 @@ class _RapidOrderFormState extends State<_RapidOrderForm> {
|
||||
subtitle: labels.subtitle,
|
||||
date: dateStr,
|
||||
time: timeStr,
|
||||
onBack: () => Modular.to.navigate('/client/create-order/'),
|
||||
onBack: () => Modular.to.navigate(ClientPaths.createOrder),
|
||||
),
|
||||
|
||||
// Content
|
||||
|
||||
Reference in New Issue
Block a user