fixed api

This commit is contained in:
kicap1992
2022-06-29 22:50:13 +08:00
parent 70b9a9a04b
commit a6c69c1164
23 changed files with 1748 additions and 778 deletions

View File

@ -1,80 +1,91 @@
// ignore_for_file: file_names, non_constant_identifier_names
import 'dart:developer';
// import 'dart:developer';
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:get/get.dart';
import 'package:get_storage/get_storage.dart';
import '../../api/beforeLoginAPI.dart';
import 'package:logger/logger.dart';
class BeforeEnterController extends GetxController {
final storage = GetStorage();
@override
void onInit() async {
await EasyLoading.show(
status: 'Loading...',
maskType: EasyLoadingMaskType.black,
);
// wait 3 sec
// await Future.delayed(const Duration(seconds: 3));
// await EasyLoading.dismiss();
log("sini on init before enter");
cek_login();
final dev = Logger();
// log(storage.read('role') + "ini role nya");
// @override
// void onInit() async {
// // await EasyLoading.show(
// // status: 'Loading...',
// // maskType: EasyLoadingMaskType.black,
// // );
// // wait 3 sec
// // log(storage.read('role') + "ini role nya");
// super.onInit();
// await Future.delayed(const Duration(seconds: 2));
// // await EasyLoading.dismiss();
// cek_login();
// }
@override
void onInit() {
super.onInit();
// future 1.5 sec
Future.delayed(const Duration(seconds: 1), () {
cek_login();
});
}
void cek_login() async {
final _username =
(storage.read('username') != null) ? storage.read('username') : "";
final _password =
(storage.read('password') != null) ? storage.read('password') : "";
// final _username =
// (storage.read('username') != null) ? storage.read('username') : "";
// final _password =
// (storage.read('password') != null) ? storage.read('password') : "";
final _role = (storage.read('role') != null) ? storage.read('role') : "";
final _id = (storage.read('id') != null) ? storage.read('id') : "";
// final _id = (storage.read('id') != null) ? storage.read('id') : "";
late bool _wrongPassword;
// late bool _wrongPassword;
Map<String, dynamic> _data = await BeforeLoginApi.log_in_user(
_username, _password, _role.toLowerCase());
// var _c = Get.put(BeforeLoginApi());
switch (_data['status']) {
case 200:
_wrongPassword = true;
break;
case 400:
_wrongPassword = false;
break;
default:
_wrongPassword = false;
break;
}
// Map<String, dynamic> _data =
// await _c.log_in_user(_username, _password, _role.toLowerCase());
log(_username.toString() + " ini usernamenya");
log(_password.toString() + " ini passwordnya");
log(_role.toString() + " ini role nya");
log(_id.toString() + " ini id nya");
// dev.i(_data);
// await Future.delayed(const Duration(seconds: 3));
await EasyLoading.dismiss();
// switch (_data['status']) {
// case 200:
// _wrongPassword = true;
// break;
// case 400:
// _wrongPassword = false;
// break;
// default:
// _wrongPassword = false;
// break;
// }
if (!_wrongPassword) {
storage.remove('username');
storage.remove('password');
storage.remove('role');
// log(_username.toString() + " ini usernamenya");
// log(_password.toString() + " ini passwordnya");
// log(_role.toString() + " ini role nya");
// log(_id.toString() + " ini id nya");
Get.offAllNamed(
'/index',
arguments: {
"tap": 0,
"history": [0],
},
);
return;
}
// // await Future.delayed(const Duration(seconds: 3));
// await EasyLoading.dismiss();
// if (!_wrongPassword) {
// storage.remove('username');
// storage.remove('password');
// storage.remove('role');
// Get.offAllNamed(
// '/index',
// arguments: {
// "tap": 0,
// "history": [0],
// },
// );
// return;
// }
if (_role.toLowerCase() == "kurir") {
Get.offAllNamed(

View File

@ -4,6 +4,7 @@ import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:kurir/controller/after_login/kurir/logKirimanController.dart';
import 'package:socket_io_client/socket_io_client.dart';
@ -38,6 +39,15 @@ class KurirIndexController extends GetxController {
// Get.put(PengaturanKurirController());
break;
case 2:
final ctrl = Get.put<LogKirimanControllerKurir>(
LogKirimanControllerKurir(),
);
ctrl.onInit();
// Get.put(PengaturanKurirController());
break;
default:
}

View File

@ -0,0 +1,74 @@
// ignore_for_file: file_names
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:logger/logger.dart';
import '../../../api/kurirApi.dart';
import '../../../api/pengirimApi.dart';
import '../../../function/allFunction.dart';
import '../../../models/pengirimimanModel.dart';
class LogKirimanControllerKurir extends GetxController {
final dev = Logger();
RxInt loadPengiriman = 0.obs;
RxList pengirimanModelList = [].obs;
@override
void onInit() {
super.onInit();
dev.i("sini on init log kiriman controller kurir");
pengirimanAll();
}
pengirimanAll() async {
loadPengiriman.value = 0;
pengirimanModelList.value = [];
final _api = Get.put(KurirApi());
Map<String, dynamic> _data = await _api.getAllPengirimanCompleted();
if (_data['status'] == 200) {
if (_data['data'].length > 0) {
pengirimanModelList.value =
_data['data'].map((e) => PengirimanModel.fromJson(e)).toList();
dev.d("pengirimanModelList: $pengirimanModelList");
} else {
pengirimanModelList.value = [];
}
loadPengiriman.value = 1;
} else {
pengirimanModelList.value = [];
loadPengiriman.value = 2;
}
}
cekDistance(LatLng latLngPengiriman, LatLng latLngPermulaan) async {
final _api = Get.put(PengirimApi());
double distance = await _api.jarak_route(
latLngPermulaan.latitude,
latLngPermulaan.longitude,
latLngPengiriman.latitude,
latLngPengiriman.longitude,
);
// dev.log(distance.toString() + "ini dia");
return distance;
}
String cekHarga(
double distance, int biayaMinimal, int biayaMaksimal, int biayaPerKilo) {
//
double hargaPerKiloTotal = biayaPerKilo * distance;
double hargaTotalMinimal = hargaPerKiloTotal + biayaMinimal;
double hargaTotalMaksimal = hargaPerKiloTotal + biayaMaksimal;
return "Rp. " +
AllFunction.thousandSeperatorDouble(hargaTotalMinimal) +
" - Rp. " +
AllFunction.thousandSeperatorDouble(hargaTotalMaksimal);
}
}

View File

@ -49,7 +49,10 @@ class PengaturanKurirController extends GetxController {
status: 'Loading Data...',
maskType: EasyLoadingMaskType.black,
);
final result = await KurirApi.cekPengaturanKurir();
final _api = Get.put(KurirApi());
final result = await _api.cekPengaturanKurir();
log(result.toString());
if (result['status'] == 200 && result['data'] != null) {
@ -88,7 +91,9 @@ class PengaturanKurirController extends GetxController {
status: 'Pengaturan Biaya...',
maskType: EasyLoadingMaskType.black,
);
final result = await KurirApi.pengaturanKurir(
final _api = Get.put(KurirApi());
final result = await _api.pengaturanKurir(
minimalBiayaPengiriman, maksimalBiayaPengiriman, biayaPerKilo);
log(result.toString());

View File

@ -52,8 +52,11 @@ class PengirimanKurirController extends GetxController {
pengirimanAll() async {
loadPengiriman.value = 0;
pengirimanModelList.value = [];
final _api = Get.put(KurirApi());
Map<String, dynamic> _data =
await KurirApi.getAllPengirimanDalamPengesahanKurir();
await _api.getAllPengirimanDalamPengesahanKurir();
if (_data['status'] == 200) {
if (_data['data'].length > 0) {
@ -83,7 +86,8 @@ class PengirimanKurirController extends GetxController {
}
cekDistance(LatLng latLngPengiriman, LatLng latLngPermulaan) async {
double distance = await PengirimApi.jarak_route(
final _api = Get.put(PengirimApi());
double distance = await _api.jarak_route(
latLngPermulaan.latitude,
latLngPermulaan.longitude,
latLngPengiriman.latitude,
@ -243,7 +247,10 @@ class PengirimanKurirController extends GetxController {
status: 'Loading...',
maskType: EasyLoadingMaskType.black,
);
Map<String, dynamic> _data = await KurirApi.sahkanPengiriman(id);
final _api = Get.put(KurirApi());
Map<String, dynamic> _data = await _api.sahkanPengiriman(id);
if (_data['status'] == 200) {
// loadPengiriman.value = 0;
Get.snackbar(
@ -315,7 +322,10 @@ class PengirimanKurirController extends GetxController {
status: 'Loading...',
maskType: EasyLoadingMaskType.black,
);
Map<String, dynamic> _data = await KurirApi.mengambilPaketPengiriman(id);
final _api = Get.put(KurirApi());
Map<String, dynamic> _data = await _api.mengambilPaketPengiriman(id);
if (_data['status'] == 200) {
// loadPengiriman.value = 0;
Get.snackbar(

View File

@ -1,16 +1,17 @@
// ignore_for_file: file_names
import 'dart:developer' as dev;
import 'package:enhance_stepper/enhance_stepper.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:kurir/function/allFunction.dart';
import 'package:kurir/models/pengirimimanModel.dart';
import 'package:logger/logger.dart';
import '../../../api/kurirApi.dart';
import '../../../function/allFunction.dart';
import '../../../models/pengirimimanModel.dart';
class ProgressPenghantaranControllerKurir extends GetxController {
final dev = Logger();
Rx<String> text = "heheh".obs;
String id = Get.arguments;
Rx<Widget> enhanceStepContainer = Container(
@ -29,14 +30,16 @@ class ProgressPenghantaranControllerKurir extends GetxController {
void onInit() {
super.onInit();
// text.value = "heheh222";
dev.log("disini progress penghantaran bagian kurir berlaku");
dev.i("disini progress penghantaran bagian kurir berlaku");
// future 3 sec
getData();
}
void getData() async {
Map<String, dynamic> _data = await KurirApi.detailPengiriman(id);
final _api = Get.put(KurirApi());
Map<String, dynamic> _data = await _api.detailPengiriman(id);
if (_data["status"] == 200) {
final PengirimanModel _pengiriman =
PengirimanModel.fromJson(_data["data"]);
@ -69,6 +72,7 @@ class ProgressPenghantaranControllerKurir extends GetxController {
fontSize: 15,
),
);
switch (data.statusPengiriman) {
case "Dalam Pengesahan Kurir":
_icon = const Icon(
@ -119,13 +123,38 @@ class ProgressPenghantaranControllerKurir extends GetxController {
size: 30,
);
_title = const Text(
"Mengambil Paket Pengiriman Dari Pengirim",
"Dalam Perjalanan Mengambil Paket Pengiriman Dari Pengirim",
style: TextStyle(
color: Colors.white,
fontSize: 20,
),
);
_content = const _MengambilPaketKirimanRichtext();
_content = _MengambilPaketKirimanRichtext(
terima: (pengiriman.statusPengiriman ==
"Mengambil Paket Pengiriman Dari Pengirim")
? true
: false,
waktu: (pengiriman.statusPengiriman !=
"Mengambil Paket Pengiriman Dari Pengirim" ||
pengiriman.statusPengiriman != "Disahkan Kurir" ||
pengiriman.statusPengiriman != "Dalam Pengesahan Kurir")
? AllFunction.timeZoneAdd8(pengiriman.history![3].waktu)
: null);
break;
case "Menghantar Paket Pengiriman Ke Penerima":
_icon = const Icon(
Icons.handshake_outlined,
color: Colors.white,
size: 30,
);
_title = const Text(
"Dalam Perjalanan Menghantar Paket Pengiriman Ke Penerima",
style: TextStyle(
color: Colors.white,
fontSize: 20,
),
);
_content = const _MenghantarPaketKirimanRichtext();
break;
}
@ -139,8 +168,8 @@ class ProgressPenghantaranControllerKurir extends GetxController {
}
}
class _MengambilPaketKirimanRichtext extends StatelessWidget {
const _MengambilPaketKirimanRichtext({
class _MenghantarPaketKirimanRichtext extends StatelessWidget {
const _MenghantarPaketKirimanRichtext({
Key? key,
}) : super(key: key);
@ -158,7 +187,7 @@ class _MengambilPaketKirimanRichtext extends StatelessWidget {
children: [
TextSpan(
text:
"Dalam perjalanan mengambail paker dari pengirim. Klik "),
"Paket diterima dari pengirim. Dalam perjalanan menghantar paket ke penerima. Klik "),
TextSpan(
text: "'Terima Paket Pengiriman' ",
style: TextStyle(
@ -166,7 +195,7 @@ class _MengambilPaketKirimanRichtext extends StatelessWidget {
fontWeight: FontWeight.bold,
),
),
TextSpan(text: "jika sampai ke lokasi pengirim & scan "),
TextSpan(text: "jika sampai ke lokasi penerima & scan "),
TextSpan(
text: "QRcode ",
style: TextStyle(
@ -182,7 +211,7 @@ class _MengambilPaketKirimanRichtext extends StatelessWidget {
fontWeight: FontWeight.bold,
),
),
TextSpan(text: "untuk melihat rute lokasi pengirim."),
TextSpan(text: "untuk melihat rute lokasi penerima."),
],
),
),
@ -194,7 +223,7 @@ class _MengambilPaketKirimanRichtext extends StatelessWidget {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: const [
_ExpandedButton(flex: 2, text: 'Terima Paket\nPengiriman'),
_ExpandedButton(flex: 2, text: 'Serahkan Paket\nPengiriman'),
Expanded(flex: 1, child: SizedBox()),
_ExpandedButton(flex: 2, text: 'Rute Lokasi'),
],
@ -205,6 +234,91 @@ class _MengambilPaketKirimanRichtext extends StatelessWidget {
}
}
class _MengambilPaketKirimanRichtext extends StatelessWidget {
_MengambilPaketKirimanRichtext({
Key? key,
required this.terima,
this.waktu,
}) : super(key: key);
final bool terima;
final String? waktu;
final dev = Logger();
@override
Widget build(BuildContext context) {
dev.i("terima: $terima");
return Column(
children: [
if (terima)
RichText(
textAlign: TextAlign.justify,
text: const TextSpan(
style: TextStyle(
color: Colors.white,
fontSize: 15,
),
children: [
TextSpan(
text:
"Dalam perjalanan mengambil paker dari pengirim. Klik "),
TextSpan(
text: "'Terima Paket Pengiriman' ",
style: TextStyle(
fontStyle: FontStyle.italic,
fontWeight: FontWeight.bold,
),
),
TextSpan(text: "jika sampai ke lokasi pengirim & scan "),
TextSpan(
text: "QRcode ",
style: TextStyle(
fontStyle: FontStyle.italic,
fontWeight: FontWeight.bold,
),
),
TextSpan(text: "yang ada pada aplikasi pengirim. Klik "),
TextSpan(
text: "'Rute Lokasi' ",
style: TextStyle(
fontStyle: FontStyle.italic,
fontWeight: FontWeight.bold,
),
),
TextSpan(text: "untuk melihat rute lokasi pengirim."),
],
),
),
if (!terima)
Text(
"Paket telah diterima dari pengirim.\nPaket diterima pada waktu $waktu\nDalam perjalanan menghantar paket ke penerima.",
textAlign: TextAlign.left,
style: const TextStyle(
color: Colors.white,
fontSize: 15,
),
),
const SizedBox(
height: 10,
),
if (terima)
SizedBox(
width: double.infinity,
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: const [
_ExpandedButton(flex: 2, text: 'Terima Paket\nPengiriman'),
Expanded(flex: 1, child: SizedBox()),
_ExpandedButton(flex: 2, text: 'Rute Lokasi'),
],
),
),
],
);
}
}
class _ExpandedButton extends StatelessWidget {
const _ExpandedButton({
Key? key,

View File

@ -118,7 +118,9 @@ class InfoPengirimanController extends GetxController {
);
_polylines.add(polyline);
double distance = await PengirimApi.jarak_route(
final _api = Get.put(PengirimApi());
double distance = await _api.jarak_route(
latLng_permulaan.latitude,
latLng_permulaan.longitude,
latLng_pengiriman.latitude,

View File

@ -626,7 +626,10 @@ class KirimBarangController extends GetxController {
get_all_kurir(BuildContext context) async {
_kurirWidget.clear();
_check_jarak_tempuh();
Map<String, dynamic> _dataKurirAll = await PengirimApi.getAllKurir();
final _api = Get.put(PengirimApi());
Map<String, dynamic> _dataKurirAll = await _api.getAllKurir();
// log(_dataKurirAll['status'].toString() + " ini data kurir all");
kurir_widget(_dataKurirAll, context);
}
@ -949,7 +952,8 @@ class KirimBarangController extends GetxController {
_kurirWidget.clear();
_check_jarak_tempuh();
Map<String, dynamic> _dataKurir = await PengirimApi.getKurirByNama(nama);
final _api = Get.put(PengirimApi());
Map<String, dynamic> _dataKurir = await _api.getKurirByNama(nama);
// log(_dataKurir.toString() + " ini data kurir");
kurir_widget(_dataKurir, context);
@ -1107,7 +1111,9 @@ class KirimBarangController extends GetxController {
maskType: EasyLoadingMaskType.black,
);
Map<String, dynamic> _dataKurir = await PengirimApi.getKurirByFilter(
final _api = Get.put(PengirimApi());
Map<String, dynamic> _dataKurir = await _api.getKurirByFilter(
_namaKurirSearch,
_biayaMaksimal,
_biayaPerKm,
@ -2297,8 +2303,9 @@ class KirimBarangController extends GetxController {
}
};
Map<String, dynamic> _result =
await PengirimApi.createPengirimanBarang(_data);
final _api = Get.put(PengirimApi());
Map<String, dynamic> _result = await _api.createPengirimanBarang(_data);
if (_result['status'] == 200) {
_cek_and_delete();

View File

@ -18,7 +18,9 @@ class ListKurirController extends GetxController {
kurirAll() async {
loadKurir.value = 0;
kurirModelList.value = [];
Map<String, dynamic> _data = await PengirimApi.getAllKurir();
final _api = Get.put(PengirimApi());
Map<String, dynamic> _data = await _api.getAllKurir();
// dev.log(_data.toString());
if (_data['status'] == 200) {

View File

@ -9,11 +9,11 @@ import 'package:flutter_slidable/flutter_slidable.dart';
import 'package:get/get.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:intl/intl.dart';
import 'package:kurir/api/pengirimApi.dart';
import 'package:kurir/function/allFunction.dart';
import 'package:kurir/models/pengirimimanModel.dart';
import 'package:kurir/globals.dart' as globals;
import '../../../api/pengirimApi.dart';
import '../../../function/allFunction.dart';
import '../../../globals.dart' as globals;
import '../../../models/pengirimimanModel.dart';
class LogKirimanController extends GetxController {
Rx<Widget> widgetLogKiriman = const Center(
@ -60,7 +60,8 @@ class LogKirimanController extends GetxController {
}
checkAllLogKiriman() async {
Map<String, dynamic> _data = await PengirimApi.getLogKiriman();
final _api = Get.put(PengirimApi());
Map<String, dynamic> _data = await _api.getLogKiriman();
// log(_data.toString());
// await 4 sec
widgetLogKiriman.value = const Center(
@ -226,7 +227,9 @@ class LogKirimanController extends GetxController {
crossAxisAlignment: CrossAxisAlignment.end,
children: [
Text(
_status,
(_status == 'Mengambil Paket Pengiriman Dari Pengirim')
? 'Kurir Dalam Perjalanan Mengmabil Paket'
: _status,
style: const TextStyle(
fontSize: 15,
// fontWeight: FontWeight.bold,
@ -451,7 +454,9 @@ class LogKirimanController extends GetxController {
);
_polylines.add(polyline);
double distance = await PengirimApi.jarak_route(
final _api = Get.put(PengirimApi());
double distance = await _api.jarak_route(
latLng_permulaan.latitude,
latLng_permulaan.longitude,
latLng_pengiriman.latitude,