⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 commodityinfor.cpp

📁 基于VC+SQL SERVER环境开发的企业商品销售系统.完整的数据库和原代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// CommodityInfor.cpp : implementation file
//

#include "stdafx.h"
#include "Sale.h"
#include "CommodityInfor.h"
#include "Affirm.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CCommodityInfor dialog


CCommodityInfor::CCommodityInfor(CWnd* pParent /*=NULL*/)
	: CDialog(CCommodityInfor::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCommodityInfor)
	m_commodityID = _T("");
	m_commodityName = _T("");
	m_standard = _T("");
	m_model = _T("");
	m_price = 0.0f;
	m_qualityGuarantee = 0;
	m_unit = _T("");
	m_colorType = _T("");
	m_qualityLevel = _T("");
	m_finishedProductRate = 0;
	m_storedHouse = _T("");
	m_taxRate = 0;
	m_commodityType = _T("");
	m_remark = _T("");
	m_maintenance = _T("");
	//}}AFX_DATA_INIT
}


void CCommodityInfor::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCommodityInfor)
	DDX_Control(pDX, IDC_storedHouse, m_storeHouseCombo);
	DDX_Control(pDX, IDC_commodityType, m_commidityTypeCombo);
	DDX_Control(pDX, IDC_commodityLIST, m_commodityList);
	DDX_Text(pDX, IDC_commodityID, m_commodityID);
	DDX_Text(pDX, IDC_commodityName, m_commodityName);
	DDX_CBString(pDX, IDC_standard, m_standard);
	DDX_CBString(pDX, IDC_model, m_model);
	DDX_Text(pDX, IDC_price, m_price);
	DDX_Text(pDX, IDC_qualityGuarantee, m_qualityGuarantee);
	DDX_CBString(pDX, IDC_unit, m_unit);
	DDX_Text(pDX, IDC_colorType, m_colorType);
	DDX_CBString(pDX, IDC_quanlityLevel, m_qualityLevel);
	DDX_Text(pDX, IDC_finishedProductRate, m_finishedProductRate);
	DDX_CBString(pDX, IDC_storedHouse, m_storedHouse);
	DDX_Text(pDX, IDC_taxRate, m_taxRate);
	DDX_CBString(pDX, IDC_commodityType, m_commodityType);
	DDX_Text(pDX, IDC_remark, m_remark);
	DDX_CBString(pDX, IDC_maintenance, m_maintenance);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCommodityInfor, CDialog)
	//{{AFX_MSG_MAP(CCommodityInfor)
	ON_BN_CLICKED(IDC_exit, OnExit)
	ON_NOTIFY(NM_CLICK, IDC_commodityLIST, OnClickCommodityLIST)
	ON_BN_CLICKED(IDC_add, OnAdd)
	ON_BN_CLICKED(IDC_delete, OnDelete)
	ON_BN_CLICKED(IDC_modify, OnModify)
	ON_BN_CLICKED(IDC_save, OnSave)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCommodityInfor message handlers

void CCommodityInfor::OnExit() 
{
	this->OnCancel();
}

void CCommodityInfor::OnClickCommodityLIST(NMHDR* pNMHDR, LRESULT* pResult) 
{
	UpdateData(true);
	POSITION pos = m_commodityList.GetFirstSelectedItemPosition();
	if(pos)
	{
		int nFirstSelItem = m_commodityList.GetNextSelectedItem(pos);
		m_commodityID=m_commodityList.GetItemText(nFirstSelItem,0);
		m_commodityName=m_commodityList.GetItemText(nFirstSelItem,1);
		m_standard=m_commodityList.GetItemText(nFirstSelItem,2);
		m_model=m_commodityList.GetItemText(nFirstSelItem,3);
		CString str;
		str=m_commodityList.GetItemText(nFirstSelItem,4);
		m_price= atof(str);
//		m_price=m_commodityList.GetItemText(nFirstSelItem,4);
		str=m_commodityList.GetItemText(nFirstSelItem,5);
		m_qualityGuarantee=atoi(str);
//		m_qualityGuarantee=m_commodityList.GetItemText(nFirstSelItem,5);
		m_maintenance=m_commodityList.GetItemText(nFirstSelItem,6);
		m_unit=m_commodityList.GetItemText(nFirstSelItem,7);
		m_colorType=m_commodityList.GetItemText(nFirstSelItem,8);
		m_qualityLevel=m_commodityList.GetItemText(nFirstSelItem,9);
		str=m_commodityList.GetItemText(nFirstSelItem,10);
		m_finishedProductRate=atof(str);
//		m_finishedProductRate=m_commodityList.GetItemText(nFirstSelItem,10);
		m_storedHouse=m_commodityList.GetItemText(nFirstSelItem,11);
		str=m_commodityList.GetItemText(nFirstSelItem,12);
		m_taxRate=atof(str);
//		m_taxRate=m_commodityList.GetItemText(nFirstSelItem,12);
		m_commodityType=m_commodityList.GetItemText(nFirstSelItem,13);
		m_remark=m_commodityList.GetItemText(nFirstSelItem,14);
	}

	bt_modify->EnableWindow(true);
	bt_delete->EnableWindow(true);
	UpdateData(false);
	
	*pResult = 0;
}

BOOL CCommodityInfor::OnInitDialog() 
{
	CDialog::OnInitDialog();

	DWORD style;
	style=m_commodityList.GetExStyle();
	style=(style|LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT)&(~LVS_EX_CHECKBOXES) ;
	m_commodityList.SetExtendedStyle(style);
	
	m_commodityList.InsertColumn(0,"商品编号",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(1,"商品名称",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(2,"规格",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(3,"型号",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(4,"单价",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(5,"保质期",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(6,"维护期",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(7,"计量单位",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(8,"颜色类别",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(9,"质量等级",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(10,"成品率",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(11,"存放仓库",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(12,"税率",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(13,"类别",LVCFMT_LEFT,100);
	m_commodityList.InsertColumn(14,"备注",LVCFMT_LEFT,100);


	_RecordsetPtr m_pListRecordset;    //用于创建一个查询记录集

	CString strSQL;
	HRESULT hTRes;
	strSQL="select * from commodityType";
	_RecordsetPtr m_pCommodityTypeRecordset;
	hTRes = m_pCommodityTypeRecordset.CreateInstance(_T("ADODB.Recordset"));
	if (SUCCEEDED(hTRes))
	{
	
		hTRes = m_pCommodityTypeRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
		((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
		if(SUCCEEDED(hTRes))
		{
			TRACE(_T("连接成功!\n"));
	
			while(!(m_pCommodityTypeRecordset->adoEOF))
			{		
			m_commidityTypeCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pCommodityTypeRecordset->GetCollect("commodityTypeID")));
			m_pCommodityTypeRecordset->MoveNext();
			}
		}
	}
	m_pCommodityTypeRecordset->Close();

	strSQL="select * from storeHouse";
	_RecordsetPtr m_pStoreHouseRecordset;
	hTRes = m_pStoreHouseRecordset.CreateInstance(_T("ADODB.Recordset"));
	if (SUCCEEDED(hTRes))
	{
	
		hTRes = m_pStoreHouseRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
		((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
				adOpenDynamic,adLockPessimistic,adCmdText);
		if(SUCCEEDED(hTRes))
		{
			TRACE(_T("连接成功!\n"));
			while(!(m_pStoreHouseRecordset->adoEOF))
			{		
				m_storeHouseCombo.AddString(((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pStoreHouseRecordset->GetCollect("storeHouseID")));
				m_pStoreHouseRecordset->MoveNext();
			}
		}
	}
	m_pStoreHouseRecordset->Close();

	strSQL="SELECT * FROM commodity";
		try
		{
			HRESULT hTRes;
			hTRes = m_pListRecordset.CreateInstance(_T("ADODB.Recordset"));
			if (SUCCEEDED(hTRes))
			{
				hTRes = m_pListRecordset->Open((LPTSTR)strSQL.GetBuffer(130),
					((CSaleApp*)AfxGetApp())->m_pConn.GetInterfacePtr(),
					adOpenDynamic,adLockPessimistic,adCmdText);
				if(SUCCEEDED(hTRes))
				{
					TRACE(_T("连接成功!\n"));
					m_pListRecordset->MoveFirst();
					if (!(m_pListRecordset->adoEOF))
					{
						int i=0;
						while(!m_pListRecordset->adoEOF)
						{
							m_commodityList.InsertItem(i,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("commodityID")));
							m_commodityList.SetItemText(i,1,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("commodityName")));				
							m_commodityList.SetItemText(i,2,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("standard")));
							m_commodityList.SetItemText(i,3,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("model")));
							m_commodityList.SetItemText(i,4,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("price")));
							m_commodityList.SetItemText(i,5,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("qualityGuarantee")));
							m_commodityList.SetItemText(i,6,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("maintenance")));
							m_commodityList.SetItemText(i,7,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("unit")));
							m_commodityList.SetItemText(i,8,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("colorType")));
							
							m_commodityList.SetItemText(i,9,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("quanlityLevel")));
							m_commodityList.SetItemText(i,10,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("finishedProductRate")));
							m_commodityList.SetItemText(i,11,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("storedHouse")));
							m_commodityList.SetItemText(i,12,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("taxRate")));
							
							m_commodityList.SetItemText(i,13,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("commodityType")));
							m_commodityList.SetItemText(i,14,((CSaleApp*)AfxGetApp())->GetStringFromVariant(m_pListRecordset->GetCollect("remark")));
							if (!(m_pListRecordset->adoEOF))
							{								
								m_pListRecordset->MoveNext();
								i++;
							}
						}		
					}
				}
			}
		}
		catch(_com_error e)///捕捉异常
		{
			CString errormessage;
			MessageBox("创建客户记录集失败!","错误");
		}
//	}
	flag=0;
	
	tx_commodityID=GetDlgItem(IDC_commodityID);
	tx_commodityName=GetDlgItem(IDC_commodityName);
	tx_standard=GetDlgItem(IDC_standard);
	tx_model=GetDlgItem(IDC_model);
	tx_price=GetDlgItem(IDC_price);
	tx_qualityGuarantee=GetDlgItem(IDC_qualityGuarantee);
	tx_maintenance=GetDlgItem(IDC_maintenance);
	tx_unit=GetDlgItem(IDC_unit);
	tx_colorType=GetDlgItem(IDC_colorType);
	tx_qualityLevel=GetDlgItem(IDC_quanlityLevel);
	tx_finishedProductRate=GetDlgItem(IDC_finishedProductRate);
	tx_storedHouse=GetDlgItem(IDC_storedHouse);
	tx_taxRate=GetDlgItem(IDC_taxRate);
	tx_commodityType=GetDlgItem(IDC_commodityType);
	tx_remark=GetDlgItem(IDC_remark);

	bt_delete=GetDlgItem(IDC_delete);
	bt_add=GetDlgItem(IDC_add);
	bt_save=GetDlgItem(IDC_save);
	bt_modify=GetDlgItem(IDC_modify);


//	bt_add=GetDlgItem(IDC_BUTTON2);
	bt_save->EnableWindow(false);
	bt_modify->EnableWindow(false);
	bt_delete->EnableWindow(false);

	tx_commodityID->EnableWindow(false);
	tx_commodityName->EnableWindow(false);
	tx_standard->EnableWindow(false);
	tx_model->EnableWindow(false);
	tx_price->EnableWindow(false);
	tx_qualityGuarantee->EnableWindow(false);
	tx_maintenance->EnableWindow(false);
	tx_unit->EnableWindow(false);
	tx_colorType->EnableWindow(false);
	tx_qualityLevel->EnableWindow(false);
	tx_finishedProductRate->EnableWindow(false);
	tx_storedHouse->EnableWindow(false);
	tx_taxRate->EnableWindow(false);
	tx_commodityType->EnableWindow(false);
	tx_remark->EnableWindow(false);
	
	UpdateData(false);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}


void CCommodityInfor::OnAdd() 
{
	UpdateData(true);
	int commidityID=((CSaleApp*)AfxGetApp())->m_pIDRecordset->GetCollect("commidityID").intVal;
	if(commidityID<10)
		m_commodityID.Format("commidity0000%d",commidityID);
	else if(commidityID<100&&commidityID>9)
		m_commodityID.Format("commidity000%d",commidityID);
	else if(commidityID<1000&&commidityID>99)
		m_commodityID.Format("commidity00%d",commidityID);

	CString str;
	str.Format("%d",commidityID+1);
	((CSaleApp*)AfxGetApp())->m_pIDRecordset->PutCollect("commidityID",_variant_t(str));
	((CSaleApp*)AfxGetApp())->m_pIDRecordset->Update();
//	m_commodityID = _T("");
	m_commodityName = _T("");
	m_standard = _T("");
	m_model = _T("");
	m_price = 0.0f;
	m_qualityGuarantee = 0;
	m_maintenance = _T("");
	m_unit = _T("");
	m_colorType = _T("");
	m_qualityLevel = _T("");
	m_finishedProductRate = 0;
	m_storedHouse = _T("");
	m_taxRate = 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -