类 SystemController

所有已实现的接口:
org.springframework.beans.factory.InitializingBean
直接已知子类:
CaptchaController, HttpEngineApi, IndexController, PlatformAdapterController, PushController

public abstract class SystemController extends AbstractFileOperateSpiController
系统控制器对象,业务所有 Controller 对象,都要继承该对象。
作者:
时克英
  • 构造器详细资料

    • SystemController

      public SystemController()
  • 方法详细资料

    • updateLoginUserRoleListInCache

      protected void updateLoginUserRoleListInCache(Long userId)
      更新给定用户登录缓存中的角色集合内容,roleIds。
           1) 当用户变更角色后,可以直接刷新界面(重新请求用户信息)获取新的对应菜单权限。
       
      参数:
      userId - 用户ID
    • getUserLoginCache

      protected UserLoginCache getUserLoginCache()
    • getNotificationTemplateCache

      protected NotificationTemplateCache getNotificationTemplateCache()
      获得通知提醒模板配置缓存。
      返回:
    • systemLogSuccess

      protected void systemLogSuccess(String userName, com.walker.web.log.OperateUser operateUser, com.walker.web.log.BusinessType businessType, String title, String input, String output)
      写入成功操作日志
      参数:
      userName - 当前用户名,可以是登录ID或名字,可选
      operateUser - 操作用户类型
      businessType - 业务类型
      title - 标题描述,可选
      input - 输入参数,可选
      output - 输出参数,可选
    • systemLogError

      protected void systemLogError(String userName, com.walker.web.log.OperateUser operateUser, com.walker.web.log.BusinessType businessType, String title, String input, String error)
      写入错误日志
      参数:
      userName - 当前用户名,可以是登录ID或名字,可选
      operateUser - 操作用户类型,可选
      businessType - 业务类型,可选
      title - 标题描述,可选
      input - 输入参数,可选
      error - 错误内容,必填
    • getLoginStrategyManager

      protected LoginStrategyManager getLoginStrategyManager()
      返回登录策略管理器对象
      返回:
    • getCurrentWebUserAgent

      protected com.walker.web.WebUserAgent getCurrentWebUserAgent()
      返回当前web浏览器代理对象。
      返回:
    • getWebAgentService

      protected com.walker.web.WebAgentService getWebAgentService()
    • validateSmsCode

      protected boolean validateSmsCode(String code, String uuid)
      判断短信验证码是否正确。
      参数:
      code - 验证码
      uuid - 请求验证码标识
      返回:
    • sendSmsCodeValidation

      protected Map<String,Object> sendSmsCodeValidation(String phoneNumber)
      发送短信验证码。
      参数:
      phoneNumber - 手机号
      返回:
      返回前端需要的uuid,提交登录使用
      抛出:
      PlatformRuntimeException
    • getOwner

      protected long getOwner()
      返回用户归属值,如果是平台为'-1',如果为租户(商户)则为定义的商户ID。
           注意要点:
           1)因为系统框架中用户是长整形(Long),但商户中是(int)因此在实际添加商户数据时,需要按照序列来计算,这样只需要整形即可。
       
      返回:
    • getCurrentOrgMenuScope

      protected int getCurrentOrgMenuScope()
      返回当前用户所在顶级单位,使用的菜单范围:平台0,商户(顶级独立单位菜单范围)4,后续可能会有其他值。
      返回:
    • getDictName

      protected String getDictName(long dictCode)
      根据字典数据code,返回字典项名称。
      参数:
      dictCode - 字典项编码(主键)
      返回:
    • getDeptName

      protected String getDeptName(long deptId)
      返回给定机构的名字。
      参数:
      deptId - 机构ID
      返回:
    • getDept

      protected S_dept getDept(long deptId)
      返回给定id的部门对象
      参数:
      deptId - 部门ID
      返回:
    • getUser

      public S_user_core getUser(long userId)
      从缓存中返回给定的用户
      参数:
      userId - 用户id
      返回:
    • downloadLocalImportTemplate

      protected void downloadLocalImportTemplate(String tableName)
      下载数据导入模板,该模板由系统自动生成。
      业务需要提供数据库对应的'表名称',如:s_user_core
      参数:
      tableName - 表名
    • getDictCacheProvider

      protected DictCacheProvider getDictCacheProvider()
      返回数据字典缓存对象。

      注意:这种写法后续要改掉,统一由平台自动注入,无需单独设置。
      返回:
    • getDataImportEngine

      protected PlatformDataImportEngine getDataImportEngine()
      返回数据导入引擎实现对象,用来完成 Excel 导入功能。
      返回:
    • getUserCacheProvider

      public UserCacheProvider getUserCacheProvider()
    • getDeptCacheProvider

      public DeptCacheProvider getDeptCacheProvider()
    • getUserRootOrgId

      protected long getUserRootOrgId(long userId)
      返回给定用户的顶级机构ID。
      参数:
      userId -
      返回:
    • getRootOrgIdByDept

      protected long getRootOrgIdByDept(long deptId)
      根据机构(部门等非顶级ID)返回顶级机构ID。
      参数:
      deptId -
      返回:
    • getOrgListScope

      protected List<S_dept> getOrgListScope()
      返回当前登录用户可选择的根机构列表,即:第一级机构,通常是集团公司等。

      这些也称为多租户,系统提供多单位(独立)维护,不同独立单位由各自管理员自行维护。
           1.超级管理员可以看到所有独立机构列表
           2.单位用户只能看到本单位(一个机构)
       
      返回:
    • setDeptCacheProvider

      public void setDeptCacheProvider(DeptCacheProvider deptCacheProvider)
    • setUserCacheProvider

      public void setUserCacheProvider(UserCacheProvider userCacheProvider)
    • setPlatformDataImportEngine

      public void setPlatformDataImportEngine(PlatformDataImportEngine platformDataImportEngine)
    • setDictCacheProvider

      public void setDictCacheProvider(DictCacheProvider dictCacheProvider)
    • setPushManager

      public void setPushManager(com.walker.push.PushManager pushManager)
    • setSmsCaptchaProvider

      public void setSmsCaptchaProvider(com.walker.web.CaptchaProvider<com.walker.web.CaptchaResult> smsCaptchaProvider)
    • setCaptchaCacheProvider

      public void setCaptchaCacheProvider(com.walker.cache.CacheProvider<String> captchaCacheProvider)
    • getSmsCaptchaProvider

      public com.walker.web.CaptchaProvider<com.walker.web.CaptchaResult> getSmsCaptchaProvider()
    • getCaptchaCacheProvider

      public com.walker.cache.CacheProvider<String> getCaptchaCacheProvider()
    • getUserService

      protected UserServiceImpl getUserService()
    • getPushManager

      protected com.walker.push.PushManager getPushManager()
      返回推送管理器对象,只有在特殊情况下需要业务直接调用该对象。
      返回:
    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      抛出:
      Exception