1、2.1实现功能系统主要包括企业系统管理人员对企业职工信息的增、删、查、改等功能和普通职工对职工信息的查看功能。用户只需在进入操作界面后选择相应的登陆身份就可以进行相应的操作。2.2 概要设计(涉及类的框图)用户身份验证类 Jusrition职工信息类Employee职工数据类 Database主程序main设置帐号、密码setData判断权限操作judge职工基础信息定义职工基础信息设置职工基础信息的增加、删除 、显示 构造Database()函数系统的主界面输出由主界面进入子界面或退出增、删、全删、查、改、显示职工信息void empdata()职工维护2.3 界面设计界面设计在工作流程上分
2、为结构设计、交互设计、视觉设计三个部分。结构设计 Structure Design结构设计也称概念设计 (Conceptual Design),是界面设计的骨架。该人事管理系统运行时界面上的目录体系和词语定义易于用户理解和操作,例如主界面的目录体系包括1操作、0返回。选择1操作又会进入登陆界面,其目录体系包括 1系统管理员、2 职工。选择 1系统管理员会进入管理员操作界面,其目录体系包括1增加2更改3删除4查找5显示6全删7 帮助0退出,选择2会进入职工操作界面,其目录包括1查找 2退出,然后选择相应的操作进行操作。这些都充分体现了结构化的界面设计理念。交互设计 Interactive Des
3、ign 交互设计的目的是使产品让用户明白、清楚,且能简单使用。 任何产品功能的实现都是通过人和机器的交互来完成的。该人事管理系统中包含1)清楚的错误提示,误操作后,系统提供有针对性的提示。例如管理员输入的帐号或密码错误时,系统会给出相应的提示,以指导管理员进行正确的操作。以及增、删、查、改等功能实现中的提示信息。2) 使用用户的语言,而非技术的语言。 3)方便退出。4)导航功能。随时转移功能,很容易从一个功能跳到另外一个功能。例如操作者所需各服务间功能转换。人的因素被作为设计的核心体现出来。视觉设计 Visual Design 该管理系统界面清晰明了,在结构设计的基础上,参照目标群体的心理模型
4、和任务达成进行了视觉设计。 第3章 系统实现3.1 涉及知识点类封装、面向对象程序设计、字符串的应用、条件语句、循环语句的使用、库函数(屏幕清零函数)的应用、过程化设计的思想等。源代码#include iomanip.hstring.hfstream.h#includeusing std:map;const int Maxr=100;class Jusrition/身份验证类private:char zh11;/用户帐号char mm21;/用户密码int mi;public:void setData(char a,char b)strcpy(zh,a);strcpy(mm,b);int ju
5、dge()/用户权限判断函数 int s,t,i=1; docoutsetw(20)zh;请输入密码:mm;s=strcmp(zh,abc);t=strcmp(mm,1234if(s|t)您输入的信息错误,请重新输入!nelse return 0; i+;while(i);class Employee /职工类int tag;/删除标记 int no;/职工编号 char name20;/职工姓名 char zw20;/职务 int salary;/职工工资 char cellphone20;/职工电话 char address50;/家庭住址 Employee() char *getname
6、() return name;/获取名字 int gettag() return tag;/获取标记 int getno() return no;/获取编号 int getsalary()return salary; char *getaddress()return address; char *getcellphone()return cellphone; void setzw(char q)/设置职务 strcpy(zw,q); void setname(char na)/设置名字 strcpy(name,na); void setaddress(char a) strcpy(addres
7、s,a); void setcellphone(char c) strcpy(cellphone,c); void getsalary(int sa)salary=sa; void delna()tag=1;删除成功!endl;/删除 void addemp(int n,int sa,char *na,char *q,char *a,char* c)/增加 tag=0; no=n; salary=sa; strcpy(zw,q); strcpy(address,a); strcpy(cellphone,c);void disp()/显示职工信息setw(5)nosetw(8)namesalar
8、ysetw(10)zwsetw(15)cellphonesetw(15)addressclass Database/职工数据类 int top; Employee readMaxr;Jusrition user;/用户权限对象定义Database()/将职工信息从employee.txt读取到read中 Employee s;top=-1;fstream file(employee.txt,ios:in);while (1) file.read(char *)&s,sizeof(s);if (!file) break;top+;readtop=s; file.close();void clea
9、r()/删除所有int addemp (int n, int sa,char *na,char*q,char *a,char* c) /增加职工Employee *p=query(n);if (p=NULL) readtop.addemp(n,sa,na,q,a,c);return 1;Employee *query(int empid) for (int i=0;i=top;i+) if (readi.getno()=empid & readi.gettag()=0) return &readi;return NULL;Employee *query1(char empna20) if (r
10、eadi.getname()=empna) &Employee *query2(char empa50)for (int i=0;if (readi.getaddress()=empa &Employee *query3(char empc20)if (readi.getcellphone()=empc &void disp() /职工信息显示if (readi.gettag()=0)readi.disp();void empdata(); Database() /将read中的信息读入到employee.txt中out); /文件操作if (readi.gettag()=0) file.write(char *)&readi,sizeof(readi);void Database:empdata()/职工维护int choice=1;int m=1;int b=1;int k;char rname20;char raddress50,rcellphone20;int empid; int emps
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1