📄 menul_showdelflowerdlg.cpp
字号:
// MenuL_ShowDelFlowerDlg.cpp : implementation file
//
#include "stdafx.h"
#include "ministryperson.h"
#include "MenuL_ShowDelFlowerDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// MenuL_ShowDelFlowerDlg dialog
MenuL_ShowDelFlowerDlg::MenuL_ShowDelFlowerDlg(CWnd* pParent /*=NULL*/)
: CDialog(MenuL_ShowDelFlowerDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(MenuL_ShowDelFlowerDlg)
//}}AFX_DATA_INIT
}
void MenuL_ShowDelFlowerDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(MenuL_ShowDelFlowerDlg)
DDX_Control(pDX, IDC_MENUL_D_LIST, m_MenuL_D_List);
DDX_Control(pDX, IDC_MENUL_D_CHECKBOX, m_CBtn_CheckTimeLimit);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(MenuL_ShowDelFlowerDlg, CDialog)
//{{AFX_MSG_MAP(MenuL_ShowDelFlowerDlg)
ON_BN_CLICKED(IDC_MENUL_D_BTN_QUERY, OnMenulDBtnQuery)
ON_BN_CLICKED(IDC_MENUL_D_CHECKBOX, OnMenulDCheckbox)
ON_BN_CLICKED(IDC_MENUL_D_BTN_MOREINFO, OnMenulDBtnMoreinfo)
ON_NOTIFY(NM_CLICK, IDC_MENUL_D_LIST, OnClickMenulDList)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// MenuL_ShowDelFlowerDlg message handlers
BOOL MenuL_ShowDelFlowerDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
IDStateControl(FALSE);
MakeShowStyle();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
/*********************************************************************
函数说明: 清空数据表的显示
函数参数: void
*********************************************************************/
BOOL MenuL_ShowDelFlowerDlg::DeleteAllRows()
{
m_MenuL_D_List.DeleteAllItems(); // 清空列表控件
return TRUE;
}
/*********************************************************************
函数说明: 设置列表控件一行的内容
函数参数:
*********************************************************************/
BOOL MenuL_ShowDelFlowerDlg::SetRow(int row, CString *strArray, int nCount)
{
m_MenuL_D_List.InsertItem(row, strArray[0]); // 在列表控件中插入一行
for (int i = 1; i < nCount; i++)
{
m_MenuL_D_List.SetItemText(row, i, strArray[i]); // 设置除第一行外的其他行
}
return TRUE;
}
/*********************************************************************
函数说明: 显示内容
函数参数:
*********************************************************************/
void MenuL_ShowDelFlowerDlg::MakeShowStyle()
{
m_MenuL_D_List.SetExtendedStyle(LVS_EX_FLATSB |
LVS_EX_GRIDLINES |
LVS_EX_FULLROWSELECT |
LVS_EX_ONECLICKACTIVATE);
m_MenuL_D_List.InsertColumn(0, "姓名", LVCFMT_LEFT, 50);
m_MenuL_D_List.InsertColumn(1, "身份证", LVCFMT_LEFT, 150);
m_MenuL_D_List.InsertColumn(2, "性别", LVCFMT_LEFT, 50);
m_MenuL_D_List.InsertColumn(3, "年龄", LVCFMT_LEFT, 50);
m_MenuL_D_List.InsertColumn(4, "单位", LVCFMT_LEFT, 150);
m_MenuL_D_List.InsertColumn(5, "部门", LVCFMT_LEFT, 150);
m_MenuL_D_List.InsertColumn(6, "现任职位类别", LVCFMT_LEFT, 130);
m_MenuL_D_List.InsertColumn(7, "职称等级", LVCFMT_LEFT, 70);
m_MenuL_D_List.InsertColumn(8, "职务", LVCFMT_LEFT, 120);
m_MenuL_D_List.InsertColumn(9, "入职时间", LVCFMT_LEFT, 100);
m_MenuL_D_List.InsertColumn(10, "参加工作时间", LVCFMT_LEFT, 100);
m_MenuL_D_List.InsertColumn(11, "离开时间", LVCFMT_LEFT, 100);
m_MenuL_D_List.InsertColumn(12, "是否完清", LVCFMT_LEFT, 70);
m_MenuL_D_List.InsertColumn(13, "辞职性质", LVCFMT_LEFT, 110);
}
/*********************************************************************
函数说明: [按钮] 查询
函数参数:
*********************************************************************/
void MenuL_ShowDelFlowerDlg::OnMenulDBtnQuery()
{
CFuncOper FunOper;
CString strProperty;
if (!FunOper.CheckType_CComBox(this, IDC_MENUL_D_CMB_PRO, "一个【辞职性质】作为查询条件", strProperty))
{
return;
}
if (m_CBtn_CheckTimeLimit.GetCheck())
{
if (!MakeQueryCondition(m_CBtn_CheckTimeLimit.GetCheck()))
{
return;
}
QueryWithTimeLimit();
}
else
{
if (!MakeQueryCondition(m_CBtn_CheckTimeLimit.GetCheck()))
{
return;
}
QueryWithoutTime();
}
}
/*********************************************************************
函数说明: 检查条件并整理
函数参数: bTimeCondition 如果有时间条件则为 TRUE
*********************************************************************/
BOOL MenuL_ShowDelFlowerDlg::MakeQueryCondition(BOOL bTimeCondition)
{
CString strProperty;
GetDlgItemText(IDC_MENUL_D_CMB_PRO, strProperty);
if (bTimeCondition) // 选中时间段查询
{
CString strStart;
CString strFinish;
GetDlgItemText(IDC_MENUL_D_DTP_START, strStart);
GetDlgItemText(IDC_MENUL_D_DTP_END, strFinish);
if (!IsTimeCorrect(strStart, strFinish)) // 检查时间条件的合法性
{
MessageBox("查询的时间段条件有误!请检查!\t", "提示", MB_ICONEXCLAMATION | MB_OK);
GetDlgItem(IDC_MENUL_D_DTP_START)->SetFocus();
return FALSE;
}
WORD wStart[3] = {0};
WORD wFinish[3] = {0};
CFuncOper FunOper;
FunOper.strTimeTowTime(strStart, wStart);
FunOper.strTimeTowTime(strFinish, wFinish);
CString strIsOver;
GetDlgItemText(IDC_MENUL_D_CMB_ISOVER, strIsOver);
if (strProperty == "所有在职辞职")
{
if (strIsOver == "已完清")
{
m_strTimeCondition.Format("(Demission_Property = '在职自动辞职' and Demission_IsFinished = '已完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#) or \
(Demission_Property = '在职除名' and Demission_IsFinished = '已完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#)",
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2],
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2]);
}
else if (strIsOver == "未完清")
{
m_strTimeCondition.Format("(Demission_Property = '在职自动辞职' and Demission_IsFinished = '未完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#) or \
(Demission_Property = '在职除名' and Demission_IsFinished = '未完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#)",
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2],
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2]);
}
else // 选项【忽略此条件】
{
m_strTimeCondition.Format("(Demission_Property = '在职自动辞职' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#) or \
(Demission_Property = '在职除名' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#)",
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2],
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2]);
}
}
else if (strProperty == "所有农民工辞职")
{
if (strIsOver == "已完清")
{
m_strTimeCondition.Format("(Demission_Property = '农民工自动辞职' and Demission_IsFinished = '已完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#) or \
(Demission_Property = '农民工除名' and Demission_IsFinished = '已完清' and \
Demission_Leavetime > #%d-%d-%d# and Demission_Leavetime < #%d-%d-%d#)",
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2],
wStart[0], wStart[1], wStart[2], wFinish[0], wFinish[1], wFinish[2]);
}
else if (strIsOver == "未完清")
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -