From 99db140a0c6123962cc9623859c13a381be3b696 Mon Sep 17 00:00:00 2001 From: Prajna Prayoga Date: Mon, 19 Feb 2024 19:58:29 +0700 Subject: [PATCH] feat: flow subscribe product --- assets/icons/icon-bag.png | Bin 0 -> 2308 bytes assets/icons/icon-car.png | Bin 0 -> 1898 bytes assets/icons/icon-cart.png | Bin 0 -> 1856 bytes assets/icons/icon-gadget.png | Bin 0 -> 1441 bytes assets/icons/icon-market.png | Bin 0 -> 1460 bytes assets/icons/icon-plane.png | Bin 0 -> 1765 bytes assets/icons/icon-ticket.png | Bin 0 -> 1546 bytes assets/images/img-open-shopping.png | Bin 0 -> 103380 bytes assets/images/img-payment-success.png | Bin 0 -> 75558 bytes lib/application/assets/path_assets.dart | 9 + .../component/modal_redirect_app.dart | 41 +++ .../{ => subscribe}/goal_investing_view.dart | 22 +- .../subscribe/input_investment_view.dart | 143 +++++++++ .../component/subscribe/other_plan_view.dart | 182 +++++++++++ .../subscribe/total_payment_view.dart} | 199 ++++++------ lib/application/component/success_view.dart | 52 ++++ .../component/text_form/text_form_view.dart | 10 +- lib/application/theme/color_palette.dart | 1 + .../auth/login/view/password_view.dart | 1 + lib/features/bottom_navigation_view.dart | 41 ++- .../view/homepage/homepage_view.dart | 2 +- .../view/invest_type/invest_type_view.dart | 153 +++++----- .../view/plan/view/plan_view.dart | 112 +------ .../result_options_product.dart | 43 ++- .../view/plan/view_model/plan_view_model.dart | 9 +- .../{ => view}/product_chart_view.dart | 0 .../view/product/{ => view}/product_view.dart | 126 ++++---- .../step_subscribe/payment_method_view.dart | 282 ++++++++++++++++++ .../step_subscribe/select_goal_investing.dart | 83 ++++++ .../view_model/product_view_model.dart | 27 ++ lib/main.dart | 4 + 31 files changed, 1170 insertions(+), 372 deletions(-) create mode 100644 assets/icons/icon-bag.png create mode 100644 assets/icons/icon-car.png create mode 100644 assets/icons/icon-cart.png create mode 100644 assets/icons/icon-gadget.png create mode 100644 assets/icons/icon-market.png create mode 100644 assets/icons/icon-plane.png create mode 100644 assets/icons/icon-ticket.png create mode 100644 assets/images/img-open-shopping.png create mode 100644 assets/images/img-payment-success.png create mode 100644 lib/application/component/modal_redirect_app.dart rename lib/application/component/{ => subscribe}/goal_investing_view.dart (71%) create mode 100644 lib/application/component/subscribe/input_investment_view.dart create mode 100644 lib/application/component/subscribe/other_plan_view.dart rename lib/{features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_total_product.dart => application/component/subscribe/total_payment_view.dart} (52%) create mode 100644 lib/application/component/success_view.dart rename lib/features/dashboard/dashboard_account/view/product/{ => view}/product_chart_view.dart (100%) rename lib/features/dashboard/dashboard_account/view/product/{ => view}/product_view.dart (90%) create mode 100644 lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/payment_method_view.dart create mode 100644 lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/select_goal_investing.dart create mode 100644 lib/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart diff --git a/assets/icons/icon-bag.png b/assets/icons/icon-bag.png new file mode 100644 index 0000000000000000000000000000000000000000..6fc02db2ad7a37b21162e67bfda6b2bf1f44898e GIT binary patch literal 2308 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 literal 0 HcmV?d00001 diff --git a/assets/icons/icon-market.png b/assets/icons/icon-market.png new file mode 100644 index 0000000000000000000000000000000000000000..5cb8e44ec8e4e92122d30833b36c76eeb42ef782 GIT binary patch literal 1460 zcmah}X*3iH6dudim$5e1%#bCrL_~~-(JYz?SxdI8CDGVYA;d@~48vG6HCcuc<5@-? zp&UydSwbA+DUQiZO1w+NUF zdoU=PBA31n6)qS(nPn1~uj^VsrW;Ky=SAdmIDWg6&O0!b^X#~B&KLSx9lcJQpV#@o2JKQYTY^uZerzLj#y?mbFbDT)BqK&2G?WNXG+)88ShiK{Eca?rHV% zQ2v%`bS~8ap0Zac+3bcFc?kGulskSGKxM79BuV$%Z z$Jyze<606$`f#b|jx2Nn7j*5jN*k(3~Nxf@}MEbjr1LUYyJ>3>XcRVlJ7X9Hr5ow`YQn3+s{?q(mJwTY{rudBG%`%EC=- zXi@Tl4pp(Z{ebHhW=G!%EZug{8(8xix-Cy>K7^NEJ5Vb$#tyhDMn+ht zfNcI3EDWBKdNJJIQZx@`-<)$pcc&yu4oW*yN{r55o3?&!1jV_Rn^!Zt`sz%x^S?{t z^jAy!*-9AWcme7KA=R;^b+%>U9>T~QN7#1)Uof68|Iehqrk=K=c9+peeh4|N$(5@( z)?sHwP2QgR5?br>I(OeIm!q*3S;kS%iScmToHE_N8iY3TJs4m^nk?><5YYW%wCu`? z@RyGTfxTzPz9y*)sH=jUg9#YF*^wMNN*qe>^K4*Q_PYdOUh12c*Q~v?~ CotcvW literal 0 HcmV?d00001 diff --git a/assets/icons/icon-plane.png b/assets/icons/icon-plane.png new file mode 100644 index 0000000000000000000000000000000000000000..91a6a9ca0842627e447b7e456d0bbf660a7b4706 GIT binary patch literal 1765 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 literal 0 HcmV?d00001 diff --git a/assets/images/img-open-shopping.png b/assets/images/img-open-shopping.png new file mode 100644 index 0000000000000000000000000000000000000000..8d766974b99c763c586675a71e0163005a5e4649 GIT binary patch literal 103380 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

s_CRg8zk~jU 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%0AZ~Z=+rwTtX@&L*={e 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 Pe@KhVi~anl@Ap3d1}b^N literal 0 HcmV?d00001 diff --git a/assets/images/img-payment-success.png b/assets/images/img-payment-success.png new file mode 100644 index 0000000000000000000000000000000000000000..cac693d86037ba98fb1cdbebe64326db45e0b9ba GIT binary patch literal 75558 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�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 U#7;=3{?pixZk|^tE}=R91JB7dI{*Lx literal 0 HcmV?d00001 diff --git a/lib/application/assets/path_assets.dart b/lib/application/assets/path_assets.dart index 7298748..0b5f688 100644 --- a/lib/application/assets/path_assets.dart +++ b/lib/application/assets/path_assets.dart @@ -39,6 +39,13 @@ class PathAssets { static const String iconCreatePlan = 'assets/icons/icon-create-plan.png'; static const String iconThumb = 'assets/icons/icon-thumb.png'; static const String iconPortofolio = 'assets/icons/icon-portofolio.png'; + static const String iconPlane = 'assets/icons/icon-plane.png'; + static const String iconCart = 'assets/icons/icon-cart.png'; + static const String iconBag = 'assets/icons/icon-bag.png'; + static const String iconMarket = 'assets/icons/icon-market.png'; + static const String iconTicket = 'assets/icons/icon-ticket.png'; + static const String iconGadget = 'assets/icons/icon-gadget.png'; + static const String iconCar = 'assets/icons/icon-car.png'; /// IMAGE static const String imgSplashLogo = 'assets/images/splash-logo.png'; @@ -72,4 +79,6 @@ class PathAssets { static const String imgGuideBank = 'assets/images/img-guide-bank.png'; static const String imgGuide1 = 'assets/images/img-guide1.png'; static const String imgGuide2 = 'assets/images/img-guide2.png'; + static const String imgOpenShopping = 'assets/images/img-open-shopping.png'; + static const String imgPaymentSuccess = 'assets/images/img-payment-success.png'; } diff --git a/lib/application/component/modal_redirect_app.dart b/lib/application/component/modal_redirect_app.dart new file mode 100644 index 0000000..3292e4d --- /dev/null +++ b/lib/application/component/modal_redirect_app.dart @@ -0,0 +1,41 @@ +import 'package:cims_apps/application/assets/path_assets.dart'; +import 'package:cims_apps/application/component/image/image_view.dart'; +import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:flutter/material.dart'; + +class TypeApp { + String img, title; + + TypeApp(this.img, this.title); +} + +class ModalRedirectApp extends StatelessWidget { + final String value; + const ModalRedirectApp({super.key, required this.value}); + + @override + Widget build(BuildContext context) { + Map typeApp = { + 'Shopping Pay': TypeApp(PathAssets.imgOpenShopping, 'Shopping App'), + }; + + return Column( + children: [ + ImageView(image: typeApp[value]!.img), + Text('Open ${typeApp[value]!.title}', + style: TextStyle( + fontSize: 22, + fontWeight: FontWeight.w600, + color: ColorPalette.slate800 + ), + ), + Text('You will be redirected to the ${typeApp[value]!.title.toLowerCase()} to continue the payment', + style: TextStyle( + fontSize: 16, + color: ColorPalette.slate400 + ), + ) + ], + ); + } +} diff --git a/lib/application/component/goal_investing_view.dart b/lib/application/component/subscribe/goal_investing_view.dart similarity index 71% rename from lib/application/component/goal_investing_view.dart rename to lib/application/component/subscribe/goal_investing_view.dart index 8ea6606..80c3e53 100644 --- a/lib/application/component/goal_investing_view.dart +++ b/lib/application/component/subscribe/goal_investing_view.dart @@ -1,5 +1,7 @@ import 'package:cims_apps/application/assets/path_assets.dart'; +import 'package:cims_apps/application/component/subscribe/other_plan_view.dart'; import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/core/route/route.dart'; import 'package:cims_apps/core/utils/size_config.dart'; import 'package:flutter/material.dart'; @@ -20,7 +22,7 @@ class GoalInvestingView extends StatelessWidget { GoalInvest(PathAssets.iconToga, 'Education'), GoalInvest(PathAssets.iconCake, 'Marriage'), GoalInvest(PathAssets.iconHouse, 'Old age days'), - GoalInvest(PathAssets.iconCreatePlan, 'Create Plan'), + GoalInvest(PathAssets.iconCreatePlan, 'Other Plan'), ]; return Column( @@ -30,7 +32,18 @@ class GoalInvestingView extends StatelessWidget { padding: EdgeInsets.only(top: e.key != 0 ? 16 : 0), child: ListTile( onTap: () { - onListSelected(e.value.title); + if(e.value.title == 'Other Plan'){ + routePush( + context, + page: OtherPlanView( + selectedPlan: (value) { + onListSelected(e.value.title); + }, + ) + ); + }else{ + onListSelected(e.value.title); + } }, shape: RoundedRectangleBorder( side: BorderSide(color: ColorPalette.slate200), @@ -51,10 +64,11 @@ class GoalInvestingView extends StatelessWidget { title: Text(e.value.title, style: TextStyle( fontWeight: FontWeight.w600, - fontSize: 16 + fontSize: 16, + color: ColorPalette.slate800 ), ), - trailing: Icon(Icons.chevron_right_rounded), + trailing: Icon(Icons.chevron_right_rounded, color: ColorPalette.slate400), ), ); }).toList() diff --git a/lib/application/component/subscribe/input_investment_view.dart b/lib/application/component/subscribe/input_investment_view.dart new file mode 100644 index 0000000..846a057 --- /dev/null +++ b/lib/application/component/subscribe/input_investment_view.dart @@ -0,0 +1,143 @@ +import 'package:cims_apps/application/component/button/button_view.dart'; +import 'package:cims_apps/application/component/numeric_pad/numeric_pad.dart'; +import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/core/utils/number_formatter.dart'; +import 'package:cims_apps/core/utils/size_config.dart'; +import 'package:flutter/material.dart'; + +class InputInvestmentView extends StatefulWidget { + final String selectedPlan; + final void Function(String value) nextMove; + const InputInvestmentView({super.key, required this.selectedPlan, required this.nextMove}); + + @override + State createState() => _InputInvestmentViewState(); +} + +class _InputInvestmentViewState extends State { + TextEditingController inputController = TextEditingController(); + + @override + void initState() { + // TODO: implement initState + inputController.text = 'Rp 0'; + super.initState(); + } + + @override + void dispose() { + // TODO: implement dispose + super.dispose(); + inputController.dispose(); + } + + @override + Widget build(BuildContext context) { + return Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(16) + ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + SizedBox(height: 16), + Padding( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 12), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text(widget.selectedPlan, + style: TextStyle( + fontSize: 20, + fontWeight: FontWeight.w700, + + ), + ), + Row( + children: [ + Icon(Icons.change_circle_outlined, color: ColorPalette.primary, size: 20), + SizedBox(width: 4), + Text('Change', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.w600, + color: ColorPalette.primary + ), + ) + ], + ) + ], + ), + TextField( + controller: inputController, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 28, + fontWeight: FontWeight.w600, + color: ColorPalette.slate800 + ), + keyboardType: TextInputType.number, + onChanged: (value) { + value = value.replaceAll('Rp ', '').replaceAll('.', ''); + double parseValue = double.parse(value); + if(value.isNotEmpty){ + inputController.text = NumberFormatter.numberCurrency(parseValue, 'Rp ', 'id_ID', decimalDigits: 0); + }else{ + inputController.text = NumberFormatter.numberCurrency(0, 'Rp ', 'id_ID', decimalDigits: 0); + } + }, + decoration: InputDecoration( + enabledBorder: UnderlineInputBorder( + borderSide: BorderSide( + color: ColorPalette.primary, + width: 2 + ), + ) + ), + ), + SizedBox(height: 12), + Text('Minimum Budget Rp1,000,000', + style: TextStyle( + color: ColorPalette.slate400, + fontSize: 16, + fontWeight: FontWeight.w600 + ), + ), + SizedBox(height: 16), + NumericPad(onNumberSelected: (p0) { + String checkIsZeroInput = inputController.text.replaceAll('Rp ', '').replaceAll(',', ''); + String getNumeric = p0; + if(p0.isNotEmpty){ + if(checkIsZeroInput != '0'){ + getNumeric = checkIsZeroInput + getNumeric; + } + }else{ + getNumeric = checkIsZeroInput.substring(0, checkIsZeroInput.length - 1); + } + String formatNumeric = NumberFormatter.numberCurrency( + double.parse(getNumeric), 'Rp ', 'id_ID', decimalDigits: 0).replaceAll('.', ','); + inputController.text = formatNumeric; + }), + SizedBox(height: 8), + ButtonView( + name: 'Next', + onPressed: () { + widget.nextMove(inputController.text); + }, + width: SizeConfig.width, + heightWrapContent: true, + contentPadding: EdgeInsets.symmetric(vertical: 16), + marginVertical: 0, + ) + ], + ), + ), + ], + ), + );; + } +} diff --git a/lib/application/component/subscribe/other_plan_view.dart b/lib/application/component/subscribe/other_plan_view.dart new file mode 100644 index 0000000..60bff7a --- /dev/null +++ b/lib/application/component/subscribe/other_plan_view.dart @@ -0,0 +1,182 @@ +import 'package:cims_apps/application/assets/path_assets.dart'; +import 'package:cims_apps/application/component/button/button_view.dart'; +import 'package:cims_apps/application/component/custom_app_bar/custom_app_bar.dart'; +import 'package:cims_apps/application/component/image/image_view.dart'; +import 'package:cims_apps/application/component/text_form/text_form_view.dart'; +import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/core/utils/size_config.dart'; +import 'package:flutter/material.dart'; + +class Plan { + String img, name; + + Plan(this.img, this.name); +} + +class OtherPlanView extends StatefulWidget { + final void Function(String value) selectedPlan; + const OtherPlanView({super.key, required this.selectedPlan}); + + @override + State createState() => _OtherPlanViewState(); +} + +class _OtherPlanViewState extends State { + TextEditingController createController = TextEditingController(); + Plan selectedPlan = Plan('', ''); + + List listPlan = [ + Plan(PathAssets.iconToga, 'Education'), + Plan(PathAssets.iconCake, 'Marriage'), + Plan(PathAssets.iconHouse, 'Home'), + Plan(PathAssets.iconTicket, 'Entertainment'), + Plan(PathAssets.iconGadget, 'Gadget'), + Plan(PathAssets.iconMarket, 'Business'), + Plan(PathAssets.iconBag, 'Fashion'), + Plan(PathAssets.iconCart, 'Shop'), + Plan(PathAssets.iconCar, 'Vehicle'), + Plan(PathAssets.iconPlane, 'Holiday'), + Plan(PathAssets.iconCreatePlan, 'Create Plan'), + ]; + + @override + void initState() { + // TODO: implement initState + super.initState(); + } + + @override + void dispose() { + // TODO: implement dispose + super.dispose(); + createController.dispose(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: CustomAppBar( + height: 70, + title: 'Other Plan' + ), + body: GridView( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 32), + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3), + children: listPlan.map((e) => cardPlan(e)).toList(), + ), + bottomNavigationBar: Container( + height: 110, + padding: EdgeInsets.symmetric(horizontal: 24), + child: ButtonView( + name: 'Select', + disabled: !(selectedPlan.img != ''), + onPressed: () { + Navigator.pop(context); + widget.selectedPlan(selectedPlan.name); + }, + heightWrapContent: true, + width: SizeConfig.width, + contentPadding: EdgeInsets.symmetric(vertical: 12), + textColor: selectedPlan.img == '' ? ColorPalette.slate500 : ColorPalette.white, + disabledBgColor: ColorPalette.slate200, + backgroundColor: ColorPalette.primary, + ), + ), + ); + } + + Widget cardPlan(Plan plan) { + return GestureDetector( + onTap: () { + if(plan.name == 'Create Plan'){ + showModalBottomSheet( + context: context, + builder: (context) => modalCreatePlan(), + ); + } + setState(() { + selectedPlan = plan; + }); + }, + child: Container( + padding: EdgeInsets.symmetric(horizontal: 16, vertical: 8), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all(color: selectedPlan == plan ? ColorPalette.primary : Colors.transparent) + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + width: SizeConfig.width * 0.12, + height: SizeConfig.width * 0.12, + padding: EdgeInsets.all(12), + alignment: Alignment.center, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(8), + color: ColorPalette.blue200.withOpacity(0.5) + ), + child: ImageView(image: plan.img) + ), + SizedBox(height: 12), + Text(plan.name, + style: TextStyle( + color: selectedPlan == plan ? ColorPalette.primary : ColorPalette.slate800, + fontWeight: FontWeight.w600 + ), + ) + ], + ), + ), + ); + } + + Widget modalCreatePlan() { + return Container( + padding: EdgeInsets.all(24), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text('Create your plan', + style: TextStyle( + fontWeight: FontWeight.w600, + color: ColorPalette.slate800, + fontSize: 16 + ), + ), + GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.close_rounded), + ) + ], + ), + TextFormView( + name: 'Objective Name', + ctrl: createController, + ), + SizedBox(height: 24), + ButtonView( + name: 'Select', + marginVertical: 0, + disabled: !(createController.text != ''), + onPressed: () { + Navigator.of(context)..pop()..pop(); + widget.selectedPlan(selectedPlan.name); + }, + heightWrapContent: true, + width: SizeConfig.width, + contentPadding: EdgeInsets.symmetric(vertical: 16), + textColor: createController.text == '' ? ColorPalette.slate500 : ColorPalette.white, + disabledBgColor: ColorPalette.slate200, + backgroundColor: ColorPalette.primary, + ), + ], + ), + ); + } +} diff --git a/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_total_product.dart b/lib/application/component/subscribe/total_payment_view.dart similarity index 52% rename from lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_total_product.dart rename to lib/application/component/subscribe/total_payment_view.dart index 57c55a8..634be7f 100644 --- a/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_total_product.dart +++ b/lib/application/component/subscribe/total_payment_view.dart @@ -1,21 +1,33 @@ import 'package:cims_apps/application/component/button/button_view.dart'; import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/core/route/route.dart'; import 'package:cims_apps/core/utils/number_formatter.dart'; -import 'package:cims_apps/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_options_product.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view/step_subscribe/payment_method_view.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; import 'package:flutter/material.dart'; -class ResultTotalProduct extends StatelessWidget { +class TotalPaymentView extends StatefulWidget { final int totalInvest; final List listProduct; - const ResultTotalProduct({super.key, required this.listProduct, required this.totalInvest}); + const TotalPaymentView({ + super.key, + required this.listProduct, + required this.totalInvest, + }); + + @override + State createState() => _TotalPaymentViewState(); +} + +class _TotalPaymentViewState extends State { + bool isAgreement = false; @override Widget build(BuildContext context) { - return Container( decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.circular(16) + color: Colors.white, + borderRadius: BorderRadius.circular(16) ), child: Column( mainAxisSize: MainAxisSize.min, @@ -25,7 +37,7 @@ class ResultTotalProduct extends StatelessWidget { child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - Text('Your Investment Today', + const Text('Your Investment Today', style: TextStyle( color: ColorPalette.slate800, fontWeight: FontWeight.w600, @@ -33,92 +45,92 @@ class ResultTotalProduct extends StatelessWidget { ), ), GestureDetector( - onTap: () => Navigator.pop(context), - child: Icon(Icons.close_rounded) + onTap: () => Navigator.pop(context), + child: const Icon(Icons.close_rounded) ) ], ), ), - ...listProduct.asMap().entries.map((e) { + ...widget.listProduct.asMap().entries.map((e) { return Container( - padding: EdgeInsets.only(left: 16, right: 24, bottom: 16, top: 16), + padding: const EdgeInsets.only(left: 16, right: 24, bottom: 16, top: 16), decoration: BoxDecoration( - border: Border( - left: BorderSide( - color: ColorPalette.investTypeColor[e.value.type]!, - width: 8, + border: Border( + left: BorderSide( + width: 8, + color: ColorPalette.investTypeColor[e.value.type]! + ) ) - ) ), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Expanded( - flex: 5, - child: Text(e.value.name, - style: TextStyle( - color: ColorPalette.slate400, - fontWeight: FontWeight.w600, - fontSize: 16 - ), - ) + flex: 5, + child: Text(e.value.name ?? '', + style: const TextStyle( + color: ColorPalette.slate400, + fontWeight: FontWeight.w600, + fontSize: 16 + ), + ) ), Expanded( - flex: 7, - child: Text( - NumberFormatter.numberCurrency(totalInvest / e.value.totalPercent, 'Rp ', 'id_ID'), - textAlign: TextAlign.end, - style: TextStyle( - fontWeight: FontWeight.w700, - fontSize: 18, - color: ColorPalette.slate800 - ), - ) + flex: 7, + child: Text( + NumberFormatter.numberCurrency(widget.totalInvest * e.value.totalPercent!, 'Rp ', 'id_ID'), + textAlign: TextAlign.end, + style: const TextStyle( + fontWeight: FontWeight.w700, + fontSize: 18, + color: ColorPalette.slate800 + ), + ) ) ], ), ); }).toList(), - SizedBox(height: 16), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 24), + const SizedBox(height: 16), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 24), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Text('Purchase Commission', - style: TextStyle( - color: ColorPalette.slate400, - fontWeight: FontWeight.w600, - fontSize: 16 - ), - ), - Text('Free', - style: TextStyle( - color: ColorPalette.primary, - fontSize: 18, - fontWeight: FontWeight.w700 - ), - ) - ], - ), - ), - SizedBox(height: 16,), - Container( - color: ColorPalette.slate200.withOpacity(0.5), - padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text('Total', style: TextStyle( color: ColorPalette.slate400, fontWeight: FontWeight.w600, fontSize: 16 ), ), - Text(NumberFormatter.numberCurrency(totalInvest, 'Rp ', 'id_ID'), - textAlign: TextAlign.end, + Text('Free', style: TextStyle( + color: ColorPalette.primary, + fontSize: 18, + fontWeight: FontWeight.w700 + ), + ) + ], + ), + ), + const SizedBox(height: 16,), + Container( + color: ColorPalette.slate200.withOpacity(0.5), + padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const Text('Total', + style: TextStyle( + color: ColorPalette.slate400, + fontWeight: FontWeight.w600, + fontSize: 16 + ), + ), + Text(NumberFormatter.numberCurrency(widget.totalInvest, 'Rp ', 'id_ID'), + textAlign: TextAlign.end, + style: const TextStyle( fontWeight: FontWeight.w700, fontSize: 18, color: ColorPalette.slate800 @@ -133,16 +145,16 @@ class ResultTotalProduct extends StatelessWidget { child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - Text('Total Payment', + const Text('Total Payment', style: TextStyle( color: ColorPalette.slate400, fontWeight: FontWeight.w600, fontSize: 16 ), ), - Text(NumberFormatter.numberCurrency(totalInvest, 'Rp ', 'id_ID'), + Text(NumberFormatter.numberCurrency(widget.totalInvest, 'Rp ', 'id_ID'), textAlign: TextAlign.end, - style: TextStyle( + style: const TextStyle( fontWeight: FontWeight.w700, fontSize: 18, color: ColorPalette.slate800 @@ -152,13 +164,15 @@ class ResultTotalProduct extends StatelessWidget { ), ), ButtonView( - disabled: true, + disabled: !isAgreement, name: 'Subscribe Now', onPressed: () { - + routePush(context, page: PaymentMethodView( + totalInvest: widget.totalInvest, + )); }, disabledBgColor: ColorPalette.slate200.withOpacity(0.5), - textColor: ColorPalette.slate400, + textColor: isAgreement ? Colors.white : ColorPalette.slate400, textWeight: FontWeight.w700, textSize: 20, backgroundColor: ColorPalette.primary, @@ -169,29 +183,48 @@ class ResultTotalProduct extends StatelessWidget { } Widget buttonAgreement() { + bool isAgree = isAgreement; return Padding( padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), child: Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ - SizedBox( - height: 24, - width: 24, - child: Radio( - value: false, - groupValue: false, - onChanged: (value) { - - }, - activeColor: ColorPalette.primary, + GestureDetector( + onTap: () { + setState(() { + isAgreement = !isAgreement; + }); + }, + child: AnimatedContainer( + margin: const EdgeInsets.only(top: 4), + duration: const Duration(milliseconds: 200), + height: 16, + width: 16, + padding: const EdgeInsets.all(1), + alignment: Alignment.center, + decoration: BoxDecoration( + shape: BoxShape.circle, + border: Border.all( + color: isAgree ? ColorPalette.primary : ColorPalette.slate200 + ) + ), + child: AnimatedContainer( + duration: const Duration(milliseconds: 200), + child: Container( + decoration: BoxDecoration( + color: isAgree ? ColorPalette.primary : ColorPalette.white, + shape: BoxShape.circle + ), + ), + ), ), ), - SizedBox(width: 12,), + const SizedBox(width: 12,), Expanded( child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text('I agree to buy the mutual fund on this page and have read and agreed to all the contents of the Prospectus and summary information and understand the risks of my investment decision.', + const Text('I agree to buy the mutual fund on this page and have read and agreed to all the contents of the Prospectus and summary information and understand the risks of my investment decision.', style: TextStyle( fontSize: 16, fontWeight: FontWeight.w600, @@ -202,7 +235,7 @@ class ResultTotalProduct extends StatelessWidget { onTap: () { }, - child: Text('Read More', + child: const Text('Read More', style: TextStyle( fontSize: 16, fontWeight: FontWeight.w600, @@ -218,4 +251,4 @@ class ResultTotalProduct extends StatelessWidget { ), ); } -} +} \ No newline at end of file diff --git a/lib/application/component/success_view.dart b/lib/application/component/success_view.dart new file mode 100644 index 0000000..7541243 --- /dev/null +++ b/lib/application/component/success_view.dart @@ -0,0 +1,52 @@ +import 'package:cims_apps/application/component/button/button_view.dart'; +import 'package:cims_apps/application/component/image/image_view.dart'; +import 'package:cims_apps/core/utils/size_config.dart'; +import 'package:flutter/material.dart'; + +class SuccessView extends StatelessWidget { + final String img; + final String textTitle; + final Widget? subtitle; + final void Function() nextRoute; + const SuccessView({super.key, + required this.img, + required this.textTitle, + required this.subtitle, + required this.nextRoute + }); + + @override + Widget build(BuildContext context) { + return Scaffold( + body: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + ImageView(image: img, width: SizeConfig.width * .8,), + Text(textTitle, + style: TextStyle( + fontWeight: FontWeight.w700, + fontSize: 28, + ), + ), + subtitle ?? SizedBox() + ], + ), + ), + bottomNavigationBar: Container( + padding: EdgeInsets.all(24), + height: 110, + width: SizeConfig.width, + child: ButtonView( + name: 'Done', + onPressed: nextRoute, + marginVertical: 0, + heightWrapContent: true, + width: SizeConfig.width, + textSize: 20, + contentPadding: EdgeInsets.symmetric(vertical: 12), + ), + ), + ); + } +} diff --git a/lib/application/component/text_form/text_form_view.dart b/lib/application/component/text_form/text_form_view.dart index 6bf6db6..77a0340 100644 --- a/lib/application/component/text_form/text_form_view.dart +++ b/lib/application/component/text_form/text_form_view.dart @@ -5,6 +5,7 @@ import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; class TextFormView extends StatelessWidget { final String name; + final double nameSize; final String? helperText; final String? initialValue; final VoidCallback? onTap; @@ -40,6 +41,7 @@ class TextFormView extends StatelessWidget { TextFormView( {Key? key, required this.name, + this.nameSize = 16, this.helperText, this.onTap, this.fontColorDisabled, @@ -97,17 +99,17 @@ class TextFormView extends StatelessWidget { children: [ Text( name, - style: const TextStyle( - fontSize: 16, + style: TextStyle( + fontSize: nameSize, fontWeight: FontWeight.w600, color: ColorPalette.slate800, ), ), suffixLable ?? - const Text( + Text( "", style: TextStyle( - fontSize: 16, + fontSize: nameSize, color: Colors.red, ), ), diff --git a/lib/application/theme/color_palette.dart b/lib/application/theme/color_palette.dart index 22711ea..992d6d5 100644 --- a/lib/application/theme/color_palette.dart +++ b/lib/application/theme/color_palette.dart @@ -75,6 +75,7 @@ class ColorPalette { static const Color backgroundBlueLight = Color(0xFFEBF3FD); static const Color blue50 = Color(0xFFEFF6FF); static const Color blue200 = Color(0xFFBFDBFE); + static const Color blue900 = Color(0xFF1E3A8A); static const Color slate50 = Color(0xFFF8FAFC); static const Color slate200 = Color(0xFFE2E8F0); static const Color slate300 = Color(0xFFCBD5E1); diff --git a/lib/features/auth/login/view/password_view.dart b/lib/features/auth/login/view/password_view.dart index a5ea828..5f6906a 100644 --- a/lib/features/auth/login/view/password_view.dart +++ b/lib/features/auth/login/view/password_view.dart @@ -65,6 +65,7 @@ class PasswordView extends StatelessWidget { name: 'Confirm', heightWrapContent: true, width: SizeConfig.width, + textSize: 18, marginVertical: 0, contentPadding: EdgeInsets.symmetric(horizontal: 16, vertical: 12), onPressed: nextStep, diff --git a/lib/features/bottom_navigation_view.dart b/lib/features/bottom_navigation_view.dart index 46cfca6..fdd1da2 100644 --- a/lib/features/bottom_navigation_view.dart +++ b/lib/features/bottom_navigation_view.dart @@ -50,28 +50,25 @@ class _BottomNavigationViewState extends State { ), ]; - return ChangeNotifierProvider( - create: (context) => PlanViewModel(), - child: Scaffold( - body: listWidget[_selectedIndex], - bottomNavigationBar: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: BottomNavigationBar( - elevation: 0, - onTap: (value) { - setState(() { - _selectedIndex = value; - }); - }, - currentIndex: _selectedIndex, - items: listNavigation, - type: BottomNavigationBarType.fixed, - showUnselectedLabels: true, - selectedItemColor: ColorPalette.primary, - unselectedItemColor: Colors.black, - selectedLabelStyle: const TextStyle(color: ColorPalette.primary), - unselectedLabelStyle: const TextStyle(color: Colors.black), - ), + return Scaffold( + body: listWidget[_selectedIndex], + bottomNavigationBar: Padding( + padding: const EdgeInsets.symmetric(vertical: 12), + child: BottomNavigationBar( + elevation: 0, + onTap: (value) { + setState(() { + _selectedIndex = value; + }); + }, + currentIndex: _selectedIndex, + items: listNavigation, + type: BottomNavigationBarType.fixed, + showUnselectedLabels: true, + selectedItemColor: ColorPalette.primary, + unselectedItemColor: Colors.black, + selectedLabelStyle: const TextStyle(color: ColorPalette.primary), + unselectedLabelStyle: const TextStyle(color: Colors.black), ), ), ); diff --git a/lib/features/dashboard/dashboard_account/view/homepage/homepage_view.dart b/lib/features/dashboard/dashboard_account/view/homepage/homepage_view.dart index 0e81a6d..463669b 100644 --- a/lib/features/dashboard/dashboard_account/view/homepage/homepage_view.dart +++ b/lib/features/dashboard/dashboard_account/view/homepage/homepage_view.dart @@ -228,7 +228,7 @@ class _HomeViewState extends State { children: listPortofolioType.asMap().entries.map((e) { return GestureDetector( onTap: () { - routePush(context, page: InvestTypeView(e.value.name)); + routePush(context, page: InvestTypeView(title: e.value.name)); }, child: Container( color: Colors.white, diff --git a/lib/features/dashboard/dashboard_account/view/invest_type/invest_type_view.dart b/lib/features/dashboard/dashboard_account/view/invest_type/invest_type_view.dart index 0ea8805..ea362ab 100644 --- a/lib/features/dashboard/dashboard_account/view/invest_type/invest_type_view.dart +++ b/lib/features/dashboard/dashboard_account/view/invest_type/invest_type_view.dart @@ -6,21 +6,14 @@ import 'package:cims_apps/application/theme/color_palette.dart'; import 'package:cims_apps/core/route/route.dart'; import 'package:cims_apps/core/utils/number_formatter.dart'; import 'package:cims_apps/core/utils/size_config.dart'; -import 'package:cims_apps/features/dashboard/dashboard_account/view/product/product_view.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view/product_view.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; import 'package:flutter/material.dart'; - -class Product { - String name; - double yield; - double priceUnit; - double funds; - - Product(this.name, this.yield, this.priceUnit, this.funds); -} +import 'package:provider/provider.dart'; class InvestTypeView extends StatefulWidget { final String title; - const InvestTypeView(this.title, {super.key}); + const InvestTypeView({super.key, required this.title}); @override State createState() => _InvestTypeViewState(); @@ -29,71 +22,89 @@ class InvestTypeView extends StatefulWidget { class _InvestTypeViewState extends State { List listProduct = [ - Product('Gemilang Dana Kas Maxima', 8.17, 2600.79, 6300000), - Product('Gemilang Dana Likuid', 6.42, 1600.79, 2340000), - Product('Gemilang Income Fund', 8.17, 2600.79, 6300000) + Product(name: 'Gemilang Dana Kas Maxima', type: '', yield: 8.17, priceUnit: 2600.79, funds: 6300000), + Product(name: 'Gemilang Dana Likuid', type: '', yield: 6.42, priceUnit: 1600.79, funds: 2340000), + Product(name: 'Gemilang Income Fund', type: '', yield: 8.17, priceUnit: 2600.79, funds: 6300000) ]; + + @override + void initState() { + // TODO: implement initState + super.initState(); + listProduct = listProduct.map((e) { + e.type = widget.title; + return e; + }).toList(); + } @override Widget build(BuildContext context) { - return Scaffold( - body: SizedBox( - width: SizeConfig.width, - height: SizeConfig.height, - child: Stack( - children: [ - const ImageView(image: PathAssets.imgDashboardAccount), - Column( - children: [ - const SizedBox( - height: 50, - ), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 24), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, + return ChangeNotifierProvider( + create: (context) => ProductViewModel(), + child: Consumer( + builder: (context, provider, child) { + return Scaffold( + body: SizedBox( + width: SizeConfig.width, + height: SizeConfig.height, + child: Stack( + children: [ + const ImageView(image: PathAssets.imgDashboardAccount), + Column( children: [ - const BackButtonView(), - TextTitle(title: widget.title, color: Colors.white), - SizedBox( - width: SizeConfig.width * 0.1, - ) + const SizedBox( + height: 50, + ), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const BackButtonView(), + TextTitle(title: widget.title, color: Colors.white), + SizedBox( + width: SizeConfig.width * 0.1, + ) + ], + ), + ), + const SizedBox( + height: 24, + ), + Container( + padding: const EdgeInsets.all(24), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + color: Colors.white + ), + child: Column( + children: [ + filters(), + ListView( + shrinkWrap: true, + children: listProduct.asMap().entries.map((e) { + return GestureDetector( + onTap: () { + provider.setSelectedProduct(e.value); + routePush(context, page: ProductView(widget.title)); + }, + child: Padding( + padding: EdgeInsets.only(top: e.key != 0 ? 24 : 0), + child: cardProduct(e.value), + ), + ); + }).toList(), + ) + ], + ), + ), ], - ), - ), - const SizedBox( - height: 24, - ), - Container( - padding: const EdgeInsets.all(24), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(16), - color: Colors.white - ), - child: Column( - children: [ - filters(), - ListView( - shrinkWrap: true, - children: listProduct.asMap().entries.map((e) { - return GestureDetector( - onTap: () { - routePush(context, page: ProductView(widget.title)); - }, - child: Padding( - padding: EdgeInsets.only(top: e.key != 0 ? 24 : 0), - child: cardProduct(e.value), - ), - ); - }).toList(), - ) - ], - ), - ), - ], - ) - ], - ), + ) + ], + ), + ), + ); + } ), ); } @@ -158,7 +169,7 @@ class _InvestTypeViewState extends State { ), Expanded( child: Text( - product.name, + product.name ?? '', style: const TextStyle( fontWeight: FontWeight.bold, fontSize: 18 diff --git a/lib/features/dashboard/dashboard_account/view/plan/view/plan_view.dart b/lib/features/dashboard/dashboard_account/view/plan/view/plan_view.dart index c5caad2..664a044 100644 --- a/lib/features/dashboard/dashboard_account/view/plan/view/plan_view.dart +++ b/lib/features/dashboard/dashboard_account/view/plan/view/plan_view.dart @@ -1,6 +1,7 @@ import 'package:cims_apps/application/component/button/button_view.dart'; import 'package:cims_apps/application/component/custom_app_bar/custom_app_bar.dart'; -import 'package:cims_apps/application/component/goal_investing_view.dart'; +import 'package:cims_apps/application/component/subscribe/goal_investing_view.dart'; +import 'package:cims_apps/application/component/subscribe/input_investment_view.dart'; import 'package:cims_apps/application/component/numeric_pad/numeric_pad.dart'; import 'package:cims_apps/application/component/risk_profile.dart'; import 'package:cims_apps/application/component/text_form/text_form_view.dart'; @@ -22,6 +23,13 @@ class PlanView extends StatefulWidget { class _PlanViewState extends State { TextEditingController inputController = TextEditingController(); + @override + void initState() { + // TODO: implement initState + inputController.text = 'Rp 0'; + super.initState(); + } + @override void dispose() { // TODO: implement dispose @@ -103,101 +111,13 @@ class _PlanViewState extends State { ), ), Divider(color: ColorPalette.slate200, height: 1), - Padding( - padding: EdgeInsets.symmetric(horizontal: 24, vertical: 12), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text(text, - style: TextStyle( - fontSize: 20, - fontWeight: FontWeight.w700, - - ), - ), - Row( - children: [ - Icon(Icons.change_circle_outlined, color: ColorPalette.primary, size: 20), - SizedBox(width: 4), - Text('Change', - style: TextStyle( - fontSize: 16, - fontWeight: FontWeight.w600, - color: ColorPalette.primary - ), - ) - ], - ) - ], - ), - TextField( - controller: inputController, - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 28, - fontWeight: FontWeight.w600, - color: ColorPalette.slate800 - ), - keyboardType: TextInputType.number, - onChanged: (value) { - value = value.replaceAll('Rp ', '').replaceAll('.', ''); - double parseValue = double.parse(value); - if(value.isNotEmpty){ - inputController.text = NumberFormatter.numberCurrency(parseValue, 'Rp ', 'id_ID', decimalDigits: 0); - }else{ - inputController.text = NumberFormatter.numberCurrency(0, 'Rp ', 'id_ID', decimalDigits: 0); - } - }, - decoration: InputDecoration( - enabledBorder: UnderlineInputBorder( - borderSide: BorderSide( - color: ColorPalette.primary, - width: 2 - ), - ) - ), - ), - SizedBox(height: 12), - Text('Minimum Budget Rp1,000,000', - style: TextStyle( - color: ColorPalette.slate400, - fontSize: 16, - fontWeight: FontWeight.w600 - ), - ), - SizedBox(height: 16), - NumericPad(onNumberSelected: (p0) { - String checkIsZeroInput = inputController.text.replaceAll('Rp ', '').replaceAll(',', ''); - String getNumeric = p0; - if(p0.isNotEmpty){ - if(checkIsZeroInput != '0'){ - getNumeric = checkIsZeroInput + getNumeric; - } - }else{ - getNumeric = checkIsZeroInput.substring(0, checkIsZeroInput.length - 1); - } - String formatNumeric = NumberFormatter.numberCurrency( - double.parse(getNumeric), 'Rp ', 'id_ID', decimalDigits: 0).replaceAll('.', ','); - inputController.text = formatNumeric; - }), - SizedBox(height: 8), - ButtonView( - name: 'Next', - onPressed: () { - Navigator.pop(context); - int formatIntParse = int.parse(inputController.text.replaceAll('Rp ', '').replaceAll(',', '')); - showModalBottomSheet(context: context, builder: (context) => OptionsStartingInvest(totalInvest: formatIntParse)); - }, - width: SizeConfig.width, - heightWrapContent: true, - contentPadding: EdgeInsets.symmetric(vertical: 16), - marginVertical: 0, - ) - ], - ), + InputInvestmentView( + selectedPlan: text, + nextMove: (value) { + Navigator.pop(context); + int formatIntParse = int.parse(value.replaceAll('Rp ', '').replaceAll(',', '')); + showModalBottomSheet(context: context, builder: (context) => OptionsStartingInvest(totalInvest: formatIntParse)); + }, ), ], ), diff --git a/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_options_product.dart b/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_options_product.dart index 348f751..ad54b8c 100644 --- a/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_options_product.dart +++ b/lib/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_options_product.dart @@ -1,17 +1,12 @@ import 'package:cims_apps/application/assets/path_assets.dart'; import 'package:cims_apps/application/component/button/button_view.dart'; import 'package:cims_apps/application/component/image/image_view.dart'; +import 'package:cims_apps/application/component/subscribe/total_payment_view.dart'; import 'package:cims_apps/application/theme/color_palette.dart'; import 'package:cims_apps/core/utils/size_config.dart'; -import 'package:cims_apps/features/dashboard/dashboard_account/view/plan/view/step_invest_plan/result_total_product.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; import 'package:flutter/material.dart'; -class Product { - String name, type; - double totalPercent; - - Product(this.name, this.type, this.totalPercent); -} class ResultOptionsProduct extends StatelessWidget { final int totalInvest; const ResultOptionsProduct({super.key, required this.totalInvest}); @@ -19,9 +14,9 @@ class ResultOptionsProduct extends StatelessWidget { @override Widget build(BuildContext context) { List listProduct = [ - Product('Gemilang Dana Kas Maxima', 'Money Market', 0.7), - Product('Gemilang Dana Likuid', 'Bonds', 0.2), - Product('Gemilang Kas 2 Kelas A', 'Shares', 0.1) + Product(name: 'Gemilang Dana Kas Maxima', type: 'Money Market', totalPercent: 0.7), + Product(name: 'Gemilang Dana Likuid', type: 'Bonds', totalPercent: 0.2), + Product(name: 'Gemilang Kas 2 Kelas A', type: 'Shares', totalPercent: 0.1) ]; return Container( @@ -44,7 +39,7 @@ class ResultOptionsProduct extends StatelessWidget { color: ColorPalette.slate800 ), ), - const Icon(Icons.close_rounded, color: ColorPalette.slate400) + Icon(Icons.close_rounded, color: ColorPalette.slate400) ], ), const SizedBox(height: 32), @@ -58,8 +53,8 @@ class ResultOptionsProduct extends StatelessWidget { color: Colors.white, border: Border.all(color: ColorPalette.slate200), borderRadius: BorderRadius.circular(12), - boxShadow: [ - const BoxShadow( + boxShadow: const [ + BoxShadow( color: Color(0XFF1E293B0A) ) ] @@ -76,10 +71,10 @@ class ResultOptionsProduct extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text(e.value.name, + Text(e.value.name ?? '', style: const TextStyle( - fontWeight: FontWeight.w700, - color: ColorPalette.slate800 + fontWeight: FontWeight.w700, + color: ColorPalette.slate800, ), ), const SizedBox(height: 4,), @@ -90,17 +85,18 @@ class ResultOptionsProduct extends StatelessWidget { color: ColorPalette.investTypeBgColor[e.value.type], borderRadius: BorderRadius.circular(40) ), - child: Text(e.value.type, + child: Text(e.value.type ?? '', style: TextStyle( - color: ColorPalette.investTypeColor[e.value.type], - fontWeight: FontWeight.w600 + color: ColorPalette.investTypeColor[e.value.type], + fontWeight: FontWeight.w600, + fontSize: 12 ), ), ) ], ), ), - Text('${(e.value.totalPercent * 100).toInt()} %', + Text('${(e.value.totalPercent! * 100).toInt()} %', style: const TextStyle( fontWeight: FontWeight.w700, fontSize: 16, @@ -135,11 +131,14 @@ class ResultOptionsProduct extends StatelessWidget { ButtonView( name: 'Next', onPressed: () { - Navigator.pop(context); showModalBottomSheet( context: context, isScrollControlled: true, - builder: (context) => ResultTotalProduct(listProduct: listProduct, totalInvest: totalInvest) + builder: (context) => + TotalPaymentView( + listProduct: listProduct, + totalInvest: totalInvest, + ) ); }, width: SizeConfig.width, diff --git a/lib/features/dashboard/dashboard_account/view/plan/view_model/plan_view_model.dart b/lib/features/dashboard/dashboard_account/view/plan/view_model/plan_view_model.dart index 634e624..2409e63 100644 --- a/lib/features/dashboard/dashboard_account/view/plan/view_model/plan_view_model.dart +++ b/lib/features/dashboard/dashboard_account/view/plan/view_model/plan_view_model.dart @@ -1,11 +1,6 @@ - +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; import 'package:flutter/material.dart'; class PlanViewModel extends ChangeNotifier { - bool isAgreement = false; - - void setAgreement() { - isAgreement = !isAgreement; - notifyListeners(); - } + List listProduct = []; } \ No newline at end of file diff --git a/lib/features/dashboard/dashboard_account/view/product/product_chart_view.dart b/lib/features/dashboard/dashboard_account/view/product/view/product_chart_view.dart similarity index 100% rename from lib/features/dashboard/dashboard_account/view/product/product_chart_view.dart rename to lib/features/dashboard/dashboard_account/view/product/view/product_chart_view.dart diff --git a/lib/features/dashboard/dashboard_account/view/product/product_view.dart b/lib/features/dashboard/dashboard_account/view/product/view/product_view.dart similarity index 90% rename from lib/features/dashboard/dashboard_account/view/product/product_view.dart rename to lib/features/dashboard/dashboard_account/view/product/view/product_view.dart index 3c30642..40438e1 100644 --- a/lib/features/dashboard/dashboard_account/view/product/product_view.dart +++ b/lib/features/dashboard/dashboard_account/view/product/view/product_view.dart @@ -9,9 +9,12 @@ import 'package:cims_apps/application/component/text_title/text_title.dart'; import 'package:cims_apps/application/theme/color_palette.dart'; import 'package:cims_apps/core/utils/number_formatter.dart'; import 'package:cims_apps/core/utils/size_config.dart'; -import 'package:cims_apps/features/dashboard/dashboard_account/view/product/product_chart_view.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view/product_chart_view.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view/step_subscribe/select_goal_investing.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; import 'package:flutter/material.dart'; import 'package:group_button/group_button.dart'; +import 'package:provider/provider.dart'; class Time { int value; @@ -97,58 +100,65 @@ class _ProductViewState extends State { @override Widget build(BuildContext context) { - return Scaffold( - body: SizedBox( - child: Stack( - children: [ - const ImageView(image: PathAssets.imgDashboardAccount), - Column( - children: [ - const SizedBox( - height: 50, - ), - const Padding( - padding: EdgeInsets.symmetric(horizontal: 24), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - BackButtonView(), - Wrap( - spacing: 12, - children: [ - Icon(Icons.search_rounded, color: ColorPalette.blue200, size: 32), - Icon(Icons.file_download_outlined, color: ColorPalette.blue200, size: 32), - Icon(Icons.star_outline_rounded, color: ColorPalette.blue200, size: 32) - ], - ) - ], + return ChangeNotifierProvider( + create: (context) => ProductViewModel(), + child: Scaffold( + body: SizedBox( + child: Stack( + children: [ + const ImageView(image: PathAssets.imgDashboardAccount), + Column( + children: [ + const SizedBox( + height: 50, ), - ), - const SizedBox( - height: 24, - ), - headContainer(), - const SizedBox( - height: 24, - ), - Expanded( - child: contentContainer() - ) - ], - ) - ], + const Padding( + padding: EdgeInsets.symmetric(horizontal: 24), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + BackButtonView(), + Wrap( + spacing: 12, + children: [ + Icon(Icons.search_rounded, color: ColorPalette.blue200, size: 32), + Icon(Icons.file_download_outlined, color: ColorPalette.blue200, size: 32), + Icon(Icons.star_outline_rounded, color: ColorPalette.blue200, size: 32) + ], + ) + ], + ), + ), + const SizedBox( + height: 24, + ), + headContainer(), + const SizedBox( + height: 24, + ), + Expanded( + child: contentContainer() + ) + ], + ) + ], + ), ), - ), - bottomNavigationBar: Container( - height: SizeConfig.height * .1, - padding: const EdgeInsets.symmetric(horizontal: 24), - child: ButtonView( - name: 'Buy', - onPressed: () { - - }, - height: SizeConfig.height * 0.06, - marginVertical: 16, + bottomNavigationBar: Container( + height: SizeConfig.height * .1, + padding: const EdgeInsets.symmetric(horizontal: 24), + child: ButtonView( + name: 'Subscribe', + onPressed: () { + showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (context) => SelectGoalInvesting(), + ); + }, + height: SizeConfig.height * 0.06, + marginVertical: 16, + ), ), ), ); @@ -581,18 +591,10 @@ class _ProductViewState extends State { }, selectedMachineType ), - const Padding( - padding: EdgeInsets.only(top: 16, bottom: 8), - child: Text( - "Today's Investment Estimated Value", - style: TextStyle( - fontWeight: FontWeight.w600, - color: ColorPalette.slate800 - ), - ), - ), + SizedBox(height: 16), TextFormView( - name: '', + name: "Today's Investment Estimated Value", + nameSize: 14, ctrl: machineController, keyboardType: TextInputType.number, contentPadding: EdgeInsets.all(12), diff --git a/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/payment_method_view.dart b/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/payment_method_view.dart new file mode 100644 index 0000000..5b93729 --- /dev/null +++ b/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/payment_method_view.dart @@ -0,0 +1,282 @@ +import 'dart:ffi'; + +import 'package:cims_apps/application/assets/path_assets.dart'; +import 'package:cims_apps/application/component/button/button_view.dart'; +import 'package:cims_apps/application/component/custom_app_bar/custom_app_bar.dart'; +import 'package:cims_apps/application/component/modal_redirect_app.dart'; +import 'package:cims_apps/application/component/success_view.dart'; +import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/core/route/route.dart'; +import 'package:cims_apps/core/utils/number_formatter.dart'; +import 'package:cims_apps/core/utils/size_config.dart'; +import 'package:cims_apps/features/bottom_navigation_view.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class Payment { + String name; + int fee; + double? discount; + + Payment({required this.name, required this.fee, this.discount = 1}); +} + +class PaymentMethodView extends StatefulWidget { + final int totalInvest; + const PaymentMethodView({super.key, required this.totalInvest }); + + @override + State createState() => _PaymentMethodViewState(); +} + +class _PaymentMethodViewState extends State { + int selectedPayment = 0; + Payment currentPayment = Payment(name: 'Wallet Pay', fee: 2500); + List listInstantPayment = [ + Payment(name: 'Wallet Pay', fee: 2500), + Payment(name: 'Link Start', fee: 2500), + Payment(name: 'Shopping Pay', fee: 2500, discount: 0.5), + Payment(name: 'Fund', fee: 2500, discount: 0.2) + ]; + + List listTransferBank = [ + Payment(name: 'BCA', fee: 2500), + Payment(name: 'Bank Republik Indonesia', fee: 2500) + ]; + + @override + Widget build(BuildContext context) { + + return Scaffold( + appBar: const CustomAppBar( + height: 70, + title: 'Payment Method' + ), + body: SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 8), + child: Column( + children: [ + segmentTitle(Icons.bolt_rounded, 'Instant Payment'), + Wrap( + runSpacing: 16, + children: listInstantPayment.asMap().entries.map((e) { + return cardPayment(e.value, e.key); + }).toList(), + ), + const SizedBox(height: 8), + segmentTitle(Icons.account_balance_outlined, 'Transfer Bank'), + Wrap( + runSpacing: 16, + children: listTransferBank.asMap().entries.map((e) { + return cardPayment(e.value, e.key + (listInstantPayment.length)); + }).toList(), + ), + SizedBox(height: 16,) + ], + ), + ), + bottomNavigationBar: Container( + padding: const EdgeInsets.all(24), + child: segmentBottom(currentPayment) + ), + ); + } + + Widget segmentTitle(IconData? icon, String title) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 16), + child: Row( + children: [ + Icon(icon, color: ColorPalette.primary), + const SizedBox(width: 8), + Text(title, + style: const TextStyle( + color: ColorPalette.slate800, + fontWeight: FontWeight.w600, + fontSize: 16 + ), + ) + ], + ), + ); + } + + Widget cardPayment(Payment value, int index) { + return GestureDetector( + onTap: () { + setState(() { + selectedPayment = index; + currentPayment = value; + }); + }, + child: AnimatedContainer( + duration: const Duration(milliseconds: 200), + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(14), + border: Border.all(color: selectedPayment == index ? ColorPalette.primary : ColorPalette.slate200) + ), + child: Column( + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(value.name, + style: const TextStyle( + fontSize: 16 + ), + ), + RichText( + text: TextSpan( + text: 'Payment fee ', + style: const TextStyle( + fontFamily: 'Manrope', + color: ColorPalette.slate400, + ), + children: [ + TextSpan( + text: '${NumberFormatter.numberCurrency(value.fee, 'Rp ', 'id_ID', decimalDigits: 0)} ', + style: TextStyle( + decoration: value.discount != 1 ? TextDecoration.lineThrough : TextDecoration.none, + fontFamily: 'Manrope', + color: ColorPalette.slate400, + ), + ), + if(value.discount != 1)...[ + TextSpan( + text: value.discount == 0 ? 'Free' : NumberFormatter.numberCurrency(value.fee * value.discount!, 'Rp ', 'id_ID', decimalDigits: 0), + style: const TextStyle( + fontFamily: 'Manrope', + color: ColorPalette.primary, + ), + ) + ] + ] + ) + ) + ], + ) + ], + ), + AnimatedContainer( + duration: const Duration(milliseconds: 200), + width: 16, + height: 16, + alignment: Alignment.center, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: selectedPayment == index ? ColorPalette.primary : Colors.white, + border: Border.all(color: selectedPayment == index ? ColorPalette.primary : ColorPalette.slate200, width: 1.5) + ), + child: const Icon(Icons.done_rounded, color: Colors.white, size: 12), + ) + ], + ) + ], + ), + ), + ); + } + + Widget segmentBottom(Payment currentPayment) { + return Column( + mainAxisSize: MainAxisSize.min, + children: [ + rowTotal('Total Invest', widget.totalInvest), + rowTotal('Payment Fee', (currentPayment.fee * currentPayment.discount!).toInt()), + Row( + children: [ + Expanded(child: Divider(color: ColorPalette.slate200, height: 1,)), + Icon(Icons.add, size: 10,) + ], + ), + rowTotal('Total Payment', widget.totalInvest + (currentPayment.fee * currentPayment.discount!).toInt()), + SizedBox(height: 24), + ButtonView( + name: 'Buy', + textSize: 18, + marginVertical: 0, + width: SizeConfig.width, + heightWrapContent: true, + contentPadding: EdgeInsets.symmetric(vertical: 16), + onPressed: () { + List redirect = ['Shopping Pay']; + if(redirect.contains(currentPayment.name)){ + showModalBottomSheet( + context: context, + builder: (context) { + return ModalRedirectApp(value: currentPayment.name); + }, + ); + } + routePush(context, page: SuccessView( + img: PathAssets.imgPaymentSuccess, + textTitle: 'Payment Success!', + subtitle: RichText( + text: TextSpan( + text: 'Payment With ', + style: TextStyle( + fontFamily: 'Manrope', + fontWeight: FontWeight.w600, + fontSize: 16, + color: ColorPalette.slate500 + ), + children: [ + TextSpan( + text: currentPayment.name, + style: TextStyle( + fontFamily: 'Manrope', + fontWeight: FontWeight.w700, + fontSize: 16, + color: ColorPalette.slate800 + ) + ), + TextSpan( + text: ' successful', + style: TextStyle( + fontFamily: 'Manrope', + fontWeight: FontWeight.w600, + fontSize: 16, + color: ColorPalette.slate500 + ) + ) + ] + ) + ), + nextRoute: () { + routePush(context, page: BottomNavigationView(), routeType: RouteType.pushRemove); + }, + )); + }, + ) + ], + ); + } + + Widget rowTotal(String title, int value) { + return Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text(title, + style: const TextStyle( + fontWeight: FontWeight.w600, + color: ColorPalette.slate500, + fontSize: 16 + ), + ), + Text(NumberFormatter.numberCurrency(value, 'Rp', 'id_ID', decimalDigits: 0), + style: const TextStyle( + fontWeight: FontWeight.w700, + color: ColorPalette.slate800, + fontSize: 16 + ), + ) + ], + ); + } +} diff --git a/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/select_goal_investing.dart b/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/select_goal_investing.dart new file mode 100644 index 0000000..5b3d081 --- /dev/null +++ b/lib/features/dashboard/dashboard_account/view/product/view/step_subscribe/select_goal_investing.dart @@ -0,0 +1,83 @@ +import 'package:cims_apps/application/component/subscribe/goal_investing_view.dart'; +import 'package:cims_apps/application/component/subscribe/input_investment_view.dart'; +import 'package:cims_apps/application/component/subscribe/total_payment_view.dart'; +import 'package:cims_apps/application/theme/color_palette.dart'; +import 'package:cims_apps/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class SelectGoalInvesting extends StatelessWidget { + const SelectGoalInvesting({super.key}); + + @override + Widget build(BuildContext context) { + return MultiProvider( + providers: [ + ChangeNotifierProvider(create: (context) => ProductViewModel(),) + ], + child: Consumer( + builder: (context, provider, child) { + return Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16) + ), + padding: EdgeInsets.all(24), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text('Your Goal in Investing', + style: TextStyle( + fontWeight: FontWeight.w700, + color: ColorPalette.slate800, + fontSize: 18 + ), + ), + GestureDetector( + onTap: () { + Navigator.pop(context); + }, + child: Icon(Icons.close_rounded, color: ColorPalette.slate400) + ) + ], + ), + SizedBox(height: 32), + GoalInvestingView( + onListSelected: (p0) { + Navigator.pop(context); + showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (context) { + return InputInvestmentView( + selectedPlan: p0, + nextMove: (value) { + Navigator.pop(context); + int formatIntParse = int.parse(value.replaceAll('Rp ', '').replaceAll(',', '')); + showModalBottomSheet( + context: context, + isScrollControlled: true, + builder: (context) => + TotalPaymentView( + listProduct: [ + provider.getSelectedProduct + ], + totalInvest: formatIntParse, + ) + ); + }, + ); + }, + ); + }, + ) + ], + ), + ); + } + ), + ); + } +} diff --git a/lib/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart b/lib/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart new file mode 100644 index 0000000..e7fddea --- /dev/null +++ b/lib/features/dashboard/dashboard_account/view/product/view_model/product_view_model.dart @@ -0,0 +1,27 @@ + +import 'package:flutter/material.dart'; + +class Product { + String? name, type; + double? yield; + double? priceUnit, funds, totalPercent; + + Product({this.name, this.type, this.yield, this.priceUnit, this.funds, this.totalPercent = 1}); +} + +class ProductViewModel extends ChangeNotifier { + static Product selectedProduct = Product(); + Product get getSelectedProduct => selectedProduct; + + double totalInvestment = 0; + + void setSelectedProduct(Product product) { + selectedProduct = product; + notifyListeners(); + } + + void setTotalInvestment(double value) { + totalInvestment = value; + notifyListeners(); + } +} \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart index 2755a41..06ccb22 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -39,6 +39,10 @@ class MyApp extends StatelessWidget { secondary: const Color(0xFFFECDA6), onBackground: const Color(0xFFA9A9A9), ), + bottomSheetTheme: BottomSheetThemeData( + backgroundColor: Colors.white, + surfaceTintColor: Colors.white + ) // useMaterial3: true, ), initialRoute: initialRoute,