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

📄 chuchai.cpp

📁 这是采用mfc编写的工资管理系统
💻 CPP
字号:
// 
//
/***************************
文件名:Chuchai.cpp 
文件类型:implementation file
功能描述:对出差信息进行记录
创建人:张国
版本号:1.0
***************************/

#include "stdafx.h"
#include "salarymanagement.h"
#include "Chuchai.h"
#include "KaoqinDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CChuchai dialog


CChuchai::CChuchai(CWnd* pParent /*=NULL*/)
	: CDialog(CChuchai::IDD, pParent)
{
	//{{AFX_DATA_INIT(CChuchai)
	m_remark = _T("");
	m_dateFrom = 0;
	m_dateTo = 0;
	//}}AFX_DATA_INIT
}

CChuchai::~CChuchai()
{
}

void CChuchai::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CChuchai)
	DDX_Text(pDX, IDC_EDIT1, m_remark);
	DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_dateFrom);
	DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER8, m_dateTo);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CChuchai, CDialog)
	//{{AFX_MSG_MAP(CChuchai)
	ON_BN_CLICKED(IDC_SAVE, OnSave)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CChuchai message handlers

/*********************
功能描述:保存出差记录
*********************/
void CChuchai::OnSave() 
{
	UpdateData();
	
	CString nID;
	nID=CKaoqinDlg::m_nIDSelect;//获取员工ID

	if(nID=="")
	{
		MessageBox("请在左边列表框中选择要修改的用户");
		return;
	}

	//计算出差总时间
	CTimeSpan ts=m_dateTo-m_dateFrom;
	int totleDays=ts.GetDays();
	
	if(totleDays<0)
	{
		MessageBox("出差结束时间应该大于出差开始时间,请核实后重新输入!!!");
		return;
	}

	//设置写入出差表的数据库记录,包括主键和非主键属性
	Prop *mainKey=new Prop[2];//主键属性
	Prop *simple=new Prop[2]; //非主键属性
	
	//初始或主键属性,Prop[0]已在CPublic中初始化
	mainKey[0].name="员工ID";
	mainKey[0].value=nID;
	mainKey[1].name="出差开始时间";
	mainKey[1].value=m_dateFrom.Format("%Y-%#m-%#d");
	
	//初始化非主键属性
	simple[0].name="出差结束时间";
	simple[1].name="出差备注";
	simple[0].value=m_dateTo.Format("%Y-%#m-%#d");
	simple[1].value=m_remark;
	
	//通过主键属性和非主键属性获取数据库记录
	DataRecord record1;
	record1.mainProp=mainKey;
	record1.nCount=2;
	record1.smpProp=simple;
	record1.smpCount=2;
		
	//设置写入考勤统计表的记录,包括主键和非主键属性
	mainKey=new Prop[2];
	simple=new Prop[2];
	
	//各主键名称初始化,Prop[0]已在CPublic中初始化
	mainKey[0].name="员工ID";
	mainKey[0].value=nID;
	mainKey[1].name="记录日期";
	mainKey[1].value=m_dateFrom.Format("%Y-%#m-%#d");
	
	//非主键初始化
	CString temp;
	temp.Format("%d",totleDays);
	simple[0].name="记录月份";
	simple[0].value=m_dateFrom.Format("%Y-%m");
	simple[1].name="出差时间";
	simple[1].value=temp;
	
	//获取写入考勤统计表的属性和对应的值
	DataRecord record2;
	record2.mainProp=mainKey;
	record2.nCount=2;
	record2.smpProp=simple;
	record2.smpCount=2;
	
	//更新数据库表(KEvection表和KaoQin表)
	m_kaoqinPub.SaveKaoqinData(record1,"KEvection",record2,"KaoQin");
}

⌨️ 快捷键说明

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