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

📄 cashieroperationdlg.cpp

📁 实现超市收银管理.能实现超市的正常收银情况........
💻 CPP
📖 第 1 页 / 共 3 页
字号:
			e->Delete();
			return;
		}
		break;
	case GOODS_DELETE:

		try{
			if(m_Goods.IsOpen())
				m_Goods.Close();

			if(m_strEdit1.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gno = '%s'",m_strEdit1);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit2.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gname = '%s'",m_strEdit2);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

// 			if(m_strEdit3.GetLength())
// 			{
// 				if(bFirst)
// 					m_Goods.m_strFilter += " and ";
// 				strFilter.Format("Gprice = '%s'",m_strEdit3);
// 				m_Goods.m_strFilter += strFilter;
// 				bFirst = TRUE;
// 			}
// 
// 			if(m_strEdit4.GetLength())
// 			{
// 				if(bFirst)
// 					m_Goods.m_strFilter += " and ";
// 				strFilter.Format("Gstorage = '%s'",m_strEdit4);
// 				m_Goods.m_strFilter += strFilter;
// 				bFirst = TRUE;
// 			}
			m_Goods.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
			

			if (m_Goods.IsOpen() && !m_Goods.IsEOF())
			{
				m_Goods.Delete();
				if(m_Goods.IsOpen())
					m_Goods.Close();
				AfxMessageBox("删除成功!");
			}
			else
			{
				if(m_Goods.IsOpen())
					m_Goods.Close();
				AfxMessageBox("该记录不存在,无法删除!");				
			}
		}
		catch(CDBException *e)
		{
			e->ReportError();
			return;
		}
		break;
	case GOODS_EDIT:
		if (m_strEdit1.IsEmpty())
		{
			AfxMessageBox("请输入商品编号!");
			return;
		}

		try
		{
			if(m_Goods.IsOpen())
				m_Goods.Close();
			
			m_Goods.m_strFilter.Format("Gno = '%s'",m_strEdit1);

			m_Goods.Open(CGoodsRecordSet::snapshot,NULL,CGoodsRecordSet::none);
			if(m_Goods.IsEOF())
			{
				m_Goods.Close();
				AfxMessageBox("不存在此商品!");
				return;
			}

				m_Goods.Edit();
				if(!m_strEdit2.IsEmpty())
					m_Goods.m_Gname = m_strEdit2;
				if(!m_strEdit3.IsEmpty())
					m_Goods.m_Gprice = m_strEdit3;
				if(!m_strEdit4.IsEmpty())
				{
					char cStore[10];
					for (i=0;i<m_strEdit4.GetLength();i++)
					{
						cStore[i] = m_strEdit4.GetAt(i);
					}
					int nStore = atoi(cStore);
					m_Goods.m_Gstorage = nStore;
				}

				if(m_Goods.CanUpdate())
				{
					bRet = m_Goods.Update();
					AfxMessageBox("修改商品信息成功!");
				}

			if(m_Goods.IsOpen())
					m_Goods.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		break;

	case GOODS_QUERY:
		try
		{
			if(m_Goods.IsOpen())
				m_Goods.Close();

			if(m_strEdit1.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gno = '%s'",m_strEdit1);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit2.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gname = '%s'",m_strEdit2);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit3.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gprice = '%s'",m_strEdit3);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit4.GetLength())
			{
				if(bFirst)
					m_Goods.m_strFilter += " and ";
				strFilter.Format("Gstorage = '%s'",m_strEdit4);
				m_Goods.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			m_Goods.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);

			if(m_Goods.IsEOF())
			{
				AfxMessageBox("没有满足条件的记录!");
			}
			i=0;
			while (!m_Goods.IsEOF())
			{
				m_Frm->m_ListView->ctl->InsertItem(i,m_Goods.m_Gno);
				m_Frm->m_ListView->ctl->SetItemText(i,1,m_Goods.m_Gname);
				m_Frm->m_ListView->ctl->SetItemText(i,2,m_Goods.m_Gprice);
				CString strStore;
				strStore.Format("%d",m_Goods.m_Gstorage);
				m_Frm->m_ListView->ctl->SetItemText(i,3,strStore);

				m_Goods.MoveNext();
				i++;
			}

			if(m_Goods.IsOpen())
				m_Goods.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		break;
		
	case CASHINFO_ADD:
		if (m_strEdit1.IsEmpty())
		{
			AfxMessageBox("请输入收款金额!");
			return;
		}
		for (; j<m_strEdit1.GetLength();j++)
		{
			cMoney[j] = m_strEdit1.GetAt(j);
		}
		dMoney = atof(cMoney);
		if (dMoney>=100000)
		{
			AfxMessageBox("收款金额必须小于100,000!");
			return;
		}
		try
		{
			if(m_Cashinfo.IsOpen())
				m_Cashinfo.Close();

				m_Cashinfo.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
				m_Cashinfo.MoveLast();
				m_Cashinfo.Edit();
//				m_Cashinfo.m_Cno = m_strEdit1;
				m_Cashinfo.m_Crecv = m_strEdit1;

				if(m_Cashinfo.CanUpdate())
				{
					bRet = m_Cashinfo.Update();
					m_Frm->m_bCashinfoSave = TRUE;
					AfxMessageBox("添加新收银信息成功!");
				}


				if(m_Cashinfo.IsOpen())
					m_Cashinfo.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		catch (CException* e)
		{
			e->Delete();
			return;
		}
		break;

	case CASHINFO_QUERY:
		try
		{
			if(m_qCashinfo.IsOpen())
				m_qCashinfo.Close();

			if(m_strEdit1.GetLength())
			{
				if(bFirst)
					m_qCashinfo.m_strFilter += " and ";
				strFilter.Format("Qcno = '%s'",m_strEdit1);
				m_qCashinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit2.GetLength())
			{
				if(bFirst)
					m_qCashinfo.m_strFilter += " and ";
				strFilter.Format("Qcname = '%s'",m_strEdit2);
				m_qCashinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit3.GetLength())
			{
				if(bFirst)
					m_qCashinfo.m_strFilter += " and ";
				strFilter.Format("Qcrecv = '%s'",m_strEdit3);
				m_qCashinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

// 			strSQL.Format("select * from Query_Cashinfo ");
 
			m_qCashinfo.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);

			if(m_qCashinfo.IsEOF())
			{
				AfxMessageBox("没有满足条件的记录!");
			}
			i=0;
			while (!m_qCashinfo.IsEOF())
			{
				m_Frm->m_ListView->ctl->InsertItem(i,m_qCashinfo.m_Qcno);
				m_Frm->m_ListView->ctl->SetItemText(i,1,m_qCashinfo.m_Qcname);
				m_Frm->m_ListView->ctl->SetItemText(i,2,m_qCashinfo.m_Qcrecv);
				CTime ctimeon = m_qCashinfo.m_Qctimeon;
				CString strTimeOn = ctimeon.Format("%Y-%m-%d");
				m_Frm->m_ListView->ctl->SetItemText(i,3,strTimeOn);
				CTime ctimeoff = m_qCashinfo.m_Qctimeoff;
				CString strTimeOff = ctimeoff.Format("%Y-%m-%d");
				m_Frm->m_ListView->ctl->SetItemText(i,4,strTimeOff);
				m_qCashinfo.MoveNext();
				i++;
			}

			if(m_qCashinfo.IsOpen())
				m_qCashinfo.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		break;
		
	case TRADE_ADD:
		if (m_strEdit3.IsEmpty())
		{
			AfxMessageBox("请输入交易数目!");
			return;
		}

		try
		{
			if(m_Customer.IsOpen())
				m_Customer.Close();
			strSQL.Format("select * from Customer");
			m_Customer.m_strFilter.Format("Cno = '%s'",m_strEdit1);
			m_Customer.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
			if (m_Customer.IsEOF())
			{
				AfxMessageBox("此客户非注册用户!");
				m_Customer.Close();
				return;
			}
			m_Customer.Close();

			if(m_Goods.IsOpen())
				m_Goods.Close();
			strSQL.Format("select * from Goods");
			m_Goods.m_strFilter.Format("Gno = '%s'",m_strEdit2);
			m_Goods.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
			if (m_Goods.IsEOF())
			{
				AfxMessageBox("本超市没有此商品!");
				m_Goods.Close();
				return;
			}
			m_Goods.Close();


			if(m_Tradeinfo.IsOpen())
				m_Tradeinfo.Close();


				strSQL.Format("select * from Tradeinfo");
				m_Tradeinfo.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
				m_Tradeinfo.MoveLast();
				m_Tradeinfo.AddNew();
				m_Tradeinfo.m_Cno = m_strEdit1;
				m_Tradeinfo.m_Gno = m_strEdit2;

				char cQuan[10];
				for (i=0;i<m_strEdit3.GetLength();i++)
				{
					cQuan[i] = m_strEdit3.GetAt(i);
				}
				int nQuan = atoi(cQuan);
				m_Tradeinfo.m_Tquantity = nQuan;

				if(m_Tradeinfo.CanUpdate())
				{
					bRet = m_Tradeinfo.Update();
					AfxMessageBox("添加新收银信息成功!");
				}


				if(m_Tradeinfo.IsOpen())
					m_Tradeinfo.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		catch (CException* e)
		{
			e->Delete();
			return;
		}
		break;
	case TRADE_QUERY:
		try
		{
			if(m_Customer.IsOpen())
				m_Customer.Close();

			strSQL.Format("select * from Query_Tradeinfo");
			if(m_Goods.IsOpen())
				m_Goods.Close();
			if(m_qTradeinfo.IsOpen())
				m_qTradeinfo.Close();

			if(m_strEdit1.GetLength())
			{
				if(bFirst)
					m_qTradeinfo.m_strFilter += " and ";
				strFilter.Format("Qcno = '%s'",m_strEdit1);
				m_qTradeinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit2.GetLength())
			{
				if(bFirst)
					m_qTradeinfo.m_strFilter += " and ";
				strFilter.Format("Qcname = '%s'",m_strEdit2);
				m_qTradeinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit3.GetLength())
			{
				if(bFirst)
					m_qTradeinfo.m_strFilter += " and ";
				strFilter.Format("Qgno = '%s'",m_strEdit3);
				m_qTradeinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

			if(m_strEdit4.GetLength())
			{
				if(bFirst)
					m_qTradeinfo.m_strFilter += " and ";
				strFilter.Format("Qgname = '%s'",m_strEdit4);
				m_qTradeinfo.m_strFilter += strFilter;
				bFirst = TRUE;
			}

// 			strSQL.Format("select * from Query_Cashinfo ");
 
			m_qTradeinfo.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);

			if(m_qTradeinfo.IsEOF())
			{
				AfxMessageBox("没有满足条件的记录!");
			}
			i=0;
			while (!m_qTradeinfo.IsEOF())
			{
				m_Frm->m_ListView->ctl->InsertItem(i,m_qTradeinfo.m_Qcno);
				m_Frm->m_ListView->ctl->SetItemText(i,1,m_qTradeinfo.m_Qcname);
				m_Frm->m_ListView->ctl->SetItemText(i,2,m_qTradeinfo.m_Qgno);
				m_Frm->m_ListView->ctl->SetItemText(i,3,m_qTradeinfo.m_Qgname);
				CTime ttime = m_qTradeinfo.m_Qttime;
				CString strTime = ttime.Format("%Y-%m-%d");
				m_Frm->m_ListView->ctl->SetItemText(i,4,strTime);
				CString strQuan;
				strQuan.Format("%d",m_qTradeinfo.m_Qtquantity);
				m_Frm->m_ListView->ctl->SetItemText(i,5,strQuan);
				m_qTradeinfo.MoveNext();
				i++;
			}

			if(m_qTradeinfo.IsOpen())
				m_qTradeinfo.Close();
		}
		catch (CDBException* e)
		{
			e->ReportError();
			//e->Delete();
			return;
		}
		break;
	}

	CDialog::OnOK();
}



void CCashierOperationDLg::SetEdit1(CString strEdit)
{
	m_strEdit1 = strEdit;
}

void CCashierOperationDLg::SetEdit2(CString strEdit)
{
	m_strEdit2 = strEdit;
}

void CCashierOperationDLg::SetEdit3(CString strEdit)
{
	m_strEdit3 = strEdit;
}

void CCashierOperationDLg::SetEdit4(CString strEdit)
{
	m_strEdit4 = strEdit;
}

void CCashierOperationDLg::SetEdit5(CString strEdit)
{
	m_strEdit5 = strEdit;
}

void CCashierOperationDLg::SetEdit6(CString strEdit)
{
	m_strEdit6 = strEdit;
}

⌨️ 快捷键说明

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