67 lines
1.8 KiB
Dart
67 lines
1.8 KiB
Dart
import 'dart:convert';
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:sefer_admin1/constant/links.dart';
|
|
import 'package:sefer_admin1/controller/functions/crud.dart';
|
|
|
|
import '../../constant/api_key.dart';
|
|
import '../../constant/box_name.dart';
|
|
import '../../main.dart';
|
|
import '../../print.dart';
|
|
|
|
class DashboardController extends GetxController {
|
|
bool isLoading = false;
|
|
List dashbord = [];
|
|
String creditSMS = '0';
|
|
final formKey = GlobalKey<FormState>();
|
|
final smsText = TextEditingController();
|
|
|
|
Future getDashBoard() async {
|
|
isLoading = true;
|
|
update();
|
|
var res = await CRUD().get(link: AppLink.getdashbord, payload: {});
|
|
if (res != 'failure') {
|
|
var d = jsonDecode(res);
|
|
Log.print('d: ${d}');
|
|
dashbord = d['message'];
|
|
isLoading = false;
|
|
update();
|
|
}
|
|
|
|
var res2 = await CRUD().kazumiSMS(
|
|
link: 'https://sms.kazumi.me/api/sms/check-credit',
|
|
payload: {"username": "Sefer", "password": AK.smsPasswordEgypt},
|
|
);
|
|
|
|
creditSMS = res2['credit'];
|
|
Log.print(' res2[credit]: ${res2['credit']}');
|
|
Log.print('creditSMS: ${creditSMS}');
|
|
|
|
update();
|
|
}
|
|
|
|
sendSMSMethod() async {
|
|
if (formKey.currentState!.validate()) {
|
|
for (var phoneNumber in box.read(BoxName.tokensDrivers)['message']) {
|
|
// for (var i = 0; i < 2; i++) {
|
|
await CRUD().sendSmsEgypt(
|
|
phoneNumber['phone'].toString(),
|
|
// box.read(BoxName.tokensDrivers)['message'][i]['phone'].toString(),
|
|
smsText.text,
|
|
);
|
|
// Log.print('CRUD().phoneDriversTest.: ${phoneNumber['phone']}');
|
|
Future.delayed(const Duration(microseconds: 20));
|
|
}
|
|
Get.back();
|
|
}
|
|
}
|
|
|
|
@override
|
|
void onInit() async {
|
|
getDashBoard();
|
|
|
|
super.onInit();
|
|
}
|
|
}
|