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

📄 taxrate.cpp

📁 This a integrated human resource manage system ,developed with vc++ and sql2000 Server
💻 CPP
字号:
// TaxRate.cpp: implementation of the CTaxRate class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "HrSys.h"
#include "TaxRate.h"
#include "ADOConn.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CTaxRate::CTaxRate()
{
	Id=0;
	LowerLimit = 0;
	UpperLimit = 0;
	Rate = 0;
	Deduct = 0;
}

CTaxRate::~CTaxRate()
{

}
//数据库操作
void CTaxRate::sql_insert()
{	
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置INSERT语句
	CString strLower,strUpper,strRate,strDeduct;
	strLower.Format("%d", LowerLimit);
	strUpper.Format("%d", UpperLimit);
	strRate.Format("%d", Rate);
	strDeduct.Format("%d", Deduct);

	_bstr_t vSQL;
	vSQL = "INSERT INTO TaxRate VALUES(" + strLower + ","
		+strUpper+"," +strRate+ ","+strDeduct+ ")";	
	//执行INSERT语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

void CTaxRate::sql_update(CString cTmpId)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置UPDATE语句
	CString strLower,strUpper,strRate,strDeduct;
	strLower.Format("%d", LowerLimit);
	strUpper.Format("%d", UpperLimit);
	strRate.Format("%d", Rate);
	strDeduct.Format("%d", Deduct);

	_bstr_t vSQL;
	vSQL = "UPDATE TaxRate SET LowerLimit=" + strLower
		+ ",UpperLimit="+strUpper+",Rate="+strRate
		+",Deduct="+strDeduct+" WHERE Id=" + cTmpId;
	//执行UPDATE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

void CTaxRate::sql_delete(CString cTmpId)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置DELETE语句
	_bstr_t vSQL;
	vSQL = "DELETE FROM TaxRate WHERE Id=" + cTmpId;
	//执行DELETE语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

//根据工资项目编号读取所有字段值
void CTaxRate::GetData(CString cTmpId)
{
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT * FROM TaxRate WHERE Id=" + cTmpId;
	//执行SELETE语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);

	//返回各列的值
	if (m_pRecordset->adoEOF)
		CTaxRate();
	else
	{
		Id=atol(cTmpId);
		LowerLimit=atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("LowerLimit"));
		UpperLimit=atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UpperLimit"));
		Rate=atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Rate"));
		Deduct=atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Deduct"));
	}
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}
//更新纳税基础金额信息
void CTaxRate::UpdateBasicNumber()
{	
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	CString strLower;
	strLower.Format("%d", LowerLimit);
	_bstr_t vSQL;
	vSQL = "UPDATE TaxRate SET LowerLimit=" + strLower + " Where Id=1";
	
	//执行SELECT语句
	m_AdoConn.ExecuteSQL(vSQL);	
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

//根据金额计算纳税后金额
double CTaxRate::CalculateSum(CString cTmpSum)
{	
	double dRntSum=0;
	//连接数据库
	ADOConn m_AdoConn;
	m_AdoConn.OnInitADOConn();
	//设置SELECT语句
	_bstr_t vSQL;
	vSQL = "SELECT * FROM TaxRate WHERE Id<>1 AND " + cTmpSum 
		+ " BETWEEN LowerLimit AND UpperLimit";
	
	//执行SELECT语句
	_RecordsetPtr m_pRecordset;
	m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
	if (m_pRecordset->adoEOF)
		return atol(cTmpSum);  //没有纳税范围则返回原数据
	else
	{
		dRntSum=atol(cTmpSum)*atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Rate"));
		dRntSum=dRntSum/100-atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("Deduct"));
		dRntSum=atol(cTmpSum)-dRntSum;
		return dRntSum;
	}
	//断开与数据库的连接
	m_AdoConn.ExitConnect();
}

⌨️ 快捷键说明

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