fix: submit data id card

This commit is contained in:
2024-02-19 19:41:36 +07:00
parent 9ba8b79112
commit 466d49312d
7 changed files with 152 additions and 48 deletions

View File

@@ -9,7 +9,7 @@ class ItemSelectForm {
final String text;
final String? description;
final bool isOther;
final String image;
String image;
ItemSelectForm(
this.key,

View File

@@ -11,13 +11,34 @@ import 'package:cims_apps/features/auth/registration/view/submission_data/submis
import 'package:cims_apps/features/auth/registration/viewmodel/submission_data_viewmodel.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:shared_preferences/shared_preferences.dart';
class DisplayPictureScreen extends StatelessWidget {
class DisplayPictureScreen extends StatefulWidget {
final String imagePath, content;
const DisplayPictureScreen(
{super.key, required this.imagePath, required this.content});
@override
State<DisplayPictureScreen> createState() => _DisplayPictureScreenState();
}
class _DisplayPictureScreenState extends State<DisplayPictureScreen> {
Future<void> saveData() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
if (widget.content == 'ktp') {
prefs.setString('imagePath', widget.imagePath);
} else {
prefs.setString('imagePathSelfie', widget.imagePath);
}
}
@override
void initState() {
saveData();
super.initState();
}
@override
Widget build(BuildContext context) {
List listIcons = [
@@ -85,7 +106,7 @@ class DisplayPictureScreen extends StatelessWidget {
SizedBox(
width: SizeConfig.width,
height: SizeConfig.height * .4,
child: Image.file(File(imagePath))),
child: Image.file(File(widget.imagePath))),
const Padding(
padding: EdgeInsets.symmetric(vertical: 16.0),
child: Text(
@@ -103,7 +124,8 @@ class DisplayPictureScreen extends StatelessWidget {
runSpacing: 8,
children: List.generate(4, (index) {
List filteredList = listIcons
.where((element) => element['key'] == content)
.where(
(element) => element['key'] == widget.content)
.toList();
final urlImg = filteredList[index]['urlImg'];
final tag = filteredList[index]['tag'];
@@ -162,10 +184,10 @@ class DisplayPictureScreen extends StatelessWidget {
provider.initCamera().then((cameras) {
routePush(context,
page: TakePictureScreen(
camera: content == 'ktp'
camera: widget.content == 'ktp'
? cameras[0]
: cameras[1],
takeContent: content,
takeContent: widget.content,
));
});
},