| package com.ruoyi.common.core.controller; | 
|   | 
| import com.ruoyi.common.constant.HttpStatus; | 
| import com.ruoyi.common.core.domain.AjaxResult; | 
| import com.ruoyi.common.core.domain.model.LoginUser; | 
| import com.ruoyi.common.core.page.TableDataInfo; | 
| import com.ruoyi.common.utils.DateUtils; | 
| import com.ruoyi.common.utils.SecurityUtils; | 
| import com.ruoyi.common.utils.StringUtils; | 
| import org.slf4j.Logger; | 
| import org.slf4j.LoggerFactory; | 
| import org.springframework.web.bind.WebDataBinder; | 
| import org.springframework.web.bind.annotation.InitBinder; | 
|   | 
| import java.beans.PropertyEditorSupport; | 
| import java.util.Date; | 
| import java.util.List; | 
|   | 
| /** | 
|  * web层通用数据处理 | 
|  *  | 
|  * @author ruoyi | 
|  */ | 
| public class BaseController | 
| { | 
|     protected final Logger logger = LoggerFactory.getLogger(this.getClass()); | 
|   | 
|     /** | 
|      * 将前台传递过来的日期格式的字符串,自动转化为Date类型 | 
|      */ | 
|     @InitBinder | 
|     public void initBinder(WebDataBinder binder) | 
|     { | 
|         // Date 类型转换 | 
|         binder.registerCustomEditor(Date.class, new PropertyEditorSupport() | 
|         { | 
|             @Override | 
|             public void setAsText(String text) | 
|             { | 
|                 setValue(DateUtils.parseDate(text)); | 
|             } | 
|         }); | 
|     } | 
|   | 
|     /** | 
|      * 设置请求分页数据 | 
|      */ | 
| //    protected void startPage() | 
| //    { | 
| //        PageUtils.startPage(); | 
| //    } | 
|   | 
|     /** | 
|      * 设置请求分页数据 | 
|      */ | 
| //    protected void startPage(Integer pageNum,Integer pageSize) | 
| //    { | 
| //        PageUtils.startPage(pageNum,pageSize); | 
| //    } | 
|   | 
|     /** | 
|      * 设置请求排序数据 | 
|      */ | 
|     protected void startOrderBy() | 
|     { | 
| //        PageDomain pageDomain = TableSupport.buildPageRequest(); | 
| //        if (StringUtils.isNotEmpty(pageDomain.getOrderBy())) | 
| //        { | 
| //            String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy()); | 
| //            PageHelper.orderBy(orderBy); | 
| //        } | 
|     } | 
|   | 
|     /** | 
|      * 清理分页的线程变量 | 
|      */ | 
| //    protected void clearPage() | 
| //    { | 
| //        PageUtils.clearPage(); | 
| //    } | 
|   | 
|     /** | 
|      * 响应请求分页数据 | 
|      */ | 
|     @SuppressWarnings({ "rawtypes", "unchecked" }) | 
|     protected TableDataInfo getDataTable(List<?> list) | 
|     { | 
|         TableDataInfo rspData = new TableDataInfo(); | 
|         rspData.setCode(HttpStatus.SUCCESS); | 
|         rspData.setMsg("查询成功"); | 
|         rspData.setRecords(list); | 
| //        rspData.setTotal(new PageInfo(list).getTotal()); | 
|         return rspData; | 
|     } | 
|   | 
|     /** | 
|      * 返回成功 | 
|      */ | 
|     public AjaxResult success() | 
|     { | 
|         return AjaxResult.success(); | 
|     } | 
|   | 
|     /** | 
|      * 返回失败消息 | 
|      */ | 
|     public AjaxResult error() | 
|     { | 
|         return AjaxResult.error(); | 
|     } | 
|   | 
|     /** | 
|      * 返回成功消息 | 
|      */ | 
|     public AjaxResult success(String message) | 
|     { | 
|         return AjaxResult.success(message); | 
|     } | 
|      | 
|     /** | 
|      * 返回成功消息 | 
|      */ | 
|     public AjaxResult success(Object data) | 
|     { | 
|         return AjaxResult.success(data); | 
|     } | 
|   | 
|     /** | 
|      * 返回失败消息 | 
|      */ | 
|     public AjaxResult error(String message) | 
|     { | 
|         return AjaxResult.error(message); | 
|     } | 
|   | 
|     /** | 
|      * 返回警告消息 | 
|      */ | 
|     public AjaxResult warn(String message) | 
|     { | 
|         return AjaxResult.warn(message); | 
|     } | 
|   | 
|     /** | 
|      * 响应返回结果 | 
|      *  | 
|      * @param rows 影响行数 | 
|      * @return 操作结果 | 
|      */ | 
|     protected AjaxResult toAjax(int rows) | 
|     { | 
|         return rows > 0 ? AjaxResult.success() : AjaxResult.error(); | 
|     } | 
|   | 
|     /** | 
|      * 响应返回结果 | 
|      *  | 
|      * @param result 结果 | 
|      * @return 操作结果 | 
|      */ | 
|     protected AjaxResult toAjax(boolean result) | 
|     { | 
|         return result ? success() : error(); | 
|     } | 
|   | 
|     /** | 
|      * 页面跳转 | 
|      */ | 
|     public String redirect(String url) | 
|     { | 
|         return StringUtils.format("redirect:{}", url); | 
|     } | 
|   | 
|     /** | 
|      * 获取用户缓存信息 | 
|      */ | 
|     public LoginUser getLoginUser() | 
|     { | 
|         return SecurityUtils.getLoginUser(); | 
|     } | 
|   | 
|     /** | 
|      * 获取登录用户id | 
|      */ | 
|     public Long getUserId() | 
|     { | 
|         return getLoginUser().getUserId(); | 
|     } | 
|   | 
|     /** | 
|      * 获取登录部门id | 
|      */ | 
|     public Long getDeptId() | 
|     { | 
|         return getLoginUser().getDeptId(); | 
|     } | 
|   | 
|     /** | 
|      * 获取登录用户名 | 
|      */ | 
|     public String getUsername() | 
|     { | 
|         return getLoginUser().getUsername(); | 
|     } | 
| } |