📄 projectview.cpp
字号:
// ProjectView.cpp : implementation of the CProjectView class
//
#include "stdafx.h"
#include "Project.h"
#include "ProjectDoc.h"
#include "ProjectView.h"
#include "MyDlgBar.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CProjectView
IMPLEMENT_DYNCREATE(CProjectView, CListView)
BEGIN_MESSAGE_MAP(CProjectView, CListView)
//{{AFX_MSG_MAP(CProjectView)
ON_COMMAND(ID_LINK_BOOK, OnLinkBook)
ON_COMMAND(ID_LINK_EMP, OnLinkEmp)
ON_COMMAND(ID_LINK_VIP, OnLinkVip)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CProjectView construction/destruction
CProjectView::CProjectView()
{
ListCtrl = 0;
}
CProjectView::~CProjectView()
{
}
BOOL CProjectView::PreCreateWindow(CREATESTRUCT& cs)
{
if (!CListView::PreCreateWindow (cs))
return FALSE;
cs.style &= ~LVS_TYPEMASK;
cs.style |= LVS_REPORT|LVS_NOSORTHEADER;
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CProjectView drawing
void CProjectView::OnDraw(CDC* pDC)
{
CProjectDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
}
void CProjectView::OnInitialUpdate()
{
CListView::OnInitialUpdate();
CProjectApp *p=(CProjectApp *)AfxGetApp();
pConn = p->pConn;
GetListCtrl ().SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
GetListCtrl ().SetBkColor(RGB(255,255,255));
OnLinkBook();
}
/////////////////////////////////////////////////////////////////////////////
// CProjectView diagnostics
#ifdef _DEBUG
void CProjectView::AssertValid() const
{
CListView::AssertValid();
}
void CProjectView::Dump(CDumpContext& dc) const
{
CListView::Dump(dc);
}
CProjectDoc* CProjectView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CProjectDoc)));
return (CProjectDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CProjectView message handlers
void CProjectView::OnLinkBook()
{
CString _sql;
_sql = "select * from sell where trunc(selltime)=trunc(sysdate)";
_bstr_t sql = _sql;
try
{
pRst = pConn->Execute(sql,NULL,adCmdText);
GetListCtrl ().DeleteAllItems();
for(int i = 9;i >= 0;i--)
GetListCtrl ().DeleteColumn(i);
GetListCtrl ().InsertColumn (0, _T ("出售日期"), LVCFMT_CENTER, 160);
GetListCtrl ().InsertColumn (1, _T ("ISBN"), LVCFMT_CENTER, 100);
GetListCtrl ().InsertColumn (2, _T ("书名"), LVCFMT_CENTER, 120);
GetListCtrl ().InsertColumn (3, _T ("作者"), LVCFMT_CENTER, 90);
GetListCtrl ().InsertColumn (4, _T ("类别"), LVCFMT_CENTER, 80);
GetListCtrl ().InsertColumn (6, _T ("出售价格"), LVCFMT_CENTER, 60);
GetListCtrl ().InsertColumn (7, _T ("折扣"), LVCFMT_CENTER, 60);
GetListCtrl ().InsertColumn (8, _T ("数量"), LVCFMT_CENTER, 60);
GetListCtrl ().InsertColumn (9, _T ("操作员"), LVCFMT_CENTER, 60);
while(!pRst->End)
{
_variant_t vSELLTIME = pRst->Fields->GetItem(long(0))->Value;
_variant_t vISBN = pRst->Fields->GetItem(long(1))->Value;
_variant_t vSELLNAME = pRst->Fields->GetItem(long(2))->Value;
_variant_t vSELLNUM = pRst->Fields->GetItem(long(3))->Value;
_variant_t vSELLPRICE = pRst->Fields->GetItem(long(4))->Value;
_variant_t vDISCOUNT = pRst->Fields->GetItem(long(5))->Value;
_variant_t vEMPID = pRst->Fields->GetItem(long(6))->Value;
_variant_t vSELLAUTHOR = pRst->Fields->GetItem(long(7))->Value;
_variant_t vCLASS = pRst->Fields->GetItem(long(8))->Value;
CString selltime = (char *)_bstr_t(vSELLTIME);
CString sellisbn = (char *)_bstr_t(vISBN);
CString sellname = (char *)_bstr_t(vSELLNAME);
CString sellnum = (char *)_bstr_t(vSELLNUM);
CString sellprice = (char *)_bstr_t(vSELLPRICE);
CString selldiscount;
if(vDISCOUNT.vt == VT_NULL)
selldiscount = "无";
else
selldiscount = (char *)_bstr_t(vDISCOUNT);
CString sellempid = (char *)_bstr_t(vEMPID);
CString sellauthor = (char *)_bstr_t(vSELLAUTHOR);
CString sellclass = (char *)_bstr_t(vCLASS);
GetListCtrl ().InsertItem(0,selltime);
GetListCtrl ().SetItemText(0,1,sellisbn);
GetListCtrl ().SetItemText(0,2,sellname);
GetListCtrl ().SetItemText(0,3,sellauthor);
GetListCtrl ().SetItemText(0,4,sellclass);
GetListCtrl ().SetItemText(0,5,sellprice);
GetListCtrl ().SetItemText(0,6,selldiscount);
GetListCtrl ().SetItemText(0,7,sellnum);
GetListCtrl ().SetItemText(0,8,sellempid);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
}
}
void CProjectView::OnLinkEmp()
{
CString _sql;
_sql = "select * from emp";
_bstr_t sql = _sql;
try
{
pRst = pConn->Execute(sql,NULL,adCmdText);
GetListCtrl ().DeleteAllItems();
for(int i = 9;i >= 0;i--)
GetListCtrl ().DeleteColumn(i);
GetListCtrl ().InsertColumn (0, _T ("员工号"), LVCFMT_CENTER, 80);
GetListCtrl ().InsertColumn (1, _T ("姓名"), LVCFMT_CENTER, 80);
GetListCtrl ().InsertColumn (2, _T ("性别"), LVCFMT_CENTER, 70);
GetListCtrl ().InsertColumn (3, _T ("年龄"), LVCFMT_CENTER, 70);
GetListCtrl ().InsertColumn (4, _T ("身份证"), LVCFMT_CENTER, 130);
GetListCtrl ().InsertColumn (5, _T ("住址"), LVCFMT_CENTER, 130);
GetListCtrl ().InsertColumn (6, _T ("联系电话"), LVCFMT_CENTER, 120);
GetListCtrl ().InsertColumn (7, _T ("电子邮件"), LVCFMT_CENTER, 120);
GetListCtrl ().InsertColumn (8, _T ("登记日期"), LVCFMT_CENTER, 120);
while(!pRst->End)
{
_variant_t vEMPNO = pRst->Fields->GetItem(long(0))->Value;
_variant_t vNAME = pRst->Fields->GetItem(long(1))->Value;
_variant_t vGENDER = pRst->Fields->GetItem(long(2))->Value;
_variant_t vAGE = pRst->Fields->GetItem(long(3))->Value;
_variant_t vID = pRst->Fields->GetItem(long(4))->Value;
_variant_t vADDRESS = pRst->Fields->GetItem(long(5))->Value;
_variant_t vTELE = pRst->Fields->GetItem(long(6))->Value;
_variant_t vEMAIL = pRst->Fields->GetItem(long(7))->Value;
_variant_t vREGDATE = pRst->Fields->GetItem(long(8))->Value;
CString vipno = (char *)_bstr_t(vEMPNO);
CString name = (char *)_bstr_t(vNAME);
CString gender;
if(vGENDER.iVal == 0)
gender = "男";
else
gender = "女";
CString age = (char *)_bstr_t(vAGE);
CString id;
if(vID.vt == VT_NULL)
id = "无";
else
id = (char *)_bstr_t(vID);
CString regdate = (char *)_bstr_t(vADDRESS);
CString tele;
if(vTELE.vt == VT_NULL)
tele = "无";
else
tele = (char *)_bstr_t(vTELE);
CString com;
if(vEMAIL.vt == VT_NULL)
com = "无";
else
com = (char *)_bstr_t(vEMAIL);
CString consume;
if(vREGDATE.vt == VT_NULL)
consume = "无";
else
consume = (char *)_bstr_t(vREGDATE);
GetListCtrl ().InsertItem(0,vipno);
GetListCtrl ().SetItemText(0,1,name);
GetListCtrl ().SetItemText(0,2,gender);
GetListCtrl ().SetItemText(0,3,age);
GetListCtrl ().SetItemText(0,4,id);
GetListCtrl ().SetItemText(0,5,regdate);
GetListCtrl ().SetItemText(0,6,tele);
GetListCtrl ().SetItemText(0,7,com);
GetListCtrl ().SetItemText(0,8,consume);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
}
}
void CProjectView::OnLinkVip()
{
CString _sql;
_sql = "select * from vip";
_bstr_t sql = _sql;
try
{
pRst = pConn->Execute(sql,NULL,adCmdText);
GetListCtrl ().DeleteAllItems();
for(int i = 9;i >= 0;i--)
GetListCtrl ().DeleteColumn(i);
GetListCtrl ().InsertColumn(0,_T("会员代号"),LVCFMT_CENTER,80);
GetListCtrl ().InsertColumn(1,_T("姓名"),LVCFMT_CENTER,80);
GetListCtrl ().InsertColumn(2,_T("性别"),LVCFMT_CENTER,60);
GetListCtrl ().InsertColumn(3,_T("年龄"),LVCFMT_CENTER,60);
GetListCtrl ().InsertColumn(4,_T("身份证"),LVCFMT_CENTER,130);
GetListCtrl ().InsertColumn(5,_T("登记日期"),LVCFMT_CENTER,140);
GetListCtrl ().InsertColumn(6,_T("电话"),LVCFMT_CENTER,100);
GetListCtrl ().InsertColumn(7,_T("工作单位"),LVCFMT_CENTER,100);
GetListCtrl ().InsertColumn(8,_T("消费额"),LVCFMT_CENTER,100);
while(!pRst->End)
{
_variant_t vVIPNO = pRst->Fields->GetItem(long(0))->Value;
_variant_t vNAME = pRst->Fields->GetItem(long(1))->Value;
_variant_t vGENDER = pRst->Fields->GetItem(long(2))->Value;
_variant_t vAGE = pRst->Fields->GetItem(long(4))->Value;
_variant_t vID = pRst->Fields->GetItem(long(3))->Value;
_variant_t vREGDATE = pRst->Fields->GetItem(long(6))->Value;
_variant_t vTELE = pRst->Fields->GetItem(long(5))->Value;
_variant_t vCOM = pRst->Fields->GetItem(long(7))->Value;
_variant_t vCONSUME = pRst->Fields->GetItem(long(8))->Value;
CString vipno = (char *)_bstr_t(vVIPNO);
CString name = (char *)_bstr_t(vNAME);
CString gender;
if(vGENDER.iVal == 0)
gender = "男";
else
gender = "女";
CString age = (char *)_bstr_t(vAGE);
CString id;
if(vID.vt == VT_NULL)
id = "0";
else
id = (char *)_bstr_t(vID);
CString regdate = (char *)_bstr_t(vREGDATE);
CString tele;
if(vTELE.vt == VT_NULL)
tele = "0";
else
tele = (char *)_bstr_t(vTELE);
CString com;
if(vCOM.vt == VT_NULL)
com = "无";
else
com = (char *)_bstr_t(vCOM);
CString consume;
if(vCONSUME.vt == VT_NULL)
consume = "无";
else
consume = (char *)_bstr_t(vCONSUME);
GetListCtrl ().InsertItem(0,vipno);
GetListCtrl ().SetItemText(0,1,name);
GetListCtrl ().SetItemText(0,2,gender);
GetListCtrl ().SetItemText(0,3,age);
GetListCtrl ().SetItemText(0,4,id);
GetListCtrl ().SetItemText(0,5,regdate);
GetListCtrl ().SetItemText(0,6,tele);
GetListCtrl ().SetItemText(0,7,com);
GetListCtrl ().SetItemText(0,8,consume);
pRst->MoveNext();
}
pRst->Close();
pRst.Release();
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -