Rename asset to be device as it was before

main_design2.0
zaid_daoud 2 years ago
parent c7d6b68fd2
commit 1e1ac215ea

@ -8,7 +8,7 @@
"passwordLengthMessage" : "يجب أن تتكون كلمة السر من 6 خانات على الأقل", "passwordLengthMessage" : "يجب أن تتكون كلمة السر من 6 خانات على الأقل",
"overview" : "نظرة عامة", "overview" : "نظرة عامة",
"myRequests" : "طلباتي", "myRequests" : "طلباتي",
"myAssets" : "ممتلكاتي", "myAssets" : "أجهزتي",
"contactUs": "اتصل بنا", "contactUs": "اتصل بنا",
"welcome" : "مرحبا،", "welcome" : "مرحبا،",
"openWhatsapp" : "الإنتقال الى الواتس اب", "openWhatsapp" : "الإنتقال الى الواتس اب",
@ -38,5 +38,9 @@
"floor" : "الطابق", "floor" : "الطابق",
"youHaveToAddRequests" : "يجب إضافة طلبات", "youHaveToAddRequests" : "يجب إضافة طلبات",
"createdSuccessfully" : "إكتمل الطلب بنجاح", "createdSuccessfully" : "إكتمل الطلب بنجاح",
"failedToCompleteRequest" : "فشل إتمام الطلب" "failedToCompleteRequest" : "فشل إتمام الطلب",
"assetNo" : "رقم الجهاز",
"manufacture" : "صناعة",
"model" : "الطراز",
"serialNumber" : "الرقم التسلسلي"
} }

@ -38,5 +38,9 @@
"floor" : "Floor", "floor" : "Floor",
"youHaveToAddRequests" : "You have to add requests", "youHaveToAddRequests" : "You have to add requests",
"createdSuccessfully" : "Created successfully", "createdSuccessfully" : "Created successfully",
"failedToCompleteRequest" : "Failed to complete request" "failedToCompleteRequest" : "Failed to complete request",
"assetNo" : "Asset No.",
"manufacture" : "Manufacture",
"model" : "Model",
"serialNumber" : "Serial Number"
} }

@ -5,7 +5,7 @@ import 'package:flutter/cupertino.dart';
import 'package:http/http.dart'; import 'package:http/http.dart';
import 'package:test_sa/controllers/api_routes/api_manager.dart'; import 'package:test_sa/controllers/api_routes/api_manager.dart';
import 'package:test_sa/controllers/api_routes/urls.dart'; import 'package:test_sa/controllers/api_routes/urls.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/user.dart'; import 'package:test_sa/models/user.dart';
import '../../../models/hospital.dart'; import '../../../models/hospital.dart';

@ -7,7 +7,7 @@ import 'package:test_sa/controllers/api_routes/urls.dart';
import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/models/user.dart'; import 'package:test_sa/models/user.dart';
import '../../../models/asset/asset.dart'; import '../../../models/device/device.dart';
class AssetProvider extends ChangeNotifier { class AssetProvider extends ChangeNotifier {
//reset provider data //reset provider data
@ -26,9 +26,9 @@ class AssetProvider extends ChangeNotifier {
int get stateCode => _stateCode; int get stateCode => _stateCode;
List<Asset> _devices = []; List<Device> _devices = [];
List<Asset> get devices => _devices; List<Device> get devices => _devices;
// when categories in-process _loading = true // when categories in-process _loading = true
// done _loading = true // done _loading = true
@ -77,7 +77,7 @@ class AssetProvider extends ChangeNotifier {
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
// client's request was successfully received // client's request was successfully received
List equipmentListJson = json.decode(response.body)["data"]; List equipmentListJson = json.decode(response.body)["data"];
var dList = equipmentListJson.map<Asset>((asset) => Asset.fromJson(asset)).toList(); var dList = equipmentListJson.map<Device>((asset) => Device.fromJson(asset)).toList();
try { try {
if (isQr) { if (isQr) {
dList = dList.where((element) => number?.toLowerCase() == element?.assetNumber?.toLowerCase())?.toList() ?? []; dList = dList.where((element) => number?.toLowerCase() == element?.assetNumber?.toLowerCase())?.toList() ?? [];
@ -100,7 +100,7 @@ class AssetProvider extends ChangeNotifier {
/// return state code if request complete may be 200, 404 or 403 /// return state code if request complete may be 200, 404 or 403
/// for more details check http state manager /// for more details check http state manager
/// lib\controllers\http_status_manger\http_status_manger.dart /// lib\controllers\http_status_manger\http_status_manger.dart
Future<List<Asset>> getDevicesList({ Future<List<Device>> getDevicesList({
@required String host, @required String host,
@required User user, @required User user,
@required int hospitalId, @required int hospitalId,
@ -122,12 +122,12 @@ class AssetProvider extends ChangeNotifier {
// "${number?.isEmpty == false ? "&assetNo=$number" : ""}" // "${number?.isEmpty == false ? "&assetNo=$number" : ""}"
// ), // ),
// ); // );
List<Asset> page = []; List<Device> page = [];
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
// client's request was successfully received // client's request was successfully received
List equipmentListJson = json.decode(response.body)["data"]; List equipmentListJson = json.decode(response.body)["data"];
page = equipmentListJson.map((asset) => Asset.fromJson(asset)).toList(); page = equipmentListJson.map((asset) => Device.fromJson(asset)).toList();
_devices.addAll(equipmentListJson.map<Asset>((asset) => Asset.fromJson(asset)).toList()); _devices.addAll(equipmentListJson.map<Device>((asset) => Device.fromJson(asset)).toList());
notifyListeners(); notifyListeners();
} }
return page; return page;

@ -1,8 +1,8 @@
import 'asset.dart';
import 'asset_transfer.dart'; import 'asset_transfer.dart';
import 'device.dart';
class AssetTransferSearch extends AssetTransfer { class AssetTransferSearch extends AssetTransfer {
Asset asset; Device asset;
int pageNumber = 10, pageSize; int pageNumber = 10, pageSize;
bool mostRecent; bool mostRecent;

@ -1,5 +1,5 @@
import 'package:test_sa/models/asset/supplier.dart'; import 'package:test_sa/models/device/supplier.dart';
import 'package:test_sa/models/asset/technical_guidance_book.dart'; import 'package:test_sa/models/device/technical_guidance_book.dart';
import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/models/lookup.dart';
import '../new_models/building.dart'; import '../new_models/building.dart';
@ -8,8 +8,8 @@ import '../new_models/floor.dart';
import '../new_models/site.dart'; import '../new_models/site.dart';
import 'model_definition.dart'; import 'model_definition.dart';
class Asset { class Device {
Asset({ Device({
this.id, this.id,
this.assetSerialNo, this.assetSerialNo,
this.systemID, this.systemID,
@ -60,7 +60,7 @@ class Asset {
this.tagCode, this.tagCode,
}); });
Asset.fromJson(dynamic json) { Device.fromJson(dynamic json) {
id = json['id']; id = json['id'];
assetSerialNo = json['assetSerialNo']; assetSerialNo = json['assetSerialNo'];
systemID = json['systemID']; systemID = json['systemID'];
@ -163,7 +163,7 @@ class Asset {
List<TechnicalGuidanceBook> technicalGuidanceBooks; List<TechnicalGuidanceBook> technicalGuidanceBooks;
String comment; String comment;
String tagCode; String tagCode;
Asset copyWith({ Device copyWith({
num id, num id,
String assetSerialNo, String assetSerialNo,
String systemID, String systemID,
@ -213,7 +213,7 @@ class Asset {
String comment, String comment,
String tagCode, String tagCode,
}) => }) =>
Asset( Device(
id: id ?? this.id, id: id ?? this.id,
assetSerialNo: assetSerialNo ?? this.assetSerialNo, assetSerialNo: assetSerialNo ?? this.assetSerialNo,
systemID: systemID ?? this.systemID, systemID: systemID ?? this.systemID,

@ -1,9 +1,9 @@
import '../hospital.dart'; import '../hospital.dart';
import 'asset.dart'; import 'device.dart';
@Deprecated("Use asset_transfer_search.dart instead of this one") @Deprecated("Use asset_transfer_search.dart instead of this one")
class DeviceTransferSearch { class DeviceTransferSearch {
Asset device; Device device;
String title, room; String title, room;
bool mostRecent; bool mostRecent;
Hospital hospital; Hospital hospital;

@ -1,4 +1,4 @@
import 'package:test_sa/models/asset/supplier.dart'; import 'package:test_sa/models/device/supplier.dart';
class ModelDefinition { class ModelDefinition {
ModelDefinition({ ModelDefinition({

@ -39,4 +39,9 @@ enum TranslationKeys {
createdSuccessfully, createdSuccessfully,
failedToCompleteRequest, failedToCompleteRequest,
youHaveToAddRequests, youHaveToAddRequests,
assetNo,
manufacture,
model,
serialNumber,
device,
} }

@ -2,7 +2,7 @@ import 'dart:typed_data';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:test_sa/controllers/api_routes/urls.dart'; import 'package:test_sa/controllers/api_routes/urls.dart';
import 'package:test_sa/models/asset/asset.dart'; import 'package:test_sa/models/device/device.dart';
import 'package:test_sa/models/engineer.dart'; import 'package:test_sa/models/engineer.dart';
import 'package:test_sa/models/fault_description.dart'; import 'package:test_sa/models/fault_description.dart';
import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/models/lookup.dart';
@ -35,7 +35,7 @@ class ServiceReport {
String invoiceCode; String invoiceCode;
List<Part> parts; List<Part> parts;
List<String> files; List<String> files;
Asset device; Device device;
String quantity; String quantity;
String jobSheetNumber; String jobSheetNumber;
TimerModel timer; TimerModel timer;
@ -235,7 +235,7 @@ class ServiceReport {
durationInSecond: ((parsedJson["workingHours"] ?? 0) * 60 * 60).toInt(), durationInSecond: ((parsedJson["workingHours"] ?? 0) * 60 * 60).toInt(),
), ),
//workPreformed: parsedJson["work_performed"], //workPreformed: parsedJson["work_performed"],
device: Asset.fromJson(parsedJson["callRequest"]["asset"]), device: Device.fromJson(parsedJson["callRequest"]["asset"]),
signatureNurse: URLs.getFileUrl(parsedJson["nurseSignature"]), signatureNurse: URLs.getFileUrl(parsedJson["nurseSignature"]),
signatureEngineer: URLs.getFileUrl(parsedJson["engSignature"]), signatureEngineer: URLs.getFileUrl(parsedJson["engSignature"]),
comment: parsedJson['comment'], comment: parsedJson['comment'],

@ -1,5 +1,5 @@
import 'package:test_sa/controllers/api_routes/urls.dart'; import 'package:test_sa/controllers/api_routes/urls.dart';
import 'package:test_sa/models/asset/asset.dart'; import 'package:test_sa/models/device/device.dart';
import 'package:test_sa/models/fault_description.dart'; import 'package:test_sa/models/fault_description.dart';
import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/models/lookup.dart';
@ -42,7 +42,7 @@ class ServiceRequest {
Lookup requestedThrough; Lookup requestedThrough;
Lookup firstAction; Lookup firstAction;
Lookup loanAvailability; Lookup loanAvailability;
Asset device; Device device;
ServiceRequest({ ServiceRequest({
this.id, this.id,
@ -128,7 +128,7 @@ class ServiceRequest {
visitDate: DateTime.tryParse(parsedJson["visitDate"] ?? "").toString().split(" ").first, visitDate: DateTime.tryParse(parsedJson["visitDate"] ?? "").toString().split(" ").first,
nextVisitDate: DateTime.tryParse(parsedJson["nextVisitDate"] ?? ""), nextVisitDate: DateTime.tryParse(parsedJson["nextVisitDate"] ?? ""),
//workPerformed: parsedJson["workOrder"] != null ? parsedJson["workOrder"]["workPerformed"] : null, //workPerformed: parsedJson["workOrder"] != null ? parsedJson["workOrder"]["workPerformed"] : null,
device: Asset.fromJson(parsedJson["asset"]), device: Device.fromJson(parsedJson["asset"]),
reviewComment: parsedJson["reviewComment"], reviewComment: parsedJson["reviewComment"],
type: Lookup.fromJson(parsedJson['typeofRequest']), type: Lookup.fromJson(parsedJson['typeofRequest']),
defectType: Lookup.fromJson(parsedJson['defectType']), defectType: Lookup.fromJson(parsedJson['defectType']),

@ -3,7 +3,7 @@ import 'package:provider/provider.dart';
import 'package:test_sa/controllers/localization/localization.dart'; import 'package:test_sa/controllers/localization/localization.dart';
import 'package:test_sa/controllers/providers/api/asset_transfer_provider.dart'; import 'package:test_sa/controllers/providers/api/asset_transfer_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/colors.dart'; import 'package:test_sa/views/app_style/colors.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';

@ -4,7 +4,7 @@ import 'package:test_sa/controllers/providers/api/asset_transfer_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart'; import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/int_extensions.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_button.dart'; import 'package:test_sa/views/widgets/buttons/app_button.dart';

@ -4,7 +4,7 @@ import 'package:provider/provider.dart';
import 'package:test_sa/controllers/providers/api/asset_transfer_provider.dart'; import 'package:test_sa/controllers/providers/api/asset_transfer_provider.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/controllers/providers/settings/setting_provider.dart'; import 'package:test_sa/controllers/providers/settings/setting_provider.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_button.dart'; import 'package:test_sa/views/widgets/buttons/app_button.dart';

@ -32,7 +32,7 @@ import 'package:test_sa/views/widgets/titles/app_sub_title.dart';
import '../../../../controllers/providers/api/status_drop_down/service_reqest/service_request_through_provider.dart'; import '../../../../controllers/providers/api/status_drop_down/service_reqest/service_request_through_provider.dart';
import '../../../../controllers/providers/api/status_drop_down/service_reqest/service_request_type_provider.dart'; import '../../../../controllers/providers/api/status_drop_down/service_reqest/service_request_type_provider.dart';
import '../../../../models/asset/asset.dart'; import '../../../../models/device/device.dart';
import '../../../../models/enums/translation_keys.dart'; import '../../../../models/enums/translation_keys.dart';
import '../../../../new_views/common_widgets/default_app_bar.dart'; import '../../../../new_views/common_widgets/default_app_bar.dart';
import '../../../widgets/status/service_request/service_request_first_action.dart'; import '../../../widgets/status/service_request/service_request_first_action.dart';
@ -57,7 +57,7 @@ class CreateRequestPageState extends State<CreateRequestPage> {
final List<File> _deviceImages = []; final List<File> _deviceImages = [];
bool _isLoading = false; bool _isLoading = false;
bool _showDatePicker = false; bool _showDatePicker = false;
Asset _device; Device _asset;
Subtitle _subtitle; Subtitle _subtitle;
final GlobalKey<FormState> _formKey = GlobalKey<FormState>(); final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>(); final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();
@ -72,7 +72,7 @@ class CreateRequestPageState extends State<CreateRequestPage> {
_commentController = TextEditingController(); _commentController = TextEditingController();
if (widget.serviceRequest != null) { if (widget.serviceRequest != null) {
_serviceRequest = widget.serviceRequest; _serviceRequest = widget.serviceRequest;
_device = _serviceRequest.device; _asset = _serviceRequest.device;
_deviceImages.addAll(_serviceRequest.devicePhotos.map((e) => File(e)).toList()); _deviceImages.addAll(_serviceRequest.devicePhotos.map((e) => File(e)).toList());
_showDatePicker = _serviceRequest.firstAction != null && _serviceRequest.firstAction.name == "Need a visit"; _showDatePicker = _serviceRequest.firstAction != null && _serviceRequest.firstAction.name == "Need a visit";
if (_showDatePicker && _serviceRequest.visitDate != null) { if (_showDatePicker && _serviceRequest.visitDate != null) {
@ -143,9 +143,9 @@ class CreateRequestPageState extends State<CreateRequestPage> {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
PickAsset( PickAsset(
asset: _device, device: _asset,
onPickAsset: (device) { onPickAsset: (asset) {
_device = device; _asset = asset;
setState(() {}); setState(() {});
}, },
), ),
@ -315,7 +315,7 @@ class CreateRequestPageState extends State<CreateRequestPage> {
AppFilledButton( AppFilledButton(
onPressed: () async { onPressed: () async {
if (!_formKey.currentState.validate()) return; if (!_formKey.currentState.validate()) return;
if (_device?.id == null) { if (_asset?.id == null) {
Fluttertoast.showToast(msg: _subtitle.pickDevice); Fluttertoast.showToast(msg: _subtitle.pickDevice);
return; return;
} }
@ -328,7 +328,7 @@ class CreateRequestPageState extends State<CreateRequestPage> {
return; return;
} }
_formKey.currentState.save(); _formKey.currentState.save();
_serviceRequest.deviceId = _device?.id; _serviceRequest.deviceId = _asset?.id;
if (widget.serviceRequest == null) { if (widget.serviceRequest == null) {
_serviceRequest.type = Provider.of<ServiceRequestTypeProvider>(context, listen: false).getDefaultItem(); _serviceRequest.type = Provider.of<ServiceRequestTypeProvider>(context, listen: false).getDefaultItem();
} }

@ -7,7 +7,7 @@ import 'package:test_sa/views/widgets/requests/info_row.dart';
import 'package:test_sa/views/widgets/requests/request_status.dart'; import 'package:test_sa/views/widgets/requests/request_status.dart';
import '../../../controllers/providers/api/user_provider.dart'; import '../../../controllers/providers/api/user_provider.dart';
import '../../../models/asset/device_transfer_info.dart'; import '../../../models/device/device_transfer_info.dart';
import '../images/multi_image_picker.dart'; import '../images/multi_image_picker.dart';
class DeviceTransferInfoSection extends StatelessWidget { class DeviceTransferInfoSection extends StatelessWidget {

@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:test_sa/controllers/localization/localization.dart'; import 'package:test_sa/controllers/localization/localization.dart';
import 'package:test_sa/controllers/providers/api/user_provider.dart'; import 'package:test_sa/controllers/providers/api/user_provider.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/models/user.dart'; import 'package:test_sa/models/user.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';

@ -1,6 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:test_sa/controllers/localization/localization.dart'; import 'package:test_sa/controllers/localization/localization.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/pages/device_transfer/device_transfer_details.dart'; import 'package:test_sa/views/pages/device_transfer/device_transfer_details.dart';
import 'package:test_sa/views/widgets/device_trancfer/device_transfer_item.dart'; import 'package:test_sa/views/widgets/device_trancfer/device_transfer_item.dart';

@ -8,10 +8,10 @@ import 'package:test_sa/views/app_style/colors.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
import '../../../models/asset/asset.dart'; import '../../../models/device/device.dart';
class AutoCompleteDeviceField extends StatefulWidget { class AutoCompleteDeviceField extends StatefulWidget {
final Asset initialValue; final Device initialValue;
final int hospitalId; final int hospitalId;
final Function(int) onPick; final Function(int) onPick;
@ -60,7 +60,7 @@ class _AutoCompleteDeviceFieldState extends State<AutoCompleteDeviceField> {
border: Border.all(color: AColors.black), border: Border.all(color: AColors.black),
borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)), borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)),
boxShadow: [AppStyle.boxShadow]), boxShadow: [AppStyle.boxShadow]),
child: TypeAheadField<Asset>( child: TypeAheadField<Device>(
textFieldConfiguration: TextFieldConfiguration( textFieldConfiguration: TextFieldConfiguration(
style: Theme.of(context).textTheme.headline6, style: Theme.of(context).textTheme.headline6,
controller: _controller, controller: _controller,

@ -4,11 +4,11 @@ import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/colors.dart'; import 'package:test_sa/views/app_style/colors.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import '../../../models/asset/asset.dart'; import '../../../models/device/device.dart';
class DeviceItem extends StatelessWidget { class DeviceItem extends StatelessWidget {
final Asset device; final Device device;
final Function(Asset) onPressed; final Function(Device) onPressed;
const DeviceItem({Key key, this.device, this.onPressed}) : super(key: key); const DeviceItem({Key key, this.device, this.onPressed}) : super(key: key);

@ -7,13 +7,13 @@ import 'package:test_sa/models/enums/translation_keys.dart';
import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart'; import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart';
import 'package:test_sa/views/widgets/equipment/single_device_picker.dart'; import 'package:test_sa/views/widgets/equipment/single_device_picker.dart';
import '../../../models/asset/asset.dart'; import '../../../models/device/device.dart';
class PickAsset extends StatelessWidget { class PickAsset extends StatelessWidget {
final Function(Asset) onPickAsset; final Function(Device) onPickAsset;
final Asset asset; final Device device;
const PickAsset({Key key, this.asset, this.onPickAsset}) : super(key: key); const PickAsset({Key key, this.device, this.onPickAsset}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -21,28 +21,28 @@ class PickAsset extends StatelessWidget {
children: [ children: [
AppTextFormField( AppTextFormField(
enable: false, enable: false,
labelText: TranslationKeys.submitRequest, labelText: TranslationKeys.device,
initialValue: context.translate(TranslationKeys.site), initialValue: context.translate(TranslationKeys.site),
suffixIcon: "qr".toSvgAsset(height: 24, fit: BoxFit.fitHeight).paddingOnly(end: 16), suffixIcon: "qr".toSvgAsset(height: 24, fit: BoxFit.fitHeight).paddingOnly(end: 16),
).onPress(() async { ).onPress(() async {
Asset device = await Navigator.of(context).pushNamed(SingleDevicePicker.id) as Asset; Device device = await Navigator.of(context).pushNamed(SingleDevicePicker.id) as Device;
onPickAsset(device); onPickAsset(device);
}), }),
if (asset != null) 8.height, if (device != null) 8.height,
if (asset != null) if (device != null)
Card( Card(
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch, crossAxisAlignment: CrossAxisAlignment.stretch,
children: [ children: [
context.translate(TranslationKeys.myAssets).heading5(context), context.translate(TranslationKeys.myAssets).heading5(context),
8.height, 8.height,
"${context.translate(TranslationKeys.myAssets)}: ${asset.assetNumber}".bodyText(context), "${context.translate(TranslationKeys.assetNo)}: ${device.assetNumber}".bodyText(context),
"${context.translate(TranslationKeys.myAssets)}: ${asset.id}".bodyText(context), "${context.translate(TranslationKeys.manufacture)}: ${device.modelDefinition?.manufacturerName}".bodyText(context),
"${context.translate(TranslationKeys.myAssets)}: ${asset.assetNumber}".bodyText(context), "${context.translate(TranslationKeys.model)}: ${device.modelDefinition?.modelName}".bodyText(context),
"${context.translate(TranslationKeys.myAssets)}: ${asset.assetNumber}".bodyText(context), "${context.translate(TranslationKeys.serialNumber)}: ${device.assetNumber}".bodyText(context),
const Divider().defaultStyle(context), const Divider().defaultStyle(context),
"${context.translate(TranslationKeys.myAssets)}: ${asset.assetNumber}".bodyText(context), "${context.translate(TranslationKeys.department)}: ${device.department?.departmentName}".bodyText(context),
"${context.translate(TranslationKeys.myAssets)}: ${asset.assetNumber}".bodyText(context), "${context.translate(TranslationKeys.site)}: ${device.site?.custName}".bodyText(context),
], ],
).paddingAll(16), ).paddingAll(16),
), ),

@ -10,7 +10,7 @@ import 'package:test_sa/views/widgets/loaders/lazy_loading.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
import 'package:test_sa/views/widgets/loaders/no_item_found.dart'; import 'package:test_sa/views/widgets/loaders/no_item_found.dart';
import '../../../models/asset/asset.dart'; import '../../../models/device/device.dart';
import '../app_text_form_field.dart'; import '../app_text_form_field.dart';
import '../qr/scan_qr.dart'; import '../qr/scan_qr.dart';
@ -26,8 +26,8 @@ class _SingleDevicePickerState extends State<SingleDevicePicker> {
AssetProvider _devicesProvider; AssetProvider _devicesProvider;
UserProvider _userProvider; UserProvider _userProvider;
SettingProvider _settingProvider; SettingProvider _settingProvider;
List<Asset> _searchableList = []; List<Device> _searchableList = [];
List<Asset> _initList = []; List<Device> _initList = [];
bool _firstTime = true; bool _firstTime = true;
Subtitle _subtitle; Subtitle _subtitle;

@ -8,7 +8,7 @@ import 'package:test_sa/models/lookup.dart';
import 'package:test_sa/views/app_style/colors.dart'; import 'package:test_sa/views/app_style/colors.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import '../../../../models/asset/asset.dart'; import '../../../../models/device/device.dart';
class AutoCompleteDeviceNumberField extends StatefulWidget { class AutoCompleteDeviceNumberField extends StatefulWidget {
final Lookup initialValue; final Lookup initialValue;
@ -52,7 +52,7 @@ class _AutoCompleteDeviceNumberFieldState extends State<AutoCompleteDeviceNumber
border: Border.all(color: AColors.black), border: Border.all(color: AColors.black),
borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)), borderRadius: BorderRadius.circular(AppStyle.borderRadius * AppStyle.getScaleFactor(context)),
boxShadow: const [AppStyle.boxShadow]), boxShadow: const [AppStyle.boxShadow]),
child: TypeAheadField<Asset>( child: TypeAheadField<Device>(
textFieldConfiguration: TextFieldConfiguration( textFieldConfiguration: TextFieldConfiguration(
style: Theme.of(context).textTheme.headline6, style: Theme.of(context).textTheme.headline6,
controller: _controller, controller: _controller,

@ -1,12 +1,12 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:test_sa/controllers/localization/localization.dart'; import 'package:test_sa/controllers/localization/localization.dart';
import 'package:test_sa/models/asset/asset_transfer.dart'; import 'package:test_sa/models/device/asset_transfer.dart';
import 'package:test_sa/models/subtitle.dart'; import 'package:test_sa/models/subtitle.dart';
import 'package:test_sa/views/app_style/sizing.dart'; import 'package:test_sa/views/app_style/sizing.dart';
import 'package:test_sa/views/widgets/buttons/app_small_button.dart'; import 'package:test_sa/views/widgets/buttons/app_small_button.dart';
import 'package:test_sa/views/widgets/equipment/pick_asset.dart'; import 'package:test_sa/views/widgets/equipment/pick_asset.dart';
import '../../../models/asset/asset_transfer_search.dart'; import '../../../models/device/asset_transfer_search.dart';
import '../app_text_form_field.dart'; import '../app_text_form_field.dart';
import '../switch_button.dart'; import '../switch_button.dart';
@ -80,7 +80,7 @@ class AssetTransferSearchDialogState extends State<AssetTransferSearchDialog> wi
), ),
SizedBox(height: 8.0 * AppStyle.getScaleFactor(context)), SizedBox(height: 8.0 * AppStyle.getScaleFactor(context)),
PickAsset( PickAsset(
asset: _search.asset, device: _search.asset,
onPickAsset: (device) { onPickAsset: (device) {
_search.asset = device; _search.asset = device;
setState(() {}); setState(() {});

Loading…
Cancel
Save