毕业设计(论文)公司员工管理系统.doc

上传人:文库蛋蛋多 文档编号:3790978 上传时间:2023-03-22 格式:DOC 页数:32 大小:264.50KB
返回 下载 相关 举报
毕业设计(论文)公司员工管理系统.doc_第1页
第1页 / 共32页
毕业设计(论文)公司员工管理系统.doc_第2页
第2页 / 共32页
毕业设计(论文)公司员工管理系统.doc_第3页
第3页 / 共32页
毕业设计(论文)公司员工管理系统.doc_第4页
第4页 / 共32页
毕业设计(论文)公司员工管理系统.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《毕业设计(论文)公司员工管理系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)公司员工管理系统.doc(32页珍藏版)》请在三一办公上搜索。

1、 软件学院专 科 生 毕 业 实 践 报 告 题 目: 公司员工管理系统 专 业: 网络系统管理 年(班)级: 08 年 3 班 学 号: 姓 名: 指导教师: 完成日期: 2011 年 5 月 10 日 目 录摘要1第一章 系统分析21.1项目背景及意义21.2系统可行性分析21.2.1经费可行性31.2.2技术可行性31.2.3信息可行性31.2.4法律可行性31.3本系统研究的目标与内容3第二章 系统设计42.1界面设计原则42.1.1界面的简化42.1.2界面元素的联动42.1.3多个操作方式42.1.4界面的美学要求42.2系统界面设计52.3模块及接口52.3.1显示模块52.3.

2、2操作模块5第三章 系统概述63.1 系统总体概述63.2系统功能需求63.2.1工资基本信息模块63.2.2员工简历信息模块63.3系统总体性能需求73.4系统运行环境需求7第四章 总体设计84.1系统设计目标84.2系统功能模块84.3系统用例图9第五章 数据库设计105.1数据库响应时间的特性105.2数据库的安全性要求105.3 模块框架表结构设计105.3.1工资基本信息表设计105.3.2工资基本信息查询表设计115.3.3员工简历信息表设计115.3.4员工简历信息查询表设计115.4数据库表结构设计11第六章 系统实现136.1工资基本信息框架设计与布局136.1.1工资基本信

3、息对话框设计136.1.2工资基本信息添加部分代码136.1.3工资基本信息删除部分代码146.1.4工资基本信息修改部分代码156.2工资信息查询对话框166.2.1工资信息查询部分代码176.3员工简历信息框架设计与布局196.3.1员工简历信息添加部分代码196.3.2员工简历信息删除部分代码206.3.3员工简历信息修改部分代码216.4员工信息查询对话框布局226.4.1员工信息查询部分代码23第七章 系统测试与分析257.1系统测试257.1.1系统测试的目的257.1.2系统测试的人员257.1.3测试的方法257.1.4系统测试的途径25第八章 设计总结27参考文献(Refer

4、ences)28致谢29公司员工管理系统专业:网络系统管理 学号: 姓名: 指导老师: 摘要随着科学技术的快速发展,计算机已进入了人们的生活之中。社会的各行各业之中,都使用了计算机进行一些相关的管理。而且计算机在人们的生活当中发挥的作用也越来越大,地位也越来越重要;本文所设计的公司员工管理系统,包含两个模块:工资基本信息模块、员工简历信息模块。每个模块都包含着添加、删除、修改、查询功能。然而设计这两个模块时,是将其功能命令集成在工资信息、员工简历信息中。这样可以让其操作者感觉不是那么笼统,看起来比较简洁。本系统的数据库则是使用Microsoft Office Access,使用Microsof

5、t Office Access比较简便,不像使用SQL Server 2000那么繁琐。系统开发的操作系统则是Windows XP。公司员工管理系统主要是对员工工资、信息的管理。使用本系统可以让公司的管理层人员,更好地管理员工,避免了以前使用人工管理的繁琐以及麻烦,同时也给公司各方面都带来了便利。【关键词】员工管理,Microsoft Office Access,Windows XP第一章 系统分析1.1项目背景及意义 在这信息快速发展的时代,网络在人们的生活当中,也显的尤为重要。计算机也越来越成为人们生活中的一部分,计算机的使用也越来越普遍化。许多行业都在使用计算机来进行日常管理,同时计算机

6、也解决了以往人工管理的繁琐,避免了一些人工管理的失误,提高了工作的进度。计算机在各行各业发挥的作用也越来越大,人们对计算机的重视也越来越高;对于一个公司而言,面对更多的问题,还是员工的管理。因为随着公司的不断壮大,员工数量也越来越多,在管理方面也越来越重。往往会因员工的管理带来一些小问题,使用计算机来进行员工管理,可以更加快捷、方便、简单。能够很好地使用公司员工管理系统,不仅可以减少许多不必要的麻烦,而且还可以提高公司在日常事务中的进度。在公司管理的行业当中,员工管理也是在不断地实行,不断地完善。本系统所设计的是公司员工管理系统,是为了管理好公司员工而设计的。1.2系统可行性分析 在计算机还未

7、普及的时代,公司对员工所采取的还是人工管理,进行的还是手工抄写。在使用传统的人工管理时,不但增加了所花费的时间而且还可能在准确率上不是很高,同时也会给公司的进度带来了一定的影响。随着计算机越来越普遍化,公司也慢慢地接受了计算机的使用,并且使用计算机来进行一些事务的管理。员工管理在使用计算机时,就显的尤为重要。同时也体现出计算机的优点:方便、快捷、准确。本系统所开发的公司员工管理系统,就能够解决人工管理存在的问题。 从项目设计需求说明到最终审核,开发人员都是按照所分配到的任务,在开发小组组长安排好的时间表,进行项目的开发。整个项目的开发阶段都是进行了很好的时间安排,应该能在规定的时间内完成项目的

8、开发。项目开发期限为一个月,如果在开发阶段有某个小组成员因特殊原因或者重要的事情,延误开发的进度。其他小组成员应当提供相应的帮助,另有辅导老师进行指导与督促,使其项目能够准时地完成。1.2.1经费可行性 来源:本系统从设计到开发的过程中,80%的经费来自公司,而剩余的20%暂时先由开发小组成员自己所出。到将本系统全部完成之后,公司将所剩余的20%经费归返给开发小组成员。 系统本身分析:从项目的作用、开发小组的成员、开发的期限,再加上软硬件的配置,完成本项目所需要的成本还是相对较少的。完成了本项目之后,有利于公司更好地管理员工,同时也将提高公司在日常事务的进度。经费:15万元开发周期:1个月1.

9、2.2技术可行性本系统是采用Visual C+ 6.0作为开发工具,Microsoft Office Access作为数据库进行开发的。Visual C+ 6.0软件,是大家较为熟知的一套开发软件,同时也有助于开发小组成员减少了一些问题。然而Microsoft Office Access作为数据库也没有SQL Server 2000那么麻烦,都是也不像SQL Server 2000那样使用太多的语句,进行相关的操作。1.2.3信息可行性 本小组可以利用的信息和资源主要来自这几个方面:一、一些开发小组已发布的开发手册。二、网上搜索相类似的开发手册。三、一些工程师总结出来的开发手册。1.2.4法律

10、可行性本系统从设计到开发,都是本小组成员自行开发的。必会产生因某些类似于别的公司所开发的系统,而产生法律方面的问题。在开发本系统的过程中,小组成员遵循着法律的规定。符合国家各项法律、政策的规定。 1.3本系统研究的目标与内容 本系统的研究目标是在公司员工管理系统中生成工资基本信息、员工简历信息两大模块;本系统的两大模块的内容都包含有添加、删除、修改、查询功能第二章 系统设计本系统采用Visual c+6.0在Windows Xp环境中进行开发,整个系统是一个单文档应用程序框架,通过ODBC来连接Microsoft Office Access数据库。其界面和各模板接口分述如下。2.1界面设计原则

11、界面设计时除了包括对菜单、工具栏、状态栏、应用程序图标以及“关于”对话框等界面元素进行构思外,还应考虑下列4个方面。2.1.1界面的简化 简洁而又明瞭的界面,让人看起来有种一目了然的感觉。避免了冗余的界面给人带来厌烦之感。2.1.2界面元素的联动 菜单中的一些命令和工具栏的按钮功能是相同的,当鼠标指针移至这些命令按钮或菜单项时,在状态栏上会有信息提示。2.1.3多个操作方式 本系统在操作时,不是单一的操作方式,而是有几种操作方式。在操作的过程中,使用者根据自己所需,选取一种操作方式。2.1.4界面的美学要求 在设计界面时,不光是考虑其功能的完善,而且在界面的美学方面也要进行适当的设计,尽量在美

12、学方面能够让使用者接受。2.2系统界面设计如图2-1所示图2-1 系统界面设计2.3模块及接口本系统可以分为2个模块:显示模块、操作模块。2.3.1显示模块显示模块包括树视图显示模块和列表视图显示模块1、树视图显示模块树视图显示模块根据工资基本信息表(wage)、员工简历信息表(resume)显示各自的层次结构2.3.2操作模块1、工资基本信息对话框2、员工简历信息对话框3、工资信息查询对话框4、员工信息查询对话框第三章 系统概述3.1 系统总体概述 公司员工管理系统的主要功能是对员工工资、员工简历两大块进行管理。包含了添加、删除、修改、查询的功能,能够迅速、准确地对员工进行相关的操作。如图3

13、-1所示查询修改删除添加查询修改删除添加员工简历信息工资信息登录界面图3-1 系统总体界面图3.2系统功能需求系统功能主要包括两大模块:工资基本信息模块、员工简历信息模块。3.2.1工资基本信息模块工资基本信息模块包括添加、删除、修改、查询功能;工资基本信息模块界面包括员工编号、性别、职务、部门、基本工资、浮动工资、年度。本模块的添加、删除、修改、查询命令则是集成在“工资信息”命令中。通过使用集成方法,可以看到最后生成的界面更简练,同时也避免了界面的冗余。通过点击“工资信息”命令可以选择添加、删除、修改、查询中的一项进行工资基本信息的相关操作。同时当弹出工资基本信息界面时,我们也可以更清楚地了

14、解员工工资的信息。3.2.2员工简历信息模块员工简历信息模块也是包括添加、删除、修改、查询功能;员工简历信息界面包括姓名、年龄、学历、民族、籍贯。通过点击最后生成界面中的“员工简历信息”的命令,可以看到添加、修改、删除、查询命令选项。我们可以选择其中的一项,进行员工简历信息的相关操作,也可以了解员工信息以及对员工信息进行相关的操作。3.3系统总体性能需求1、系统所使用的操作系统是Windows XP。2、信息操作功能的响应时间在3秒以内。3、查询功能的响应时间则在5秒内。4、系统的操作界面灵活、易懂。5、系统故障停机时间全年少于5小时。6、系统对数据的备份,采用双备份的方法。7、使用防火墙技术

15、来保证系统在使用、数据方面的安全性。3.4系统运行环境需求硬件要求:处理器型号采用的是Inter Core i7 920 内存容量采用的是2G 硬盘容量采用的是160G数据库环境:Microsoft Office Access服务器环境:Windows XP第四章 总体设计4.1系统设计目标 传统的员工管理是使用人工管理。在使用人工管理中,使用手抄的形式。在进行员工管理中会产生一些失误,可能会给公司带来一些影响。设计本系统就是为了更好地解决人工管理过程中出现的问题和不足。使用公司员工管理系统会给公司带来便利、快捷、准确,同时也会提高公司的进度。4.2系统功能模块 工资基本信息模块 员工编号 性

16、别 职务 部门 基本工资 浮动工资 年度 员工简历信息模块 姓名 年龄 学历 民族 籍贯4.3系统用例图如图4-1所示 员工信息管理员工工资管理数据库维护用户系统打印数据库备份服务器图4-1 系统用例图第五章 数据库设计5.1数据库响应时间的特性响应时间:本系统主网是采用2MB的宽带,响应时间是5-10秒。更新处理时间:本系统使用的Intranet网络,更新时间是3-5秒。5.2数据库的安全性要求1、安全系数较高,能够防止黑客的攻击。2、本系统采用专用的Intranet网络。能够有效地防止数据的丢失。3、采用远程备份,能够保证在数据丢失的时候,迅速获取原来的数据。4、数据承载的能力较大,在不超

17、过数据容量时,不会影响速度。5、数据遵循完整性、实际性。6、数据的精度精确到百分位,能够更好地保证数据的准确性。5.3 模块框架表结构设计模块框架表结构设计包含着框架中控件设计,控件设计有控件名称、ID号、标题、其他属性。5.3.1工资基本信息表设计表1 工资基本信息添加的控件ID号标 题其 他 属 性编辑框(员工编号)IDC_EDIT_STAFFNO默认编辑框(性别)IDC_EDIT_SEX默认组合框(职务)IDC_COMBO_POST默认组合框(部门)IDC_COMBO_SECTOR默认编辑框(基本工资)IDC_EDIT_BASICWAGES默认编辑框(浮动工资)IDC_EDIT_FLOA

18、TINGWAGES默认编辑框(年度)IDC_EDIT_ANNUAL默认5.3.2工资基本信息查询表设计表2工资信息查询添加的控件ID号标题其 他 属 性静态文本控件(选择)IDC_STATIC_SEEK选择员工编号:默认静态文本控件(学期)IDC_STATIC_ANNUAL年度:默认组合框(选择)IDC_COMBO1默认组合框(学期)IDC_COMBO2默认5.3.3员工简历信息表设计表3 员工简历信息添加的控件ID 号标题其他属性编辑框(姓名)IDC_EDIT_NAME默认编辑框(年龄)IDC_EDIT_AGE默认编辑框(学历)IDC_EDIT_EDUCATION默认编辑框(民族)IDC_E

19、DIT_NATIONAL默认 编辑框(籍贯)IDC_EDIT_NATIVE默认5.3.4员工简历信息查询表设计表4 员工信息查询添加的控件ID 号标题其他属性静态文本控件(选择)IDC_STATIC_SEEK1选择姓名:默认静态文本控件(学历)IDC_STATIC_EDUCATION学历:默认组合框(选择)IDC_COMBO1默认组合框(学期)IDC_COMBO2默认5.4数据库表结构设计 在设计数据表结构时,都分别对字段名称进行了说明,方便使用者能够更加地明白字段的含义。在设计字段时,也是采用相应的英文名称。表5 wage 表6 resume 第六章 系统实现6.1工资基本信息框架设计与布局

20、工资基本信息框架设计是将其功能设计在一个框架中,然后通过命令选项,进行功能的实现。6.1.1工资基本信息对话框设计该框架是实现工资基本信息的添加、删除、修改、查询命令,然而在这框架中可以直接实现工资基本信息的添加,删除、修改、查询命令是集成在工资信息命令中。当弹出这个框架时,在工资信息命令中选择要操作的功能。如图6-1所示图6-1 工资基本信息对话框6.1.2工资基本信息添加部分代码CWageDlg dlg;if (dlg.DoModal()!= IDOK) return;CWageSet sSet;sSet.Open();sSet.AddNew();sSet.m_staffno= dlg.m

21、_strStaffno;sSet.m_sex = dlg.m_strSex;sSet.m_post= dlg.m_strPost;sSet.m_sector= dlg.m_strSector; sSet.m_basicwages= dlg.m_strBasicwages; sSet.m_floatingwages= dlg.m_strFloatingwages; sSet.m_annual= dlg.m_strAnnual;sSet.Update();sSet.Requery();sSet.Close();MessageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_ICON

22、INFORMATION);m_strFilter.Format(staffno=%s, dlg.m_strStaffno);DispWageInfo( m_strFilter );6.1.3工资基本信息删除部分代码int nItem = GetListCtrlCurSel();if (nItem0) return;CListCtrl& m_ListCtrl = GetListCtrl();CString strItem, str;strItem = m_ListCtrl.GetItemText( nItem, 0 );str.Format(你确实要删除 %s 列表项(记录)吗?, strIte

23、m );if ( IDOK != MessageBox(str, 删除确认, MB_ICONQUESTION | MB_OKCANCEL ) return;CString strStaffno= m_ListCtrl.GetItemText( nItem, 0 );CString strSex = m_ListCtrl.GetItemText( nItem, 1 );CWageSet infoSet;infoSet.m_strFilter.Format(staffno=%s AND sex=%s, strStaffno, strSex);infoSet.Open();if (!infoSet.

24、IsEOF() CRecordsetStatus status;infoSet.GetStatus(status);infoSet.Delete();if (status.m_lCurrentRecord=0)infoSet.MoveNext();elseinfoSet.MoveFirst();if (infoSet.IsOpen() infoSet.Close();MessageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_ICONINFORMATION);DispWageInfo( m_strFilter );6.1.4工资基本信息修改部分代码int nItem = G

25、etListCtrlCurSel();if (nItem0) return;CListCtrl& m_ListCtrl = GetListCtrl();CString strStaffno = m_ListCtrl.GetItemText( nItem, 0 );CString strSex = m_ListCtrl.GetItemText( nItem, 1 );CWageSet sSet;sSet.m_strFilter.Format(staffno=%s AND sex=%s, strStaffno, strSex);sSet.Open();CWageDlg dlg;dlg.m_strS

26、taffno= sSet.m_staffno;dlg.m_strSex= sSet.m_sex;dlg.m_strPost= sSet.m_post;dlg.m_strSector= sSet.m_sector;dlg.m_strBasicwages= sSet.m_basicwages; dlg.m_strFloatingwages= sSet.m_floatingwages; dlg.m_strAnnual= sSet.m_annual;if (IDOK != dlg.DoModal()if (sSet.IsOpen() sSet.Close();return;sSet.Edit();sS

27、et.m_staffno= dlg.m_strStaffno;sSet.Update();sSet.Requery();if (sSet.IsOpen() sSet.Close();MessageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_ICONINFORMATION);m_strFilter.Format(staffno=%s, dlg.m_strStaffno);DispWageInfo( m_strFilter );6.2工资信息查询对话框该框架主要实现工资信息的查询,可以选择员工编号或年度来进行工资信息的查询。也可以直接在工资信息命令中选择查询,进行查询的功能。

28、如图6-2所示图6-2 工资信息查询对话框6.2.1工资信息查询部分代码CSeekDlg dlg;dlg.m_strTitle = 选择员工编号:;CString strTemp;CListCtrl& m_ListCtrl = GetListCtrl();int nItemCount = m_ListCtrl.GetItemCount();dlg.m_strItemArray.RemoveAll();for ( int nItem=0; nItemnItemCount; nItem+)strTemp = m_ListCtrl.GetItemText(nItem, 0);dlg.m_strIte

29、mArray.Add( strTemp );if (IDOK != dlg.DoModal() return;CString str;str.Format(staffno= %s, dlg.m_strSeek);DispWageAndCourseInfo( str, dlg.m_nAnnual);if (!m_strTitle.IsEmpty()UpdateData( FALSE );m_comboSeek.ResetContent();for (int i=0; im_strItemArray.GetSize(); i+)intnIndex = m_comboSeek.FindString(

30、 0, m_strItemArrayi );if (nIndex = CB_ERR)m_comboSeek.AddString( m_strItemArrayi );m_comboSeek.SetCurSel(0);if (m_bAnnual) m_comboAnnual.ResetContent();CString strAnnual;for (i=0; iEnableWindow( FALSE );GetDlgItem(IDC_COMBO2)-EnableWindow( FALSE );6.3员工简历信息框架设计与布局该框架是实现员工简历信息的添加、删除、修改、查询功能,四个功能也是集成在

31、员工简历信息命令中。在这个框架中,可以直接实现员工简历信息的添加。其它功能则可以通过选择员工简历信息命令进行操作。如图6-3 所示图6-3员工简历信息6.3.1员工简历信息添加部分代码CResumeDlg dlg;if (dlg.DoModal()!= IDOK) return;CResumeSet sSet;sSet.Open();sSet.AddNew();sSet.m_name= dlg.m_strName;sSet.m_age = dlg.m_strAge;sSet.m_education= dlg.m_strEducation;sSet.m_national= dlg.m_strNa

32、tional;sSet.m_native= dlg.m_strNative;sSet.Update();sSet.Requery();sSet.Close();MessageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_ICONINFORMATION);m_strFilter.Format(name=%s, dlg.m_strName);DispResumeInfo( m_strFilter );6.3.2员工简历信息删除部分代码int nItem = GetListCtrlCurSel();if (nItem0) return;CListCtrl& m_ListCtrl

33、= GetListCtrl();CString strItem, str;strItem = m_ListCtrl.GetItemText( nItem, 0 );str.Format(你确实要删除 %s 列表项(记录)吗?, strItem );if ( IDOK != MessageBox(str, 删除确认, MB_ICONQUESTION | MB_OKCANCEL ) return;CString strName = m_ListCtrl.GetItemText( nItem, 0 );CString strAge = m_ListCtrl.GetItemText( nItem, 1

34、 );CResumeSet infoSet;infoSet.m_strFilter.Format(name=%s AND age=%s, strName, strAge);infoSet.Open();if (!infoSet.IsEOF() CRecordsetStatus status;infoSet.GetStatus(status);infoSet.Delete();if (status.m_lCurrentRecord=0)infoSet.MoveNext();elseinfoSet.MoveFirst();if (infoSet.IsOpen() infoSet.Close();M

35、essageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_ICONINFORMATION);DispResumeInfo( m_strFilter );6.3.3员工简历信息修改部分代码int nItem = GetListCtrlCurSel();if (nItem0) return;CListCtrl& m_ListCtrl = GetListCtrl();CString strName = m_ListCtrl.GetItemText( nItem, 0 );CString strAge = m_ListCtrl.GetItemText( nItem, 1 );CRe

36、sumeSet sSet;sSet.m_strFilter.Format(name=%s AND age=%s, strName, strAge);sSet.Open();CResumeDlg dlg;dlg.m_strName= sSet.m_name;/dlg.m_strAge= sSet.m_age;dlg.m_strEducation= sSet.m_education;/dlg.m_strNational= sSet.m_national;dlg.m_strNative= sSet.m_native;if (IDOK != dlg.DoModal()if (sSet.IsOpen()

37、 sSet.Close();return;sSet.Edit();sSet.m_name= dlg.m_strName;sSet.m_age= dlg.m_strAge;sSet.m_education= dlg.m_strEducation; sSet.m_national= dlg.m_strNational; sSet.m_native= dlg.m_strNative;sSet.Update();sSet.Requery();if (sSet.IsOpen() sSet.Close();/ 更新列表视图MessageBox(稍等几秒钟后,单击确定按钮!,特别提示,MB_OK|MB_IC

38、ONINFORMATION);m_strFilter.Format(name=%s, dlg.m_strName);DispResumeInfo( m_strFilter );6.4员工信息查询对话框布局该框架主要实现员工信息查询,可以选择姓名、学历进行查询功能。也可以通过选择员工简历信息命令,进行员工信息查询功能。如图6-4 所示图6-4 员工信息查询6.4.1员工信息查询部分代码if (!m_strTitle1.IsEmpty()UpdateData( FALSE );m_comboSeek1.ResetContent();for (int i=0; im_strItemArray.Get

39、Size(); i+)intnIndex = m_comboSeek1.FindString( 0, m_strItemArrayi );if (nIndex = CB_ERR)m_comboSeek1.AddString( m_strItemArrayi );m_comboSeek1.SetCurSel(0);if (m_bEducation) m_comboEducation.ResetContent();CString strEducation;for (i=0; iEnableWindow( FALSE );GetDlgItem(IDC_COMBO2)-EnableWindow( FA

40、LSE );CSeek1Dlg dlg;dlg.m_strTitle1= 选择姓名:;CString strTemp;CListCtrl& m_ListCtrl = GetListCtrl();int nItemCount = m_ListCtrl.GetItemCount();dlg.m_strItemArray.RemoveAll();for ( int nItem=0; nItemnItemCount; nItem+)strTemp = m_ListCtrl.GetItemText(nItem, 0);dlg.m_strItemArray.Add( strTemp );if (IDOK != dlg.DoModal() return;CString str;str.Format(name = %s, dlg.m_strSeek1);DispResumeAndCourseInfo( str, dlg.m_nEducation);第七章 系统测试与分析7.1系统测试 系统测试是在更大范围内进行的测试。除被测程序外,系统还可能包括硬件和原来就有的其他软件。7.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号