fix: submit data bank account

This commit is contained in:
Dian Bayu Nugroho 2024-02-16 16:03:06 +07:00
parent 368f326123
commit 298d7f46d2
3 changed files with 83 additions and 69 deletions

View File

@ -8,7 +8,9 @@ import 'package:cims_apps/application/theme/color_palette.dart';
import 'package:cims_apps/core/route/route.dart'; import 'package:cims_apps/core/route/route.dart';
import 'package:cims_apps/features/auth/registration/view/submission_data/data_bank/confirm_bank_account.dart'; import 'package:cims_apps/features/auth/registration/view/submission_data/data_bank/confirm_bank_account.dart';
import 'package:cims_apps/features/auth/registration/view/submission_data/data_bank/guide_screen.dart'; import 'package:cims_apps/features/auth/registration/view/submission_data/data_bank/guide_screen.dart';
import 'package:cims_apps/features/auth/registration/viewmodel/submission_data_viewmodel.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
class SubmitBankAccount extends StatelessWidget { class SubmitBankAccount extends StatelessWidget {
const SubmitBankAccount({Key? key}) : super(key: key); const SubmitBankAccount({Key? key}) : super(key: key);
@ -22,44 +24,56 @@ class SubmitBankAccount extends StatelessWidget {
ItemSelectForm('key4', 'BANK MANDIRI'), ItemSelectForm('key4', 'BANK MANDIRI'),
ItemSelectForm('key5', 'CIMB NIAGA'), ItemSelectForm('key5', 'CIMB NIAGA'),
]; ];
return SizedBox( return MultiProvider(
child: Column( providers: [
crossAxisAlignment: CrossAxisAlignment.start, ChangeNotifierProvider(
children: [ create: (context) => SubmissionDataViewModel(),
const TextCaption(title: 'Input your bank account data'),
SelectFormView(
name: 'Bank Name',
listItem: listForm,
onSelect: (value) {},
),
TextFormView(
name: 'Account Number',
trailingTitleWidget: SizedBox(
width: 24,
child: GestureDetector(
onTap: () {
routePush(context, page: GuideScreen());
},
child: const ImageView(image: PathAssets.iconQuestion),
),
),
),
TextFormView(name: 'Account Owner Name'),
const Text(
"Make sure the account you use is in your name, not someone else's",
style: TextStyle(
color: ColorPalette.slate400,
),
),
const Spacer(),
ButtonView(
name: 'Next',
onPressed: () {
routePush(context, page: ConfirmBankAccount());
},
) )
], ],
), builder: (context, child) {
); return SizedBox(
child: Consumer<SubmissionDataViewModel>(
builder: (context, provider, child) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const TextCaption(title: 'Input your bank account data'),
SelectFormView(
name: 'Bank Name',
listItem: listForm,
onSelect: (value) {},
),
TextFormView(
name: 'Account Number',
trailingTitleWidget: SizedBox(
width: 24,
child: GestureDetector(
onTap: () {
routePush(context, page: const GuideScreen());
},
child: const ImageView(image: PathAssets.iconQuestion),
),
),
),
TextFormView(name: 'Account Owner Name'),
const Text(
"Make sure the account you use is in your name, not someone else's",
style: TextStyle(
color: ColorPalette.slate400,
),
),
const Spacer(),
ButtonView(
name: 'Next',
onPressed: () {
provider.nextSubmission(context);
routePush(context, page: const ConfirmBankAccount());
},
)
],
);
}),
);
});
} }
} }

View File

@ -10,6 +10,7 @@ import 'package:cims_apps/features/auth/registration/view/submission_data/submit
import 'package:cims_apps/features/auth/registration/view/submission_data/submit_email.dart'; import 'package:cims_apps/features/auth/registration/view/submission_data/submit_email.dart';
import 'package:cims_apps/features/auth/registration/view/submission_data/submit_personal_data.dart'; import 'package:cims_apps/features/auth/registration/view/submission_data/submit_personal_data.dart';
import 'package:cims_apps/features/auth/registration/view/submission_data/submit_photo_selfie.dart'; import 'package:cims_apps/features/auth/registration/view/submission_data/submit_photo_selfie.dart';
import 'package:cims_apps/features/auth/registration/view/submission_data/submit_signature/submit_signature.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:cims_apps/features/bottom_navigation_view.dart'; import 'package:cims_apps/features/bottom_navigation_view.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -26,7 +27,7 @@ class SubmissionParent extends StatefulWidget {
class _SubmissionParentState extends State<SubmissionParent> { class _SubmissionParentState extends State<SubmissionParent> {
Widget _stepItem({bool isCurrentStep = false, bool isDone = false}) { Widget _stepItem({bool isCurrentStep = false, bool isDone = false}) {
return Container( return Container(
margin: const EdgeInsets.only(right: 4.0, left: 4.0), margin: const EdgeInsets.only(right: 0.0, left: 4.0),
height: 6, height: 6,
width: SizeConfig.width * .08, width: SizeConfig.width * .08,
decoration: BoxDecoration( decoration: BoxDecoration(
@ -53,9 +54,7 @@ class _SubmissionParentState extends State<SubmissionParent> {
case 6: case 6:
return const SubmitBankAccount(); return const SubmitBankAccount();
case 7: case 7:
return Container( return const SubmitSignature();
child: Text("Step 7"),
);
case 8: case 8:
return const RiskProfileView(); return const RiskProfileView();
case 9: case 9:
@ -77,30 +76,30 @@ class _SubmissionParentState extends State<SubmissionParent> {
routeType: RouteType.pushReplace); routeType: RouteType.pushReplace);
return false; return false;
}, },
child: Scaffold( child: Consumer<SubmissionDataViewModel>(
appBar: AppBar( builder: (context, provider, child) {
toolbarHeight: 70, return Scaffold(
backgroundColor: Colors.white, appBar: AppBar(
surfaceTintColor: Colors.white, toolbarHeight: 70,
automaticallyImplyLeading: false, backgroundColor: Colors.white,
title: Row( surfaceTintColor: Colors.white,
mainAxisAlignment: MainAxisAlignment.spaceBetween, automaticallyImplyLeading: false,
children: [ title: Row(
const BackButtonView(), mainAxisAlignment: MainAxisAlignment.spaceBetween,
const Text('Registration'), children: [
SizedBox( const BackButtonView(),
width: SizeConfig.width * 0.1, const Text('Registration'),
) SizedBox(
], width: SizeConfig.width * 0.1,
)
],
),
shape: const RoundedRectangleBorder(
side: BorderSide(color: ColorPalette.slate200)),
), ),
shape: const RoundedRectangleBorder( body: Stack(
side: BorderSide(color: ColorPalette.slate200)), children: [
), Column(
body: Stack(
children: [
Consumer<SubmissionDataViewModel>(
builder: (context, provider, child) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
@ -140,11 +139,11 @@ class _SubmissionParentState extends State<SubmissionParent> {
), ),
) )
], ],
); ),
}), ],
], ),
), );
), }),
); );
}); });
} }

View File

@ -34,6 +34,7 @@ class SubmissionDataViewModel extends ChangeNotifier {
} else { } else {
//ToDo : Go To next step after completing the submission //ToDo : Go To next step after completing the submission
} }
notifyListeners(); notifyListeners();
} }
} }