fist commit ftc staff app clone
This commit is contained in:
@@ -0,0 +1,141 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:ftc_mobile_app/ftc_mobile_app.dart';
|
||||
import 'package:ftc_mobile_app/models/clients/riskAssessmentResponse/InPlace.dart';
|
||||
import 'package:ftc_mobile_app/models/clients/riskAssessmentResponse/PureRiskRating.dart';
|
||||
import 'package:ftc_mobile_app/models/clients/riskAssessmentResponse/ResidualRiskRating.dart';
|
||||
import 'package:ftc_mobile_app/models/clients/riskAssessmentResponse/RiskAssessmentData.dart';
|
||||
import 'package:ftc_mobile_app/utilities/extensions/custom_extensions.dart';
|
||||
import 'package:get/get.dart';
|
||||
|
||||
class AddEditRiskAssessmentScreenController extends GetxController {
|
||||
final GlobalKey<ScaffoldState> screenKey = GlobalKey<ScaffoldState>();
|
||||
|
||||
final ratings = List.generate(9, (i) => i + 1);
|
||||
|
||||
final hazardTEC = TextEditingController();
|
||||
final personsExposedToHazardTEC = TextEditingController();
|
||||
final riskIdentifiedTEC = TextEditingController();
|
||||
final controlMeasuresRequiredTEC = TextEditingController();
|
||||
|
||||
final pureRiskRatingCTEC = TextEditingController(text: "1");
|
||||
final pureRiskRatingLTEC = TextEditingController(text: "1");
|
||||
final pureRiskRatingRTEC = TextEditingController(text: "1");
|
||||
|
||||
final residualRiskRatingCTEC = TextEditingController(text: "1");
|
||||
final residualRiskRatingLTEC = TextEditingController(text: "1");
|
||||
final residualRiskRatingRTEC = TextEditingController(text: "1");
|
||||
|
||||
final inPlaceYTEC = TextEditingController(text: "1");
|
||||
final inPlaceNTEC = TextEditingController(text: "1");
|
||||
|
||||
///[isEditing] will be true if using [AddDetailsToNewBodyPointScreen] screen to edit issue details,
|
||||
/// or say issueData is not null
|
||||
final isEditing = false.obs;
|
||||
|
||||
String serviceUserId = "";
|
||||
RiskAssessmentData? issueData;
|
||||
|
||||
@override
|
||||
void onReady() {
|
||||
if (issueData != null) {
|
||||
isEditing.value = true;
|
||||
hazardTEC.text = issueData!.hazard ?? "";
|
||||
personsExposedToHazardTEC.text = issueData!.personsExposedToHazard ?? "";
|
||||
}
|
||||
super.onReady();
|
||||
}
|
||||
|
||||
Future<void> submitButtonPressed(BuildContext context) async {
|
||||
if (hazardTEC.text.trim().isEmpty) {
|
||||
FrequentFunctions.showToast(message: "Hazard is required");
|
||||
return;
|
||||
}
|
||||
if (personsExposedToHazardTEC.text.trim().isEmpty) {
|
||||
FrequentFunctions.showToast(
|
||||
message: "Personal (s) Exposed to hazard is required");
|
||||
return;
|
||||
}
|
||||
if (riskIdentifiedTEC.text.trim().isEmpty) {
|
||||
FrequentFunctions.showToast(message: "Risk Identified is required");
|
||||
return;
|
||||
}
|
||||
if (controlMeasuresRequiredTEC.text.trim().isEmpty) {
|
||||
FrequentFunctions.showToast(
|
||||
message: "Control Measures Required is required");
|
||||
return;
|
||||
}
|
||||
|
||||
// var result = (isEditing.isFalse)
|
||||
final result = await ClientService()
|
||||
.createRiskAssesments(
|
||||
data: RiskAssessmentData(
|
||||
userId: serviceUserId,
|
||||
hazard: hazardTEC.text.trim(),
|
||||
personsExposedToHazard: personsExposedToHazardTEC.text.trim(),
|
||||
riskIdentified: riskIdentifiedTEC.text.trim(),
|
||||
coldMeasureRequired: controlMeasuresRequiredTEC.text.trim(),
|
||||
pureRiskRating: PureRiskRating(
|
||||
c: int.parse(pureRiskRatingCTEC.text.trim()),
|
||||
l: int.parse(pureRiskRatingLTEC.text.trim()),
|
||||
r: int.parse(pureRiskRatingRTEC.text.trim()),
|
||||
),
|
||||
residualRiskRating: ResidualRiskRating(
|
||||
c: int.parse(residualRiskRatingCTEC.text.trim()),
|
||||
l: int.parse(residualRiskRatingLTEC.text.trim()),
|
||||
r: int.parse(residualRiskRatingRTEC.text.trim()),
|
||||
),
|
||||
inPlace: InPlace(
|
||||
y: int.parse(inPlaceYTEC.text.trim()),
|
||||
n: int.parse(inPlaceNTEC.text.trim()),
|
||||
),
|
||||
),
|
||||
)
|
||||
.showLoader();
|
||||
if (result == true) {
|
||||
Navigator.of(screenKey.currentContext!).pop(true);
|
||||
} else {
|
||||
FrequentFunctions.showToast(message: result);
|
||||
}
|
||||
// : await ClientService()
|
||||
// .updateHealthIssueData(
|
||||
// issueId: issueData!.id,
|
||||
// categoryId: issueData!.bodyPointsCategory!.id,
|
||||
// healthNote: healthNoteController.text.trim(),
|
||||
// complaint: complaintController.text.trim())
|
||||
// .showLoader();
|
||||
//
|
||||
// if (result is! String) {
|
||||
// Navigator.of(context).pop(true);
|
||||
// } else {
|
||||
// if (result.isNotEmpty) {
|
||||
// FrequentFunctions.showToast(message: result);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
void removeFocus() {
|
||||
FocusScope.of(screenKey.currentContext!).unfocus();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
hazardTEC.dispose();
|
||||
personsExposedToHazardTEC.dispose();
|
||||
riskIdentifiedTEC.dispose();
|
||||
controlMeasuresRequiredTEC.dispose();
|
||||
|
||||
pureRiskRatingCTEC.dispose();
|
||||
pureRiskRatingLTEC.dispose();
|
||||
pureRiskRatingRTEC.dispose();
|
||||
|
||||
residualRiskRatingCTEC.dispose();
|
||||
residualRiskRatingLTEC.dispose();
|
||||
residualRiskRatingRTEC.dispose();
|
||||
|
||||
inPlaceYTEC.dispose();
|
||||
inPlaceNTEC.dispose();
|
||||
|
||||
Get.delete<AddEditRiskAssessmentScreenController>();
|
||||
super.dispose();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user