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

📄 outcomewizarddlg1.cpp

📁 这是一个学生信息管理系统
💻 CPP
📖 第 1 页 / 共 4 页
字号:
	m_pFinish_Step14->m_cFinish_List .SetItemText (0,4,Step);
	m_pFinish_Step14->UpdateData (FALSE);
}
void COutcomeWizardDlg1::DeleteInfo(UINT nStep)
{
	CString sStep;
	int Count=m_pFinish_Step14->m_cFinish_List .GetItemCount ();
	if(Count==0)
		return ;
	if(nStep==FINISH_STEP14)
	{
		m_pFinish_Step14->m_cFinish_List .DeleteAllItems ();
		m_pFinish_Step14->UpdateData (FALSE);
		return ;
	}
	for(int i=0; i<Count; i++)
	{
		sStep=m_pFinish_Step14->m_cFinish_List .GetItemText (i,3);
		if(nStep==_ttol(sStep)||OUTCOME_CASH_STEP==_ttol(sStep)||OUTCOME_STEP1==_ttol(sStep))
			m_pFinish_Step14->m_cFinish_List .DeleteItem (i);
	}
	m_pFinish_Step14->UpdateData (FALSE);
}
void COutcomeWizardDlg1::UpdateStep(UINT nStep) 
{
	nCurrentPage=nStep;
	ShowPage(nCurrentPage);
	SetCaption(nCurrentPage);
	//位置入栈
	LinkStack.Push (nCurrentPage);
}
void COutcomeWizardDlg1::ListAllBank() 
{
	//由银行的个数数据来实现
    m_pBank4_Step13->UpdateData ();
	m_pBank3_Step12->UpdateData ();
	m_pBank2_Step11->UpdateData ();
	m_pBank1_Step10->UpdateData ();
	m_pBank_Step9->UpdateData ();
	if(m_pSource->m_bBank==FALSE )//根本没有银行操作,则返回
		return ;
	//有银行操作
	switch(m_pCount->m_iBankCount )
	{
	case 1:
		InsertInfo(L"银行",m_pBank_Step9->m_sCardId ,m_pBank_Step9->m_dAmount,BANK_STEP9 );
		break;
	case 2:
		InsertInfo(L"银行",m_pBank1_Step10->m_sCardId ,m_pBank1_Step10->m_dAmount,BANK1_STEP10 );
		InsertInfo(L"银行",m_pBank_Step9->m_sCardId ,m_pBank_Step9->m_dAmount,BANK_STEP9 );
		break;
	case 3:
		InsertInfo(L"银行",m_pBank2_Step11->m_sCardId ,m_pBank2_Step11->m_dAmount,BANK2_STEP11 );
		InsertInfo(L"银行",m_pBank1_Step10->m_sCardId ,m_pBank1_Step10->m_dAmount,BANK1_STEP10 );
		InsertInfo(L"银行",m_pBank_Step9->m_sCardId ,m_pBank_Step9->m_dAmount,BANK_STEP9 );
		break;
	case 4:
		InsertInfo(L"银行",m_pBank3_Step12->m_sCardId ,m_pBank3_Step12->m_dAmount,BANK3_STEP12 );
		InsertInfo(L"银行",m_pBank2_Step11->m_sCardId ,m_pBank2_Step11->m_dAmount,BANK2_STEP11 );
		InsertInfo(L"银行",m_pBank1_Step10->m_sCardId ,m_pBank1_Step10->m_dAmount,BANK1_STEP10 );
		InsertInfo(L"银行",m_pBank_Step9->m_sCardId ,m_pBank_Step9->m_dAmount,BANK_STEP9 );
        break;
	case 5:
		InsertInfo(L"银行",m_pBank4_Step13->m_sCardId ,m_pBank4_Step13->m_dAmount,BANK4_STEP13 );
		InsertInfo(L"银行",m_pBank3_Step12->m_sCardId ,m_pBank3_Step12->m_dAmount,BANK3_STEP12 );
		InsertInfo(L"银行",m_pBank2_Step11->m_sCardId ,m_pBank2_Step11->m_dAmount,BANK2_STEP11 );
		InsertInfo(L"银行",m_pBank2_Step11->m_sCardId ,m_pBank2_Step11->m_dAmount,BANK1_STEP10 );
		InsertInfo(L"银行",m_pBank_Step9->m_sCardId ,m_pBank_Step9->m_dAmount,BANK_STEP9 );
		break;
	}
}
void COutcomeWizardDlg1::ListOutcome ()
{
	m_pOutcome_Step1->UpdateData ();
	InsertInfo(L"支出",L"支出",m_pOutcome_Step1->m_dAmount ,OUTCOME_STEP1);
}
void COutcomeWizardDlg1::ListAllTangible() 
{
     m_pTangible_Step3->UpdateData ();
     m_pTangible1_Step4->UpdateData ();
     m_pTangible2_Step5->UpdateData ();
     m_pTangible3_Step6->UpdateData ();
     m_pTangible4_Step7->UpdateData ();
	 if(m_pFlow->m_bTangible ==FALSE)
		 return ;
	 switch(m_pCount->m_iTangibleCount )
	 {
	 case 1:
		 InsertInfo(L"物品支出",m_pTangible_Step3->m_sName,m_pTangible_Step3->m_dSum,TANGIBLE_STEP3);
		 break;
	 case 2:
		 InsertInfo(L"物品支出",m_pTangible_Step3->m_sName ,m_pTangible_Step3->m_dSum,TANGIBLE_STEP3);
		 InsertInfo(L"物品支出",m_pTangible1_Step4->m_sName ,m_pTangible1_Step4->m_dSum,TANGIBLE1_STEP4);
		 break;
	 case 3:
		 InsertInfo(L"物品支出",m_pTangible_Step3->m_sName ,m_pTangible_Step3->m_dSum,TANGIBLE_STEP3);
		 InsertInfo(L"物品支出",m_pTangible1_Step4->m_sName ,m_pTangible1_Step4->m_dSum,TANGIBLE1_STEP4);
		 InsertInfo(L"物品支出",m_pTangible2_Step5->m_sName ,m_pTangible2_Step5->m_dSum,TANGIBLE2_STEP5);
		 break;
	 case 4:
		 InsertInfo(L"物品支出",m_pTangible_Step3->m_sName ,m_pTangible_Step3->m_dSum,TANGIBLE_STEP3);
		 InsertInfo(L"物品支出",m_pTangible1_Step4->m_sName ,m_pTangible1_Step4->m_dSum,TANGIBLE1_STEP4);
		 InsertInfo(L"物品支出",m_pTangible2_Step5->m_sName ,m_pTangible2_Step5->m_dSum,TANGIBLE2_STEP5);
		 InsertInfo(L"物品支出",m_pTangible3_Step6->m_sName ,m_pTangible3_Step6->m_dSum,TANGIBLE3_STEP6);
		 break;
	 case 5:
		 InsertInfo(L"物品支出",m_pTangible_Step3->m_sName ,m_pTangible_Step3->m_dSum,TANGIBLE_STEP3);
		 InsertInfo(L"物品支出",m_pTangible1_Step4->m_sName ,m_pTangible1_Step4->m_dSum,TANGIBLE1_STEP4);
		 InsertInfo(L"物品支出",m_pTangible2_Step5->m_sName ,m_pTangible2_Step5->m_dSum,TANGIBLE2_STEP5);
		 InsertInfo(L"物品支出",m_pTangible3_Step6->m_sName ,m_pTangible3_Step6->m_dSum,TANGIBLE3_STEP6);
		 InsertInfo(L"物品支出",m_pTangible4_Step7->m_sName ,m_pTangible4_Step7->m_dSum,TANGIBLE4_STEP7);
		 break;
	 }
	 return ;
}
void COutcomeWizardDlg1::ListOtherConsum ()
{
	m_pOutcome_Step1->UpdateData ();
	if(m_pOutcome_Step1->m_bOther )
		InsertInfo(L"其他消费",L"其他消费",m_pOutcome_Step1->m_dAmount -GetTangibleAmount(),OTHERCONSUM_STEP2 );//总支出减去物品的就是其他消费
	return ;
}

void COutcomeWizardDlg1::ListCash() 
{
	if(m_pSource->m_bCash )
		InsertInfo(L"现金",L"现金",GetCashAmount(),OUTCOME_CASH_STEP );
	return ;
}
double COutcomeWizardDlg1::GetBankAmount() 
{
    m_pBank4_Step13->UpdateData ();
	m_pBank3_Step12->UpdateData ();
	m_pBank2_Step11->UpdateData ();
	m_pBank1_Step10->UpdateData ();
	m_pBank_Step9->UpdateData ();
	if(m_pSource->m_bBank==FALSE )
		return 0;
	switch(m_pCount->m_iBankCount )
	{
	case 1:
		return m_pBank_Step9->m_dAmount ;
		break;
	case 2:
		return m_pBank_Step9->m_dAmount +m_pBank1_Step10->m_dAmount ;
		break;
	case 3:
		return m_pBank_Step9->m_dAmount+m_pBank1_Step10->m_dAmount+m_pBank2_Step11->m_dAmount ;
		break;
	case 4:
		return m_pBank_Step9->m_dAmount+m_pBank1_Step10->m_dAmount+
			m_pBank2_Step11->m_dAmount+m_pBank3_Step12->m_dAmount ;
		break;
	case 5:
		return m_pBank_Step9->m_dAmount+m_pBank1_Step10->m_dAmount+
			m_pBank2_Step11->m_dAmount+m_pBank3_Step12->m_dAmount+m_pBank4_Step13->m_dAmount  ;
		break;
	default:break;
	}
	return 0;
}

double COutcomeWizardDlg1::GetTangibleAmount() 
{
     m_pTangible_Step3->UpdateData ();
     m_pTangible1_Step4->UpdateData ();
     m_pTangible2_Step5->UpdateData ();
     m_pTangible3_Step6->UpdateData ();
     m_pTangible4_Step7->UpdateData ();
	if(m_pFlow->m_bTangible ==FALSE)
		return 0;
	switch(m_pCount->m_iTangibleCount )
	{
	case 1: return m_pTangible_Step3->m_dSum ;
		break;
	case 2: return m_pTangible_Step3->m_dSum+m_pTangible1_Step4->m_dSum ;
		break;
	case 3: return m_pTangible_Step3->m_dSum+m_pTangible1_Step4->m_dSum +m_pTangible2_Step5->m_dSum ;
		break;
	case 4: return m_pTangible_Step3->m_dSum+m_pTangible1_Step4->m_dSum +
				m_pTangible2_Step5->m_dSum+m_pTangible3_Step6->m_dSum  ;
		break;
	case 5: return m_pTangible_Step3->m_dSum+m_pTangible1_Step4->m_dSum +
				m_pTangible2_Step5->m_dSum+m_pTangible3_Step6->m_dSum+m_pTangible4_Step7->m_dSum  ;
		break;
	default:break;
	}
	return 0;
}
double COutcomeWizardDlg1::GetOtherConsumAmount()
{
	m_pOutcome_Step1->UpdateData ();
	if(m_pOutcome_Step1->m_bOther )
		return m_pOutcome_Step1->m_dAmount-GetTangibleAmount() ;
	return 0;
}
double COutcomeWizardDlg1::GetCashAmount()
{
	m_pOutcome_Step1->UpdateData ();
	if(m_pSource->m_bCash ==FALSE)
		return 0;
	return m_pOutcome_Step1->m_dAmount -GetBankAmount();

}

void COutcomeWizardDlg1::SaveBank (CIncomeWizardBankDlg *dlg)
{
	dlg->UpdateData();
	if(m_pBankSet.IsOpen ())
		m_pBankSet.Close ();
	m_pBankSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Bank order by bODate");
    m_pBankSet.m_strFilter.Empty ();
	m_pBankSet.AddNew ();
	m_pBankSet.m_bCardId =dlg->m_sCardId ;
	m_pBankSet.m_bAction =true;
	m_pBankSet.m_bLastLeft =dlg->m_dLastLeft ;
	m_pBankSet.m_bAccount =dlg->m_dAmount ;
    m_pBankSet.m_bLeft =dlg->m_dLeft ;
	m_pBankSet.m_bODate =dlg->m_tODate ;
	//登记日期,由系统生成
	m_pBankSet.m_bRDate =CTime::GetCurrentTime();
	m_pBankSet.m_bRemark =dlg->m_sRemark ;
	m_pBankSet.Update ();
	m_pBankSet.MoveLast ();
	m_pBankSet.Close ();
}
void COutcomeWizardDlg1::SaveOutcome (COutcomeWizardOutcomeDlg *dlg)
{
	dlg->UpdateData();
	if(m_pOutcomeSet.IsOpen ())
		m_pOutcomeSet.Close ();
	m_pOutcomeSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Outcome order by oDate");
	m_pOutcomeSet.m_strFilter.Empty ();
	m_pOutcomeSet.MoveFirst ();
	m_pOutcomeSet.AddNew ();
	m_pOutcomeSet.m_oName=dlg->m_sName;
	if(dlg->m_bBank)
		m_pOutcomeSet.m_oSource+=L"银行;";
	if(dlg->m_bCash)
		m_pOutcomeSet.m_oSource +=L"现金";
	if(dlg->m_bOther &&dlg->m_bTangible )
		m_pOutcomeSet.m_oKind =L"综合消费";
	else
	{
		if(dlg->m_bTangible )
		    m_pOutcomeSet.m_oKind =L"物品消费" ;
		if(dlg->m_bOther )
			m_pOutcomeSet.m_oKind =L"其他消费";
	}
	m_pOutcomeSet.m_oAmount =dlg->m_dAmount ;
	m_pOutcomeSet.m_oDate =dlg->m_tDate ;
	m_pOutcomeSet.m_oRemark =dlg->m_sRemark ;
	m_pOutcomeSet.Update ();
	m_pOutcomeSet.MoveLast ();
    m_pOutcomeSet.Close ();
}
void COutcomeWizardDlg1::SaveTangible (CIncomeWizardTangibleDlg *dlg)
{
	dlg->UpdateData();
	if(m_pTangibleSet.IsOpen ())
		m_pTangibleSet.Close ();
	m_pTangibleSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Tangible order by tDate");
    m_pTangibleSet.m_strFilter.Empty ();
	m_pTangibleSet.AddNew ();
	m_pTangibleSet.m_tName=dlg->m_sName ;
	m_pTangibleSet.m_tKind =dlg->m_sKind ;
	m_pTangibleSet.m_tQuantity =dlg->m_iQuantity ;
	m_pTangibleSet.m_tPrice =dlg->m_dPrice ;
	m_pTangibleSet.m_tDate =dlg->m_tDate ;
    m_pTangibleSet.m_tSum =dlg->m_iQuantity *dlg->m_dPrice;
	m_pTangibleSet.m_tRemark =dlg->m_sRemark ;
	m_pTangibleSet.Update ();
	m_pTangibleSet.MoveLast ();
	m_pTangibleSet.Close ();
}

void COutcomeWizardDlg1::SaveCash ()
{
	double MoneyLast;
	if(m_pCashSet.IsOpen ())
		m_pCashSet.Close ();
	m_pCashSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Cash order by cDate ASC");
	m_pCashSet.m_strFilter .Empty ();
	if(m_pCashSet.GetRecordCount ()==0)
		MoneyLast=0;
	else
	{
		m_pCashSet.MoveLast ();
		MoneyLast=m_pCashSet.m_cAmount ;
	}
	MoneyLast-=GetCashAmount();
	m_pCashSet.AddNew ();
	m_pCashSet.m_cAmount =MoneyLast;
	m_pCashSet.m_cDate =CTime::GetCurrentTime();
	m_pCashSet.Update();
	m_pCashSet.MoveLast ();
	m_pCashSet.Close ();
}

void COutcomeWizardDlg1::SaveAllBank ()
{
	if(m_pSource->m_bBank ==FALSE)
		return ;
	switch(m_pCount->m_iBankCount )
	{
	case 1:
		SaveBank(m_pBank_Step9);
		break;
	case 2:
		SaveBank(m_pBank_Step9);
		SaveBank(m_pBank1_Step10);
		break;
	case 3:
		SaveBank(m_pBank_Step9);
		SaveBank(m_pBank1_Step10);
		SaveBank(m_pBank2_Step11);
		break;
	case 4:
		SaveBank(m_pBank_Step9);
		SaveBank(m_pBank1_Step10);
		SaveBank(m_pBank2_Step11);
		SaveBank(m_pBank3_Step12);
		break;
	case 5:
		SaveBank(m_pBank_Step9);
		SaveBank(m_pBank1_Step10);
		SaveBank(m_pBank2_Step11);
		SaveBank(m_pBank3_Step12);
		SaveBank(m_pBank4_Step13);
		break;
	default:break;
	}
}
void COutcomeWizardDlg1::SaveAllTangible ()
{
	if(m_pFlow->m_bTangible ==FALSE)
		return ;
	switch(m_pCount->m_iTangibleCount )
	{
	case 1:
		SaveTangible(m_pTangible_Step3);
		break;
	case 2:
		SaveTangible(m_pTangible_Step3);
		SaveTangible(m_pTangible1_Step4);
		break;
	case 3:
		SaveTangible(m_pTangible_Step3);
		SaveTangible(m_pTangible1_Step4);
		SaveTangible(m_pTangible2_Step5);
		break;
	case 4:
		SaveTangible(m_pTangible_Step3);
		SaveTangible(m_pTangible1_Step4);
		SaveTangible(m_pTangible2_Step5);
		SaveTangible(m_pTangible3_Step6);
		break;
	case 5:
		SaveTangible(m_pTangible_Step3);
		SaveTangible(m_pTangible1_Step4);
		SaveTangible(m_pTangible2_Step5);
		SaveTangible(m_pTangible3_Step6);
		SaveTangible(m_pTangible4_Step7);
		break;
	default:break;
	}
}

void COutcomeWizardDlg1::SaveAllCash ()
{
	if(m_pSource->m_bCash ==FALSE)
		return ;
	SaveCash();
}
double COutcomeWizardDlg1::GetDatabaseCash()
{
	double MoneyLast;
	if(m_pCashSet.IsOpen ())
		m_pCashSet.Close ();
	m_pCashSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Cash order by cDate ASC");
	if(m_pCashSet.GetRecordCount ()==0)
	{
		//数据库为空,则说明没有现金
		m_pCashSet.Close ();
		return 0;
	}
	//否则,移动到最后一行,然后读取
	m_pCashSet.MoveLast ();
	MoneyLast=m_pCashSet.m_cAmount ;
	m_pCashSet.Close ();
	return MoneyLast;
}
HBRUSH COutcomeWizardDlg1::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO:  在此更改 DC 的任何属性
	if(m_bColor)//如果用系统的,则直接返回
		return hbr;
	pDC->SetTextColor (m_RGB_CtrlColor);
	pDC->SetBkMode(BKMODE_LAST);pDC->SetBkColor (m_RGB_BkColor);
	return (HBRUSH)m_brush.GetSafeHandle ();
	// TODO:  如果默认的不是所需画笔,则返回另一个画笔
//	return hbr;
}

⌨️ 快捷键说明

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