misdoc.cpp
来自「可以应用于企业商品管理」· C++ 代码 · 共 297 行
CPP
297 行
// MISDoc.cpp : implementation of the CMISDoc class
//
#include "stdafx.h"
#include "MIS.h"
#include "MISDoc.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMISDoc
IMPLEMENT_DYNCREATE(CMISDoc, CDocument)
BEGIN_MESSAGE_MAP(CMISDoc, CDocument)
//{{AFX_MSG_MAP(CMISDoc)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMISDoc construction/destruction
//##ModelId=46B6093A02FF
CMISDoc::CMISDoc():m_AccessDB("mis.mdb")
{
if( !m_AccessDB.Initialize())
{
MessageBox( NULL , "数据库初始化失败" , "错误" , NULL);
}
else
{
//数据库初始化成功就装入数据。
//装入销售数据
m_AccessDB.GetData(m_vOrder);
//装入进货数据
m_AccessDB.GetData(m_vStock);
//装入商品数据
m_AccessDB.GetData(m_vProduct);
}
}
//##ModelId=46B6093A037D
CMISDoc::~CMISDoc()
{
FreeStockVector();
FreeProductVector();
FreeOrderVector();
}
//##ModelId=46B6093A036E
BOOL CMISDoc::OnNewDocument()
{
if (!CDocument::OnNewDocument())
return FALSE;
// TODO: add reinitialization code here
// (SDI documents will reuse this document)
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CMISDoc serialization
//##ModelId=46B6093A037A
void CMISDoc::Serialize(CArchive& ar)
{
if (ar.IsStoring())
{
// TODO: add storing code here
}
else
{
// TODO: add loading code here
}
}
/////////////////////////////////////////////////////////////////////////////
// CMISDoc diagnostics
#ifdef _DEBUG
//##ModelId=46B6093A037F
void CMISDoc::AssertValid() const
{
CDocument::AssertValid();
}
//##ModelId=46B6093A038A
void CMISDoc::Dump(CDumpContext& dc) const
{
CDocument::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CMISDoc commands
//##ModelId=46B6093A030D
vector<LPPRODUCTINFO>& CMISDoc::GetProduct()
{
return m_vProduct;
}
//得到进货数据
//##ModelId=46B6093A030E
vector<LPSTOCKINFO>& CMISDoc::GetStock()
{
return m_vStock;
}
//得到销售数据
//##ModelId=46B6093A030F
vector<LPORDERINFO>& CMISDoc::GetOrder()
{
return m_vOrder;
}
//添加商品数据
//##ModelId=46B6093A0310
void CMISDoc::AddProduct(LPPRODUCTINFO pIn)
{
//向数据库添加数据。
m_AccessDB.InsertData(pIn);
RefreshProduct();
}
//添加进货数据
//##ModelId=46B6093A031D
void CMISDoc::AddStock(LPSTOCKINFO pIn)
{
//向数据库添加数据。
m_AccessDB.InsertData(pIn);
RefreshStock();
}
//添加销售数据
//##ModelId=46B6093A031F
void CMISDoc::AddOrder(LPORDERINFO pIn)
{
//向数据库添加数据。
m_AccessDB.InsertData(pIn);
RefreshOrder();
}
//修改商品数据
//##ModelId=46B6093A032C
void CMISDoc::ModifyProduct(LPPRODUCTINFO pIn)
{
m_AccessDB.UpdateData(pIn);
RefreshProduct();
}
//修改进货数据
//##ModelId=46B6093A032E
void CMISDoc::ModifyStock(LPSTOCKINFO pIn)
{
m_AccessDB.UpdateData(pIn);
RefreshStock();
}
//修改销售数据
//##ModelId=46B6093A0330
void CMISDoc::ModifyOrder(LPORDERINFO pIn)
{
m_AccessDB.UpdateData(pIn);
RefreshOrder();
}
//刷新商品数据
//##ModelId=46B6093A03D9
void CMISDoc::RefreshProduct()
{
FreeProductVector();
//装入商品数据
m_AccessDB.GetData(m_vProduct);
}
//刷新进货数据
//##ModelId=46B6093A03DA
void CMISDoc::RefreshStock()
{
FreeStockVector();
//装入进货数据
m_AccessDB.GetData(m_vStock);
}
//刷新销售数据
//##ModelId=46B6093A03DB
void CMISDoc::RefreshOrder()
{
FreeOrderVector();
//装入进货数据
m_AccessDB.GetData(m_vOrder);
}
//释放销售数据
//##ModelId=46B6093A03C8
void CMISDoc::FreeOrderVector()
{
for( size_t i = 0 ; i < m_vOrder.size() ; i++)
{
SAFE_DELETE(m_vOrder[i]);
}
//清空vector
vector<LPORDERINFO>().swap(m_vOrder);
}
//释放进货数据
//##ModelId=46B6093A03C9
void CMISDoc::FreeStockVector()
{
for( size_t i = 0 ; i < m_vStock.size() ; i++)
{
SAFE_DELETE(m_vStock[i]);
}
//清空vector
vector<LPSTOCKINFO>().swap(m_vStock);
}
//释放商品数据
//##ModelId=46B6093A03D8
void CMISDoc::FreeProductVector()
{
for( size_t i = 0 ; i < m_vProduct.size() ; i++)
{
SAFE_DELETE(m_vProduct[i]);
}
//清空vector
vector<LPPRODUCTINFO>().swap(m_vProduct);
}
//删除商品数据
//##ModelId=46B6093A033D
void CMISDoc::DelProduct(vector<LPPRODUCTINFO>& pIn)
{
for( size_t i = 0 ; i < pIn.size() ; i++)
{
m_AccessDB.DeleteData(pIn[i]);
}
RefreshProduct();
}
//删除进货数据
//##ModelId=46B6093A034B
void CMISDoc::DelStock(vector<LPSTOCKINFO>& pIn)
{
for( size_t i = 0 ; i < pIn.size() ; i++)
{
m_AccessDB.DeleteData(pIn[i]);
}
RefreshStock();
}
//删除销售数据
//##ModelId=46B6093A034D
void CMISDoc::DelOrder(vector<LPORDERINFO>& pIn)
{
for( size_t i = 0 ; i < pIn.size() ; i++)
{
m_AccessDB.DeleteData(pIn[i]);
}
RefreshOrder();
}
//根据商品编号查询进货数据
//##ModelId=46B6093A035B
void CMISDoc::QueryStock(DWORD dwProductID)
{
FreeStockVector();
m_AccessDB.QueryStockInfoByProductID(dwProductID , m_vStock);
}
//根据商品编号删除进货数据
//##ModelId=46B6093A036C
void CMISDoc::QueryOrder(DWORD dwProductID)
{
FreeOrderVector();
m_AccessDB.QueryOrderInfoByProductID(dwProductID , m_vOrder);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?