package com.newvideo.controller.admin.login; import java.io.PrintWriter; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import net.sf.json.JSONObject; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.newvideo.domain.AdminInfo; import com.newvideo.service.imp.AdminUserService; import com.newvideo.service.imp.ConfigService; import com.newvideo.util.Constant; import com.newvideo.util.IPUtil; import com.newvideo.util.StringUtil; import com.newvideo.util.email.MailSenderUtil; @Controller @RequestMapping("admin/new/api/login") public class LoginController { @Resource private ConfigService configService; @Resource private AdminUserService adminUserService; @RequestMapping("adminLogin") public void adminLogin(String username,String pwd,String code,HttpServletRequest request,PrintWriter out) { System.out.println("username"+username); System.out.println("pwd"+pwd); Map map = configService.getConfigAsMap(); JSONObject json = new JSONObject(); if (!StringUtil.isNullOrEmpty(map.get("login_permission")) && !map.get("login_permission").equalsIgnoreCase(username)) { json.put("code","1"); json.put("error", "没有登陆权限"); out.print(json); return ; } String ocode = request.getSession().getAttribute(Constant.RANDKEY) + ""; request.getSession().removeAttribute(Constant.RANDKEY); if (StringUtil.isNullOrEmpty(code) || !code.equalsIgnoreCase(ocode)) { json.put("code","1"); json.put("error", "验证码错误"); out.print(json); return; } else { AdminInfo info = adminUserService.login(username.trim(), pwd.trim()); if (info == null) { // MailSenderUtil.sendEmail("1101184511@qq.com", "影音后台登录", username.trim() + "--" + "登录失败 IP:" // + IPUtil.getRemotIP(request) + "--" + IPUtil.getIPInfo(IPUtil.getRemotIP(request))); json.put("code","1"); json.put("error", "用户名或密码错误"); out.print(json); return; } else { request.getSession().setAttribute(Constant.ADMIN, info); // MailSenderUtil.sendEmail("1101184511@qq.com", "影音后台登录", username.trim() + "--" + "登录成功 IP:" // + IPUtil.getRemotIP(request) + "--" + IPUtil.getIPInfo(IPUtil.getRemotIP(request))); json.put("code","0"); json.put("success", "登陆成功"); out.print(json); return; } } } @RequestMapping("loginExit") public String loginExit(HttpServletRequest request,PrintWriter out) { request.getSession().removeAttribute("ADMIN_INFO"); request.getSession().invalidate(); return "redirect:/admin/new/login.html"; } @RequestMapping("getLoginName") public void getLoginName(HttpServletRequest request,PrintWriter out){ AdminInfo info = (AdminInfo) request.getSession().getAttribute(Constant.ADMIN); JSONObject json = new JSONObject(); if(info != null){ Gson gson =new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create(); json.put("code", "0"); json.put("info", gson.toJson(info)); }else{ json.put("code", "1"); } out.print(json); } }