提交 dbe68b5d 编写于 作者: ibizdev's avatar ibizdev

fangzhihao 部署微服务应用 [TrainSys,网页端]

上级 863f9b8d
...@@ -71,14 +71,6 @@ export class AppSearchFormBase extends SearchFormControlBase { ...@@ -71,14 +71,6 @@ export class AppSearchFormBase extends SearchFormControlBase {
@Emit('ctrl-event') @Emit('ctrl-event')
public ctrlEvent({ controlname, action, data }: { controlname: string; action: string; data: any }): void { } public ctrlEvent({ controlname, action, data }: { controlname: string; action: string; data: any }): void { }
/**
* @description 是否显示搜索下拉
* @type {boolean}
* @memberof AppSearchFormBase
*/
public dropdownVisible: boolean = false;
/** /**
* 销毁视图回调 * 销毁视图回调
* *
...@@ -573,6 +565,24 @@ export class AppSearchFormBase extends SearchFormControlBase { ...@@ -573,6 +565,24 @@ export class AppSearchFormBase extends SearchFormControlBase {
} }
} }
/**
* @description 搜索下拉点击
* @param {string} name 点击项
* @memberof AppSearchFormBase
*/
public searchDropdownClick(name: string) {
switch (name) {
case 'reset':
this.reset();
break
case 'save':
break
default:
this.fillSearchForm(name);
break;
}
}
/** /**
* @description 绘制搜索按钮 * @description 绘制搜索按钮
* @param {string} style 样式 * @param {string} style 样式
...@@ -590,17 +600,24 @@ export class AppSearchFormBase extends SearchFormControlBase { ...@@ -590,17 +600,24 @@ export class AppSearchFormBase extends SearchFormControlBase {
return ( return (
<div class="search-action-right"> <div class="search-action-right">
<i-button class="search" size="default" type='primary' on-click={(...params: any[]) => throttle(this.search,params,this)}>{this.$t('app.searchbutton.search')}</i-button> <i-button class="search" size="default" type='primary' on-click={(...params: any[]) => throttle(this.search,params,this)}>{this.$t('app.searchbutton.search')}</i-button>
<dropdown transfer trigger="custom" transfer-class-name="search-dropdown" visible={this.dropdownVisible} placement="bottom-end" on-on-clickoutside={(event: any) => this.clickOutside(event)}> <dropdown
transfer
trigger="custom"
transfer-class-name="search-dropdown"
visible={this.dropdownVisible}
placement="bottom-end"
on-on-click={(name: string) => this.searchDropdownClick(name)}
on-on-clickoutside={(event: any) => this.clickOutside(event)}>
<span class="search-dropdown-icon"> <span class="search-dropdown-icon">
<icon type="ios-arrow-down" onClick={() => this.dropdownVisible = !this.dropdownVisible}/> <icon type="ios-arrow-down" onClick={() => this.dropdownVisible = !this.dropdownVisible}/>
</span> </span>
<dropdown-menu slot='list'> <dropdown-menu slot='list'>
<dropdown-item> <dropdown-item name="reset">
<div class="search-dropdown-item" on-click={() => this.reset()}> <div class="search-dropdown-item">
{this.$t('app.searchbutton.reset')} {this.$t('app.searchbutton.reset')}
</div> </div>
</dropdown-item> </dropdown-item>
<dropdown-item> <dropdown-item name="save">
<poptip <poptip
ref="propip" ref="propip"
trigger="hover" trigger="hover"
...@@ -622,9 +639,9 @@ export class AppSearchFormBase extends SearchFormControlBase { ...@@ -622,9 +639,9 @@ export class AppSearchFormBase extends SearchFormControlBase {
{ {
this.historyItems?.map((item: any) => { this.historyItems?.map((item: any) => {
return ( return (
<dropdown-item> <dropdown-item name={item.value}>
<div class="search-dropdown-item history-item"> <div class="search-dropdown-item history-item">
<span class="history-item caption" title={item.name} on-click={() => this.data = JSON.parse(JSON.stringify(item.data))}>{item.name}</span> <span class="history-item caption" title={item.name}>{item.name}</span>
<i class="el-icon-close history-item" on-click={(e: any) => throttle(this.removeHistoryItem,[e, item],this)}/> <i class="el-icon-close history-item" on-click={(e: any) => throttle(this.removeHistoryItem,[e, item],this)}/>
</div> </div>
</dropdown-item> </dropdown-item>
......
...@@ -69,27 +69,28 @@ ...@@ -69,27 +69,28 @@
} }
} }
} }
.search-dropdown { .search-dropdown.ivu-select-dropdown.ivu-dropdown-transfer {
width: 100px !important; width: 100px !important;
max-height: 150px !important; padding: 10px 0;
overflow-x: hidden; overflow: hidden;
.ivu-dropdown-menu {
.ivu-dropdown-item { .ivu-dropdown-item {
height: 32px; padding: 0 20px;
line-height: 36px;
&:hover {
background-color: #ecf5ff;
color: #66b1ff;
}
.search-dropdown-item {
&.history-item {
display: flex; display: flex;
align-items: center; align-items: center;
padding: 4px 8px !important; .history-item.caption {
.search-dropdown-item { width: 55px;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
&.history-item {
display: flex;
.history-item.caption {
width: 80px;
} }
.el-icon-close.history-item {
position: relative;
top: 3px;
} }
} }
} }
......
...@@ -76,6 +76,13 @@ export class SearchFormControlBase extends EditFormControlBase implements Search ...@@ -76,6 +76,13 @@ export class SearchFormControlBase extends EditFormControlBase implements Search
*/ */
public enableSaveFilter: boolean = true; public enableSaveFilter: boolean = true;
/**
* @description 是否显示搜索下拉
* @type {boolean}
* @memberof SearchFormControlBase
*/
public dropdownVisible: boolean = false;
/** /**
* 监听静态参数变化 * 监听静态参数变化
* *
...@@ -320,6 +327,7 @@ export class SearchFormControlBase extends EditFormControlBase implements Search ...@@ -320,6 +327,7 @@ export class SearchFormControlBase extends EditFormControlBase implements Search
let propip: any = this.$refs.propip; let propip: any = this.$refs.propip;
propip.handleMouseleave(); propip.handleMouseleave();
this.onSave(this.saveItemName); this.onSave(this.saveItemName);
this.dropdownVisible = false;
} }
/** /**
...@@ -334,6 +342,20 @@ export class SearchFormControlBase extends EditFormControlBase implements Search ...@@ -334,6 +342,20 @@ export class SearchFormControlBase extends EditFormControlBase implements Search
} }
let propip: any = this.$refs.propip; let propip: any = this.$refs.propip;
propip.handleMouseleave(); propip.handleMouseleave();
this.dropdownVisible = false;
}
/**
* @description 填充搜索表单
* @param {string} value 历史记录值
* @memberof SearchFormControlBase
*/
public fillSearchForm(value: string) {
const find = this.historyItems.find((item: any) => Object.is(item.value, value));
if (find) {
this.data = JSON.parse(JSON.stringify(find.data));
this.dropdownVisible = false;
}
} }
/** /**
......
...@@ -3,7 +3,7 @@ services: ...@@ -3,7 +3,7 @@ services:
trainsys-app-web: trainsys-app-web:
image: dstimage image: dstimage
ports: ports:
- "80:80" - "50100:80"
networks: networks:
- agent_network - agent_network
environment: environment:
......
...@@ -55,14 +55,15 @@ ...@@ -55,14 +55,15 @@
git clone -b master $para2 trainsys/ git clone -b master $para2 trainsys/
export NODE_OPTIONS=--max-old-space-size=4096 export NODE_OPTIONS=--max-old-space-size=4096
cd trainsys/ cd trainsys/
mvn clean package -Ptrainsys mkdir -p /var/lib/jenkins/appcache/A3064A91-F42D-4D7F-BC1C-4173A4F5772C
mvn install -Ptrainsys if [ -e app_Web/.dynamic ]
cd trainsys-provider then
sed -i "s#dstimage#$para5#g" pom.xml cd app_Web
sed -i "s#dstimage#$para5#g" src/main/docker/trainsys-provider-trainsys.yaml else
mvn -Ptrainsys docker:build cd app_Web/app
mvn -Ptrainsys docker:push fi
docker -H $para1 stack deploy --compose-file=src/main/docker/trainsys-provider-trainsys.yaml ebsx --with-registry-auth sed -i "s#dstimage#registry.cn-shanghai.aliyuncs.com/ibizsys/ibizcloud-standardsys-app-webapp:2022.07.29.003#g" swarm.yaml
docker -H $para1 stack deploy --compose-file=swarm.yaml ebsx --with-registry-auth
</command> </command>
</hudson.tasks.Shell> </hudson.tasks.Shell>
</builders> </builders>
......
...@@ -156,6 +156,25 @@ ...@@ -156,6 +156,25 @@
</createTable> </createTable>
</changeSet> </changeSet>
<!--输出实体[RAWMATERIAL]数据结构 -->
<changeSet author="root" id="tab-rawmaterial-25-6">
<createTable tableName="T_RAWMATERIAL">
<column name="RAWMATERIALID" remarks="" type="VARCHAR(100)">
<constraints primaryKey="true" primaryKeyName="PK_RAWMATERIAL"/>
</column>
<column name="CREATEDATE" remarks="" type="DATETIME">
</column>
<column name="RAWMATERIALNAME" remarks="" type="VARCHAR(200)">
</column>
<column name="CREATEMAN" remarks="" type="VARCHAR(60)">
</column>
<column name="UPDATEDATE" remarks="" type="DATETIME">
</column>
<column name="UPDATEMAN" remarks="" type="VARCHAR(60)">
</column>
</createTable>
</changeSet>
<!--输出实体[REGINFO]数据结构 --> <!--输出实体[REGINFO]数据结构 -->
<changeSet author="root" id="tab-reginfo-36-7"> <changeSet author="root" id="tab-reginfo-36-7">
<createTable tableName="T_REGINFO"> <createTable tableName="T_REGINFO">
......
...@@ -174,6 +174,14 @@ ...@@ -174,6 +174,14 @@
}, },
"builtinAction" : true "builtinAction" : true
} ], } ],
"getAllPSDEDBConfigs" : [ {
"dBType" : "MYSQL5",
"name" : "MYSQL5",
"objNameCase" : "DEFAULT",
"standardTableName" : "`T_RAWMATERIAL`",
"tableName" : "T_RAWMATERIAL",
"valid" : true
} ],
"getAllPSDEDBTables" : [ { "getAllPSDEDBTables" : [ {
"getAllPSDEFields" : [ { "getAllPSDEFields" : [ {
"name" : "RAWMATERIALID", "name" : "RAWMATERIALID",
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<profiles> <profiles>
<profile> <profile>
<id>trainsys</id> <id>runtime</id>
<build> <build>
<resources> <resources>
<resource> <resource>
......
...@@ -10,6 +10,6 @@ CMD echo "The application will start in ${IBIZ_SLEEP}s..." && \ ...@@ -10,6 +10,6 @@ CMD echo "The application will start in ${IBIZ_SLEEP}s..." && \
sleep ${IBIZ_SLEEP} && \ sleep ${IBIZ_SLEEP} && \
java ${JAVA_OPTS} -Duser.timezone=$TZ -Djava.security.egd=file:/dev/./urandom -jar /trainsys-provider.jar java ${JAVA_OPTS} -Duser.timezone=$TZ -Djava.security.egd=file:/dev/./urandom -jar /trainsys-provider.jar
EXPOSE 50000 EXPOSE 8081
ADD trainsys-provider.jar /trainsys-provider.jar ADD trainsys-provider.jar /trainsys-provider.jar
...@@ -22,32 +22,7 @@ spec: ...@@ -22,32 +22,7 @@ spec:
image: registry.cn-shanghai.aliyuncs.com/ibizsys/trainsys-provider:latest image: registry.cn-shanghai.aliyuncs.com/ibizsys/trainsys-provider:latest
imagePullPolicy: Always imagePullPolicy: Always
ports: ports:
- containerPort: 50000 - containerPort: 8081
env:
- name: SPRING_CLOUD_NACOS_DISCOVERY_IP
value: "172.16.240.140"
- name: SERVER_PORT
value: "50000"
- name: SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR
value: "172.16.240.140:8848"
- name: SPRING_REDIS_HOST
value: "127.0.0.1"
- name: SPRING_REDIS_PORT
value: "6379"
- name: SPRING_REDIS_DATABASE
value: "0"
- name: SPRING_DATASOURCE_USERNAME
value: "a_LAB01_d23cc850e"
- name: SPRING_DATASOURCE_PASSWORD
value: "f9Df4556"
- name: SPRING_DATASOURCE_URL
value: "jdbc:mysql://172.16.186.185:3306/a_LAB01_d23cc850e?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true&serverTimezone=Asia/Shanghai&allowMultiQueries=true&serverTimezone=GMT%2B8"
- name: SPRING_DATASOURCE_DRIVER-CLASS-NAME
value: "com.mysql.jdbc.Driver"
- name: SPRING_DATASOURCE_DEFAULTSCHEMA
value: "a_LAB01_d23cc850e"
- name: NACOS
value: "172.16.240.140:8848"
--- ---
apiVersion: v1 apiVersion: v1
...@@ -60,9 +35,9 @@ spec: ...@@ -60,9 +35,9 @@ spec:
type: NodePort type: NodePort
ports: ports:
- name: http - name: http
port: 50000 port: 8081
targetPort: 50000 targetPort: 8081
nodePort: 50000 nodePort: 8081
protocol: TCP protocol: TCP
selector: selector:
app: trainsys-provider app: trainsys-provider
......
...@@ -3,23 +3,9 @@ services: ...@@ -3,23 +3,9 @@ services:
trainsys-provider: trainsys-provider:
image: dstimage image: dstimage
ports: ports:
- "50000:50000" - "8081:8081"
networks: networks:
- agent_network - agent_network
environment:
- SPRING_CLOUD_NACOS_DISCOVERY_IP=172.16.240.140
- SERVER_PORT=50000
- SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR=172.16.240.140:8848
- SPRING_CLOUD_NACOS_CONFIG_SERVER-ADDR=172.16.240.140:8848
- SPRING_REDIS_HOST=127.0.0.1
- SPRING_REDIS_PORT=6379
- SPRING_REDIS_DATABASE=0
- SPRING_DATASOURCE_USERNAME=a_LAB01_d23cc850e
- SPRING_DATASOURCE_PASSWORD=f9Df4556
- SPRING_DATASOURCE_URL=jdbc:mysql://172.16.186.185:3306/a_LAB01_d23cc850e?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true&serverTimezone=Asia/Shanghai&allowMultiQueries=true&serverTimezone=GMT%2B8
- SPRING_DATASOURCE_DRIVER-CLASS-NAME=com.mysql.jdbc.Driver
- SPRING_DATASOURCE_DEFAULTSCHEMA=a_LAB01_d23cc850e
- NACOS=172.16.240.140:8848
deploy: deploy:
resources: resources:
limits: limits:
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册