• 从0.11.0升级到1.1.0

    平台已有的前端模块、组件、服务等清单和详细信息可参考 服务列表
    若无特殊说明,本次升级所有前端模块最新版为 1.1.0,后端组件、服务版本最新版为 1.1.0.RELEASE

    新增组件

    组件 描述
    hzero-starter-redis Redis依赖,相关工具类等
    hzero-boot-nlp NLP服务客户端
    hzero-starter-social-core 三方登录核心依赖
    hzero-starter-social-qq 三方QQ登录
    hzero-starter-social-wechat 三方微信登录
    hzero-starter-social-sina 三方微博登录
    hzero-boot-api-customize API客制化组件
    hzero-boot-oauth OAuth客户端组件
    hzero-boot-data-change 数据变更识别组件
    hzero-boot-monitor 监控审计客户端
    hzero-starter-integration-sdk 接口平台SDK

    删除组件

    组件 描述
    hzero-boot-common 代码移至 hzero-starter-core 中,使用方只需删除 hzero-boot-common 的依赖即可

    新增服务

    组件 简称 默认端口 描述 SaaS和OP说明 数据库Schema
    hzero-invoice HIVC 8015 发票服务 区分 hzero_invoice
    hzero-ocr HOCR 8290 图像识别服务 不区分
    hzero-webexcel HEXL 8045 在线Excel服务 不区分 hzero_webexcel
    hzero-admin HADM 8060 平台治理服务 区分 hzero_admin
    hzero-im HIMS 8025 即时通讯服务 不区分 hzero_im

    服务/组件升级

    重点配置调整

    服务名称强制一致调整

    自动刷新服务路由时,不再支持自动处理带后缀(如工号)的服务名,需保持配置文件中的服务名和 ExtraDataManager 中配置的服务名一致。

    服务合并配置

    如果有服务合并,需将 hzero.modular.enable 设置为 true,且必须在 ExtraDataManager 配置中设置 ChoerodonRouteData 的 packages 参数,该参数指定要扫描的包,否则启动会报错。不需要服务合并,可以设置为 false,或者删除此配置。

    hzero:
      modular:
        enable: false
    

    OAuth 配置调整

    服务治理调整

    网关服务调整

    依赖调整

    由于 1.0.0 中合并了 choerodon 组件的源码,如果服务中依赖了 choerodon-starter-xxx 的组件,需要删除这些依赖,并使用 hzero-starter-xxx 替换,避免冲突。

    如果升级了平台基础服务,业务服务中,一定要将 hzero-starter 相关组件升级到新版本,否则可能出现权限校验等问题


    表结构升级

    数据升级

    -- MySQL
    UPDATE hpfm_dashboard_layout hdl
    INNER JOIN ( SELECT id, CODE, card_params FROM hpfm_dashboard_card ) b ON b.CODE = hdl.CODE 
    SET hdl.card_id = b.id;
    
    -- SqlServer
    UPDATE hpfm_dashboard_layout 
    SET card_id = hpfm_dashboard_card.id 
    FROM
    	hpfm_dashboard_layout,
    	hpfm_dashboard_card 
    WHERE
    	hpfm_dashboard_layout.CODE = hpfm_dashboard_card.CODE;
    	
    -- ORACLE
    UPDATE HPFM_DASHBOARD_LAYOUT hdl 
    SET ( hdl.CARD_ID ) = ( SELECT hdc.ID FROM HPFM_DASHBOARD_CARD hdc WHERE hdc.CODE = hdl.CODE ) 
    WHERE
    	EXISTS ( SELECT 1 FROM HPFM_DASHBOARD_CARD hdc WHERE hdl.CODE = hdc.CODE );
    

    数据处理

    INSERT INTO hpfm_prompt (tenant_id, prompt_key,prompt_code, lang, description ) (
        SELECT
            t.tenant_id,
            t.prompt_key,
            t.prompt_code,
            'en_US',
            t.description
        FROM
            hpfm_prompt t 
    		WHERE t.lang = 'zh_CN'
        and NOT EXISTS ( SELECT 1 FROM hpfm_prompt tl WHERE t.prompt_key = tl.prompt_key
    		and t.prompt_code = tl.prompt_code
    		and t.tenant_id = tl.tenant_id
      	AND tl.lang = 'en_US')
    );
    
    -- 插入中文
    INSERT INTO hpfm_flex_detail_config_tl ( detail_config_id, lang, field_description ) (
    	SELECT
    		detail_config_id,
    		'zh_CN',
    		field_description 
    	FROM
    		hpfm_flex_detail_config hfdc 
    	WHERE NOT EXISTS ( SELECT 1 FROM hpfm_flex_detail_config_tl tl WHERE hfdc.detail_config_id = tl.detail_config_id AND tl.lang = 'zh_CN' ) 
    	);
    
    -- 插入英文
    INSERT INTO hpfm_flex_detail_config_tl ( detail_config_id, lang, field_description ) (
    	SELECT
    		detail_config_id,
    		'en_US',
    		field_description 
    	FROM
    		hpfm_flex_detail_config hfdc 
    	WHERE NOT EXISTS ( SELECT 1 FROM hpfm_flex_detail_config_tl tl WHERE hfdc.detail_config_id = tl.detail_config_id AND tl.lang = 'en_US' ) 
    	);
    

    服务部署



    前端升级指南

    注意:

    1.只是用yarn升级hzero-front-runtime的话,新的环境变量等配置是不会被更新的。

    2.在升级 hzero-front-runtime 时,最好备份一下更改过的环境变量相关的内容和 webpack 配置相关的修改。