💦 Step 0:前置准备(配置)↓
## [一] 依赖环境:
### 1. 系统环境:
- 操作系统:Window/Linux(CentOS 7.5及以上);
- 环境变量:JDK1.8及以上;
- 网络环境:需要能联通EAS数据库(内网或外网联通均可),且有提供给外部的外网地址(默认端口8888,可根据实际情况映射对应端口);
- Nginx(按需):如需要反向代理或负载均衡,则需要按需安装和配置Nginx;
- 文件要求:Window/Linux环境需要创建一个独立的文件夹,用于存放配置及应用包等
>i **【文件夹创建】示例:**
父级文件夹:D:\\kdms\;
日志子级文件夹:D:\\kdms\logs;
单点配置子级文件夹:D:\\kdms\single_login_config;
## [二] 配置信息:
### 1. EAS环境配置信息:
- **数据库:**
[x] 类型:
>i 示例:[Oracle/SqlServer/PGSql/MySql/DMSql]
[x] 地址:端口:
>i 示例:[172.16.6.189:5432](内外网不做要求,允许中间服务能访问即可)
[x] 用户名:
>i 示例:[root]
[x] 密码:
>i 示例:[123@#]
[x] 数据库名称:
>i 示例:[jhj](实际数据库名称)
[x] 数据中心代码:
>i 示例:[xxpro](通过管理控制台"数据中心"处获取数据中心代码)
- **访问地址:**
[x] EAS访问地址(网页端):
>i 示例: http://ip:port/ (外网地址)
[x] 中间服务外网地址:
>i 示例: http://ip:port/ (外网地址)
### 2. 苍穹环境配置信息(公有云):
- **第三方应用配置信息:**
[x] appId:
>i 示例:[OA]
[x] appSecuret:
>i 示例:[B3^%WBZ9RPTdYBhsnX#5]
- **系统配置信息:**
[x] tenantid:
>i 示例:[jhee.test]
[x] accountId:
>i 示例:[1510916954104269824]
[x] user(默认登录用户):
>i 示例:[18654942276]
[x] usertype(登录方式):
>i 示例:[UserName/Email/Number]
>w 获取苍穹租户ID和数据中心ID:

- **访问地址:**
[x] 苍穹访问地址:
>i 示例: https://xxx.kdcloud.com (外网地址)
### 3. 第三方环境配置信息:
- **应用配置信息:**
[x] EAS应用识别码:
>i示例:[ERPEAS]
[x] 苍穹应用识别码:
>i示例:[ERPEAS]
- **Token加密密钥信息:**
[x] 加密密钥:
>i示例:[ZLG7N8AOFS6VJBQ091T5D3HU24PWCKIY]
## [三] 部署清单:
### 1. KDMS中间服务:
[x] 部署包:
>i ruoyi-admin.jar
ruoyi-common-4.7.5.jar
ruoyi-framework-4.7.5.jar
ruoyi-generator-4.7.5.jar
ruoyi-quartz-4.7.5.jar
ruoyi-system-4.7.5.jar
[x] 启动脚本:
>i ry.bat / ry.sh
[x] Nginx代理:
>i nginx.conf
[x] 数据库安装:
>i mysql 5.7
[x] 数据库初始化脚本:
>i kdms_ruoyi.sql
### 2. EAS单点&待办消息部署:
>s #### 单点配置:
[x] 修改ssoClient.properties文件:
>w将服务端server\profiles\server(1…n)\config\portalConfig目录下的ssoClient.properties文件中的sso.easIsSSOClient参数项的值修改为true。
[x] 修改autoLoginConfig.properties文件:
>w 打开服务端server\profiles\server(1…n)\config\portalConfig目录下的autoLoginConfig.properties文件,其中需要修改的参数如下:
>d**→ Datacenter:** 数据中心代码,即EAS portal要登录的数据中心代码 (即:数据中心编码ID,EAS管理控制台可查看);
**→ authPattern:** 认证模式,值为BaseTrdLtpaToken,一般默认值是这个,不需要修改
**→ locale:** 语言项,其中:L1=英文 L2=简体 L3=繁体;
**→ dbType:** 数据库类型,其中:MS-SQL-SERVER=0 DB2=1 ORACLE=2
**→ redirectTo:** 转发地址,默认即可
[x] 修改LTPA密钥文件:
>w打开server\profiles\server(1...n)\config\portalConfig\LtpaToken.properties,参数说明:
>d**→ cookie.domain:** 与Domino集成时才有用的参数,通常无需关注;
**→ token.expiration:** token串的有效时间,这里以分钟为单位,用于校验token串时检查其是否过期,其有效时间从生成token串时Web应用的系统时间开始算起,因此,LTPA认证集成机制要求被集成的各Web应用服务器的系统时间需要保持一致
**→ domino.secret:** 加密生成token串的密钥,该参数可以是任意指定的一个字符串,没有长度限制,部署实施时注意更换此密钥以增加安全性。
`该文件需要在EAS服务器环境和要集成Web应用系统的环境中各保存一份,且密钥必须相同,注意:在EAS服务器环境中该文件的存放路径不用改变,即上述缺省路径即可,在第三方Web应用系统中该文件的存放路径可任意指定 (例如:D:\TrdWebApp\security)。`
>s #### 代办消息推送配置:
[x] 部署包:kdms_ssomessage.jar
[x] 启用与第三方系统消息集成(easWebConfig.xml)[重要]:
```xml
<configitem name="otherSystem">
<attribute key="toSys" value="true" />
<attribute key="letGet" value="true"/>
</configitem>
```
>d请确认toSys配置项的value值是“true”,来启用该功能
[x] 消息推送配置(WSConfig.xml)[重要]:
```xml
<?xml version="1.0" encoding="utf-8"?>
<config>
<class>
<server>http://ip:端口/easweb/webviews/workflow/transferApprove.jsp</server> //EAS portal流程中心对应的任务审批界面
<dataCenter>db540</dataCenter> //数据中心编码
<path>com.kingdee.eas.base.message.webservice.testWebServiceImpl</path> //实现类的包名加类名
<task value="true"> //任务类型消息是否接受
<workflow>true</workflow> //任务类型消息节点下的工作流消息是否接受
</task>
<notice value="true"> //通知类型消息是否接受
<workflow>true</workflow> //通知类型消息节点下的工作流消息是否接受
<forwarn>true</forwarn> //通知类型消息节点下的预警消息是否接受
<urgent>true</urgent> //通知类型消息节点下的催办消息是否接受
<office>true</office> //办公消息类型,msgBizType=30
<async>true</async> //后台事务消息类型,msgBizType=50
<xitongoffice>true</xitongoffice>//协同办公消息类型,msgBizType=60
<hr>true</hr> //HR消息类型,msgBizType=70
</notice>
<online value="true"> //即时消息是否接受
</online>
</class>
</config>
```
### 3. Cosmic单点&待办消息部署:
>s #### 单点配置:
[x] 第三方应用注册:创建外部第三方应用,并授权(按需或访问全部API);
>s #### 代办消息推送配置:
[x] 配置第三方应用;
[x] 配置消息渠道;
[x] 配置消息类型;
[x] 部署插件包:kdlz_sso_message_service.jar(包内需要修改中间服务地址)。