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

📄 update.cpp

📁 工资管理管理系统 开发 c语言 简单易懂 适合初学者学习 请多多指教
💻 CPP
字号:
// Update.cpp : implementation file
//

#include "stdafx.h"
#include "Salary.h"
#include "Update.h"
#include "EmpAddDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CUpdate dialog


CUpdate::CUpdate(CWnd* pParent /*=NULL*/)
	: CDialog(CUpdate::IDD, pParent)
{
	//{{AFX_DATA_INIT(CUpdate)
	m_dept = _T("");
	m_name = _T("");
	m_sex = _T("");
	m_ctime = COleDateTime::GetCurrentTime();
	m_stime = COleDateTime::GetCurrentTime();
	m_id = _T("");
	m_cinfo = _T("");
	m_sinfo = _T("");
	m_subsidy = 0;
	m_salary = 0;
	//}}AFX_DATA_INIT
}


void CUpdate::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CUpdate)
	DDX_Control(pDX, IDC_BUTTON_COMMIT, m_commit);
	DDX_Control(pDX, IDC_BUTTON_CANCEL, m_cancel);
	DDX_Text(pDX, IDC_EDIT_DEPT, m_dept);
	DDX_Text(pDX, IDC_EDIT_NAME, m_name);
	DDX_Text(pDX, IDC_EDIT_SEX, m_sex);
	DDX_DateTimeCtrl(pDX, IDC_DT_CTIME, m_ctime);
	DDX_DateTimeCtrl(pDX, IDC_DT_STIME, m_stime);
	DDX_Text(pDX, IDC_EDIT_NO, m_id);
	DDX_Text(pDX, IDC_EDIT_CINFO, m_cinfo);
	DDX_Text(pDX, IDC_EDIT_SINFO, m_sinfo);
	DDX_Text(pDX, IDC_EDIT_SUBSIDY, m_subsidy);
	DDX_Text(pDX, IDC_EDIT_SALARY, m_salary);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CUpdate, CDialog)
	//{{AFX_MSG_MAP(CUpdate)
	ON_BN_CLICKED(IDC_BUTTON_COMMIT, OnCommit)
	ON_BN_CLICKED(IDC_BUTTON_CANCEL, OnCancel)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CUpdate message handlers


void CUpdate::OnCancel() 
{
	// TODO: Add your control notification handler code here
	CDialog::OnCancel();
}

void CUpdate::OnCommit() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	//获取要修改类型信息
	
	CString sql;
	CString strNO, strNO1 ,strNO2;
	g_odbcDB.ExecuteQueryValue("Select max(sno) from subsidy", strNO);
	int newNO = atoi(strNO)+1;
	g_odbcDB.ExecuteQueryValue("Select max(sano) from salary", strNO1);
	int newNO1 = atoi(strNO1)+1;
	g_odbcDB.ExecuteQueryValue("Select max(cno) from checktime", strNO2);
	int newNO2 = atoi(strNO2)+1;
	//更新员工信息. 
	sql.Format("update members set mname = '%s',msex = '%s',mdept = '%s' where mid = '%s'",m_name,m_sex,m_dept,m_id);
	g_odbcDB.ExecuteSQL(sql);
	sql.Empty();
	
	CString strDT = m_stime.Format("%Y-%m-%d");
	CString strDT1 = m_ctime.Format("%Y-%m-%d");
    
	CDStrs Inid;
	int i=0;
	g_odbcDB.ExecuteQuery("Select * from salary",Inid);

	for(;i<Inid.size();i++)
	{
		CStrs strs=Inid[i];
			if (m_id.Compare(strs[1]) == 0)
				break;
	}

	if(i==Inid.size())
	{
		sql.Format("insert into salary values(%d,'%s',%d)",newNO1,m_id,m_salary);
				g_odbcDB.ExecuteSQL(sql);
	            sql.Empty();
	}
	else
	{
	sql.Format("update salary set squentity =%d",m_salary);
		        g_odbcDB.ExecuteSQL(sql);
	            sql.Empty(); 

    }

	sql.Format("insert into subsidy values(%d,to_date('%s','yyyy-mm-dd'),'%s',%d,'%s')",newNO,strDT,m_id,m_subsidy,m_sinfo);
	g_odbcDB.ExecuteSQL(sql);
	sql.Empty();
	
	sql.Format("insert into checktime values(%d,to_date('%s','yyyy-mm-dd'),'%s','%s')",newNO2,strDT1,m_id,m_cinfo);
    
	
	g_odbcDB.ExecuteSQL(sql);/**/
	AfxMessageBox("修改成功!");
	CDialog::OnOK();
	

}


BOOL CUpdate::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CDStrs InFields;
	//获取收入类型数据
	CString sql;
	sql.Format("Select * from members where mid='%s'",m_id);
	g_odbcDB.ExecuteQuery(sql,InFields);
	CStrs strs = InFields[0];

	m_name = strs[1];
	m_sex = strs[2];
	m_dept = strs[3];
	UpdateData(FALSE);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

⌨️ 快捷键说明

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