# 从 2.4.0 升级到 2.5.0
# 更新时间
2023 年 11 月 13 日
# 更新内容
# 前端升级步骤
- 请到 hos-app-web (opens new window) 代码仓库中
release-2.5.0
分支中将源码下载到本地; - 如果自己业务工程中
src/sys
的代码没有进行过手动修改的话,将该代码手动删除,然后将hos-app-web
中src/sys
的代码复制到本地工程即可; - 如果自己业务工程中
src/sys
的代码进行过手动修改的话,请自行与hos-app-web
中src/sys
的代码进行比对,手动进行同步并解决冲突代码; - 本次升级改动文件路径除
src/sys
外,其他升级改动文件路径分别为/bin
、/public/pageOffice
、/public/static
、/public/index.html
、/src/biz/enum/grantTypeEnum.js
、/src/biz/mixins/logoutMixin.js
、/src/biz/views
; - 若项目中未对以上文件进行修改,可直接替换;若有修改,进行对比解决冲突;
- 如果后端未引入消息中心,请手动将
/src/sys/hos-app-base/components/menu/DropDownMenu.vue
文件中<div class="msgBell" v-if="true">
标签的v-if
改为false
。
<!-- Bell按钮 打开 -->
<div class="msgBell" v-if="true">
<msgBell></msgBell>
</div>
<!-- Bell按钮 关闭 -->
<div class="msgBell" v-if="false">
<msgBell></msgBell>
</div>
# 后端升级步骤
- 在根 pom 文件中修改
hos-app-dependencies
的版本号为2.5.0-RELEASE
, 修改hos-starter-dependencies
的版本号为1.3.0-RELEASE
,修改hos-security-dependencies
的版本号为1.0.2-RELEASE
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-dependencies</artifactId>
<version>2.5.0-RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-starter-dependencies</artifactId>
<version>1.3.0-RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-security-dependencies</artifactId>
<version>1.0.2-RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
- 在启动类中删除以下依赖,hos-app-core模块和hos-app-org模块进行了拆分,上面已经引了拆分后的模块, hos-app-op模块和hos-app-orgapi模块整合到hos-app-core模块和hos-app-org模块了。因此可以删掉。
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-op</artifactId>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-orgapi</artifactId>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-core</artifactId>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-org</artifactId>
</dependency>
- 2.5.0版本对工程结构进行了重构,因此升级之后会有部分变化,在启动类 pom 文件中添加以下依赖。(如果不引用消息中心模块,在 yml 文件中可不用配消息中心的相关配置)
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-org-controller</artifactId>
</dependency>
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-core-controller</artifactId>
</dependency>
<!--国际化的依赖-->
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-i18n</artifactId>
</dependency>
<!--消息中心的依赖-->
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-message</artifactId>
</dependency>
<!--打印设计器的依赖-->
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-print</artifactId>
</dependency>
<!--文件的依赖-->
<dependency>
<groupId>com.mediway.hos</groupId>
<artifactId>hos-app-file</artifactId>
</dependency>
1.部分公共的工具类移到[hos-framework-common-starter]中,路径变为:com.mediway.hos.common.util......
2.[hos-framework-base-starter]中部分类移到[hos-framework-database-starter]中,且后者的pom文件中
已引用了前者,因此不需要再单独引用前者jar包。路径变为:com.mediway.hos.database......
3.@OpenApi注解移到[hos-framework-openapi-starter]中,路径变为:com.mediway.hos.openapi.aop.OpenApi
# 升级数据库
- 前往 Gitlab 下载页面(http://119.255.194.80/hos/demo/hos-app-demo/-/tree/2.5.0/project-strcutre/project-strcutre-boot-1/oa-doc/data/mysql/2.5.0) , 用户名/密码:hosuser/99ahivPJt
- 下载
hos-app-base-mysql-2.4.0~2.5.0.sql
文件 - 执行更新 SQL
hos-app-base-mysql-2.4.0~2.5.0.sql
- 如果是从2.4.3之后的版本(包含2.4.3)升级至该版本,请下载并执行
hos-app-base-mysql-2.4.3~2.5.0.sql
文件.
# 修改yml文件
### 在 yml 文件中新增以下内容
### 消息中心相关配置
framework:
job:
admin:
### 调度中心部署跟地址 [选填]:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册;
addresses: http://127.0.0.1:8080/hos-job-admin
### 执行器通讯TOKEN [选填]:非空时启用;
accessToken:
### 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册
executor:
appname: hos-job-executor-sample
### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。
### 执行器单独启用端口与调度中心做交互,和web端口不相同
address:
### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
ip:
### 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999,单机部署多个执行器时,注意要配置不同执行器端口;
port: 9999
### 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;
logpath: /data/applogs/hos-job/jobhandler
### 执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于3时生效; 否则, 如-1, 关闭自动清理功能;
logretentiondays: 30
### 国际化相关配置
hos:
i18n:
baiduAppId: ### 自动翻译调用接口的账号
baiduSecurityKey: ### 自动翻译调用接口的密码
isOpen: false ### 配置是否开启国际化(默认关闭,需要使用国际化功能,请自行开启为 true)
isShowSource: true ### 配置在翻译数据未维护时,是否需要显示原值
### 打印相关配置
posyspath: D:\pageOffice\
### 配置白名单 (此白名单可直接复制替换,或根据已有的进行添加均可)
hos-security:
login:
white-list: #认证白名单
- ${sys.restfulPath}/**
- /druid/**
- /license/*
- /loginPageData/*
- /property/is-enable-tenant
- /tenant/select-tenant-by-domain
- /tenant/select-tenant
- /core/system/files/other/**
- /core/system/files/image/**
- /websocket/**
- /favicon.ico
- /v2/api-docs
- /swagger-resources
- /acm/accountAndPWD/validateAccount
- /doc
- /**/*.css
- /**/*.js
- /**/*.png
- /**/*.jpg
- /**/*.jpeg
- /**/*.html
- /**/*.ico
- /**/*.properties
- /**/*.woff
- /**/*.woff2
- /**/*.ttf
- /hos-job-admin/api/registry
- /i18n/language/list-select
- /i18n/element/get-loginPageElements
- /i18n/config/is-open
- /i18n/static-translation/transByCode
- /poserver.zz
- /posetup.exe
- /sealsetup.exe
- /poserver.zz
- /sys/config/is-open-download-browser
# 补充说明
注意: 如果已在2023/11/15之前做了升级2.5.0版本的升级,请完成以下补充操作。反之,请忽略本章节。
- 请清除本地maven仓库com.mediway.hos下的包,重新maven拉取jar包。
- 请再次更新前端。
- 如果数据库使用的是人大金仓,请前往 Gitlab 下载页面(http://119.255.194.80/hos/demo/hos-app-demo/-/tree/2.5.0/project-strcutre/project-strcutre-boot-1/oa-doc/data/kingbase/2.5.0), 用户名/密码:hosuser/99ahivPJt
下载
hos-app-base-kingbase-2.5.0-patch.sql
文件并执行更新。
补丁内容:
处理了人大金仓库的初始化sql兼容数据问题;
支持屏蔽下载医为浏览器。配置见系统参数base-mediway-browser-download-open
(请注意,如果要关闭该项,则无法保证可以获取到客户端的ip及mac信息,故与之相关的安全配置校验无效。)