📄 cashieroperationdlg.cpp
字号:
if(m_Cashier.IsOpen())
m_Cashier.Close();
AfxMessageBox("该记录不存在,无法删除!");
}
}
catch(CDBException *e)
{
e->ReportError();
return;
}
break;
case CASHIER_EDIT:
if (m_strEdit1.IsEmpty())
{
AfxMessageBox("请输入收银员编号!");
return;
}
if (m_strEdit3 != "男" && m_strEdit3 != "女" && m_strEdit3.GetLength())
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
if (m_strEdit5.GetLength() < 6 && m_strEdit5.GetLength() != 0 )
{
AfxMessageBox("密码必须是6位以上!");
return;
}
try
{
if(m_Cashier.IsOpen())
m_Cashier.Close();
if(!m_strEdit4.IsEmpty())
{
m_Cashier.m_strFilter.Format("Clogname = '%s'",m_strEdit4);
m_Cashier.Open(CCashierRecordSet::snapshot,NULL,CCashierRecordSet::none);
if(!m_Cashier.IsEOF())
{
m_Cashier.Close();
AfxMessageBox("收银员登录名已经被使用,请更换!");
return;
}
if(m_Cashier.IsOpen())
m_Cashier.Close();
}
m_Cashier.m_strFilter.Format("Cno = '%s'",m_strEdit1);
m_Cashier.Open(CCashierRecordSet::snapshot,NULL,CCashierRecordSet::none);
if(m_Cashier.IsEOF())
{
m_Cashier.Close();
AfxMessageBox("不存在此收银员!");
return;
}
if(m_strEdit5 == m_strEdit6)
{
m_Cashier.Edit();
if(!m_strEdit2.IsEmpty())
m_Cashier.m_Cname = m_strEdit2;
if(!m_strEdit3.IsEmpty())
m_Cashier.m_Csex = m_strEdit3;
if(!m_strEdit4.IsEmpty())
m_Cashier.m_Clogname = m_strEdit4;
if(!m_strEdit5.IsEmpty())
m_Cashier.m_Clogpass = m_strEdit5;
if(m_Cashier.CanUpdate())
{
bRet = m_Cashier.Update();
AfxMessageBox("收银员信息修改成功!");
}
}
else
{
AfxMessageBox("密码输入不一致!");
}
if(m_Cashier.IsOpen())
m_Cashier.Close();
}
catch (CDBException* e)
{
e->ReportError();
//e->Delete();
return;
}
break;
case CASHIER_QUERY:
if (m_strEdit3 != "男" && m_strEdit3 != "女" && m_strEdit3.GetLength())
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
try
{
if(m_Cashier.IsOpen())
m_Cashier.Close();
if(m_strEdit1.GetLength())
{
if(bFirst)
m_Cashier.m_strFilter += " and ";
strFilter.Format("Cno = '%s'",m_strEdit1);
m_Cashier.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit2.GetLength())
{
if(bFirst)
m_Cashier.m_strFilter += " and ";
strFilter.Format("Cname = '%s'",m_strEdit2);
m_Cashier.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit3.GetLength())
{
if(bFirst)
m_Cashier.m_strFilter += " and ";
strFilter.Format("Csex = '%s'",m_strEdit3);
m_Cashier.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit4.GetLength())
{
if(bFirst)
m_Cashier.m_strFilter += " and ";
strFilter.Format("Clogname = '%s'",m_strEdit4);
m_Cashier.m_strFilter += strFilter;
bFirst = TRUE;
}
m_Cashier.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(m_Cashier.IsEOF())
{
AfxMessageBox("没有满足条件的记录!");
}
i=0;
while (!m_Cashier.IsEOF())
{
m_Frm->m_ListView->ctl->InsertItem(i,m_Cashier.m_Cno);
m_Frm->m_ListView->ctl->SetItemText(i,1,m_Cashier.m_Cname);
m_Frm->m_ListView->ctl->SetItemText(i,2,m_Cashier.m_Csex);
m_Frm->m_ListView->ctl->SetItemText(i,3,m_Cashier.m_Clogname);
m_Cashier.MoveNext();
i++;
}
if(m_Cashier.IsOpen())
m_Cashier.Close();
}
catch (CDBException* e)
{
e->ReportError();
//e->Delete();
return;
}
break;
case CUSTOMER_ADD:
if (m_strEdit1.IsEmpty())
{
AfxMessageBox("请输入顾客编号!");
return;
}
if (m_strEdit2.IsEmpty())
{
AfxMessageBox("请输入顾客姓名!");
return;
}
if (m_strEdit3 != "男" && m_strEdit3 != "女" )
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
try
{
if(m_Customer.IsOpen())
m_Customer.Close();
m_Customer.m_strFilter.Format("Cno = '%s'",m_strEdit1);
m_Customer.Open(CCustomerRecordSet::snapshot,NULL,CCustomerRecordSet::none);
if(!m_Customer.IsEOF())
{
m_Customer.Close();
AfxMessageBox("此顾客编号已经存在!");
return;
}
if(m_Customer.IsOpen())
m_Customer.Close();
m_Customer.m_strFilter.Format(_T(""));
m_Customer.Open(CCustomerRecordSet::snapshot,NULL,CCustomerRecordSet::none);
// CTime time;
// time = CTime::GetCurrentTime();
// int nYear = time.GetYear();
// int nMonth = time.GetMonth();
// int nDay = time.GetDay();
/* CString date = time.Format("%Y-%m-%d");*/
m_Customer.AddNew();
m_Customer.m_Cno = m_strEdit1;
m_Customer.m_Cname = m_strEdit2;
m_Customer.m_Csex = m_strEdit3;
//lead to access violation,but the database is updated correctly
//m_Customer.m_Creg = time;
m_Customer.m_Cactive = _T("是");
m_Customer.m_Cconsumption = _T("0.00");
if(m_Customer.CanUpdate())
{
bRet = m_Customer.Update();
AfxMessageBox("添加新顾客信息成功!");
}
if(m_Customer.IsOpen())
m_Customer.Close();
}
catch (CDBException* e)
{
e->ReportError();
//e->Delete();
return;
}
catch (CException* e)
{
e->Delete();
return;
}
break;
case CUSTOMER_DELETE:
if (m_strEdit3 != "男" && m_strEdit3 != "女" && m_strEdit3.GetLength())
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
try{
if(m_Customer.IsOpen())
m_Customer.Close();
if(m_strEdit1.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Cno = '%s'",m_strEdit1);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit2.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Cname = '%s'",m_strEdit2);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit3.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Csex = '%s'",m_strEdit3);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
m_Customer.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if (m_Customer.IsOpen() && !m_Customer.IsEOF())
{
m_Customer.Delete();
if(m_Customer.IsOpen())
m_Customer.Close();
AfxMessageBox("删除成功!");
}
else
{
if(m_Customer.IsOpen())
m_Customer.Close();
AfxMessageBox("该记录不存在,无法删除!");
}
}
catch(CDBException *e)
{
e->ReportError();
return;
}
break;
case CUSTOMER_EDIT:
if (m_strEdit3 != "男" && m_strEdit3 != "女" && m_strEdit3.GetLength())
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
if (m_strEdit1.IsEmpty())
{
AfxMessageBox("请输入顾客编号!");
return;
}
try
{
if(m_Customer.IsOpen())
m_Customer.Close();
m_Customer.m_strFilter.Format("Cno = '%s'",m_strEdit1);
m_Customer.Open(CCustomerRecordSet::snapshot,NULL,CCustomerRecordSet::none);
if(m_Customer.IsEOF())
{
m_Customer.Close();
AfxMessageBox("不存在此顾客!");
return;
}
m_Customer.Edit();
if(!m_strEdit2.IsEmpty())
m_Customer.m_Cname = m_strEdit2;
if(!m_strEdit3.IsEmpty())
m_Customer.m_Csex = m_strEdit3;
if(!m_strEdit4.IsEmpty())
m_Customer.m_Cconsumption = m_strEdit4;
if(m_Customer.CanUpdate())
{
bRet = m_Customer.Update();
AfxMessageBox("修改顾客信息成功!");
}
if(m_Customer.IsOpen())
m_Customer.Close();
}
catch (CDBException* e)
{
e->ReportError();
//e->Delete();
return;
}
break;
case CUSTOMER_QUERY:
if (m_strEdit3 != "男" && m_strEdit3 != "女" && m_strEdit3.GetLength())
{
AfxMessageBox("请正确输入收银员性别!");
return;
}
try
{
if(m_Customer.IsOpen())
m_Customer.Close();
if(m_strEdit1.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Cno = '%s'",m_strEdit1);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit2.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Cname = '%s'",m_strEdit2);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
if(m_strEdit3.GetLength())
{
if(bFirst)
m_Customer.m_strFilter += " and ";
strFilter.Format("Csex = '%s'",m_strEdit3);
m_Customer.m_strFilter += strFilter;
bFirst = TRUE;
}
m_Customer.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
if(m_Customer.IsEOF())
{
AfxMessageBox("没有满足条件的记录!");
}
CString strReg;
i=0;
while (!m_Customer.IsEOF())
{
m_Frm->m_ListView->ctl->InsertItem(i,m_Customer.m_Cno);
m_Frm->m_ListView->ctl->SetItemText(i,1,m_Customer.m_Cname);
m_Frm->m_ListView->ctl->SetItemText(i,2,m_Customer.m_Csex);
CTime cReg = m_Customer.m_Creg;
// int nYear = cReg.GetYear();
// int nMonth = cReg.GetMonth();
// int nDay = cReg.GetDay();
CString strReg = cReg.Format("%Y-%m-%d");
m_Frm->m_ListView->ctl->SetItemText(i,3,strReg);
m_Frm->m_ListView->ctl->SetItemText(i,4,m_Customer.m_Cactive);
if (m_Customer.m_Cconsumption.GetAt(0) == '.')
{
m_Customer.m_Cconsumption = "0" + m_Customer.m_Cconsumption;
}
m_Frm->m_ListView->ctl->SetItemText(i,5,m_Customer.m_Cconsumption);
m_Customer.MoveNext();
i++;
}
if(m_Customer.IsOpen())
m_Customer.Close();
}
catch (CDBException* e)
{
e->ReportError();
//e->Delete();
return;
}
break;
break;
case GOODS_ADD:
if (m_strEdit1.IsEmpty())
{
AfxMessageBox("请输入商品编号!");
return;
}
if (m_strEdit2.IsEmpty())
{
AfxMessageBox("请输入商品名称!");
return;
}
if (m_strEdit3.IsEmpty())
{
AfxMessageBox("请输入商品单价!");
return;
}
if (m_strEdit4.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.AddNew();
m_Goods.m_Gno = m_strEdit1;
m_Goods.m_Gname = m_strEdit2;
m_Goods.m_Gprice = m_strEdit3;
//lead to access violation,but the database is updated correctly
//m_Goods.m_Creg = time;
char cStore[20];
for (int 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;
}
catch (CException* e)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -