
com.kedauis.system.web.controller.common.BaseController Maven / Gradle / Ivy
package com.kedauis.system.web.controller.common;
import com.kedauis.system.model.SysEnumItem;
import com.kedauis.system.model.SysUser;
import com.kedauis.common.model.BaseMessage;
import com.kedauis.system.service.EnumService;
import com.kedauis.system.service.SequenceService;
import com.kedauis.util.StaticEnum;
import com.kedauis.util.ConfigUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 项目名称:kd-uip
* 类描述:
* 创建人:QiuYu
* 创建时间:2017/12/11 14:09
* 修改人:QiuYu
* 修改时间:2018-3-27 08:54:01
* 修改备注:去除内置的BaseMessage对象,单例模式可导致线程安全问题
*/
public class BaseController {
@Autowired
private EnumService enumService;
@Autowired
private SequenceService sequenceService;
@Autowired
protected ConfigUtil configUtil;
/**
* 获取Request对象
* @return Current Request
*/
protected HttpServletRequest getRequest(){
return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
}
/**
* 获取Response对象
* @return Current Response
*/
protected HttpServletResponse getResponse(){
return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
}
/**
* 获取Session对象
* @return Current Session
*/
protected HttpSession getSession(){
return this.getRequest().getSession();
}
/**
* 获取登陆用户对象
* @return LoginUser
*/
protected SysUser getLoginUser(){
return (SysUser)this.getSession().getAttribute(StaticEnum.LOGIN_USER);
}
public EnumService getEnumService() {
return enumService;
}
public void setEnumService(EnumService enumService) {
this.enumService = enumService;
}
/**
* 获取对应的枚举类型下的枚举信息
* @param enumTypeCode
* @return 枚举信息列表
*/
protected List getEnumItemsByTypeCode(String enumTypeCode){
return enumService.qryEnumItemsByTypeCode(enumTypeCode);
}
/**
* 根据枚举类型编码以及枚举值获取对应类型下的枚举信息
* @param enumTypeCode 枚举类型编码
* @param enumItemValue 枚举值
* @return 检索的枚举值
*/
protected SysEnumItem getEnumItemByTypeCodeAndValue(String enumTypeCode, String enumItemValue){
Map params = new HashMap();
params.put("enumTypeCode", enumTypeCode);
params.put("enumItemValue", enumItemValue);
return enumService.qryEnumItemsByTypeCodeAndValue(params);
}
/**
* author QiuYu
* date 2018/3/29
* time 17:34
* description 获取序列下一个值
* @param seqCode 序列编号
* @return 序列
*/
protected String nextVal(String seqCode){
return sequenceService.nextVal(seqCode);
}
/**
* author QiuYu
* date 2018/3/29
* time 17:35
* description 根据序列编号和要使用的数量获取序列集合
* @param seqCode 序列编号
* @param seqLen 要获取的序列长度
* @return 序列值数组
*/
protected String[] nextVals(String seqCode, Integer seqLen){
return sequenceService.nextVals(seqCode, seqLen);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy