package com.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Article;
import com.entity.Cars;
import com.entity.Cate;
import com.entity.Complains;
import com.entity.Orders;
import com.entity.Pcars;
import com.entity.Topic;
import com.entity.Users;
import com.service.ArticleService;
import com.service.CarsService;
import com.service.CateService;
import com.service.ComplainsService;
import com.service.OrdersService;
import com.service.PcarsService;
import com.service.TopicService;
import com.service.UsersService;
import com.util.PageHelper;
import com.util.VeDate;
//定义为控制器
@Controller
// 设置路径
@RequestMapping("/index")
public class IndexController extends BaseController {
@Autowired
private UsersService usersService;
@Autowired
private ArticleService articleService;
@Autowired
private CateService cateService;
@Autowired
private CarsService carsService;
@Autowired
private OrdersService ordersService;
@Autowired
private TopicService topicService;
@Autowired
private PcarsService pcarsService;
@Autowired
private ComplainsService complainsService;
// TODO Auto-generated method stub
// 公共方法 提供公共查询数据
private void front() {
this.getRequest().setAttribute("title", "共享汽车管理");
List<Cate> cateList = this.cateService.getAllCate();
this.getRequest().setAttribute("cateList", cateList);
List<Cars> hotList = this.carsService.getCarsByHot();
this.getRequest().setAttribute("hotList", hotList);
}
// 首页显示
@RequestMapping("index.action")
public String index() {
this.front();
List<Cate> cateList = this.cateService.getCateFront();
List<Cate> frontList = new ArrayList<Cate>();
for (Cate cate : cateList) {
List<Cars> carsList = this.carsService.getCarsByCate(cate.getCateid());
cate.setCarsList(carsList);
frontList.add(cate);
}
this.getRequest().setAttribute("frontList", frontList);
return "users/index";
}
// 公告
@RequestMapping("article.action")
public String article(String number) {
this.front();
List<Article> tempList = this.articleService.getAllArticle();
PageHelper.getIndexPage(tempList, "article", "article", null, 10, number, this.getRequest());
return "users/article";
}
// 阅读公告
@RequestMapping("read.action")
public String read(String id) {
this.front();
Article article = this.articleService.getArticleById(id);
article.setHits("" + (Integer.parseInt(article.getHits()) + 1));
this.articleService.updateArticle(article);
this.getRequest().setAttribute("article", article);
return "users/read";
}
// 准备登录
@RequestMapping("preLogin.action")
public String prelogin() {
this.front();
return "users/login";
}
// 用户登录
@RequestMapping("login.action")
public String login() {
this.front();
String username = this.getRequest().getParameter("username");
String password = this.getRequest().getParameter("password");
Users u = new Users();
u.setUsername(username);
List<Users> usersList = this.usersService.getUsersByCond(u);
if (usersList.size() == 0) {
this.getSession().setAttribute("message", "用户名不存在");
return "redirect:/index/preLogin.action";
} else {
Users users = usersList.get(0);
if ("锁定".equals(users.getStatus())) {
this.getSession().setAttribute("message", "账户被锁定");
return "redirect:/index/preLogin.action";
}
if (password.equals(users.getPassword())) {
this.getSession().setAttribute("userid", users.getUsersid());
this.getSession().setAttribute("username", users.getUsername());
this.getSession().setAttribute("users", users);
return "redirect:/index/index.action";
} else {
this.getSession().setAttribute("message", "密码错误");
return "redirect:/index/preLogin.action";
}
}
}
// 准备注册
@RequestMapping("preReg.action")
public String preReg() {
this.front();
return "users/register";
}
// 用户注册
@RequestMapping("register.action")
public String register(Users users) {
this.front();
Users u = new Users();
u.setUsername(users.getUsername());
List<Users> usersList = this.usersService.getUsersByCond(u);
if (usersList.size() == 0) {
users.setStatus("解锁");
users.setRegdate(VeDate.getStringDateShort());
this.usersService.insertUsers(users);
} else {
this.getSession().setAttribute("message", "用户名已存在");
return "redirect:/index/preReg.action";
}
return "redirect:/index/preLogin.action";
}
// 退出登录
@RequestMapping("exit.action")
public String exit() {
this.front();
this.getSession().removeAttribute("userid");
this.getSession().removeAttribute("username");
this.getSession().removeAttribute("users");
return "redirect:/index/index.action";
}
// 准备修改密码
@RequestMapping("prePwd.action")
public String prePwd() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
return "users/editpwd";
}
// 修改密码
@RequestMapping("editpwd.action")
public String editpwd() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
String password = this.getRequest().getParameter("password");
String repassword = this.getRequest().getParameter("repassword");
Users users = this.usersService.getUsersById(userid);
if (password.equals(users.getPassword())) {
users.setPassword(repassword);
this.usersService.updateUsers(users);
} else {
this.getSession().setAttribute("message", "旧密码错误");
return "redirect:/index/prePwd.action";
}
this.getSession().setAttribute("message", "修改成功");
return "redirect:/index/prePwd.action";
}
@RequestMapping("usercenter.action")
public String usercenter() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
// return "users/usercenter";
return "users/userinfo";
}
@RequestMapping("userinfo.action")
public String userinfo() {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
String userid = (String) this.getSession().getAttribute("userid");
this.getSession().setAttribute("users", this.usersService.getUsersById(userid));
return "users/userinfo";
}
@RequestMapping("personal.action")
public String personal(Users users) {
this.front();
if (this.getSession().getAttribute("userid") == null) {
return "redirect:/index/preLogin.action";
}
this.usersService.updateUsers(users);
this.getSession().setAttribute("message", "修改成功");
return "redirect:/index/userinfo.action";
}
@RequestMapping("all.action")
public String all(String number) {
this.front();
Cars cars = new Cars();
cars.setStatus("待租");
List<Cars> carsList = this.carsService.getCarsByCond(cars);
PageHelper.getIndexPage(carsList, "cars", "all", null, 10, number, this.getRequest());
return "users/list";
}
@RequestMapping("cate.action")
public String cate(String number) {
this.front();
String cateid = this.getRequest().getParameter("id");
Cars cars = new Cars();
cars.setStatus("待租");
cars.setCateid(cateid);
List<Cars> carsList = this.carsService.getCarsByCond(cars);
PageHelper.getIndexPage(carsList, "cars", "cate", cateid, 10, number, this.getRequest());
return "users/list";
}
@RequestMapping("areax.action")
public String areax(String number) {
this.front();
String cateid = this.getRequest().getParameter("id");
Cars cars = new Cars();
cars.setStatus("待租");
cars.setAreaxid(cateid);
List<Cars> carsList = this.carsService.getCarsByCond(cars);
PageHelp
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【资源说明】 毕业设计-基于Spring MVC+ MyBatis的共享汽车管理系统源码.zip 项目说明 本网站的客户端和管理端使用h-ui框架来实现,服务端使用 **Spring MVC+ MyBatis** 来实现,数据库使用了 **MySQL**。 <br/> 项目功能 - 汽车租赁 - 用户登录注册 - 用户信息编辑、头像修改 - 车辆搜索 - 车辆评论,留言 - 后台对用户、车辆、订单信息的管理 <br/> 技术栈 后端 **SpringBoot + MyBatis** 前端 **H-ui+HTML+CSS+JSP** <br/> 开发环境 JDK: jdk1.8 mysql:mysql-8 IDE:IntelliJ IDEA 2019 <br/> 运行 1、修改配置文件 修改 resource文件里的 `springmvc-servlet.xml的用户名密码; 2、配置Tomcat并启动项目 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计-基于Spring MVC+ MyBatis的共享汽车管理系统源码.zip (1973个子文件)
IndexController.class 15KB
IndexController.class 15KB
VeDate.class 9KB
VeDate.class 9KB
PageHelper.class 6KB
PageHelper.class 6KB
AdminController.class 6KB
AdminController.class 6KB
CarsController.class 6KB
CarsController.class 6KB
OrdersController.class 5KB
OrdersController.class 5KB
TopicController.class 5KB
TopicController.class 5KB
Cars.class 5KB
Cars.class 5KB
ComplainsController.class 5KB
ComplainsController.class 5KB
PcarsController.class 5KB
PcarsController.class 5KB
UsersController.class 5KB
UsersController.class 5KB
ArticleController.class 4KB
ArticleController.class 4KB
ShopsController.class 4KB
ShopsController.class 4KB
ChartController.class 4KB
ChartController.class 4KB
AreaxController.class 4KB
AreaxController.class 4KB
CateController.class 4KB
CateController.class 4KB
RandomValidateCode.class 4KB
RandomValidateCode.class 4KB
UploadController.class 3KB
UploadController.class 3KB
Pcars.class 3KB
Pcars.class 3KB
Orders.class 3KB
Orders.class 3KB
Users.class 3KB
Users.class 3KB
Topic.class 3KB
Topic.class 3KB
Complains.class 2KB
Complains.class 2KB
Admin.class 2KB
Admin.class 2KB
Shops.class 2KB
Shops.class 2KB
CarsServiceImpl.class 2KB
CarsServiceImpl.class 2KB
Cate.class 2KB
Cate.class 2KB
Article.class 2KB
Article.class 2KB
ComplainsServiceImpl.class 2KB
ComplainsServiceImpl.class 2KB
CateServiceImpl.class 2KB
CateServiceImpl.class 2KB
Test.class 2KB
Test.class 2KB
ArticleServiceImpl.class 2KB
ArticleServiceImpl.class 2KB
OrdersServiceImpl.class 2KB
OrdersServiceImpl.class 2KB
AdminServiceImpl.class 2KB
TopicServiceImpl.class 2KB
UsersServiceImpl.class 2KB
ShopsServiceImpl.class 2KB
PcarsServiceImpl.class 2KB
AreaxServiceImpl.class 2KB
AdminServiceImpl.class 2KB
TopicServiceImpl.class 2KB
UsersServiceImpl.class 2KB
ShopsServiceImpl.class 2KB
PcarsServiceImpl.class 2KB
AreaxServiceImpl.class 2KB
BaseController.class 2KB
BaseController.class 2KB
Areax.class 1KB
Areax.class 1KB
CarsDAO.class 882B
CarsDAO.class 882B
CarsService.class 850B
CarsService.class 850B
ComplainsDAO.class 770B
ComplainsDAO.class 770B
ArticleDAO.class 738B
ComplainsService.class 738B
ArticleDAO.class 738B
ComplainsService.class 738B
OrdersDAO.class 722B
OrdersDAO.class 722B
CateDAO.class 721B
CateDAO.class 721B
TopicDAO.class 706B
ShopsDAO.class 706B
PcarsDAO.class 706B
AreaxDAO.class 706B
共 1973 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
Make程序设计
- 粉丝: 5633
- 资源: 3568
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于matlab开发的全面详解LTE:MATLAB建模、仿真与实现-simulink.rar
- 自动驾驶定位系列教程二:系统架构.pdf
- 整站程序8优技巧网-8ujq.rar
- 世界各个国家或地区国际域名缩写
- 基于matlab开发的根据rvm回归模型自己编的matlab程序.rar
- 基于matlab开发的该程序为国内一所大学编写的LTE链路层仿真程序,根据LTE标准协议编写的,很容易看懂.rar
- 高效C++学生成绩管理系统:教育技术+C++17编程+数据管理+教务自动化
- 搜索链接要广告分类系统 v2.0-yad20.rar
- 基于matlab开发的Tipping的相关向量机RVM的回归MATLAB程序,有英文注释,可以运行.rar
- 一个点击正反转程序实例,可实现案件电机正反转
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功