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

📄 workexpeinfodlg.cpp

📁 VC++和ACCESS使用ADO连接
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// WorkExpeInfoDlg.cpp : implementation file
//

#include "stdafx.h"
#include "MinistryPerson.h"
#include "WorkExpeInfoDlg.h"

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

/////////////////////////////////////////////////////////////////////////////

WorkExpeInfoDlg::WorkExpeInfoDlg(CWnd* pParent /*=NULL*/) 
	: CDialog(WorkExpeInfoDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(WorkExpeInfoDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}

void WorkExpeInfoDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(WorkExpeInfoDlg)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(WorkExpeInfoDlg, CDialog)
	//{{AFX_MSG_MAP(WorkExpeInfoDlg)
	ON_BN_CLICKED(IDC_BUTTON_WE_SAVE, OnButtonWeSave)
	ON_BN_CLICKED(IDC_BUTTON_WE_MODIFY, OnButtonWeModify)
	ON_BN_CLICKED(IDC_BUTTON_WE_MOREINFO, OnButtonWeMoreinfo)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// WorkExpeInfoDlg message handlers

BOOL WorkExpeInfoDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	if (!g_bQueryToShow)
	{
		GetDlgItem(IDC_BUTTON_WE_SAVE)->EnableWindow(TRUE);
		GetDlgItem(IDC_BUTTON_WE_MODIFY)->EnableWindow(FALSE);
		CtrlStatus_WorkE(TRUE, FALSE);
		IniAllTimePicker();
		m_bSaveNotModify_WE = TRUE;
	}
	else
	{
		m_bSaveNotModify_WE = FALSE;
		GetDlgItem(IDC_BUTTON_WE_SAVE)->EnableWindow(FALSE);
		GetDlgItem(IDC_BUTTON_WE_MODIFY)->EnableWindow(TRUE);
		CtrlStatus_WorkE(FALSE, FALSE);
		GetWorkEInfoFromDB();
	}

	return TRUE;  
}

/*********************************************************************
函数说明:	  保存按钮
函数参数:	  
*********************************************************************/
void WorkExpeInfoDlg::OnButtonWeSave() 
{
	if (!CheckAllInfo_WorkE())
	{
		return;
	}

	if (!m_bSaveNotModify_WE)
	{
		if (g_bQueryToShow)
		{
			WeModify(g_nEmployee_ID, g_strEmployee_IDCard);
		}
		else
		{
			WeModify(g_In_nID, g_In_strIDCard);
		}
	}
	else
	{
		WeSave(g_In_nID, g_In_strIDCard);		// 保存
	}	
}

/*********************************************************************
函数说明:	  修改按钮
函数参数:	  
*********************************************************************/
void WorkExpeInfoDlg::OnButtonWeModify() 
{
	CtrlStatus_WorkE(TRUE, TRUE);
	m_bSaveNotModify_WE = FALSE;
	GetDlgItem(IDC_BUTTON_WE_SAVE)->EnableWindow(TRUE);
	GetDlgItem(IDC_BUTTON_WE_MODIFY)->EnableWindow(FALSE);
}

/*********************************************************************
函数说明:	  保存按钮
函数参数:	  
*********************************************************************/
BOOL WorkExpeInfoDlg::WeSave(int nKeyID, CString strKeyIDCard) 
{
	CADOOperation ADOdbo;
	CString SQL;
	
	SQL.Format("insert into Employee_WorkExpe_Table \
		values (%d, '%s', \
		'%s', '%s', '%s', '%s', '%s', \
		'%s', '%s', '%s', '%s', '%s', \
		'%s', '%s', '%s', '%s', '%s', \
		'%s', '%s', '%s', '%s', '%s', \
		'%s', '%s', '%s', '%s', '%s')", 
		nKeyID, strKeyIDCard,																		
		Work_ServiceCompany1, Work_DimissionTime1, Work_JoinTime1, Work_CompanyAddress1, Work_DutyInCompany1,  
		Work_ServiceCompany2, Work_DimissionTime2, Work_JoinTime2, Work_CompanyAddress2, Work_DutyInCompany2,  
		Work_ServiceCompany3, Work_DimissionTime3, Work_JoinTime3, Work_CompanyAddress3, Work_DutyInCompany3,  
		Work_ServiceCompany4, Work_DimissionTime4, Work_JoinTime4, Work_CompanyAddress4, Work_DutyInCompany4,  
		Work_ServiceCompany5, Work_DimissionTime5, Work_JoinTime5, Work_CompanyAddress5, Work_DutyInCompany5);
	ADOdbo.OpenRecordset(SQL);
	ADOdbo.CloseRecorset();	

	GetDlgItem(IDC_BUTTON_WE_SAVE)->EnableWindow(FALSE);
	GetDlgItem(IDC_BUTTON_WE_MODIFY)->EnableWindow(TRUE);
	CtrlStatus_WorkE(FALSE, FALSE);
	MessageBox("员工 【工作经历信息】 录入成功!", "成功", MB_OK | MB_ICONEXCLAMATION);
	return TRUE;
}

/*********************************************************************
函数说明:	  修改按钮
函数参数:	  
*********************************************************************/
BOOL WorkExpeInfoDlg::WeModify(int nKeyID, CString strKeyIDCard) 
{
	CADOOperation ADOdbo;
	CString SQL; 
	CString strFields[] = {"employee_ID", "employee_IDCard"};
	CString strRetValue[2];
	strRetValue[0] = "NOID";
	strRetValue[1] = "NOIDCARD";

	SQL.Format("select employee_ID, employee_IDCard from Employee_WorkExpe_Table \
				where employee_ID = %d and employee_IDCard = '%s'", nKeyID, strKeyIDCard);
	ADOdbo.OpenRecordset(SQL);
	ADOdbo.GetFieldsValue(strFields, 2, strRetValue, FALSE);
	ADOdbo.CloseRecorset();
	if (strRetValue[0] == "NOID" && strRetValue[1] == "NOIDCARD")
	{
		WeSave(nKeyID, strKeyIDCard);
		return TRUE;
	}

 	SQL.Format("update Employee_WorkExpe_Table \
		set WorkExpe_ServiceCompany1 = '%s', WorkExpe_DimissionTime1 = '%s', WorkExpe_JoinTime1 = '%s', WorkExpe_CompanyAddress1 = '%s', WorkExpe_DutyInCompany1 = '%s', \
			WorkExpe_ServiceCompany2 = '%s', WorkExpe_DimissionTime2 = '%s', WorkExpe_JoinTime2 = '%s', WorkExpe_CompanyAddress2 = '%s', WorkExpe_DutyInCompany2 = '%s', \
		    WorkExpe_ServiceCompany3 = '%s', WorkExpe_DimissionTime3 = '%s', WorkExpe_JoinTime3 = '%s', WorkExpe_CompanyAddress3 = '%s', WorkExpe_DutyInCompany3 = '%s', \
		    WorkExpe_ServiceCompany4 = '%s', WorkExpe_DimissionTime4 = '%s', WorkExpe_JoinTime4 = '%s', WorkExpe_CompanyAddress4 = '%s', WorkExpe_DutyInCompany4 = '%s', \
			WorkExpe_ServiceCompany5 = '%s', WorkExpe_DimissionTime5 = '%s', WorkExpe_JoinTime5 = '%s', WorkExpe_CompanyAddress5 = '%s', WorkExpe_DutyInCompany5 = '%s'\
			where employee_ID = %d AND employee_IDCard = '%s'",
		Work_ServiceCompany1, Work_DimissionTime1, Work_JoinTime1, Work_CompanyAddress1, Work_DutyInCompany1,  
		Work_ServiceCompany2, Work_DimissionTime2, Work_JoinTime2, Work_CompanyAddress2, Work_DutyInCompany2,  
		Work_ServiceCompany3, Work_DimissionTime3, Work_JoinTime3, Work_CompanyAddress3, Work_DutyInCompany3,  
		Work_ServiceCompany4, Work_DimissionTime4, Work_JoinTime4, Work_CompanyAddress4, Work_DutyInCompany4,  
		Work_ServiceCompany5, Work_DimissionTime5, Work_JoinTime5, Work_CompanyAddress5, Work_DutyInCompany5,
		nKeyID, strKeyIDCard);
	ADOdbo.OpenRecordset(SQL);
	ADOdbo.CloseRecorset();

	CtrlStatus_WorkE(FALSE, FALSE);
	GetDlgItem(IDC_BUTTON_WE_SAVE)->EnableWindow(FALSE);
	GetDlgItem(IDC_BUTTON_WE_MODIFY)->EnableWindow(TRUE);
	MessageBox("员工 【工作经历信息】 修改成功!", "成功", MB_OK | MB_ICONEXCLAMATION);
	return TRUE;
}

/*********************************************************************
函数说明:	  控制更多信息
函数参数:	  
*********************************************************************/
void WorkExpeInfoDlg::OnButtonWeMoreinfo() 
{
	CString str;
	
	if(GetDlgItemText(IDC_BUTTON_WE_MOREINFO, str), str == "填写更多>>")
	{
		SetDlgItemText(IDC_BUTTON_WE_MOREINFO, "关闭填写<<");
		CtrlStatus_WorkE(TRUE, TRUE);
	}
	else
	{
		SetDlgItemText(IDC_BUTTON_WE_MOREINFO, "填写更多>>");		
		CtrlStatus_WorkE(TRUE, FALSE);
	}	
}

/*********************************************************************
函数说明:	  初始化时间显示
函数参数:	  
*********************************************************************/
void WorkExpeInfoDlg::IniAllTimePicker()
{
	SYSTEMTIME sysTime = {0};
	sysTime.wYear  = 1900;
	sysTime.wMonth = 1;
	sysTime.wDay   = 1;

	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_JOINTIME1))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_JOINTIME2))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_JOINTIME3))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_JOINTIME4))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_JOINTIME5))->SetTime(&sysTime);

	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_DIMTIME1))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_DIMTIME2))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_DIMTIME3))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_DIMTIME4))->SetTime(&sysTime);
	((CDateTimeCtrl*)GetDlgItem(IDC_DTP_WE_DIMTIME5))->SetTime(&sysTime);
}

/*********************************************************************
函数说明:	   使内容可以编辑
函数参数:	   

⌨️ 快捷键说明

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