sub work order improvements.

main_design2.0
Sikander Saleem 1 year ago
parent 0302c658e6
commit 5348bc81eb

@ -49,8 +49,8 @@ android {
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
minSdkVersion 21 minSdkVersion 21
targetSdkVersion 34 targetSdkVersion 34
versionCode 7 versionCode 8
versionName '1.2.0' versionName '1.2.1'
} }
signingConfigs { signingConfigs {

@ -372,11 +372,10 @@ class ServiceRequestsProvider extends ChangeNotifier {
} }
} }
Future<int> createSubWorkOrder({ Future<int> createSubWorkOrder({@required SearchWorkOrder workOrder, bool makeSuppPersonsEmpty = false}) async {
@required SearchWorkOrder workOrder,
}) async {
Response response; Response response;
try { try {
if (makeSuppPersonsEmpty) workOrder.supplier.suppPersons = [];
Map<String, dynamic> body = workOrder.toJson(); Map<String, dynamic> body = workOrder.toJson();
response = await ApiManager.instance.post(URLs.createServiceReport, body: body); response = await ApiManager.instance.post(URLs.createServiceReport, body: body);
stateCode = response.statusCode; stateCode = response.statusCode;

@ -14,7 +14,7 @@ class SuppEngineerWorkOrders extends Base {
SuppEngineerWorkOrders.fromJson(dynamic json) { SuppEngineerWorkOrders.fromJson(dynamic json) {
id = json['id']; id = json['id'];
identifier = id?.toString(); identifier = id?.toString();
supplierContactId = json['supplierContactId']; supplierContactId = json['supplierContactId'] ?? json["supplierId"];
personName = json['personName']; personName = json['personName'];
name = personName; name = personName;
personRoleName = json['personRoleName']; personRoleName = json['personRoleName'];

@ -234,7 +234,7 @@ class SuppPersons extends Base {
SuppPersons.fromJson(dynamic json) { SuppPersons.fromJson(dynamic json) {
id = json['id']; id = json['id'];
identifier = id?.toString(); identifier = id?.toString();
supplierId = json['supplierId']; supplierId = json['supplierId'] ?? json["supplierContactId"];
personName = json['personName']; personName = json['personName'];
name = personName; name = personName;
personRoleId = json['personRoleId']; personRoleId = json['personRoleId'];

@ -341,7 +341,6 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
print(suppPerson?.toJson()); print(suppPerson?.toJson());
if (suppPerson != null) { if (suppPerson != null) {
engineer = SuppEngineerWorkOrders.fromJson(suppPerson.toJson()); engineer = SuppEngineerWorkOrders.fromJson(suppPerson.toJson());
// engineer = SuppEngineerWorkOrders( // engineer = SuppEngineerWorkOrders(
// id: suppPerson?.supplierId, // id: suppPerson?.supplierId,
// supplierContactId: suppPerson?.id, // supplierContactId: suppPerson?.id,
@ -378,9 +377,7 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
builder: (context) => AddSupplierEngineerBottomSheet(_subWorkOrders.supplier.id), builder: (context) => AddSupplierEngineerBottomSheet(_subWorkOrders.supplier.id),
)) as SuppEngineerWorkOrders; )) as SuppEngineerWorkOrders;
if (suppEngineer != null) { if (suppEngineer != null) {
if (_subWorkOrders?.supplier?.suppPersons == null) { _subWorkOrders?.supplier?.suppPersons ??= [];
_subWorkOrders?.supplier?.suppPersons = [];
}
_subWorkOrders?.supplier?.suppPersons?.add(SuppPersons.fromJson(suppEngineer.toJson())); _subWorkOrders?.supplier?.suppPersons?.add(SuppPersons.fromJson(suppEngineer.toJson()));
engineer = suppEngineer; engineer = suppEngineer;
setState(() {}); setState(() {});
@ -553,8 +550,11 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
label: context.translation.submitRequest, label: context.translation.submitRequest,
onPressed: () async { onPressed: () async {
setState(() {}); setState(() {});
_subWorkOrders.suppEngineerWorkOrders ?? []; _subWorkOrders.suppEngineerWorkOrders = [];
if (engineer != null) _subWorkOrders.suppEngineerWorkOrders.add(engineer..id = 0); if (engineer != null) {
_subWorkOrders.suppEngineerWorkOrders.add(engineer);
}
// return;
if (await validate()) { if (await validate()) {
_subWorkOrders.attachmentsWorkOrder ??= []; _subWorkOrders.attachmentsWorkOrder ??= [];
for (var file in _files) { for (var file in _files) {
@ -564,12 +564,14 @@ class _CreateSubWorkOrderPageState extends State<CreateSubWorkOrderPage> {
_formKey.currentState?.save(); _formKey.currentState?.save();
final serviceRequestsProvider = Provider.of<ServiceRequestsProvider>(context, listen: false); final serviceRequestsProvider = Provider.of<ServiceRequestsProvider>(context, listen: false);
for (var element in (_subWorkOrders?.suppEngineerWorkOrders ?? [])) { for (var element in (_subWorkOrders?.suppEngineerWorkOrders ?? [])) {
if (element != null) { if (element != null && element.id != 0) {
element.supplierContactId = element.id;
element.id = 0; element.id = 0;
} }
} }
showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading()); showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
final status = await serviceRequestsProvider.createSubWorkOrder(workOrder: _subWorkOrders); final status = await serviceRequestsProvider.createSubWorkOrder(workOrder: _subWorkOrders, makeSuppPersonsEmpty: true);
Navigator.of(context).pop(); Navigator.of(context).pop();
if (status >= 200 && status < 300) { if (status >= 200 && status < 300) {
Fluttertoast.showToast(msg: context.translation.successfulRequestMessage); Fluttertoast.showToast(msg: context.translation.successfulRequestMessage);

@ -112,7 +112,7 @@ flutter:
- assets/rives/ - assets/rives/
- assets/translations/ - assets/translations/
fonts: fonts:
- family: Swissaq - family: Swiss
fonts: fonts:
- asset: assets/fonts/Gotham_Rounded_Light.otf - asset: assets/fonts/Gotham_Rounded_Light.otf
weight: 300 weight: 300

Loading…
Cancel
Save