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
42468025
Commit
42468025
authored
Apr 28, 2024
by
pengxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
数据集继承优化。
parent
0a7329ea
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
58 additions
and
29 deletions
+58
-29
DatasetConstant.java
.../java/com/yice/webadmin/app/constant/DatasetConstant.java
+5
-0
DatasetDataService.java
...ava/com/yice/webadmin/app/service/DatasetDataService.java
+7
-0
DatasetDataServiceImpl.java
...ice/webadmin/app/service/impl/DatasetDataServiceImpl.java
+15
-0
DatasetOutputServiceImpl.java
...e/webadmin/app/service/impl/DatasetOutputServiceImpl.java
+7
-12
DatasetVersionServiceImpl.java
.../webadmin/app/service/impl/DatasetVersionServiceImpl.java
+24
-17
No files found.
application-webadmin/src/main/java/com/yice/webadmin/app/constant/DatasetConstant.java
View file @
42468025
...
...
@@ -12,6 +12,11 @@ public class DatasetConstant {
*/
public
static
final
Integer
INPUT_STATUS
=
1
;
/**
* 判断继承
*/
public
static
final
Integer
ISINHERIT_STATUS
=
1
;
/**
* ".xlsx"数据格式
*/
...
...
application-webadmin/src/main/java/com/yice/webadmin/app/service/DatasetDataService.java
View file @
42468025
...
...
@@ -28,6 +28,13 @@ public interface DatasetDataService {
*/
List
<
DatasetData
>
list
(
Long
versionId
);
/**
* 将源集合添加到模板集合中
* @param sourceVersionId 源版本标识
* @param targetVersionId 目标版本标识
*/
void
copy
(
Long
sourceVersionId
,
Long
targetVersionId
);
/**
* 开始清洗工作
* @param datasetId 清洗数据集
...
...
application-webadmin/src/main/java/com/yice/webadmin/app/service/impl/DatasetDataServiceImpl.java
View file @
42468025
...
...
@@ -3,6 +3,7 @@ package com.yice.webadmin.app.service.impl;
import
cn.hutool.core.collection.CollUtil
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mongodb.client.FindIterable
;
import
com.yice.common.core.object.MyPageParam
;
import
com.yice.webadmin.app.constant.DatasetConstant
;
import
com.yice.webadmin.app.constant.MongoConstant
;
...
...
@@ -83,6 +84,20 @@ public class DatasetDataServiceImpl implements DatasetDataService {
MongoConstant
.
COLLECT_NAME
+
versionId
);
}
/**
* 将源集合添加到模板集合中
* @param sourceVersionId 源版本标识
* @param targetVersionId 目标版本标识
*/
@Override
public
void
copy
(
Long
sourceVersionId
,
Long
targetVersionId
)
{
String
sourceCollectionName
=
MongoConstant
.
COLLECT_NAME
+
sourceVersionId
;
String
targetCollectionName
=
MongoConstant
.
COLLECT_NAME
+
targetVersionId
;
FindIterable
<
Document
>
iterable
=
mongoTemplate
.
getCollection
(
sourceCollectionName
).
find
();
List
<
Document
>
all
=
iterable
.
into
(
new
ArrayList
<>());
mongoTemplate
.
insert
(
all
,
targetCollectionName
);
}
/**
* 查询列表集合
* @param versionId 版本标识
...
...
application-webadmin/src/main/java/com/yice/webadmin/app/service/impl/DatasetOutputServiceImpl.java
View file @
42468025
...
...
@@ -37,10 +37,7 @@ import org.springframework.transaction.annotation.Transactional;
import
java.io.*
;
import
java.nio.charset.StandardCharsets
;
import
java.text.DecimalFormat
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
/**
* 数据集详情数据操作服务类。
...
...
@@ -384,10 +381,8 @@ public class DatasetOutputServiceImpl extends BaseService<DatasetOutput, Long> i
private
String
exportCsvFileType
(
String
fileType
,
List
<
DatasetData
>
dataList
,
DatasetOutput
datasetOutput
)
{
String
fileName
=
null
;
InputStream
inputStream
=
null
;
try
(
ByteArrayOutputStream
baos
=
new
ByteArrayOutputStream
()){
try
(
ByteArrayOutputStream
baos
=
new
ByteArrayOutputStream
())
{
PrintWriter
pw
=
new
PrintWriter
(
baos
);
// 计算最大的宽度
int
maxWidth
=
getMaxWidth
(
dataList
);
// 构建表头数据
pw
.
append
(
DatasetConstant
.
INSTRUCTION
).
append
(
","
).
append
(
DatasetConstant
.
OUTPUT
).
append
(
"\n"
);
...
...
@@ -401,7 +396,7 @@ public class DatasetOutputServiceImpl extends BaseService<DatasetOutput, Long> i
instruction
=
instruction
.
replace
(
"\n"
,
""
);
output
=
output
.
replace
(
"\n"
,
""
);
pw
.
print
f
(
maxWidth
>
0
?
"%-"
+
maxWidth
+
"s,%-"
+
maxWidth
+
"s\n"
:
"%s,%s\n"
,
instruction
,
output
);
pw
.
print
ln
(
instruction
+
","
+
output
);
}
pw
.
flush
();
// 转换为InputStream
...
...
@@ -410,12 +405,12 @@ public class DatasetOutputServiceImpl extends BaseService<DatasetOutput, Long> i
fileName
=
saveMinioInputStream
(
fileType
,
inputStream
);
}
catch
(
IOException
ex
)
{
log
.
error
(
"生成CSV文件格式错误,请重新导出或者联系管理员: "
,
ex
);
}
finally
{
try
{
if
(
null
!=
inputStream
)
{
}
finally
{
try
{
if
(
null
!=
inputStream
)
{
inputStream
.
close
();
}
}
catch
(
IOException
ex
)
{
}
catch
(
IOException
ex
)
{
log
.
error
(
"关闭CSV文件流异常,请重新操作"
,
ex
);
}
}
...
...
application-webadmin/src/main/java/com/yice/webadmin/app/service/impl/DatasetVersionServiceImpl.java
View file @
42468025
...
...
@@ -117,7 +117,9 @@ public class DatasetVersionServiceImpl extends BaseService<DatasetVersion, Long>
datasetVersion
.
setTemplate
(
reDatasetManage
.
getTemplate
());
datasetVersion
.
setDimensionType
(
reDatasetManage
.
getDimensionType
());
insertDatasetVersion
(
datasetVersion
);
//先进行数据填充、写入数据库中
this
.
buildDefaultValue
(
datasetVersion
);
datasetVersionMapper
.
insert
(
datasetVersion
);
return
datasetVersion
;
}
...
...
@@ -127,23 +129,28 @@ public class DatasetVersionServiceImpl extends BaseService<DatasetVersion, Long>
* @param datasetVersion 保存对象
*/
private
void
insertDatasetVersion
(
DatasetVersion
datasetVersion
)
{
try
{
//先进行数据填充
this
.
buildDefaultValue
(
datasetVersion
);
//进行存储、写入以及更新配置等操作
DatasetVersion
dataset
=
dealWithWriteAndSave
(
datasetVersion
.
getDatasetId
(),
datasetVersion
.
getHisVersion
(),
datasetVersion
.
getVersionId
(),
datasetVersion
.
getVersionName
());
if
(
null
!=
dataset
)
{
datasetVersion
.
setDataVolume
(
dataset
.
getDataVolume
());
datasetVersion
.
setFileUrl
(
dataset
.
getFileUrl
());
datasetVersion
.
setInputStatus
(
dataset
.
getInputStatus
());
}
//写入数据库中
datasetVersionMapper
.
insert
(
datasetVersion
);
}
catch
(
IOException
e
)
{
log
.
error
(
"Failed to save new data database ["
+
datasetVersion
.
getVersionName
()
+
" ]."
,
e
);
Long
versionId
=
idGenerator
.
nextLongId
();
datasetVersion
.
setVersionId
(
versionId
);
//想查询继承的数据集,如果有,则进行数据复制;如果没有,则不进行复制操作。
DatasetVersion
filter
=
new
DatasetVersion
();
filter
.
setDatasetVersion
(
datasetVersion
.
getHisVersion
());
filter
.
setDatasetId
(
datasetVersion
.
getDatasetId
());
DatasetVersion
hisVersion
=
this
.
getOne
(
filter
);
//判断是否继承,如果继承,则调用数据集方法
if
(
null
!=
hisVersion
&&
datasetVersion
.
getIsInherit
().
equals
(
DatasetConstant
.
ISINHERIT_STATUS
))
{
Long
count
=
this
.
datasetDataService
.
count
(
hisVersion
.
getVersionId
());
datasetVersion
.
setInputStatus
(
count
>
0
?
DatasetConstant
.
STATUS_PUBLISHED
:
DatasetConstant
.
STATUS_UNPUBLISHED
);
this
.
datasetDataService
.
copy
(
hisVersion
.
getVersionId
(),
datasetVersion
.
getVersionId
());
datasetVersion
.
setDataVolume
(
hisVersion
.
getDataVolume
());
}
//先进行数据填充、写入数据库中
this
.
buildDefaultValue
(
datasetVersion
);
datasetVersionMapper
.
insert
(
datasetVersion
);
}
/**
...
...
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