Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dlink
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhaowei
dlink
Commits
fee2a695
Commit
fee2a695
authored
Jul 05, 2021
by
wenmo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
作业提交优化
parent
d7ff5934
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
93 additions
and
79 deletions
+93
-79
README.md
README.md
+4
-2
TaskController.java
...in/src/main/java/com/dlink/controller/TaskController.java
+3
-2
Task.java
dlink-admin/src/main/java/com/dlink/model/Task.java
+8
-0
ClusterService.java
...admin/src/main/java/com/dlink/service/ClusterService.java
+2
-0
TaskService.java
dlink-admin/src/main/java/com/dlink/service/TaskService.java
+2
-1
ClusterServiceImpl.java
.../main/java/com/dlink/service/impl/ClusterServiceImpl.java
+22
-0
StudioServiceImpl.java
...c/main/java/com/dlink/service/impl/StudioServiceImpl.java
+2
-21
TaskServiceImpl.java
...src/main/java/com/dlink/service/impl/TaskServiceImpl.java
+17
-3
JobConfig.java
dlink-core/src/main/java/com/dlink/job/JobConfig.java
+20
-0
JobManager.java
dlink-core/src/main/java/com/dlink/job/JobManager.java
+0
-45
JobManagerTest.java
dlink-core/src/test/java/com/dlink/core/JobManagerTest.java
+2
-2
index.tsx
dlink-web/src/components/Studio/StudioMenu/index.tsx
+6
-2
index.tsx
dlink-web/src/components/Studio/StudioTree/index.tsx
+5
-1
No files found.
README.md
View file @
fee2a695
...
@@ -91,9 +91,11 @@ DataLink 开源项目及社区正在建设,希望本项目可以帮助你更
...
@@ -91,9 +91,11 @@ DataLink 开源项目及社区正在建设,希望本项目可以帮助你更
## 部署
## 部署
###
最新
版本
### 版本
dlink-0.2.3
抢先体验( main 主支):dlink-0.3.0-SANPSHOT
稳定版本( 0.2.3 分支):dlink-0.2.3
### 从安装包开始
### 从安装包开始
...
...
dlink-admin/src/main/java/com/dlink/controller/TaskController.java
View file @
fee2a695
...
@@ -2,6 +2,7 @@ package com.dlink.controller;
...
@@ -2,6 +2,7 @@ package com.dlink.controller;
import
com.dlink.common.result.ProTableResult
;
import
com.dlink.common.result.ProTableResult
;
import
com.dlink.common.result.Result
;
import
com.dlink.common.result.Result
;
import
com.dlink.job.JobResult
;
import
com.dlink.model.Task
;
import
com.dlink.model.Task
;
import
com.dlink.result.SubmitResult
;
import
com.dlink.result.SubmitResult
;
import
com.dlink.service.TaskService
;
import
com.dlink.service.TaskService
;
...
@@ -76,11 +77,11 @@ public class TaskController {
...
@@ -76,11 +77,11 @@ public class TaskController {
@PostMapping
(
value
=
"/submit"
)
@PostMapping
(
value
=
"/submit"
)
public
Result
submit
(
@RequestBody
JsonNode
para
)
throws
Exception
{
public
Result
submit
(
@RequestBody
JsonNode
para
)
throws
Exception
{
if
(
para
.
size
()>
0
){
if
(
para
.
size
()>
0
){
List
<
Submit
Result
>
results
=
new
ArrayList
<>();
List
<
Job
Result
>
results
=
new
ArrayList
<>();
List
<
Integer
>
error
=
new
ArrayList
<>();
List
<
Integer
>
error
=
new
ArrayList
<>();
for
(
final
JsonNode
item
:
para
){
for
(
final
JsonNode
item
:
para
){
Integer
id
=
item
.
asInt
();
Integer
id
=
item
.
asInt
();
Submit
Result
result
=
taskService
.
submitByTaskId
(
id
);
Job
Result
result
=
taskService
.
submitByTaskId
(
id
);
if
(!
result
.
isSuccess
()){
if
(!
result
.
isSuccess
()){
error
.
add
(
id
);
error
.
add
(
id
);
}
}
...
...
dlink-admin/src/main/java/com/dlink/model/Task.java
View file @
fee2a695
...
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
...
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import
com.dlink.db.model.SuperEntity
;
import
com.dlink.db.model.SuperEntity
;
import
com.dlink.executor.Executor
;
import
com.dlink.executor.Executor
;
import
com.dlink.executor.ExecutorSetting
;
import
com.dlink.executor.ExecutorSetting
;
import
com.dlink.job.JobConfig
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.EqualsAndHashCode
;
...
@@ -56,5 +57,12 @@ public class Task extends SuperEntity{
...
@@ -56,5 +57,12 @@ public class Task extends SuperEntity{
return
new
ExecutorSetting
(
checkPoint
,
parallelism
,
fragment
,
savePointPath
,
alias
,
configMap
);
return
new
ExecutorSetting
(
checkPoint
,
parallelism
,
fragment
,
savePointPath
,
alias
,
configMap
);
}
}
public
JobConfig
getSubmitConfig
(){
boolean
useRemote
=
true
;
if
(
clusterId
==
null
||
clusterId
==
0
){
useRemote
=
false
;
}
return
new
JobConfig
(
false
,
false
,
useRemote
,
clusterId
,
getId
(),
alias
,
fragment
,
checkPoint
,
parallelism
,
savePointPath
);
}
}
}
dlink-admin/src/main/java/com/dlink/service/ClusterService.java
View file @
fee2a695
...
@@ -17,5 +17,7 @@ public interface ClusterService extends ISuperService<Cluster> {
...
@@ -17,5 +17,7 @@ public interface ClusterService extends ISuperService<Cluster> {
String
getJobManagerAddress
(
Cluster
cluster
);
String
getJobManagerAddress
(
Cluster
cluster
);
String
buildEnvironmentAddress
(
boolean
useRemote
,
Integer
id
);
List
<
Cluster
>
listEnabledAll
();
List
<
Cluster
>
listEnabledAll
();
}
}
dlink-admin/src/main/java/com/dlink/service/TaskService.java
View file @
fee2a695
...
@@ -2,6 +2,7 @@ package com.dlink.service;
...
@@ -2,6 +2,7 @@ package com.dlink.service;
import
com.dlink.db.service.ISuperService
;
import
com.dlink.db.service.ISuperService
;
import
com.dlink.job.JobResult
;
import
com.dlink.model.Task
;
import
com.dlink.model.Task
;
import
com.dlink.result.SubmitResult
;
import
com.dlink.result.SubmitResult
;
...
@@ -13,7 +14,7 @@ import com.dlink.result.SubmitResult;
...
@@ -13,7 +14,7 @@ import com.dlink.result.SubmitResult;
*/
*/
public
interface
TaskService
extends
ISuperService
<
Task
>
{
public
interface
TaskService
extends
ISuperService
<
Task
>
{
Submit
Result
submitByTaskId
(
Integer
id
);
Job
Result
submitByTaskId
(
Integer
id
);
Task
getTaskInfoById
(
Integer
id
);
Task
getTaskInfoById
(
Integer
id
);
...
...
dlink-admin/src/main/java/com/dlink/service/impl/ClusterServiceImpl.java
View file @
fee2a695
...
@@ -3,12 +3,16 @@ package com.dlink.service.impl;
...
@@ -3,12 +3,16 @@ package com.dlink.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.dlink.assertion.Assert
;
import
com.dlink.assertion.Assert
;
import
com.dlink.cluster.FlinkCluster
;
import
com.dlink.cluster.FlinkCluster
;
import
com.dlink.constant.FlinkConstant
;
import
com.dlink.constant.NetConstant
;
import
com.dlink.db.service.impl.SuperServiceImpl
;
import
com.dlink.db.service.impl.SuperServiceImpl
;
import
com.dlink.mapper.ClusterMapper
;
import
com.dlink.mapper.ClusterMapper
;
import
com.dlink.model.Cluster
;
import
com.dlink.model.Cluster
;
import
com.dlink.service.ClusterService
;
import
com.dlink.service.ClusterService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.net.InetAddress
;
import
java.net.UnknownHostException
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -37,6 +41,24 @@ public class ClusterServiceImpl extends SuperServiceImpl<ClusterMapper, Cluster>
...
@@ -37,6 +41,24 @@ public class ClusterServiceImpl extends SuperServiceImpl<ClusterMapper, Cluster>
return
host
;
return
host
;
}
}
@Override
public
String
buildEnvironmentAddress
(
boolean
useRemote
,
Integer
id
)
{
String
address
=
FlinkConstant
.
LOCAL_HOST
;
if
(
useRemote
)
{
return
getJobManagerAddress
(
getById
(
id
));
}
else
{
try
{
InetAddress
inetAddress
=
InetAddress
.
getLocalHost
();
if
(
inetAddress
!=
null
)
{
return
inetAddress
.
getHostAddress
()+
NetConstant
.
COLON
+
FlinkConstant
.
PORT
;
}
}
catch
(
UnknownHostException
e
)
{
e
.
printStackTrace
();
}
}
return
address
;
}
@Override
@Override
public
List
<
Cluster
>
listEnabledAll
()
{
public
List
<
Cluster
>
listEnabledAll
()
{
return
this
.
list
(
new
QueryWrapper
<
Cluster
>().
eq
(
"enabled"
,
1
));
return
this
.
list
(
new
QueryWrapper
<
Cluster
>().
eq
(
"enabled"
,
1
));
...
...
dlink-admin/src/main/java/com/dlink/service/impl/StudioServiceImpl.java
View file @
fee2a695
...
@@ -43,34 +43,15 @@ public class StudioServiceImpl implements StudioService {
...
@@ -43,34 +43,15 @@ public class StudioServiceImpl implements StudioService {
@Override
@Override
public
JobResult
executeSql
(
StudioExecuteDTO
studioExecuteDTO
)
{
public
JobResult
executeSql
(
StudioExecuteDTO
studioExecuteDTO
)
{
JobConfig
config
=
studioExecuteDTO
.
getJobConfig
();
JobConfig
config
=
studioExecuteDTO
.
getJobConfig
();
buildEnvironmentAddress
(
config
,
studioExecuteDTO
.
getClusterId
(
));
config
.
setAddress
(
clusterService
.
buildEnvironmentAddress
(
config
.
isUseRemote
(),
studioExecuteDTO
.
getClusterId
()
));
JobManager
jobManager
=
JobManager
.
build
(
config
);
JobManager
jobManager
=
JobManager
.
build
(
config
);
return
jobManager
.
executeSql
(
studioExecuteDTO
.
getStatement
());
return
jobManager
.
executeSql
(
studioExecuteDTO
.
getStatement
());
}
}
private
void
buildEnvironmentAddress
(
JobConfig
config
,
Integer
clusterId
){
if
(
config
.
isUseRemote
())
{
config
.
setAddress
(
clusterService
.
getJobManagerAddress
(
clusterService
.
getById
(
clusterId
)
));
}
else
{
try
{
InetAddress
address
=
InetAddress
.
getLocalHost
();
if
(
address
!=
null
)
{
config
.
setAddress
(
address
.
getHostAddress
());
}
else
{
config
.
setAddress
(
FlinkConstant
.
LOCAL_HOST
);
}
}
catch
(
UnknownHostException
e
)
{
e
.
printStackTrace
();
}
}
}
@Override
@Override
public
IResult
executeDDL
(
StudioDDLDTO
studioDDLDTO
)
{
public
IResult
executeDDL
(
StudioDDLDTO
studioDDLDTO
)
{
JobConfig
config
=
studioDDLDTO
.
getJobConfig
();
JobConfig
config
=
studioDDLDTO
.
getJobConfig
();
buildEnvironmentAddress
(
config
,
studioDDLDTO
.
getClusterId
(
));
config
.
setAddress
(
clusterService
.
buildEnvironmentAddress
(
config
.
isUseRemote
(),
studioDDLDTO
.
getClusterId
()
));
JobManager
jobManager
=
JobManager
.
build
(
config
);
JobManager
jobManager
=
JobManager
.
build
(
config
);
return
jobManager
.
executeDDL
(
studioDDLDTO
.
getStatement
());
return
jobManager
.
executeDDL
(
studioDDLDTO
.
getStatement
());
}
}
...
...
dlink-admin/src/main/java/com/dlink/service/impl/TaskServiceImpl.java
View file @
fee2a695
...
@@ -3,11 +3,14 @@ package com.dlink.service.impl;
...
@@ -3,11 +3,14 @@ package com.dlink.service.impl;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.dlink.assertion.Assert
;
import
com.dlink.assertion.Assert
;
import
com.dlink.cluster.FlinkCluster
;
import
com.dlink.cluster.FlinkCluster
;
import
com.dlink.constant.FlinkConstant
;
import
com.dlink.db.service.impl.SuperServiceImpl
;
import
com.dlink.db.service.impl.SuperServiceImpl
;
import
com.dlink.exception.BusException
;
import
com.dlink.exception.BusException
;
import
com.dlink.executor.Executor
;
import
com.dlink.executor.Executor
;
import
com.dlink.executor.ExecutorSetting
;
import
com.dlink.executor.ExecutorSetting
;
import
com.dlink.job.JobConfig
;
import
com.dlink.job.JobManager
;
import
com.dlink.job.JobManager
;
import
com.dlink.job.JobResult
;
import
com.dlink.mapper.TaskMapper
;
import
com.dlink.mapper.TaskMapper
;
import
com.dlink.model.Cluster
;
import
com.dlink.model.Cluster
;
import
com.dlink.model.Statement
;
import
com.dlink.model.Statement
;
...
@@ -19,6 +22,9 @@ import com.dlink.service.TaskService;
...
@@ -19,6 +22,9 @@ import com.dlink.service.TaskService;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.net.InetAddress
;
import
java.net.UnknownHostException
;
/**
/**
* 任务 服务实现类
* 任务 服务实现类
*
*
...
@@ -34,8 +40,8 @@ public class TaskServiceImpl extends SuperServiceImpl<TaskMapper, Task> implemen
...
@@ -34,8 +40,8 @@ public class TaskServiceImpl extends SuperServiceImpl<TaskMapper, Task> implemen
private
ClusterService
clusterService
;
private
ClusterService
clusterService
;
@Override
@Override
public
Submit
Result
submitByTaskId
(
Integer
id
)
{
public
Job
Result
submitByTaskId
(
Integer
id
)
{
Task
task
=
this
.
getById
(
id
);
/*
Task task = this.getById(id);
Assert.check(task);
Assert.check(task);
Cluster cluster = clusterService.getById(task.getClusterId());
Cluster cluster = clusterService.getById(task.getClusterId());
Statement statement = statementService.getById(id);
Statement statement = statementService.getById(id);
...
@@ -54,7 +60,15 @@ public class TaskServiceImpl extends SuperServiceImpl<TaskMapper, Task> implemen
...
@@ -54,7 +60,15 @@ public class TaskServiceImpl extends SuperServiceImpl<TaskMapper, Task> implemen
return jobManager.submit(statement.getStatement());
return jobManager.submit(statement.getStatement());
}else{
}else{
throw new BusException("该任务的集群不存在");
throw new BusException("该任务的集群不存在");
}
}*/
Task
task
=
this
.
getById
(
id
);
Assert
.
check
(
task
);
Statement
statement
=
statementService
.
getById
(
id
);
Assert
.
check
(
statement
);
JobConfig
config
=
task
.
getSubmitConfig
();
config
.
setAddress
(
clusterService
.
buildEnvironmentAddress
(
config
.
isUseRemote
(),
task
.
getClusterId
()));
JobManager
jobManager
=
JobManager
.
build
(
config
);
return
jobManager
.
executeSql
(
statement
.
getStatement
());
}
}
@Override
@Override
...
...
dlink-core/src/main/java/com/dlink/job/JobConfig.java
View file @
fee2a695
...
@@ -54,7 +54,27 @@ public class JobConfig {
...
@@ -54,7 +54,27 @@ public class JobConfig {
this
.
clusterId
=
clusterId
;
this
.
clusterId
=
clusterId
;
}
}
public
JobConfig
(
boolean
useResult
,
boolean
useSession
,
boolean
useRemote
,
Integer
clusterId
,
Integer
taskId
,
String
jobName
,
boolean
useSqlFragment
,
Integer
checkpoint
,
Integer
parallelism
,
String
savePointPath
)
{
this
.
useResult
=
useResult
;
this
.
useSession
=
useSession
;
this
.
useRemote
=
useRemote
;
this
.
clusterId
=
clusterId
;
this
.
taskId
=
taskId
;
this
.
jobName
=
jobName
;
this
.
useSqlFragment
=
useSqlFragment
;
this
.
checkpoint
=
checkpoint
;
this
.
parallelism
=
parallelism
;
this
.
savePointPath
=
savePointPath
;
}
public
ExecutorSetting
getExecutorSetting
(){
public
ExecutorSetting
getExecutorSetting
(){
return
new
ExecutorSetting
(
checkpoint
,
parallelism
,
useSqlFragment
,
savePointPath
,
jobName
);
return
new
ExecutorSetting
(
checkpoint
,
parallelism
,
useSqlFragment
,
savePointPath
,
jobName
);
}
}
public
JobConfig
buildSubmitConfig
(
Integer
clusterId
,
Integer
taskId
,
String
jobName
,
boolean
useSqlFragment
,
Integer
checkpoint
,
Integer
parallelism
,
String
savePointPath
){
return
new
JobConfig
(
false
,
false
,
false
,
clusterId
,
taskId
,
jobName
,
useSqlFragment
,
checkpoint
,
parallelism
,
savePointPath
);
}
}
}
dlink-core/src/main/java/com/dlink/job/JobManager.java
View file @
fee2a695
...
@@ -124,51 +124,6 @@ public class JobManager extends RunTime {
...
@@ -124,51 +124,6 @@ public class JobManager extends RunTime {
return
false
;
return
false
;
}
}
public
RunResult
execute
(
String
statement
)
{
RunResult
runResult
=
new
RunResult
(
sessionId
,
statement
,
environmentSetting
.
getHost
(),
environmentSetting
.
getPort
(),
executorSetting
,
executorSetting
.
getJobName
());
Executor
executor
=
createExecutorWithSession
();
String
[]
Statements
=
statement
.
split
(
";"
);
int
currentIndex
=
0
;
try
{
for
(
String
item
:
Statements
)
{
currentIndex
++;
if
(
item
.
trim
().
isEmpty
())
{
continue
;
}
SqlType
operationType
=
Operations
.
getOperationType
(
item
);
long
start
=
System
.
currentTimeMillis
();
CustomTableEnvironmentImpl
stEnvironment
=
executor
.
getCustomTableEnvironmentImpl
();
if
(!
FlinkInterceptor
.
build
(
stEnvironment
,
item
))
{
TableResult
tableResult
=
executor
.
executeSql
(
item
);
if
(
tableResult
.
getJobClient
().
isPresent
())
{
runResult
.
setJobId
(
tableResult
.
getJobClient
().
get
().
getJobID
().
toHexString
());
}
IResult
result
=
ResultBuilder
.
build
(
operationType
,
maxRowNum
,
""
,
false
).
getResult
(
tableResult
);
runResult
.
setResult
(
result
);
}
long
finish
=
System
.
currentTimeMillis
();
long
timeElapsed
=
finish
-
start
;
runResult
.
setTime
(
timeElapsed
);
runResult
.
setFinishDate
(
LocalDateTime
.
now
());
runResult
.
setSuccess
(
true
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
StackTraceElement
[]
trace
=
e
.
getStackTrace
();
StringBuffer
resMsg
=
new
StringBuffer
(
""
);
for
(
StackTraceElement
s
:
trace
)
{
resMsg
.
append
(
" \n "
+
s
+
" "
);
}
runResult
.
setFinishDate
(
LocalDateTime
.
now
());
runResult
.
setSuccess
(
false
);
// runResult.setError(LocalDateTime.now().toString() + ":" + "运行第" + currentIndex + "行sql时出现异常:" + e.getMessage());
runResult
.
setError
(
LocalDateTime
.
now
().
toString
()
+
":"
+
"运行第"
+
currentIndex
+
"行sql时出现异常:"
+
e
.
getMessage
()
+
" \n >>>堆栈信息<<<"
+
resMsg
.
toString
());
// runResult.setError(LocalDateTime.now().toString() + ":" + "运行第" + currentIndex + "行sql时出现异常:" + e.getMessage() + "\n >>>异常原因<<< \n" + e.getCause().toString());
return
runResult
;
}
return
runResult
;
}
public
SubmitResult
submit
(
String
statement
)
{
public
SubmitResult
submit
(
String
statement
)
{
if
(
statement
==
null
||
""
.
equals
(
statement
))
{
if
(
statement
==
null
||
""
.
equals
(
statement
))
{
return
SubmitResult
.
error
(
"FlinkSql语句不存在"
);
return
SubmitResult
.
error
(
"FlinkSql语句不存在"
);
...
...
dlink-core/src/test/java/com/dlink/core/JobManagerTest.java
View file @
fee2a695
...
@@ -90,8 +90,8 @@ public class JobManagerTest {
...
@@ -90,8 +90,8 @@ public class JobManagerTest {
sqls
.
add
(
sql2
);
sqls
.
add
(
sql2
);
sqls
.
add
(
sql3
);
sqls
.
add
(
sql3
);
String
sql
=
sql1
+
sql2
+
sql3
;
String
sql
=
sql1
+
sql2
+
sql3
;
RunResult
result
=
jobManager
.
execute
(
sql
);
JobResult
jobResult
=
jobManager
.
executeSql
(
sql
);
System
.
out
.
println
(
r
esult
.
isSuccess
());
System
.
out
.
println
(
jobR
esult
.
isSuccess
());
}
}
@Test
@Test
...
...
dlink-web/src/components/Studio/StudioMenu/index.tsx
View file @
fee2a695
...
@@ -34,8 +34,9 @@ const StudioMenu = (props: any) => {
...
@@ -34,8 +34,9 @@ const StudioMenu = (props: any) => {
if
(
selectsql
==
null
||
selectsql
==
''
){
if
(
selectsql
==
null
||
selectsql
==
''
){
selectsql
=
current
.
value
;
selectsql
=
current
.
value
;
}
}
let
useSession
=
current
.
task
.
useSession
;
let
param
=
{
let
param
=
{
useSession
:
current
.
task
.
useSession
,
useSession
:
useSession
,
session
:
current
.
task
.
session
,
session
:
current
.
task
.
session
,
useRemote
:
current
.
task
.
useRemote
,
useRemote
:
current
.
task
.
useRemote
,
clusterId
:
current
.
task
.
clusterId
,
clusterId
:
current
.
task
.
clusterId
,
...
@@ -84,7 +85,7 @@ const StudioMenu = (props: any) => {
...
@@ -84,7 +85,7 @@ const StudioMenu = (props: any) => {
type
:
"Studio/saveTabs"
,
type
:
"Studio/saveTabs"
,
payload
:
newTabs
,
payload
:
newTabs
,
});
});
showTables
(
current
.
task
,
dispatch
);
useSession
&&
showTables
(
current
.
task
,
dispatch
);
})
})
};
};
...
@@ -110,6 +111,9 @@ const StudioMenu = (props: any) => {
...
@@ -110,6 +111,9 @@ const StudioMenu = (props: any) => {
key
:
taskKey
,
key
:
taskKey
,
icon
:
<
SmileOutlined
style=
{
{
color
:
'#108ee9'
}
}
/>,
icon
:
<
SmileOutlined
style=
{
{
color
:
'#108ee9'
}
}
/>,
});
});
setTimeout
(()
=>
{
refs
?.
history
?.
current
?.
reload
();
},
2000
);
const
res
=
await
postDataArray
(
'/api/task/submit'
,[
task
.
id
]);
const
res
=
await
postDataArray
(
'/api/task/submit'
,[
task
.
id
]);
notification
.
close
(
taskKey
);
notification
.
close
(
taskKey
);
if
(
res
.
datas
[
0
].
success
){
if
(
res
.
datas
[
0
].
success
){
...
...
dlink-web/src/components/Studio/StudioTree/index.tsx
View file @
fee2a695
...
@@ -48,12 +48,12 @@ const getParentKey = (key, tree) => {
...
@@ -48,12 +48,12 @@ const getParentKey = (key, tree) => {
};
};
const
StudioTree
:
React
.
FC
<
StudioTreeProps
>
=
(
props
)
=>
{
const
StudioTree
:
React
.
FC
<
StudioTreeProps
>
=
(
props
)
=>
{
const
{
rightClickMenu
,
dispatch
,
tabs
,
refs
}
=
props
;
const
[
treeData
,
setTreeData
]
=
useState
<
TreeDataNode
[]
>
();
const
[
treeData
,
setTreeData
]
=
useState
<
TreeDataNode
[]
>
();
const
[
dataList
,
setDataList
]
=
useState
<
[]
>
();
const
[
dataList
,
setDataList
]
=
useState
<
[]
>
();
const
[
expandedKeys
,
setExpandedKeys
]
=
useState
<
[]
>
();
const
[
expandedKeys
,
setExpandedKeys
]
=
useState
<
[]
>
();
const
[
rightClickNodeTreeItem
,
setRightClickNodeTreeItem
]
=
useState
<
RightClickMenu
>
();
const
[
rightClickNodeTreeItem
,
setRightClickNodeTreeItem
]
=
useState
<
RightClickMenu
>
();
const
{
rightClickMenu
,
dispatch
,
tabs
}
=
props
;
const
[
updateCatalogueModalVisible
,
handleUpdateCatalogueModalVisible
]
=
useState
<
boolean
>
(
false
);
const
[
updateCatalogueModalVisible
,
handleUpdateCatalogueModalVisible
]
=
useState
<
boolean
>
(
false
);
const
[
updateTaskModalVisible
,
handleUpdateTaskModalVisible
]
=
useState
<
boolean
>
(
false
);
const
[
updateTaskModalVisible
,
handleUpdateTaskModalVisible
]
=
useState
<
boolean
>
(
false
);
const
[
isCreate
,
setIsCreate
]
=
useState
<
boolean
>
(
true
);
const
[
isCreate
,
setIsCreate
]
=
useState
<
boolean
>
(
true
);
...
@@ -193,6 +193,9 @@ const StudioTree: React.FC<StudioTreeProps> = (props) => {
...
@@ -193,6 +193,9 @@ const StudioTree: React.FC<StudioTreeProps> = (props) => {
let
task
=
{
let
task
=
{
id
:
node
.
taskId
,
id
:
node
.
taskId
,
};
};
setTimeout
(()
=>
{
refs
?.
history
?.
current
?.
reload
();
},
2000
);
handleSubmit
(
'/api/task/submit'
,
'作业'
,[
task
]);
handleSubmit
(
'/api/task/submit'
,
'作业'
,[
task
]);
}
}
});
});
...
@@ -415,4 +418,5 @@ export default connect(({Studio}: { Studio: StateType }) => ({
...
@@ -415,4 +418,5 @@ export default connect(({Studio}: { Studio: StateType }) => ({
currentPath
:
Studio
.
currentPath
,
currentPath
:
Studio
.
currentPath
,
tabs
:
Studio
.
tabs
,
tabs
:
Studio
.
tabs
,
rightClickMenu
:
Studio
.
rightClickMenu
,
rightClickMenu
:
Studio
.
rightClickMenu
,
refs
:
Studio
.
refs
,
}))(
StudioTree
);
}))(
StudioTree
);
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment