merge
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -55,3 +55,4 @@ android/app/src/prod/res/values/strings.xml
|
|||||||
.gradle/buildOutputCleanup/cache.properties
|
.gradle/buildOutputCleanup/cache.properties
|
||||||
.gradle/vcs-1/gc.properties
|
.gradle/vcs-1/gc.properties
|
||||||
android/key.keystore
|
android/key.keystore
|
||||||
|
android/dev-key.properties
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ apply plugin: 'com.android.application'
|
|||||||
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
|
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
|
||||||
|
|
||||||
def keystoreProperties = new Properties()
|
def keystoreProperties = new Properties()
|
||||||
def keystorePropertiesFile = rootProject.file('key.properties')
|
def keystorePropertiesFile = rootProject.file('dev-key.properties')
|
||||||
if (keystorePropertiesFile.exists()) {
|
if (keystorePropertiesFile.exists()) {
|
||||||
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
buildscript {
|
buildscript {
|
||||||
ext.kotlin_version = '1.6.10'
|
ext.kotlin_version = '1.8.22'
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
|
|||||||
@@ -50,14 +50,12 @@ const message_type_profile = "t_profile";
|
|||||||
const message_type_shipment = "t_s";
|
const message_type_shipment = "t_s";
|
||||||
|
|
||||||
// Fcs shipment status
|
// Fcs shipment status
|
||||||
const fcs_shipment_confirmed_status = "confirmed";
|
|
||||||
const fcs_shipment_shipped_status = "shipped";
|
|
||||||
const fcs_shipment_pending_status = "pending";
|
const fcs_shipment_pending_status = "pending";
|
||||||
const fcs_shipment_processing_status = "processing";
|
const fcs_shipment_canceled_status = "canceled";
|
||||||
|
const fcs_shipment_processed_status = "processed";
|
||||||
|
const fcs_shipment_shipped_status = "shipped";
|
||||||
const fcs_shipment_arrived_status = "arrived";
|
const fcs_shipment_arrived_status = "arrived";
|
||||||
const fcs_shipment_invoiced_status = "invoiced";
|
const fcs_shipment_invoiced_status = "invoiced";
|
||||||
const fcs_shipment_delivered_status = "delivered";
|
|
||||||
const fcs_shipment_canceled_status = "canceled";
|
|
||||||
|
|
||||||
// Package status
|
// Package status
|
||||||
const package_received_status = "received";
|
const package_received_status = "received";
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/auth_result.dart' as fcs;
|
import 'package:fcs/domain/entities/auth_result.dart' as fcs;
|
||||||
import 'package:fcs/domain/entities/auth_status.dart';
|
import 'package:fcs/domain/entities/auth_status.dart';
|
||||||
import 'package:fcs/domain/entities/setting.dart';
|
import 'package:fcs/domain/entities/setting.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/helpers/api_helper.dart';
|
import 'package:fcs/helpers/api_helper.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
@@ -47,7 +47,7 @@ class CartonDataProvider {
|
|||||||
.collection(path)
|
.collection(path)
|
||||||
.where("carton_number", isEqualTo: term)
|
.where("carton_number", isEqualTo: term)
|
||||||
.where("is_deleted", isEqualTo: false)
|
.where("is_deleted", isEqualTo: false)
|
||||||
.orderBy("created_at",descending: true)
|
.orderBy("created_at", descending: true)
|
||||||
.get();
|
.get();
|
||||||
return querySnap.docs.map((e) => Carton.fromMap(e.data(), e.id)).toList();
|
return querySnap.docs.map((e) => Carton.fromMap(e.data(), e.id)).toList();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|||||||
@@ -22,28 +22,8 @@ class FcsShipmentDataProvider {
|
|||||||
return data["url"];
|
return data["url"];
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> processFcsShipment(String id) async {
|
Future<void> updateFcsShipmentStatus(String id, String status) async {
|
||||||
return await requestAPI("/fcs_shipments/process", "PUT",
|
return await requestAPI("/fcs_shipments/status", "PUT",
|
||||||
payload: {"id": id}, token: await getToken());
|
payload: {"id": id, "status": status}, token: await getToken());
|
||||||
}
|
|
||||||
|
|
||||||
Future<void> cancelFcsShipment(String id) async {
|
|
||||||
return await requestAPI("/fcs_shipments/cancel", "POST",
|
|
||||||
payload: {"id": id}, token: await getToken());
|
|
||||||
}
|
|
||||||
|
|
||||||
Future<void> shipFcsShipment(String id) async {
|
|
||||||
return await requestAPI("/fcs_shipments/ship", "PUT",
|
|
||||||
payload: {"id": id}, token: await getToken());
|
|
||||||
}
|
|
||||||
|
|
||||||
Future<void> arriveFcsShipment(String id) async {
|
|
||||||
return await requestAPI("/fcs_shipments/arrive", "PUT",
|
|
||||||
payload: {"id": id}, token: await getToken());
|
|
||||||
}
|
|
||||||
|
|
||||||
Future<void> invoiceFcsShipment(String id) async {
|
|
||||||
return await requestAPI("/fcs_shipments/invoice", "PUT",
|
|
||||||
payload: {"id": id}, token: await getToken());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:fcs/config.dart';
|
import 'package:fcs/config.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/helpers/api_helper.dart';
|
import 'package:fcs/helpers/api_helper.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/cargo_type.dart';
|
import 'package:fcs/domain/entities/cargo_type.dart';
|
||||||
import 'package:fcs/domain/entities/custom_duty.dart';
|
import 'package:fcs/domain/entities/custom_duty.dart';
|
||||||
import 'package:fcs/domain/entities/discount_by_weight.dart';
|
import 'package:fcs/domain/entities/discount_by_weight.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:convert';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/config.dart';
|
import 'package:fcs/config.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/helpers/api_helper.dart';
|
import 'package:fcs/helpers/api_helper.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
|
|||||||
@@ -29,27 +29,7 @@ class FcsShipmentServiceImp implements FcsShipmentService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> arriveFcsShipment(String id) {
|
Future<void> updateFcsShipmentStatus(String id, String status) {
|
||||||
return shipmentDataProvider.arriveFcsShipment(id);
|
return shipmentDataProvider.updateFcsShipmentStatus(id, status);
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> cancelFcsShipment(String id) {
|
|
||||||
return shipmentDataProvider.cancelFcsShipment(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> invoiceFcsShipment(String id) {
|
|
||||||
return shipmentDataProvider.invoiceFcsShipment(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> processFcsShipment(String id) {
|
|
||||||
return shipmentDataProvider.processFcsShipment(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> shipFcsShipment(String id) {
|
|
||||||
return shipmentDataProvider.shipFcsShipment(id);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,9 +4,10 @@ abstract class FcsShipmentService {
|
|||||||
Future<void> createFcsShipment(FcsShipment fcsShipment);
|
Future<void> createFcsShipment(FcsShipment fcsShipment);
|
||||||
Future<void> updateFcsShipment(FcsShipment fcsShipment);
|
Future<void> updateFcsShipment(FcsShipment fcsShipment);
|
||||||
Future<String> report(FcsShipment fcsShipment);
|
Future<String> report(FcsShipment fcsShipment);
|
||||||
Future<void> processFcsShipment(String id);
|
Future<void> updateFcsShipmentStatus(String id, String status);
|
||||||
Future<void> cancelFcsShipment(String id);
|
// Future<void> processFcsShipment(String id);
|
||||||
Future<void> shipFcsShipment(String id);
|
// Future<void> cancelFcsShipment(String id);
|
||||||
Future<void> arriveFcsShipment(String id);
|
// Future<void> shipFcsShipment(String id);
|
||||||
Future<void> invoiceFcsShipment(String id);
|
// Future<void> arriveFcsShipment(String id);
|
||||||
|
// Future<void> invoiceFcsShipment(String id);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
|
|
||||||
import '../constants.dart';
|
|
||||||
|
|
||||||
class FcsShipment {
|
class FcsShipment {
|
||||||
String? id;
|
String? id;
|
||||||
String? shipmentNumber;
|
String? shipmentNumber;
|
||||||
@@ -66,10 +64,6 @@ class FcsShipment {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
bool isConfirmed() {
|
|
||||||
return status == fcs_shipment_confirmed_status;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool isChangedForEdit(FcsShipment fcsShipment) {
|
bool isChangedForEdit(FcsShipment fcsShipment) {
|
||||||
return fcsShipment.shipmentNumber != this.shipmentNumber ||
|
return fcsShipment.shipmentNumber != this.shipmentNumber ||
|
||||||
fcsShipment.cutoffDate != this.cutoffDate ||
|
fcsShipment.cutoffDate != this.cutoffDate ||
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
import '../constants.dart';
|
import '../../constants.dart';
|
||||||
|
|
||||||
DateFormat dayFormat = DateFormat("MMM dd yyyy");
|
DateFormat dayFormat = DateFormat("MMM dd yyyy");
|
||||||
DateFormat timeFormat = DateFormat("hh:mm a");
|
DateFormat timeFormat = DateFormat("hh:mm a");
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_icons_null_safety/flutter_icons_null_safety.dart';
|
import 'package:flutter_icons_null_safety/flutter_icons_null_safety.dart';
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ Future<void> main() async {
|
|||||||
Config(
|
Config(
|
||||||
flavor: Flavor.DEV,
|
flavor: Flavor.DEV,
|
||||||
color: Colors.blue,
|
color: Colors.blue,
|
||||||
apiURL: "https://asia-northeast1-fcs-dev1.cloudfunctions.net/API12",
|
apiURL: "https://asia-northeast1-fcs-dev1.cloudfunctions.net/API13",
|
||||||
reportURL: "http://petrok.mokkon.com:7071",
|
reportURL: "http://petrok.mokkon.com:7071",
|
||||||
reportProjectID: "fcs-dev",
|
reportProjectID: "fcs-dev",
|
||||||
bucketName: "gs://fcs-dev1-us",
|
bucketName: "gs://fcs-dev1-us",
|
||||||
level: Level.ALL);
|
level: Level.ALL);
|
||||||
runApp(App(title:"FCS - Dev"));
|
runApp(App(title: "FCS - Dev"));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,10 +9,10 @@ void main() {
|
|||||||
Config(
|
Config(
|
||||||
flavor: Flavor.PRODUCTION,
|
flavor: Flavor.PRODUCTION,
|
||||||
color: Colors.blue,
|
color: Colors.blue,
|
||||||
apiURL: "https://asia-northeast1-fcs-prod1.cloudfunctions.net/API106",
|
apiURL: "https://asia-northeast1-fcs-prod1.cloudfunctions.net/API13",
|
||||||
reportURL: "http://petrok.mokkon.com:8092",
|
reportURL: "http://petrok.mokkon.com:8092",
|
||||||
reportProjectID: "fcs-prod",
|
reportProjectID: "fcs-prod",
|
||||||
bucketName: "gs://fcs-prod1",
|
bucketName: "gs://fcs-prod1",
|
||||||
level: Level.ALL);
|
level: Level.ALL);
|
||||||
runApp(App(title:"FCS"));
|
runApp(App(title: "FCS"));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:fcs/pages/carton/model/sender_selection_model.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
import '../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../domain/entities/fcs_shipment.dart';
|
import '../../domain/entities/fcs_shipment.dart';
|
||||||
import '../../domain/entities/user.dart';
|
import '../../domain/entities/user.dart';
|
||||||
import '../../helpers/theme.dart';
|
import '../../helpers/theme.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/cargo_type.dart';
|
import 'package:fcs/domain/entities/cargo_type.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import 'package:flutter/cupertino.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import '../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../domain/entities/carton.dart';
|
import '../../domain/entities/carton.dart';
|
||||||
import '../../pagination/paginator_listview.dart';
|
import '../../pagination/paginator_listview.dart';
|
||||||
import '../carton_search/carton_search.dart';
|
import '../carton_search/carton_search.dart';
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
import '../../../domain/vo/local_step.dart';
|
import '../../../domain/vo/local_step.dart';
|
||||||
@@ -88,8 +88,10 @@ class _CartonPackageEditorState extends State<CartonPackageEditor> {
|
|||||||
_length = widget.carton.length;
|
_length = widget.carton.length;
|
||||||
_width = widget.carton.width;
|
_width = widget.carton.width;
|
||||||
_height = widget.carton.height;
|
_height = widget.carton.height;
|
||||||
_cargoTypes = widget.carton.cargoTypes.where((e) => !e.isCutomDuty).toList();
|
_cargoTypes =
|
||||||
_surchareItems = widget.carton.cargoTypes.where((e) => e.isCutomDuty).toList();
|
widget.carton.cargoTypes.where((e) => !e.isCutomDuty).toList();
|
||||||
|
_surchareItems =
|
||||||
|
widget.carton.cargoTypes.where((e) => e.isCutomDuty).toList();
|
||||||
|
|
||||||
var s = await context
|
var s = await context
|
||||||
.read<FcsShipmentModel>()
|
.read<FcsShipmentModel>()
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
import '../../../domain/vo/local_step.dart';
|
import '../../../domain/vo/local_step.dart';
|
||||||
@@ -26,13 +26,12 @@ import 'package_selection_widget.dart';
|
|||||||
class CartonPackageForm extends StatefulWidget {
|
class CartonPackageForm extends StatefulWidget {
|
||||||
final User sender;
|
final User sender;
|
||||||
final User consignee;
|
final User consignee;
|
||||||
|
|
||||||
const CartonPackageForm(
|
const CartonPackageForm({
|
||||||
{Key? key,
|
Key? key,
|
||||||
required this.sender,
|
required this.sender,
|
||||||
required this.consignee,
|
required this.consignee,
|
||||||
})
|
}) : super(key: key);
|
||||||
: super(key: key);
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<CartonPackageForm> createState() => _CartonPackageFormState();
|
State<CartonPackageForm> createState() => _CartonPackageFormState();
|
||||||
@@ -148,7 +147,7 @@ class _CartonPackageFormState extends State<CartonPackageForm> {
|
|||||||
onPrevious: () {
|
onPrevious: () {
|
||||||
Navigator.pop(context);
|
Navigator.pop(context);
|
||||||
},
|
},
|
||||||
onContinue: (deliveryType,billType ,shipment, cartonSizeType,
|
onContinue: (deliveryType, billType, shipment, cartonSizeType,
|
||||||
{standardSize, length, width, height}) {
|
{standardSize, length, width, height}) {
|
||||||
setState(() {
|
setState(() {
|
||||||
_selectedDeliveryType = deliveryType;
|
_selectedDeliveryType = deliveryType;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'package:flutter/cupertino.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import '../../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
import '../../../helpers/theme.dart';
|
import '../../../helpers/theme.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../constants.dart';
|
||||||
import '../../../domain/entities/cargo_type.dart';
|
import '../../../domain/entities/cargo_type.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/carton.dart';
|
import '../../../domain/entities/carton.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/carton.dart';
|
import '../../../domain/entities/carton.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/cargo_type.dart';
|
import '../../../domain/entities/cargo_type.dart';
|
||||||
import '../../../domain/entities/carton.dart';
|
import '../../../domain/entities/carton.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'package:flutter/cupertino.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||||
import 'package:provider/provider.dart';
|
import 'package:provider/provider.dart';
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/carton_size.dart';
|
import '../../../domain/entities/carton_size.dart';
|
||||||
import '../../../domain/entities/fcs_shipment.dart';
|
import '../../../domain/entities/fcs_shipment.dart';
|
||||||
import '../../../helpers/theme.dart';
|
import '../../../helpers/theme.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
@@ -17,7 +17,7 @@ import 'package:path/path.dart' as Path;
|
|||||||
class CartonModel extends BaseModel {
|
class CartonModel extends BaseModel {
|
||||||
final log = Logger('CartonModel');
|
final log = Logger('CartonModel');
|
||||||
|
|
||||||
var defaultShipment =FcsShipment(shipmentNumber: "All shipments", id: all);
|
var defaultShipment = FcsShipment(shipmentNumber: "All shipments", id: all);
|
||||||
|
|
||||||
PaginatorListener<Carton>? cartonsByFilter;
|
PaginatorListener<Carton>? cartonsByFilter;
|
||||||
PaginatorListener<Carton>? getBoxes;
|
PaginatorListener<Carton>? getBoxes;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../main/model/base_model.dart';
|
import '../../main/model/base_model.dart';
|
||||||
|
|
||||||
class CartonSelectionModel extends BaseModel {
|
class CartonSelectionModel extends BaseModel {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:fcs/config.dart';
|
import 'package:fcs/config.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/user.dart';
|
import '../../../domain/entities/user.dart';
|
||||||
import '../../../helpers/api_helper.dart';
|
import '../../../helpers/api_helper.dart';
|
||||||
import '../../../helpers/firebase_helper.dart';
|
import '../../../helpers/firebase_helper.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:async';
|
|||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/package.dart';
|
import '../../../domain/entities/package.dart';
|
||||||
import '../../main/model/base_model.dart';
|
import '../../main/model/base_model.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
import '../../../config.dart';
|
import '../../../config.dart';
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../../domain/entities/user.dart';
|
import '../../../domain/entities/user.dart';
|
||||||
import '../../../helpers/api_helper.dart';
|
import '../../../helpers/api_helper.dart';
|
||||||
import '../../../helpers/firebase_helper.dart';
|
import '../../../helpers/firebase_helper.dart';
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
import '../../../domain/constants.dart';
|
import '../../../constants.dart';
|
||||||
import '../../main/model/base_model.dart';
|
import '../../main/model/base_model.dart';
|
||||||
|
|
||||||
class ShipmentSelectionModel extends BaseModel {
|
class ShipmentSelectionModel extends BaseModel {
|
||||||
@@ -39,7 +39,7 @@ class ShipmentSelectionModel extends BaseModel {
|
|||||||
Query query = FirebaseFirestore.instance
|
Query query = FirebaseFirestore.instance
|
||||||
.collection(path)
|
.collection(path)
|
||||||
.where("status", whereIn: [
|
.where("status", whereIn: [
|
||||||
fcs_shipment_processing_status,
|
fcs_shipment_processed_status,
|
||||||
fcs_shipment_shipped_status,
|
fcs_shipment_shipped_status,
|
||||||
fcs_shipment_arrived_status,
|
fcs_shipment_arrived_status,
|
||||||
fcs_shipment_invoiced_status
|
fcs_shipment_invoiced_status
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton_size.dart';
|
import 'package:fcs/domain/entities/carton_size.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/domain/entities/shipment.dart';
|
import 'package:fcs/domain/entities/shipment.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/vo/message.dart';
|
import 'package:fcs/domain/vo/message.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/chat/message_detail.dart';
|
import 'package:fcs/pages/chat/message_detail.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/chat/message_detail.dart';
|
import 'package:fcs/pages/chat/message_detail.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'package:cloud_firestore/cloud_firestore.dart';
|
|||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
|
|
||||||
class DeliveryAddressModel extends BaseModel {
|
class DeliveryAddressModel extends BaseModel {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/discount.dart';
|
import 'package:fcs/domain/entities/discount.dart';
|
||||||
import 'package:fcs/helpers/paginator.dart';
|
import 'package:fcs/helpers/paginator.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/faq.dart';
|
import 'package:fcs/domain/entities/faq.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/faq/model/faq_model.dart';
|
import 'package:fcs/pages/faq/model/faq_model.dart';
|
||||||
@@ -61,7 +61,7 @@ class _FAQEditorState extends State<FAQEditor> {
|
|||||||
textInputType: TextInputType.number,
|
textInputType: TextInputType.number,
|
||||||
autovalidateMode: AutovalidateMode.onUserInteraction,
|
autovalidateMode: AutovalidateMode.onUserInteraction,
|
||||||
validator: (value) {
|
validator: (value) {
|
||||||
if (value == null || value.isEmpty || value.length==0) {
|
if (value == null || value.isEmpty || value.length == 0) {
|
||||||
return "Please insert S/N";
|
return "Please insert S/N";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/faq.dart';
|
import 'package:fcs/domain/entities/faq.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/buying_instruction/buying_online.dart';
|
import 'package:fcs/pages/buying_instruction/buying_online.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/fcs_shipment/model/fcs_shipment_model.dart';
|
import 'package:fcs/pages/fcs_shipment/model/fcs_shipment_model.dart';
|
||||||
@@ -219,7 +219,7 @@ class _FcsShipmentInfoState extends State<FcsShipmentInfo> {
|
|||||||
? Container(
|
? Container(
|
||||||
padding: EdgeInsets.only(top: 3), child: cancelBtn)
|
padding: EdgeInsets.only(top: 3), child: cancelBtn)
|
||||||
: Container(),
|
: Container(),
|
||||||
_fcsShipment?.status == fcs_shipment_processing_status
|
_fcsShipment?.status == fcs_shipment_processed_status
|
||||||
? shipBtn
|
? shipBtn
|
||||||
: Container(),
|
: Container(),
|
||||||
_fcsShipment?.status == fcs_shipment_shipped_status
|
_fcsShipment?.status == fcs_shipment_shipped_status
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
import 'package:fcs/domain/entities/fcs_shipment.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
@@ -41,9 +41,9 @@ class FcsShipmentModel extends BaseModel {
|
|||||||
|
|
||||||
// processing status
|
// processing status
|
||||||
if (index == 2) {
|
if (index == 2) {
|
||||||
col = col.where("status", isEqualTo: fcs_shipment_processing_status);
|
col = col.where("status", isEqualTo: fcs_shipment_processed_status);
|
||||||
pageQuery =
|
pageQuery =
|
||||||
pageQuery.where("status", isEqualTo: fcs_shipment_processing_status);
|
pageQuery.where("status", isEqualTo: fcs_shipment_processed_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
// shipped status
|
// shipped status
|
||||||
@@ -87,7 +87,7 @@ class FcsShipmentModel extends BaseModel {
|
|||||||
try {
|
try {
|
||||||
var snaps = await FirebaseFirestore.instance
|
var snaps = await FirebaseFirestore.instance
|
||||||
.collection("/$fcs_shipment_collection")
|
.collection("/$fcs_shipment_collection")
|
||||||
.where("status", isEqualTo: fcs_shipment_processing_status)
|
.where("status", isEqualTo: fcs_shipment_processed_status)
|
||||||
.get(const GetOptions(source: Source.server));
|
.get(const GetOptions(source: Source.server));
|
||||||
fcsShipments = snaps.docs.map((documentSnapshot) {
|
fcsShipments = snaps.docs.map((documentSnapshot) {
|
||||||
var fcs =
|
var fcs =
|
||||||
@@ -176,23 +176,28 @@ class FcsShipmentModel extends BaseModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> process(String id) {
|
Future<void> process(String id) {
|
||||||
return Services.instance.fcsShipmentService.processFcsShipment(id);
|
return Services.instance.fcsShipmentService
|
||||||
|
.updateFcsShipmentStatus(id, fcs_shipment_processed_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> ship(String id) {
|
Future<void> ship(String id) {
|
||||||
return Services.instance.fcsShipmentService.shipFcsShipment(id);
|
return Services.instance.fcsShipmentService
|
||||||
|
.updateFcsShipmentStatus(id, fcs_shipment_shipped_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> arrive(String id) {
|
Future<void> arrive(String id) {
|
||||||
return Services.instance.fcsShipmentService.arriveFcsShipment(id);
|
return Services.instance.fcsShipmentService
|
||||||
|
.updateFcsShipmentStatus(id, fcs_shipment_arrived_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> invoice(String id) {
|
Future<void> invoice(String id) {
|
||||||
return Services.instance.fcsShipmentService.invoiceFcsShipment(id);
|
return Services.instance.fcsShipmentService
|
||||||
|
.updateFcsShipmentStatus(id, fcs_shipment_shipped_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> cancel(String id) {
|
Future<void> cancel(String id) {
|
||||||
return Services.instance.fcsShipmentService.cancelFcsShipment(id);
|
return Services.instance.fcsShipmentService
|
||||||
|
.updateFcsShipmentStatus(id, fcs_shipment_canceled_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<String> report(FcsShipment fcsShipment) {
|
Future<String> report(FcsShipment fcsShipment) {
|
||||||
@@ -205,7 +210,7 @@ class FcsShipmentModel extends BaseModel {
|
|||||||
var snaps = await FirebaseFirestore.instance
|
var snaps = await FirebaseFirestore.instance
|
||||||
.collection("/$fcs_shipment_collection")
|
.collection("/$fcs_shipment_collection")
|
||||||
.where("status", whereIn: [
|
.where("status", whereIn: [
|
||||||
fcs_shipment_processing_status,
|
fcs_shipment_processed_status,
|
||||||
fcs_shipment_shipped_status,
|
fcs_shipment_shipped_status,
|
||||||
fcs_shipment_arrived_status,
|
fcs_shipment_arrived_status,
|
||||||
fcs_shipment_invoiced_status
|
fcs_shipment_invoiced_status
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/invoice.dart';
|
import 'package:fcs/domain/entities/invoice.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/invoice.dart';
|
import 'package:fcs/domain/entities/invoice.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:fcs/pages/invoice/invoice_info.dart';
|
import 'package:fcs/pages/invoice/invoice_info.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/invoice.dart';
|
import 'package:fcs/domain/entities/invoice.dart';
|
||||||
import 'package:fcs/domain/entities/payment.dart';
|
import 'package:fcs/domain/entities/payment.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/invoice.dart';
|
import 'package:fcs/domain/entities/invoice.dart';
|
||||||
import 'package:fcs/domain/entities/payment.dart';
|
import 'package:fcs/domain/entities/payment.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/market.dart';
|
import 'package:fcs/domain/entities/market.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
@@ -179,11 +179,11 @@ class _PackageInfoState extends State<PackageInfo> {
|
|||||||
widget.isSearchResult
|
widget.isSearchResult
|
||||||
? Container()
|
? Container()
|
||||||
: Padding(
|
: Padding(
|
||||||
padding: const EdgeInsets.only(top: 15),
|
padding: const EdgeInsets.only(top: 15),
|
||||||
child: StatusTree(
|
child: StatusTree(
|
||||||
shipmentHistory: _package!.shipmentHistory,
|
shipmentHistory: _package!.shipmentHistory,
|
||||||
currentStatus: _package!.status),
|
currentStatus: _package!.status),
|
||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 20,
|
height: 20,
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:io';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/pickup.dart';
|
import 'package:fcs/domain/entities/pickup.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/market.dart';
|
import 'package:fcs/domain/entities/market.dart';
|
||||||
import 'package:fcs/domain/entities/package.dart';
|
import 'package:fcs/domain/entities/package.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/shipment.dart';
|
import 'package:fcs/domain/entities/shipment.dart';
|
||||||
import 'package:fcs/helpers/paginator.dart';
|
import 'package:fcs/helpers/paginator.dart';
|
||||||
import 'package:fcs/pages/main/model/base_model.dart';
|
import 'package:fcs/pages/main/model/base_model.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/shipment.dart';
|
import 'package:fcs/domain/entities/shipment.dart';
|
||||||
import 'package:fcs/domain/vo/delivery_address.dart';
|
import 'package:fcs/domain/vo/delivery_address.dart';
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/carton.dart';
|
import 'package:fcs/domain/entities/carton.dart';
|
||||||
import 'package:fcs/domain/entities/shipment.dart';
|
import 'package:fcs/domain/entities/shipment.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||||
import 'package:fcs/data/services/services.dart';
|
import 'package:fcs/data/services/services.dart';
|
||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/entities/user.dart';
|
import 'package:fcs/domain/entities/user.dart';
|
||||||
import 'package:fcs/domain/vo/privilege.dart';
|
import 'package:fcs/domain/vo/privilege.dart';
|
||||||
import 'package:fcs/helpers/firebase_helper.dart';
|
import 'package:fcs/helpers/firebase_helper.dart';
|
||||||
@@ -83,11 +83,7 @@ class StaffModel extends BaseModel {
|
|||||||
required bool enablePin,
|
required bool enablePin,
|
||||||
required int? pin}) async {
|
required int? pin}) async {
|
||||||
await request("/employee/pin", "PUT",
|
await request("/employee/pin", "PUT",
|
||||||
payload: {
|
payload: {"id": userID, "enable_pin_login": enablePin, "pin": pin},
|
||||||
"id": userID,
|
|
||||||
"enable_pin_login": enablePin,
|
|
||||||
"pin": pin
|
|
||||||
},
|
|
||||||
token: await getToken());
|
token: await getToken());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:fcs/domain/constants.dart';
|
import 'package:fcs/constants.dart';
|
||||||
import 'package:fcs/domain/vo/shipment_status.dart';
|
import 'package:fcs/domain/vo/shipment_status.dart';
|
||||||
import 'package:fcs/helpers/theme.dart';
|
import 'package:fcs/helpers/theme.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
@@ -19,7 +19,8 @@ class StatusTree extends StatelessWidget {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return ExpansionTile(
|
return ExpansionTile(
|
||||||
initiallyExpanded: true,
|
initiallyExpanded: true,
|
||||||
shape: Border.symmetric(horizontal: BorderSide(color: Colors.grey.shade300)),
|
shape:
|
||||||
|
Border.symmetric(horizontal: BorderSide(color: Colors.grey.shade300)),
|
||||||
title: Text(
|
title: Text(
|
||||||
'Status',
|
'Status',
|
||||||
style: TextStyle(color: primaryColor, fontWeight: FontWeight.bold),
|
style: TextStyle(color: primaryColor, fontWeight: FontWeight.bold),
|
||||||
|
|||||||
@@ -7,12 +7,16 @@
|
|||||||
#include "generated_plugin_registrant.h"
|
#include "generated_plugin_registrant.h"
|
||||||
|
|
||||||
#include <file_selector_linux/file_selector_plugin.h>
|
#include <file_selector_linux/file_selector_plugin.h>
|
||||||
|
#include <open_file_linux/open_file_linux_plugin.h>
|
||||||
#include <url_launcher_linux/url_launcher_plugin.h>
|
#include <url_launcher_linux/url_launcher_plugin.h>
|
||||||
|
|
||||||
void fl_register_plugins(FlPluginRegistry* registry) {
|
void fl_register_plugins(FlPluginRegistry* registry) {
|
||||||
g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
|
g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
|
||||||
fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
|
fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
|
||||||
file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
|
file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
|
||||||
|
g_autoptr(FlPluginRegistrar) open_file_linux_registrar =
|
||||||
|
fl_plugin_registry_get_registrar_for_plugin(registry, "OpenFileLinuxPlugin");
|
||||||
|
open_file_linux_plugin_register_with_registrar(open_file_linux_registrar);
|
||||||
g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
|
g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
|
||||||
fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
|
fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
|
||||||
url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
|
url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
list(APPEND FLUTTER_PLUGIN_LIST
|
list(APPEND FLUTTER_PLUGIN_LIST
|
||||||
file_selector_linux
|
file_selector_linux
|
||||||
|
open_file_linux
|
||||||
url_launcher_linux
|
url_launcher_linux
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
541
pubspec.lock
541
pubspec.lock
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
name: fcs
|
name: fcs
|
||||||
description: FCS Logistics
|
description: FCS Logistics
|
||||||
publish_to: 'none'
|
publish_to: 'none'
|
||||||
version: 1.0.6+10
|
version: 1.0.9+11
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.0.6 <4.0.0'
|
sdk: '>=3.0.6 <4.0.0'
|
||||||
@@ -30,7 +30,7 @@ dependencies:
|
|||||||
dio: ^5.4.0
|
dio: ^5.4.0
|
||||||
package_info: ^2.0.2
|
package_info: ^2.0.2
|
||||||
google_api_availability: ^5.0.0
|
google_api_availability: ^5.0.0
|
||||||
intl: ^0.18.1
|
intl: ^0.19.0
|
||||||
font_awesome_flutter: ^10.6.0
|
font_awesome_flutter: ^10.6.0
|
||||||
photo_view: ^0.14.0
|
photo_view: ^0.14.0
|
||||||
uuid: ^4.2.2
|
uuid: ^4.2.2
|
||||||
@@ -49,7 +49,7 @@ dependencies:
|
|||||||
timeline_list: ^0.0.5
|
timeline_list: ^0.0.5
|
||||||
barcode_scan2: ^4.1.4
|
barcode_scan2: ^4.1.4
|
||||||
flutter_pdfview: ^1.2.1
|
flutter_pdfview: ^1.2.1
|
||||||
flutter_local_notifications: ^16.3.2
|
flutter_local_notifications: ^17.2.3
|
||||||
share: ^2.0.4
|
share: ^2.0.4
|
||||||
cached_network_image: ^3.3.1
|
cached_network_image: ^3.3.1
|
||||||
flutter_cache_manager: ^3.1.2
|
flutter_cache_manager: ^3.1.2
|
||||||
|
|||||||
Reference in New Issue
Block a user