提交 2f40e07b authored 作者: 133's avatar 133

[zjm] 提交

上级 3dfedffc
...@@ -27,4 +27,6 @@ public class Check { ...@@ -27,4 +27,6 @@ public class Check {
private String seqStirng; private String seqStirng;
private Integer oneCount;
} }
...@@ -744,96 +744,102 @@ public class JavaToPdfHtmlFreeMarker { ...@@ -744,96 +744,102 @@ public class JavaToPdfHtmlFreeMarker {
public static List<List<Check>> toCheckMergeList(List<DocumentDevice> deviceList,String unit) throws UnsupportedEncodingException { public static List<List<Check>> toCheckMergeList(List<DocumentDevice> deviceList,String unit) throws UnsupportedEncodingException {
List<List<Check>> lists=new ArrayList<>(); List<List<Check>> lists = new ArrayList<>();
Map<String,Check> map=new HashMap<>(); Map<String, Check> map = new HashMap<>();
deviceList.forEach( deviceList.forEach(
documentDevice -> { documentDevice -> {
String key=documentDevice.getModel()+documentDevice.getParts(); String key = documentDevice.getModel() + documentDevice.getParts();
if (map.containsKey(key)){ if (map.containsKey(key)) {
Check check=map.get(key); Check check = map.get(key);
check.setCount(check.getCount()+1); check.setCount(check.getCount() + 1);
List<String> strings=check.getStrings(); List<String> strings = check.getStrings();
strings.add(documentDevice.getDeviceSerialNumber()); strings.add(documentDevice.getDeviceSerialNumber());
check.setStrings(strings); check.setStrings(strings);
map.put(key,check); map.put(key, check);
}else { } else {
Check check= new Check(); Check check = new Check();
List<String> strings=new ArrayList<>(); List<String> strings = new ArrayList<>();
check.setCount(1); check.setCount(1);
check.setModel(documentDevice.getModel()); check.setModel(documentDevice.getModel());
check.setName(documentDevice.getParts()); check.setName(documentDevice.getParts());
strings.add(documentDevice.getDeviceSerialNumber()); strings.add(documentDevice.getDeviceSerialNumber());
check.setStrings(strings); check.setStrings(strings);
map.put(key,check); map.put(key, check);
} }
} }
); );
List<Check> checkList=map.values().stream().sorted(Comparator.comparing(Check::getModel)).collect(Collectors.toList()); List<Check> checkList = map.values().stream().sorted(Comparator.comparing(Check::getModel)).collect(Collectors.toList());
List<Check> checkList2=new ArrayList<>(); List<Check> checkList2 = new ArrayList<>();
int i=0; int i = 0;
for (int j = 0; j < checkList.size(); j++) {
for (int j=0;j< checkList.size();j++){ Check check = checkList.get(j);
Check check=checkList.get(j); List<String> stringList = check.getStrings();
List<String> stringList=check.getStrings(); int max = toMaxList(check.getStrings()) + 1;
int max = toMaxList(check.getStrings())+1;
if (i + max == 24) {
if (i+max==30){
check.setSeqStirng(toALLSeqStirng(stringList)); check.setSeqStirng(toALLSeqStirng(stringList));
check.setOneCount(max - 1);
checkList2.add(check); checkList2.add(check);
lists.add(checkList2); lists.add(checkList2);
checkList2=new ArrayList<>(); checkList2 = new ArrayList<>();
i=0; i = 0;
}else if (i+max>30){ } else if (i + max > 24) {
//当前页面少了多少行 //当前页面少了多少行
int differ=30-i; int differ = 24 - i;
check.setSeqStirng(toALLSeqStirng(stringList.subList(0,differ*7))); check.setSeqStirng(toALLSeqStirng(stringList.subList(0, differ * 7)));
check.setOneCount(differ - 1);
checkList2.add(check); checkList2.add(check);
lists.add(checkList2); lists.add(checkList2);
checkList2=new ArrayList<>(); checkList2 = new ArrayList<>();
List<String> strings= stringList.subList(differ*7,stringList.size()); List<String> strings = stringList.subList(differ * 7, stringList.size());
Integer max2= toMaxList(strings); Integer max2 = toMaxList(strings);
Check check1 = new Check(); Check check1 = new Check();
int count = (max2%30>0) ? max2/30 + 1 : max2/30; int count = (max2 % 24 > 0) ? max2 / 24 + 1 : max2 / 24;
if (count!=1) { if (count != 1) {
int o = 1; int o = 1;
while (o <= count - 1) { while (o <= count - 1) {
check1.setSeqStirng(toALLSeqStirng(strings.subList((o - 1) * 7 * 30, o * 7 * 30))); check1.setSeqStirng(toALLSeqStirng(strings.subList((o - 1) * 7 * 24, o * 7 * 24)));
check1.setOneCount(24);
checkList2.add(check1); checkList2.add(check1);
lists.add(checkList2); lists.add(checkList2);
checkList2 = new ArrayList<>(); checkList2 = new ArrayList<>();
o++; o++;
} }
List<String> endList = strings.subList((count - 1) * 7 * 30, strings.size()); List<String> endList = strings.subList((count - 1) * 7 * 24, strings.size());
Integer max4= toMaxList(endList); Integer max4 = toMaxList(endList);
int count1 = (max4%30>0) ? max4/30 + 1 : max4/30; int count1 = (max4 % 24 > 0) ? max4 / 24 + 1 : max4 / 24;
if (count1 == 30) { if (count1 == 24) {
check1.setSeqStirng(toALLSeqStirng(endList)); check1.setSeqStirng(toALLSeqStirng(endList));
check1.setOneCount(24);
checkList2.add(check1); checkList2.add(check1);
lists.add(checkList2); lists.add(checkList2);
checkList2 = new ArrayList<>(); checkList2 = new ArrayList<>();
i = 0; i = 0;
}else { } else {
check1.setOneCount(max4);
check1.setSeqStirng(toALLSeqStirng(endList)); check1.setSeqStirng(toALLSeqStirng(endList));
checkList2.add(check1); checkList2.add(check1);
i=max4; i = max4;
} }
}else { } else {
check1.setOneCount(toMaxList(strings));
check1.setSeqStirng(toALLSeqStirng(strings)); check1.setSeqStirng(toALLSeqStirng(strings));
checkList2.add(check1); checkList2.add(check1);
i=toMaxList(strings); i = toMaxList(strings);
} }
}else { } else {
check.setSeqStirng(toALLSeqStirng(stringList)); check.setSeqStirng(toALLSeqStirng(stringList));
check.setOneCount(max - 1);
checkList2.add(check); checkList2.add(check);
i=i+max; i = i + max;
} }
} }
if (checkList2.size()!=0){ if (checkList2.size() != 0) {
lists.add(checkList2); lists.add(checkList2);
} }
return lists; return lists;
} }
/** /**
......
...@@ -131,21 +131,86 @@ ...@@ -131,21 +131,86 @@
} }
table.altrowstable td { table.altrowstable td {
border-width: 1px; height: 25px;
padding: 8px; line-height:25px;
border-style: solid; font-size: 15px;
border-color: #ccc;
word-break: break-all; word-break: break-all;
word-wrap: break-word; word-wrap: break-word;
height: 20px; border:1px solid #bebebe;
line-height: 20px;
font-size: 14px;
width: 100%; width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.td2{
height: 50px !important;
}
.td3{
height: 75px !important;
}
.td4{
height: 100px !important;
}
.td5{
height: 125px !important;
}
.td6{
height: 150px !important;
}
.td7{
height: 175px !important;
}
.td8{
height: 200px !important;
}
.td9{
height: 225px !important;
}
.td10{
height: 250px !important;
}
.td11{
height: 275px !important;
}
.td12{
height: 300px !important;
}
.td13{
height: 325px !important;
}
.td14{
height: 350px !important;
}
.td15{
height: 375px !important;
}
.td16{
height: 400px !important;
}
.td17{
height: 425px !important;
}
.td18{
height: 450px !important;
}
.td19{
height: 475px !important;
}
.td20{
height: 500px !important;
}
.td21{
height: 525px !important;
}
.td22{
height: 550px !important;
}
.td23{
height: 575px !important;
}
.td24{
height: 600px !important;
}
.td25{
height: 625px !important;
}
.oddrowcolor { .oddrowcolor {
background-color: #fff; background-color: #fff;
} }
...@@ -180,35 +245,96 @@ ...@@ -180,35 +245,96 @@
<p class="title" style="margin-bottom:20px;"> <p class="title" style="margin-bottom:20px;">
<div class="main-title"> <div class="main-title">
<span> <span>
${title!} 核心密码装备库存统计表
</span> </span>
</div> </div>
</p> </p>
<div style="height: 900px;"> <div style="height: 900px;">
<#list checks as dev> <#list checks as dev>
<table class="altrowstable" id="alternatecolor"> <table class="altrowstable" id="alternatecolor">
<#if (dev.model)??>
<tr> <tr>
<td>${dev.model!}</td> <td>${dev.model!}</td>
<td>${dev.name!}</td> <td>${dev.name!}</td>
<td>${dev.count!}</td> <td>${dev.count!}</td>
</tr> </tr>
</#if>
<tr> <tr>
<td colspan="3">${dev.seqStirng!}</td> <#if dev.oneCount == 1>
<td colspan="3" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 2>
<td colspan="3" class="td2" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 3>
<td colspan="3" class="td3" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 4>
<td colspan="3" class="td4" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 5>
<td colspan="3" class="td5" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 6>
<td colspan="3" class="td6" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 7>
<td colspan="3" class="td7" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 8>
<td colspan="3" class="td8" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 9>
<td colspan="3" class="td9" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 10>
<td colspan="3" class="td10" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 11>
<td colspan="3" class="td11" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 12>
<td colspan="3" class="td12" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 13>
<td colspan="3" class="td13" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td14" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td15" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td16" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td17" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td18" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td19" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td20" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td21" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td22" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td23" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td24" style="text-align: left">${dev.seqStirng!}</td>
<#elseif dev.oneCount == 14>
<td colspan="3" class="td25" style="text-align: left">${dev.seqStirng!}</td>
</#if>
</tr> </tr>
</table> </table>
</#list> </#list>
</div> </div>
</div> </div>
<p class="person" style="margin-top: 20px;font-size: 10px;width: 100%;text-align: left;"> <p class="person" style="margin-top: 20px;font-size: 10px;width: 100%;text-align: left;">
<span style="width: 200px;text-align: center;width: 49%;margin: 0;">经办人:</span> <span style="width: 200px;text-align: center;width: 49%;margin: 0;">制表单位:${unit!}</span>
<span style="width: 200px;text-align: center;width: 49%;margin: 0;">审核人:</span> <span style="width: 200px;text-align: center;width: 49%;margin: 0;">制表时间:${time!}</span>
</p> </p>
</div> </div>
</div> </div>
</div> </div>
<div> <div>
<p class="bottomTxt" style="float: left;">注:编号连续使用"-"省略</p> <!--<p class="bottomTxt" style="float: left;">注:编号连续使用"-"省略</p>-->
<p class="bottomTxt" style="float: right;">第${page}页/共${count}页</p> <p class="bottomTxt" style="float: right;">第${page}页/共${count}页</p>
</div> </div>
</div> </div>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论