欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于C++的企业考勤管理系统的设计代码.docx

    • 资源ID:12925098       资源大小:28.50KB        全文页数:47页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于C++的企业考勤管理系统的设计代码.docx

    1、基于C+的企业考勤管理系统的设计代码题目12 “公司员工考勤管理系统设计1、问题描述某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。定义一个将小时换成天数的类。转换规则:8小时转换为一天,12小时转换为1.5天.可进行天数的加、减.定义一个记录员工生病、休假时间的类。其中包括:员工生病没工作的天数、生病可以不工作的最多天数、员工已经带薪休假的天数、员工可以带薪休假的天数。公司规定带薪休假不能超过24小时。生病可以不工作的最多不能超过16小时。设计一程序能够对公司人员的休假情况进行管理,应用到继承、抽象类、虚函数、虚基类、

    2、多态和文件的输入/输出等内容。2、功能要求(1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加.还可以添加带薪休假和生病休假的记录,每条记录中必须包含员工编号和姓名.(2)查询功能:可根据编号、姓名等信息对已添加的员工信息和休假信息进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息;(3)显示功能:可显示当前系统中所有记录,每条记录占据一行.(4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。(5)删除功能:主要实现对已添加的人

    3、员记录和休假记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!并返回操作.(6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数,统计任一员工的休假天数等信息.(7)保存功能:可将当前系统中各类人员记录和休假记录存入文件中,存入方式任意.(8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。3、问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完

    4、成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告.#importmsado15.dll no_namespace rename(”EOF,”adoEOF)class CADOConnectionprivate:Static void InitADO();Static void UnInitADO();protected:_ConnectionPtr m_Connection;public:BOOL IsOpen();_ConnectionPtr GetConnection();Cstring GetSQLConstr(CString IP,CStrin

    5、g DBName);BOOL Open(CString ConStr);CADOConnection();VirtualCADOConnection();CADOConnection*GetConnection();Int ConCount = 0;CADOConnection g_Connection;CADOConnection*GetConnection()Return g_Connection;CADOConnection::CADOConnection()InitADO();m_Connection.CreateInstance(ADODB.Connection”);CADOConn

    6、ection:CADOConnection()If(IsOpen());m_Connection-Close();m_Connection = NULL;UnInitADO();Void CADOConnection::InitADO()If(ConCount + = 0)CoInitialize(NULL);void CADOConnection:UnInitADO()if(ConCount = 0)CoUninitialize();BOOL CADOConnection::Open(CString ConStr)if(IsOpen())m_Connection-Close();m_Conn

    7、ection-Open(_bstr_t)ConStr,”,”adModeUnknown);return IsOpen();CString CADOConnection::GetSQLConStr(CString IP,CString DBName)CString Str;Str.Format(Provider = SQLOLEDB。1;Persist Security Info = False;User ID = sa;Initial Catalog = s;Data Source = %s”,DBName,IP);return Str;_ConnectionPtr CADOConnectio

    8、n::GetConnection()return m_Connection:BOOL CADOConnection:IsOpen()long State;m_Connectionget_State(State);if(State = adStateOpen)return true;return false;class CADODataSetprotected:_RecoedsetPtr m_DataSet;CADOConnection m_Connectionpublic:void Delete();int GetRecordNo();void move(int nIndex);void Sa

    9、ve();void SetFieldValue(CString FieldName,_variant_t Value);void AddNew();BOOL Next();FieldsPtr GetFields();int GetRecordCount();void SetConnetion(CADOConnection pCon);BOOL Open(CString SQLStr);CADODataSet();virtual CADODataSet();private:BOOL IsOpen();;CADODataSet:CADODataSet()m_DataSet。CreateInstan

    10、ce(”ADODB。Recordset”);CADODataSet:CADODataSet()if(IsOpen()m_DataSetClose();m_DataSet = NULL;m_Connection = NULL;void CADODataSet::SetConnection(CADOConnection pCon)m_Connection = pCon;int CADODataSet::GetRecordCount()if(IsOpen())return m_DataSet-GetRecordCount();elsereturn 0;BOOL CADODataSet::Open(C

    11、String SQLStr)if(IsOpen)m_DataSet-Close();BOOL CADODataSet:IsOpen()long State;m_DataSet-get_State(&State);if(State = adStateOpen)return true;return false;FieldsPtr CADODataSet:GetFields()return m_DataSet-GetFields();BOOL CADODataSet::Next()if(m_DataSet-adoEOF)retuen false;m_DataSet-MoveNext();return

    12、 true;void CADODataSet:AddNew()m_DataSet-AddNew();void CADODataSet::SetFieldValue(CString FieldName,_variant_t Value0)m_DataSetPutCollect((_bstr_t)FieldName,Value);void CADODataSet:Save()m_DataSet-Upsate();void CADODataSet:Move(int nIndex)m_DataSet-MoveFirst();m_DataSet-Move(nIndex);int CADODataSet:

    13、:GetRecordNO()return m_DataSetAbsolutePositon;void CADODataSet:Delete()m_DateSet-Delete(adAffectCurent);BOOL CPersonApp::InitInstance()AfxEnableControlContainer();#ifdef_AFXDLLEnable3dControls();#elseEnable3dControlsStatic(); #endifLoadSkin();BOOLbCon= GetConnection()Open(GetConnection()-GetSQLConSt

    14、r(127。0.0.1”,tb_person”));CLoginDialog logindlg;if(logindlg。DoModal()! = IDOK)return false;CPersonDlg dlg;m_pMainWnd = dlg;int nResponse = dlg.DoModal();if(nResponse = IDOK)else if(nResponse = IDCANCEL)return FALSE; BOOL CLoginDialog::OnInitDialog()CDialog:OnInitDialog();m_DataSet。SetConnection(GetC

    15、onnection());m_DataSet.Open(”Select From Tab_User”);int count = m_DataSet。GetRecordCount();for(int i = 0;i ItemLUserNameValue);m_DataSet.Next();m_UserList。SetCurSel(0);return TRUE;void CLoginDialog:OnLogin()CString sql,user,pass;m_UserList.GetWindowText(user);m_passWord.GetWindowText(pass);sql。Forma

    16、t(Select From tab_user Where UserName = s and PassWord = s,user,pass);m_DataSet.Open(sql);if(m_DataSet.GetRecordCount() = 1):SetUserName(user);thisOnOk(); elseAfxMessageBox;void CUserManage:UpdateGrid() m_DataSet。Open(”Select * From tab_User”); m_grid.DeleteAllItems(); for(int = 0;i Item L”UserName”

    17、-Value); int no = m_DataSet。GetRecordNo(); m_grid。SetItemData(i,no); m_DataSet.Next(); BOOL CUserManage::OnInitDialog() CDialog:OnInitDialog(); m_grid。SetExtendedStyle(LVS_EX_FULLROWSELECTLVS_EX_GRIDLINES); m_grid。InsertColumn(0,”用户名”); m_grid.SetColumnWidth(0,150); m_DataSet。SetConnection(:GetConne

    18、ction()); UpdateGrid(); return TRUE; void CUserManage:OnAppend() CUserEdit useredit; if (useredit。DoModal() = IDOK) m_DataSet。AddNew(); m_DataSet。SetFieldValue(UserName”,(_bstr_t)useredit。name); m_DataSet.Save(); UpdateGrid(); void CUserManage::OnEdit() CUserEdit useredit; int no = m_grid。GetItemDat

    19、a(m_grid.GetSelectionMark()); m_DataSet.move(no1); useredit.name = (char *)(_bstr_t)m_DataSet。GetFields()-ItemLUserName-Value; if (useredit.DoModal() = IDOK) m_DataSet.SetFieldValue(”UserName,(_bstr_t)useredit。name); m_DataSet.Save(); UpdateGrid(); void CUserManage:OnDelete() if (MessageBox(”是否删除此记录

    20、!,提示”, MB_YESNOMB_ICONWARNING) = IDYES) int no = m_grid。GetItemData(m_grid.GetSelectionMark()); m_DataSet。move(no1); m_DataSet。Delete(); m_DataSet.Save(); UpdateGrid(); void CDeptManage::GetNode(HTREEITEM pNode,int nPid)HTREEITEM node;CADODataSet DataSet;DataSet。SetConnection(::GetConnection();CStri

    21、ng str;str.Format(”Select * From tab_Dept where pid = d,nPid );DataSet。Open(str);int count = DataSet。GetRecordCount();int ID;_variant_t value;for(int i = 0;i count;i+)node = m_tree.InsertItem(bstr_t)DataSet.GetFields()-ItemDeptNameValue,pNode);value = (_vaiant_t)DataSet。GetFields()ItemID-Value;ID =

    22、value。intVal;m_tree.SetItemData(node,ID);GetNode(node,ID);DataSet.Next();void CDeptManage:UpdateDept() m_tree。DeleteAllItems(); GetNode(TVI_ROOT,0);void CDeptManage:GetNode(HTREEITEM pNode,int nPid) HTREEITEM node; CADODataSet DataSet; DataSet.SetConnection(::GetConnection(); CString str; str。Format

    23、(”Select * From tab_Dept where pid = %d”,nPid); DataSet.Open(str); int count = DataSet.GetRecordCount(); int ID; _variant_t value; for (int i = 0;icount;i+) node = m_tree.InsertItem((_bstr_t)DataSet。GetFields()-ItemDeptName”-Value,pNode); value = (_variant_t)DataSet.GetFields()Item”IDValue; ID = val

    24、ue.intVal; m_tree.SetItemData(node,ID); GetNode(node,ID); DataSet.Next(); void CDeptManage::OnAdd() CDeptEdit deptedit; if (deptedit。DoModal() = IDOK) HTREEITEM pNode = m_tree。GetSelectedItem(); int pID; if (deptedit。isroot) pID = 0; else pID = m_tree。GetItemData(pNode); CADODataSet dataset; dataset

    25、。SetConnection(:GetConnection(); dataset.Open(Select top 1 From tab_Dept); dataset.AddNew(); dataset。SetFieldValue(DeptName”,(_variant_t)deptedit.name); dataset。SetFieldValue(memo”,(_variant_t)deptedit.memo); dataset。SetFieldValue(PID,(long)pID); dataset.Save(); UpdateDept(); void CDeptManage::OnEdi

    26、t() CDeptEdit deptedit; deptedit。visible = false; HTREEITEM pNode = m_tree.GetSelectedItem(); if (pNode = 0) return; int pID = m_tree.GetItemData(pNode); CADODataSet dataset; dataset。SetConnection(:GetConnection()); CString str; str.Format(”Select * From tab_Dept where id = d”,pID); dataset。Open(str

    27、); deptedit。name = (char )(_bstr_t)dataset。GetFields()-ItemLDeptName”-Value; deptedit。memo = (char *)(_bstr_t)dataset。GetFields()-Item”memo”-Value; if (deptedit。DoModal() = IDOK) dataset.SetFieldValue(”DeptName”,(_variant_t)deptedit。name); dataset.SetFieldValue(memo”,(_variant_t)deptedit.memo); data

    28、set.Save(); UpdateDept(); void CDeptManage::OnDelete() HTREEITEM pNode = m_tree。GetSelectedItem(); if (pNode = 0) return; if (MessageBox(”是否删除此记录!”,提示”, MB_YESNO|MB_ICONWARNING) = IDYES) int pID = m_tree.GetItemData(pNode); CADODataSet dataset; dataset。SetConnection(:GetConnection(); CString str; str。Format(Select From tab_Dept where id = d”,pID); dataset。Open(str); dataset.Delete(); dataset。Save(); UpdateDept(); void CPersonManage:OnSelchangedTreedept(NMHDR * pNMHDR,LRESULT * pResult)NM_TREEVIEW pNMTreeView = (NM_TREEVIEW*)pNMHDR;m_DeptID =


    注意事项

    本文(基于C++的企业考勤管理系统的设计代码.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开