Skip to content

Commit

Permalink
Merge pull request #60 from TEAMMatchDev/feat/#58
Browse files Browse the repository at this point in the history
[Refactor] 회원가입 관련 레이아웃 & 상태관리 리펙토링
  • Loading branch information
sujinyang00 authored Nov 7, 2023
2 parents d80c47d + f6b55b1 commit ab8c8c9
Show file tree
Hide file tree
Showing 8 changed files with 327 additions and 9 deletions.
10 changes: 9 additions & 1 deletion lib/modules/signIn/controller/login_controller.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,15 @@ class LoginController extends GetxController {
RxString userPw = ''.obs;

//비밀번호 찾을 때 입력하는 이메일
Rx<TextEditingController> findPwTextController = TextEditingController().obs;
Rx<TextEditingController> findPwEmailTextController = TextEditingController().obs;
//비밀번호 찾을 때 입력하는 인증번호
Rx<TextEditingController> findPwAuthNumTextController = TextEditingController().obs;

//새로운 비밀번호 & 비밀번호 확인
Rx<TextEditingController> newPw = TextEditingController().obs;
Rx<TextEditingController> newPwConfirm = TextEditingController().obs;



@override
void onInit() {
Expand Down
82 changes: 82 additions & 0 deletions lib/modules/signIn/view/find_pw_auth_view.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_svg/svg.dart';
import 'package:get/get.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:match/model/enum/search_status.dart';
import 'package:match/modules/signIn/view/new_pw_view.dart';
import 'package:match/modules/signUp/view/signup_user_mail_view.dart';
import 'package:match/modules/signIn/widget/login_widget.dart';
import 'package:match/util/components/gloabl_text_field.dart';
import 'package:match/util/components/global_button.dart';
import 'package:match/util/const/global_variable.dart';
import 'package:match/util/const/style/global_text_styles.dart';
import '../../../util/components/global_app_bar.dart';
import '../../../util/const/style/global_color.dart';

import 'package:kakao_flutter_sdk/kakao_flutter_sdk.dart'; //카카오 로그인
import 'package:http/http.dart' as http;
import 'dart:convert';
import 'dart:io';


import '../../../provider/routes/routes.dart';
import '../controller/login_controller.dart';

class FindPwAuthScreen extends GetView<LoginController> {
const FindPwAuthScreen({super.key});

@override
Widget build(BuildContext context){
return Scaffold(
appBar: CommonAppBar.basic("비밀번호 찾기"),
body: Column(
children: <Widget>[
Expanded(
child: Column(
children: [
SizedBox(height: 35.h),
Padding(
padding: EdgeInsets.symmetric(horizontal: 20.w),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'이메일에 전송된\n인증번호를 입력해주세요.',
style: AppTextStyles.T1Bold18,
),
SizedBox(height: 30.h),
Text(
'인증번호 입력',
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),
//TODO) 01-10 api 연결 & 입력 float 메시지
CommonInputField.findPwAuthNum(
textController : controller.findPwAuthNumTextController.value,
onChange: (value) async {
print(">>> 입력한 인증번호: $value");
}),
],
),
)
],
),
),
SizedBox(height: 8.h),
Padding(
padding: EdgeInsets.symmetric(horizontal: 20.w),
child: CommonButton.login(
text: "확인",
onTap: () async {
Get.to(NewPwScreen());
},
),
),
SizedBox(height: 24.h),
],
),
);
}

}
11 changes: 6 additions & 5 deletions lib/modules/signIn/view/find_pw_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import 'package:flutter_svg/svg.dart';
import 'package:get/get.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:match/model/enum/search_status.dart';
import 'package:match/modules/signIn/view/find_pw_auth_view.dart';
import 'package:match/modules/signUp/view/signup_user_mail_view.dart';
import 'package:match/modules/signIn/widget/login_widget.dart';
import 'package:match/util/components/gloabl_text_field.dart';
Expand All @@ -22,8 +23,8 @@ import 'dart:io';
import '../../../provider/routes/routes.dart';
import '../controller/login_controller.dart';

class FindPWScreen extends GetView<LoginController> {
const FindPWScreen({super.key});
class FindPwScreen extends GetView<LoginController> {
const FindPwScreen({super.key});

@override
Widget build(BuildContext context){
Expand Down Expand Up @@ -51,8 +52,8 @@ class FindPWScreen extends GetView<LoginController> {
),
SizedBox(height: 10.h),
//TODO) 01-08 api 연결 & 입력 float 메시지
CommonInputField.signInID(
textController : controller.findPwTextController.value,
CommonInputField.findPwAuthEmail(
textController : controller.findPwEmailTextController.value,
onChange: (value) async {
print(">>> 입력한 이메일: $value");
}),
Expand All @@ -68,7 +69,7 @@ class FindPWScreen extends GetView<LoginController> {
child: CommonButton.login(
text: "확인",
onTap: () async {
Get.back();
Get.to(FindPwAuthScreen());
},
),
),
Expand Down
2 changes: 1 addition & 1 deletion lib/modules/signIn/view/mail_login_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ class EmailLoginScreen extends GetView<LoginController> {
SizedBox(width: 10.w),
GestureDetector(
onTap: () {
Get.to(FindPWScreen());
Get.to(FindPwScreen());
},
child: Text(
"비밀번호 찾기",
Expand Down
96 changes: 96 additions & 0 deletions lib/modules/signIn/view/new_pw_view.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_svg/svg.dart';
import 'package:get/get.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:match/model/enum/search_status.dart';
import 'package:match/modules/signUp/view/signup_user_mail_view.dart';
import 'package:match/modules/signIn/widget/login_widget.dart';
import 'package:match/util/components/gloabl_text_field.dart';
import 'package:match/util/components/global_button.dart';
import 'package:match/util/const/global_variable.dart';
import 'package:match/util/const/style/global_text_styles.dart';
import '../../../util/components/global_app_bar.dart';
import '../../../util/const/style/global_color.dart';

import 'package:kakao_flutter_sdk/kakao_flutter_sdk.dart'; //카카오 로그인
import 'package:http/http.dart' as http;
import 'dart:convert';
import 'dart:io';


import '../../../provider/routes/routes.dart';
import '../controller/login_controller.dart';

class NewPwScreen extends GetView<LoginController> {
const NewPwScreen({super.key});

@override
Widget build(BuildContext context){
return Scaffold(
appBar: CommonAppBar.basic("비밀번호 찾기"),
body: Column(
children: <Widget>[
Expanded(
child: Column(
children: [
SizedBox(height: 35.h),
Padding(
padding: EdgeInsets.symmetric(horizontal: 20.w),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'새로운 비밀번호를\n입력해주세요.',
style: AppTextStyles.T1Bold18,
),
SizedBox(height: 30.h),
Text(
'새 비밀번호',
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),
//TODO) 01-08 api 연결 & 입력 float 메시지
CommonInputField.newPw(
textController : controller.newPw.value,
onChange: (value) async {
print(">>> 입력한 새로운 비밀번호: $value");
}),
SizedBox(height: 30.h),
Text(
'새 비밀번호 확인',
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),
//TODO) 01-08 api 연결 & 입력 float 메시지
CommonInputField.newPwConfirm(
textController : controller.newPwConfirm.value,
onChange: (value) async {
print(">>> 입력한 새로운 비밀번호: $value");
}),
],
),
)
],
),
),
SizedBox(height: 8.h),
Expanded(
child: Padding(
padding: EdgeInsets.only(left: 6.w, right: 20),
child: CommonButton.login(
text: "확인",
onTap: () async {
//TODO) 비밀번호 변경 api
Get.back();
},
),
),
),
SizedBox(height: 24.h),
],
),
);
}

}
1 change: 1 addition & 0 deletions lib/modules/signUp/controller/signup_controller.dart
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ class SignUpController extends GetxController {
//TODO) signUp controller
/// 회원가입 > id, pw, pw확인
Rx<TextEditingController> idTextController = TextEditingController().obs;
Rx<TextEditingController> idAuthNumTextController = TextEditingController().obs;
Rx<TextEditingController> pwTextController = TextEditingController().obs;
Rx<TextEditingController> pwConfirmTextController = TextEditingController().obs;

Expand Down
28 changes: 26 additions & 2 deletions lib/modules/signUp/view/signup_user_mail_view.dart
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,35 @@ class SignUpMailScreen extends GetView<SignUpController> {
),

SizedBox(height: 20.h),

Text(
'인증번호 입력',
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),

Row(
children: [
Expanded(
child: CommonInputField.signUpIdConfirm(
textController : controller.idAuthNumTextController.value,
onChange: (value) async {
print(">>> 입력한 이메일 인증번호: $value");
}),
),
SizedBox(width: 10.w),
certinumButton(),
],
),

SizedBox(height: 20.h),

Text(
'비밀번호',
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),
CommonInputField.signInPW(
CommonInputField.signUpPw(
textController : controller.pwTextController.value,
onChange: (value) async {
print(">>> 입력한 회원가입 pw: $value");
Expand All @@ -84,7 +107,7 @@ class SignUpMailScreen extends GetView<SignUpController> {
style: AppTextStyles.T1Bold14,
),
SizedBox(height: 10.h),
CommonInputField.signInPW(
CommonInputField.signUpPwConfirm(
textController : controller.pwConfirmTextController.value,
onChange: (value) async {
print(">>> 입력한 회원가입 확인pw: $value");
Expand All @@ -95,6 +118,7 @@ class SignUpMailScreen extends GetView<SignUpController> {
],
),
),

SizedBox(height: 8.h),
Padding(
padding: EdgeInsets.symmetric(horizontal: 20.w),
Expand Down
Loading

0 comments on commit ab8c8c9

Please sign in to comment.