📄 demissioninfodlg.cpp
字号:
// DemissionInfoDlg.cpp : implementation file
//
#include "stdafx.h"
#include "ministryperson.h"
#include "DemissionInfoDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// DemissionInfoDlg dialog
DemissionInfoDlg::DemissionInfoDlg(CWnd* pParent /*=NULL*/)
: CDialog(DemissionInfoDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(DemissionInfoDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void DemissionInfoDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DemissionInfoDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(DemissionInfoDlg, CDialog)
//{{AFX_MSG_MAP(DemissionInfoDlg)
ON_BN_CLICKED(IDC_BUTTON_D_SAVE, OnButtonDiSave)
ON_BN_CLICKED(IDC_BUTTON_D_MODIFY, OnButtonDModify)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DemissionInfoDlg message handlers
BOOL DemissionInfoDlg::OnInitDialog()
{
CDialog::OnInitDialog();
if (m_bFlowerToShow)
{
GetInfoFromDB(); // 从辞职花名册中调出时
CtrlStatus_Demission(FALSE);
GetDlgItem(IDC_BUTTON_D_SAVE)->EnableWindow(FALSE);
}
else
{
GetDemisFromClass(); // 显示信息
GetDlgItem(IDC_BUTTON_D_MODIFY)->EnableWindow(FALSE);
}
return TRUE;
}
/*********************************************************************
函数说明: [按钮] 保存
函数参数:
*********************************************************************/
void DemissionInfoDlg::OnButtonDiSave()
{
CFuncOper FunOper;
CString strPro;
if (!FunOper.CheckType_CComBox(this, IDC_COMBO_D_DEMISPRO, "【辞职性质】", strPro))
{
return;
}
CString strIsOver;
if (!FunOper.CheckType_CComBox(this, IDC_COMBO_D_ISOVER, "【是否完清】", strIsOver))
{
return;
}
if (m_bModifyNotFirst) // 修改
{
ModifyNotInPos();
}
else // 第一次录入,并删除之前的详细记录
{
DemissionOper();
m_bModifyNotFirst = TRUE;
}
}
/*********************************************************************
函数说明: [按钮] 修改
函数参数:
*********************************************************************/
void DemissionInfoDlg::OnButtonDModify()
{
CtrlStatus_Demission(TRUE);
GetDlgItem(IDC_BUTTON_D_SAVE)->EnableWindow(TRUE);
GetDlgItem(IDC_BUTTON_D_MODIFY)->EnableWindow(FALSE);
}
/*********************************************************************
函数说明:
函数参数:
*********************************************************************/
void DemissionInfoDlg::CtrlStatus_Demission(BOOL bStatus)
{
((CComboBox*)GetDlgItem(IDC_DTP_D_LEAVET))->EnableWindow(bStatus);
((CComboBox*)GetDlgItem(IDC_COMBO_D_ISOVER))->EnableWindow(bStatus);
((CEdit*)GetDlgItem(IDC_EDIT_D_DESCRIP))->EnableWindow(bStatus);
((CEdit*)GetDlgItem(IDC_EDIT_D_OTHER))->EnableWindow(bStatus);
((CComboBox*)GetDlgItem(IDC_COMBO_D_DEMISPRO))->EnableWindow(bStatus);
}
/*********************************************************************
函数说明: 显示 离职 信息
函数参数:
*********************************************************************/
void DemissionInfoDlg::GetDemisFromClass()
{
CFuncOper FunOper;
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_NAME, m_strName);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_IDCARD, m_strIDCard);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_SEX, m_strSex);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_AGE, m_strAge);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_COMPANY, m_strCompany);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DEPART, m_strDepart);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TPYE, m_strJobPos);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TECHPOST, m_strTechPost);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_GRASCHOOL, m_strGraSch);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_HIGHEST, m_strHigDia);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_FIRSTJOBT, m_strFirJobT);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TECHANG, m_strTechSpe);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TEL, m_strMobile);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_REMARK, m_strRemark);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DUTY, m_strDuty);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_JOINCOMTIME, m_strJoinT);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_GRATIME, m_strStuEndT);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DESCRIP, "暂无说明");
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_OTHER, "暂无其他情况");
}
/*********************************************************************
函数说明:
函数参数:
*********************************************************************/
BOOL DemissionInfoDlg::ModifyNotInPos()
{
GetDlgItemText(IDC_COMBO_D_DEMISPRO, D_DemisPro);
GetDlgItemText(IDC_EDIT_D_DESCRIP, D_Descrip);
GetDlgItemText(IDC_DTP_D_LEAVET, D_LeaveTime);
GetDlgItemText(IDC_EDIT_D_OTHER, D_Other);
GetDlgItemText(IDC_COMBO_D_ISOVER, D_IsOver);
CADOOperation ADOdbo;
CString SQL;
SQL.Format("update Demission_EmployeeInfo_Table \
set Demission_Description = '%s', Demission_Leavetime = '%s', \
Demission_Others = '%s', Demission_IsFinished = '%s' ,\
Demission_Property = '%s' \
where Demission_B_Name = '%s' AND Demission_B_IDCard = '%s'",
D_Descrip, D_LeaveTime, D_Other, D_IsOver, D_DemisPro,
m_strName, m_strIDCard);
ADOdbo.OpenRecordset(SQL);
ADOdbo.CloseRecorset();
CtrlStatus_Demission(FALSE);
GetDlgItem(IDC_BUTTON_D_SAVE)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON_D_MODIFY)->EnableWindow(TRUE);
MessageBox("修改成功!\t", "成功", MB_OK | MB_ICONEXCLAMATION);
return TRUE;
}
/*********************************************************************
函数说明: 将有用数据提取出,并删除其他的
函数参数:
*********************************************************************/
BOOL DemissionInfoDlg::DemissionOper()
{
GetDlgItemText(IDC_COMBO_D_DEMISPRO, D_DemisPro);
GetDlgItemText(IDC_EDIT_D_DESCRIP, D_Descrip);
GetDlgItemText(IDC_DTP_D_LEAVET, D_LeaveTime);
GetDlgItemText(IDC_EDIT_D_OTHER, D_Other);
GetDlgItemText(IDC_COMBO_D_ISOVER, D_IsOver);
CADOOperation ADOMove;
CString SQL;
SQL.Format("insert into Demission_EmployeeInfo_Table\
values ('%s', '%s', '%s', \
'%s', '%s', '%s', \
'%s', '%s', '%s', \
'%s', '%s', '%s', \
'%s', '%s', '%s', \
'%s', '%s', \
'%s', '%s', '%s', '%s', '%s')",
m_strName, m_strIDCard, m_strSex,
m_strAge, m_strJobPos, m_strTechPost,
m_strGraSch, m_strHigDia, m_strFirJobT,
m_strTechSpe, m_strMobile, m_strRemark,
m_strCompany, m_strDepart, m_strDuty,
m_strJoinT, m_strStuEndT,
D_Descrip, D_LeaveTime, D_Other, D_IsOver, D_DemisPro);
ADOMove.OpenRecordset(SQL);
ADOMove.CloseRecorset();
SQL.Format("delete * from Employee_BasicInfor_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_FamilyInfor_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_InActiveSer_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_PayChange_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_PayProtect_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_SpecialPost_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_TrainExpe_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
SQL.Format("delete * from Employee_WorkExpe_Table where employee_IDCard = '%s'", m_strIDCard);
ADOMove.OpenRecordset(SQL);
ADOMove.CloseRecorset();
// 设成 TRUE 后,当返回到 g_MenuL_QueryDlg 对话框时,按钮就是 disable 了,避免错误再次操作
g_bEnable = TRUE;
CtrlStatus_Demission(FALSE);
GetDlgItem(IDC_BUTTON_D_SAVE)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON_D_MODIFY)->EnableWindow(TRUE);
MessageBox("保存成功!\t", "成功", MB_OK | MB_ICONEXCLAMATION);
return TRUE;
}
/*********************************************************************
函数说明: 将有用数据提取出,并删除其他的
函数参数:
*********************************************************************/
void DemissionInfoDlg::GetInfoFromDB()
{
CADOOperation ADOdbo;
CString SQL;
SQL.Format("Select * from Demission_EmployeeInfo_Table where Demission_B_IDCard = '%s'", m_strIDCard);
ADOdbo.OpenRecordset(SQL);
CString strFields[] = {""};
CString strGetValues[22];
ADOdbo.GetFieldsValue(strFields, 22, strGetValues, TRUE);
ADOdbo.CloseRecorset();
CFuncOper FunOper;
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_NAME, strGetValues[0]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_IDCARD, strGetValues[1]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_SEX, strGetValues[2]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_AGE, strGetValues[3]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TPYE, strGetValues[4]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TECHPOST, strGetValues[5]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_GRASCHOOL, strGetValues[6]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_HIGHEST, strGetValues[7]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_FIRSTJOBT, strGetValues[8]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TECHANG, strGetValues[9]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_TEL, strGetValues[10]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_REMARK, strGetValues[11]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_COMPANY, strGetValues[12]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DEPART, strGetValues[13]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DUTY, strGetValues[14]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_JOINCOMTIME, strGetValues[15]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_GRATIME, strGetValues[16]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_DESCRIP, strGetValues[17]);
FunOper.SetFieldValueToCTime(this, IDC_DTP_D_LEAVET, strGetValues[18]);
FunOper.SetFieldValueToCEdit(this, IDC_EDIT_D_OTHER, strGetValues[19]);
FunOper.SetFieldValueToCCombox(this, IDC_COMBO_D_ISOVER, strGetValues[20]);
FunOper.SetFieldValueToCCombox(this, IDC_COMBO_D_DEMISPRO, strGetValues[21]);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -