| | |
| | | |
| | | import java.beans.PropertyEditorSupport; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.web.bind.WebDataBinder; |
| | |
| | | |
| | | /** |
| | | * web层通用数据处理 |
| | | * |
| | | * |
| | | * @author ruoyi |
| | | */ |
| | | public class BaseController |
| | | { |
| | | public class BaseController { |
| | | protected final Logger logger = LoggerFactory.getLogger(this.getClass()); |
| | | |
| | | /** |
| | | * 将前台传递过来的日期格式的字符串,自动转化为Date类型 |
| | | */ |
| | | @InitBinder |
| | | public void initBinder(WebDataBinder binder) |
| | | { |
| | | public void initBinder(WebDataBinder binder) { |
| | | // Date 类型转换 |
| | | binder.registerCustomEditor(Date.class, new PropertyEditorSupport() |
| | | { |
| | | binder.registerCustomEditor(Date.class, new PropertyEditorSupport() { |
| | | @Override |
| | | public void setAsText(String text) |
| | | { |
| | | public void setAsText(String text) { |
| | | setValue(DateUtils.parseDate(text)); |
| | | } |
| | | }); |
| | |
| | | /** |
| | | * 设置请求分页数据 |
| | | */ |
| | | protected void startPage() |
| | | { |
| | | protected void startPage() { |
| | | PageDomain pageDomain = TableSupport.buildPageRequest(); |
| | | Integer pageNum = pageDomain.getPageNum(); |
| | | Integer pageSize = pageDomain.getPageSize(); |
| | | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) |
| | | { |
| | | if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) { |
| | | String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy()); |
| | | Boolean reasonable = pageDomain.getReasonable(); |
| | | PageHelper.startPage(pageNum, pageSize, orderBy).setReasonable(reasonable); |
| | |
| | | /** |
| | | * 设置请求排序数据 |
| | | */ |
| | | protected void startOrderBy() |
| | | { |
| | | protected void startOrderBy() { |
| | | PageDomain pageDomain = TableSupport.buildPageRequest(); |
| | | if (StringUtils.isNotEmpty(pageDomain.getOrderBy())) |
| | | { |
| | | if (StringUtils.isNotEmpty(pageDomain.getOrderBy())) { |
| | | String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy()); |
| | | PageHelper.orderBy(orderBy); |
| | | } |
| | |
| | | /** |
| | | * 响应请求分页数据 |
| | | */ |
| | | @SuppressWarnings({ "rawtypes", "unchecked" }) |
| | | protected TableDataInfo getDataTable(List<?> list) |
| | | { |
| | | @SuppressWarnings({"rawtypes", "unchecked"}) |
| | | protected TableDataInfo getDataTable(List<?> list) { |
| | | TableDataInfo rspData = new TableDataInfo(); |
| | | rspData.setCode(HttpStatus.SUCCESS); |
| | | rspData.setMsg("查询成功"); |
| | |
| | | return rspData; |
| | | } |
| | | |
| | | protected Map<String, Object> getDataTable(Object object,Integer total) { |
| | | Map<String, Object> rspData = new HashMap<>(); |
| | | rspData.put("code", HttpStatus.SUCCESS); |
| | | rspData.put("msg", "查询成功"); |
| | | rspData.put("data", object); |
| | | rspData.put("total", total); |
| | | return rspData; |
| | | } |
| | | |
| | | /** |
| | | * 响应请求分页数据 |
| | | */ |
| | | @SuppressWarnings({ "rawtypes", "unchecked" }) |
| | | protected TableDataInfo getDataTable2(List<?> list,List<?> list2) |
| | | { |
| | | @SuppressWarnings({"rawtypes", "unchecked"}) |
| | | protected TableDataInfo getDataTable2(List<?> list, List<?> list2) { |
| | | TableDataInfo rspData = new TableDataInfo(); |
| | | rspData.setCode(HttpStatus.SUCCESS); |
| | | rspData.setMsg("查询成功"); |
| | |
| | | /** |
| | | * 响应批量保存数据 |
| | | */ |
| | | @SuppressWarnings({ "rawtypes", "unchecked" }) |
| | | protected TableDataInfo saveDataTable(List<?> list) |
| | | { |
| | | @SuppressWarnings({"rawtypes", "unchecked"}) |
| | | protected TableDataInfo saveDataTable(List<?> list) { |
| | | TableDataInfo rspData = new TableDataInfo(); |
| | | rspData.setCode(HttpStatus.SUCCESS); |
| | | rspData.setMsg("保存成功"); |
| | |
| | | /** |
| | | * 响应请求分页数据 |
| | | */ |
| | | @SuppressWarnings({ "rawtypes", "unchecked" }) |
| | | protected TableDataInfo getCustomDataTable(List<?> list,Integer pageNum,Integer pageSize) |
| | | { |
| | | int size=list.size(); |
| | | int pageStart=pageNum==1?0:(pageNum-1)*pageSize;//截取的开始位置 |
| | | int pageEnd=size<pageNum*pageSize?size:pageNum*pageSize;//截取的结束位置 |
| | | if(size>pageStart){ |
| | | list =list.subList(pageStart, pageEnd); |
| | | @SuppressWarnings({"rawtypes", "unchecked"}) |
| | | protected TableDataInfo getCustomDataTable(List<?> list, Integer pageNum, Integer pageSize) { |
| | | int size = list.size(); |
| | | int pageStart = pageNum == 1 ? 0 : (pageNum - 1) * pageSize;//截取的开始位置 |
| | | int pageEnd = size < pageNum * pageSize ? size : pageNum * pageSize;//截取的结束位置 |
| | | if (size > pageStart) { |
| | | list = list.subList(pageStart, pageEnd); |
| | | } |
| | | |
| | | TableDataInfo rspData = new TableDataInfo(); |
| | |
| | | /** |
| | | * 返回成功 |
| | | */ |
| | | public AjaxResult success() |
| | | { |
| | | public AjaxResult success() { |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | /** |
| | | * 返回失败消息 |
| | | */ |
| | | public AjaxResult error() |
| | | { |
| | | public AjaxResult error() { |
| | | return AjaxResult.error(); |
| | | } |
| | | |
| | | /** |
| | | * 返回成功消息 |
| | | */ |
| | | public AjaxResult success(String message) |
| | | { |
| | | public AjaxResult success(String message) { |
| | | return AjaxResult.success(message); |
| | | } |
| | | |
| | | /** |
| | | * 返回失败消息 |
| | | */ |
| | | public AjaxResult error(String message) |
| | | { |
| | | public AjaxResult error(String message) { |
| | | return AjaxResult.error(message); |
| | | } |
| | | |
| | | /** |
| | | * 响应返回结果 |
| | | * |
| | | * |
| | | * @param rows 影响行数 |
| | | * @return 操作结果 |
| | | */ |
| | | protected AjaxResult toAjax(int rows) |
| | | { |
| | | protected AjaxResult toAjax(int rows) { |
| | | return rows > 0 ? AjaxResult.success() : AjaxResult.error(); |
| | | } |
| | | |
| | | /** |
| | | * 响应返回结果 |
| | | * |
| | | * |
| | | * @param result 结果 |
| | | * @return 操作结果 |
| | | */ |
| | | protected AjaxResult toAjax(boolean result) |
| | | { |
| | | protected AjaxResult toAjax(boolean result) { |
| | | return result ? success() : error(); |
| | | } |
| | | |
| | | /** |
| | | * 页面跳转 |
| | | */ |
| | | public String redirect(String url) |
| | | { |
| | | public String redirect(String url) { |
| | | return StringUtils.format("redirect:{}", url); |
| | | } |
| | | |
| | | /** |
| | | * 获取用户缓存信息 |
| | | */ |
| | | public LoginUser getLoginUser() |
| | | { |
| | | public LoginUser getLoginUser() { |
| | | return SecurityUtils.getLoginUser(); |
| | | } |
| | | |
| | | /** |
| | | * 获取登录用户id |
| | | */ |
| | | public Long getUserId() |
| | | { |
| | | public Long getUserId() { |
| | | return getLoginUser().getUserId(); |
| | | } |
| | | |
| | | /** |
| | | * 获取登录部门id |
| | | */ |
| | | public Long getDeptId() |
| | | { |
| | | public Long getDeptId() { |
| | | return getLoginUser().getDeptId(); |
| | | } |
| | | |
| | | /** |
| | | * 获取登录用户名 |
| | | */ |
| | | public String getUsername() |
| | | { |
| | | public String getUsername() { |
| | | return getLoginUser().getUsername(); |
| | | } |
| | | |
| | | /** |
| | | * 获取当前登陆用户 |
| | | */ |
| | | public String getNickName() { |
| | | return getLoginUser().getUser().getNickName(); |
| | | } |
| | | } |