📄 delete.cpp
字号:
// DELETE.cpp : implementation file
//
#include "stdafx.h"
#include "银行储蓄系统.h"
#include "DELETE.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDELETE dialog
#include "Savings.h"
#include "Account.h"
#include "Checkings.h"
CDELETE::CDELETE(CWnd* pParent /*=NULL*/)
: CDialog(CDELETE::IDD, pParent)
{
//{{AFX_DATA_INIT(CDELETE)
m_accnumber = 0;
m_password = 0;
//}}AFX_DATA_INIT
}
void CDELETE::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDELETE)
DDX_Text(pDX, IDC_EDIT1, m_accnumber);
DDX_Text(pDX, IDC_EDIT2, m_password);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDELETE, CDialog)
//{{AFX_MSG_MAP(CDELETE)
ON_BN_CLICKED(IDC_DELETE_BUTTON, OnDeleteButton)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDELETE message handlers
void CDELETE::OnDeleteButton()
{
// TODO: Add your control notification handler code here
int tag=0;
UpdateData(TRUE);
Savings *pS;
Checkings *pC;
Savings* p=(Savings*)pS->getFirst();
Checkings* q=(Checkings*)pC->getFirst();
if(pS->getFirst()==NULL&&pC->getFirst()!=NULL)
{
MessageBox("储蓄帐户无数据,请先开户");
tag=4;
OnOK();
}
else if(pC->getFirst()==NULL&&pC->getFirst()!=NULL)
{
MessageBox("储蓄帐户无数据,请先开户");
tag=4;
OnOK();
}
else if(pS->getFirst()==NULL&&pC->getFirst()==NULL)
{
MessageBox("无任何数据,请先开户");
tag=4;
OnOK();
}
else
{
if(m_accnumber/100==1)
{
Savings *temp;
if(p->getNext()==NULL)
{
if(m_accnumber==p->AccountNo()&&m_password==p->getPass())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Savings *t1;
t1=p;
p=(Savings*)p->getNext();
delete t1;
tag=1;
pS->getFirst()=NULL;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else tag=0;
}
else if(p->getNext()!=NULL)
{
Savings *s;
while(p->getNext()->getNext()!=NULL)
p=(Savings*)p->getNext();
s=p;
if(m_accnumber==p->getNext()->AccountNo()&&m_password==p->getNext()->getPass())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Savings *t2,*temp;
temp=(Savings*)p->getNext();
t2=temp;
temp=(Savings*)temp->getNext();
delete t2;
s->getNext()=NULL;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else
{
for(Savings *pp=(Savings*)pS->getFirst(); pp->getNext() ; )
{
if(m_accnumber==pp->getFirst()->AccountNo()&&m_password==pp->getFirst()->getPass()&&pp==pS->getFirst())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Savings *t3;
t3=pp;
pp=(Savings*)pp->getNext();
delete t3;
pS->getFirst()=pp;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else if(m_accnumber==pp->getNext()->AccountNo()&&m_password==pp->getNext()->getPass()&&pp!=pS->getFirst())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Savings *t4,*temp1,*temp2;
temp1=pp;
t4=(Savings*)pp->getNext();
temp2=(Savings*)t4->getNext();
pp=temp2;
delete t4;
temp1->getNext()=temp2;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else tag=0;
}
}
}
}
else if(m_accnumber/100==2)
{
Checkings *temp;
if(q->getNext()==NULL)
{
if(m_accnumber==q->AccountNo()&&m_password==q->getPass())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Checkings *y1;
y1=q;
q=(Checkings*)q->getNext();
delete y1;
tag=1;
pC->getFirst()=NULL;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else tag=0;
}
else if(q->getNext()!=NULL)
{
Checkings *x;
while(q->getNext()->getNext()!=NULL)
q=(Checkings*)q->getNext();
x=q;
if(m_accnumber==q->getNext()->AccountNo()&&m_password==q->getNext()->getPass())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Checkings *y2,*te;
te=(Checkings*)q->getNext();
y2=te;
te=(Checkings*)te->getNext();
delete y2;
x->getNext()=NULL;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else
{
for(Checkings *qq=(Checkings*)pC->getFirst(); qq->getNext() ; )
{
if(m_accnumber==qq->getFirst()->AccountNo()&&m_password==qq->getFirst()->getPass()&&qq==pC->getFirst())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Checkings *y3;
y3=qq;
qq=(Checkings*)qq->getNext();
delete y3;
pC->getFirst()=qq;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else if(m_accnumber==qq->getNext()->AccountNo()&&m_password==qq->getNext()->getPass()&&qq!=pC->getFirst())
{
zhuxiao.DoModal();
if(zhuxiao.tag==1)
{
Checkings *y4,*te1,*te2;
te1=qq;
y4=(Checkings*)qq->getNext();
te2=(Checkings*)y4->getNext();
qq=te2;
delete y4;
te1->getNext()=te2;
tag=1;
}
else if(zhuxiao.tag==2)
{
tag=3;
OnOK();
}
}
else tag=0;
}
}
}
}
}
if(tag==0)
{
MessageBox("密码或帐号错误");
tag=0;
}
else if(tag==1)
{
MessageBox("注销成功");
OnOK();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -