Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-operate-sys-cscec
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
fulixin
dsk-operate-sys-cscec
Commits
9efe0df4
Commit
9efe0df4
authored
Feb 27, 2024
by
dengguangman
Committed by
Administrator
Feb 27, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
其他
Signed-off-by:
Administrator
<
admin@example.com
>
parent
888762d6
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
43 additions
and
162 deletions
+43
-162
CbProjectOtherAnalysisComponent.java
...va/com/dsk/component/CbProjectOtherAnalysisComponent.java
+0
-126
CbProjectOtherController.java
...va/com/dsk/cscec/controller/CbProjectOtherController.java
+1
-5
CbProjectOtherImportVo.java
.../java/com/dsk/cscec/domain/vo/CbProjectOtherImportVo.java
+5
-0
CbProjectExpenseSummaryImportListener.java
...cscec/listener/CbProjectExpenseSummaryImportListener.java
+10
-9
CbProjectOtherImportListener.java
.../com/dsk/cscec/listener/CbProjectOtherImportListener.java
+8
-7
CbProjectOtherService.java
...ain/java/com/dsk/cscec/service/CbProjectOtherService.java
+3
-0
CbProjectOtherServiceImpl.java
...com/dsk/cscec/service/impl/CbProjectOtherServiceImpl.java
+12
-15
CbProjectRecordServiceImpl.java
...om/dsk/cscec/service/impl/CbProjectRecordServiceImpl.java
+4
-0
No files found.
dsk-module/dsk-biz-api/src/main/java/com/dsk/component/CbProjectOtherAnalysisComponent.java
deleted
100644 → 0
View file @
888762d6
package
com
.
dsk
.
component
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.dsk.common.excel.ExcelUtils
;
import
com.dsk.common.exception.ServiceException
;
import
com.dsk.cscec.constant.CbProjectConstants
;
import
com.dsk.cscec.domain.CbProjectFile
;
import
com.dsk.cscec.domain.CbProjectOther
;
import
com.dsk.cscec.domain.bo.CbProjectBaseBo
;
import
com.dsk.cscec.service.CbProjectFileService
;
import
com.dsk.cscec.service.CbProjectOtherService
;
import
com.dsk.system.service.ISysOssService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.support.TransactionTemplate
;
import
org.springframework.util.ObjectUtils
;
import
javax.annotation.Resource
;
import
java.io.InputStream
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* 其他费用数据解析组件
*
* @Author lcl
* @Data 2024/2/7 17:43
*/
@Slf4j
@Component
public
class
CbProjectOtherAnalysisComponent
{
@Resource
private
CbProjectOtherService
projectOtherService
;
@Resource
private
CbProjectFileService
projectFileService
;
@Resource
private
ISysOssService
ossService
;
@Resource
private
TransactionTemplate
transactionTemplate
;
/**
* 其他费用数据解析
*/
@Async
public
void
projectOtherDataAnalysis
(
CbProjectBaseBo
bo
)
throws
Exception
{
//查询其他费用导入文件
List
<
CbProjectFile
>
fileList
=
projectFileService
.
list
(
Wrappers
.<
CbProjectFile
>
lambdaQuery
()
.
eq
(
CbProjectFile:
:
getProjectId
,
bo
.
getProjectId
())
.
eq
(
CbProjectFile:
:
getCbType
,
CbProjectConstants
.
CB_TYPE_OTHER_PROJECT
)
.
eq
(
CbProjectFile:
:
getCbStage
,
bo
.
getCbStage
())
.
in
(
CbProjectFile:
:
getFileParseStatus
,
Arrays
.
asList
(
1
,
3
)));
if
(
ObjectUtils
.
isEmpty
(
fileList
))
{
return
;
}
//文件处理
for
(
CbProjectFile
file
:
fileList
)
{
if
(
file
.
getDelFlag
()
==
0
)
{
//文件下载
InputStream
inputStream
=
ossService
.
downFileIO
(
file
.
getFileOssId
());
if
(
ObjectUtil
.
isNull
(
inputStream
))
{
file
.
setFileParseStatus
(
3
);
file
.
setFailRemark
(
"文件数据不存在"
);
projectFileService
.
updateById
(
file
);
break
;
}
//解析数据
List
<
CbProjectOther
>
importList
=
new
ExcelUtils
<>(
CbProjectOther
.
class
).
importExcelAllSheet
(
inputStream
,
1
);
if
(
importList
.
isEmpty
())
{
file
.
setFileParseStatus
(
3
);
file
.
setFailRemark
(
"表格中不存在待导入数据!"
);
projectFileService
.
updateById
(
file
);
break
;
}
List
<
CbProjectOther
>
projectOtherList
=
importList
.
stream
().
parallel
()
.
peek
(
item
->
{
item
.
setProjectId
(
bo
.
getProjectId
());
item
.
setCbStage
(
bo
.
getCbStage
());
item
.
setCbProjectFileId
(
file
.
getId
());
}).
collect
(
Collectors
.
toList
());
if
(
projectOtherList
.
isEmpty
())
{
throw
new
ServiceException
(
"表格中不存在有效数据数据!"
);
}
transactionTemplate
.
execute
(
status
->
{
try
{
//分批次插入
if
(
projectOtherList
.
size
()
>
1000
)
{
int
index
=
0
;
int
sum
=
projectOtherList
.
size
();
while
(
index
<
sum
)
{
List
<
CbProjectOther
>
divideList
=
projectOtherList
.
subList
(
index
,
Math
.
max
((
index
+
1
)
*
1000
,
sum
));
boolean
b
=
projectOtherService
.
saveBatch
(
divideList
);
if
(!
b
)
{
throw
new
ServiceException
(
"数据插入失败!"
);
}
index
+=
1000
;
}
}
else
{
boolean
b
=
projectOtherService
.
saveBatch
(
projectOtherList
);
if
(!
b
)
{
throw
new
ServiceException
(
"数据插入失败!"
);
}
}
file
.
setFileParseStatus
(
2
);
boolean
b
=
projectFileService
.
updateById
(
file
);
if
(!
b
)
{
throw
new
ServiceException
(
"文件状态更新失败!"
);
}
}
catch
(
Exception
e
)
{
status
.
setRollbackOnly
();
file
.
setFileParseStatus
(
3
);
file
.
setFailRemark
(
e
.
getMessage
());
projectFileService
.
updateById
(
file
);
}
return
Boolean
.
TRUE
;
});
}
else
{
projectOtherService
.
remove
(
Wrappers
.<
CbProjectOther
>
lambdaQuery
().
eq
(
CbProjectOther:
:
getCbProjectFileId
,
file
.
getId
()));
projectFileService
.
removeById
(
file
);
}
}
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/controller/CbProjectOtherController.java
View file @
9efe0df4
...
@@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
...
@@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import
com.dsk.common.annotation.Log
;
import
com.dsk.common.annotation.Log
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.common.enums.BusinessType
;
import
com.dsk.common.enums.BusinessType
;
import
com.dsk.component.CbProjectOtherAnalysisComponent
;
import
com.dsk.cscec.domain.CbProjectExpenseSummary
;
import
com.dsk.cscec.domain.CbProjectExpenseSummary
;
import
com.dsk.cscec.domain.bo.CbProjectBaseBo
;
import
com.dsk.cscec.domain.bo.CbProjectBaseBo
;
import
com.dsk.cscec.domain.bo.CbProjectOtherBo
;
import
com.dsk.cscec.domain.bo.CbProjectOtherBo
;
...
@@ -41,12 +40,9 @@ public class CbProjectOtherController {
...
@@ -41,12 +40,9 @@ public class CbProjectOtherController {
@Resource
@Resource
private
CbProjectExpenseSummaryService
cbProjectExpenseSummaryService
;
private
CbProjectExpenseSummaryService
cbProjectExpenseSummaryService
;
@Resource
private
CbProjectOtherAnalysisComponent
otherAnalysisComponent
;
@GetMapping
(
value
=
"/projectOther/dataAnalysis"
)
@GetMapping
(
value
=
"/projectOther/dataAnalysis"
)
public
R
<
List
<
CbProjectExpenseSummary
>>
projectOtherDataAnalysis
(
CbProjectBaseBo
baseBo
)
throws
Exception
{
public
R
<
List
<
CbProjectExpenseSummary
>>
projectOtherDataAnalysis
(
CbProjectBaseBo
baseBo
)
throws
Exception
{
otherAnalysisComponent
.
projectOtherDataAnalysis
(
baseBo
);
projectOtherService
.
projectOtherDataAnalysis
(
baseBo
);
return
R
.
ok
();
return
R
.
ok
();
}
}
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/vo/CbProjectOtherImportVo.java
View file @
9efe0df4
...
@@ -113,4 +113,9 @@ public class CbProjectOtherImportVo {
...
@@ -113,4 +113,9 @@ public class CbProjectOtherImportVo {
* 处理后序号
* 处理后序号
*/
*/
private
String
dealWithNumber
;
private
String
dealWithNumber
;
/**
* 项目成本文件id
*/
private
Long
cbProjectFileId
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/listener/CbProjectExpenseSummaryImportListener.java
View file @
9efe0df4
...
@@ -36,15 +36,16 @@ public class CbProjectExpenseSummaryImportListener extends AnalysisEventListener
...
@@ -36,15 +36,16 @@ public class CbProjectExpenseSummaryImportListener extends AnalysisEventListener
@Override
@Override
public
void
invoke
(
CbProjectExpenseSummaryImportVo
importVo
,
AnalysisContext
context
)
{
public
void
invoke
(
CbProjectExpenseSummaryImportVo
importVo
,
AnalysisContext
context
)
{
Integer
rowIndex
=
context
.
readRowHolder
().
getRowIndex
();
Integer
rowIndex
=
context
.
readRowHolder
().
getRowIndex
();
if
(
StrUtil
.
isEmpty
(
importVo
.
getExpenseName
()))
{
// if (StrUtil.isEmpty(importVo.getExpenseName())) {
failureNum
++;
// failureNum++;
failureMsg
.
append
(
"<br/>"
+
rowIndex
+
"行 解析失败:清单内容不能为空"
);
// failureMsg.append("<br/>" + rowIndex + "行 解析失败:清单内容不能为空");
}
// }
String
number
=
importVo
.
getNumber
();
// String number = importVo.getNumber();
if
(
StrUtil
.
isEmpty
(
number
))
{
// if (StrUtil.isEmpty(number)) {
failureNum
++;
// failureNum++;
failureMsg
.
append
(
"<br/>"
+
rowIndex
+
"行 解析失败:序号不能为空"
);
// failureMsg.append("<br/>" + rowIndex + "行 解析失败:序号不能为空");
}
// }
dataList
.
add
(
importVo
);
}
}
@Override
@Override
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/listener/CbProjectOtherImportListener.java
View file @
9efe0df4
...
@@ -24,31 +24,32 @@ import java.util.regex.Pattern;
...
@@ -24,31 +24,32 @@ import java.util.regex.Pattern;
public
class
CbProjectOtherImportListener
extends
AnalysisEventListener
<
CbProjectOtherImportVo
>
implements
ExcelListener
<
CbProjectOtherImportVo
>
{
public
class
CbProjectOtherImportListener
extends
AnalysisEventListener
<
CbProjectOtherImportVo
>
implements
ExcelListener
<
CbProjectOtherImportVo
>
{
private
final
Long
projectId
;
private
final
Long
projectId
;
private
final
Integer
cbStage
;
private
final
Long
fileId
;
private
List
<
CbProjectOtherImportVo
>
dataList
=
new
ArrayList
<>();
private
List
<
CbProjectOtherImportVo
>
dataList
=
new
ArrayList
<>();
private
int
successNum
=
0
;
private
int
successNum
=
0
;
private
int
failureNum
=
0
;
private
int
failureNum
=
0
;
private
final
StringBuilder
successMsg
=
new
StringBuilder
();
private
final
StringBuilder
successMsg
=
new
StringBuilder
();
private
final
StringBuilder
failureMsg
=
new
StringBuilder
();
private
final
StringBuilder
failureMsg
=
new
StringBuilder
();
public
CbProjectOtherImportListener
(
Long
projectId
,
Integer
cbStage
)
{
public
CbProjectOtherImportListener
(
Long
projectId
,
Long
fileId
)
{
this
.
cbStage
=
cbStage
;
this
.
fileId
=
fileId
;
this
.
projectId
=
projectId
;
this
.
projectId
=
projectId
;
}
}
@Override
@Override
public
void
invoke
(
CbProjectOtherImportVo
importVo
,
AnalysisContext
context
)
{
public
void
invoke
(
CbProjectOtherImportVo
importVo
,
AnalysisContext
context
)
{
Integer
rowIndex
=
context
.
readRowHolder
().
getRowIndex
();
Integer
rowIndex
=
context
.
readRowHolder
().
getRowIndex
();
if
(
StrUtil
.
isEmpty
(
importVo
.
getItemContent
()))
{
//
if (StrUtil.isEmpty(importVo.getItemContent())) {
failureNum
++;
//
failureNum++;
failureMsg
.
append
(
"<br/>"
+
rowIndex
+
"行 解析失败:清单内容不能为空"
);
//
failureMsg.append("<br/>" + rowIndex + "行 解析失败:清单内容不能为空");
}
//
}
String
number
=
importVo
.
getNumber
();
String
number
=
importVo
.
getNumber
();
if
(
StrUtil
.
isEmpty
(
number
))
{
if
(
StrUtil
.
isEmpty
(
number
))
{
failureNum
++;
failureNum
++;
failureMsg
.
append
(
"<br/>"
+
rowIndex
+
"行 解析失败:序号不能为空"
);
failureMsg
.
append
(
"<br/>"
+
rowIndex
+
"行 解析失败:序号不能为空"
);
}
}
importVo
.
setCbProjectFileId
(
fileId
);
Boolean
numberMatch
=
false
;
Boolean
numberMatch
=
false
;
String
regex
=
"[\\((]*[一|二|三|四|五|六|七|八|九|十]+[\\))]*"
;
String
regex
=
"[\\((]*[一|二|三|四|五|六|七|八|九|十]+[\\))]*"
;
Pattern
pattern
=
Pattern
.
compile
(
"^\\d+(\\.\\d+)*$"
);
Pattern
pattern
=
Pattern
.
compile
(
"^\\d+(\\.\\d+)*$"
);
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/service/CbProjectOtherService.java
View file @
9efe0df4
...
@@ -2,6 +2,7 @@ package com.dsk.cscec.service;
...
@@ -2,6 +2,7 @@ package com.dsk.cscec.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.dsk.cscec.domain.CbProjectOther
;
import
com.dsk.cscec.domain.CbProjectOther
;
import
com.dsk.cscec.domain.bo.CbProjectBaseBo
;
import
com.dsk.cscec.domain.bo.CbProjectOtherBo
;
import
com.dsk.cscec.domain.bo.CbProjectOtherBo
;
import
com.dsk.cscec.domain.vo.CbProjectOtherVo
;
import
com.dsk.cscec.domain.vo.CbProjectOtherVo
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.MultipartFile
;
...
@@ -22,5 +23,7 @@ public interface CbProjectOtherService extends IService<CbProjectOther> {
...
@@ -22,5 +23,7 @@ public interface CbProjectOtherService extends IService<CbProjectOther> {
List
<
Map
<
String
,
Object
>>
listByLevel
(
Long
projectId
,
int
i
);
List
<
Map
<
String
,
Object
>>
listByLevel
(
Long
projectId
,
int
i
);
List
<
CbProjectOtherVo
>
selectDataList
(
CbProjectOtherBo
projectOtherBo
);
List
<
CbProjectOtherVo
>
selectDataList
(
CbProjectOtherBo
projectOtherBo
);
void
projectOtherDataAnalysis
(
CbProjectBaseBo
baseBo
)
throws
Exception
;
}
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/service/impl/CbProjectOtherServiceImpl.java
View file @
9efe0df4
...
@@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
...
@@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.dsk.common.excel.ExcelResult
;
import
com.dsk.common.excel.ExcelResult
;
import
com.dsk.common.excel.ExcelUtils
;
import
com.dsk.common.utils.poi.ExcelUtil
;
import
com.dsk.common.utils.poi.ExcelUtil
;
import
com.dsk.cscec.constant.CbProjectConstants
;
import
com.dsk.cscec.constant.CbProjectConstants
;
import
com.dsk.cscec.domain.*
;
import
com.dsk.cscec.domain.*
;
...
@@ -65,7 +64,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -65,7 +64,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
CbProjectRecord
byId
=
cbProjectRecordService
.
getById
(
projectId
);
CbProjectRecord
byId
=
cbProjectRecordService
.
getById
(
projectId
);
Assert
.
notNull
(
byId
,
"项目信息不能为空"
);
Assert
.
notNull
(
byId
,
"项目信息不能为空"
);
Integer
cbStage
=
byId
.
getCbStage
();
Integer
cbStage
=
byId
.
getCbStage
();
CbProjectOtherImportListener
importListener
=
new
CbProjectOtherImportListener
(
projectId
,
cbStage
);
CbProjectOtherImportListener
importListener
=
new
CbProjectOtherImportListener
(
projectId
,
0L
);
EasyExcel
.
read
(
file
.
getInputStream
(),
CbProjectOtherImportVo
.
class
,
importListener
).
sheet
().
doRead
();
EasyExcel
.
read
(
file
.
getInputStream
(),
CbProjectOtherImportVo
.
class
,
importListener
).
sheet
().
doRead
();
ExcelResult
<
CbProjectOtherImportVo
>
result
=
importListener
.
getExcelResult
();
ExcelResult
<
CbProjectOtherImportVo
>
result
=
importListener
.
getExcelResult
();
String
analysis
=
result
.
getAnalysis
();
String
analysis
=
result
.
getAnalysis
();
...
@@ -83,6 +82,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -83,6 +82,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
rootProjectOther
.
setParentId
(
0L
);
rootProjectOther
.
setParentId
(
0L
);
rootProjectOther
.
setProjectId
(
projectId
);
rootProjectOther
.
setProjectId
(
projectId
);
rootProjectOther
.
setCbStage
(
cbStage
);
rootProjectOther
.
setCbStage
(
cbStage
);
rootProjectOther
.
setCbProjectFileId
(
0L
);
LambdaQueryWrapper
<
CbProjectOther
>
tWrapper
=
Wrappers
.
lambdaQuery
(
rootProjectOther
);
LambdaQueryWrapper
<
CbProjectOther
>
tWrapper
=
Wrappers
.
lambdaQuery
(
rootProjectOther
);
CbProjectOther
rootOther
=
this
.
getOne
(
tWrapper
);
CbProjectOther
rootOther
=
this
.
getOne
(
tWrapper
);
...
@@ -156,6 +156,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -156,6 +156,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
*@date: 2024/2/23 18:03
*@date: 2024/2/23 18:03
*/
*/
@Async
@Async
@Override
public
void
projectOtherDataAnalysis
(
CbProjectBaseBo
baseBo
)
throws
Exception
{
public
void
projectOtherDataAnalysis
(
CbProjectBaseBo
baseBo
)
throws
Exception
{
// 项目Id
// 项目Id
Long
projectId
=
baseBo
.
getProjectId
();
Long
projectId
=
baseBo
.
getProjectId
();
...
@@ -165,9 +166,9 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -165,9 +166,9 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
// 查询其他费用导入文件
// 查询其他费用导入文件
List
<
CbProjectFile
>
projectFileList
=
projectFileService
.
list
(
Wrappers
.<
CbProjectFile
>
lambdaQuery
()
List
<
CbProjectFile
>
projectFileList
=
projectFileService
.
list
(
Wrappers
.<
CbProjectFile
>
lambdaQuery
()
.
eq
(
CbProjectFile:
:
getProjectId
,
baseBo
.
getProjectId
())
.
eq
(
CbProjectFile:
:
getProjectId
,
baseBo
.
getProjectId
())
.
eq
(
CbProjectFile:
:
getCbType
,
CbProjectConstants
.
CB_TYPE_
OTHER_PROJECT
)
.
eq
(
CbProjectFile:
:
getCbType
,
CbProjectConstants
.
CB_TYPE_
SCENE_EXPENSE
)
.
eq
(
CbProjectFile:
:
getCbStage
,
baseBo
.
getCbStage
())
.
eq
(
CbProjectFile:
:
getCbStage
,
baseBo
.
getCbStage
())
.
in
(
CbProjectFile:
:
getFileParseStatus
,
Arrays
.
asList
(
1
,
3
)));
.
in
(
CbProjectFile:
:
getFileParseStatus
,
Arrays
.
asList
(
0
)));
if
(
ObjectUtils
.
isEmpty
(
projectFileList
))
{
if
(
ObjectUtils
.
isEmpty
(
projectFileList
))
{
return
;
return
;
}
}
...
@@ -183,24 +184,18 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -183,24 +184,18 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
break
;
break
;
}
}
//解析数据
List
<
CbProjectOther
>
importList
=
new
ExcelUtils
<>(
CbProjectOther
.
class
).
importExcelAllSheet
(
inputStream
,
1
);
if
(
importList
.
isEmpty
())
{
file
.
setFileParseStatus
(
3
);
file
.
setFailRemark
(
"表格中不存在待导入数据!"
);
projectFileService
.
updateById
(
file
);
break
;
}
// 文件名称
// 文件名称
String
name
=
file
.
getFileName
();
String
name
=
file
.
getFileName
();
name
=
FileNameUtil
.
getPrefix
(
name
);
// 文件Id
Long
fileId
=
file
.
getId
();
if
(
"其他费"
.
equals
(
name
))
{
if
(
"其他费"
.
equals
(
name
))
{
totalDataAnalysis
(
inputStream
,
name
,
file
,
projectId
,
cbStage
);
totalDataAnalysis
(
inputStream
,
name
,
file
,
projectId
,
cbStage
);
break
;
}
}
name
=
FileNameUtil
.
getPrefix
(
name
);
//解析数据
//解析数据
ExcelResult
<
CbProjectOtherImportVo
>
importVoExcelResult
=
ExcelResult
<
CbProjectOtherImportVo
>
importVoExcelResult
=
ExcelUtil
.
importExcel
(
inputStream
,
CbProjectOtherImportVo
.
class
,
new
CbProjectOtherImportListener
(
projectId
,
cbStage
));
ExcelUtil
.
importExcel
(
inputStream
,
CbProjectOtherImportVo
.
class
,
new
CbProjectOtherImportListener
(
projectId
,
fileId
));
log
.
info
(
importVoExcelResult
.
getAnalysis
());
log
.
info
(
importVoExcelResult
.
getAnalysis
());
List
<
CbProjectOtherImportVo
>
importVoList
=
importVoExcelResult
.
getList
();
List
<
CbProjectOtherImportVo
>
importVoList
=
importVoExcelResult
.
getList
();
if
(
CollectionUtil
.
isEmpty
(
importVoList
))
{
if
(
CollectionUtil
.
isEmpty
(
importVoList
))
{
...
@@ -217,6 +212,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -217,6 +212,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
rootProjectOther
.
setParentId
(
0L
);
rootProjectOther
.
setParentId
(
0L
);
rootProjectOther
.
setProjectId
(
projectId
);
rootProjectOther
.
setProjectId
(
projectId
);
rootProjectOther
.
setCbStage
(
cbStage
);
rootProjectOther
.
setCbStage
(
cbStage
);
rootProjectOther
.
setCbProjectFileId
(
0L
);
LambdaQueryWrapper
<
CbProjectOther
>
tWrapper
=
Wrappers
.
lambdaQuery
(
rootProjectOther
);
LambdaQueryWrapper
<
CbProjectOther
>
tWrapper
=
Wrappers
.
lambdaQuery
(
rootProjectOther
);
CbProjectOther
rootOther
=
this
.
getOne
(
tWrapper
);
CbProjectOther
rootOther
=
this
.
getOne
(
tWrapper
);
...
@@ -282,6 +278,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
...
@@ -282,6 +278,7 @@ public class CbProjectOtherServiceImpl extends ServiceImpl<CbProjectOtherMapper,
BeanUtil
.
copyProperties
(
importVo
,
projectExpenseSummary
);
BeanUtil
.
copyProperties
(
importVo
,
projectExpenseSummary
);
projectExpenseSummary
.
setProjectId
(
projectId
);
projectExpenseSummary
.
setProjectId
(
projectId
);
projectExpenseSummary
.
setCbStage
(
cbStage
);
projectExpenseSummary
.
setCbStage
(
cbStage
);
projectExpenseSummary
.
setDataType
(
1
);
projectExpenseSummaryService
.
save
(
projectExpenseSummary
);
projectExpenseSummaryService
.
save
(
projectExpenseSummary
);
}
}
}
}
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/service/impl/CbProjectRecordServiceImpl.java
View file @
9efe0df4
...
@@ -22,6 +22,7 @@ import com.dsk.cscec.domain.vo.CbProjectRecordSearchVo;
...
@@ -22,6 +22,7 @@ import com.dsk.cscec.domain.vo.CbProjectRecordSearchVo;
import
com.dsk.cscec.mapper.CbProjectFileMapper
;
import
com.dsk.cscec.mapper.CbProjectFileMapper
;
import
com.dsk.cscec.mapper.CbProjectRecordMapper
;
import
com.dsk.cscec.mapper.CbProjectRecordMapper
;
import
com.dsk.cscec.service.CbProjectExpenseSummaryService
;
import
com.dsk.cscec.service.CbProjectExpenseSummaryService
;
import
com.dsk.cscec.service.CbProjectOtherService
;
import
com.dsk.cscec.service.CbProjectRecordService
;
import
com.dsk.cscec.service.CbProjectRecordService
;
import
com.dsk.cscec.service.CbSummaryService
;
import
com.dsk.cscec.service.CbSummaryService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -51,6 +52,8 @@ public class CbProjectRecordServiceImpl extends ServiceImpl<CbProjectRecordMappe
...
@@ -51,6 +52,8 @@ public class CbProjectRecordServiceImpl extends ServiceImpl<CbProjectRecordMappe
private
CbSummaryService
cbSummaryService
;
private
CbSummaryService
cbSummaryService
;
@Resource
@Resource
private
CbProjectExpenseSummaryService
projectExpenseSummaryService
;
private
CbProjectExpenseSummaryService
projectExpenseSummaryService
;
@Resource
private
CbProjectOtherService
projectOtherService
;
/**
/**
* 新增项目
* 新增项目
...
@@ -128,6 +131,7 @@ public class CbProjectRecordServiceImpl extends ServiceImpl<CbProjectRecordMappe
...
@@ -128,6 +131,7 @@ public class CbProjectRecordServiceImpl extends ServiceImpl<CbProjectRecordMappe
dataAnalysisComponent
.
quantitySummaryDataAnalysis
(
projectBaseBo
);
dataAnalysisComponent
.
quantitySummaryDataAnalysis
(
projectBaseBo
);
//措施项目
//措施项目
//其他项目
//其他项目
projectOtherService
.
projectOtherDataAnalysis
(
projectBaseBo
);
//现场经费
//现场经费
projectExpenseSummaryService
.
parseSceneExpenseData
(
projectId
,
cbStage
,
username
);
projectExpenseSummaryService
.
parseSceneExpenseData
(
projectId
,
cbStage
,
username
);
//成本汇总
//成本汇总
...
...
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