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

📄 delete.cpp

📁 MFC写的银行储蓄系统
💻 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 + -