1. 没有部署过V1.6.0
代码仓库使用统一的天舟云代码仓库,Apollo配置和鲸云应用由各产品线创建。
1.1 代码仓库
配置系统:it-frontend / lcp-workspace
应用系统:it-frontend / lcp-app
1.2 代码分支
如果需要跟随平台天舟云的改动
分支:1.8
如果各业务域需要固定自己的天舟云代码分支须联系【袁子涵yuanzihan】辅助冻结代码并创建对应业务域的版本分支
1.3 Apollo配置
配置步骤 👉 :参照天舟云v1.6.0 Apollo配置流程
1.4 鲸云配置
配置步骤 👉 :参照天舟云v1.6.0 鲸云配置流程
2. 部署过V1.6.0,增量部署V1.8.1
2.1 增加Apollo转发
2.1.1 tianzhou.api
apollo的API转发中增加如下转发路径:
# tianzhou.api
lcp.datart = https://lcptest.gz.cvte.cn/dataview #需改为本业务域下「天舟云数据报表」的api地址
lcp.common.server = https://lcptest.gz.cvte.cn
⚠️ 注意!域名地址需要根据运行环境发生变化!
2.1.2 tianzhou.env
apollo的环境配置中增加如下配置:
# tianzhou.env
tianzhou.tenent.id = #多租户场景下的默认租户id,如果不配置该字段,则无法使用多租户场景
// 如果要开启企业微信免登录,则要加上以下配置
wmp.enable = true // 开启企业微信免登录, 默认值为true
wmp.isQy = true // 默认值为true
wmp.host = https://wmp.cvte.com // (wmp的域名是固定的,测试环境和正式环境都用这个host)
wmp.appId = d72afa0c-f3c7-40c8-b9cd-ede07599a0cc // (wmp的appId是固定的,测试环境和正式环境都用这个appId)
wmp.opMobileByWeChat = true // 当开启门户统一登录时,系统在企业微信打开是展示统一登录的页面还是免登录;为true时是免登录,为false是展示统一登录页面,默认值为true
⚠️ 注意!该字段「tianzhou.tenent.id」的「tenent」英文拼写是开发过程中误拼写,非文档文本输入错误!请接入方忽略瑕疵,依然按照该文档内容接入!
2.2 业务系统接入修改(未接入业务系统则不做如下修改)
待接入的业务系统工程中需要做如下修改
2.2.1 config/server.js
须增加如下内容:
module.exports = {
// 企业微信免登录配置
wmp: {
enable: process.env['wmp.enable'] === 'true',
isQy: process.env['wmp.isQy'] === 'true',
host: process.env['wmp.host'],
appId: process.env['wmp.appId'],
opMobileByWeChat: process.env['wmp.opMobileByWeChat'] === 'true',
},
// 其他代码
cirapi: ((plugins) => {
const cirapi = {
// 其他代码
lcpDatart: {
url: process.env['lcp.datart'],
},
annex: {
url: process.env['annex.domain'],
},
lcpCommonServer: {
url: process.env['lcp.common.server'],
},
};
plugins.forEach((plugin) => {
cirapi[plugin] = { url: process.env[`cirapi.${plugin}`] };
});
return cirapi;
},
injectData: [
// 其他代码
{ key: 'categoryId', value: process.env['annex.categoryId'] || 'csb_obj_file' }, // 附件服务存储目录名称,默认值应根据各业务域自定
{ key: 'tenantId', value: process.env['cplp.tenantId'] || 'c518f53d-b405-4111-afe1-5c082b284971' }, // 附件服务的租户id
{ key: 'annexDomain', value: process.env['annex.domain'] || 'https://csbtest-api.gz.cvte.cn/cfile/' }, // 附件服务的地址
{ key: 'tianzhouTenentId', value: process.env['tianzhou.tenent.id'] },
{ key: 'lcpAppRcRootApp', value: process.env.lcpAppRcRootApp || 'lcp-app' }, // 增加天舟云预览系统的宿主资源名称
],
};
2.2.2 app/modules/App/global.js
须增加如下内容(如下内容为全量内容,已有的部分则不需要增加):
工程需安装最新版本的@cvte/cir-lcp-sdk
、@cvte/resource-center-sdk
依赖并固定其使用版本。
import { LCPDetailGlobalContext as generatorGlobalContext } from '@cvte/cir-lcp-sdk';
import globalStore from '@cvte/cir-tools/utils/globalStore';
import { observe } from 'mobx';
import { pluginStore } from '@cvte/cir-framework';
import menuEntity from '@cvte/cir-antdframe/entities/menu';
import GlobalRootApp from '@cvte/resource-center-sdk/src/loader/rootAppController';
// 设置根宿主容器资源名称
GlobalRootApp.setRootApp({
// 此处填写根应用资源名称,如果业务系统的apollo配置了lcpAppRcRootApp,则建议从此处读取,如果没有则自行查找并写在此处
name: document.getElementById?.('lcpAppRcRootApp')?.getAttribute?.('value') || 'lcp-app', // 天舟云预览系统的宿主应用资源名称
});
// 增加初始化用户信息上下文数据
if (globalStore?.userInfo?.data?.id) {
generatorGlobalContext?.getContext?.()?.session?.setUser?.(globalStore?.userInfo?.data);
}
// 增加注入用户信息上下文数据
observe(globalStore.userInfo, (change) => {
const { newValue, name } = change;
if (name === 'data') {
generatorGlobalContext?.getContext?.()?.session?.setUser?.(newValue);
}
});
// 增加初始化组织信息上下文数据
if (menuEntity.globalMultiOrgData?.data && menuEntity?.surrentOrgId) {
const xOrgId = pluginStore.get(menuEntity.surrentOrgId);
if (xOrgId) {
const currentData = menuEntity.globalMultiOrgData?.data?.find?.((item) => item.id === xOrgId);
if (currentData) {
generatorGlobalContext?.getContext?.()?.session?.setOrg?.(currentData);
}
}
}
// 增加注入组织信息上下文数据
observe(menuEntity.globalMultiOrgData, (change) => {
const { newValue, name } = change;
if (name === 'data') {
const xOrgId = pluginStore.get(menuEntity.surrentOrgId);
if (xOrgId) {
const currentData = newValue?.find?.((item) => item.id === xOrgId);
if (currentData) {
generatorGlobalContext?.getContext?.()?.session?.setOrg?.(currentData);
}
}
}
});
3. 资源版本
3.1 天舟云配置系统依赖资源版本列表
序号 | 模块 | 资源名称 | 版本号 |
---|---|---|---|
1 | 应用管理框架 | cir-lcp-app-frame | 1.0.4.2 |
2 | 功能页框架 | cir-lcp-feature-frame | 1.0.5 |
3 | 应用管理「天舟云首页」 | cir-app-manager | 1.0.9 |
4 | 数据源管理 | cir-multiple-data-source | 1.0.3.1 |
5 | 表单设计器 | cir-form-make | 1.1.4.2 |
6 | 列表设计器 | cir-page-make | 1.2.12 |
7 | 高级列表设计器 | cir-page-view | 1.0.2 |
8 | 表单转换、属性联动、唯一校验、页面发布 | cir-formtransfer | 1.0.22.2 |
9 | 模型管理 | cir-data-model | 1.0.2 |
10 | 事件管理、程序触发 | cir-event-center | 1.0.2 |
11 | 状态流模版管理、状态机设计器 | cir-state-flow-manager | 1.0.7 |
12 | 天舟云开发包 | cir-lcp-sdk | 1.0.2 |
13 | 低代码页面模版渲染引擎 | cir-csb-common-view | 1.0.14 |
14 | 低代码表单业务渲染引擎 | cir-csb-generator | 1.1.25.6 |
15 | 低代码表单渲染引擎 | cir-form-generator | 1.0.13.5 |
16 | 低代码高级列表渲染引擎 | cir-page-generator | 1.1.14 |
17 | 路由控制器 | cir-csb-router | 1.0.3 |
18 | 动态表单 | cir-dynamic-modal | 1.0.7 |
19 | 视图渲染引擎 | viewTable | 1.0.8.2 |
20 | 字典管理模块 | cir-dictionary | 1.0.4 |
21 | 数据图表模块 | cir-datart | 1.0.0 |
3.2 天舟云预览系统或接入业务系统依赖资源版本列表
序号 | 模块 | 资源名称 | 版本号 |
---|---|---|---|
1 | 天舟云开发包(接入时使用资源的方式接入才配置该模块) | cir-lcp-sdk | 1.0.2 |
2 | 低代码页面模版渲染引擎 | cir-csb-common-view | 1.0.14 |
3 | 低代码表单业务渲染引擎 | cir-csb-generator | 1.1.25.6 |
4 | 低代码表单渲染引擎 | cir-form-generator | 1.0.13.5 |
5 | 低代码高级列表渲染引擎 | cir-page-generator | 1.1.14 |
6 | 视图渲染引擎 | viewTable | 1.0.8.2 |
7 | 动态表单 | cir-dynamic-modal | 1.0.7 |
8 | 全局跳转方法 | csbResource | 1.0.7 |
9 | 路由控制器 | cir-csb-router | 1.0.3 |
4. 注意事项
4.1 业务系统
4.1.1 共享依赖
axios:接入天舟云的业务系统的webpack模块联邦共享中,建议配置如下
axios: {
eager: true,
// singleton: true,
requiredVersion: packageJson['dependencies']['axios'] // 建议固定版本
},
作者:袁子涵 创建时间:2023-05-08 10:01
最后编辑:袁子涵 更新时间:2024-12-11 10:09
最后编辑:袁子涵 更新时间:2024-12-11 10:09