Add vendor selection and rates to order creation flow

Introduces a Vendor entity and integrates vendor selection into the one-time order creation and order editing flows. Vendor-specific rates are now displayed and used for position roles, and UI components have been updated to allow users to select a vendor and see corresponding rates. Mock vendor data is used for demonstration purposes.
This commit is contained in:
Achintha Isuru
2026-01-23 12:42:26 -05:00
parent 4e8373b2e5
commit 45d6710183
8 changed files with 344 additions and 222 deletions

View File

@@ -19,6 +19,7 @@ export 'src/entities/business/business_setting.dart';
export 'src/entities/business/hub.dart';
export 'src/entities/business/hub_department.dart';
export 'src/entities/business/biz_contract.dart';
export 'src/entities/business/vendor.dart';
// Events & Shifts
export 'src/entities/events/event.dart';

View File

@@ -0,0 +1,15 @@
import 'package:equatable/equatable.dart';
/// Represents a staffing vendor.
class Vendor extends Equatable {
const Vendor({required this.id, required this.name, required this.rates});
final String id;
final String name;
/// A map of role names to hourly rates.
final Map<String, double> rates;
@override
List<Object?> get props => <Object?>[id, name, rates];
}