Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
T
TrainSys
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
苏州培训方案
TrainSys
提交
7a9b9854
提交
7a9b9854
编写于
10月 30, 2023
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tony001 部署微服务应用 [TrainSys,Mob]
上级
15b37626
变更
8
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
305 行增加
和
39 行删除
+305
-39
environment.js
app_Mob/public/environments/environment.js
+14
-2
system.min.js
app_Mob/public/extras/js/system/6.14.2/system.min.js
+1
-1
login-view.scss
app_Mob/src/components/login-view/login-view.scss
+88
-0
login-view.tsx
app_Mob/src/components/login-view/login-view.tsx
+136
-0
index.ts
app_Mob/src/router/index.ts
+1
-1
config.xml
config.xml
+30
-0
PSSYSAPP.json
.../ibizlab/trainsys/PSSYSAPPS/TemplatePublish/PSSYSAPP.json
+4
-4
PSSYSAPP.json
...ces/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSSYSAPP.json
+31
-31
未找到文件。
app_Mob/public/environments/environment.js
浏览文件 @
7a9b9854
...
...
@@ -13,11 +13,23 @@ window.Environment = {
// mockDcSystemId: '941127f9d839f87308f1c4db3b0a2de4',
// appId: 'trainsys__mob',
// mockDcSystemId: '84847aa970ba3db7bbe00754aed3888d',
appId
:
'sztrainsys__mob'
,
mockDcSystemId
:
'ac2720c74d5456b40e24aeaf6ffffbd2'
,
// appId: 'ibizdemoold__sample',
// mockDcSystemId: 'ibizdemoold',
appId
:
'ls__lsmob'
,
mockDcSystemId
:
'LS'
,
// appId: 'ls__lsmob',
// mockDcSystemId: 'LS',
// appId: 'pms__sclpmsmob',
// mockDcSystemId: 'pms',
appId
:
'demosys__mobvue3'
,
mockDcSystemId
:
'demosys'
,
// 创新孵化
// appId: 'cxfhmgmt__cxfhappmob',
// mockDcSystemId: 'cxfhmgmt',
// 应用标题
AppTitle
:
'应用首页'
,
hub
:
false
,
enableMqtt
:
true
,
mqttUrl
:
'/portal/mqtt/mqtt'
,
// isLocalModel: true,
};
app_Mob/public/extras/js/system/6.14.2/system.min.js
浏览文件 @
7a9b9854
此差异已折叠。
点击以展开。
app_Mob/src/components/login-view/login-view.scss
0 → 100644
浏览文件 @
7a9b9854
@mixin
login-view-form-item-style
{
@include
flex
(
row
,
flex-start
,
center
);
ion-icon
{
margin-right
:
5%
;
}
.van-field
{
position
:
relative
;
padding
:
0
;
overflow
:
visible
;
.van-field__error-message
{
position
:
absolute
;
top
:
20px
;
}
}
input
{
color
:
#fff
;
background
:
#373447
;
border
:
none
;
&
:
-
webkit-autofill
{
box-shadow
:
0
0
0
1000px
#373447
inset
;
-webkit-text-fill-color
:
#fff
;
}
}
.
van-field__control
:
:
placeholder
{
color
:
#fff
;
background
:
#373447
;
}
height
:
40%
;
font-size
:
14px
;
border-bottom
:
1px
solid
#565366
;
}
@include
b
(
login-view
)
{
width
:
100vw
;
height
:
100vh
;
color
:
#fff
;
background
:
#373447
;
@include
b
(
login-view-logo
)
{
height
:
40%
;
@include
flex
(
column
,
center
,
center
);
@include
b
(
login-view-logo-img
)
{
margin-top
:
15%
;
}
@include
b
(
login-view-title
)
{
margin-top
:
5%
;
font-size
:
16px
;
}
}
@include
b
(
login-view-form
)
{
height
:
20%
;
padding
:
0
10%
;
@include
b
(
login-view-user
)
{
@include
login-view-form-item-style
;
}
@include
b
(
login-view-password
)
{
@include
login-view-form-item-style
;
}
}
@include
b
(
login-view-btns
)
{
height
:
40%
;
padding
:
0
10%
;
@include
b
(
login-view-login-btn
)
{
width
:
100%
;
margin
:
0
;
font-size
:
15px
;
color
:
#fff
;
background
:
#312e3f
;
border
:
none
;
border-radius
:
0
;
&
:hover
{
background
:
#4a4658
;
}
}
}
}
app_Mob/src/components/login-view/login-view.tsx
0 → 100644
浏览文件 @
7a9b9854
import
{
CoreConst
}
from
'@ibiz-template/core'
;
import
{
useNamespace
}
from
'@ibiz-template/vue3-util'
;
import
{
computed
,
defineComponent
,
reactive
,
Ref
,
ref
}
from
'vue'
;
import
{
useRoute
}
from
'vue-router'
;
import
'./login-view.scss'
;
import
{
getCookie
}
from
'qx-util'
;
export
const
LoginView
=
defineComponent
({
setup
()
{
const
loading
=
ref
(
false
);
const
formRef
=
ref
<
IData
|
null
>
(
null
);
const
route
=
useRoute
();
const
ru
=
(
route
.
query
.
ru
as
string
)
||
'/'
;
const
loginData
=
reactive
({
username
:
''
,
password
:
''
,
});
const
login
=
async
()
=>
{
try
{
if
(
!
loginData
.
username
)
{
ibiz
.
notification
.
error
({
desc
:
'请填写用户名'
,
});
return
;
}
if
(
!
loginData
.
password
)
{
ibiz
.
notification
.
error
({
desc
:
'请填写密码'
,
});
return
;
}
loading
.
value
=
true
;
const
bol
=
await
ibiz
.
auth
.
login
(
loginData
.
username
,
loginData
.
password
,
);
if
(
bol
)
{
window
.
location
.
hash
=
ru
;
window
.
location
.
reload
();
}
loading
.
value
=
false
;
}
catch
(
error
)
{
ibiz
.
notification
.
error
({
desc
:
(
error
as
IData
)?.
response
?.
data
?.
message
||
'登录失败'
,
});
loading
.
value
=
false
;
}
};
const
title
=
computed
(()
=>
{
return
ibiz
.
env
.
AppTitle
;
});
// 请求头
const
headers
:
Ref
<
IData
>
=
ref
({
Authorization
:
`Bearer
${
getCookie
(
CoreConst
.
TOKEN
)}
`
,
});
const
uploadFile
=
(
file
:
IData
)
=>
{
console
.
log
(
file
);
// 创建一个空对象实例
const
formData
=
new
FormData
();
// 调用append()方法添加数据
formData
.
append
(
'file'
,
file
.
file
);
return
new
Promise
((
resolve
,
reject
)
=>
{
ibiz
.
net
.
axios
({
url
:
'/api/demosys__mobvue3/viewtests/asyncimportdata2?srfimporttag=DataImport'
,
method
:
'POST'
,
data
:
formData
,
headers
:
headers
.
value
,
})
.
then
(
res
=>
{
if
(
res
.
status
===
200
)
{
console
.
log
(
88
,
res
);
resolve
(
true
);
}
else
{
reject
();
}
})
.
catch
(()
=>
{
reject
();
});
});
};
const
test
=
(
data
:
IData
)
=>
{
uploadFile
(
data
);
};
return
{
loginData
,
login
,
title
,
loading
,
formRef
,
test
};
},
render
()
{
const
ns
=
useNamespace
(
'login-view'
);
return
(
<
div
class=
{
ns
.
b
()
}
>
<
div
class=
{
ns
.
b
(
'logo'
)
}
>
<
img
class=
{
ns
.
b
(
'logo-img'
)
}
src=
'./assets/img/login-logo.png'
/>
<
div
class=
{
ns
.
b
(
'title'
)
}
>
{
this
.
title
}
</
div
>
</
div
>
<
van
-
form
class=
{
ns
.
b
(
'form'
)
}
ref=
'formRef'
>
<
div
class=
{
ns
.
b
(
'user'
)
}
>
<
ion
-
icon
name=
'person'
></
ion
-
icon
>
<
van
-
field
placeholder=
'请输入用户名'
name=
'用户名'
v
-
model=
{
this
.
loginData
.
username
}
rules=
{
[{
required
:
true
,
message
:
'请填写用户名'
}]
}
></
van
-
field
>
</
div
>
<
div
class=
{
ns
.
b
(
'password'
)
}
>
<
ion
-
icon
name=
'lock-closed'
></
ion
-
icon
>
<
van
-
field
placeholder=
'请输入密码'
name=
'密码'
type=
'password'
v
-
model=
{
this
.
loginData
.
password
}
rules=
{
[{
required
:
true
,
message
:
'请填写密码'
}]
}
></
van
-
field
>
</
div
>
</
van
-
form
>
<
div
class=
{
ns
.
b
(
'btns'
)
}
>
<
van
-
button
loading=
{
this
.
loading
}
class=
{
ns
.
b
(
'login-btn'
)
}
onClick=
{
this
.
login
}
>
登录
</
van
-
button
>
<
van
-
uploader
after
-
read=
{
this
.
test
}
>
测试导入
</
van
-
uploader
>
</
div
>
</
div
>
);
},
});
app_Mob/src/router/index.ts
浏览文件 @
7a9b9854
...
...
@@ -2,13 +2,13 @@ import { Router, createRouter, createWebHashHistory } from 'vue-router';
import
{
AppRedirectView
,
View404
,
LoginView
,
useViewStack
,
}
from
'@ibiz-template/mob-vue3-components'
;
import
{
Modal
,
ViewMode
}
from
'@ibiz-template/runtime'
;
import
{
isNilOrEmpty
}
from
'qx-util'
;
import
{
AuthGuard
}
from
'../guard'
;
import
{
RouterShell
,
HomeView
}
from
'@/components'
;
import
{
LoginView
}
from
'@/components/login-view/login-view'
;
const
getPropsCallback
=
(
depth
:
number
)
=>
{
if
(
depth
===
1
)
{
...
...
config.xml
浏览文件 @
7a9b9854
...
...
@@ -55,6 +55,36 @@
git clone -b master $para2 trainsys/
export NODE_OPTIONS=--max-old-space-size=4096
cd trainsys/
mkdir -p /var/lib/jenkins/appcache/64777BB9-78E2-44DD-AEF6-FF87AC45C1D5
if [ -e app_Mob/.dynamic ]
then
cd app_Mob
else
cd app_Mob/app
fi
sed -i "s#dstimage#$para5#g" swarm.yaml
if [[ $para3 = all ]];then
mv Dockerfile-ALL Dockerfile
set +e
sed -i "s#/api#/sztrainsys__mob#g" src/environments/environment.ts
sed -i "s#outputDir#//outputDir#g" vue.config.js
set -e
yarn
ln -s /var/lib/jenkins/appcache/64777BB9-78E2-44DD-AEF6-FF87AC45C1D5 node_modules/.cache
yarn build
else
if [ -e .dynamic ]
then
mv ../trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Mob model
else
mv ../../trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Mob model
fi
sed -i "s#srcimagename#$para4#g" Dockerfile-MODEL
mv Dockerfile-MODEL Dockerfile
fi
docker build -t $para5 .
docker push $para5
docker -H $para1 stack deploy --compose-file=swarm.yaml ebsx --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/TemplatePublish/PSSYSAPP.json
浏览文件 @
7a9b9854
...
...
@@ -1432,16 +1432,16 @@
"codeName"
:
"VMGroup2"
,
"name"
:
"视图消息组2"
,
"getPSAppViewMsgGroupDetails"
:
[
{
"name"
:
"视图消息
2
"
,
"name"
:
"视图消息"
,
"getPSAppViewMsg"
:
{
"modelref"
:
true
,
"id"
:
"ViewMsg
3
"
"id"
:
"ViewMsg
2
"
}
},
{
"name"
:
"视图消息"
,
"name"
:
"视图消息
2
"
,
"getPSAppViewMsg"
:
{
"modelref"
:
true
,
"id"
:
"ViewMsg
2
"
"id"
:
"ViewMsg
3
"
}
}
]
},
{
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSSYSAPP.json
浏览文件 @
7a9b9854
...
...
@@ -11189,16 +11189,16 @@
"codeName" : "VMGroup2",
"name" : "视图消息组2",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "视图消息
2
",
"name" : "视图消息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
3
"
"id" : "ViewMsg
2
"
}
}, {
"name" : "视图消息",
"name" : "视图消息
2
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
2
"
"id" : "ViewMsg
3
"
}
} ]
}, {
...
...
@@ -11233,16 +11233,16 @@
"id" : "ViewMsg4"
}
}, {
"name" : "消息类型-
警告
信息",
"name" : "消息类型-
错误
信息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
5
"
"id" : "ViewMsg
6
"
}
}, {
"name" : "消息类型-
错误
信息",
"name" : "消息类型-
警告
信息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
6
"
"id" : "ViewMsg
5
"
}
} ]
}, {
...
...
@@ -11259,34 +11259,41 @@
"codeName" : "VMGroup4",
"name" : "视图消息位置测试",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "消息位置-
视图内容区
",
"name" : "消息位置-
弹出
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
9
"
"id" : "ViewMsg
10
"
}
}, {
"name" : "消息位置-视图
上
方",
"name" : "消息位置-视图
下
方",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
7
"
"id" : "ViewMsg
8
"
}
}, {
"name" : "消息位置-
弹出
",
"name" : "消息位置-
视图内容区
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
10
"
"id" : "ViewMsg
9
"
}
}, {
"name" : "消息位置-视图
下
方",
"name" : "消息位置-视图
上
方",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
8
"
"id" : "ViewMsg
7
"
}
} ]
}, {
"codeName" : "VMGroup8",
"name" : "【静态测试】",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "消息类型-错误信息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg6"
},
"position" : "POPUP"
}, {
"name" : "关闭模式-无删除-上方-常规",
"getPSAppViewMsg" : {
"modelref" : true,
...
...
@@ -11300,16 +11307,16 @@
},
"position" : "POPUP"
}, {
"name" : "
消息位置-视图内容区
",
"name" : "
关闭模式-默认删除-上方-错误
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
9
"
"id" : "ViewMsg
12
"
}
}, {
"name" : "
关闭模式-默认删除-上方-错误
",
"name" : "
消息位置-视图内容区
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg
12
"
"id" : "ViewMsg
9
"
}
}, {
"name" : "消息位置-视图下方",
...
...
@@ -11330,13 +11337,6 @@
"id" : "ViewMsg5"
},
"position" : "POPUP"
}, {
"name" : "消息类型-错误信息",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg6"
},
"position" : "POPUP"
} ]
}, {
"codeName" : "VMGroup5",
...
...
@@ -11364,16 +11364,16 @@
"codeName" : "VMGroup6",
"name" : "视图消息动态模式测试",
"getPSAppViewMsgGroupDetails" : [ {
"name" : "动态模式-
静态内容
",
"name" : "动态模式-
实体数据集
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg1
5
"
"id" : "ViewMsg1
4
"
}
}, {
"name" : "动态模式-
实体数据集
",
"name" : "动态模式-
静态内容
",
"getPSAppViewMsg" : {
"modelref" : true,
"id" : "ViewMsg1
4
"
"id" : "ViewMsg1
5
"
}
} ]
} ],
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录