📄 serviceregview.cpp
字号:
// ServiceRegView.cpp : implementation file
//
#include "stdafx.h"
#include "Final.h"
#include "ServiceRegView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CServiceRegView
IMPLEMENT_DYNCREATE(CServiceRegView, CFormView)
CServiceRegView::CServiceRegView()
: CFormView(CServiceRegView::IDD)
{
//{{AFX_DATA_INIT(CServiceRegView)
m_orderid = _T("");
m_ServiceID = _T("");
//}}AFX_DATA_INIT
CFinalApp *pApp=(CFinalApp *)AfxGetApp();
pConn=pApp->m_pConnection;
}
CServiceRegView::~CServiceRegView()
{
}
void CServiceRegView::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CServiceRegView)
DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
DDX_Text(pDX, IDC_EDIT1, m_orderid);
DDV_MaxChars(pDX, m_orderid, 6);
DDX_Text(pDX, IDC_EDIT2, m_ServiceID);
DDV_MaxChars(pDX, m_ServiceID, 4);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CServiceRegView, CFormView)
//{{AFX_MSG_MAP(CServiceRegView)
ON_BN_CLICKED(IDC_BUTTON1, OnServiceAdd)
ON_BN_CLICKED(IDC_BUTTON2, OnRefresh)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CServiceRegView diagnostics
#ifdef _DEBUG
void CServiceRegView::AssertValid() const
{
CFormView::AssertValid();
}
void CServiceRegView::Dump(CDumpContext& dc) const
{
CFormView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CServiceRegView message handlers
void CServiceRegView::Refresh()
{
m_ListCtrl.DeleteAllItems();
_RecordsetPtr m_pRest;
m_pRest.CreateInstance(__uuidof(Recordset));
try
{
m_pRest->Open("select * from serviceTable order by serviceID ASC", //查询用户信息
pConn.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
_variant_t var1,var2,var3;
int i=-1;
while(!m_pRest->adoEOF)
{
var1=m_pRest->GetCollect("serviceID");
var2=m_pRest->GetCollect("serviceName");
var3=m_pRest->GetCollect("servicePrice");
LV_ITEM lvitem;
lvitem.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_STATE;
lvitem.state = 0;
lvitem.stateMask = 0;
char temp[50];
lvitem.iItem = ++i;
lvitem.iSubItem = 0;
lvitem.pszText =itoa(i, temp, 10);
m_ListCtrl.InsertItem(&lvitem);
m_ListCtrl.SetItemText(i, 0, _T((LPCSTR)_bstr_t(var1)));
m_ListCtrl.SetItemText(i, 1, _T((LPCSTR)_bstr_t(var2)));
m_ListCtrl.SetItemText(i, 2, _T((LPCSTR)_bstr_t(var3)));
m_pRest->MoveNext();
}
}
void CServiceRegView::OnInitialUpdate()
{
CFormView::OnInitialUpdate();
m_ListCtrl.InsertColumn(0,"服务编号",LVCFMT_LEFT,80);
m_ListCtrl.InsertColumn(1,"服务名称",LVCFMT_LEFT,80);
m_ListCtrl.InsertColumn(2,"服务价格",LVCFMT_LEFT,80);
m_ListCtrl.SetExtendedStyle(m_ListCtrl.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
CServiceRegView::Refresh();
}
void CServiceRegView::OnServiceAdd()
{
UpdateData(TRUE);
if(m_orderid=="" || m_ServiceID=="")AfxMessageBox("输入数据不完整,请重新输入!");
else
{
_CommandPtr m_pComm;
m_pComm.CreateInstance(__uuidof(Command));
try
{
m_pComm->ActiveConnection=pConn;
m_pComm->CommandText=_bstr_t("regservice");
m_pComm->CommandType=adCmdStoredProc;
_variant_t vvar1,vvar2;
vvar1=_variant_t(m_orderid);
vvar2=_variant_t(m_ServiceID);
_ParameterPtr mp_var1,mp_var2;
mp_var1.CreateInstance(__uuidof(Parameter));
mp_var2.CreateInstance(__uuidof(Parameter));
mp_var1=m_pComm->CreateParameter(
_bstr_t("orderid"),
adVarChar,
adParamInput,
6,
vvar1);
m_pComm->Parameters->Append(mp_var1);
mp_var2=m_pComm->CreateParameter(
_bstr_t("serviceid"),
adVarChar,
adParamInput,
4,
vvar2);
m_pComm->Parameters->Append(mp_var2);
m_pComm->Execute(NULL,NULL,adCmdStoredProc);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
AfxMessageBox("添加服务完成!");
GetDlgItem(IDC_EDIT1)->SetWindowText("");
GetDlgItem(IDC_EDIT2)->SetWindowText("");
}
}
void CServiceRegView::OnRefresh()
{
CServiceRegView::Refresh();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -