add package sql search
This commit is contained in:
@@ -56,7 +56,7 @@ class PackageDataProvider {
|
|||||||
token: await getToken());
|
token: await getToken());
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<List<Package>> searchPackage(String term) async {
|
Future<List<Package>> ftsSearchPackage(String term) async {
|
||||||
if (term == null || term == '') return List();
|
if (term == null || term == '') return List();
|
||||||
|
|
||||||
var bytes = utf8.encode(term);
|
var bytes = utf8.encode(term);
|
||||||
@@ -84,4 +84,38 @@ class PackageDataProvider {
|
|||||||
}
|
}
|
||||||
return packages;
|
return packages;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<List<Package>> searchPackage(String term) async {
|
||||||
|
if (term == null || term == '') return List();
|
||||||
|
|
||||||
|
List<Package> packages = [];
|
||||||
|
|
||||||
|
try {
|
||||||
|
var data = {
|
||||||
|
"fields":
|
||||||
|
'id,tracking_id,market,user_name,phone_number,status,status_date',
|
||||||
|
"aggfuns": ",,,,,,",
|
||||||
|
"groupbys": '',
|
||||||
|
"filters": [
|
||||||
|
{
|
||||||
|
"field": "tracking_id",
|
||||||
|
"compare": "like",
|
||||||
|
"value": "%" + term.toUpperCase() + "%"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
var result = await requestAPI("/api/data/packages", "POST",
|
||||||
|
token: await getToken(),
|
||||||
|
url: Config.instance.reportURL,
|
||||||
|
payload: jsonEncode(data));
|
||||||
|
if (result == null) return packages;
|
||||||
|
result.forEach((d) {
|
||||||
|
var package = Package.fromJson(d);
|
||||||
|
packages.add(package);
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
log.warning("Error >>>>${e.toString()}");
|
||||||
|
}
|
||||||
|
return packages;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,6 +29,11 @@ class PackageServiceImp implements PackageService {
|
|||||||
return packageDataProvider.updateReceiving(package);
|
return packageDataProvider.updateReceiving(package);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<List<Package>> ftsSearchPackage(String term) {
|
||||||
|
return packageDataProvider.ftsSearchPackage(term);
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<List<Package>> searchPackage(String term) {
|
Future<List<Package>> searchPackage(String term) {
|
||||||
return packageDataProvider.searchPackage(term);
|
return packageDataProvider.searchPackage(term);
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ abstract class PackageService {
|
|||||||
Future<void> deleteReceiving(Package package);
|
Future<void> deleteReceiving(Package package);
|
||||||
Future<void> updateProcessing(Package package);
|
Future<void> updateProcessing(Package package);
|
||||||
Future<void> deleteProcessing(Package package);
|
Future<void> deleteProcessing(Package package);
|
||||||
|
Future<List<Package>> ftsSearchPackage(String term);
|
||||||
Future<List<Package>> searchPackage(String term);
|
Future<List<Package>> searchPackage(String term);
|
||||||
Future<void> changeDeliveryAddress(String packageID, String deliveryID);
|
Future<void> changeDeliveryAddress(String packageID, String deliveryID);
|
||||||
Future<void> packageReturn(String packageID);
|
Future<void> packageReturn(String packageID);
|
||||||
|
|||||||
@@ -232,14 +232,20 @@ class PackageModel extends BaseModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<List<Package>> searchPackage(String term) async {
|
Future<List<Package>> searchPackage(String term) async {
|
||||||
List<Package> packages =
|
Future<List<Package>> packages =
|
||||||
await Services.instance.packageService.searchPackage(term);
|
Services.instance.packageService.searchPackage(term);
|
||||||
|
|
||||||
Package pkg = await getPackageByTrackingID(term);
|
Future<List<Package>> packagesFTS =
|
||||||
if (pkg != null && !packages.contains(pkg)) {
|
Services.instance.packageService.ftsSearchPackage(term);
|
||||||
packages.insert(0, pkg);
|
// Package pkg = await getPackageByTrackingID(term);
|
||||||
}
|
// if (pkg != null && !packages.contains(pkg)) {
|
||||||
return packages;
|
// packages.insert(0, pkg);
|
||||||
|
// }
|
||||||
|
List<Package> pkgs = await packages;
|
||||||
|
List<Package> ftsPkgs = await packagesFTS;
|
||||||
|
pkgs.addAll(ftsPkgs);
|
||||||
|
final seen = Set<Package>();
|
||||||
|
return pkgs.where((e) => seen.add(e)).toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> createPackages(User user, List<Package> packages) {
|
Future<void> createPackages(User user, List<Package> packages) {
|
||||||
|
|||||||
@@ -153,16 +153,22 @@ class _LengthPickerDialogState extends State<LengthPickerDialog> {
|
|||||||
children: [
|
children: [
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap: () => _addInc(1),
|
onTap: () => _addInc(1),
|
||||||
child: Icon(
|
child: Padding(
|
||||||
Icons.add,
|
padding: const EdgeInsets.all(3.0),
|
||||||
color: primaryColor,
|
child: Icon(
|
||||||
|
Icons.add,
|
||||||
|
color: primaryColor,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap: () => _addInc(-1),
|
onTap: () => _addInc(-1),
|
||||||
child: Icon(
|
child: Padding(
|
||||||
Icons.remove,
|
padding: const EdgeInsets.all(3.0),
|
||||||
color: primaryColor,
|
child: Icon(
|
||||||
|
Icons.remove,
|
||||||
|
color: primaryColor,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
@@ -199,16 +205,22 @@ class _LengthPickerDialogState extends State<LengthPickerDialog> {
|
|||||||
children: [
|
children: [
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap: () => _addFeet(1),
|
onTap: () => _addFeet(1),
|
||||||
child: Icon(
|
child: Padding(
|
||||||
Icons.add,
|
padding: const EdgeInsets.all(3.0),
|
||||||
color: primaryColor,
|
child: Icon(
|
||||||
|
Icons.add,
|
||||||
|
color: primaryColor,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap: () => _addFeet(-1),
|
onTap: () => _addFeet(-1),
|
||||||
child: Icon(
|
child: Padding(
|
||||||
Icons.remove,
|
padding: const EdgeInsets.all(3.0),
|
||||||
color: primaryColor,
|
child: Icon(
|
||||||
|
Icons.remove,
|
||||||
|
color: primaryColor,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user