Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
lmp_server
Project
Project
Details
Activity
Releases
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
lmp
lmp_server
Commits
6363ed58
Commit
6363ed58
authored
Dec 12, 2023
by
linpeiqin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化数据集文件导入功能
parent
a90bbae9
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
26 additions
and
16 deletions
+26
-16
DatasetVersionController.java
...ice/webadmin/app/controller/DatasetVersionController.java
+26
-16
No files found.
application-webadmin/src/main/java/com/yice/webadmin/app/controller/DatasetVersionController.java
View file @
6363ed58
package
com
.
yice
.
webadmin
.
app
.
controller
;
package
com
.
yice
.
webadmin
.
app
.
controller
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.SerializationFeature
;
import
com.fasterxml.jackson.databind.node.ArrayNode
;
import
com.fasterxml.jackson.databind.node.ArrayNode
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.github.pagehelper.page.PageMethod
;
import
com.github.pagehelper.page.PageMethod
;
...
@@ -19,7 +21,6 @@ import com.yice.webadmin.app.config.PythonConfig;
...
@@ -19,7 +21,6 @@ import com.yice.webadmin.app.config.PythonConfig;
import
com.yice.webadmin.app.dto.DatasetDetailDto
;
import
com.yice.webadmin.app.dto.DatasetDetailDto
;
import
com.yice.webadmin.app.dto.DatasetVersionDto
;
import
com.yice.webadmin.app.dto.DatasetVersionDto
;
import
com.yice.webadmin.app.model.DatasetDetail
;
import
com.yice.webadmin.app.model.DatasetDetail
;
import
com.yice.webadmin.app.model.DatasetManage
;
import
com.yice.webadmin.app.model.DatasetVersion
;
import
com.yice.webadmin.app.model.DatasetVersion
;
import
com.yice.webadmin.app.service.DatasetManageService
;
import
com.yice.webadmin.app.service.DatasetManageService
;
import
com.yice.webadmin.app.service.DatasetVersionService
;
import
com.yice.webadmin.app.service.DatasetVersionService
;
...
@@ -236,7 +237,6 @@ public class DatasetVersionController {
...
@@ -236,7 +237,6 @@ public class DatasetVersionController {
@OperationLog
(
type
=
SysOperationLogType
.
IMPORT
)
@OperationLog
(
type
=
SysOperationLogType
.
IMPORT
)
@PostMapping
(
"/import"
)
@PostMapping
(
"/import"
)
public
ResponseResult
<
Void
>
importFile
(
public
ResponseResult
<
Void
>
importFile
(
@RequestParam
Long
datasetId
,
@RequestParam
Long
versionId
,
@RequestParam
Long
versionId
,
@RequestParam
(
"importFile"
)
MultipartFile
importFile
)
throws
IOException
{
@RequestParam
(
"importFile"
)
MultipartFile
importFile
)
throws
IOException
{
String
errorMessage
;
String
errorMessage
;
...
@@ -245,7 +245,11 @@ public class DatasetVersionController {
...
@@ -245,7 +245,11 @@ public class DatasetVersionController {
return
ResponseResult
.
error
(
ErrorCodeEnum
.
ARGUMENT_NULL_EXIST
,
errorMessage
);
return
ResponseResult
.
error
(
ErrorCodeEnum
.
ARGUMENT_NULL_EXIST
,
errorMessage
);
}
}
DatasetVersion
datasetVersion
=
this
.
datasetVersionService
.
getById
(
versionId
);
DatasetVersion
datasetVersion
=
this
.
datasetVersionService
.
getById
(
versionId
);
String
fullName
=
this
.
saveDatasetFile
(
importFile
,
datasetVersion
.
getVersionName
());
String
versionName
=
datasetVersion
.
getVersionName
();
//先存储文件
String
fullName
=
this
.
saveDatasetFile
(
importFile
,
versionName
);
//再存储数据集配置文件
this
.
saveDatasetInfo
(
versionName
);
datasetVersion
.
setFileUrl
(
fullName
);
datasetVersion
.
setFileUrl
(
fullName
);
datasetVersion
.
setInputStatus
(
1
);
datasetVersion
.
setInputStatus
(
1
);
datasetVersion
.
setDataVolume
(
Long
.
valueOf
(
JSON
.
parseArray
(
new
String
(
importFile
.
getBytes
(),
StandardCharsets
.
UTF_8
)).
size
()));
datasetVersion
.
setDataVolume
(
Long
.
valueOf
(
JSON
.
parseArray
(
new
String
(
importFile
.
getBytes
(),
StandardCharsets
.
UTF_8
)).
size
()));
...
@@ -253,6 +257,25 @@ public class DatasetVersionController {
...
@@ -253,6 +257,25 @@ public class DatasetVersionController {
return
ResponseResult
.
success
();
return
ResponseResult
.
success
();
}
}
private
void
saveDatasetInfo
(
String
versionName
)
throws
IOException
{
File
file
=
new
File
(
pythonConfig
.
getDatasetFileBaseDir
(),
pythonConfig
.
getDatasetInfo
());
if
(!
file
.
exists
())
{
file
.
createNewFile
();
}
ObjectMapper
objectMapper
=
new
ObjectMapper
();
objectMapper
.
enable
(
SerializationFeature
.
INDENT_OUTPUT
);
JsonNode
rootNode
=
objectMapper
.
readTree
(
file
);
if
(
rootNode
==
null
||
rootNode
.
isNull
()
||
rootNode
.
size
()
<
1
)
{
rootNode
=
objectMapper
.
createObjectNode
();
}
//此处应该要做键值映射关系,目前没做,后面需要修改
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"file_name"
,
versionName
+
".json"
);
jsonObject
.
put
(
"file_sha1"
,
Sha1Util
.
getSha1
(
versionName
));
((
ObjectNode
)
rootNode
).
set
(
versionName
,
objectMapper
.
readTree
(
jsonObject
.
toJSONString
()));
objectMapper
.
writeValue
(
new
File
(
pythonConfig
.
getDatasetFileBaseDir
(),
pythonConfig
.
getDatasetInfo
()),
rootNode
);
}
/**
/**
* 保存导入文件。
* 保存导入文件。
*
*
...
@@ -274,19 +297,6 @@ public class DatasetVersionController {
...
@@ -274,19 +297,6 @@ public class DatasetVersionController {
log
.
error
(
"Failed to write imported file ["
+
importFile
.
getOriginalFilename
()
+
" ]."
,
e
);
log
.
error
(
"Failed to write imported file ["
+
importFile
.
getOriginalFilename
()
+
" ]."
,
e
);
throw
e
;
throw
e
;
}
}
File
file
=
new
File
(
pythonConfig
.
getDatasetFileBaseDir
(),
pythonConfig
.
getDatasetInfo
());
if
(!
file
.
exists
()){
file
.
createNewFile
();
}
ObjectMapper
objectMapper
=
new
ObjectMapper
();
JsonNode
rootNode
=
objectMapper
.
readTree
(
file
);
if
(
rootNode
==
null
||
rootNode
.
isNull
()
||
rootNode
.
size
()
<
1
)
{
rootNode
=
objectMapper
.
createObjectNode
();
}
//此处应该要做键值映射关系,目前没做,后面需要修改
String
fieldValue
=
"{\"file_name\":\""
+
versionName
+
".json\",\"file_sha1\":\""
+
Sha1Util
.
getSha1
(
versionName
)
+
"\"}"
;
((
ObjectNode
)
rootNode
).
put
(
versionName
,
objectMapper
.
readTree
(
fieldValue
));
objectMapper
.
writeValue
(
new
File
(
pythonConfig
.
getDatasetFileBaseDir
(),
pythonConfig
.
getDatasetInfo
()),
rootNode
);
return
fullName
;
return
fullName
;
}
}
...
...
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