Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
ocrCloudPlatForm
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ocr-cloud-platform
ocrCloudPlatForm
Commits
e5a1a54a
Commit
e5a1a54a
authored
Jul 30, 2024
by
黄明步
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
b0c00e22
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
89 additions
and
20 deletions
+89
-20
src/main/java/com/gxmailu/ocrCloudPlatform/controller/AppAbilityRecordAllController.java
+55
-18
src/main/java/com/gxmailu/ocrCloudPlatform/excel/model/CallRecordModel.java
+1
-1
src/main/java/com/gxmailu/ocrCloudPlatform/excel/model/CallRecordSimpleModel.java
+32
-0
src/main/java/com/gxmailu/ocrCloudPlatform/service/impl/StatService.java
+1
-1
No files found.
src/main/java/com/gxmailu/ocrCloudPlatform/controller/AppAbilityRecordAllController.java
View file @
e5a1a54a
...
@@ -7,7 +7,10 @@ import cn.hutool.core.util.IdUtil;
...
@@ -7,7 +7,10 @@ import cn.hutool.core.util.IdUtil;
import
cn.hutool.core.util.RandomUtil
;
import
cn.hutool.core.util.RandomUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.ExcelWriter
;
import
com.alibaba.excel.util.MapUtils
;
import
com.alibaba.excel.util.MapUtils
;
import
com.alibaba.excel.write.handler.WriteHandler
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.alibaba.excel.write.style.HorizontalCellStyleStrategy
;
import
com.alibaba.excel.write.style.HorizontalCellStyleStrategy
;
import
com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy
;
import
com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
...
@@ -18,6 +21,7 @@ import com.gxmailu.ocrCloudPlatform.dto.RecordDto;
...
@@ -18,6 +21,7 @@ import com.gxmailu.ocrCloudPlatform.dto.RecordDto;
import
com.gxmailu.ocrCloudPlatform.entity.*
;
import
com.gxmailu.ocrCloudPlatform.entity.*
;
import
com.gxmailu.ocrCloudPlatform.excel.handler.ExcelFillCellMergeStrategy
;
import
com.gxmailu.ocrCloudPlatform.excel.handler.ExcelFillCellMergeStrategy
;
import
com.gxmailu.ocrCloudPlatform.excel.model.CallRecordModel
;
import
com.gxmailu.ocrCloudPlatform.excel.model.CallRecordModel
;
import
com.gxmailu.ocrCloudPlatform.excel.model.CallRecordSimpleModel
;
import
com.gxmailu.ocrCloudPlatform.excel.utils.ExcelStyleUtils
;
import
com.gxmailu.ocrCloudPlatform.excel.utils.ExcelStyleUtils
;
import
com.gxmailu.ocrCloudPlatform.mapper.ConfigAbilityMapper
;
import
com.gxmailu.ocrCloudPlatform.mapper.ConfigAbilityMapper
;
import
com.gxmailu.ocrCloudPlatform.mapper.ConfigApplicationMapper
;
import
com.gxmailu.ocrCloudPlatform.mapper.ConfigApplicationMapper
;
...
@@ -107,18 +111,17 @@ public class AppAbilityRecordAllController {
...
@@ -107,18 +111,17 @@ public class AppAbilityRecordAllController {
try
{
try
{
List
<
CallRecordModel
>
callRecordList
=
this
.
recordAllService
.
selectCallRecord
(
yearMonthDay
,
endYearMonthDay
);
List
<
CallRecordModel
>
callRecordList
=
this
.
recordAllService
.
selectCallRecord
(
yearMonthDay
,
endYearMonthDay
);
Map
<
String
,
CallRecordModel
>
mergedData
=
new
HashMap
<>();
Map
<
String
,
CallRecordSimpleModel
>
mergedData
=
new
HashMap
<>();
for
(
CallRecordModel
record
:
callRecordList
)
{
for
(
CallRecordModel
record
:
callRecordList
)
{
mergedData
.
putIfAbsent
(
record
.
getBusinessVendorName
(),
CallRecord
Model
.
builder
().
businessVendorName
(
record
.
getBusinessVendorName
()).
call
Count
(
0L
).
fileCount
(
0L
).
build
());
mergedData
.
putIfAbsent
(
record
.
getBusinessVendorName
(),
CallRecord
SimpleModel
.
builder
().
businessVendorName
(
record
.
getBusinessVendorName
()).
abilityDoc
Count
(
0L
).
fileCount
(
0L
).
build
());
CallRecordModel
mergedRecord
=
mergedData
.
get
(
record
.
getBusinessVendorName
());
CallRecord
Simple
Model
mergedRecord
=
mergedData
.
get
(
record
.
getBusinessVendorName
());
mergedRecord
.
set
CallCount
(
mergedRecord
.
getCall
Count
()
+
record
.
getAbilityDocCount
());
mergedRecord
.
set
AbilityDocCount
(
mergedRecord
.
getAbilityDoc
Count
()
+
record
.
getAbilityDocCount
());
mergedRecord
.
setFileCount
(
mergedRecord
.
getFileCount
()
+
record
.
getFileCount
());
mergedRecord
.
setFileCount
(
mergedRecord
.
getFileCount
()
+
record
.
getFileCount
());
}
}
List
<
CallRecordModel
>
result
=
new
ArrayList
<>(
mergedData
.
values
());
result
=
result
.
stream
().
filter
(
item
->
StrUtil
.
isNotBlank
(
item
.
getBusinessVendorName
())).
collect
(
Collectors
.
toList
());
List
<
CallRecordSimpleModel
>
result
=
new
ArrayList
<>(
mergedData
.
values
());
System
.
out
.
println
(
result
);
result
=
result
.
stream
().
filter
(
item
->
StrUtil
.
isNotBlank
(
item
.
getBusinessVendorName
())).
sorted
(
Comparator
.
comparing
(
CallRecordSimpleModel:
:
getAbilityDocCount
).
reversed
()).
collect
(
Collectors
.
toList
()
);
Assert
.
notNull
(
callRecordList
,
"未找到相关数据"
);
Assert
.
notNull
(
callRecordList
,
"未找到相关数据"
);
...
@@ -129,16 +132,50 @@ public class AppAbilityRecordAllController {
...
@@ -129,16 +132,50 @@ public class AppAbilityRecordAllController {
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename*=utf-8''"
+
fileName
);
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename*=utf-8''"
+
fileName
);
// 设置单元格样式策略
// 设置单元格样式策略
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
new
HorizontalCellStyleStrategy
(
ExcelStyleUtils
.
getHeadStyle
(),
ExcelStyleUtils
.
getContentStyle
());
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
new
HorizontalCellStyleStrategy
(
ExcelStyleUtils
.
getHeadStyle
(),
ExcelStyleUtils
.
getContentStyle
());
EasyExcel
.
write
(
response
.
getOutputStream
(),
CallRecordModel
.
class
)
WriteHandler
longestMatchColumnWidthStyleStrategy
=
new
LongestMatchColumnWidthStyleStrategy
();
.
sheet
(
StrUtil
.
isBlank
(
newYearMonthDay
)
?
"各法院调用统计"
:
newYearMonthDay
)
WriteHandler
excelFillCellMergeStrategy
=
new
ExcelFillCellMergeStrategy
(
0
,
0
,
new
int
[]{
0
,
1
});
.
head
(
CallRecordModel
.
class
)
// 自动行宽策略
// EasyExcel.write(response.getOutputStream(), CallRecordModel.class)
.
registerWriteHandler
(
new
LongestMatchColumnWidthStyleStrategy
())
// .sheet(0, StrUtil.isBlank(newYearMonthDay) ? "各法院调用统计" : newYearMonthDay)
// 自定义合并策略
// .head(CallRecordModel.class)
.
registerWriteHandler
(
new
ExcelFillCellMergeStrategy
(
0
,
0
,
new
int
[]{
0
,
1
}))
// // 自动行宽策略
// 设置单元格样式
// .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
.
registerWriteHandler
(
horizontalCellStyleStrategy
)
// // 自定义合并策略
.
doWrite
(
callRecordList
);
// .registerWriteHandler(new ExcelFillCellMergeStrategy(0, 0, new int[]{0, 1}))
// // 设置单元格样式
// .registerWriteHandler(horizontalCellStyleStrategy)
// .doWrite(callRecordList);
// EasyExcel.write(response.getOutputStream(), CallRecordSimpleModel.class)
// .sheet(1, "调用排名")
// .head(CallRecordSimpleModel.class)
// // 自动行宽策略
// .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
// // 设置单元格样式
// .registerWriteHandler(horizontalCellStyleStrategy)
// .doWrite(result);
// 设置样式和策略
try
(
ExcelWriter
excelWriter
=
EasyExcel
.
write
(
response
.
getOutputStream
()).
build
())
{
WriteSheet
sheet1
=
EasyExcel
.
writerSheet
(
0
,
StrUtil
.
isBlank
(
newYearMonthDay
)
?
"各法院调用统计"
:
newYearMonthDay
+
"调用统计"
)
.
head
(
CallRecordModel
.
class
)
.
registerWriteHandler
(
longestMatchColumnWidthStyleStrategy
)
.
registerWriteHandler
(
excelFillCellMergeStrategy
)
.
registerWriteHandler
(
horizontalCellStyleStrategy
)
.
build
();
WriteSheet
sheet2
=
EasyExcel
.
writerSheet
(
1
,
"调用次数排序"
)
.
head
(
CallRecordSimpleModel
.
class
)
.
registerWriteHandler
(
longestMatchColumnWidthStyleStrategy
)
.
registerWriteHandler
(
horizontalCellStyleStrategy
)
.
build
();
excelWriter
.
write
(
callRecordList
,
sheet1
);
excelWriter
.
write
(
result
,
sheet2
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"导出异常"
,
e
);
log
.
error
(
"导出异常"
,
e
);
// 重置response
// 重置response
...
...
src/main/java/com/gxmailu/ocrCloudPlatform/excel/model/CallRecordModel.java
View file @
e5a1a54a
...
@@ -43,7 +43,7 @@ public class CallRecordModel implements Serializable {
...
@@ -43,7 +43,7 @@ public class CallRecordModel implements Serializable {
@ExcelProperty
(
value
=
"法院名称"
,
index
=
0
)
@ExcelProperty
(
value
=
"法院名称"
,
index
=
0
)
private
String
courtName
;
private
String
courtName
;
@ExcelProperty
(
value
=
"业务
厂商
"
,
index
=
1
)
@ExcelProperty
(
value
=
"业务
系统
"
,
index
=
1
)
private
String
businessVendorName
;
private
String
businessVendorName
;
@ExcelProperty
(
value
=
"识别能力"
,
index
=
2
)
@ExcelProperty
(
value
=
"识别能力"
,
index
=
2
)
private
String
abilityName
;
private
String
abilityName
;
...
...
src/main/java/com/gxmailu/ocrCloudPlatform/excel/model/CallRecordSimpleModel.java
0 → 100644
View file @
e5a1a54a
package
com
.
gxmailu
.
ocrCloudPlatform
.
excel
.
model
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @author Hmb
* @version 1.0.0
* @since 2024/1/20 21:05:04
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public
class
CallRecordSimpleModel
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ExcelProperty
(
value
=
"业务系统"
,
index
=
0
)
private
String
businessVendorName
;
@ExcelProperty
(
value
=
"调用次数"
,
index
=
1
)
private
Long
abilityDocCount
;
@ExcelProperty
(
value
=
"总识别页数"
,
index
=
2
)
private
Long
fileCount
;
}
src/main/java/com/gxmailu/ocrCloudPlatform/service/impl/StatService.java
View file @
e5a1a54a
...
@@ -180,7 +180,7 @@ public class StatService {
...
@@ -180,7 +180,7 @@ public class StatService {
brokenLineData
.
setTime
(
time
);
brokenLineData
.
setTime
(
time
);
long
value
=
(
long
)
recordBucket
.
aggregations
().
get
(
"fileCount"
).
sum
().
value
()
*
3
;
long
value
=
(
long
)
recordBucket
.
aggregations
().
get
(
"fileCount"
).
sum
().
value
()
*
3
;
if
(
finalDefaultInterval
.
equals
(
CalendarInterval
.
Second
))
{
if
(
finalDefaultInterval
.
equals
(
CalendarInterval
.
Second
))
{
value
=
value
>
1
85
?
185
+
value
%
10
:
value
;
value
=
value
>
1
95
?
195
+
value
%
10
+
3
:
value
;
}
}
brokenLineData
.
setValue
(
value
);
brokenLineData
.
setValue
(
value
);
...
...
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