package com.fh.controller.base; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import org.apache.shiro.session.Session; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.servlet.ModelAndView; import com.fh.entity.Page; import com.fh.entity.system.User; import com.fh.util.Const; import com.fh.util.Jurisdiction; import com.fh.util.Logger; import com.fh.util.PageData; import com.fh.util.UuidUtil; /** * 修改时间:2015、12、11 */ public class BaseController { protected Logger logger = Logger.getLogger(this.getClass()); private static final long serialVersionUID = 6357869213649815390L; /** * new PageData对象 * * @return */ public PageData getPageData() { return new PageData(this.getRequest()); } /** * 得到ModelAndView * * @return */ public ModelAndView getModelAndView() { return new ModelAndView(); } /** * 得到request对象 * * @return */ public HttpServletRequest getRequest() { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder .getRequestAttributes()).getRequest(); return request; } /** * 得到32位的uuid * * @return */ public String get32UUID() { return UuidUtil.get32UUID(); } /** * 得到分页列表的信息 * * @return */ public Page getPage() { return new Page(); } public static void logBefore(Logger logger, String interfaceName) { logger.info(""); logger.info("start"); logger.info(interfaceName); } public static void logAfter(Logger logger) { logger.info("end"); logger.info(""); } public String getUsername() { Session session = Jurisdiction.getSession(); User user = (User) session.getAttribute(Const.SESSION_USER); if (user != null) { return user.getUSERNAME(); } return "ERROR"; } public String getUserID() { Session session = Jurisdiction.getSession(); User user = (User) session.getAttribute(Const.SESSION_USER); if (user != null) { return user.getUSER_ID(); } return "ERROR"; } public String getRole() { Session session = Jurisdiction.getSession(); String role = (String) session.getAttribute(getUsername() + Const.ROLE_ID); return role; } public String getTeacherID() { Session session = Jurisdiction.getSession(); User user = (User) session.getAttribute(Const.SESSION_USER); if (user != null) { return user.getTeacherID(); } return "ERROR"; } public String getSchoolID() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.SCHOOL_ID); return schoolName; } public String getSchoolName() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.SCHOOL_NAME); return schoolName; } public String getGradeID() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.GRADE_ID); return schoolName; } public String getGradeName() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.GRADE_NAME); return schoolName; } public String getSubjectId() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.SUBJECT_ID); return schoolName; } public String getSubjectName() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.SUBJECT_NAME); return schoolName; } public String getClassId() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.CLASS_ID); return schoolName; } public String getClassName() { Session session = Jurisdiction.getSession(); String schoolName = (String) session.getAttribute(getUsername() + Const.CLASS_NAME); return schoolName; } public String getCookieLanguage() { Cookie[] cookies = getRequest().getCookies(); if (cookies != null) { for (Cookie cookie : cookies) { if (cookie.getName().equals("lang")) { return cookie.getValue(); } } } return null; } public String getLang() { String lang = getCookieLanguage(); if (lang == null) { lang = getRequest().getLocale().getLanguage(); Cookie cookies = new Cookie("lang", lang); } return lang; } public boolean isChineseLanguageClient() { String lang = getLang(); if (lang != null && lang.length() >= 2) { lang = lang.substring(0, 2); } return "zh".equals(getLang()); } }