//-------------------------6524--------------------------
//-----------------作者Q: 1305637939-------------------
//-----------------调试运行代码,完善代码, 定制代码-------------------
package com.controller;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
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.Cart;
import com.entity.Cate;
import com.entity.Complains;
import com.entity.Details;
import com.entity.Fav;
import com.entity.Foods;
import com.entity.Hist;
import com.entity.Orders;
import com.entity.Topic;
import com.entity.Users;
import com.service.ArticleService;
import com.service.CartService;
import com.service.CateService;
import com.service.ComplainsService;
import com.service.CosService;
import com.service.DetailsService;
import com.service.FavService;
import com.service.FoodsService;
import com.service.HistService;
import com.service.OrdersService;
import com.service.RecommendService;
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 FoodsService foodsService;
@Autowired
private CartService cartService;
@Autowired
private OrdersService ordersService;
@Autowired
private DetailsService detailsService;
@Autowired
private TopicService topicService;
@Autowired
private ComplainsService complainsService;
@Autowired
private FavService favService;
@Autowired
private HistService histService;
@Autowired
private CosService cosService;
@Autowired
private RecommendService recommendService;
// 内容(余弦函数)算法调用
private void cos(String cateid) {
// 推荐食品的算法 1 用户未登录 直接调用foodsService的getGoodsByHot方法
// 2 用户登录 但是没有浏览食品 则调用1
// 3 用户登录 且有浏览的食品 调用cosService 通过协同过滤算法 自动推荐食品
if (this.getSession().getAttribute("userid") == null) {
List<Foods> buyList = this.foodsService.getFoodsByRandom(cateid);
this.getRequest().setAttribute("buyList", buyList);
} else {
String userid = (String) this.getSession().getAttribute("userid");
List<Foods> buyList = this.cosService.getRecommend(userid, cateid);
this.getRequest().setAttribute("buyList", buyList);
}
}
private void recommend() {
if (this.getSession().getAttribute("userid") == null) {
List<Foods> hotList = this.foodsService.getFoodsByHot();
this.getRequest().setAttribute("hotList", hotList);
} else {
String userid = (String) this.getSession().getAttribute("userid");
Hist hist = new Hist();
hist.setUsersid(userid);
List<Hist> histList = this.histService.getHistByCond(hist);
if (histList.size() == 0) {
List<Foods> hotList = this.foodsService.getFoodsByHot();
this.getRequest().setAttribute("hotList", hotList);
} else {
List<Foods> hotList = this.recommendService.getRecommend(userid);
this.getRequest().setAttribute("hotList", hotList);
System.out.println(hotList.size());
}
}
}
// 公共方法 提供公共查询数据
private void front() {
this.getRequest().setAttribute("title", "美食推荐系统");
List<Cate> cateList = this.cateService.getAllCate();
this.getRequest().setAttribute("cateList", cateList);
}
// 首页显示
@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<Foods> foodsList = this.foodsService.getFoodsByCate(cate.getCateid());
cate.setFoodsList(foodsList);
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());
this.recommend();
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 (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.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("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("u
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
本系统由两个大模块组成:前台用户界面和后台管理员界面。前台用户界面主要是分为:查看部分美食,查看美食详细信息,查看更多美食,加入用户收藏,确认订购信息,修改用户收藏,部分删除用户收藏信息,清空用户收藏和提交用户评价等购物网站常见功能。后台主要是管理员对网站信息的添加,更新、删除和查询。分为:用户管理、美食分类管理、美食信息管理以及用户评价管理。用户管理包括用户信息查询和删除。美食管理包括美食录入,涉及图片传送功能。用户评价管理包括查询和删除用户评价。美食分类管理包括查询美食分类。添加用户身份的验证,美食限定购买数量验证等功能加强了各种信息的安全性。
资源详情
资源评论
资源推荐
收起资源包目录
基于ssm的美食推荐系统(代码+数据库脚本) (961个子文件)
H-ui.css 207KB
H-ui.min.css 149KB
editor_ie7.css 48KB
editor_iequirks.css 47KB
editor_ie8.css 46KB
editor_ie.css 46KB
style.css 46KB
editor_gecko.css 45KB
editor.css 45KB
dialog_ie7.css 17KB
iconfont.css 17KB
dialog_ie8.css 16KB
dialog_iequirks.css 16KB
dialog_ie.css 16KB
dialog.css 15KB
iconfont.min.css 14KB
H-ui.admin.css 7KB
H-ui.reset.css 3KB
style.css 3KB
H-ui.ie.css 3KB
contents.css 2KB
H-ui.login.css 2KB
templates.css 2KB
skin.css 1KB
toolbar.css 1KB
skin.css 1KB
skin.css 1KB
skin.css 1KB
skin.css 1KB
wsc.css 1KB
skin.css 1KB
index.css 776B
style.css 44B
iconfont.eot 132KB
bg.gif 18KB
35.gif 13KB
71.gif 13KB
69.gif 10KB
loading.gif 8KB
18.gif 8KB
19.gif 8KB
11.gif 8KB
service.gif 8KB
32.gif 7KB
salesTitBg.gif 6KB
78.gif 6KB
31.gif 6KB
99.gif 5KB
75.gif 5KB
85.gif 5KB
8.gif 5KB
29.gif 5KB
74.gif 5KB
5.gif 5KB
45.gif 4KB
33.gif 4KB
72.gif 4KB
ur_bg.gif 4KB
0.gif 4KB
26.gif 4KB
loading-b.gif 4KB
7.gif 4KB
10.gif 4KB
76.gif 4KB
80.gif 4KB
49.gif 4KB
66.gif 3KB
205.gif 3KB
91.gif 3KB
9.gif 3KB
28.gif 3KB
70.gif 3KB
6.gif 3KB
68.gif 3KB
79.gif 3KB
22.gif 3KB
97.gif 3KB
NavBg.gif 3KB
topNavBg.gif 3KB
logo.gif 3KB
56.gif 3KB
user_tit3.gif 3KB
51.gif 3KB
27.gif 3KB
86.gif 3KB
logo1.gif 2KB
41.gif 2KB
user_tit1.gif 2KB
50.gif 2KB
25.gif 2KB
103.gif 2KB
84.gif 2KB
83.gif 2KB
24.gif 2KB
12.gif 2KB
89.gif 2KB
101.gif 2KB
106.gif 2KB
105.gif 2KB
user_tit2.gif 2KB
共 961 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
美好的未来232
- 粉丝: 78
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1