📄 maindlg.cpp
字号:
// MainDlg.cpp : 实现文件
//
#include "stdafx.h"
#include "NetworkX.h"
#include "MainDlg.h"
#include "FeeSet.h"
#include ".\maindlg.h"
#include "Up.h"
#include "Down.h"
#include "ExchDlg.h"
#include "DayCount.h"
#include "Setup.h"
#include "ComNumDlg.h"
#include "AboutBox.h"
#include "Change.h"
#include "PswdSet.h"
#include "Memberset.h"
#include "MemberDlg.h"
// CMainDlg 对话框
IMPLEMENT_DYNAMIC(CMainDlg, CDialog)
CMainDlg::CMainDlg(CWnd* pParent /*=NULL*/)
: CDialog(CMainDlg::IDD, pParent)
{
m_Low=1.0;
m_Price=1.5;
this->m_NglCost=6.0;
m_AllFee=0.0;
m_Brush.CreateSolidBrush(RGB(100,200,255));
m_AllFee=0.0;
m_Cheap=0.9;
}
CMainDlg::~CMainDlg()
{
}
void CMainDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_MAIN_DIALOG, m_List);
}
BEGIN_MESSAGE_MAP(CMainDlg, CDialog)
ON_WM_TIMER()
ON_WM_CLOSE()
ON_WM_CTLCOLOR()
ON_COMMAND(ID_UP, OnUp)
ON_COMMAND(ID_DOWN, OnDown)
ON_COMMAND(ID_EXCHGE, OnExchge)
ON_COMMAND(ID_CLEAR, OnClear)
ON_COMMAND(ID_APP_EXIT, OnAppExit)
ON_COMMAND(ID_SORT, OnSort)
ON_COMMAND(ID_COUNT, OnCount)
ON_COMMAND(ID_FEE, OnFee)
ON_COMMAND(ID_COMNUM, OnComnum)
ON_COMMAND(ID_ABOUT, OnAbout)
ON_COMMAND(ID_CHANGE, OnChange)
ON_COMMAND(ID_MEMBER_DIALOG, OnMemberDialog)
ON_COMMAND(ID_ALL_FEE, OnAllFee)
END_MESSAGE_MAP()
// CMainDlg 消息处理程序
void CMainDlg::OnTimer(UINT nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDialog::OnTimer(nIDEvent);
}
void CMainDlg::OnClose()
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDialog::OnClose();
}
HBRUSH CMainDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何属性
if(nCtlColor==CTLCOLOR_DLG)
return (HBRUSH)m_Brush;
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}
//BOOL CMainDlg::OnInitDialog()
//{
// CDialog::OnInitDialog();
//
// // TODO: 在此添加额外的初始化
// CenterWindow();
// m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);
// this->SetIcon(m_hIcon,TRUE);
// m_List.SetTextColor(RGB(100,0,100));
// m_List.SetTextBkColor(RGB(240,247,233));
// m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
// m_List.InsertColumn(0,_T("机号"),LVCFMT_IMAGE|LVCFMT_LEFT);
// m_List.InsertColumn(1,_T("上机时间"));
// m_List.InsertColumn(2,_T("下机时间"));
// m_List.InsertColumn(3,_T("限时"));
// m_List.InsertColumn(4,_T("网费"));
// m_List.InsertColumn(5,_T("押金"));
// m_List.InsertColumn(6,_T("通宵"));
// m_List.InsertColumn(7,_T("备注"));
// m_List.SetColumnWidth(0,50);
// m_List.SetColumnWidth(1,80);
// m_List.SetColumnWidth(2,80);
// m_List.SetColumnWidth(3,80);
// m_List.SetColumnWidth(4,80);
// m_List.SetColumnWidth(5,80);
// m_List.SetColumnWidth(6,60);
// m_List.SetColumnWidth(7,80);
//
// return TRUE; // return TRUE unless you set the focus to a control
// // 异常: OCX 属性页应返回 FALSE
//}
void CMainDlg::OnUp()
{
// TODO: 在此添加命令处理程序代码
CUp dlg;
if(dlg.DoModal()==IDOK)
{
if(!m_database.IsOpen())
{
m_database.Open(_T("Management"));
}
//对列表控件的内容更新,清空原来的内容
UpdateData(TRUE);
bool b;
CString strSQL;
strSQL.Format("select * from 计费 order by 机号");
CFeeSet m_pSet(&m_database);
m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(dlg.m_Num!=0)
{
if(m_pSet.CanAppend())
{
m_pSet.MoveFirst();
do
{
if(dlg.m_Num!=m_pSet.m_Num)
m_pSet.MoveNext();
else
{
m_List.DeleteAllItems();
m_pSet.Edit();
m_pSet.m_Num=dlg.m_Num;
m_pSet.m_StTime=CTime::GetCurrentTime();
m_pSet.m_Deposit=dlg.m_Deposit;
m_pSet.m_NgtLong=dlg.m_NgtLong;
m_pSet.m_Remark=dlg.m_Remark;
if(dlg.m_CardNum!=0)
{
strSQL.Format("select * from 会员 order by 卡号");
CMemberset m_pSet1(&m_database);
m_pSet1.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
m_pSet1.MoveFirst();
b=false;
do
{
if(m_pSet1.m_CardNum==dlg.m_CardNum)
{
m_pSet.m_CardNum=dlg.m_CardNum;
b=true;
break;
}
m_pSet1.MoveNext();
}while(!m_pSet1.IsEOF());
m_pSet1.Close();
if(!b)
{
AfxMessageBox("卡号错误!请重新输入会员卡号!");
dlg.DoModal();
}
}
m_pSet.Update();
m_pSet.Requery();
RefreshData();
m_pSet.MoveFirst();
break;
}
}while(!m_pSet.IsEOF());
}
}
else
{
MessageBox("“机号”项不可以为空!","提示",MB_OK|MB_ICONINFORMATION);
}
m_database.Close();
}
}
BOOL CMainDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
CenterWindow();
m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);
this->SetIcon(m_hIcon,TRUE);
m_List.SetTextColor(RGB(200,0,100));
m_List.SetTextBkColor(RGB(100,200,255));
m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_List.InsertColumn(0,_T("机号"),LVCFMT_IMAGE|LVCFMT_LEFT);
m_List.InsertColumn(1,_T("上机时间"));
m_List.InsertColumn(2,_T("下机时间"));
m_List.InsertColumn(3,_T("网费"));
m_List.InsertColumn(4,_T("卡号"));
m_List.InsertColumn(5,_T("押金"));
m_List.InsertColumn(6,_T("通宵"));
m_List.InsertColumn(7,_T("备注"));
m_List.SetColumnWidth(0,50);
m_List.SetColumnWidth(1,80);
m_List.SetColumnWidth(2,80);
m_List.SetColumnWidth(3,80);
m_List.SetColumnWidth(4,80);
m_List.SetColumnWidth(5,80);
m_List.SetColumnWidth(6,80);
m_List.SetColumnWidth(7,80);
m_query.Format("select * from 计费 order by 机号");
RefreshData();
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CMainDlg::RefreshData()
{
if(!m_database.IsOpen())
{
m_database.Open(_T("Management"));
}
//对列表控件的内容更新,清空原来的内容
m_List.DeleteAllItems();
//创建记录集
CFeeSet m_pSet(&m_database);
m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,m_query);
if(m_pSet.GetRecordCount()!=0)
m_pSet.MoveFirst();
int i=0;
do
{
CString s;
s.Format("%d",m_pSet.m_Num);
m_List.InsertItem(i,s,0);
s=m_pSet.m_StTime.Format("%H:%M");
if(s=="08:00"||s=="00:00")
s="";
m_List.SetItemText(i,1,s);
s=m_pSet.m_EdTime.Format("%H:%M");
if(s=="00:00"||s=="08:00")
s="";
m_List.SetItemText(i,2,s);
if(m_pSet.m_Fee!=0.0)
s.Format("%.1f",m_pSet.m_Fee);
else
s="";
m_List.SetItemText(i,3,s);
if(m_pSet.m_CardNum!=1246576928&&m_pSet.m_CardNum!=0)
s.Format("%ld",m_pSet.m_CardNum);
else s="";
m_List.SetItemText(i,4,s);
if(m_pSet.m_Deposit!=0.0)
s.Format("%.1f",m_pSet.m_Deposit);
else
s="";
m_List.SetItemText(i,5,s);
if(m_pSet.m_NgtLong)
s="通宵";
else
s="";
m_List.SetItemText(i,6,s);
m_List.SetItemText(i,7,m_pSet.m_Remark);
i++;
m_pSet.MoveNext();
} while(!m_pSet.IsEOF());
m_pSet.MoveFirst();
}
void CMainDlg::OnDown()
{
// TODO: 在此添加命令处理程序代码
if(!m_database.IsOpen())
{
m_database.Open(_T("Management"));
}
UpdateData(TRUE);
CString strSQL1,strSQL2;
CFeeSet m_pSet(&m_database);
CMemberset m_pSet1(&m_database);
strSQL1.Format("select * from 计费 order by 机号");
m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1);
strSQL2.Format("select * from 会员");
m_pSet1.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL2);
CDown dlg;
if(dlg.DoModal()==IDOK)
{ if(dlg.m_Num==0)
{
AfxMessageBox("机号项不能为空");
return;
}
m_pSet.MoveFirst();
do
{ if(dlg.m_Num==m_pSet.m_Num)
{
CString s;
s=m_pSet.m_StTime.Format("%H:%M");
if(s!="00:00"&&s!="08:00")
{
m_pSet.Edit();
if(m_pSet.m_NgtLong==false)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -