package com.notebook.controller;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import com.baomidou.mybatisplus.plugins.Page;
import com.notebook.config.email.EmailConfig;
import com.notebook.entities.SysNotice;
import com.notebook.entities.UserInfo;
import com.notebook.entities.UserNote;
import com.notebook.entities.UserNotetag;
import com.notebook.model.admin.AdminIndexModel;
import com.notebook.model.common.LoginRecordModel;
import com.notebook.model.common.NoticeModel;
import com.notebook.service.NoticeService;
import com.notebook.service.UserInfoService;
import com.notebook.service.UserLoginRecordService;
import com.notebook.service.UserNoteService;
import com.notebook.service.UserNoteTagService;
import com.notebook.util.CommonUtil;
import com.notebook.util.ConstantUtil;
import com.notebook.util.EmailUtil;
import com.notebook.util.StringUtil;
@Controller
@RequestMapping(value="/admin")
public class AdminController {
@Autowired
UserInfoService userInfoService;
@Autowired
NoticeService noticeService;
@Autowired
UserLoginRecordService userLoginRecordService;
@Autowired
UserNoteService userNoteService;
@Autowired
UserNoteTagService userNoteTagService;
/**
*
* @author 2ing
* @createTime 2018年1月22日
* @remarks 管理员登录后首页
*/
@RequestMapping(value="/index", method=RequestMethod.GET)
public ModelAndView adminIndex(final Model model, final HttpServletRequest request, HttpServletResponse response){
try {
//获取当前用户
UserInfo user = (UserInfo)SecurityUtils.getSubject().getPrincipal();
AdminIndexModel adminIndexModel = userInfoService.getAdminIndexModel();
List<NoticeModel> notices = noticeService.getIndexNoticeModel();
List<LoginRecordModel> loginRecords = userLoginRecordService.getIndexLoginRecordModel(user.getUserId());
model.addAttribute(ConstantUtil.ADMININDEXMODEL, adminIndexModel);
model.addAttribute(ConstantUtil.NOTICEMODELS, notices);
model.addAttribute(ConstantUtil.LOGINRECORDMODELS, loginRecords);
} catch (Exception e) {
e.printStackTrace();
}
//模板没写Null判断
model.addAttribute(ConstantUtil.CONTENT, ConstantUtil.INDEX);
return new ModelAndView(ConstantUtil.ADMINMAIN);
}
/**
*
* @author 2ing
* @createTime 2018年1月22日
* @remarks 系统邮箱设置页面
*/
@RequestMapping(value="/systemMail", method=RequestMethod.GET)
public ModelAndView systemMail(final Model model, final HttpServletRequest request, HttpServletResponse response){
model.addAttribute(ConstantUtil.EMAILHOST, EmailConfig.getHost());
model.addAttribute(ConstantUtil.EMAILUSERNAME, EmailConfig.getUsername());
model.addAttribute(ConstantUtil.EMAILPASSWORD, EmailConfig.getPassword());
model.addAttribute(ConstantUtil.CONTENT, ConstantUtil.SYSTEMMAIL);
return new ModelAndView(ConstantUtil.ADMINMAIN);
}
/**
*
* @author 2ing
* @createTime 2018年1月24日
* @remarks AJAX测试公用email账号
*/
@RequestMapping(value = "/emailConnectTest", method = RequestMethod.POST)
@ResponseBody
public String emailConnectTest(String host,String username, String password) {
try {
EmailUtil.emailconnectTest(host, username, password);
return ConstantUtil.AJAX_SUCCESS;
} catch (Exception e) {
e.printStackTrace();
return ConstantUtil.AJAX_ERROR;
}
}
/**
*
* @author 2ing
* @createTime 2018年1月24日
* @remarks 保存邮箱信息
*/
@RequestMapping(value="/emailSave", method=RequestMethod.POST)
public ModelAndView emailSave(final Model model, final HttpServletRequest request, HttpServletResponse response){
String host = request.getParameter("emailHost");
String username = request.getParameter("emailUserName");
String password = request.getParameter("emailPassword");
try {
EmailUtil.emailUtilSet(host, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return new ModelAndView(ConstantUtil.TOSYSTEMMAIL);
}
/**
*
* @author 2ing
* @createTime 2018年1月22日
* @remarks 公告notice管理
*/
@RequestMapping(value="/notices", method=RequestMethod.GET)
public ModelAndView notices(final Model model, final HttpServletRequest request, HttpServletResponse response){
String noticeTitle = request.getParameter("noticeTitle");
String pagenow = request.getParameter("pagenow");
Page<NoticeModel> noticesPage = null;
if(!StringUtil.isEmpty(pagenow)){
noticesPage = new Page<NoticeModel>(Integer.valueOf(pagenow).intValue(), 5);
}else{
noticesPage = new Page<NoticeModel>(1, 5);
}
try {
noticesPage = noticeService.getNoticeModelsByPageAndCondition(noticesPage, noticeTitle);//分页之后的信息
noticesPage.setTotal(noticeService.getAllNoticeNumByCondition(noticeTitle));//总数
//pagemodel
model.addAttribute(ConstantUtil.PAGEMODELS, noticesPage);
//用于pagemodel跳转的url
model.addAttribute(ConstantUtil.PAGEMODEL_URL, ConstantUtil.NOTICESURL);
//url参数
if(!StringUtil.isEmpty(noticeTitle)){
model.addAttribute(ConstantUtil.PAGEMODEL_PARAM, "noticeTitle="+noticeTitle);
}
} catch (Exception e) {
e.printStackTrace();
}
model.addAttribute(ConstantUtil.CONTENT, ConstantUtil.NOTICESPAGE);
return new ModelAndView(ConstantUtil.ADMINMAIN);
}
/**
*
* @author 2ing
* @createTime 2018年1月22日
* @remarks 公告notice删除
*/
@RequestMapping(value="/noticeDelete", method=RequestMethod.GET)
public ModelAndView noticeDelete(final Model model, final HttpServletRequest request, HttpServletResponse response){
String noticeId = request.getParameter("noticeId");
try {
noticeService.deleteNoticeById(Integer.valueOf(noticeId).intValue());
} catch (Exception e) {
e.printStackTrace();
}
return new ModelAndView(ConstantUtil.TONOTICESPAGE);
}
/**
*
* @author 2ing
* @createTime 2018年1月25日
* @remarks 编辑notice公告
*/
@RequestMapping(value="/notice", method=RequestMethod.GET)
public ModelAndView notice(final Model model, final HttpServletRequest request, HttpServletResponse response){
try {
String noticeId = request.getParameter("noticeId");
if(!StringUtil.isEmpty(noticeId)){
SysNotice notice = noticeService.getNoticeById(Integer.valueOf(noticeId).intValue());
model.addAttribute(ConstantUtil.NOTICE, notice);
}
} catch (Exception e) {
e.printStackTrace();
}
model.addAttribute(ConstantUtil.CONTENT, ConstantUtil.NOTICEPAGE);
return new ModelAndView(ConstantUtil.ADMINMAIN);
}
/**
*
* @author 2ing
* @createTime 2018年1月25日
* @remarks 公告notice保存
*/
@RequestMapping(value="/savenotice", method=RequestMethod.POST)
public ModelAndView savenotice(final Model model, final HttpServletRequest request, HttpServletResponse response){
try {
String noticeId = request.getParameter("noticeID");
String noticeTitle = request.getParameter("noticeTitle");
String noticeContent = request.getParameter("noticeContent");
SysNotice notice = null;
if(!StringUtil.isEmpty(noticeId)){//update
notice = noticeService.getNoticeById(Integer.valueOf(noticeId).intValue());
notice.setNoticeTitle(noticeTitle);
notice.setNoticeContent
没有合适的资源?快使用搜索试试~ 我知道了~
毕业设计项目,使用Java语言、mysql数据库,使用springboot+shiro+mybaits框架
共196个文件
java:60个
js:44个
ftl:32个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 163 浏览量
2024-02-24
12:59:52
上传
评论
收藏 6.58MB ZIP 举报
温馨提示
毕业设计项目,使用Java语言、mysql数据库,使用springboot+shiro+mybaits框架搭建,模板语言使用freemaker。.zip
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计项目,使用Java语言、mysql数据库,使用springboot+shiro+mybaits框架 (196个子文件)
mvnw.cmd 5KB
bootstrap.css 138KB
hover.css 123KB
style.css 77KB
bootstrap.min.css 44KB
font-awesome.css 22KB
google_font.css 15KB
barchart.css 7KB
bootstrap-material-datetimepicker.css 4KB
custom.css 2KB
fabochart.css 2KB
demo-page.css 2KB
animate.css 2KB
jqvmap.css 1KB
atlas.css 966B
visitor.css 430B
admin.css 357B
jqcandlestick.css 164B
fontawesome-webfont.eot 37KB
pageModel.ftl 4KB
main.ftl 4KB
main.ftl 4KB
letterSerach.ftl 3KB
index.ftl 3KB
letterUnread.ftl 3KB
notes.ftl 3KB
notice.ftl 3KB
newNote.ftl 3KB
index.ftl 2KB
systemMail.ftl 2KB
letterSended.ftl 2KB
password.ftl 2KB
userInfos.ftl 2KB
noteTags.ftl 2KB
notices.ftl 2KB
newNoteTag.ftl 2KB
letterNew.ftl 2KB
index.ftl 2KB
rightNav.ftl 2KB
noteTags.ftl 2KB
notes.ftl 2KB
head.ftl 2KB
head.ftl 2KB
rightNav.ftl 1KB
main.ftl 1KB
login.ftl 939B
password.ftl 902B
newpassword.ftl 830B
register.ftl 752B
rightNav_letter.ftl 503B
403.ftl 69B
.gitignore 255B
favicon-32.ico 4KB
favicon-16.ico 1KB
maven-wrapper.jar 46KB
AdminController.java 16KB
HomeController.java 12KB
UserController.java 10KB
LetterController.java 9KB
ShiroConfiguration.java 9KB
NotebookShiroRelam.java 6KB
LetterServiceImpl.java 5KB
UserNoteTagServiceImpl.java 4KB
EmailUtil.java 4KB
ConstantUtil.java 4KB
EmailController.java 4KB
UserNoteServiceImpl.java 3KB
UserInfoServiceImpl.java 3KB
CommonUtil.java 3KB
RedisTest.java 3KB
DateUtil.java 3KB
CommonController.java 2KB
UserInfo.java 2KB
UserInfoService.java 2KB
LetterService.java 2KB
NoticeServiceImpl.java 2KB
LetterModel.java 2KB
SysLetter.java 2KB
UserNote.java 2KB
UserNoteTagService.java 2KB
UserInfoMapper.java 2KB
UserNotetag.java 2KB
WebConfig.java 2KB
RedisCacheConfiguration.java 2KB
SysPermission.java 1KB
NoticeService.java 1KB
SysRole.java 1KB
SysNotice.java 1KB
ErrorPageConfig.java 1KB
UserNoteService.java 1KB
UserLoginRecordServiceImpl.java 1KB
UserLoginrecord.java 1KB
NoticeMapper.java 1KB
NoticeModel.java 1KB
EmailConfig.java 1KB
PasswordUtil.java 1KB
LetterMapper.java 993B
UserNoteMapper.java 992B
EmailTest.java 990B
UserFavorite.java 934B
共 196 条
- 1
- 2
资源评论
极致人生-010
- 粉丝: 3418
- 资源: 3074
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功