Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
T
TrainSys
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
苏州培训方案
TrainSys
提交
9acd5c84
提交
9acd5c84
编写于
4月 03, 2025
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
zhanghengfeng 发布系统代码 [TrainSys,网页端]
上级
33906857
变更
13
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
13 个修改的文件
包含
1624 行增加
和
0 行删除
+1624
-0
TEST.json
.../ibizlab/trainsys/PSMODULES/Test/PSDATAENTITIES/TEST.json
+48
-0
Test.json
.../PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json
+26
-0
logictest.json
...ODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json
+11
-0
logictest.json.drl
...ES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json.drl
+6
-0
TEST.json
...bizlab/trainsys/PSSYSAPPS/Mob/PSAPPDATAENTITIES/TEST.json
+62
-0
PSSYSAPP.json
...ces/model/cn/ibizlab/trainsys/PSSYSAPPS/Mob/PSSYSAPP.json
+62
-0
TEST.json
...sys/PSSYSAPPS/TemplatePublish/PSAPPDATAENTITIES/TEST.json
+62
-0
TEST.json
...bizlab/trainsys/PSSYSAPPS/Web/PSAPPDATAENTITIES/TEST.json
+66
-0
Usr04039375EditView_Form.json
...PPDATAENTITIES/TEST/PSFORMS/Usr04039375EditView_Form.json
+455
-0
TESTUsr04039375EditView.json
...s/PSSYSAPPS/Web/PSAPPDEVIEWS/TESTUsr04039375EditView.json
+772
-0
AppIndex.json
...zlab/trainsys/PSSYSAPPS/Web/PSAPPINDEXVIEWS/AppIndex.json
+19
-0
AppIndex.json
...n/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPMENUS/AppIndex.json
+10
-0
TrainSys.json
.../model/cn/ibizlab/trainsys/PSSYSSERVICEAPIS/TrainSys.json
+25
-0
未找到文件。
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSMODULES/Test/PSDATAENTITIES/TEST.json
浏览文件 @
9acd5c84
...
...
@@ -511,6 +511,31 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/Success.json"
},
"enableBackend"
:
false
},
{
"actionHolder"
:
1
,
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
"codeName"
:
"Test"
,
"dynaModelFilePath"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
,
"logicName"
:
"行为9"
,
"name"
:
"test"
,
"getPSDEActionInput"
:
{
"name"
:
"TestInput"
,
"getPSDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSDEActionReturn"
:
{
"name"
:
"TestResult"
,
"type"
:
"VOID"
},
"getPSDELogic"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json"
},
"enableFront"
:
false
},
{
"actionHolder"
:
2
,
"actionMode"
:
"CUSTOM"
,
...
...
@@ -5820,6 +5845,16 @@
},
"enableBackend"
:
false
,
"enableFront"
:
true
},
{
"codeName"
:
"logictest"
,
"defaultParamName"
:
"DEFAULT"
,
"dynaModelFilePath"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json"
,
"logicName"
:
"处理逻辑脚本"
,
"name"
:
"处理逻辑脚本"
,
"scriptCode"
:
"console.log('实体逻辑脚本代码模式脚本', arguments)"
,
"customCode"
:
true
,
"enableBackend"
:
true
,
"enableFront"
:
false
},
{
"codeName"
:
"multiDeLogic"
,
"defaultParamName"
:
"Default"
,
...
...
@@ -6799,6 +6834,12 @@
"name"
:
"分页部件关系界面组"
,
"realModelSubType"
:
"DEEDITVIEW"
,
"realModelType"
:
"PSDEVIEWBASE"
},
{
"codeName"
:
"Usr04039375EditView"
,
"logicName"
:
"计算视图消息是否显示脚本"
,
"name"
:
"计算视图消息是否显示脚本"
,
"realModelSubType"
:
"DEEDITVIEW"
,
"realModelType"
:
"PSDEVIEWBASE"
},
{
"codeName"
:
"Usr5TabExpView2"
,
"logicName"
:
"布局闪烁确认-分页导航2"
,
...
...
@@ -8447,6 +8488,13 @@
"name"
:
"多语言引用视图_表单"
,
"realModelSubType"
:
"EDITFORM"
,
"realModelType"
:
"PSDEFORM"
},
{
"codeName"
:
"Usr04039375EditView_Form"
,
"logicName"
:
"计算视图消息是否显示脚本_表单"
,
"modelTag2"
:
"0"
,
"name"
:
"计算视图消息是否显示脚本_表单"
,
"realModelSubType"
:
"EDITFORM"
,
"realModelType"
:
"PSDEFORM"
},
{
"codeName"
:
"Usr04034638EditView_Form"
,
"logicName"
:
"界面行为按钮计算启用逻辑脚本(_表单"
,
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json
0 → 100644
浏览文件 @
9acd5c84
{
"actionHolder"
:
1
,
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
"codeName"
:
"Test"
,
"dynaModelFilePath"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
,
"logicName"
:
"行为9"
,
"name"
:
"test"
,
"getPSDEActionInput"
:
{
"name"
:
"TestInput"
,
"getPSDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSDEActionReturn"
:
{
"name"
:
"TestResult"
,
"type"
:
"VOID"
},
"getPSDELogic"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json"
},
"enableFront"
:
false
}
\ No newline at end of file
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json
0 → 100644
浏览文件 @
9acd5c84
{
"codeName"
:
"logictest"
,
"defaultParamName"
:
"DEFAULT"
,
"dynaModelFilePath"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json"
,
"logicName"
:
"处理逻辑脚本"
,
"name"
:
"处理逻辑脚本"
,
"scriptCode"
:
"console.log('实体逻辑脚本代码模式脚本', arguments)"
,
"customCode"
:
true
,
"enableBackend"
:
true
,
"enableFront"
:
false
}
\ No newline at end of file
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSMODULES/Test/PSDATAENTITIES/TEST/PSDELOGICS/logictest.json.drl
0 → 100644
浏览文件 @
9acd5c84
package
cn
.
ibizlab
.
trainsys
.
test
.
logic
.
testlogic
.
logictest
;
global
cn
.
ibizlab
.
trainsys
.
core
.
test
.
service
.
ITESTService
iBzSysTestDefaultService
;
global
cn
.
ibizlab
.
trainsys
.
util
.
security
.
AuthenticationUser
curuser
;
no
-
loop
\ No newline at end of file
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Mob/PSAPPDATAENTITIES/TEST.json
浏览文件 @
9acd5c84
...
...
@@ -661,6 +661,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
@@ -4929,6 +4960,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Mob/PSSYSAPP.json
浏览文件 @
9acd5c84
...
...
@@ -19835,6 +19835,37 @@
"path" : "PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod" : false
}, {
"actionMode" : "CUSTOM",
"actionName" : "test",
"codeName" : "Test",
"methodType" : "DEACTION",
"name" : "Test",
"getPSAppDEMethodInput" : {
"name" : "输入对象",
"getPSAppDEMethodDTO" : {
"modelref" : true,
"id" : "TESTDTO"
},
"type" : "DTO"
},
"getPSAppDEMethodReturn" : {
"name" : "返回对象",
"type" : "VOID"
},
"getPSDEAction" : {
"modelref" : true,
"path" : "PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod" : {
"modelref" : true,
"id" : "Test"
},
"requestMethod" : "POST",
"requestParamType" : "ENTITY",
"requestPath" : "/test",
"builtinMethod" : false,
"needResourceKey" : true
}, {
"actionMode" : "CUSTOM",
"actionType" : "DELOGIC",
...
...
@@ -24103,6 +24134,37 @@
"path" : "PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod" : false
}, {
"actionMode" : "CUSTOM",
"actionName" : "test",
"codeName" : "Test",
"methodType" : "DEACTION",
"name" : "Test",
"getPSAppDEMethodInput" : {
"name" : "输入对象",
"getPSAppDEMethodDTO" : {
"modelref" : true,
"id" : "TESTDTO"
},
"type" : "DTO"
},
"getPSAppDEMethodReturn" : {
"name" : "返回对象",
"type" : "VOID"
},
"getPSDEAction" : {
"modelref" : true,
"path" : "PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod" : {
"modelref" : true,
"id" : "Test"
},
"requestMethod" : "POST",
"requestParamType" : "ENTITY",
"requestPath" : "/test",
"builtinMethod" : false,
"needResourceKey" : true
}, {
"actionMode" : "CUSTOM",
"actionType" : "DELOGIC",
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/TemplatePublish/PSAPPDATAENTITIES/TEST.json
浏览文件 @
9acd5c84
...
...
@@ -712,6 +712,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
@@ -4980,6 +5011,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPDATAENTITIES/TEST.json
浏览文件 @
9acd5c84
...
...
@@ -742,6 +742,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
@@ -5010,6 +5041,37 @@
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Success.json"
},
"builtinMethod"
:
false
},
{
"actionMode"
:
"CUSTOM"
,
"actionName"
:
"test"
,
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSAppDEMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSAppDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSAppDEMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethod"
:
{
"modelref"
:
true
,
"id"
:
"Test"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"builtinMethod"
:
false
,
"needResourceKey"
:
true
},
{
"actionMode"
:
"CUSTOM"
,
"actionType"
:
"DELOGIC"
,
...
...
@@ -9584,6 +9646,10 @@
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDEVIEWS/TESTTESTIndexView.json"
,
"viewType"
:
"DEINDEXVIEW"
},
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDEVIEWS/TESTUsr04039375EditView.json"
,
"viewType"
:
"DEEDITVIEW"
},
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDEVIEWS/TESTUsr01294676TabExpView.json"
,
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPDATAENTITIES/TEST/PSFORMS/Usr04039375EditView_Form.json
0 → 100644
浏览文件 @
9acd5c84
此差异已折叠。
点击以展开。
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPDEVIEWS/TESTUsr04039375EditView.json
0 → 100644
浏览文件 @
9acd5c84
此差异已折叠。
点击以展开。
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPINDEXVIEWS/AppIndex.json
浏览文件 @
9acd5c84
...
...
@@ -580,6 +580,25 @@
"layout"
:
"TABLE_24COL"
},
"tooltip"
:
"值规则脚本"
},
{
"accUserMode"
:
2
,
"caption"
:
"计算视图消息是否显示脚本"
,
"itemType"
:
"MENUITEM"
,
"name"
:
"menuitem391"
,
"getPSAppFunc"
:
{
"modelref"
:
true
,
"id"
:
"UsrAppFunc0403040435"
},
"getPSLayout"
:
{
"childColMD"
:
24
,
"columnCount"
:
24
,
"layout"
:
"TABLE_24COL"
},
"getPSLayoutPos"
:
{
"colMD"
:
24
,
"layout"
:
"TABLE_24COL"
},
"tooltip"
:
"计算视图消息是否显示脚本"
}
],
"getPSLayout"
:
{
"childColMD"
:
24
,
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSAPPS/Web/PSAPPMENUS/AppIndex.json
浏览文件 @
9acd5c84
...
...
@@ -78,6 +78,16 @@
"id"
:
"UsrAppFunc0403684744"
},
"tooltip"
:
"值规则脚本"
},
{
"accUserMode"
:
2
,
"caption"
:
"计算视图消息是否显示脚本"
,
"itemType"
:
"MENUITEM"
,
"name"
:
"menuitem391"
,
"getPSAppFunc"
:
{
"modelref"
:
true
,
"id"
:
"UsrAppFunc0403040435"
},
"tooltip"
:
"计算视图消息是否显示脚本"
}
],
"tooltip"
:
"代码规范1"
},
{
...
...
trainsys-core/src/main/resources/model/cn/ibizlab/trainsys/PSSYSSERVICEAPIS/TrainSys.json
浏览文件 @
9acd5c84
...
...
@@ -16885,6 +16885,31 @@
"requestPath"
:
"/save2"
,
"uniqueTag"
:
"TEST__DEACTION__SAVE2"
,
"needResourceKey"
:
true
},
{
"codeName"
:
"Test"
,
"methodType"
:
"DEACTION"
,
"name"
:
"Test"
,
"getPSDEAction"
:
{
"modelref"
:
true
,
"path"
:
"PSMODULES/Test/PSDATAENTITIES/TEST/PSDEACTIONS/Test.json"
},
"getPSDEServiceAPIMethodInput"
:
{
"name"
:
"输入对象"
,
"getPSDEMethodDTO"
:
{
"modelref"
:
true
,
"id"
:
"TESTDTO"
},
"type"
:
"DTO"
},
"getPSDEServiceAPIMethodReturn"
:
{
"name"
:
"返回对象"
,
"type"
:
"VOID"
},
"requestMethod"
:
"POST"
,
"requestParamType"
:
"ENTITY"
,
"requestPath"
:
"/test"
,
"uniqueTag"
:
"TEST__DEACTION__TEST"
,
"needResourceKey"
:
true
},
{
"codeName"
:
"Update2"
,
"dataAccessAction"
:
"UPDATE"
,
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录