Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
patzn-cloud-service-soil
Overview
Overview
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
wangweidong
patzn-cloud-service-soil
Commits
caf22704
Commit
caf22704
authored
May 10, 2021
by
wangweidong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
土工高级优化
parent
4997589b
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
113 additions
and
3 deletions
+113
-3
OriginalOperationFactory.java
...cloud/service/lims/original/OriginalOperationFactory.java
+3
-1
SingleSheetReportOperation.java
...cloud/service/lims/report/SingleSheetReportOperation.java
+3
-1
SoilExperimentController.java
...ervice/lims/soil/controller/SoilExperimentController.java
+5
-1
ISoilExperimentService.java
...oud/service/lims/soil/service/ISoilExperimentService.java
+2
-0
SoilExperimentServiceImpl.java
...ice/lims/soil/service/impl/SoilExperimentServiceImpl.java
+100
-0
No files found.
src/main/java/com/patzn/cloud/service/lims/original/OriginalOperationFactory.java
View file @
caf22704
...
...
@@ -60,7 +60,9 @@ public class OriginalOperationFactory {
public
Operation
getOperation
(
SoilOriginalTemplate
template
,
Integer
templateSampleNum
,
List
<
SoilExperimentVO
>
voList
){
RestAssert
.
fail
(
null
==
templateSampleNum
,
"模板样品数不能为空!"
);
if
(
null
==
templateSampleNum
){
templateSampleNum
=
1
;
}
if
(
null
==
template
.
getMoreSheet
()
||
0
==
template
.
getMoreSheet
()){
//单模板
if
(
voList
.
size
()<
templateSampleNum
){
...
...
src/main/java/com/patzn/cloud/service/lims/report/SingleSheetReportOperation.java
View file @
caf22704
...
...
@@ -45,7 +45,9 @@ public class SingleSheetReportOperation implements ReportOperation {
sheetOne
.
setForceFormulaRecalculation
(
true
);
Integer
beginRow
=
template
.
getSampleBeginRow
();
Integer
sampleMergerNumOri
=
template
.
getSampleMergerNum
();
RestAssert
.
fail
(
null
==
template
.
getTemplateSampleNum
(),
"模板样品数不能为空"
);
if
(
null
==
template
.
getTemplateSampleNum
()){
template
.
setTemplateSampleNum
(
1
);
}
int
templateSampleNum
=
template
.
getTemplateSampleNum
();
if
(
null
!=
beginRow
&&
null
!=
sampleMergerNumOri
...
...
src/main/java/com/patzn/cloud/service/lims/soil/controller/SoilExperimentController.java
View file @
caf22704
...
...
@@ -714,7 +714,11 @@ public class SoilExperimentController extends ServiceController {
@ApiOperation
(
value
=
"高级试验填写原始记录"
,
notes
=
"填写原始记录"
)
@PostMapping
(
"/save_senior_excel_original_record"
)
public
RestResult
<
SoilOriginalRecord
>
saveSeniorExcelOriginalRecord
(
@RequestParam
(
"ids"
)
Long
[]
ids
,
@RequestParam
(
"templateId"
)
Long
templateId
)
{
return
success
(
soilExperimentService
.
saveSeniorExcelOriginalRecord
(
ids
,
templateId
,
getAccount
()));
}
...
...
src/main/java/com/patzn/cloud/service/lims/soil/service/ISoilExperimentService.java
View file @
caf22704
...
...
@@ -88,6 +88,8 @@ public interface ISoilExperimentService extends IBaseService<SoilExperiment> {
SoilOriginalRecord
saveExcelOriginalRecord
(
Long
[]
ids
,
Long
templateId
,
Account
account
);
SoilOriginalRecord
saveSeniorExcelOriginalRecord
(
Long
[]
ids
,
Long
templateId
,
Account
account
);
SoilExpReport
saveExcelExpReport
(
String
expName
,
Long
entrustId
,
Long
[]
ids
,
Long
templateId
,
Account
account
);
void
uploadCollectGds
(
SmbFile
smbFile
,
CollectDataType
request
);
...
...
src/main/java/com/patzn/cloud/service/lims/soil/service/impl/SoilExperimentServiceImpl.java
View file @
caf22704
...
...
@@ -402,6 +402,106 @@ public class SoilExperimentServiceImpl extends BaseServiceImpl<SoilExperimentMap
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
SoilOriginalRecord
saveSeniorExcelOriginalRecord
(
Long
[]
ids
,
Long
templateId
,
Account
account
)
{
logger
.
error
(
"saveExcelOriginalRecord开始生成"
);
RestAssert
.
fail
(
ArrayUtils
.
isEmpty
(
ids
),
"请选择试验项目!"
);
RestAssert
.
fail
(
null
==
templateId
,
"请选择原始记录模板"
);
SoilOriginalTemplate
template
=
soilOriginalTemplateService
.
getById
(
templateId
);
if
(
null
==
template
){
logger
.
error
(
"----------------------0"
);
RestAssert
.
fail
(
"模板不存在"
);
}
logger
.
error
(
"saveExcelOriginalRecord模板存在"
);
List
<
SoilExperimentVO
>
voList
=
soilExperimentService
.
listVOByIds
(
ids
);
if
(
CollectionUtils
.
isEmpty
(
voList
)){
logger
.
error
(
"----------------------1"
);
return
null
;
}
List
<
Long
>
sampleIdList
=
voList
.
stream
().
map
(
s
->{
return
s
.
getSampleId
();
}).
collect
(
Collectors
.
toList
());
List
<
SoilItemVO
>
soilItemVOList
=
soilItemService
.
listVOByExpSampleIds
(
sampleIdList
);
SoilEntrust
entrust
=
soilEntrustService
.
getById
(
voList
.
get
(
0
).
getEntrustId
());
logger
.
error
(
"saveExcelOriginalRecord entrust"
);
InputStream
io
=
ossClient
.
download
(
template
.
getObjectKey
());
if
(
null
==
io
){
RestAssert
.
fail
(
"模板不存在"
);
}
logger
.
error
(
" InputStream io 存在"
);
SoilOriginalRecord
objectKey
=
null
;
XSSFWorkbook
xssfWorkbook
=
null
;
try
{
xssfWorkbook
=
new
XSSFWorkbook
(
io
);
}
catch
(
Exception
e
){
logger
.
error
(
"获取证书模板错误"
+
e
.
getMessage
());
e
.
printStackTrace
();
}
Map
<
String
,
String
>
mapReplace
=
new
HashMap
<>();
InitMapReplace
.
initMapReplace
(
mapReplace
,
entrust
);
List
<
SoilSampleOperation
>
operationList
=
soilSampleOperationService
.
list
(
Condition
.
create
().
setSqlSelect
(
"make_time"
).
in
(
"sample_id"
,
sampleIdList
).
isNotNull
(
"make_time"
));
if
(
CollectionUtils
.
isEmpty
(
operationList
)){
mapReplace
.
put
(
"#{testDate}"
,
""
);
}
else
{
List
<
Date
>
dateList
=
operationList
.
stream
().
map
(
d
->{
return
d
.
getMakeTime
();
}).
collect
(
Collectors
.
toList
());
mapReplace
.
put
(
"#{testDate}"
,
DateUtils
.
toYearMonthDay
(
DateUtils
.
getMinDateByDateList
(
dateList
)));
}
List
<
SoilOriginalTemplateConfig
>
configList
=
soilOriginalTemplateConfigService
.
list
(
Condition
.
create
().
eq
(
"template_id"
,
templateId
));
OriginalOperationFactory
operationFactory
=
new
OriginalOperationFactory
();
operationFactory
.
initParams
(
xssfWorkbook
,
io
,
mapReplace
,
configList
,
template
,
voList
,
soilItemVOList
,
entrust
);
Operation
operation
=
operationFactory
.
getOperation
(
template
,
template
.
getTemplateSampleNum
(),
voList
);
operation
.
doProductOriginal
();
int
num
=
xssfWorkbook
.
getNumberOfSheets
();
String
siteNo
=
voList
.
get
(
0
).
getSiteNo
();
for
(
int
i
=
0
;
i
<
num
;
i
++)
{
XSSFSheet
sheet
=
xssfWorkbook
.
getSheetAt
(
i
);
xssfWorkbook
.
setSheetName
(
i
,
sheet
.
getSheetName
()+
siteNo
);
}
FileOutputStream
os
=
null
;
File
file
=
null
;
String
generated
=
"ORIGINAL"
;
try
{
file
=
File
.
createTempFile
(
generated
,
"."
+
template
.
getType
());
os
=
new
FileOutputStream
(
file
);
xssfWorkbook
.
write
(
os
);
os
.
flush
();
objectKey
=
soilOriginalRecordService
.
uploadExpGenerate
(
ids
,
template
,
entrust
,
account
,
"原始记录生成"
,
file
);
logger
.
error
(
"----------------------17"
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"Exception 报错"
+
e
.
getMessage
());
e
.
printStackTrace
();
}
finally
{
try
{
os
.
close
();
xssfWorkbook
.
close
();
io
.
close
();
FileUtils
.
deleteFiles
(
file
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
logger
.
error
(
"----------------------20"
);
return
objectKey
;
}
public
void
GenerateChart
(
XSSFSheet
sheet
,
String
xValue
,
String
yValue
)
{
...
...
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