Skip to content

Commit

Permalink
Merge pull request #13 from lucent-intern-org/feat/#9-add-meeting
Browse files Browse the repository at this point in the history
Feat/#9 add meeting
  • Loading branch information
rlawogns authored Aug 11, 2022
2 parents efadebf + 79915e9 commit d12ae59
Show file tree
Hide file tree
Showing 9 changed files with 620 additions and 8 deletions.
4 changes: 3 additions & 1 deletion frontend/app/lib/model/meeting.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ class Meeting {
String? endTime;
String? title;
String? content;
String? repeat;

Meeting(this.meetingId, this.roomId, this.date, this.startTime, this.endTime,
this.title, this.content);
this.title, this.content, this.repeat);
}
8 changes: 4 additions & 4 deletions frontend/app/lib/test/test_data.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ class TestData {
[],
[],
[
Meeting(0, 0, '20200803', '13:00', '14:00', '프론트 회의', '인턴회의'),
Meeting(1, 1, '20200803', '15:00', '16:00', '백엔드 회의', '인턴회의')
Meeting(0, 0, '20200803', '13:00', '14:00', '프론트 회의', '인턴회의', '반복없음'),
Meeting(1, 1, '20200803', '15:00', '16:00', '백엔드 회의', '인턴회의', '반복없음')
],
[],
[],
[],
[
Meeting(2, 2, '20200803', '13:00', '14:00', '프론트 회의', '인턴회의'),
Meeting(3, 1, '20200803', '15:00', '16:00', '백엔드 회의', '인턴회의')
Meeting(2, 2, '20200803', '13:00', '14:00', '프론트 회의', '인턴회의', '반복없음'),
Meeting(3, 1, '20200803', '15:00', '16:00', '백엔드 회의', '인턴회의', '반복없음')
],
[],
[],
Expand Down
486 changes: 486 additions & 0 deletions frontend/app/lib/view/add_meeting.dart

Large diffs are not rendered by default.

25 changes: 25 additions & 0 deletions frontend/app/lib/view/calender_view/day_calender.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import 'package:app/model/meeting.dart';
import 'package:app/provider/date_provider.dart';
import 'package:app/test/test_data.dart';
import 'package:app/view/add_meeting.dart';
import 'package:app/view/detail_meeting.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
Expand Down Expand Up @@ -175,6 +176,14 @@ class DayCalender extends StatelessWidget {
child: TextButton(
onPressed: () {
print("$index Thiel");
Navigator.push(
context,
MaterialPageRoute(
builder: ((context) =>
AddMeeting(
date:
selectDay.toString(),
))));
},
child: const SizedBox(
height: 50,
Expand Down Expand Up @@ -206,6 +215,14 @@ class DayCalender extends StatelessWidget {
child: TextButton(
onPressed: () {
print("$index Bezos");
Navigator.push(
context,
MaterialPageRoute(
builder: ((context) =>
AddMeeting(
date:
selectDay.toString(),
))));
},
child: const SizedBox(
height: 50,
Expand Down Expand Up @@ -237,6 +254,14 @@ class DayCalender extends StatelessWidget {
child: TextButton(
onPressed: () {
print("$index Musk");
Navigator.push(
context,
MaterialPageRoute(
builder: ((context) =>
AddMeeting(
date:
selectDay.toString(),
))));
},
child: const SizedBox(
height: 50,
Expand Down
12 changes: 11 additions & 1 deletion frontend/app/lib/view/calender_view/week_month_calender.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import 'package:app/model/meeting.dart';
import 'package:app/provider/date_provider.dart';
import 'package:app/test/test_data.dart';
import 'package:app/view/add_meeting.dart';
import 'package:app/view/detail_meeting.dart';
import 'package:flutter/material.dart';
import 'package:table_calendar/table_calendar.dart';
Expand Down Expand Up @@ -67,7 +68,16 @@ class _WeekMonthCalenderState extends State<WeekMonthCalender> {
Container(
//width: MediaQuery.of(context).size.width,
alignment: Alignment.centerRight,
child: IconButton(onPressed: () {}, icon: Icon(Icons.add)),
child: IconButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: ((context) => AddMeeting(
date: _selectedDay.toString(),
))));
},
icon: Icon(Icons.add)),
),
ValueListenableBuilder<List<Meeting>>(
valueListenable: _selectedEvents,
Expand Down
58 changes: 58 additions & 0 deletions frontend/app/lib/view_model/add_metting_view_model.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import 'package:app/model/meeting_form_model.dart';
import 'package:app/model/meeting.dart';
import 'package:flutter/material.dart';

class AddMettingViewModel {
Meeting? meeting;
Meeting_Form_Model addMeetingModel = Meeting_Form_Model();

TextEditingController titleController = TextEditingController();
TextEditingController contentController = TextEditingController();
TextEditingController searchController = TextEditingController();

GlobalKey<FormState> formKey = GlobalKey<FormState>(); //폼검사를 위한 키

void minusHour() {
var endi = addMeetingModel.endList.indexOf(addMeetingModel.end) - 2;
print(endi);
if (endi < 0) endi = 48 + endi;
addMeetingModel.end = addMeetingModel.endList[endi];
}

void minusMinute() {
var endi = addMeetingModel.endList.indexOf(addMeetingModel.end) - 1;
print(endi);
if (endi < 0) endi = 48 + endi;
addMeetingModel.end = addMeetingModel.endList[endi];
}

void plusMinute() {
var endi = addMeetingModel.endList.indexOf(addMeetingModel.end) + 1;
if (endi > 47) endi = endi - 48;
addMeetingModel.end = addMeetingModel.endList[endi];
}

void plusHour() {
var endi = addMeetingModel.endList.indexOf(addMeetingModel.end) + 2;
if (endi > 47) endi = endi - 48;
addMeetingModel.end = addMeetingModel.endList[endi];
}

bool addMeeting() {
var meetingId = 6;
var roomId = addMeetingModel.roomList.indexOf(addMeetingModel.room);
var date = addMeetingModel.date;
var startTime = addMeetingModel.start;
var endTime = addMeetingModel.end;
var title = titleController.text;
var content = contentController.text;
var repeat = addMeetingModel.repeat;
if (title == "" || content == "") {
return false;
}
//해당 시간에 등록 가능한가 체크
meeting = Meeting(
meetingId, roomId, date, startTime, endTime, title, content, repeat);
return true;
}
}
24 changes: 24 additions & 0 deletions frontend/app/lib/widget_style.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import 'package:flutter/material.dart';

class WidgetStyle {
InputDecoration textFieldDeco(labeltext) {
return InputDecoration(
contentPadding: EdgeInsets.fromLTRB(0, 16, 0, 0),
labelText: labeltext,
filled: true,
fillColor: Colors.grey[200],
focusedBorder: const OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(10.0)),
borderSide: BorderSide(width: 0, color: Colors.grey),
),
enabledBorder: const OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(10.0)),
borderSide: BorderSide(width: 0, color: Colors.grey),
),
border: const OutlineInputBorder(
borderRadius: BorderRadius.all(Radius.circular(10.0)),
borderSide: BorderSide(width: 0, color: Colors.grey),
),
);
}
}
9 changes: 8 additions & 1 deletion frontend/app/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.5"
dropdown_button2:
dependency: "direct main"
description:
name: dropdown_button2
url: "https://pub.dartlang.org"
source: hosted
version: "1.7.1"
fake_async:
dependency: transitive
description:
Expand Down Expand Up @@ -200,4 +207,4 @@ packages:
version: "2.1.2"
sdks:
dart: ">=2.17.1 <3.0.0"
flutter: ">=1.17.0"
flutter: ">=3.0.0"
2 changes: 1 addition & 1 deletion frontend/app/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ dependencies:
table_calendar: ^3.0.6
intl: ^0.17.0
provider: ^6.0.3

dropdown_button2: ^1.7.1
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2
Expand Down

0 comments on commit d12ae59

Please sign in to comment.