[Visual Studio/C#]도서관리 프로그램 - 관리자 권한 생성

2021. 2. 12. 18:43Toy Project/도서관리 프로그램

728x90
반응형

- 이전글 -

2020/12/17 - [프로젝트/C#]도서관리 프로그램 - 초안
2020/12/18 - [프로젝트/C#]도서관리 프로그램 - 로그인, 도서검색
2020/12/19 - [프로젝트/C#]도서관리 프로그램 - 도서 삭제, 수정

 

- #3 대비 수정 사항 -

도서관리 프로그램을 '대여 시스템'으로 수정하면서 DB가 수정됨
  • BookList 테이블 기본키 : BookNumber (BK+현재날짜)
  • Quantity 컬럼 생성 (도서 잔여 수량)
  • 도서명, 저자명, 출판사, 수량 제외 모든 컬럼 삭제

 

01. root 계정으로 로그인 하면 [도서등록] [도서삭제] [저장(수정)] 가능

01 root 계정으로 로그인

public void DataReader(ref bool login)
{
	SqlDataReader mdr = cmd.ExecuteReader();

	try
	{
		while (mdr.Read())
		{
			// 찾은 값의 id와 tbID가 일치하고 pw와 tbPW가 일치하면 로그인상태 true
			if (LoginForm.lf.tbId.Text == (string)mdr["MemId"] 
					&& LoginForm.lf.tbPw.Text == (string)mdr["MemPw"])
			{
				strName = (string)mdr["MemName"];
				if ((string)mdr["MemId"] == "root")
					LoginForm.root = 1;
				login = true;
			}
		}
		mdr.Close();
		cmd.Dispose();
	}
	catch (Exception ex)
	{
		MessageBox.Show(ex.ToString());
	}
}

* DB 클래스에서 로그인 부분에 root 여부 체크를 해준다. (root일 경우 int root = 1)

if (LoginForm.root == 1)
{
	btnDel.Visible = true;
	btnInput.Visible = true;
	btnSave.Visible = true;
}
else
{
	btnDel.Visible = false;
	btnInput.Visible = false;
	btnSave.Visible = false;
}

* LoginForm에서 BookListForm 로드할 때 해당 코드 입력

1. root == 1 일 경우 (관리자 계정일 경우) : [도서등록] [도서삭제] [저장(수정)] 버튼 보이기

2. root != 1 일 경우 (관리자 계정이 아닐 경우) : [도서등록] [도서삭제] [저장(수정)] 버튼 숨기기

 

02 일반 계정으로 로그인 할 경우 [도서대출],[도서반납] 버튼만 확인 가능

02 일반 계정 로그인

 

03 [도서대출] 버튼 선택 시 도서의 잔여 수량이 줄어든다

03 [도서대출] 버튼 선택 시 수량 -1

private void btnRent_Click(object sender, EventArgs e)
{
	string str = "update BookList set quantity = " + (selectedQuantity-1) 
    				+ " from BookList " + whereStr;
	dbc.Connection();
	dbc.Command(str);

	MessageBox.Show(selectedBookName+" 도서를 대출합니다.");

	sql = "select * from BookList";
	dbc.Connection();
	dbc.Adaptor(sql);
}

 

*** 앞으로 구현할 것들 ***
1. 회원별로 로그인 시 [도서반납] 버튼 선택할 때 각 회원의 대여 도서 목록 호출
2. 회원별로 로그인 시 [도서대여] 버튼 선택할 때 '영수증' 식으로 대여 도서 로그 뿌려주기
3. root 계정으로 로그인 시 모든 회원 도서 대여 목록, 도서 반납 목록 호출

 

728x90
반응형