Initial commit: Penyerahan final Source code Tugas Akhir

This commit is contained in:
ferdiakhh
2025-07-10 19:15:14 +07:00
commit e1f2206b8a
687 changed files with 80132 additions and 0 deletions

View File

@ -0,0 +1,79 @@
import 'package:flutter/material.dart';
import 'package:initial_folder/services/qna_service.dart';
enum ResultState { uninitilized, loading, failed, success }
class PostingQnaReplyProvider with ChangeNotifier {
ResultState _state = ResultState.uninitilized;
ResultState get state => _state;
//Post Qna Reply
Future<bool> postQnaReply(String textRep, String idQna) async {
try {
_state = ResultState.loading;
notifyListeners();
bool response = await QnaService().postQnaReply(textRep, idQna);
if (response) {
_state = ResultState.success;
notifyListeners();
return true;
} else {
_state = ResultState.failed;
notifyListeners();
return false;
}
} catch (e) {
_state = ResultState.failed;
notifyListeners();
return false;
}
}
//Update QNA Reply
Future<bool> editQnaReply(String textRep, int idRep, String idQna) async {
try {
_state = ResultState.loading;
notifyListeners();
bool response = await QnaService().editQnaReply(idRep, textRep, idQna);
if (response) {
_state = ResultState.success;
notifyListeners();
return true;
} else {
_state = ResultState.failed;
notifyListeners();
return false;
}
} catch (e) {
_state = ResultState.failed;
notifyListeners();
return false;
}
}
// Delete Qna Reply
Future<bool> deleteReplyQna(int idRep) async {
try {
_state = ResultState.loading;
notifyListeners();
bool response = await QnaService().deleteReplyQna(idRep);
if (response) {
_state = ResultState.success;
notifyListeners();
return true;
} else {
_state = ResultState.failed;
notifyListeners();
return false;
}
} catch (e) {
_state = ResultState.failed;
notifyListeners();
return false;
}
}
}