⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readerdlg.cpp

📁 学校图书馆信息化计划核心----图书管理系统vc版V2.0
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// ReaderDlg.cpp : implementation file
//

#include "stdafx.h"
#include "library.h"
#include "ReaderDlg.h"
#include "ReadSet.h"
#include "BookLoanSet.h"
#include "BookLibSet.h"
#include "BookingSet.h"
#include "NewReaderDlg.h"
#include "ModifyReaderDlg.h"
#include "SearchResultDlg.h"
#include "time.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CReaderDlg dialog

CReadSet m_readerlogin;
CBookLoanSet m_bookloan;
CBookingSet m_bookinged;
CBookLibSet m_books;
int flag_status;
int number;
CString bookid="";

CReaderDlg::CReaderDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CReaderDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CReaderDlg)
	m_email = _T("");
	m_grade = _T("");
	m_majorname = _T("");
	m_message = _T("");
	m_major = _T("");
	m_password = _T("");
	m_readerid = _T("");
	m_status = _T("");
	m_time = _T("");
	m_readerid_text = _T("");
	m_content = _T("");
	//}}AFX_DATA_INIT
}


void CReaderDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CReaderDlg)
	DDX_Control(pDX, IDC_COMBO_SearchType, m_searchtype);
	DDX_Text(pDX, IDC_Email, m_email);
	DDX_Text(pDX, IDC_Grade, m_grade);
	DDX_Text(pDX, IDC_Major, m_majorname);
	DDX_Text(pDX, IDC_MESSAGE, m_message);
	DDX_Control(pDX, IDC_MSFLEXGRID1, m_grid_loan);
	DDX_Control(pDX, IDC_MSFLEXGRID2, m_grid_booking);
	DDX_Text(pDX, IDC_PWD_MAJOR, m_major);
	DDX_Text(pDX, IDC_Password, m_password);
	DDX_Text(pDX, IDC_READERID, m_readerid);
	DDX_Text(pDX, IDC_STATUS, m_status);
	DDX_Text(pDX, IDC_Time, m_time);
	DDX_Text(pDX, IDC_readerid_text, m_readerid_text);
	DDX_Text(pDX, IDC_Content, m_content);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CReaderDlg, CDialog)
	//{{AFX_MSG_MAP(CReaderDlg)
	ON_BN_CLICKED(IDC_SUBMIT, OnSubmit)
	ON_BN_CLICKED(IDC_RESET, OnReset)
	ON_BN_CLICKED(IDC_New, OnNew)
	ON_BN_CLICKED(IDC_Cancel_Booking, OnCancelBooking)
	ON_CBN_SELCHANGE(IDC_COMBO_SearchType, OnSelchangeCOMBOSearchType)
	ON_BN_CLICKED(IDC_Modify, OnModify)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CReaderDlg message handlers

BOOL CReaderDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	GetDlgItem(IDC_COMBO_SearchType)->EnableWindow(false);
	GetDlgItem(IDC_Content)->EnableWindow(false);
	GetDlgItem(IDC_Modify)->EnableWindow(false);
    GetDlgItem(IDC_MSFLEXGRID1)->EnableWindow(false);
    GetDlgItem(IDC_MSFLEXGRID2)->EnableWindow(false);
	GetDlgItem(IDC_Cancel_Booking)->EnableWindow(false);
    GetDlgItem(IDC_READERID)->ShowWindow(SW_SHOW);
    GetDlgItem(IDC_Password)->ShowWindow(SW_SHOW);
	GetDlgItem(IDC_Major)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_Grade)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_STATUS)->ShowWindow(SW_HIDE);
	GetDlgItem(IDC_Email)->ShowWindow(SW_HIDE);
    GetDlgItem(IDC_readerid_text)->ShowWindow(SW_HIDE);

	m_message="你尚未登陆!";
	m_major="密码:";
	time_t now;
	now=time(0);
    struct tm *pnow;
    pnow=localtime(&now);
	CString str;
	str.Format(_T("%04d-%02d-%02d"),pnow->tm_year+1900,pnow->tm_mon+1,pnow->tm_mday);
	m_time=str;    
	//grid initiate

	//grid 初始化
	 m_grid_loan.SetCols(8);	
	 m_grid_loan.SetRows(10);
	 m_grid_loan.SetColWidth(-1,1100);
	 m_grid_booking.SetCols(8);
	 m_grid_booking.SetRows(10);
	 m_grid_booking.SetColWidth(-1,1500);
	 //借阅
	m_grid_loan.SetRow(0);
	m_grid_loan.SetCol(0);
	m_grid_loan.SetText("编号");
	m_grid_loan.SetCol(1);
	m_grid_loan.SetText("书目号");
	m_grid_loan.SetCol(2);
	m_grid_loan.SetText("书名");
	m_grid_loan.SetCol(3);
	m_grid_loan.SetText("借阅日期");
	m_grid_loan.SetCol(4);
	m_grid_loan.SetText("应还日期");
	m_grid_loan.SetCol(5);
	m_grid_loan.SetText("状态");
	//预约
	m_grid_booking.SetRow(0);
	m_grid_booking.SetCol(0);
	m_grid_booking.SetText("编号");
	m_grid_booking.SetCol(1);
	m_grid_booking.SetText("书目号");
	m_grid_booking.SetCol(2);
	m_grid_booking.SetText("书名");
	m_grid_booking.SetCol(3);
	m_grid_booking.SetText("预约日期");
	 UpdateData(false);
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CReaderDlg::OnSubmit() 
{
	// TODO: Add your control notification handler code here
//	if(m_readerlogin.IsOpen())
//		ASSERT(FALSE);
//	try
//	{
		m_readerlogin.Open();
//	}
//	catch(CDBException *e)
//	{
//		AfxMessageBox(e->m_strError);
//	}
	UpdateData();
	flag_status=1;
	m_readerlogin.Close();
	m_readerlogin.m_strFilter="ReaderId='"+m_readerid+"' AND "+"Readerpassword='"+m_password+"'";
	m_readerlogin.Open();
	int Rcount=m_readerlogin.GetRecordCount();
	if(Rcount==0)
	{
		MessageBox("登录失败,请重新登录");
		m_readerid="";
		m_password="";
		UpdateData(false);
		m_readerlogin.Close();

	}
	else
	{
		if(m_readerlogin.m_lever==0)
		{
			MessageBox("抱歉,你现在还是受限用户,请等待管理员核实登记后再登陆!");
			m_readerid="";
	    	m_password="";
	    	UpdateData(false);
            m_readerlogin.Close(); 
		}
		else
		{
			GetDlgItem(IDC_COMBO_SearchType)->EnableWindow();
        	GetDlgItem(IDC_Content)->EnableWindow();
        	GetDlgItem(IDC_Modify)->EnableWindow();
            GetDlgItem(IDC_MSFLEXGRID1)->EnableWindow();
            GetDlgItem(IDC_MSFLEXGRID2)->EnableWindow();
        	GetDlgItem(IDC_Cancel_Booking)->EnableWindow();

            GetDlgItem(IDC_READERID)->ShowWindow(SW_HIDE);
            GetDlgItem(IDC_Password)->ShowWindow(SW_HIDE);
        	GetDlgItem(IDC_Grade)->ShowWindow(SW_SHOW);
        	GetDlgItem(IDC_STATUS)->ShowWindow(SW_SHOW);
        	GetDlgItem(IDC_Email)->ShowWindow(SW_SHOW);
        	GetDlgItem(IDC_SUBMIT)->ShowWindow(SW_HIDE);
        	GetDlgItem(IDC_RESET)->ShowWindow(SW_HIDE);
        	GetDlgItem(IDC_New)->ShowWindow(SW_HIDE);
            GetDlgItem(IDC_Major)->ShowWindow(SW_SHOW);
        	GetDlgItem(IDC_readerid_text)->ShowWindow(SW_SHOW);
            m_message=m_readerlogin.m_Readername;
         	m_message+="同学,欢迎你!";
            m_readerid_text=m_readerlogin.m_ReaderId;
          	m_major="专业:";
         	if(m_readerlogin.m_Readermajor=="")
        		m_majorname="未填";
            else m_majorname=m_readerlogin.m_Readermajor;
            if(m_readerlogin.m_Email=="")
        		m_email="Email:  未填";
        	else m_email="Email: "+m_readerlogin.m_Email;
        	if(m_readerlogin.m_Readergrade=="")
        		m_grade="年级: 未填";
         	else m_grade="年级: "+m_readerlogin.m_Readergrade;

        	UpdateData(false);
        	m_readerlogin.Close();
	//   借阅书目
            m_bookloan.Open();
        	UpdateData(true);
        	m_bookloan.Close();
            m_bookloan.m_strFilter="ReaderId_loan='"+m_readerid+"'";
        	m_bookloan.Open();  
        	CString status="正常";
        	int iRow=1;
        	int count=m_bookloan.GetRecordCount();
        	CString str;
        	str.Format("%d",count);
        	if(count!=0)
			{
        		m_bookloan.MoveFirst();
	
         	    while(!m_bookloan.IsEOF())
				{
            	 	CString str1;
            		str.Format("记录%d",iRow);
            		m_grid_loan.SetRow(iRow);m_grid_loan.SetCol(0);
            		m_grid_loan.SetText(str);
            		m_grid_loan.SetCol(1);
            		m_grid_loan.SetText(m_bookloan.m_Bookid_loan);
            		m_grid_loan.SetCol(2);
            		m_grid_loan.SetText(m_bookloan.m_Bookname_loan);
            		m_grid_loan.SetCol(3);
	
            		str1.Format(_T("%04d-%02d-%02d"),m_bookloan.m_Loandate.GetYear(),m_bookloan.m_Loandate.GetMonth(),m_bookloan.m_Loandate.GetDay());
            		m_grid_loan.SetText(str1);
            		m_grid_loan.SetCol(4);
	            	str1.Format(_T("%04d-%02d-%02d"),m_bookloan.m_Backdate.GetYear(),m_bookloan.m_Backdate.GetMonth(),m_bookloan.m_Backdate.GetDay());
	            	m_grid_loan.SetText(str1);
	             	m_grid_loan.SetCol(5);
            		CTime now;
                    now=time(0);
             		if(now>m_bookloan.m_Backdate)
					{  
						status="超期";flag_status=0;}
	            	else status="正常";
               		m_grid_loan.SetText(status);
	            	iRow++;
	            	m_bookloan.MoveNext();
				}
			}

         	if(flag_status==1) status="正常";
         	else status="超期";
        	m_status="状态:"+status;
        	UpdateData(false);
         	m_bookloan.Close();
		//预约 	
            m_bookinged.Open();
        	UpdateData(true);
          	m_bookinged.Close();
             m_bookinged.m_strFilter="ReaderId_booking='"+m_readerlogin.m_ReaderId+"'";
         	m_bookinged.Open();
        	count=m_bookinged.GetRecordCount();
        	if(count!=0)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -