123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 |
- import 'package:computo_lite/services/services.dart';
- import 'package:computo_lite/data/session/session_storage.dart';
- import 'package:computo_lite/viewmodels/login_view_model.dart';
- import 'package:flutter_barcode_scanner/flutter_barcode_scanner.dart';
- import 'package:http/http.dart' as http;
- import 'dart:convert';
- const String _baseUrlPackage =
- "acta?expand=ultimaRecepcion,nombreConTipoEleccion,ultimaBitacora";
- const List<String> _typeBinnacle = ["esperado", "almacenado", "entregado"];
- const List<String> urls = [
- "&estatusBodega=esperado&idTipoEleccion=",
- "&estatusBodega=almacenado&idTipoEleccion=",
- "&estatusBodega=entregado&idTipoEleccion="
- ];
- const Map<int, dynamic> tcs = {1: "1", 2: "1,2,3", 3: "1,3", 4: "1,3"};
- class PackageViewModel {
- //final LoginViewModel _loginViewModel = LoginViewModel.instance();
- final BaseService _services = BaseService();
- Future<Map<String, dynamic>?> scanner(String _token) async {
- try {
- String? token = await SessionStorage().getToken();
- if (_token != "") {
- token = _token;
- } else {
- token = await FlutterBarcodeScanner.scanBarcode(
- "#ff6666", "Cancelar", false, ScanMode.QR);
- }
- if (token == '-1') {
- return null;
- }
- String url =
- "/v1/acta?&token=$token&escaneo=true&expand=casilla,tipoActa,ultimaBitacora,tipoEleccion&limite=1&idTipoEleccion=1,2,3";
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse = await _services.getHttp(url, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<Map<String, dynamic>?> getPackages(String url) async {
- try {
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse =
- await _services.getHttp(_baseUrlPackage + url, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<Map<String, dynamic>?> getScrollPackages(int tabSelected, int page,
- int idTipoConsejoElectoral, String search) async {
- try {
- String url = _baseUrlPackage +
- urls[tabSelected] +
- "${tcs[idTipoConsejoElectoral]}&pagina=$page&busqueda=$search";
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse = await _services.getHttp(url, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<Map<String, dynamic>?> onChangeTabListPackages(
- int tabSelected, int idTipoConsejoElectoral) async {
- try {
- String? userToken = await SessionStorage().getToken();
- String url = "${urls[tabSelected]}${tcs[idTipoConsejoElectoral]}";
- http.Response? jsonResponse =
- await _services.getHttp(_baseUrlPackage + url, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<Map<String, dynamic>?> searchPackages(
- String search, int tabSelected, int idTipoConsejoElectoral) async {
- try {
- final String searchUrl = search != ""
- ? "$_baseUrlPackage&busqueda=$search&idTipoEleccion=${tcs[idTipoConsejoElectoral]}"
- : "$_baseUrlPackage&estatusBodega=${_typeBinnacle[tabSelected]}&idTipoEleccion=${tcs[idTipoConsejoElectoral]}";
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse =
- await _services.getHttp(searchUrl, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<Map<String, dynamic>?> getBinnacle(int id) async {
- try {
- String url = "/v1/bitacora-paquete?idActa=$id&expand=motivoPaquete";
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse = await _services.getHttp(url, userToken!);
- return json.decode(jsonResponse!.body);
- } catch (e) {
- print(e);
- return null;
- }
- }
- Future<List<Map<String, dynamic>>> getMotives() async {
- try {
- String url = "motivo-paquete";
- String? userToken = await SessionStorage().getToken();
- http.Response? jsonResponse = await _services.getHttp(url, userToken!);
- Map<String, dynamic> response = json.decode(jsonResponse!.body);
- return List<Map<String, dynamic>>.from(response["resultado"]);
- } catch (e) {
- print(e);
- return [];
- }
- }
- Future<bool> toStockOrTakeOut(Map<String, dynamic> data) async {
- try {
- String date;
- if (data["day"] > 9) {
- date = "2021-" + data["month"] + "-" + data["day"].toString();
- } else {
- date = "2021-" + data["month"] + "-" + ("0" + data["day"].toString());
- }
- String time = data["time"].toString().split(" ")[1].substring(0, 8);
- String url = "bitacora-paquete/guardar";
- String? userToken = await SessionStorage().getToken();
- data = {
- "idActa": data["idActa"],
- "fecha": date + " " + time,
- "idMotivoPaquete": data["idMotivoPaquete"],
- "idAgendaEntrega": data["idAgendaEntrega"],
- "idAgendaRecibe": data["idAgendaRecibe"],
- };
- await _services.post(url);
- return true;
- } catch (e) {
- print(e);
- return false;
- }
- }
- }
|