社区文化宣传网站

@TOC

ssm019社区文化宣传网站+jsp

第1章 绪论

1.1背景及意义

随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对社区文化宣传网站方面的要求也在不断提高,热衷于社区文化的人数更是不断增加,使得社区文化宣传网站的开发成为必需而且紧迫的事情。社区文化宣传网站主要是借助计算机,通过对社区文化宣传网站所需的信息管理,增加用户的选择,同时也方便对广大用户信息的及时查询、修改以及对用户信息的及时了解。社区文化宣传网站对用户带来了更多的便利,该系统通过和数据库管理系统软件协作来满足用户的需求。计算机技术在现代管理中的应用,使计算机成为人们应用现代技术的重要工具。能够有效的解决获取信息便捷化、全面化的问题,提高效率。

1.2 国内外研究概况

随着国内经济形势的不断发展,中国互联网进入了一个难得的高峰发展时期,这使得中外资本家纷纷转向互联网市场。然而,许多管理领域的不合理结构,人员不足以及管理需求的增加使得更多的人具备了互联网管理的意识。

在当今高度发达的信息中,信息管理改革已成为一种更加广泛和全面的趋势。 “社区文化宣传网站”是基于Mysql数据库,在JSP程序设计的基础上实现的。为确保中国经济的持续发展,信息时代日益更新,蓬勃发展。同时,随着信息社会的快速发展,社区文化宣传网站面临着越来越多的信息,因此很难获得他们对高效信息的需求,如何使用方便快捷的方式使查询者在广阔的海洋信息中查询、存储,管理和共享信息方面有效,对我们的工作和生活具有重要的现实意义。因此,国内外技术界对此进行了深入而广泛的研究,一个新的研究领域——社区文化宣传网站诞生了。

1.3 研究的内容

目前许多人仍将传统的纸质工具作为信息管理的主要工具,而网络技术的应用只是起到辅助作用。在对网络工具的认知程度上,较为传统的office软件等仍是人们使用的主要工具,而相对全面且专业的社区文化宣传网站的信息管理软件仍没有得到大多数人的了解或认可。本选题则旨在通过标签分类管理等方式,实现管理员;个人中心、用户管理、社区新闻管理、社区公告管理、社区活动管理、医疗服务管理、社区美食管理、家政服务管理、活动报名管理、家政预约管理、系统管理,用户;个人中心、活动报名管理、家政预约管理,前台首页;首页、社区新闻、社区公告、社区活动、医疗服务、社区美食、家政服务、我的、跳转到后台等信息管理功能,从而达到对社区文化宣传网站信息的高效管理。

第2章 相关技术

2.1 JSP技术介绍

JSP技术本身是一种脚本语言,但它的功能是十分强大的,因为它可以使用所有的JAVA类。当它与JavaBeans 类进行结合时,它可以使显示逻辑和内容分开,这就极大的方便了用户的需求。JavaBeans 可以对JSP技术的程序进行扩展,从而形成新的应用程序,而且JavaBeans的代码可以重复使用,所以就便于对程序进行维护。JavaBean 组件有内部的接口,可以帮助不同的人对系统进行访问。1999年,Sun微系统公司正式推出了JSP技术,这是一种动态技术,是基于整个JAVA体系和JavaServlet提出的,是具有普遍适用性的WEB技术,也是本系统设计的核心技术之一。JSP技术能够极大的提高WEB网页的运行速度。这些内容会与脚本结合,并且由JavaBean和Servlet组件封装。所有的脚本均在服务器端运行,JSP引擎会针对客户端所 提交的申请进行解释,然后生成脚本程序和JSP标识,然后通过HTML/XML页面将结果反馈给浏览器。因此,开发人员亲自设计最终页面的格式和HTML/XML标识时,完全可以使用JSP技术。

所以结合社区文化宣传网站的需求及功能模块的实现,使用JSP技术是最合适的,而且JSP的拓展性比较好,对于社区文化宣传网站在后期使用过程中可以不断对系统功能进行拓展,使系统更完善,更方便的满足用户需求。

2.2 MyEclipse开发环境

MyEclipse支持广泛、兼容性高并且功能强大,是一个Eclipse 插件集合,普遍适应于JAVA和J2EE的系统开发,支持 JDBC,Hibernate,AJAX,Struts,Java Servlet,Spring,EJB3等市面上存在的几乎所有数据库链接工具和主流Eclipse产品 开发工具。

MyEclipse在业内是所熟知的开发工具,该平台在开发的过程中运用的就是该工具。MyEclipse又被称之为企业级的工作平台,它是以Eclipse IDE为基础的。MyEclipse可以帮助我们进行数据库的研发和J2EE的使用,除此之外,还可以提高系统的运营能力,这突出表现在服务器的整合过程中。MyEclipse的功能相当完备,能够为J2EE的集成提供必要的环境支持,从而完成编码、测试、调试及发布等功能。它可以支持JSP,HTML,SQL,Javascript,Struts, CSS等。

2.3 Tomcat服务器

Tomcat属于一种轻型的服务器,所以说在中小企业中并不具有普适性。但是当程序员需要开发或调试JSP 程序时,则通常会将该服务器作为首选。对于一个仅具有计算机基础知识的人来说,计算机系统具有一个好的Apache服务器,可以很好的对HTML 页面进行访问。Tomcat 虽然是Apache的扩展,但是它们都是可以独立运行的,二者是不互相干扰的。当配置正确的时候,Apache服务器为HTML 页面的运行提供技术支持,Tomcat 的任务则是运行Servle和JSP 页面。Tomca也具有一定的HTML页面处理功能。

2.4 MySQL数据库

Mysql的语言是非结构化的,用户可以在数据上进行工作。因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。

Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。

2.5 JAVA简介

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,Java(java server pages),和XML技术。JAVA语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务,开发者只需要知道一些概念就能够编写出一些应用程序。Java程序相对较小,其代码能够在小机器上运行。Java是一种计算机编程语言,具有封装、继承和多态性三个主要特性,广泛应用于企业Web应用程序开发和移动应用程序开发。

Java语言和一般编译器以及直译的区别在于,Java首先将源代码转换为字节码,然后将其转换为JVM的可执行文件,JVM可以在各种不同的JVM上运行。因此,实现了它的跨平台特性。虽然这使得Java在早期非常缓慢,但是随着Java的开发,它已经得到了改进。

第3章 系统分析

3.1 需求分析

社区文化宣传网站主要是为了提高工作人员的工作效率和更方便快捷的满足用户,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。

系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改社区文化宣传网站信息,这样既能节省时间,不用再像传统的方式耽误时间,真的很难去满足用户的各种需求。所以社区文化宣传网站的开发不仅能满足用户的需求,还能减少原有不必要的工作量,大大提高了管理员的工作效率。

3.2 系统可行性分析

3.2.1技术可行性:技术背景

本网站在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。

系统的开发环境和配置都是可以自行安装的,系统使用JSP开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。

(1)硬件可行性分析

系统管理及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。

(2)软件可行性分析

开发整个系统使用的是云计算,流量的可扩展性和基于流量的智能调整云计算的优点就是流量的可扩展性和基于流量的智能调整,保障系统的安全和数据信息的及时备份。

因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。

3.2.2经济可行性

在社区文化宣传网站开发之前所做的市场调研及其他相关的管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有工作都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于社区文化宣传网站的开发在经济上是完全可行的,没有任何费用支出的。

使用比较成熟的技术,系统是基于JSP的开发,采用Mysql数据库。所以系统在开发人力、财力要求不高,具有经济可行性。

3.2.3操作可行性:

可操作性主要是对社区文化宣传网站设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户二个权限角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作过程使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

3.3 项目设计目标与原则

1、关于社区文化宣传网站的基本要求

(1)功能要求:个人中心、用户管理、社区新闻管理、社区公告管理、社区活动管理、医疗服务管理、社区美食管理、家政服务管理、活动报名管理、家政预约管理、系统管理等功能模块。

(2)性能:在不同操作系统上均能无差错实现在不同类型的用户登入相应界面后能不出差错、方便地进行预期操作。

(3)安全与保密要求:用户都必须通过注册、登录才能进入系统。

(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。

2、开发目标

社区文化宣传网站的主要开发目标如下:

(1)实现管理系统信息关系的系统化、规范化和自动化;

(2)减少维护人员的工作量以及实现用户对信息的控制和管理;

(3)方便查询信息及管理信息等;

(4)通过网络操作,提高改善处理问题和操作人员工作的效率;

(5)考虑到用户多样性特点,要求界面和操作简便易懂。

3、设计原则

本社区文化宣传网站采用JSP技术,Mysql数据库开发,充分保证了系统稳定性、完整性。

社区文化宣传网站的设计与实现的设计思想如下:

  1. 操作简单方便、系统界面安全良好、简单明了的页面布局、方便查询相关信息。
  2. 即时可见:对社区文化宣传网站信息的处理将立马在对应地点可以查询到,从而实现“即时发布、即时见效”的系统功能。

3.4系统流程分析

3.4.1操作流程

系统登录流程图,如图所示:

图3-1登录流程图

3.4.2添加信息流程

添加信息流程图,如图所示:

图3-2添加信息流程图

3.4.3删除信息流程

删除信息流程图,如图所示:

图3-3删除信息流程图

第4章 系统设计

4.1 系统体系结构

社区文化宣传网站的结构图4-1所示:

管理员

服务器和程序

用户

图4-1 系统结构

登录系统结构图,如图4-2所示:

社区文化宣传网站登录界面

用户登录

密码正确

管理员界面

用户界面

图4-2 登录结构图

社区文化宣传网站结构图,如图4-3所示。

图4-3 社区文化宣传网站结构图

4.2开发流程设计

系统流程的分析是通过调查系统所涉及问题的识别、可行性、可操作性、系统分析处理能力等具体环节来调节、整理系统的设计方案以确保系统能达到理想的状态。这些操作都要从注册、登录处着眼进行一系列的流程测试保证数据库的完整,从而把控系统所涉及信息管理的安全、保证信息输入、输出正常转换。然后,通过实际操作完成流程图的绘制工作。

社区文化宣传网站的开发对管理模块和系统使用的数据库进行分析,编写代码,系统测试,如图4-4所示。

图4-4开发系统流程图

4.3 数据库设计原则

学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还为系统提供了添加、删除、修改和检查等操作模块,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。

通过社区文化宣传网站的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:

用户信息属性图如图4-5所示。

图4-5 用户信息实体属性图

社区活动信息属性图如图4-6所示

图4-6社区活动信息属性图

医疗服务信息属性图如图4-7所示。

图4-7医疗服务信息实体属性图

家政服务信息实体属性图如图4-8所示。

图4-8家政服务信息实体属性图

4.4 数据表

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表名:huodongbaoming

功能:活动报名表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |baomingbianhao|varchar|200|报名编号||| |huodongmingcheng|varchar|200|活动名称||| |huodongtupian|varchar|200|活动图片||| |jubanfang|varchar|200|举办方||| |lianxidianhua|varchar|200|联系电话||| |kaishishijian|varchar|200|开始时间||| |jieshushijian|varchar|200|结束时间||| |yonghuming|varchar|200|用户名||| |yonghuxingming|varchar|200|用户姓名||| |baomingshijian|varchar|200|报名时间||| |beizhu|varchar|200|备注|||

表名:jiazhengfuwu

功能:家政服务表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |jiazhengxingming|bigint|200|家政姓名||| |xingbie|bigint|200|性别||| |nianling|varchar|200|年龄||| |zhaopian|varchar|200|照片||| |fuwuleixing|varchar|200|服务类型||| |fuwujiage|varchar|200|服务价格||| |jiazhengdianhua|varchar|200|家政电话||| |fuwujieshao|varchar|200|服务介绍|||

表名:jiazhengyuyue

功能:家政预约表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |jiazhengxingming|varchar|200|家政姓名||| |fuwuleixing|varchar|200|服务类型||| |xingbie|varchar|200|性别||| |zhaopian|varchar|200|照片||| |fuwujiage|varchar|200|服务价格||| |yuyueshijian|varchar|200|预约时间||| |yonghuming|varchar|200|用户名||| |yonghuxingming|varchar|200|用户姓名||| |yonghushouji|varchar|200|用户手机||| |dizhi|varchar|200|地址||| |beizhu|varchar|200|备注|||

表名:shequgonggao

功能:社区公告表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |gonggaobiaoti|varchar|200|公告标题||| |fengmiantupian|varchar|200|封面图片||| |gonggaoneirong|varchar|200|公告内容||| |fabushijian|varchar|200|发布时间||| |faburen|varchar|200|发布人||| |fujian|varchar|200|附件|||

表名:shequhuodong

功能:社区活动表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |huodongmingcheng|varchar|200|活动名称||| |huodongtupian|varchar|200|活动图片||| |baomingtiaojian|varchar|200|报名条件||| |kaishishijian|varchar|200|开始时间||| |jieshushijian|varchar|200|结束时间||| |huodongneirong|varchar|200|活动内容||| |huodongdidian|varchar|200|活动地点||| |jubanfang|varchar|200|举办方||| |lianxidianhua|varchar|200|联系电话|||

表名:yonghu

功能:用户表

字段名称类型长度字段说明主键默认值
idbigint主键`

`主键 || |addtime|timestamp|200|创建时间||CURRENT_TIMESTAMP| |yonghuming|varchar|200|用户名||| |mima|varchar|200|密码||| |yonghuxingming|varchar|200|用户姓名||| |xingbie|varchar|200|性别||| |touxiang|varchar|200|头像||| |yonghushouji|varchar|200|用户手机|||

第5章 系统详细设计

5.1前台首页功能模块

社区文化宣传网站,在社区文化宣传网站可以查看首页、社区新闻、社区公告、社区活动、医疗服务、社区美食、家政服务、我的、跳转到后台等内容,如图5-1所示。

图5-1前台首页界面图

用户注册、用户登录,通过注册填写用户名、密码、用户姓名、用户手机等信息进行注册、登录操作,如图5-2所示。

图5-2用户注册、用户登录界面图

社区活动,在社区活动页面可以查看活动名称、活动图片、报名条件、开始时间、结束时间、活动内容、活动地点、举办方、联系电话等信息进行活动报名、点我收藏操作,如图5-3所示。

图5-3社区活动界面图

社区美食,在社区美食页面可以查看店铺名称、经营类型、美食图片、店铺地址、营业时间、主打美食、联系电话、联系人等信息进行点我收藏操作,如图5-4所示。

图5-4社区美食界面图

5.2管理员功能模块

管理员登录,通过填写用户名、密码等信息,输入完成后选择登录即可进入社区文化宣传网站,如图5-5所示。

图5-5管理员登录界面图

社区文化宣传网站,在社区文化宣传网站可以查看个人中心、用户管理、社区新闻管理、社区公告管理、社区活动管理、医疗服务管理、社区美食管理、家政服务管理、活动报名管理、家政预约管理、系统管理等内容,如图5-6所示。

图5-6管理员功能界面图

用户管理,在用户管理页面可以查看用户名、密码、用户姓名、性别、头像、用户手机等信息进行查看、修改、删除操作,如图5-7所示。

图5-7用户管理界面图

社区新闻管理,在社区新闻管理页面可以查看新闻标题、文章来源、发布时间、新闻内容、新闻图片、发布人等信息进行修改、删除、查看等操作,如图5-8所示。

图5-8社区新闻管理界面图

社区公告管理,在社区公告管理页面可以查看公告标题、封面图片、公告内容、发布时间、发布人、附件等信息进行查看、修改、删除操作,如图5-9所示。

图5-9社区公告管理界面图

社区活动管理,在社区活动管理页面可以查看活动名称、活动图片、报名条件、开始时间、结束时间、活动内容、活动地点、举办方、联系电话等信息进行查看、修改、删除,如图5-10所示。

图5-10社区活动管理界面图

医疗服务管理,在医疗服务管理页面可以查看医院名称、医院地址、医院图片、服务介绍、联系人、联系电话等信息进行查看、修改、删除操作,如图5-11所示。

图5-11医疗服务管理界面图

社区美食管理,在社区美食管理页面可以查看店铺名称、经营类型、美食图片、店铺地址、营业时间、主打美食、联系电话、联系人等信息进行查看、修改、删除操作,如图5-12所示。

图5-12社区美食管理界面图

家政服务管理,在家政服务管理页面可以查看家政姓名、性别、年龄、照片、服务类型、服务价格、家政电话、服务介绍等信息进行查看、修改、删除操作,如图5-13所示。

图5-13家政服务管理界面图

活动报名管理,在活动报名管理页面可以查看报名编号、活动名称、活动图片、举办方、联系电话、开始时间、结束时间、用户名、用户姓名、报名时间、备注等信息进行查看、修改、删除操作,如图5-14所示。

图5-14活动报名管理界面图

家政预约管理,在家政预约管理页面可以查看家政姓名、服务类型、性别、照片、服务价格、预约时间、用户名、用户姓名、用户手机、地址、备注、是否支付等信息进行查看、修改、删除操作,如图5-15所示。

图5-15家政预约管理界面图

轮播图;该页面为轮播图管理界面。管理员可以在此页面进行首页轮播图的管理,通过新建操作可在轮播图中加入新的图片,还可以对以上传的图片进行修改操作,以及图片的删除操作,如图5-16所示。

图5-16轮播图管理界面图

5.3用户功能模块

社区文化宣传网站,用户在社区文化宣传网站页面可以查看个人中心、活动报名管理、家政预约管理等内容,如图5-17所示。

图5-17用户功能界面图

活动报名管理,在活动报名管理页面可以查看报名编号、活动名称、活动图片、举办方、联系电话、开始时间、结束时间、用户名、用户姓名、报名时间、备注等信息进行查看、删除操作,如图5-18所示。

图5-18活动报名管理界面图

家政预约管理,在家政预约管理页面可以查看家政姓名、服务类型、性别、照片、服务价格、预约时间、用户名、用户姓名、用户手机、地址、备注、是否支付等信息进行查看、删除操作,如图5-19所示。

图5-19家政预约管理界面图

ShequxinwenServiceImpl.java
package com.service.impl;

import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.List;

import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.utils.PageUtils;
import com.utils.Query;


import com.dao.ShequxinwenDao;
import com.entity.ShequxinwenEntity;
import com.service.ShequxinwenService;
import com.entity.vo.ShequxinwenVO;
import com.entity.view.ShequxinwenView;

@Service("shequxinwenService")
public class ShequxinwenServiceImpl extends ServiceImpl<ShequxinwenDao, ShequxinwenEntity> implements ShequxinwenService {


    @Override
    public PageUtils queryPage(Map<String, Object> params) {
        Page<ShequxinwenEntity> page = this.selectPage(
                new Query<ShequxinwenEntity>(params).getPage(),
                new EntityWrapper<ShequxinwenEntity>()
        );
        return new PageUtils(page);
    }
    
    @Override
	public PageUtils queryPage(Map<String, Object> params, Wrapper<ShequxinwenEntity> wrapper) {
		  Page<ShequxinwenView> page =new Query<ShequxinwenView>(params).getPage();
	        page.setRecords(baseMapper.selectListView(page,wrapper));
	    	PageUtils pageUtil = new PageUtils(page);
	    	return pageUtil;
 	}
    
    @Override
	public List<ShequxinwenVO> selectListVO(Wrapper<ShequxinwenEntity> wrapper) {
 		return baseMapper.selectListVO(wrapper);
	}
	
	@Override
	public ShequxinwenVO selectVO(Wrapper<ShequxinwenEntity> wrapper) {
 		return baseMapper.selectVO(wrapper);
	}
	
	@Override
	public List<ShequxinwenView> selectListView(Wrapper<ShequxinwenEntity> wrapper) {
		return baseMapper.selectListView(wrapper);
	}

	@Override
	public ShequxinwenView selectView(Wrapper<ShequxinwenEntity> wrapper) {
		return baseMapper.selectView(wrapper);
	}

}

ShequxinwenController.java
package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.ShequxinwenEntity;
import com.entity.view.ShequxinwenView;

import com.service.ShequxinwenService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 社区新闻
 * 后端接口
 * @author 
 * @email 
 * @date 2021-02-22 14:03:49
 */
@RestController
@RequestMapping("/shequxinwen")
public class ShequxinwenController {
    @Autowired
    private ShequxinwenService shequxinwenService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ShequxinwenEntity shequxinwen, HttpServletRequest request){

        EntityWrapper<ShequxinwenEntity> ew = new EntityWrapper<ShequxinwenEntity>();
    	PageUtils page = shequxinwenService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shequxinwen), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ShequxinwenEntity shequxinwen, HttpServletRequest request){
        EntityWrapper<ShequxinwenEntity> ew = new EntityWrapper<ShequxinwenEntity>();
    	PageUtils page = shequxinwenService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shequxinwen), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ShequxinwenEntity shequxinwen){
       	EntityWrapper<ShequxinwenEntity> ew = new EntityWrapper<ShequxinwenEntity>();
      	ew.allEq(MPUtil.allEQMapPre( shequxinwen, "shequxinwen")); 
        return R.ok().put("data", shequxinwenService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ShequxinwenEntity shequxinwen){
        EntityWrapper< ShequxinwenEntity> ew = new EntityWrapper< ShequxinwenEntity>();
 		ew.allEq(MPUtil.allEQMapPre( shequxinwen, "shequxinwen")); 
		ShequxinwenView shequxinwenView =  shequxinwenService.selectView(ew);
		return R.ok("查询社区新闻成功").put("data", shequxinwenView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ShequxinwenEntity shequxinwen = shequxinwenService.selectById(id);
        return R.ok().put("data", shequxinwen);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ShequxinwenEntity shequxinwen = shequxinwenService.selectById(id);
        return R.ok().put("data", shequxinwen);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ShequxinwenEntity shequxinwen, HttpServletRequest request){
    	shequxinwen.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(shequxinwen);

        shequxinwenService.insert(shequxinwen);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ShequxinwenEntity shequxinwen, HttpServletRequest request){
    	shequxinwen.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(shequxinwen);

        shequxinwenService.insert(shequxinwen);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ShequxinwenEntity shequxinwen, HttpServletRequest request){
        //ValidatorUtils.validateEntity(shequxinwen);
        shequxinwenService.updateById(shequxinwen);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        shequxinwenService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<ShequxinwenEntity> wrapper = new EntityWrapper<ShequxinwenEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}


		int count = shequxinwenService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	
	


}

YiliaofuwuController.java
package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.YiliaofuwuEntity;
import com.entity.view.YiliaofuwuView;

import com.service.YiliaofuwuService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 医疗服务
 * 后端接口
 * @author 
 * @email 
 * @date 2021-02-22 14:03:49
 */
@RestController
@RequestMapping("/yiliaofuwu")
public class YiliaofuwuController {
    @Autowired
    private YiliaofuwuService yiliaofuwuService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,YiliaofuwuEntity yiliaofuwu, HttpServletRequest request){

        EntityWrapper<YiliaofuwuEntity> ew = new EntityWrapper<YiliaofuwuEntity>();
    	PageUtils page = yiliaofuwuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yiliaofuwu), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
	@IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,YiliaofuwuEntity yiliaofuwu, HttpServletRequest request){
        EntityWrapper<YiliaofuwuEntity> ew = new EntityWrapper<YiliaofuwuEntity>();
    	PageUtils page = yiliaofuwuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yiliaofuwu), params), params));
		request.setAttribute("data", page);
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( YiliaofuwuEntity yiliaofuwu){
       	EntityWrapper<YiliaofuwuEntity> ew = new EntityWrapper<YiliaofuwuEntity>();
      	ew.allEq(MPUtil.allEQMapPre( yiliaofuwu, "yiliaofuwu")); 
        return R.ok().put("data", yiliaofuwuService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(YiliaofuwuEntity yiliaofuwu){
        EntityWrapper< YiliaofuwuEntity> ew = new EntityWrapper< YiliaofuwuEntity>();
 		ew.allEq(MPUtil.allEQMapPre( yiliaofuwu, "yiliaofuwu")); 
		YiliaofuwuView yiliaofuwuView =  yiliaofuwuService.selectView(ew);
		return R.ok("查询医疗服务成功").put("data", yiliaofuwuView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        YiliaofuwuEntity yiliaofuwu = yiliaofuwuService.selectById(id);
        return R.ok().put("data", yiliaofuwu);
    }

    /**
     * 前端详情
     */
	@IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        YiliaofuwuEntity yiliaofuwu = yiliaofuwuService.selectById(id);
        return R.ok().put("data", yiliaofuwu);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody YiliaofuwuEntity yiliaofuwu, HttpServletRequest request){
    	yiliaofuwu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(yiliaofuwu);

        yiliaofuwuService.insert(yiliaofuwu);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody YiliaofuwuEntity yiliaofuwu, HttpServletRequest request){
    	yiliaofuwu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(yiliaofuwu);

        yiliaofuwuService.insert(yiliaofuwu);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody YiliaofuwuEntity yiliaofuwu, HttpServletRequest request){
        //ValidatorUtils.validateEntity(yiliaofuwu);
        yiliaofuwuService.updateById(yiliaofuwu);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        yiliaofuwuService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<YiliaofuwuEntity> wrapper = new EntityWrapper<YiliaofuwuEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}


		int count = yiliaofuwuService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	
	


}

声明

本博客适用于广泛的学术和教育用途,包括但不限于个人学习、开发设计,产品设计。仅供学习参考,旨在为读者提供深入理解和学术研究的材料。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值