2022-04-23 03:08:59 +07:00
|
|
|
import 'package:dio/dio.dart';
|
2022-05-16 07:51:47 +07:00
|
|
|
|
2022-04-23 03:08:59 +07:00
|
|
|
import 'package:nekoya_flutter/api/config.dart';
|
|
|
|
|
|
|
|
Future<dynamic> getProducts() async {
|
2022-05-12 10:27:19 +07:00
|
|
|
var req = await Dio().get('$host/getproducts');
|
2022-04-23 03:08:59 +07:00
|
|
|
var res = req.data;
|
|
|
|
return res;
|
2022-04-25 13:48:14 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
Future<dynamic> getProduct(id) async {
|
2022-05-12 10:27:19 +07:00
|
|
|
var req = await Dio().get('$host/getproduct', queryParameters: {'id': id});
|
2022-04-25 13:48:14 +07:00
|
|
|
var res = req.data;
|
|
|
|
return res;
|
2022-04-25 20:24:26 +07:00
|
|
|
}
|
|
|
|
|
2022-04-27 01:13:53 +07:00
|
|
|
Future<dynamic> registerPost(data) async {
|
2022-04-25 20:24:26 +07:00
|
|
|
Response req = await Dio().post(
|
2022-05-12 10:27:19 +07:00
|
|
|
('$host/register'),
|
2022-04-27 01:13:53 +07:00
|
|
|
data: data,
|
2022-04-25 20:24:26 +07:00
|
|
|
options: Options(
|
|
|
|
contentType: Headers.formUrlEncodedContentType,
|
|
|
|
validateStatus: (status) {
|
|
|
|
return status! < 500;
|
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
|
|
|
return req.statusCode;
|
|
|
|
}
|
2022-04-26 13:11:54 +07:00
|
|
|
|
2022-05-12 18:11:20 +07:00
|
|
|
Future<dynamic> loginPost(data) async {
|
2022-04-26 13:11:54 +07:00
|
|
|
Response req = await Dio().post(
|
2022-05-12 10:27:19 +07:00
|
|
|
('$host/login'),
|
2022-05-12 18:11:20 +07:00
|
|
|
data: data,
|
2022-04-26 13:11:54 +07:00
|
|
|
options: Options(
|
|
|
|
contentType: Headers.formUrlEncodedContentType,
|
|
|
|
validateStatus: (status) {
|
2022-05-17 13:31:03 +07:00
|
|
|
return status! < 500;
|
2022-04-26 13:11:54 +07:00
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
2022-05-12 18:11:20 +07:00
|
|
|
return {'statusCode': req.statusCode, 'data': req.data};
|
2022-04-26 13:11:54 +07:00
|
|
|
}
|
2022-04-27 13:20:01 +07:00
|
|
|
|
2022-05-23 01:05:13 +07:00
|
|
|
Future<dynamic> otpPost(data) async {
|
|
|
|
Response req = await Dio().post(
|
|
|
|
('$host/otp-submit'),
|
|
|
|
data: data,
|
|
|
|
options: Options(
|
|
|
|
contentType: Headers.formUrlEncodedContentType,
|
|
|
|
validateStatus: (status) {
|
|
|
|
return status! < 500;
|
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
|
|
|
return {'statusCode': req.statusCode, 'data': req.data};
|
|
|
|
}
|
|
|
|
|
2022-05-15 17:48:35 +07:00
|
|
|
Future<dynamic> resetPost(data) async {
|
|
|
|
Response req = await Dio().post(
|
|
|
|
('$host/request-reset-password'),
|
|
|
|
data: data,
|
|
|
|
options: Options(
|
|
|
|
contentType: Headers.formUrlEncodedContentType,
|
|
|
|
validateStatus: (status) {
|
2022-05-21 17:49:56 +07:00
|
|
|
return status! < 500;
|
2022-05-15 17:48:35 +07:00
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
|
|
|
return {'statusCode': req.statusCode, 'data': req.data};
|
|
|
|
}
|
|
|
|
|
2022-05-12 21:46:13 +07:00
|
|
|
Future<dynamic> getSessions(session) async {
|
2022-05-23 01:17:40 +07:00
|
|
|
var req = await Dio().post(
|
|
|
|
'$host/sessions',
|
|
|
|
queryParameters: {'session_token': session},
|
|
|
|
options: Options(
|
|
|
|
validateStatus: (status) {
|
|
|
|
return status! < 500;
|
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
2022-05-12 21:46:13 +07:00
|
|
|
return {'statusCode': req.statusCode, 'data': req.data};
|
2022-04-30 23:47:48 +07:00
|
|
|
}
|
|
|
|
|
2022-05-12 21:46:13 +07:00
|
|
|
Future<dynamic> getTransactions(session) async {
|
2022-05-22 16:51:01 +07:00
|
|
|
var req = await Dio().post(
|
|
|
|
'$host/transaction',
|
|
|
|
queryParameters: {'session_token': session},
|
|
|
|
options: Options(
|
|
|
|
validateStatus: (status) {
|
|
|
|
return status! < 500;
|
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
2022-04-27 13:20:01 +07:00
|
|
|
var res = req.data;
|
|
|
|
return res;
|
2022-04-28 11:27:37 +07:00
|
|
|
}
|
|
|
|
|
2022-05-12 21:46:13 +07:00
|
|
|
Future<dynamic> checkoutPost(session, data) async {
|
2022-04-28 11:27:37 +07:00
|
|
|
Response req = await Dio().post(
|
2022-05-12 10:27:19 +07:00
|
|
|
('$host/checkout'),
|
2022-05-12 21:46:13 +07:00
|
|
|
queryParameters: {'session_token': session},
|
2022-04-28 11:27:37 +07:00
|
|
|
data: data,
|
|
|
|
options: Options(
|
|
|
|
contentType: Headers.formUrlEncodedContentType,
|
|
|
|
validateStatus: (status) {
|
|
|
|
return status! < 500;
|
|
|
|
},
|
|
|
|
),
|
|
|
|
);
|
|
|
|
return req.statusCode;
|
|
|
|
}
|
2022-05-16 20:55:38 +07:00
|
|
|
|
|
|
|
Future<dynamic> subscribe(email) async {
|
2022-05-17 13:31:03 +07:00
|
|
|
var req =
|
|
|
|
await Dio().get('$host/subscribe', queryParameters: {'email': email});
|
2022-05-16 20:55:38 +07:00
|
|
|
return req.statusCode;
|
2022-05-17 13:31:03 +07:00
|
|
|
}
|