Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
device-back
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
device-back
Commits
01a77a82
提交
01a77a82
authored
7月 14, 2021
作者:
133
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[misc、决算报告] 添加model排序工具类
上级
0bd8bccd
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
155 行增加
和
51 行删除
+155
-51
FileController.java
...a/com/tykj/dev/device/file/Controller/FileController.java
+1
-1
WrodParameter.java
...n/java/com/tykj/dev/device/file/entity/WrodParameter.java
+36
-32
UseReportFIleServiceImpl.java
...ev/device/file/service/Impl/UseReportFIleServiceImpl.java
+32
-9
JavaToPdfHtmlFreeMarker.java
...om/tykj/dev/device/file/util/JavaToPdfHtmlFreeMarker.java
+44
-0
DeviceModelSort.java
...rc/main/java/com/tykj/dev/misc/utils/DeviceModelSort.java
+32
-0
DeviceUseReportController.java
...evice/usereport/controller/DeviceUseReportController.java
+2
-9
DeviceUseReportDetailVo.java
.../device/usereport/subject/vo/DeviceUseReportDetailVo.java
+8
-0
没有找到文件。
dev-file/src/main/java/com/tykj/dev/device/file/Controller/FileController.java
浏览文件 @
01a77a82
...
...
@@ -111,7 +111,7 @@ public class FileController {
public
ResponseEntity
printConfirm
(
@RequestBody
Confirm
confirm
)
{
String
[]
content
=
JavaToPdfHtmlFreeMarker
.
freeMarkerRenderConfirm
(
confirm
,
url
+
"htmlModel/"
);
log
.
info
(
"[file] 调用了生成确认单据对接口 confirm"
);
return
ResponseEntity
.
ok
(
JavaToPdfHtmlFreeMarker
.
createPdf
(
content
,
url
,
preview
,
"confirm/"
));
return
ResponseEntity
.
ok
(
JavaToPdfHtmlFreeMarker
.
createPdf
90
(
content
,
url
,
preview
,
"confirm/"
));
}
/**
...
...
dev-file/src/main/java/com/tykj/dev/device/file/entity/WrodParameter.java
浏览文件 @
01a77a82
package
com
.
tykj
.
dev
.
device
.
file
.
entity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
...
...
@@ -35,45 +36,48 @@ public class WrodParameter {
*/
private
String
titleTimeEnd
;
/**
* 总条数
*/
private
Integer
total
;
@ApiModelProperty
(
value
=
"装备类型总数"
,
example
=
"100"
)
private
Integer
deviceNumber
;
/**
* 入库数量
*/
private
Integer
storageNum
;
@ApiModelProperty
(
value
=
"入库数量"
,
example
=
"10"
)
private
Integer
inLibraryNum
;
/**
* 维修数量
*/
private
Integer
maintenanceNum
;
@ApiModelProperty
(
value
=
"维修数量"
,
example
=
"10"
)
private
Integer
sendRepairNum
;
/**
* 配发数量
*/
private
Integer
withNum
;
@ApiModelProperty
(
value
=
"维修退回"
,
example
=
"10"
)
private
Integer
receiveRepairNum
;
/**
* 清退数量
*/
private
Integer
repelNum
;
@ApiModelProperty
(
value
=
"销毁数量"
,
example
=
"10"
)
private
Integer
destoryNum
;
/**
* 销毁数量
*/
private
Integer
destructionNum
;
@ApiModelProperty
(
value
=
"发起配发数量"
,
example
=
"10"
)
private
Integer
sendAllotNum
;
/**
* 列装数量
*/
private
Integer
fieldingNum
;
@ApiModelProperty
(
value
=
"接收配发数量"
,
example
=
"10"
)
private
Integer
receiveAllotNum
;
@ApiModelProperty
(
value
=
"发起退回数量"
,
example
=
"10"
)
private
Integer
sensAllotBackNum
;
@ApiModelProperty
(
value
=
"接收退回"
,
example
=
"10"
)
private
Integer
receiveAllotBackNum
;
@ApiModelProperty
(
value
=
"清退数量"
,
example
=
"10"
)
private
Integer
sendBackNum
;
@ApiModelProperty
(
value
=
"报废数量"
,
example
=
"10"
)
private
Integer
scrapStatisticsNum
;
@ApiModelProperty
(
value
=
"列装数量"
,
example
=
"10"
)
private
Integer
packingNum
;
@ApiModelProperty
(
value
=
"退装数量"
,
example
=
"10"
)
private
Integer
retiredNum
;
@ApiModelProperty
(
value
=
"退役"
,
example
=
"10"
)
private
Integer
decommissioningStatisticsNum
;
/**
* 退装数量
*/
private
Integer
backPackNum
;
/**
* 时间 2021年4月12日
...
...
dev-file/src/main/java/com/tykj/dev/device/file/service/Impl/UseReportFIleServiceImpl.java
浏览文件 @
01a77a82
...
...
@@ -3,6 +3,7 @@ package com.tykj.dev.device.file.service.Impl;
import
com.tykj.dev.device.file.entity.WrodParameter
;
import
com.tykj.dev.device.file.service.UseReportFIleService
;
import
com.tykj.dev.device.file.util.WordUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
...
...
@@ -36,20 +37,42 @@ public class UseReportFIleServiceImpl implements UseReportFIleService {
public
void
findToFileService
(
WrodParameter
wrodParameter
,
HttpServletResponse
response
,
HttpServletRequest
httpServletRequest
)
throws
IOException
{
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
// 渲染文本
params
.
put
(
"time"
,
wrodParameter
.
getTime
());
params
.
put
(
"total"
,
wrodParameter
.
getTotal
());
params
.
put
(
"BackPackNum"
,
wrodParameter
.
getBackPackNum
());
params
.
put
(
"DestructionNum"
,
wrodParameter
.
getDestructionNum
());
params
.
put
(
"FieldingNum"
,
wrodParameter
.
getFieldingNum
());
params
.
put
(
"MaintenanceNum"
,
wrodParameter
.
getMaintenanceNum
());
params
.
put
(
"RepelNum"
,
wrodParameter
.
getRepelNum
());
params
.
put
(
"StorageNum"
,
wrodParameter
.
getStorageNum
());
//装备类型总数
params
.
put
(
"deviceNumber"
,
wrodParameter
.
getDeviceNumber
());
//入库数量
params
.
put
(
"inLibraryNum"
,
wrodParameter
.
getInLibraryNum
());
//维修数量
params
.
put
(
"sendRepairNum"
,
wrodParameter
.
getSendRepairNum
());
//维修退回
params
.
put
(
"receiveRepairNum"
,
wrodParameter
.
getReceiveRepairNum
());
//销毁数量
params
.
put
(
"destoryNum"
,
wrodParameter
.
getDestoryNum
());
//发起配发数量
params
.
put
(
"sendAllotNum"
,
wrodParameter
.
getSendAllotNum
());
//接收配发数量
params
.
put
(
"receiveAllotNum"
,
wrodParameter
.
getReceiveAllotNum
());
//发起退回数量
params
.
put
(
"sensAllotBackNum"
,
wrodParameter
.
getSensAllotBackNum
());
//接收退回
params
.
put
(
"receiveAllotBackNum"
,
wrodParameter
.
getReceiveAllotBackNum
());
//清退数量
params
.
put
(
"sendBackNum"
,
wrodParameter
.
getSendBackNum
());
//报废数量
params
.
put
(
"scrapStatisticsNum"
,
wrodParameter
.
getScrapStatisticsNum
());
//列装数量
params
.
put
(
"packingNum"
,
wrodParameter
.
getPackingNum
());
//退装数量
params
.
put
(
"retiredNum"
,
wrodParameter
.
getRetiredNum
());
//退役
params
.
put
(
"decommissioningStatisticsNum"
,
wrodParameter
.
getDecommissioningStatisticsNum
());
params
.
put
(
"TitleAnnual"
,
wrodParameter
.
getTitleAnnual
());
params
.
put
(
"TitleTimeEnd"
,
wrodParameter
.
getTitleTimeEnd
());
params
.
put
(
"TitleTimeStart"
,
wrodParameter
.
getTitleTimeStart
());
params
.
put
(
"TitleUnitName"
,
wrodParameter
.
getTitleUnitName
());
params
.
put
(
"WithNum"
,
wrodParameter
.
getWithNum
());
String
fileName
=
wrodParameter
.
getTitleTimeStart
()+
"至"
+
wrodParameter
.
getTitleTimeEnd
()+
"使用报告"
+
".doc"
;
String
templatePath
=
ResourceUtils
.
getURL
(
"classpath:"
).
getPath
()+
"docxModel.docx"
;
url
=
url
+
"report/"
;
...
...
dev-file/src/main/java/com/tykj/dev/device/file/util/JavaToPdfHtmlFreeMarker.java
浏览文件 @
01a77a82
...
...
@@ -140,6 +140,50 @@ public class JavaToPdfHtmlFreeMarker {
return
new
FileRet
();
}
public
static
FileRet
createPdf90
(
String
[]
htmlFiles
,
String
path
,
String
preview
,
String
folderName
){
Long
startTime
=
System
.
currentTimeMillis
();
Document
document
=
new
Document
();
String
name
=
UUID
.
randomUUID
().
toString
()+
".pdf"
;
String
pdfPath
=
path
+
folderName
+
name
;
PdfCopy
pdfCopy
=
null
;
//创建一个新文件
try
{
pdfCopy
=
new
PdfCopy
(
document
,
new
FileOutputStream
(
pdfPath
));
document
.
open
();
for
(
String
htmlFile
:
htmlFiles
)
{
if
(
htmlFile
!=
null
)
{
String
url
=
new
File
(
htmlFile
).
toURI
().
toURL
().
toString
();
ByteArrayOutputStream
os
=
new
ByteArrayOutputStream
();
ITextRenderer
renderer
=
new
ITextRenderer
();
renderer
.
setDocument
(
htmlFile
);
// 解决中文不显示问题
ITextFontResolver
fontResolver
=
renderer
.
getFontResolver
();
fontResolver
.
addFont
(
"simhei.ttf"
,
BaseFont
.
IDENTITY_H
,
BaseFont
.
NOT_EMBEDDED
);
fontResolver
.
addFont
(
"simhei2.ttf"
,
BaseFont
.
IDENTITY_H
,
BaseFont
.
NOT_EMBEDDED
);
renderer
.
layout
();
renderer
.
createPDF
(
os
);
PdfReader
pdfReader
=
new
PdfReader
(
os
.
toByteArray
());
// PdfDictionary pdfDictionary= pdfReader.getPageN(1);
// pdfDictionary.put(PdfName.ROTATE, new PdfNumber(90));
for
(
int
i
=
1
;
i
<=
pdfReader
.
getNumberOfPages
();
i
++)
{
PdfImportedPage
importedPage
=
pdfCopy
.
getImportedPage
(
pdfReader
,
i
);
pdfCopy
.
addPage
(
importedPage
);
}
os
.
close
();
}
}
Long
endTime
=
System
.
currentTimeMillis
();
System
.
out
.
print
(
"Itext parse Html to Pdf End -> "
+
(
endTime
-
startTime
));
return
new
FileRet
(
name
,
pdfPath
,
preview
+
folderName
+
name
);
}
catch
(
IOException
|
DocumentException
|
com
.
lowagie
.
text
.
DocumentException
e
)
{
e
.
printStackTrace
();
}
finally
{
document
.
close
();
}
return
new
FileRet
();
}
/**
...
...
dev-misc/src/main/java/com/tykj/dev/misc/utils/DeviceModelSort.java
0 → 100644
浏览文件 @
01a77a82
package
com
.
tykj
.
dev
.
misc
.
utils
;
import
java.util.Comparator
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
/**
* @author zjm
* @version 1.0.0
* @ClassName DeviceModelSort.java
* @Description TODO
* @createTime 2021年07月14日 13:45:00
*/
public
class
DeviceModelSort
{
public
static
Map
<
String
,
Integer
>
mapModelSort
;
public
static
Set
<
String
>
modelToSort
(
Set
<
String
>
modelList
){
modelList
.
stream
().
sorted
(
Comparator
.
comparing
(
DeviceModelSort:
:
toSort
));
return
modelList
;
}
/**
* 获取型号对应的排序号
* @param model 型号
* @return
*/
private
static
Integer
toSort
(
String
model
){
return
mapModelSort
.
get
(
model
);
}
}
dev-usereport/src/main/java/com/tykj/dev/device/usereport/controller/DeviceUseReportController.java
浏览文件 @
01a77a82
...
...
@@ -96,7 +96,8 @@ public class DeviceUseReportController {
ResultObj
resultObj
=
(
ResultObj
)
selectDetail
(
id
).
getBody
();
DeviceUseReportDetailVo
deviceUseReportDetailVo
=
(
DeviceUseReportDetailVo
)
resultObj
.
getData
();
//新建word模板
WrodParameter
wrodParameter
=
new
WrodParameter
();
WrodParameter
wrodParameter
=
deviceUseReportDetailVo
.
toWrodParameter
();
Instant
instant
=
deviceUseReportDetailVo
.
getCreateTime
().
toInstant
();
ZoneId
zone
=
ZoneId
.
systemDefault
();
LocalDateTime
localDateTime
=
LocalDateTime
.
ofInstant
(
instant
,
zone
);
...
...
@@ -110,14 +111,6 @@ public class DeviceUseReportController {
String
endTime
=
localDateTime2
.
getYear
()+
"年"
+
localDateTime2
.
getMonthValue
()+
"月"
+
localDateTime2
.
getDayOfMonth
()+
"日"
;
wrodParameter
.
setTitleTimeStart
(
startTime
);
wrodParameter
.
setTitleTimeEnd
(
endTime
);
wrodParameter
.
setBackPackNum
(
deviceUseReportDetailVo
.
getRetiredNum
());
wrodParameter
.
setTotal
(
deviceUseReportDetailVo
.
getDeviceNumber
());
wrodParameter
.
setDestructionNum
(
deviceUseReportDetailVo
.
getDestoryNum
());
wrodParameter
.
setFieldingNum
(
deviceUseReportDetailVo
.
getPackingNum
());
wrodParameter
.
setStorageNum
(
deviceUseReportDetailVo
.
getInLibraryNum
());
// wrodParameter.setMaintenanceNum(deviceUseReportDetailVo.getRepairNum());
wrodParameter
.
setRepelNum
(
deviceUseReportDetailVo
.
getSendBackNum
());
// wrodParameter.setWithNum(deviceUseReportDetailVo.getAllotNum());
wrodParameter
.
setTitleAnnual
(
localDateTime
.
getYear
());
useReportFIleService
.
findToFileService
(
wrodParameter
,
response
,
httpServletRequest
);
return
ResponseEntity
.
ok
(
"下载成功"
);
...
...
dev-usereport/src/main/java/com/tykj/dev/device/usereport/subject/vo/DeviceUseReportDetailVo.java
浏览文件 @
01a77a82
package
com
.
tykj
.
dev
.
device
.
usereport
.
subject
.
vo
;
import
com.tykj.dev.device.file.entity.WrodParameter
;
import
com.tykj.dev.misc.base.BeanHelper
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
org.modelmapper.ModelMapper
;
import
java.util.Date
;
...
...
@@ -56,4 +59,9 @@ public class DeviceUseReportDetailVo {
@ApiModelProperty
(
value
=
"报告结束时间"
)
private
Date
endTime
;
public
WrodParameter
toWrodParameter
(){
ModelMapper
mapper
=
BeanHelper
.
getUserMapper
();
return
mapper
.
map
(
this
,
WrodParameter
.
class
);
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论