毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc

上传人:文库蛋蛋多 文档编号:3975225 上传时间:2023-03-30 格式:DOC 页数:49 大小:2.26MB
返回 下载 相关 举报
毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc_第1页
第1页 / 共49页
毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc_第2页
第2页 / 共49页
毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc_第3页
第3页 / 共49页
毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc_第4页
第4页 / 共49页
毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计基于MVC模式的人力资源管理系统的设计与实现.doc(49页珍藏版)》请在三一办公上搜索。

1、 哈尔滨商业大学毕业设计(论文)基于MVC模式的人力资源管理系统的设计与实现学 生 姓 名 彭 静 指 导 教 师 刘新禹 专 业 计算机科学与技术 学 院 计算机与信息工程学院 2009年 6月15 日Graduation Project (Thesis)Harbin University of CommerceDesign and Implementation of Human Resources Management System Based on MVC ModelStudentPeng Jing SupervisorLiu Xinyu SpecialtyComputer Scienc

2、e and Technology SchoolCompute and Information Engineering 2009-06-15摘 要在MVC架构基础上构建人力资源管理系统。主要研究了人力资源管理系统的设计和实现,采用浏览器/服务器(B/S)模式,开发工具采用MyEclips5.5,数据库采用Oracle 9i。高效地实现了人力资源管理系统的各项功能,具有对人事档案管理、人事调配管理、教育培训和系统管理的功能。首先研究人力资源管理系统的开发的背景和需求分析,接着对系统进行总体设计,数据库设计,然后进行模块划分,分模块完成详细设计的内容,最后介绍系统的测试和运行。关键词:人力资源管理;

3、MVC;JSP;Oracle 9iAbstractThe human resources management system is built on the MVC framework. Major design and implementation of human resources management system, were using browser / server (B / S) model, MyEclips5.5 as development tools, and Oracle 9i as database. Efficiently achieve the manageme

4、nt of human resources and various functions of the system with the management of personnel files, personnel deployment management, education and training, and system management functions. First of all, human resources management system for the development of the background and requirement analysis,

5、then is the system design, database design, and then divided into modules, sub-module to complete the detailed design of the content, and finally introduced the system of testing and running.Key Words:Human Resources Management ; MVC; JSP;Oracle 9i目 录摘要IAbstractII1绪 论11.1项目背景11.2项目内容11.3系统的开发意义21.4项

6、目设计原则22需求分析32.1 功能需求32.2软硬件环境32.2.1硬件环境32.2.2软件环境43系统概要设计53.1系统功能流程及说明53.1.1系统功能流程图53.1.2系统功能流程说明63.2数据库概要设计64系统详细设计104.1功能模块划分104.2功能子模块设计104.2.1教育培训管理104.2.2系统管理114.3数据库表的设计125系统实现175.1教育培训管理模块175.2系统管理模块246系统测试286.1测试的定义及目的286.2测试步骤287系统运行317.1数据库安装317.2系统部署327.3登录系统33结 论35参考文献36致谢37附录38 绪 论1.1 项

7、目背景所谓人力资源管理,就是指运用现代化的科学方法,对与物力相结合的人力进行合理的培训、组织和调配,使人力、物力经常保持最佳比例,同时对人的思想、心理和行为进行恰当的诱导、控制和协调,充分发挥人的主观能动性,使人尽其才,事得其人,人事相宜,以实现组织目标。随着“知识经济”时代的到来,人力资源管理因与人的密切联系使其重要性日显突出。应该看到,企业管理已经从强调对物的管理转向对人的管理,这是竞争加剧的结果。无论是管理领域的扩大,还是现有管理的提升,人力资源是基础、是前提、是根本1。人力资源管理系统是一个企业单位不可缺少的部分,是适应现代企业制度,推动企业人力资源管理走向科学化、规范化、自动化的必要

8、条件。人力资源管理系统应该能够为用户提供充足的信息和快捷的查询手段,以帮助企业领导了解企业现有的人力资源状况。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在许多缺点,如:效率低、安全性差、时间一长就会产生大量的文件和数据积压,这对于查找、更新和维护都带来了不少的困难2。因此,为了加快企业的信息化步伐,提高企业的管理水平以在激烈的社会竞争中立于不败之地,建设和完善人力资源管理系统已经变得十分必要和迫切。EHR,是指人力资源管理电子信息化,提高效率是EHR的根本目的,人力资源管理的E-HR化,可以使我们在转变管理观念的同时,减少平常事务性作业对于人力资源管理策略上的羁绊,真正使人力

9、资源管理成为企业的战略伙伴,成为管理决策支持者,为决策提供解决方案。 1.2 项目内容项目分为四大模块:(1)人事档案管理:包括人员基本信息,档案,履历,合同,奖惩信息和人员结构等;(2)人事调配管理:包括员工调配,新增员工,支撑评定人员离退和工资等级等;(3)教育培训管理:包括培训类别,培训记录,培训人员,培训成绩和培训证书等;(4)系统管理:包括用户信息管理,角色管理,职位管理和部门管理等。1.3 系统的开发意义全球范围内的企业内部组织正在发生巨变,未来企业成功的关键的依靠企业人力资源,人才之争已经成为市场竞争中的核心内容之一,以人为本成为企业立足和发展的根本。有效力管理企业的人力资源,为

10、企业提供强有力的储备力量,使之成为企业发展的主动力。通过人力资源的有效管理,掌握最新的、准确的企业人力资源信息,并对其进行复杂的统计与分析,从而充分发挥每个员工的潜能,为企业创造更大的价值。网络化的今天,网络人力资源管理系统,使新的人力资源协作管理模式成为可能。通过网络管理系统,专门的人力资源管理人员可以提高自身的工作效率,作好人力资源管理的协调工作,提高人力资源利用率;通过网络管理系统,员工可以直接管理自己的技能,有效地发现和挖掘自身的潜能,及时与自己的上级、下属、同事进行的沟通与交流,同心协作,积极为企业的发展与决策贡献力量。通过网络人力资源管理系统对企业人力资源进行管理,使企业人力资源管

11、理适应时代的发展要求,大大提高了企业的核心竞争力。当人类正在向知识经济新时代迈进的时候,信息网络化的发展步伐也越加迅猛,随着中国加入WTO,中国经济不可避免地要面对经济全球化的挑战,巨大的竞争压力使得中国的企业将无法去慢慢解决员工的意识与素质问题,我们的企业在经营管理能力上急需的是一种跨越式提升,它要求我们必须以全新的视角来重新认识人力资源在企业中的作用。而解决这一问题的最佳途径是建立现代企业的人力资源管理系统,它的实施将会推动企业的全面人力资源管理3。1.4 项目设计原则(1)实用性原则 充分考虑到在人力资源管理中可能遇到的种种问题,尽量全面的做好需求分析,以减少日后更新软件的次数。(2)经

12、济性原则 建立适合企业自身需求的网络平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活可以满足需求,节省网站建设成本,并确保其较好的拓展性和开放性;同时网站具有基于WEB界面的管理后台,能够自主的对网站中大部分内容作更新、修改操作,节省了企业网站的运营成本,提高了信息更新、传播效率。(3)扩充性原则 网站的整体规划及框架设计是具可扩充性的,前台页面的设计能保证网站在增加栏目后不会破坏网站的整体结构。后台数据库的设计具有高度的扩充性,能够根据需要对栏目、类别的增、删、修改。2 需求分析2.1 功能需求(1)人员档案管理主要目的建立符合公司组织机构的组织模型和完整人事档案库,记录一定范围内的

13、职工和雇工的档案信息,并且这些信息可以和绩效考核的成绩关联,方便存档和查询。系统重点围绕数据维护、查询和分析便捷的要求,并通过关键业务节点的业务流程化,提高 HR业务的处理效率。 (2)人事调配管理维护人事调动相关信息。针对人事调动(调入、调出)、内部调动、晋升、降职等人事变动业务的处理和查询。查询员工职称证书信息。对员工职称信息按照取得时间排序,可可以按员工姓名、编号等信息查找员工。可以根据职工定员、缺员信息及员工职称信息,对员工岗位进行调配。根据员工年度职称评定信息和年度考核结果,确定员工职称信息是否有效,只有有效的职称才可以被聘任,同一时间只有一种职称被聘任。对员工人事调动信息按照时间排

14、序,可以对每个员工人事调配信息进行增加、删除、编辑操作。可以按员工姓名、编号等信息查找员工。 (3)教育培训管理满足公司对员工岗前、在职培训及学历(学位)教育等多种形式的培训模式,通过信息平台进行教育培训档案的建立、修改维护;培训信息发布等工作。(4)系统管理主要实现系统管理员进行后台管理的模块,包括组织管理、安全控制4。2.2 软硬件环境2.2.1 硬件环境系统硬件配置需求,如表2-1。表2-1 硬件需求服务器最低配置推荐配置应用和数据库服务器1 CPU:P4 2.0G1 CPU:P4 2.8G2 DISK: 10G2 DISK: 20G3 DATABASE3 ORACLE2.2.2 软件环

15、境系统软件配置需求,如表2-2。表 2-2 软件需求名称版本语种操作系统Windows Server/XPXp简体中文数据库平台Oracle9i简体中文应用平台Tomcat6.0简体中文客户端软件MS IE6.0简体中文Java开发工具Eclipse3.2+Myeclipse5.5使用技术Servlet,JSP,JDBC 3 系统概要设计3.1 系统功能流程及说明3.1.1 系统功能流程图系统功能流程如图3-1:开始结束人员调配教育培训系统管理退出档案管理主菜单公告口令正确输入用户名口令首页图3-1 系统功能流程图3.1.2 系统功能流程说明进入系统,以正确的用户名和密码登陆后,不同的角色有不

16、同的权限,管理员拥有所有权限,进入档案管理,可以对人员信息、人员档案、人员合同、人员结构进行查询,新增和查询奖惩记录及员工履历。进入人员调配,可以对聘用人员进行新增,查询和批量续聘,查询和调动人员,进行职称评定,离退员工和查询离退列表,可以设置员工等级和查看员工工资列表。进入教育培训管理,可以对培训类别、培训记录、培训人员、培训成绩、培训证书进行增删改查。进入系统管理,在用户管理中,可以修改密码和查询用户,在职位管理中,可以增加查询职位,在部门管理中,可以增加部门、查询部门、管理部门组织结构及部门合并,在角色管理中,可以增加角色和角色查询。一系列需要操作结束后,退出系统。3.2 数据库概要设计

17、根据人事调配业务流程描述和在职人员教育培训业务流程描述,我们可以从中抽象出几个数据集合,如:公司员工(staff),缺职位的部门(department),调配人事的人员即人力资源部,在调配过程中,首先从公司职员里面挑选是否有符合的人员,如果有则从其他部门调入该部门,因此该公司有个(组织机构),如果没有符合人员则发布招聘公告。某员工被录用时,则首先由系统管理员给改员工创建一个账户(user),并录入该员工的信息。员工登录系统后,员工只能查看、修改自己的基本信息,所以要制定权限管理,该系统角色(role)分为普通用户、部门经理、系统管理员。考虑到特殊情况的发生,该角色可以进行编辑。创建新的角色,分

18、配角色的权限(module)等5。数据库表名汇总,如表3-1。表3-1数据库表明汇总数据库表名中文名文字说明staff人员保存人员的基本信息file档案保存人员档案的相关信息contract合同保存合同的相关信息record履历保存履历的基本信息JiangChen奖惩保存奖惩的基本信息Transfer人事调动保存人事调动的相关信息ProTitle职称评定保存职称评定的相关信息续表数据库表名中文名文字说明trainCategory培训类别保存培训类别基本信息trainRecord培训记录保存培训记录相关信息trainStaff培训人员保存培训人员和成绩相关信息Certificate培训证书保存培

19、训证书的基本信息User用户信息保存用户相关信息 Role_User角色_用户信息保存角色与用户关联的相关信息 Role角色信息保存角色相关信息Role_Module角色_ 模块信息保存角色与模块关联的相关信息Module 模块信息保存模块的基本信息将需求分析,系统设计中对信息的描述进一步分析并加以总计,抽象出数据集合(数据库表)6。对数据集合做进一步分析,确定集合之间的关系并最终形成数据库物理模型,以便开发人员建立物理数据库。在数据库中表和表之间会有关联,有一对一的关系,一对多的关系,多对一的关系,多对多的关系7。这些关系在数据库设计之初就应该分析清楚,本系统的逻辑ER图如图3-1,各表之间

20、的外键关联说明如表3-2。图3-1逻辑ER图表3-2 外键关联说明表描述表名外键引用表外键字段名关联表表关系说明档案人员职员ID是一对一一个人员可以有一个档案合同信息人员人员ID是一对多一个人可以有多份合同履历信息人员人员ID是一对一一个人员只有一份履历奖惩信息人员人员ID是一对多一个人可以有多个奖惩状态续表描述表名外键引用表外键字段名关联表表关系说明人事调动部门调动前部门主键是一对一该表是部门表与职位表一对一关系的关系表。部门调动后部门主键一对一职位调动前职位主键一对一职位调动后职位主键一对一人事调动申请人员信息人员信息主键是多对多该表人事调动表与人员信息表多对多的一个关系表,每一个关系代表

21、一个人事调动职称评定申请人员信息人员信息主键是多对多该表职称评定表与人员信息表多对多的一个关系表,每一个关系代表一个职称评定人员离退人员信息人员信息主键是一对一该表是人员离退表和人员信息表的一个一对一关系表。用户信息职员信息职员信息主键不是一对一每个职员只能有一个系统用户帐号用户_角色信息用户信息用户主键是多对一该表是用户信息表与角色信息表多对多关系的关系表 角色信息角色主键多对一角色_模块模块信息模块主键是多对一该表是模块信息表与角色信息表多对多关系的关系表 角色信息角色主键多对一培训人员职员信息职员主键不是多对一一个培训可以有多个职员参加记录信息记录主键多对一一个职员可以有多个培训记录培训

22、证书培训记录记录主键不是多对一一个培训记录可以有多个证书职员信息职员主键不是多对一一个职员可以有多个证书培训记录培训类别类别主键不是多对一一个培训类别可以有多个记录4 系统详细设计4.1 功能模块划分通过需求分析,把系统大体分为四个模块,如图4-1:人力资源管理系统档案管理教育培训管理系统管理人事调配图4-1 系统功能结构图4.2 功能子模块设计4.2.1 教育培训管理教育培训管理满足公司对员工岗前、在职培训及学历(学位)教育等多种形式的培训模式,通过信息平台进行教育培训档案的建立、修改维护;培训信息发布等工作,培训教育管理模块ER图如图4-2。培训类别培训人员培训成绩培训教育培训记录培训证书

23、图4-2 培训教育管理ER图该模块主要实现:(1) 培训类别维护对教育培训项目类别维护。包括培训类别编号,名称,证书名称,培训描述。可以增加、删除、修改教育培训的类别信息。(2) 培训记录对教育培训记录进行维护。 主要内容包括:培训类别ID、培训性质、培训编号、培训名称、培训开始时间,培训结束时间,培训地点、参加人员、主办单位、培训方式、负责人姓名、合格分数等信息。 确定培训教师、课时、费用等信息。(3) 培训人员及成绩参加教育培训的培训人员的成绩进行维护,并自动计算考试合计成绩,以便对该人员培训是否合格作出评定。 可以修改教育培训的培训人员成绩信息,维护培训合格情况。对培训合格并可以取得上岗

24、证书的员工,进行培训证书记录;并及时将该信息提供给调配管理人员和工资管理人员,以便做出相应的工作调整和工资调整。(4) 员工证书记录 对参加其它教育培训的人员取得证书进行维护,并对参加培训的人员取得的证书进行补充录入。 主要信息包括:培训人员ID、培训记录ID、证书名称、证书号、证书日期、证书电子图片等信息。 可以增加、删除、修改教育培训人员证书信息。(5) 教育培训情况查询可对员工的培训情况进有条件查询8。4.2.2 系统管理用户管理系统管理部门管理职位管理系统管理主要实现系统管理员进行后台管理的模块,包括组织管理、安全控制。系统管理ER图,如图4-3角色管理图4-3 系统管理ER图该模块主

25、要实现:(1) 结构级别维护制定组织机构级别,维护名称、状态等相关信息。用户可以指定级别名称等信息。并可设置该级别是否可用。不可用的级别,在组织机构的设置中不起作用。 (2) 结构信息维护维护部门的基本信息,可以对部门进行增加、修改、删除等操作。部门应展示父子关系即部门间的所属关系。并可对部门进行合并、移动等操作。 (3) 用户管理对使用本系统的用户进行维护,维护信息包括用户名、密码、用户状态等。用户登录时要首先判断用户的合法性,只有合法用户才能操作相应的功能界面。 可以对用户进行增加、修改、删除等操作。(4) 角色管理系统中采用角色的概念来建立用户与对应功能的关系。一个角色可以对应多个功能界

26、面,当赋予用户某一角色后,该用户即可操作所赋角色所对应的功能界面。 可以对角色进行增加、修改、删除等操作。(5) 系统模块管理对系统模块进行维护,每个功能界面都是一个子模块(或称子功能)。 可以对模块进行增加、修改、删除等操作。 (6) 角色、模块分配维护角色与模块的对应关系,使每个角色可以对应一个或多个模块。 (7) 用户角色分配给使用该系统的用户分配角色,使用户可以操作相应的功能界面9。4.3 数据库表的设计培训类别表设计,如表4-1。表4-1 trainCategory表项中文英文数据类型可否空初始值说明培训类别IDCategory_idInt否1主键,流水自增培训类别编号Categor

27、y_isbnInt否1培训类别名称Category_nameVariable characters (15)可培训证书tCate_CertVariable characters (20)可续表中文英文数据类型可否空初始值说明培训类别描述Cate_describeVariable characters (50)可培训记录表设计,如表4-2。表4-2 trainRecord表项中文英文数据类型可否空初始值说明培训记录IDtrainRecord_idInt否1主键,流水自增培训记录编号Record _isbnInt否唯一键培训记录名称Record _nameVariable characters (

28、20)可培训类别IDCategory_id Int否外键培训性质 trainNatureVariable characters (10)可培训开始时间train_StartTimeDate可培训结束时间train_EndTimeDate可课时continuedTimeInt可培训费用trainCostInt可培训地点trainPlaceVariable characters (50)可培训方式trainModelVariable characters (10)可负责人姓名chargeNameVariable characters (10)可合格分数qualifiedLineInt可培训老师tr

29、ainTeacherVariable characters (10)可培训员工信息表设计,如表4-3。表4-3 train Staff表项中文英文数据类型可否空初始值说明培训人员IDtrainRecord_idInt否 外键培训记录编号staff_idInt否外键培训成绩trainResultInt可合格trainQualifiedSmallInt可成绩单图片ReportCardBLOB可培训证书表设计,如表4-4。表4-4Certificate 表项中文英文数据类型可否空初始值说明培训证书名称CF_nameVariable characters (25)可培训证书日期CF_dateDate可

30、证书电子图片CF_certificateBLOB可培训证书IDCertificate_idNUMBER(20)可主键培训人员IDstaff_idInt否外键记录IDtrainRecord_idInt否外键用户角色表设计,如表4-5。表4-5 Role _User表项中文英文数据类型可否空初始值说明用户主键User_idNumber不可角色主键Role_idNumber不可角色信息表设计,如表4-6。表4-6 Role表项中文英文数据类型可否空初始值说明角色帐号Role_idNumber不可主键,流水自增角色名称Role_nameVariable characters (50)可角色描述Role

31、_idea Variable characters(100)可模块角色关联表设计,如表4-7。表4-7 Role_Module表项中文英文数据类型可否空初始值说明模块主键Module_idNumber不可角色主键Role_idNumber不可模块表设计,如表4-8。表4-8 Module表项中文英文数据类型可否空初始值说明模块帐号Module_idNumber不可主键,流水自增模块名称Module_nameVariable characters(50)可模块描述Module_idea Variable characters(100)可部门信息表设计,如表4-9。表4 -9 Department

32、表项中文英文数据类型可否空初始值说明部门帐号Dep_idNumber不可主键,流水自增部门名称Dep_nameVariable characters (50)可部门编码Dep_isbnNumber可部门经理Dep_managerVariable characters (50)可部门人数Dep_countNumber可部门地址Dep_addressVariable characters (50)可部门级别Dep_degreeVariable characters (50)可部门所属Dep_leatherVariable characters (50)可5 系统实现本文着重介绍教育培训管理模块及系

33、统管理模块的设计与实现。5.1 教育培训管理模块教育培训管理模块结构图,如图5-1所示:培训证书培训记录培训人员培训成绩教育培训培训类别图5-1 教育培训模块结构图在培训管理主页面(如图5-2)左侧的导航栏中可以对培训记录、培训人员、培训程序、培训证书的增删改查操作,在此就不一一赘述了。图5-2 培训管理主页面以培训类别为例,详细解释说明代码实现的过程。当用户在图5-2页面中点击培训类别,出现如图5-3的页面,再点击查询培训类别,会出现如图5-4所示的页面效果。在此页面上,用户可以编辑培训的类别,删除类别,批量删除类别,按需要查看类别10。点击左边栏的“新增类别培训”还可以增加培训的类别,点击

34、“查询培训类别”,可以显示当前系统中所有的培训类别(如图5-3),在此页面中可以分类查询培训类别,还可以对培训类别进行编辑和删除操作,同时还可把培训类别表以Exl和pdf格式导出11。首先导入poi-2.5-final-20040302.jar包。在此包中包含了导出文件的方法实现,只要正确使用就能够完成所需要的功能。其次在servlet中import org.apache.poi.hssf.usermodel.*。导出Exel和pdf格式部分实现代码如下,详细请见附录。HSSFWorkbook workbook = new HSSFWorkbook();HSSFSheet sheet = wo

35、rkbook.createSheet();HSSFCellStyle mainstyle = workbook.createCellStyle();HSSFCellStyle titlestyle = workbook.createCellStyle();HSSFCellStyle cellstyle = workbook.createCellStyle();HSSFFont mainfont = workbook.createFont();HSSFFont titlefont = workbook.createFont();HSSFFont cellfont = workbook.creat

36、eFont();mainfont.setFontHeightInPoints(short) 12);mainfont.setFontName(隶书);titlefont.setFontHeightInPoints(short) 12);titlefont.setFontName(华文新魏);cellfont.setFontHeightInPoints(short) 9);cellfont.setFontName(宋体);workbook.setSheetName(0, 培训类别信息,HSSFWorkbook.ENCODING_UTF_16);mainstyle.setFont(mainfont

37、);titlestyle.setFont(titlefont);titlestyle.setBorderTop(HSSFCellStyle.BORDER_THIN);titlestyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);titlestyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);titlestyle.setBorderRight(HSSFCellStyle.BORDER_THIN);cellstyle.setFont(cellfont);cellstyle.setBorderBottom(HSSF

38、CellStyle.BORDER_THIN);cellstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);cellstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);cellstyle.setWrapText(true);cellstyle.setFont(cellfont);mainstyle.setFont(mainfont);HSSFRow row = null;HSSFCell cell = null;图5-3 培训类别列表显示页面当用户点击了某个按钮时,系统会将相应的标示符传到servlet类来完成

39、逻辑功能实现;在servlet类中,通过判断传过来的标示符来区分所要执行的逻辑功能12。具体代码实现如下:protected void performTask(HttpServletRequest request, HttpServletResponse response) throws ServletException, ServletException, IOException String way = request.getParameter(way);/用户点击按钮导出excel文件,执行downloadExcel()方法。具体实现参见“关键技术实现” if(way.equals(downexcel) result = downloadExcel(request,response); /导出pdf文件,执行downloadPdf()方法。具体实现参见“关键技术实现” if(way.equals(downpdf) result = downloadPdf(request,response); if(way.equals(list)|way.equals(back)|way.equals(l

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号