职工信息管理程序 (2)
- 格式:doc
- 大小:73.00 KB
- 文档页数:11
公司工会信息管理办法为全面调动职工积极参与企业建设和管理,让广大职工的主人翁地位得到充分保障,为企业发展出谋划策,促进企业的经济发展,维护职工切身利益,建立和谐稳定的企业劳动关系,为企业实现“品种、质量、效益”的突破作出新贡献,能及时反映企业生产经营过程中关系职工群众切身利益等热点和焦点问题,全面、准确、及时地提报和反馈职工群众的意见、建议和呼声,为公司领导决策提供科学依据,公司工会特制定本办法。
1、各单位(直属工会)要高度重视,加强管理,切实重视信息报送工作。
各直属工会每月至少要提报1条有价值的信息上报公司工会,公司工会负责对上报的信息实施有效管理和反馈。
2、信息要紧密结合企业生产经营以及生产、安全、劳动保护、员工福利、分配考核等事关企业发展和职工切身利益等焦点、热点和难点问题。
3、所报信息要及时、准确,信息内容务求真实、全面、客观,具有典型性、群众性和及时性,能够真实而准确地反映企业发展以及工会各项工作中须弘扬或有待改进和完善的问题点。
4、保证信息质量。
要求文字精练、数字准确、事实清楚、重点突出、简明扼要。
5、严格执行信息的上报审批程序。
上报的信息必须经过员工诉求,班组讨论后层层提报。
班组提报的信息必须由班组长签字上报至作业区,由作业区核实确认后作业长签字上报至本单位工会委员会,本单位工会委员会负责收集整理上报至本单位党政工领导审签方可上报,以确保其真实性、准确性和群众性。
6、为确保信息来源,此项工作实行月考评,对不能及时完成的单位纳入年终考核。
由工会提报考核结果,由企管部具体执行。
7、每月信息上报截止日20日,重大信息随时上报。
8、公司工会对有价值的信息进行梳理、汇总、上报,并在10个有效工作日内给予答复。
9、本制度从下发之日起执行(附信息管理反馈表)。
公司工会2013年11月15日附件:信息管理反馈表。
人事档案管理流程人事档案管理是企业组织中非常重要且基础的管理工作之一。
它涉及到员工个人信息的收集、归档、保存和利用,对于企业的运营和管理有着重要的影响。
一个完善的人事档案管理流程能够有效保障员工个人信息的安全性和机密性,同时也能够提高管理的效率和规范性。
首先,人事档案管理流程的第一步是员工个人信息的收集。
在员工入职时,人力资源部门需要向员工索取相应的个人信息,其中包括但不限于身份证件、学历证书、工作经历、健康体检报告等。
这些信息将构成员工的档案,是企业对员工进行管理和评价的重要依据。
在收集员工个人信息时,要确保信息的真实性和完整性,避免信息录入不准确或缺失。
其次,人事档案管理流程的第二步是档案的归档和组织。
收集到员工个人信息后,人力资源部门需要对这些信息进行分类和整理,建立员工档案。
通常情况下,员工档案包括个人基本信息、入职申请表、合同和协议、绩效评价、培训记录、离职手续等。
这些信息需要以文件或电子形式进行保存,并按照一定的管理制度进行归档和组织,以便随时查阅和利用。
第三,人事档案管理流程的第三步是档案的保管和保密。
员工个人信息的保密是人事档案管理工作的核心内容之一。
企业必须建立起严格的档案保管制度和管理流程,确保员工个人信息不被泄露或滥用。
只有经过授权的人员才能查阅和修改员工档案,其他人员不得擅自使用档案信息。
同时,在档案的保存过程中,要时刻注意信息的备份和防灾措施,以防信息丢失或损坏。
最后,人事档案管理流程的第四步是档案的利用和管理。
员工档案并不是无用之物,它们对于企业的管理和运营有着重要的参考价值。
通过对员工档案的分析和利用,企业可以更好地了解员工的工作表现和发展需求,从而制定更合理的人才管理策略和培训计划。
同时,员工档案还可以作为企业应对法律纠纷和劳动争议的重要依据。
总之,一个完善的人事档案管理流程能够有效保障员工个人信息的安全性和机密性,提高管理的效率和规范性,为企业的发展和稳定奠定良好的基础。
信息管理工作程序1、信息的收集与识别工程信息是记录工程建设情况的载体文件,主要包括工程进度信息、工程质量信息、造价信息、安全生产信息、环保信息、征地拆迁信息和风险对策等信息。
项目管理处是项目建设信息收集、整理和识别的总体负责单位。
项目管理处除应负责本部门与项目建设信息管理有关的工作外,还应督促施工、监理、材料设备供应等相关单位完善项目建设信息收集、识别、交流等规定,确保项目建设信息收集的及时、准确、全面。
各相关单位信息收集、整理、报送的信息载体主要有:1)施工单位(承包人)负责编制的《施工月报》;2)监理单位负责编制的《监理月报》;3)项目管理处负责编制的《项目管理月报》。
项目管理处行政部是《项目管理月报》编制的责任部门,具体负责对施工单位、监理单位和管理处各部门提供的信息稿件进行编辑、处理、加工,形成《项目管理月报》初稿后送管理处相关部门会签,并由项目总经理审核签发。
在编制《项目管理月报》中,项目管理处各部门分别负责下述信息管理工作:合约部负责招标投标、、造价管理、索赔等信息的收集、整理、识别和编写工作;技管部负责工程变更信息的收集、整理、识别和编写工作;施管部负责工程进度、材料统计、试验检测、生产控制(包括安全生产、文明施工等)、质量管理等信息的收集、整理、识别和编写工作;拆迁部负责征地拆迁方面信息的收集、整理、识别和编写工作;行政部负责档案及行政管理等信息的收集、整理、识别和编写工作。
2、信息的编布工程建设项目《施工月报》、《监理月报》、《项目管理月报》由文字描述和表格两部分组成。
该部分内容反映的实际情况应与设计文件、项目管理大纲、监理大纲、承包人施组等文件中设计的指标进行对比,并具体反映差异数值与比率。
1)《施工月报》编发办法《施工月报》由各合同段承包人负责每月21日前编制完成并报监理办。
《施工月报》文字说明部分包括:工程概况、进度、质量、计量支付、工程变更、索赔、安全生产、重大事项、存在问题、下一阶段施工安排和建议。
*******************实践教学*******************JAVA课程设计题目:职工信息管理系统专业班级:姓名:学号:指导教师:成绩:摘要用计算机管理职工信息具有可靠、方便、省时省力的特点。
当今各种管理软件大部分只针对一个公司或者更大的范围来编写,它具有通用性良好的特点,但对于小领域如一个系来说,它就很难适应这个系特殊的管理。
而该设计正是基于职工信息管理的特点来开发的。
它可以实现职工信息的录入、添加、修改、删除、查询、保存到数据库等基本功能。
同时还为管理者提供统计、制表、系统日志、开介绍信等特色功能。
该系统具有界面友好、操作方便、成本低廉、符合管理者习惯的特点。
另外,系统采用Java语言开发,具有可移植性良好、不依赖于操作系统的特点。
同时采用My SQL数据库管理系统做数据库,是因为它具有管理方便,存储量大的特点,适合计算机系信息管理的要求,它主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。
本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。
关键词:职工管理信息系统职工信息目录一、需求分析 (1)二、总体设计 (2)三、详细设计 (3)3.1基础数据定义 (3)3.2主要功能实现 (5)3.3数据库表定义 (25)四、测试 (28)4.1登录主界面 (28)4.2管理员身份登录主界面 (28)4.3普通用户身份登录主界面 (29)4.4t添加职工信息 (29)4.5修改职工信息 (30)4.6职工信息查询 (30)4.6删除职工信息 (31)4.6添加用户信息 (31)4.6修改用户信息 (32)4.6用户信息查询 (32)4.6删除用户信息................................................................................................................. ..334.6用户密码修改 (33)设计总结 (34)参考文献 (35)致谢 (36)一、需求分析1.1问题描述对职工信息进行管理,包括:职工信息的录入、修改、删除、更新,还有对登录用户进行管理,包括用户信息的录入、删除、修改,密码修改等管理,还有对用户信息的现实打印,查找等。
1.课程论文题目职工信息管理系统程序设计一、题目要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单的方式工作。
(2)职工信息录入功能(职工信息用文件保存)。
(3)职工浏览功能。
(4)职工信息查询功能,查询方式可按学历查询或者工号查询。
(5)职工信息的删除、修改功能(可选项)。
2.程序设计思路1、设计思路(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。
3.功能模块图5.算法设计1.主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。
2浏览模块【分析】该模块的功能是浏览职工的全部信息3排序模块4查询模块【分析】该模块的功能是根据输入的职工按照工号和学历查找对应的记录,找到以后,可进行继续查找或修改信息的操作。
流程图如下:5修改模块【分析】该模块的功能是显示所有职工的信息,考虑到记录较多,建议采用分屏显示。
显示完所有记录后,输入要修改的职工的工号,根据工号查到职工的记录,并提示用户修改该记录的哪部分信息,根据用户做的选择修改相应信息。
流程图如下:6.程序代码#include<stdio.h>#define N 50struct worker{char id[50];char name[20];char sex[10];char age[10];char edu[20];char salary[10];char address[20];char tel[20];}worker[N];void save(int n) //保存函数,保存n个记录{ FILE *fp;int i;if((fp=fopen("worker.txt","wb"))==NULL) //以只写方式为输出打开一个二进制文件{ printf("\nCannot open file\n");}for(i=0;i<n;i++)if(fwrite(&worker[i],sizeof(struct worker),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() //加载函数{ FILE *fp;int i;if((fp=fopen("worker.txt","rb"))==NULL){printf("\nCannot open file\n");return NULL;}for(i=0;!feof(fp);i++)fread(&worker[i],sizeof(struct worker),1,fp);fclose(fp);return(i-1);}void no_input(int i,int n) //工号输入函数,i表示第i个职工的信息,n 表示比较到第n个职工{ int j,k,w1;do{w1=0;printf("工号:");scanf("%s",worker[i].id);for(j=0;worker[i].id[j]!='\0';j++)if(worker[i].id[j]<'0'||worker[i].id[j]>'9') //判断工号是否为数字{puts("请重新输入!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++) //比较到第N个职工if(k!=i&&strcmp(worker[k].id,worker[i].id)==0) //判断职工号是否有雷同{puts("请重新输入!\n");w1=1;break;}}while(w1==1);}void input(int i) //输入一个记录的函数{ no_input(i,i);printf("姓名:");scanf("%s",worker[i].name);printf("性别:");scanf(" %s",&worker[i].sex);printf("年龄:");scanf("%s",&worker[i].age);printf("工资:");scanf("%s",worker[i].salary);printf("学历:");scanf("%s",&worker[i].edu);printf("住址:");scanf("%s",worker[i].address);printf("电话:");scanf("%s",worker[i].tel);}void printf_one(int i) //显示一个记录的函数{printf("%10s %10s %5s %5s %8s %6s %10s %10s\n",worker[i].id,worker[i].name,worker[i].sex,worker[i].age,worker[i].salary,worker[i].edu,worker[i].address,worker[i].tel); }void printf_back() //一个任务结束后选择是好似浏览还是返回{ int k,w;printf("\n\n\tSuccessful^-^.\n\n");printf("接下来做什么?\n\n\t1).浏览全部\t2).返回: [ ]\b\b");scanf("%d",&w);if(w==1)browse();else menu();}modify_data(int i,int n) //修改函数{ int c,w1;do{puts("\nmodify by=>\n\n 1).工号 2).姓名 3).性别 4).年龄 5).工资6).学历 7).地址 8).电话 9).取消");printf("请选择?:[ ]\b\b");scanf("%d",&c);if(c>9||c<1){puts("\nChoice error!please again!");getchar();}}while(c>9||c<1);do{switch(c){case 1:no_input(i,n);break;case 2:printf("name:");scanf("%s",worker[i].name);break;case 3:printf("sex:");scanf("%s",worker[i].sex);break;case 4:printf("age:");scanf("%s",worker[i].age);break;case 5:printf("salary:");scanf("%s",worker[i].salary);break;case 6:printf("edu:");scanf("%s",worker[i].edu);break;case 7:printf("address:");scanf("%s",worker[i].address);break;case 8:printf("tel:");scanf("%s",worker[i].tel);break;case 9:menu();break;}puts("\nNow:\n");printf_face();printf_one(i);printf("\n确定?\n\n\t1).是2).否,重新修改3).不保存退出[ ]\b\b");scanf("%d",&w1);if(w1==1)save(n);}while(w1==2);return(w1);}printf_face() //显示数据结构项目{ printf("\n\t工号姓名性别年龄工资学历地址电话号码\n"); }void enter() //输入模块{ int i,n;printf("输入多少个职工信息(0-%d):",N-1);scanf("%d",&n);printf("\n 请输入职工信息\n\n");for(i=0;i<n;i++)input(i);if(i!=0)save(n);printf_back();}browse() //浏览模块{ int i,j,n;n=load();printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)){printf("\n\n按任意键显示下一页...");getch();puts("\n\n");}printf_one(i);}printf("\t这里有 %d 条记录.\n",n);printf("\n按任意键返回...");getch();menu();}modify() //修改模块{struct worker s;FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)) //目的是分屏显示{printf("\n\n记住要修改的工号.按任意键显示下一页");getch();puts("\n\n");}printf_one(i); //调用显示一个记录的函数}do{printf("\n\n输入要修改的职工工号! 工号:");scanf("%s",s.id); //输入要修改的IDfor(i=0;i<n;i++) //查找要修改的数据if(strcmp(s.id,worker[i].id)==0){k=i; //找到要修改的记录s=worker[i]; //把worker[i]备份,以便恢复}if(k==-1)printf("\n\n未找到请重输");}while(k==-1); //当k=-1表示没有找到printf_face(); //调用显示数据结构项目的函数printf_one(k); //调用显示一个记录的函数w1=modify_data(k,n); //修改记录并返回保存控制值w1,w1=1表示用户已确认修改if(w1==1){printf("\Successful^_^.\n\n修改另一个?\n\n\t1).是 2).否,保存退出\t[ ]\b\b");scanf("%d",&w0);w2=1; //用来控制保存,使w2=1是标记已有过修改}else{w0=0;if(w2==1)worker[k]=s;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}search() //查询模块{ int c,w1;do{puts("\nsearch by=>\n\n1).工号 2}.学历 3).取消并返回"); printf("Which you needed?:[ ]\b\b");scanf("%d",&c);if(c>3||c<1){ puts("\nchoice error!please again!");getchar();}}while(c>3||c<1);{switch(c){case 1:search1();break;case 2:search2();break;case 3:menu();break;}}}search1() //按工号查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n输入要查询的工号! id:");scanf("%s",s.id);printf_face();for(i=0;i<n;i++)if(strcmp(s.id,worker[i].id)==0){k=i;printf_one(k);break;}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search1();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}search2() //按学历查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n请输入你要查询的学历:\n");scanf("%s",);printf_face();for(i=0;i<n;i++)if(strcmp(,worker[i].edu)==0){k=i;printf_one(k);}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search2();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}menu(){int n,w1;do{puts("\t\t*******************菜单*******************\n\n");puts("\t\t\t\t1.录入职工信息");puts("\t\t\t\t2.浏览职工信息");puts("\t\t\t\t3.查询职工信息");puts("\t\t\t\t4.修改职工信息");puts("\t\t\t\t5.退出");puts("\t\t****************************************\n\n");printf("请选择(1~5): [ ]\b\b");scanf("%d",&n);if(n<1||n>5) //对选择的数字作判断{w1=1;getchar();}else w1=0;} while(w1==1);switch(n){case 1:enter();break; //录入 case 2:browse();break; //浏览 case 3:search();break; //查询 case 4:modify();break; //修改 case 5:exit(0); //退出}}main(){menu();}7.程序运行结果下面是各个模块的的界面截图(1)、主菜单(2)、输入模块(3)、浏览模块(3)、查找模块(4)、修改模块8.编程中遇到的困难及解决方法温故而知新,可以为师矣。
综合设计实验——职工工资信息管理专业:班级:学号:姓名:完成日期:2012/7/3一、实验目的:1、进一步熟悉开发环境,掌握编译、连接和调试的技巧;2、综合运用数组、指针、函数和文件,通过综合设计掌握数组、结构体、指针和函数之间的相互关系,掌握函数参数传递,理解“传值”、“传指针”和“传引用”3、熟悉具有复杂需求的大程序设计过程和注意事项二、实验内容:【题目描述】编写程序实现单位职工工资信息管理。
包含各种基本数据的录入、修改、删除、插入、查询、统计(应发工资=基本工资+职务工资+各种补助,实发工资=应发工资-水电费-公积金)【基本功能】:(1)添加功能:添加一个职工的基本信息,包括工资卡号、身份证号、姓名、基本工资、职务工资、各种补助、应发工资、水电费、公积金、实发工资等(2)删除功能:能够对一个职工的信息进行删除,例如按姓名进行删除(3)显示功能:显示所有职工的主要信息包括工资卡号、身份证号、姓名、基本工资、职务工资、各种补助、应发工资、水电费、公积金、实发工资等(4)查找功能:根据你键入的职工姓名,显示其详细信息(注:在main内显示查找到的职工信息!)(5)修改功能:根据你键入的职工姓名,对该职工工资信息进行修改。
(6)排序功能:对职工的信息按照实发工资进行排序(不得选用直接选择法,可以使用交换法、设标签的选择法、快速排序法等)。
【题目要求】(1) 按照分析、设计、编码、调试和测试的软件开发过程完成这个应用程序;(2) 职工工资信息应该包含:工资卡号、身份证号、姓名、基本工资、职务工资、各种补助、应发工资、水电费、公积金、实发工资等;(3) 为各项操作功能设计一个菜单(可选)。
应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目。
(4) 不使用C++的string类型来存放字符串(5) 函数接口参数设计允许使用C++引用类型(6) 建议使用动态堆内存分配,达到高效利用内存目的(本要求适合提高水平的同学,不做严格要求)【输入要求】应用程序运行后,在屏幕上显示一个菜单。
企业信息的管理程序和方法企业信息的管理是企业运营过程中非常重要的环节,对于企业的发展和决策具有重要的支持作用。
一个高效的企业信息管理程序和方法能够提高企业的运营效率和竞争力,下面将详细介绍一个标准的企业信息管理程序和方法。
一、企业信息管理程序:(一)规划阶段:1.明确信息管理的目标和要求:确定信息管理的目标,如提高运营效率、提升决策质量等,并明确要求,如信息管理的准确性、及时性、完整性等。
2.指定信息管理的组织和责任:确定信息管理的组织结构,明确各级责任人的职责和权限。
(二)收集阶段:1.确定信息需求:调研整理企业的信息需求,包括各个部门和岗位的信息需求。
2.设计信息收集方式:确定信息的收集方式,可以通过各种手段如问卷调查、采访、观察等进行信息收集。
(三)存储阶段:1.设计信息存储结构:根据信息需求,设计信息存储的结构,包括数据库的设计和建立等。
2.建立信息存储系统:根据信息存储结构,建立信息存储系统,并确保信息的安全和完整性。
(四)处理阶段:1.信息处理流程设计:根据信息的流程和需求,设计信息处理流程,包括信息的录入、处理和输出等。
2.制定信息处理规范:明确信息处理的规范,包括信息录入的标准、信息处理的流程和方法等。
(五)利用阶段:1.设计信息利用方式:根据信息的需求和用途,设计信息的利用方式,包括报表、图表、数据分析等形式。
2.建立信息利用系统:建立信息利用系统,提供各种信息展示和分析工具。
(六)评估阶段:1.定期评估信息管理的效果:通过各种途径如用户满意度调查等方式,定期评估信息管理的效果。
2.根据评估结果进行改进:根据评估结果,及时进行信息管理的改进和完善。
二、企业信息管理方法:(一)数据安全保护:1.建立严格的信息安全制度和规范,明确数据的访问权限和保密级别。
2.使用加密技术保护重要数据的安全,定期备份数据以防止数据丢失。
(二)信息共享和协同:1.建立内部信息共享的平台,实现各部门之间信息的快速传递和共享。
职工档案与信息管理制度第一章总则第一条目的与范围本制度旨在规范企业职工的档案与信息管理工作,保障职工信息的真实、准确、完整。
适用于本企业全部职工的档案与信息管理工作。
第二条定义1.职工档案:指包含个人信息、工作经过、考核记录、表扬嘉奖、惩戒处分、培训情况等相关信息的记录。
2.职工信息:指职工个人信息、联系方式、工作经验、专业技能等相关信息的记录。
第二章档案管理流程第三条档案建立与归档1.新入职职工的档案由人力资源部统一建立,包含职工个人信息手记、工作合同、岗位培训、入职体检等相关料子的归档工作。
2.档案应分类保管,依照职工姓名、档案编号进行编号和归档,确保档案易于查找和管理。
3.档案室应配备专人负责档案管理工作,保证档案的安全和完整性。
4.职工离职后,档案应进行整理和归档,至少保存五年以上。
第四条档案查询与借阅1.职工有权查询本身的档案内容,并填写相应的申请表。
2.档案室应及时供应职工需要的档案信息,借阅档案需填写借阅登记表,借阅期限一般不得超出三个工作日。
3.档案室不得随便供应或泄露档案信息,严格保守职工的个人隐私。
第三章信息管理与保密第五条信息手记与更新1.人力资源部负责职工信息的手记和更新工作,确保信息的准确性和完整性。
2.职工应及时供应个人信息的更改,如姓名、联系方式、家庭情形等,人力资源部应在五个工作日内更新相应信息。
第六条信息使用与共享1.职工的个人信息只能用于工作需要,严禁私自使用或非法向他人供应。
2.组织内部部门之间可以共享职工信息,但需经过职工本人同意并保证信息安全。
第七条信息存储与保密1.企业应建立完善的信息存储系统,确保信息的安全和完整性。
2.职工信息应存储在安全的服务器,设置相应的权限保护,只允许授权人员访问。
3.职工信息应进行定期备份,以防数据丢失或损坏。
第八条信息安全管理1.企业应订立相应的信息安全管理制度,并举办培训活动,提高职工对信息安全的重视和保护意识。
2.职工应妥当保管个人账号和密码,不得将其泄露给他人,且不得使用不安全的网络环境访问职工信息系统。
工厂员工登记档案管理制度一、总则为了规范和规范工厂员工的登记档案管理工作,保障员工的合法权益,提高员工档案管理的效率和质量,制定本制度。
二、适用范围本制度适用于所有工厂员工的登记档案管理工作,包括招聘登记档案、个人信息档案、劳动合同档案、工资证明档案等。
三、登记档案管理程序1. 招聘登记档案管理在员工被录用之后,工厂人力资源部门要及时将其个人信息、身份证复印件、社保证明等登记档案进行备案。
并建立员工档案,包括入职登记表、照片、身份证、学历证明、职业资格证书等。
2. 个人信息档案管理员工个人信息档案管理包括个人基本信息、家庭住址、联系电话、家庭成员等。
工厂要建立科学完善的个人信息档案管理制度,保证员工个人信息的安全性和保密性。
3. 劳动合同档案管理工厂与员工签订的劳动合同是员工的法定权益保障,工厂要建立健全的合同档案管理制度,及时归档、保管员工的劳动合同。
4. 员工培训档案管理员工培训是工厂提升员工技能和素质的重要途径,工厂要建立培训档案管理制度,包括培训记录、培训证书等档案的归档和保管。
5. 工资证明档案管理工资是员工劳动的报酬,工厂要建立工资证明档案管理制度,及时归档和保存员工的工资证明。
6. 档案查询和利用员工对自己的登记档案有权查询和利用,但必须经过工厂人力资源部门的书面申请和审核。
7. 档案借阅和调阅工厂要建立档案借阅和调阅制度,严格控制档案的借阅和调阅权限,提高档案管理效率和安全性。
8. 档案销毁管理员工离岗后,工厂要对其登记档案进行及时的销毁处理,严格按照规定程序进行销毁,以保障员工信息的安全性和保密性。
四、监督和检查工厂要建立档案管理的监督和检查制度,定期对各项档案管理工作进行检查和评估,发现问题及时进行整改和处理。
五、违纪处理对于违反本制度规定的员工,工厂要根据情节轻重进行相应的处理,包括警告、记过、罚款、停职、解雇等。
六、制度的实施与修改本制度自颁布之日起正式实施。
工厂可根据实际情况对本制度进行调整和修改,但必须经过相关部门的审批。
#include <stdio.h>#include <windows.h>#include <time.h>#include <string.h>#define N 100struct employee{int num;char name[10];char sex;int age;char xueli[30];int wage;char addr[30];long int tel;}em[100]; /*定义一个结构体*/void menu();void input();void save(int);void display();void search();void search_num();void search_tel();void add();void del();void modify(); /*定义各函数*/void taxis();void menu() /*菜单函数*/{printf(" 08信工1班陈晓锋\n"); printf("\n");printf("功能菜单\n");printf("1.录入职工信息\n");printf("2.浏览职工信息\n");printf("3.查询职工信息\n");printf("4.添加职工信息\n");printf("5.删除职工信息\n");printf("6.修改职工信息\n");printf("7.按职工号排序\n");printf("8.退出\n");printf("\n");}void main(){menu(); /*调用菜单函数*/int n,flag;char a;do{printf("选择操作步骤:\n");scanf("%d",&n);if(n>=1&&n<=8){flag=1;break;}else{flag=0;printf("输入有误,重新选择!");}}while(flag==0);while(flag==1){switch(n){case 1:printf("输入职工信息\n");printf("\n");input();break;case 2:printf("浏览职工信息\n");printf("\n");display();break;case 3:printf("按职工号查询职工信息\n");printf("\n");search();break;case 4:printf("添加职工信息\n");printf("\n");add();break;case 5:printf("删除职工信息\n");printf("\n");del();break;case 6:printf("修改职工信息\n");printf("\n");modify();break;case 7:printf("按职工号排序\n");printf("\n");taxis();break;case 8:exit(0);break;default :break;}getchar();printf("\n");printf("是否继续进行(y or n):\n");scanf("%c",&a);if(a=='y'){flag=1;system("cls"); /*清屏*/menu(); /*调用菜单函数*/printf("选择操作步骤:\n");scanf("%d",&n);printf("\n");}elseexit(0);}}void input() /*录入函数*/{int i,m;printf("输入需要创建信息的职工人数:\n");scanf("%d",&m);for (i=0;i<m;i++){printf("输入职工号: ");scanf("%d",&em[i].num);printf("输入姓名: ");scanf("%s",em[i].name);getchar();printf("输入性别(f--女m--男): ");scanf("%c",&em[i].sex);printf("输入年龄: ");scanf("%d",&em[i].age);printf("输入学历: ");scanf("%s",em[i].xueli);printf("输入工资: ");scanf("%d",&em[i].wage);printf("输入住址: ");scanf("%s",em[i].addr);printf("输入电话: ");scanf("%d",&em[i].tel);printf("\n");}printf("\n创建完毕!\n");save(m);}void save(int m) /*保存文件函数*/{int i;FILE*fp;if ((fp=fopen("employee_list","wb"))==NULL) /*创建文件并判断是否能打开*/ {printf ("cannot open file\n");exit(0);}for (i=0;i<m;i++) /*将内存中职工的信息输出到磁盘文件中去*/if (fwrite(&em[i],sizeof(struct employee),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() /*导入函数*/{FILE*fp;int i=0;if((fp=fopen("employee_list","rb"))==NULL){printf ("cannot open file\n");exit(0);}else{do{fread(&em[i],sizeof(struct employee),1,fp);i++;}while(feof(fp)==0);}fclose(fp);return(i-1);}void display() /*浏览函数*/{int i;int m=load();printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");for(i=0;i<m;i++) /*m为输入部分的职工人数*/printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i]. xueli,em[i].wage,em[i].addr,em[i].tel);}void search()/*查询函数*/{int t,flag;do{printf("\n按职工号查询按1 ; 按电话查询按2 ; 进入主函数按3\n");scanf("%d",&t);if(t>=1&&t<=3){flag=1;break;}elseprintf("输入有误,重新选择!");}}while(flag==0);while(flag==1){switch(t){case 1:printf("按职工号查询\n");search_num();break;case 2:printf("按电话查询\n");search_tel();break;case 3:main();break;default:break;}}}void search_num(){int num;int i,t;int m=load();printf("输入要查找的职工号:\n");scanf("%d",&num);for(i=0;i<m;i++)if(num==em[i].num){printf("\n已找到此人,其记录为:\n");printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i]. xueli,em[i].wage,em[i].addr,em[i].tel);break;}if(i==m)printf("\n对不起,查无此人\n");printf("\n");printf("返回查询函数按1,继续查询职工号按2\n");scanf("%d",&t);switch(t){case 1:search();break;case 2: break;default:break;}}{long int tel;int i, t;int m=load();printf("输入要查找的电话:\n");scanf("%ld",&tel);for(i=0;i<m;i++)if(tel==em[i].tel){printf("\n已找到此人,其记录为:\n");printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i]. xueli,em[i].wage,em[i].addr,em[i].tel);break;}if(i==m)printf("\n对不起,查无此人\n");printf("\n");printf("返回查询函数按1,继续查询电话按2\n");scanf("%d",&t);switch(t){case 1:search();break;case 2:break;default :break;}}void add()/*添加函数*/{FILE*fp;int n;int count=0;int i;int m=load();printf("\n 原来的职工信息:\n");display(); /* 调用浏览函数*/printf("\n");fp=fopen("emploee_list","a");printf("输入想增加的职工数:\n");scanf("%d",&n);for (i=m;i<(m+n);i++){printf("\n 输入新增加职工的信息:\n");printf("输入职工号: ");scanf("%d",&em[i].num);printf("输入姓名: ");scanf("%s",em[i].name);getchar();printf("输入性别(f--女m--男): ");scanf("%c",&em[i].sex);printf("输入年龄: ");scanf("%d",&em[i].age);printf("输入学历: ");scanf("%s",em[i].xueli);printf("输入工资: ");scanf("%d",&em[i].wage);printf("输入住址: ");scanf("%s",em[i].addr);printf("输入电话: ");scanf("%d",&em[i].tel);printf("\n");count=count+1;printf("已增加的人数:\n");printf("%d\n",count);}printf("\n添加完毕!\n");m=m+count;printf("\n浏览增加后的所有职工信息:\n");printf("\n");save(m);display();fclose(fp);}void del() /*删除函数*/{int m=load();int i,j,n,t,flag;char name[20];printf("\n 原来的职工信息:\n");display(); /* 调用浏览函数*/printf("\n");printf("输入要删除的职工的姓名:\n");scanf("%s",name);for(flag=1,i=0;flag&&i<m;i++){if(strcmp(em[i].name,name)==0){printf("\n已找到此人,原始记录为:\n");printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i]. xueli,em[i].wage,em[i].addr,em[i].tel);printf("\n确实要删除此人信息按1,不删除按0\n");scanf("%d",&n);if(n==1) /*如果删除,则其他的信息都往上移一行*/{for(j=i;j<m-1;j++){strcpy(em[j].name,em[j+1].name);em[j].num=em[j+1].num;em[j].sex=em[j+1].sex;em[j].age=em[j+1].age;strcpy(em[j].xueli,em[j+1].xueli);em[j].wage=em[j+1].wage;strcpy(em[j].addr,em[j+1].addr);em[j].tel=em[j+1].tel;}flag=0;}}}if(!flag)m=m-1;elseprintf("\n对不起,查无此人!\n");printf("\n 浏览删除后的所有职工信息:\n");save(m); /*调用保存函数*/display(); /*调用浏览函数*/printf("\n继续删除按1,不再删除按0\n");scanf("%d",&t);switch(t){case 1:del();break;case 0:break;default :break;}}void modify() /*修改函数*/{int num;char name[10];char sex;int age;char xueli[30];int wage;char addr[30];long int tel;int b,c,i,n,t,flag;int m=load(); /*导入文件内的信息*/printf("\n 原来的职工信息:\n");display(); /* 调用浏览函数*/printf("\n");printf("输入要修改的职工的姓名:\n");scanf("%s",name);for(flag=1,i=0;flag&&i<m;i++){if(strcmp(em[i].name,name)==0){printf("\n已找到此人,原始记录为:\n");printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",em[i].num,em[i].name,em[i].sex,em[i].age,em[i]. xueli,em[i].wage,em[i].addr,em[i].tel);printf("\n确实要修改此人信息按1 ; 不修改按0\n");scanf("%d",&n);if(n==1){printf("\n需要进行修改的选项\n 1.职工号2.姓名3.性别4.年龄5.学历6.工资7.住址8.电话\n");printf("输入想修改的那一项序号:\n");scanf("%d",&c);if(c>8||c<1)printf("\n选择错误,重新选择!\n");}flag=0;}}if(flag==1)printf("\n对不起,查无此人!\n");do{switch(c) /*因为当找到第i个职工时,for语句后i自加了1,所以下面的应该把改后的信息赋值给第i-1个人*/{case 1:printf("职工号改为: ");scanf("%d",&num);em[i-1].num=num;break;case 2:printf("姓名改为: ");scanf("%s",name);strcpy(em[i-1].name,name);break;case 3:printf("性别改为: ");getchar();scanf("%c",&sex);em[i-1].sex=sex;break;case 4:printf("年龄改为: ");scanf("%d",&age);em[i-1].age=age;break;case 5:printf("学历改为: ");scanf("%s",xueli);strcpy(em[i-1].xueli,xueli);break;case 6:printf("工资改为: ");scanf("%d",wage);break;case 7:printf("住址改为: ");scanf("%s",addr);strcpy(em[i-1].addr,addr);break;case 8:printf("电话改为: ");scanf("%ld",&tel);em[i-1].tel=tel;break;}printf("\n");printf("\n是否确定所修改的信息?\n 是按1 ; 不,重新修改按2: \n");scanf("%d",&b);}while(b==2);printf("\n浏览修改后的所有职工信息:\n");printf("\n");save(m);display();printf("\n继续修改按1,不再修改按0\n");scanf("%d",&t);switch(t){case 1:modify();break;case 0:break;default :break;}}void taxis(){employee w;employee *p;int i=0;int m,n;employee w1;FILE*fp;if((fp=fopen("employee_list","rb"))==NULL)printf ("cannot open file\n");else{fread(&w,sizeof(employee),1,fp);while(!(feof(fp))){i++;fread(&w,sizeof(employee),1,fp);}}rewind(fp);p=(employee *)calloc(i,sizeof(employee));for(m=0;m<i;m++){fread(&p[m],sizeof(employee),1,fp);}for(m=0;m<i-1;m++)for(n=0;n<i-m-1;n++)if(p[n].num>p[n+1].num){w1=p[n];p[n]=p[n+1];p[n+1]=w1;}printf("\n职工号\t姓名\t性别\t年龄\t学历\t工资\t住址\t电话\n");for(m=0;m<i;m++){printf("\n%d\t%s\t%c\t%d\t%s\t%d\t%s\t%ld\n",p[m].num,p[m].name,p[m].sex,p[m].age,p[ m].xueli,p[m].wage,p[m].addr,p[m].tel);}rewind(stdin);for(m=0;m<i;m++){fread(&p[m],sizeof(employee),1,fp);}free(p);fclose(fp);}。