package com.slcf.controller;
|
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import com.slcf.pojo.MenuBean;
|
import com.slcf.pojo.SysLogBean;
|
import com.slcf.pojo.UserBean;
|
import com.slcf.service.LoginService;
|
import com.slcf.service.SysLogService;
|
import com.slcf.util.DESPlus;
|
|
@Controller
|
@RequestMapping("/login")
|
public class LoginController {
|
@Resource
|
LoginService loginService;
|
|
@Autowired
|
SysLogService sysLogService;
|
|
/**
|
* 获取菜单
|
* @param request
|
* @param id
|
* @return
|
*/
|
@RequestMapping("/login.action")
|
public String getMenuByUserId(HttpServletRequest request, @RequestParam(value = "uid") Integer id) {
|
String result = "";
|
try {
|
List<MenuBean> menuList = loginService.getMenuByUserId(id);
|
request.getSession().setAttribute("mlist", menuList);
|
result = "redirect:../index.jsp";
|
// result = "redirect:../home.jsp";
|
}catch(Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return result;
|
}
|
|
/**
|
* 用户登陆
|
*
|
* @param user
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/doLogin.action")
|
public Map<String, Object> doLoginByAccount(UserBean user, HttpServletRequest request) {
|
Map<String, Object> map = new HashMap<String, Object>();
|
try {
|
Integer i = null;
|
//密码DES加密
|
String user_password = new DESPlus().encrypt(user.getUser_password());
|
UserBean userBean = loginService.getUserInfoByAccount(user.getUser_account(), user_password);
|
if (userBean != null) {
|
// if (user.getUser_password().equals(userBean.getUser_password())) {
|
if (user_password.equals(userBean.getUser_password())) {
|
i = 0;// 登陆成功
|
map.put("id", userBean.getUser_id());
|
request.getSession().setAttribute("currentUser", userBean);
|
request.getSession().setAttribute("USER", userBean);
|
request.getSession().setAttribute("NAME", userBean.getUser_name());
|
request.getSession().setAttribute("ACCOUNT", userBean.getUser_account());
|
request.getSession().setAttribute("PASS", new DESPlus().decrypt(userBean.getUser_password()));
|
request.getSession().setAttribute("ID", userBean.getUser_id());
|
String roles = loginService.getRolesByUserId(userBean.getUser_id());
|
request.getSession().setAttribute("ROLEID", roles);
|
// request.getSession().setAttribute("CLIENTIP", request.getRemoteAddr());
|
|
// 插入日志
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(userBean.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("doLogin.action");
|
sysLog.setTts_keyname("登录系统");
|
sysLog.setModi_user(userBean.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
} else {
|
i = 1;// 登录密码不正确
|
}
|
} else {
|
i = 2;// 此账号不存在
|
}
|
map.put("i", i);
|
} catch (Exception e) {
|
System.out.println(e.getMessage());
|
}
|
return map;
|
}
|
|
/**
|
* 退出登陆
|
*
|
* @param request
|
* @return
|
*/
|
@RequestMapping("/quit.action")
|
public String quitLogin(HttpServletRequest request) {
|
String result = "";
|
try {
|
// 插入日志
|
UserBean user=(UserBean)request.getSession().getAttribute("USER");
|
SysLogBean sysLog = new SysLogBean();
|
sysLog.setLogin_no(user.getUser_account());
|
sysLog.setMachine_ip(request.getRemoteAddr());
|
sysLog.setForm_no("quit.action");
|
sysLog.setTts_keyname("退出系统");
|
sysLog.setModi_user(user.getUser_account());
|
sysLogService.insertSysLog(sysLog);
|
|
request.getSession().removeAttribute("currentUser");
|
request.getSession().invalidate();
|
} catch (Exception e) {
|
System.out.println(e.getMessage());
|
}
|
result = "redirect:../login.jsp";
|
return result;
|
}
|
}
|