📄 manager.cpp
字号:
// manager.cpp : implementation file
//
#include "stdafx.h"
#include "车站售票管理系统.h"
#include "manager.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// manager dialog
manager::manager(CWnd* pParent /*=NULL*/)
: CDialog(manager::IDD, pParent)
{
//{{AFX_DATA_INIT(manager)
m_carsamount = 0;
m_carscode = _T("");
m_carskind = _T("");
m_carstime = _T("");
m_price = 0.0;
m_print = _T("");
m_select = _T("");
//}}AFX_DATA_INIT
}
void manager::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(manager)
DDX_Control(pDX, IDC_LIST1, m_list);
DDX_Text(pDX, IDC_carsamountEDIT3, m_carsamount);
DDX_Text(pDX, IDC_carscodeEDIT1, m_carscode);
DDX_Text(pDX, IDC_carskindEDIT2, m_carskind);
DDX_Text(pDX, IDC_carstimeEDIT5, m_carstime);
DDX_Text(pDX, IDC_priceEDIT4, m_price);
DDX_Text(pDX, IDC_printEDIT7, m_print);
DDX_Text(pDX, IDC_strEDIT6, m_select);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(manager, CDialog)
//{{AFX_MSG_MAP(manager)
ON_BN_CLICKED(IDC_addBUTTON1, OnaddBUTTON1)
ON_BN_CLICKED(IDC_renewBUTTON5, OnrenewBUTTON5)
ON_BN_CLICKED(IDC_updateBUTTON2, OnupdateBUTTON2)
ON_BN_CLICKED(IDC_delBUTTON3, OndelBUTTON3)
ON_BN_CLICKED(IDC_queBUTTON4, OnqueBUTTON4)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// manager message handlers
void manager::OnaddBUTTON1()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
//判断输入是否完整
if(m_carscode.IsEmpty()||m_carskind.IsEmpty()||m_carstime.IsEmpty())
{
AfxMessageBox("请输入准确的添加信息");
return;
}
//判断数量和单价
if(m_carsamount<0&&m_price<0)
{
AfxMessageBox("数量和单价不能为负");
return;
}
//看当前待添加的报刊的号码是否已经存在在数据库
CString str="carscode='"+m_carscode+"'";
cars_set.m_strFilter=str;
if(cars_set.IsOpen())
{
cars_set.Close();
}
cars_set.Open();
int recount=cars_set.GetRecordCount();
if(recount==0)//如果不曾出现
{
cars_set.AddNew();//添加语句
cars_set.m_carscode=m_carscode;
cars_set.m_carskind=m_carskind;
cars_set.m_carstime=m_carstime;
cars_set.m_carsamount=m_carsamount;
cars_set.m_price=m_price;
cars_set.Update();
//把编辑框清空
m_carscode="";
m_carstime="";
m_carskind="";
m_carsamount=0;
m_price=0;
}
else
{
AfxMessageBox("该信息已经存在");
}
cars_set.m_strFilter="";
UpdateData(FALSE);
cars_set.Close();//关闭记录集
manager::Onprint();
}
void manager::OnrenewBUTTON5()
{
// TODO: Add your control notification handler code here
manager::Onprint();
}
void manager::Onprint()
{
int i=0;//用于计算记录的个数
// n=1;//用于“刷新当前窗口”按狃
m_list.ResetContent();//清空列表
CString temp;
temp="车次 车辆种类 发车时间 车票数量 单价";
m_list.InsertString(-1,temp);//插入一行标题
cars_set.Open();//打开报刊表的记录集
while(!cars_set.IsEOF())
{
i++;
cars_set.m_carscode.TrimRight(); //字符串左右空格键去掉
cars_set.m_carscode.TrimLeft();
cars_set.m_carskind.TrimRight();
cars_set.m_carskind.TrimLeft();
cars_set.m_carstime.TrimRight();
cars_set.m_carstime.TrimLeft();
temp.Format("%4s %16s %20s %4d %10f %s",cars_set.m_carscode,cars_set.m_carskind,cars_set.m_carstime,cars_set.m_carsamount,cars_set.m_price); //拟合成一条字符串
m_list.InsertString(-1,temp); //插入到列表框
cars_set.MoveNext();
UpdateData(FALSE);
}
cars_set.Close(); //关闭记录集
m_print.Format("共%d个种类的车辆",i);//显示总收入
UpdateData(FALSE);
}
void manager::OnupdateBUTTON2()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
//判断输入是否完整
if(m_carscode.IsEmpty()||m_carskind.IsEmpty()||m_carstime.IsEmpty())
{
AfxMessageBox("请输入准确的添加信息");
return;
}
//判断数量和单价
if(m_carsamount<0&&m_price<0)
{
AfxMessageBox("数量和单价不能为负");
return;
}
//看当前待添加的报刊的号码是否已经存在在数据库
CString str="carscode='"+m_carscode+"'";
cars_set.m_strFilter=str;
cars_set.Open();
int recount=cars_set.GetRecordCount();
if(recount==0)//如果不曾出现
{
AfxMessageBox("更新失败,数据库中无此记录");
}
else//如果存在
{
cars_set.AddNew();//添加语句
cars_set.m_carscode=m_carscode;
cars_set.m_carskind=m_carskind;
cars_set.m_carstime=m_carstime;
cars_set.m_carsamount=m_carsamount;
cars_set.m_price=m_price;
cars_set.Update();
//把编辑框清空
m_carscode="";
m_carstime="";
m_carskind="";
m_carsamount=0;
m_price=0;
}
cars_set.m_strFilter="";
UpdateData(FALSE);
cars_set.Close();//关闭记录集
manager::Onprint();
}
void manager::OndelBUTTON3()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_carscode.IsEmpty()) //输入待删除的信息的编号
{
AfxMessageBox("请输入你要删除的一个车次");
return;
}
CString str="carscode='"+m_carscode+"'";//查找输入的号码是否存在
cars_set.m_strFilter=str;
cars_set.Open();
int recount=cars_set.GetRecordCount();
if(recount==0)//如果不曾出现
{
AfxMessageBox("删除失败,数据库中无此记录");
}
else//如果存在
{
cars_set.Delete();//删除语句
m_carscode="";
m_carstime="";
m_carskind="";
m_carsamount=0;
m_price=0;
}
cars_set.m_strFilter="";
UpdateData(FALSE);
cars_set.Close();//关闭记录集
}
void manager::OnqueBUTTON4()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
if(m_select.IsEmpty()) //判断输入编号是否为空
{
return;
}
CString str="carscode='"+m_carscode+"'";//查找输入的号码是否存在
cars_set.m_strFilter=str;
cars_set.Open();
int recount=cars_set.GetRecordCount();
if(recount==0)//如果不曾出现
{
AfxMessageBox("无此记录");
}
else
{
//把找到的信息显示在对应的编辑框中
m_carscode=cars_set.m_carscode;
m_carstime=cars_set.m_carstime;
m_carskind=cars_set.m_carskind;
m_carsamount=cars_set.m_carsamount;
m_price=cars_set.m_price;
}
cars_set.m_strFilter="";
UpdateData(FALSE);
cars_set.Close();//关闭记录集
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -