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

📄 bookadd.cpp

📁 java 大作业 《处方跟踪系统》源代码 gui界面
💻 CPP
字号:
// BookAdd.cpp : implementation file
//

#include "stdafx.h"
#include "libraryMS.h"
#include "BookAdd.h"
/////////////////////////////////////////////
#include "column.h"
#include "columns.h"
////////////////////////////////////////////
#include "datagrid.h"
#include "adodc.h"
#include "ADOConn.h"
#include "LogLibrary.h"
#include "Book.h"


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

/////////////////////////////////////////////////////////////////////////////
// CBookAdd dialog


CBookAdd::CBookAdd(CWnd* pParent /*=NULL*/)
	: CDialog(CBookAdd::IDD, pParent)
{
	//{{AFX_DATA_INIT(CBookAdd)
	m_comment = _T("");
	m_ISBN = _T("");
	m_PressName = _T("");
	m_title = _T("");
	m_auhor = _T("");
	m_count = _T("");
	//}}AFX_DATA_INIT
}


void CBookAdd::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CBookAdd)
	DDX_Control(pDX, IDC_Categories_ADODC, m_Categadodc);
	DDX_Control(pDX, IDC_Categories_DATACOMBO, m_CategDaCoBo);
	DDX_Control(pDX, IDC_Kind_ADODC, m_Kindadodc);
	DDX_Control(pDX, IDC_Kind_DATACOMBO, m_KindDaCoBo);
	DDX_Control(pDX, IDC_Kind_DATAGRID, m_datagridKind);
	DDX_Control(pDX, IDC_CateDATAGRID, m_datagridCate);
	DDX_Text(pDX, IDC_Comment_EDIT, m_comment);
	DDX_Text(pDX, IDC_ISBN_EDIT, m_ISBN);
	DDX_Text(pDX, IDC_PressName_EDIT, m_PressName);
	DDX_Text(pDX, IDC_Title_EDIT, m_title);
	DDX_Text(pDX, IDC_Author_EDIT, m_auhor);
	DDX_Text(pDX, IDC_Count_EDIT, m_count);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CBookAdd, CDialog)
	//{{AFX_MSG_MAP(CBookAdd)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CBookAdd message handlers

void CBookAdd::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	CDialog::OnCancel();
}

void CBookAdd::OnOK() 
{
	// TODO: Add extra validation here
    
	if(ISBNFlg == 0)//添加
	{
		if(IsValidate())//填写资料合法
		{
		CBook Book;
		Book.GetData(m_ISBN);
  		if(Book.GetISBNBook()!='-1')//表明图书已经存在
		{
			MessageBox("该书已经入库,请先根据ISBN查询然后到修改窗口进行数量修改");
			return;
		}
		///////////////////////////////////////设置操作记录
        CLogLibrary Log_dlg;
		Log_dlg.DoModal();
	    Book.SetLogBook(Log_dlg.m_logMS);
		/////////////////////////////////
		UpdateData(true);
		/////////////////////////////////提取各输入值
		Book.SetAuthorBook(m_auhor);
        Book.SetCommentBook(m_comment);
		Book.SetISBNBook(m_ISBN);
		Book.SetPressName(m_PressName);
		Book.SetTitleBook(m_title);
		Book.SetTOTBook(m_count);
		Book.SetTypeCode(vTypeBook);
		//AfxMessageBox(Book.GetTypeCode());
        Book.sql_insert();
		CDialog::OnOK();
		}
			

	}
	else if(ISBNFlg == 1)//修改
	{
		Change();
		CDialog::OnOK();
	}
	
	
}

BOOL CBookAdd::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	//m_CategDaCoBo.SetBoundText();
//	UpdateData(false);
	//////////////////////////初始化
    if(ISBNFlg == 0)//添加
	{
		m_comment="";
		m_title = "";
		m_auhor = "";
		m_PressName = "";
		m_ISBN = "";
		m_count = "1";
	}
	else if(ISBNFlg == 1)//修改
	{   
		m_comment=vComment;
		m_title = vTitle;
		m_auhor = vAuhor;
		m_PressName = vPressName;
		m_ISBN = vISBN;
		m_count = vCount;
        m_CategDaCoBo.SetBoundText(vTypeBook);
		UpdateData(false);
		GetDlgItem(IDC_ISBN_EDIT)->EnableWindow(false);
		//GetDlgItem(IDC_Count_EDIT)->EnableWindow(false);
	}
	//////////////////////////////
	m_CategDaCoBo.EnableWindow(false);

	variant_t vIndex;
	vIndex = long(0);
	m_datagridKind.GetColumns().GetItem(vIndex).SetWidth(22);
	vIndex = long(1);
	m_datagridKind.GetColumns().GetItem(vIndex).SetWidth(175);
	UpdateData(false);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

BEGIN_EVENTSINK_MAP(CBookAdd, CDialog)
    //{{AFX_EVENTSINK_MAP(CBookAdd)
	ON_EVENT(CBookAdd, IDC_Categories_DATACOMBO, -600 /* Click */, OnClickCategoriesDATACOMBO, VTS_I2)
	ON_EVENT(CBookAdd, IDC_Kind_DATACOMBO, -600 /* Click */, OnClickKindDATACOMBO, VTS_I2)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void CBookAdd::OnClickCategoriesDATACOMBO(short Area) 
{
	// TODO: Add your control notification handler code here
	vTypeBook =m_CategDaCoBo.GetBoundText(); 
	

}

void CBookAdd::OnClickKindDATACOMBO(short Area) 
{
	// TODO: Add your control notification handler code here
    vKind=m_KindDaCoBo.GetBoundText();
	CString categories;//图书种类代码
    vKind.TrimRight();
	//strcat(vKind,"%");
	categories=vKind+'%';//配置查询通配符
	//MessageBox(str);
    m_Categadodc.SetRecordSource("SELECT TypeCode as 代码, TypeName as 类名 from t_BookType where TypeCode like '"+categories+"'");
    m_Categadodc.Refresh();
	m_CategDaCoBo.EnableWindow(true);

	variant_t vIndex;
	vIndex = long(0);
	m_datagridCate.GetColumns().GetItem(vIndex).SetWidth(33);
	vIndex = long(1);
	m_datagridCate.GetColumns().GetItem(vIndex).SetWidth(170);
    //MessageBox(str);
	
}

BOOL CBookAdd::IsValidate()
{
	UpdateData(true);
//////////////////////////////////////////////////////////////		
	m_title.TrimLeft();					//去除左空格
	m_title.TrimRight();					//去除右空格
	if(m_title.IsEmpty())
	{
		MessageBox("输入的书名无效");
		return false;
	}
//////////////////////////////////////////////////////////////  
	m_ISBN.TrimLeft();
	m_ISBN.TrimRight();
	if(m_ISBN.IsEmpty())
	{
		MessageBox("藏书ISBN不能空");
		return false;
	}
    
    return true;
}

void CBookAdd::Change()
{
	    CBook Book;
		UpdateData(true);
        Book.SetAuthorBook(m_auhor);
        Book.SetCommentBook(m_comment);
		Book.SetISBNBook(m_ISBN);
		Book.SetPressName(m_PressName);      
		Book.SetTitleBook(m_title);
		Book.SetTOTBook(m_count);
		Book.SetTypeCode(vTypeBook);
		Book.sql_update(m_ISBN);
}

⌨️ 快捷键说明

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