fix: add validation form
This commit is contained in:
parent
f2f688f9f3
commit
4461b78565
|
@ -2,6 +2,7 @@ import 'package:cims_apps/application/component/button/button_view.dart';
|
||||||
import 'package:cims_apps/application/component/select_form/select_form_view.dart';
|
import 'package:cims_apps/application/component/select_form/select_form_view.dart';
|
||||||
import 'package:cims_apps/application/component/text_caption/text_caption.dart';
|
import 'package:cims_apps/application/component/text_caption/text_caption.dart';
|
||||||
import 'package:cims_apps/core/route/route.dart';
|
import 'package:cims_apps/core/route/route.dart';
|
||||||
|
import 'package:cims_apps/core/utils/size_config.dart';
|
||||||
import 'package:cims_apps/features/auth/registration/view/submission_data/submission_parent.dart';
|
import 'package:cims_apps/features/auth/registration/view/submission_data/submission_parent.dart';
|
||||||
import 'package:cims_apps/features/auth/registration/viewmodel/submission_data_viewmodel.dart';
|
import 'package:cims_apps/features/auth/registration/viewmodel/submission_data_viewmodel.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
@ -17,12 +18,13 @@ class SubmitPersonalData extends StatelessWidget {
|
||||||
builder: (context, child) {
|
builder: (context, child) {
|
||||||
return Consumer<SubmissionDataViewModel>(
|
return Consumer<SubmissionDataViewModel>(
|
||||||
builder: (context, provider, child) {
|
builder: (context, provider, child) {
|
||||||
return SingleChildScrollView(
|
return SizedBox(
|
||||||
|
height: SizeConfig.height * .78,
|
||||||
child: Form(
|
child: Form(
|
||||||
key: provider.formKeyPersonalData,
|
key: provider.formKeyPersonalData,
|
||||||
child: Column(
|
child: Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||||
children: [
|
children: [
|
||||||
const TextCaption(title: 'Your personal details'),
|
const TextCaption(title: 'Your personal details'),
|
||||||
SelectFormView(
|
SelectFormView(
|
||||||
|
@ -31,6 +33,12 @@ class SubmitPersonalData extends StatelessWidget {
|
||||||
ctrl: provider.ctrlOccupation,
|
ctrl: provider.ctrlOccupation,
|
||||||
listItem: provider.listOccupation,
|
listItem: provider.listOccupation,
|
||||||
onSelect: (value) {},
|
onSelect: (value) {},
|
||||||
|
validator: (value) {
|
||||||
|
if (value!.isEmpty) {
|
||||||
|
return 'Field must be filled';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
),
|
),
|
||||||
SelectFormView(
|
SelectFormView(
|
||||||
name: 'Income Level (IDR)',
|
name: 'Income Level (IDR)',
|
||||||
|
@ -38,6 +46,12 @@ class SubmitPersonalData extends StatelessWidget {
|
||||||
ctrl: provider.ctrlIncome,
|
ctrl: provider.ctrlIncome,
|
||||||
listItem: provider.listIncome,
|
listItem: provider.listIncome,
|
||||||
onSelect: (value) {},
|
onSelect: (value) {},
|
||||||
|
validator: (value) {
|
||||||
|
if (value!.isEmpty) {
|
||||||
|
return 'Field must be filled';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
),
|
),
|
||||||
SelectFormView(
|
SelectFormView(
|
||||||
name: 'Marital Status',
|
name: 'Marital Status',
|
||||||
|
@ -45,6 +59,12 @@ class SubmitPersonalData extends StatelessWidget {
|
||||||
ctrl: provider.ctrlMarital,
|
ctrl: provider.ctrlMarital,
|
||||||
listItem: provider.listMarital,
|
listItem: provider.listMarital,
|
||||||
onSelect: (value) {},
|
onSelect: (value) {},
|
||||||
|
validator: (value) {
|
||||||
|
if (value!.isEmpty) {
|
||||||
|
return 'Field must be filled';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
),
|
),
|
||||||
SelectFormView(
|
SelectFormView(
|
||||||
name: 'Source of Fund',
|
name: 'Source of Fund',
|
||||||
|
@ -52,20 +72,28 @@ class SubmitPersonalData extends StatelessWidget {
|
||||||
ctrl: provider.ctrlSourceFund,
|
ctrl: provider.ctrlSourceFund,
|
||||||
listItem: provider.listSourceFund,
|
listItem: provider.listSourceFund,
|
||||||
onSelect: (value) {},
|
onSelect: (value) {},
|
||||||
|
validator: (value) {
|
||||||
|
if (value!.isEmpty) {
|
||||||
|
return 'Field must be filled';
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
},
|
||||||
),
|
),
|
||||||
Align(
|
// SizedBox(height: SizeConfig.height * .18),
|
||||||
alignment: Alignment.bottomCenter,
|
ButtonView(
|
||||||
child: ButtonView(
|
marginVertical: 0,
|
||||||
name: 'Next',
|
name: 'Next',
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
|
if (provider.formKeyPersonalData.currentState!
|
||||||
|
.validate()) {
|
||||||
await provider.next(context).then((value) {
|
await provider.next(context).then((value) {
|
||||||
if (value) {
|
if (value) {
|
||||||
routePush(context,
|
routePush(context,
|
||||||
page: const SubmissionParent());
|
page: const SubmissionParent());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
}
|
||||||
),
|
},
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|
Loading…
Reference in New Issue
Block a user