コード例 #1
0
ファイル: Form3.cs プロジェクト: hanbyeolbaek/Book
        public Form3()
        {
            InitializeComponent();
            Text = "사용자관리";

            dataGridView_Users.DataSource          = DataManager.Users;
            dataGridView_Users.CurrentCellChanged += DataGridView_Users_CurrentCellChanged;

            //람다 button_Add 동작
            button_Add.Click += (sender, e) =>
            {
                try
                {
                    if (DataManager.Users.Exists((x) => x.Id == int.Parse(textBox_ID.Text)))
                    {
                        MessageBox.Show("사용자 ID가 겹칩니다.");

                        TextFile.UsersHistory("사용자 ID 중복", "추가");
                    }
                    else
                    {
                        if (textBox_ID.Text.Trim() == "")
                        {
                            MessageBox.Show("사용자 ID를 입력해주세요.");

                            TextFile.UsersHistory("사용자 ID 미입력", "추가");
                        }
                        else if (textBox_Name.Text.Trim() == "")
                        {
                            MessageBox.Show("사용자의 이름을 입력해주세요.");

                            TextFile.UsersHistory("사용자 이름 미입력", "추가");
                        }
                        else
                        {
                            User user = new User()
                            {
                                Id   = int.Parse(textBox_ID.Text),
                                Name = textBox_Name.Text
                            };
                            DataManager.Users.Add(user);

                            dataGridView_Users.DataSource = null;
                            dataGridView_Users.DataSource = DataManager.Users;
                            DataManager.SaveJson();

                            MessageBox.Show($"사용자 \"{user.Name}\" 님이 추가되었습니다.");

                            TextFile.UsersHistory($"{user.Name}", "추가");
                        }
                    }
                }
                catch (Exception)
                {
                }
            };

            button_Modify.Click += (sender, e) =>
            {
                try
                {
                    if (textBox_Name.Text.Trim() == "")
                    {
                        MessageBox.Show("사용자의 이름을 입력해주세요.");

                        TextFile.UsersHistory("사용자 이름 미입력", "수정");
                    }
                    else
                    {
                        User user = DataManager.Users.Single((x) => x.Id == int.Parse(textBox_ID.Text));
                        user.Name = textBox_Name.Text;

                        MessageBox.Show($"\"{user.Name}\" 으로 이름이 변경되었습니다.");

                        TextFile.UsersHistory($"{user.Name}", "수정");
                    }

                    try
                    {
                        Book book = DataManager.Books.Single((x) => x.UserId == int.Parse(textBox_ID.Text));
                        book.UserName = textBox_Name.Text;
                    }
                    catch (Exception)
                    {
                    }

                    dataGridView_Users.DataSource = null;
                    dataGridView_Users.DataSource = DataManager.Users;
                    DataManager.SaveJson();
                }
                catch (Exception)
                {
                    MessageBox.Show("존재하지 않는 사용자입니다.");

                    TextFile.UsersHistory("존재하지 않는 사용자", "수정");
                }
            };

            button_Delete.Click += (sender, e) =>
            {
                try
                {
                    User user = DataManager.Users.Single((x) => x.Id == int.Parse(textBox_ID.Text));

                    MessageBox.Show($"사용자 \"{user.Name}\" 님이 삭제되었습니다.");

                    TextFile.UsersHistory($"{user.Name}", "삭제");

                    DataManager.Users.Remove(user);

                    dataGridView_Users.DataSource = null;
                    dataGridView_Users.DataSource = DataManager.Users;
                    DataManager.SaveJson();
                }
                catch (Exception)
                {
                    MessageBox.Show("존재하지 않는 사용자입니다.");

                    TextFile.UsersHistory("존재하지 않는 사용자", "삭제");
                }
            };
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: hanbyeolbaek/Book
        private void button_Return_Click(object sender, EventArgs e)
        {
            if (textBox_isbn.Text.Trim() == "")
            {
                MessageBox.Show("Isbn을 입력해주세요.");

                TextFile.ManageHistory("Isbn 미입력", "반납");
            }
            else
            {
                try
                {
                    Book book = DataManager.Books.Single((x) => x.Isbn == textBox_isbn.Text);
                    if (book.isBorrowed)
                    {
                        DateTime oldDay = book.BorrowedAt;
                        book.UserId     = 0;
                        book.UserName   = "";
                        book.isBorrowed = false;
                        book.BorrowedAt = new DateTime();

                        dataGridView_BookManager.DataSource = null;
                        dataGridView_BookManager.DataSource = DataManager.Books;
                        DataManager.Save();

                        TimeSpan timeDiff = DateTime.Now - oldDay;
                        int      diffDays = timeDiff.Days;

                        if (diffDays > 7)
                        {
                            MessageBox.Show("\"" + book.Name + "\"이/가 연체 상태로 반납되었습니다.");

                            TextFile.ManageHistory($"{book.Name}'", "연체 반납");

                            //대출중인 도서의 수
                            label_allBorrowedBook.Text = DataManager.Books.Where((x) => x.isBorrowed).Count().ToString();
                            //연체중인 도서의 수
                            label_allDelayedBook.Text = DataManager.Books.Where((x) =>
                            {
                                return(x.isBorrowed && x.BorrowedAt.AddDays(7) < DateTime.Now);
                            }).Count().ToString();
                        }
                        else
                        {
                            MessageBox.Show("\"" + book.Name + "\"이/가 반납되었습니다.");

                            TextFile.ManageHistory($"{book.Name}'", "반납");

                            //대출중인 도서의 수
                            label_allBorrowedBook.Text = DataManager.Books.Where((x) => x.isBorrowed).Count().ToString();
                        }
                    }
                    else
                    {
                        MessageBox.Show("대여상태가 아닙니다.");

                        TextFile.ManageHistory("대여상태 아닌 도서", "반납");
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("존재하지 않는 도서 또는 사용자입니다.");

                    TextFile.ManageHistory("존재하지 않는 도서 또는 사용자", "반납");
                }
            }
        }
コード例 #3
0
ファイル: Form3.cs プロジェクト: hanbyeolbaek/Book
        public Form3()
        {
            InitializeComponent();
            Text = "사용자관리";

            dataGridView_Users.DataSource          = DB.Users;
            dataGridView_Users.CurrentCellChanged += DataGridView_Users_CurrentCellChanged;

            //람다 button_Add 동작
            button_Add.Click += (sender, e) =>
            {
                try
                {
                    if (DB.Users.Exists((x) => x.Id == int.Parse(textBox_ID.Text)))
                    {
                        MessageBox.Show("사용자 ID가 중복됩니다.");

                        TextFile.UsersHistory("사용자 ID 중복", "추가");
                    }
                    else
                    {
                        if (textBox_ID.Text.Trim() == "")
                        {
                            MessageBox.Show("사용자 ID를 입력해주세요.");

                            TextFile.UsersHistory("사용자 ID 미입력", "추가");
                        }
                        else if (textBox_Name.Text.Trim() == "")
                        {
                            MessageBox.Show("사용자의 이름을 입력해주세요.");

                            TextFile.UsersHistory("사용자 이름 미입력", "추가");
                        }
                        else
                        {
                            Query_Insert();

                            DB.SelectDB();
                            dataGridView_Users.DataSource = null;
                            dataGridView_Users.DataSource = DB.Users;

                            MessageBox.Show($"\"{textBox_ID.Text}\" 사용자가 추가되었습니다.");

                            TextFile.UsersHistory($"{textBox_ID.Text}", "추가");
                        }
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("예기치 못한 오류가 발생하였습니다. 다시 시도해주세요.");

                    TextFile.UsersHistory("예기치 못한 오류 발생", "추가");
                }
            };

            button_Modify.Click += (sender, e) =>
            {
                try
                {
                    if (textBox_Name.Text.Trim() == "")
                    {
                        MessageBox.Show("사용자의 이름을 입력해주세요.");

                        TextFile.UsersHistory("사용자 이름 미입력", "수정");
                    }
                    else
                    {
                        Query_Modify();

                        DB.SelectDB();
                        dataGridView_Users.DataSource = null;
                        dataGridView_Users.DataSource = DB.Users;

                        MessageBox.Show($"\"{textBox_ID.Text}\" 사용자가 수정되었습니다.");

                        TextFile.UsersHistory($"{textBox_ID.Text}", "수정");
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("존재하지 않는 사용자입니다.");

                    TextFile.UsersHistory("존재하지 않는 사용자", "수정");
                }
            };

            button_Delete.Click += (sender, e) =>
            {
                try
                {
                    if (textBox_ID.Text.Trim() == "")
                    {
                        MessageBox.Show("사용자 ID를 입력해주세요.");

                        TextFile.BooksHistory("사용자 ID 미입력", "삭제");
                    }
                    else
                    {
                        User user = DB.Users.Single((x) => x.Id.ToString() == (textBox_ID.Text));

                        Query_Delete();

                        DB.SelectDB();
                        dataGridView_Users.DataSource = null;
                        dataGridView_Users.DataSource = DB.Users;

                        MessageBox.Show($"\"{user.Id}\" 사용자가 삭제되었습니다.");

                        TextFile.UsersHistory($"{user.Id}", "삭제");
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("존재하지 않는 사용자입니다.");

                    TextFile.UsersHistory("존재하지 않는 사용자", "삭제");
                }
            };
        }