V3.25.0.0

发布清单1

2
升级文档
一、维护界面保存成功后需关闭新增窗体
新增保存成功提示后会调用回调函数:函数名为$scope.业务对象名TipCallBack(方法类型)
示例:业务对象:DywTestCase107
回调方法:$scope.
dywTestCase107TipCallBack(方法类型)

3

下面才是项目组需要新增的代码:
项目组只需要在自己的扩展JS中实现回调函数方法体即可
重写方法: $scope.业务对象名TipCallBack(方法类型)
重写示例:$scope.
dywTestCase107TipCallBack(methodType) 在方法体里面调用关闭窗体处理即可
4

二、新增大于等于0的校验
业务对象-校验中新增了一项校验类型”必须大于等于0”
5
还需在项目组对应的路径下面覆盖此文件 ,最小升级包里面也会有
6
7

三、云平台生成前端代码的优化改造
修改位置:
保存方法的修改如下:
以下为saveOrupdate方法的修改:
保存方法新增参数options,该参数包含链接,方法参数,同步校验,异步校验。每个return的时候,应该有对应的返回。值得一说的是,由于没有同步校验的例子。。所以在第四张图做了如下处理。实际上,如果有同步校验,应将同步校验的代码,放在if判断后的{}内。
11
12

13

14
以下为save()以及其调用的_commonSaveOrUpdateTestCaseNew202()方法的修改。
15

16

17

18

19

20
删除方法的修改:
删除方法不需要传参数,参数默认就应该是ids,也不存在校验,故此处做如下处理。
21
新增方法的修改:
22
客户需要支持覆盖默认值,此处举了一个例子。
项目组使用方法:
在二次开发的js中,调用这些函数并传参即可。
23

四、前端页面加载性能优化(页面权限异步加载)
前端页面加载性能优化(页面权限异步加载)
1. 权限加载同步改成异步
2. 使用地区控件才加载 allAreas

更新:
require.js
GillionPermitModule.js
AreaServiceConstructor.js
AreasModule.js
elasticLayout.js

配置 config.properties.js:
$prepareLoadModules 中去掉 allAreas 的预加载

五、数据字典实现缓存加载提升性能开关配置(默认不开启缓存)
版本:3.24.0.0版本加入数据字典查询缓存

版本:3.25.0.0版本加入对数据字典缓存加开关配置
在3.25.0.0这个版本加入对缓存开关处理,默认是关闭缓存功能,如果在application.properties中不配置startDictCache标识或配置为startDictCache=false都为关闭缓存功能,只有startDictCache=true时开启缓存功能

1.
数据字典查询(加入缓存):
http://IP:端口/上下文/dictionary/queryDictRows?params=参数

2.前台请求调用清理查询缓存(项目组也可以前台调用下面地址清理缓存操作)
数据字典清除查询缓存请求路径:
http://IP:端口/上下文/dictionary/clearDictionaryCache

  1. 如果项目组有自己维护数据字典,在保存更新或删除时可以调用下面的接口更新字典缓存(后台代码调用接口。
    gillion-ipf-base包中中提供处理数据字典缓存的相关接口:DictionaryServiceExt
    (1.)清除所有缓存:clearDictionaryCache
    31
    (2.)如果是单层数据字典(不分组)和通用数据字典调用下面提供的接口
    单笔更新(根据字典代码):updateDictionaryCacheByDictCode
    批量更新(根据字典代码):batchUpdateDictionaryCacheByDictCode
    (3.)如果是单层数据字典且分组需调用如下接口:(提供字典代码值和分组字段对应的真实值,例如数据字典值为 DataType$num 则:DataType是字典代码值,num是分组字段对应的数据中的值。
    updateDictionaryCacheByDictCodeAndGroupValue(String dictCode,String groupValue);
    提供接口根据字典代码更新缓存操作,修改,删除都是调用下面提供的接口
    32

六、云平台SPringBoot支持修改说明

 运行环境要求[软件环境] 供参考JAR更新
1. 云平台版本 3.24.0.1.RELEASE以上版本才能支持
2. 需要使用EC 3 版本号为 3.0.0.9-glpaas
3. 需要使用Spring 4.3.17.RELEASE Spring security 4.2.6.RELEASE
4. 使用 Spring boot 1.5.13.RELEASE
5. Mybatis 需要使用 3.4.6.RELEASE版本
1

 Spring boot 支持修改说明
1. 修改WEB项目的pom.xml,加入Spring boot支持及修改云平台相关的JAR包依赖和autoconfiguration jar。
2
2. 修改pom 中 云平台的jar包依赖部分修改;从样例项目中拷贝
Glpaas 依赖jar包
3
EC3jar 依赖
4

5
Eds jar 依赖
6
这里只要参考你目前要修改的项目,当前项目引入引入那个你就到样例pom中拷贝那个来覆盖就行。

Spring boot 依赖:
首先加入:
7
然后拷贝一下全部到目标pom文件中
8
删除掉目标POM.xml中 build 内容,然后拷贝样例中的build内容来覆盖并修改项目名称等。
9
一下红框中的内容如果当前项目的启动类不是这个就需要修改。
10

  1. 配置文件整理,及加入新的配置文件applciation.yml
    然后备份文件resources\config\application.properties;删除这个文件。
    备份deploy下文件,并删除整个目录。
    以上需要拷贝去其他地方去,等下需要根据旧的配置修改到新的配置文件中。
    拷贝样例项目中的 配置文件覆盖到对应的目录中
    11
    修改application.yml文件中 jdbc连接信息、eds连接信息 redis 连接信息、项目的虚拟目录、项目启动完tomcat端口、等等
    13

14

15

16
此处需要参考原来config\application.properties 中的参数有少掉的需要再添加进来:
17
此处是EDS相关配置信息
18.01
不再需要 resources\deploy 下文件,需要转换为 application.yml application-dev.yml
application-test.yml application-prd.yml 等。然后在启动时候加入参数来指定需要加载那份配置信息。 –spring.profiles.active=test
4. 在项目外层包路径下新增Spring boot Application 入口类
直接拷贝样例项目中的 SystemApplication.java 到目标项目中在修改些参数即可
18

19
5.
6.
7.
8. 启动命令
java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n -jar /data/app/test.jar –spring.profiles.active=dev &

  1. Jekins 上部署 命令参考
    BUILD_ID=DONTKILLME2
    DATE=$(date +%Y%m%d)
    DIR=/ioms/order
    cd ./target
    FILEJARNAME=$(find -name ‘fms-af-service**.jar’)
    JRENAME=$(basename $FILEJARNAME)
    cp -f $FILEJARNAME $DIR/copy-$JRENAME

if [ ! -d $DIR/backup ];then
mkdir -p $DIR/backup
fi
cd $DIR

PID=$(ps -ef | grep $JRENAME | grep -v grep | awk ‘{print $2}’)
if [ “$PID” != “” ]; then kill -9 $PID
else echo $JRENAME is stopped
fi

if [ -e $DIR/$JRENAME ];then
mv -f $JRENAME backup/$DATE-$JRENAME
fi
mv -f copy-$JRENAME $JRENAME

java -jar $JRENAME –spring.profiles.active=xm > order.log &
if [ $? = 0 ];then
sleep 30
tail -n 50 order.log
fi

cd backup/
ls -lt|awk ‘NR>5{print $NF}’| xargs rm -rf

七、支持校验提示消息自定义配置
在二次开发js文件(xxxCtrl.js)中调用 $scope.customValidatorI18ns 方法。如图所示
scope.customValidatorI18ns(groupName, customI18ns, getResourcePathFunc)
参数说明:
* @param {string} groupName – 校验名称
* @param {Object} customI18ns – 自定义校验信息
* @param {(groupName: string) => string} [getResourcePathFunc] – 可选,根据 groupName 组合加载校验信息文件路径的方法
例图:
1

八、新增维护界面保存成功后需关闭新增窗体
新增维护界面保存成功后需关闭新增窗体

新增保存成功提示后会调用回调函数:函数名为$scope.业务对象名TipCallBack(方法类型)
示例:业务对象:DywTestCase107
回调方法:$scope.
dywTestCase107TipCallBack(方法类型)
2
下面才是项目组需要新增的代码:
项目组只需要在自己的扩展JS中实现回调函数方法体即可
重写方法: $scope.业务对象名TipCallBack(方法类型)
重写示例:$scope.
dywTestCase107TipCallBack(methodType) 在方法体里面调用关闭窗体处理即可
3
新增保存成功提示后会调用回调函数:函数名为$scope.业务对象名TipCallBack(方法类型)
示例:业务对象:DywTestCase107
回调方法:$scope.
dywTestCase107TipCallBack(方法类型)
4
下面才是项目组需要新增的代码:
项目组只需要在自己的扩展JS中实现回调函数方法体即可
重写方法: $scope.业务对象名TipCallBack(方法类型)
重写示例:$scope.
dywTestCase107TipCallBack(methodType) 在方法体里面调用关闭窗体处理即可
5