# 从 R2.6.5.3.1 升级到 R2.6.6.3.0

# 更新时间

2025 年 1 月 25 日

# 更新内容

  1. 接口安全问题修复-时间盲注。
  2. 精简版支持设置默认岗位
  3. 精简版支持工作区域维护。
  4. 精简版支持业务单元维护所属工作区域。
  5. 精简版获取当前用户上下文工具类中增加当前业务单元所属工作区域、当前工作区域所属机构。
  6. 日志相关表增加全局 id 和 traceid 字段,可用于追踪操作记录。
  7. 403、404 页面区分提示,访问存在但未授权的路由展示为 403 页面,访问不存在的路由展示为 404 页面。
  8. 支持文件预览。
  9. 支持签名密码的设置、修改、校验及加密方法。详见签名密码使用
  10. 提供验证用户密码的 service 方法。提供按照指定用户查询所有可登录部门、业务单元的 service。
  11. 支持获取当前 token 是否失效。
  12. 菜单管理一级菜单支持分页。
  13. 支持清除指定语言的翻译数据。
  14. 修复客户端计算机名不能为中文的 bug。
  15. 修复若干 bug。
  16. 优化部分用户体验。

# 前端升级步骤

  1. 请到 hos-app-web (opens new window) 代码仓库中 release-2.6.6.3.0 分支中将源码下载到本地。
  2. 如果自己业务工程中publicsrc/syssrc/App.vuesrc/main.jspackage.json.vue.config.js以及vue.config.user.js(新增) 的代码没有进行过手动修改的话,将该代码手动删除,然后将hos-app-webpublicsrc/syssrc/App.vuesrc/main.jspackage.json.vue.config.js以及vue.config.user.js的代码复制到本地工程即可。
  3. 如果自己业务工程中publicsrc/syssrc/App.vuesrc/main.jspackage.json以及vue.config.js 的代码进行过手动修改的话,请自行与hos-app-webpublicsrc/syssrc/App.vuesrc/main.jspackage.json以及vue.config.js的代码进行比对,手动进行同步并解决冲突代码。

# 后端升级步骤

  1. 在根 pom 文件中修改hos-app-dependencies的版本号为R2.6.6.3.0,修改hos-starter-dependencies的版本号为R1.5.3, 修改hos-security-dependencies的版本号为R1.0.8.3
<dependencyManagement>
    <dependencies>
       <dependency>
          <groupId>com.mediway.hos</groupId>
          <artifactId>hos-app-dependencies</artifactId>
          <version>R2.6.6.3.0</version>
          <type>pom</type>
          <scope>import</scope>
       </dependency>
        <dependency>
            <groupId>com.mediway.hos</groupId>
            <artifactId>hos-starter-dependencies</artifactId>
            <version>R1.5.3</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>com.mediway.hos</groupId>
            <artifactId>hos-security-dependencies</artifactId>
            <version>R1.0.8.3</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

# 文件预览

# jar 包引用

文件预览支持纯文本文件、图片文件、PDF 文件、office 文件及媒体文件的预览,根据项目需要选择对应的依赖包自行引入。
(1) 纯文本、图片、PDF 文件需要引入 hos-framework-preview-starter 依赖

  <dependency>
      <groupId>com.mediway.hos</groupId>
      <artifactId>hos-framework-preview-starter</artifactId>
  </dependency>

(2) office 文件需要引入 hos-framework-preview-office-starter 依赖

  <dependency>
      <groupId>com.mediway.hos</groupId>
      <artifactId>hos-framework-preview-office-starter</artifactId>
  </dependency>

office 文件预览需要借助第三方服务 openoffice/libreoffice。 如果是服务端,则需要在服务器安装 openoffice/libreoffice;可参考Linux 下安装 LibreOffice (opens new window)
如果本地开发需要自行安装,可以从https://gitee.com/kekingcn/file-online-preview下载开源项目,将其中的LibreOfficePortable复制到本地目录,并在yml文件(hos.preview.office.home)配置其中libreoffice目录的路径。

(3) 媒体文件需要引入 hos-framework-preview-media-starter 依赖

  <dependency>
      <groupId>com.mediway.hos</groupId>
      <artifactId>hos-framework-preview-media-starter</artifactId>
  </dependency>
# 配置及使用
hos:
  ##### 基础配置
  server-url: #默认使用http://localhost:8080
  preview:
    enable: # 是否开启文件预览,默认false
    base:
      tmpDir: #临时文件目录 默认使用java.io.tmpdir/preview
    previewlPath: #文件预览路径,预览接口的根路径。默认使用file-preview
    watermark:
      enable: #是否开启水印 默认false
      watermarkTxtv: #水印文字内容
      watermarkTxtHandler: #如需定制水印需要实现接口WatermarkTxtSupplier,配置bean名称
    ##### 使用office预览时需配置
    office:
      home: #openoffice或LibreOffice  home路径(示例:D:/devtools/LibreOfficePortable/App/libreoffice)
      previewType: #office类型文档样式,默认为图片(image),可配置为pdf(预览时也有按钮切换)

整个文件的预览都是统一的接口,默认为:http://ip:port/file-preview/onlinePreview?fileId=<fileId>,其中‘file-preview’可通过配置进行更改。

# 文件管理部分接口新增参数

文件上传的接口新增两个参数分别是:文件md5值、文件所属分类fileCategory。如无需特殊设置这两个属性值,可传空或null即可,其均有默认值。

# 使用配置

签名密码相关配置

hos:
  signature: #签名密码相关配置
    password: #签名密码相关配置
      encode: BCRYPT #数据库中密码加密方式
      secret: 1234567890123456 #前后端密码传输SM4加密秘钥

# 升级数据库

请根据数据库实际使用情况,仔细核对数据库类型,下载当前使用的数据库对应的升级脚本。

(以下为 mysql 的升级示例)

支持的数据库

  1. 前往 Gitlab 下载页面(http://119.255.194.80/hos/demo/hos-app-demo/-/blob/2.6.6.3.0/project-strcutre/project-strcutre-demo/oa-doc/data/mysql/2.6.6.3.0) , 用户名/密码:hosuser/99ahivPJt
  2. 下载hos-app-base-mysql-2.6.5.3.0~2.6.6.3.0.sql文件
  3. 执行更新 SQLhos-app-base-mysql-2.6.5.3.0~2.6.6.3.0.sql
    注:因时间原因,该版本只支持高斯数据库、人大金仓数据库、南大通用8C数据库和mysql数据库。
    高斯数据库支持兼容oracle模式,如在oracle模式下执行sql报错,可优先参考 高斯数据库模式兼容问题