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

📄 getbookdlg.cpp

📁 基于VB的数据库教材管理系统设计 有源码
💻 CPP
字号:
// GetbookDlg.cpp : implementation file
//

#include "stdafx.h"
#include "BookManager.h"
#include "GetbookDlg.h"
#include "GetbookSet.h"
#include "BookIMSet.h"
#include "CountmoneyDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CGetbookDlg dialog


CGetbookDlg::CGetbookDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CGetbookDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CGetbookDlg)
	m_str_Monitorid = _T("");
	m_Getnumber = 0;
	//}}AFX_DATA_INIT
}


void CGetbookDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CGetbookDlg)
	DDX_Control(pDX, IDC_Getnumber, m_ctr_Getnumber);
	DDX_Control(pDX, IDC_Monitorid, m_ctr_Monitorid);
	DDX_Text(pDX, IDC_Monitorid, m_str_Monitorid);
	DDX_Text(pDX, IDC_Getnumber, m_Getnumber);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CGetbookDlg, CDialog)
	//{{AFX_MSG_MAP(CGetbookDlg)
	ON_BN_CLICKED(IDC_Getbookok, OnGetbookok)
	ON_BN_CLICKED(IDC_Getbookcancel, OnGetbookcancel)
	ON_BN_CLICKED(IDC_Countmoney, OnCountmoney)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CGetbookDlg message handlers

void CGetbookDlg::OnGetbookok() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	
	if(m_str_Monitorid.IsEmpty())
	{
	   MessageBox("请输入领取代表人的学号!");
	   return;
	}
	if(m_Getnumber<0)
	{
	   MessageBox("请确定录入正确和合法的值!");
	   return;
	}
	else if(m_Getnumber==0)
	{
	   MessageBox("请录入要领取的教材数量!");
	   return;
	}
	CBookManagerApp* app=(CBookManagerApp*)::AfxGetApp();
	CString strSQL;
	CGetbookSet recordset;
	strSQL.Format("select * from bookout where book_id='%s'", app->temp);
	if(!recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
	{
	  MessageBox("打开数据库失败!","数据库错误",MB_OK);
	  return;
	}
	CString strSQL1;
	strSQL1.Format("select * from bookIM where book_id='%s'", app->temp);
	CBookIMSet Record;
	if(!Record.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1))
	{
	   MessageBox("打开数据库失败!","数据库错误",MB_OK);
	   return;
	}
	if(Record.m_number==0)
	{
	  MessageBox("库存为空,你无法领取!");
	  return;

	}
    if(m_Getnumber>Record.m_number)
	{
	 
	    int k=MessageBox("库存不够,要预领吗?","请选择操作",MB_OKCANCEL);
	    if(k==1)
		{
		  MessageBox("请输入预领书籍数量!");
		  m_Getnumber=0;
		  UpdateData(FALSE);
		  m_ctr_Getnumber.SetFocus();
		  UpdateData(TRUE);
		}
		else if(k==2)
		{
		  m_Getnumber=0;
		  UpdateData(FALSE);
		  CDialog::OnOK();
		}
	}
	else
	{
	   Record.Edit();
	   Record.m_number-=m_Getnumber;
	   Record.Update();
	   recordset.AddNew();
	   recordset.m_book_id=app->temp;
	   recordset.m_st_id=m_str_Monitorid;
	   recordset.m_number=m_Getnumber;
	   recordset.Update();
	   Record.Close();
	   recordset.Close();
	   MessageBox("领取成功!");
	   m_Getnumber=0;
	   UpdateData(FALSE);
	}
	
}

void CGetbookDlg::OnGetbookcancel() 
{
	// TODO: Add your control notification handler code here
	CDialog::OnCancel();
	
}

void CGetbookDlg::OnCountmoney() 
{
	// TODO: Add your control notification handler code here
	CCountmoneyDlg dlg;
	dlg.DoModal();
	
}

⌨️ 快捷键说明

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