Commit b5f3ea4a 张少辉

1.缺料报表优化

1 个父辈 9d89ae24
...@@ -409,6 +409,22 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li ...@@ -409,6 +409,22 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
private String mg; private String mg;
/**
* 工单开始时间
*/
private Date startDate;
/**
* 工单结束时间
*/
private Date endDate;
/**
* 工单完成时间
*/
private Date finishDate;
public void setOutReelList(String reel) { public void setOutReelList(String reel) {
if (outReelList == null){ if (outReelList == null){
outReelList = new ArrayList<>(); outReelList = new ArrayList<>();
......
...@@ -110,6 +110,12 @@ public class ReportQueryCondition { ...@@ -110,6 +110,12 @@ public class ReportQueryCondition {
//过期状态 //过期状态
private String expireStatus; private String expireStatus;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private BetweenData<Date> startDate;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private BetweenData<Date> finishDate;
private int page; private int page;
private int size; private int size;
......
...@@ -3,6 +3,7 @@ package com.neotel.smfcore.custom.lizhen.report.outer; ...@@ -3,6 +3,7 @@ package com.neotel.smfcore.custom.lizhen.report.outer;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.neotel.smfcore.common.base.IExcelDownLoad; import com.neotel.smfcore.common.base.IExcelDownLoad;
import com.neotel.smfcore.common.bean.BetweenData;
import com.neotel.smfcore.common.bean.PageData; import com.neotel.smfcore.common.bean.PageData;
import com.neotel.smfcore.common.utils.FileUtil; import com.neotel.smfcore.common.utils.FileUtil;
import com.neotel.smfcore.common.utils.QueryHelp; import com.neotel.smfcore.common.utils.QueryHelp;
...@@ -190,11 +191,33 @@ public class OuterReportController { ...@@ -190,11 +191,33 @@ public class OuterReportController {
Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder(); Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder();
for (LiteOrder order : liteOrders) { for (LiteOrder order : liteOrders) {
if (order.isTaskFinished() || order.isOutTails()) { if (order.isTaskFinished() || order.isOutTails()) {
BetweenData<Date> startDate = queryCondition.getStartDate();
if (startDate != null && startDate.getFrom() != null) {
if (order.getStartDate() == null || order.getStartDate().before(startDate.getFrom())) {
continue;
}
}
if (startDate != null && startDate.getTo() != null) {
if (order.getStartDate() == null || order.getStartDate().after(startDate.getTo())) {
continue;
}
}
BetweenData<Date> finishDate = queryCondition.getFinishDate();
if (finishDate != null && finishDate.getFrom() != null) {
if (order.getFinishDate() == null || order.getFinishDate().before(finishDate.getFrom())) {
continue;
}
}
if (finishDate != null && finishDate.getTo() != null) {
if (order.getFinishDate() == null || order.getFinishDate().after(finishDate.getTo())) {
continue;
}
}
orderList.add(order.getOrderNo()); orderList.add(order.getOrderNo());
} }
} }
if (orderList == null || orderList.isEmpty()) { if (orderList == null || orderList.isEmpty()) {
return new PageData<>(); return new PageData<>(new ArrayList<>(), 0);
} }
Query query = new Query(); Query query = new Query();
String pn = queryCondition.getPn(); String pn = queryCondition.getPn();
...@@ -216,7 +239,18 @@ public class OuterReportController { ...@@ -216,7 +239,18 @@ public class OuterReportController {
criteria.andOperator(Criteria.where("warehouse").is(warehouseCode)); criteria.andOperator(Criteria.where("warehouse").is(warehouseCode));
} }
query.addCriteria(criteria); query.addCriteria(criteria);
return liteOrderItemManager.findByPage(query, pageable); PageData<LiteOrderItem> pageData = liteOrderItemManager.findByPage(query, pageable);
if (pageData.getContent() != null && !pageData.getContent().isEmpty()) {
for (LiteOrderItem orderItem : pageData.getContent()) {
LiteOrder liteOrder = liteOrderCache.getLiteOrder(orderItem.getOrderNo());
if (liteOrder != null) {
orderItem.setStartDate(liteOrder.getStartDate());
orderItem.setEndDate(liteOrder.getEndDate());
orderItem.setFinishDate(liteOrder.getFinishDate());
}
}
}
return pageData;
} }
@ApiOperation("缺料导出") @ApiOperation("缺料导出")
...@@ -227,6 +261,28 @@ public class OuterReportController { ...@@ -227,6 +261,28 @@ public class OuterReportController {
Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder(); Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder();
for (LiteOrder order : liteOrders) { for (LiteOrder order : liteOrders) {
if (order.isTaskFinished() || order.isOutTails()) { if (order.isTaskFinished() || order.isOutTails()) {
BetweenData<Date> startDate = queryCondition.getStartDate();
if (startDate != null && startDate.getFrom() != null) {
if (order.getStartDate() == null || order.getStartDate().before(startDate.getFrom())) {
continue;
}
}
if (startDate != null && startDate.getTo() != null) {
if (order.getStartDate() == null || order.getStartDate().after(startDate.getTo())) {
continue;
}
}
BetweenData<Date> finishDate = queryCondition.getFinishDate();
if (finishDate != null && finishDate.getFrom() != null) {
if (order.getFinishDate() == null || order.getFinishDate().before(finishDate.getFrom())) {
continue;
}
}
if (finishDate != null && finishDate.getTo() != null) {
if (order.getFinishDate() == null || order.getFinishDate().after(finishDate.getTo())) {
continue;
}
}
orderList.add(order.getOrderNo()); orderList.add(order.getOrderNo());
} }
} }
...@@ -273,8 +329,9 @@ public class OuterReportController { ...@@ -273,8 +329,9 @@ public class OuterReportController {
headerList.add(Arrays.asList("制造商")); headerList.add(Arrays.asList("制造商"));
headerList.add(Arrays.asList("缺料数量")); headerList.add(Arrays.asList("缺料数量"));
headerList.add(Arrays.asList("缺料卷数")); headerList.add(Arrays.asList("缺料卷数"));
headerList.add(Arrays.asList("创建日期")); headerList.add(Arrays.asList("计算开始时间"));
headerList.add(Arrays.asList("更新日期")); headerList.add(Arrays.asList("计算结束时间"));
headerList.add(Arrays.asList("工单完成时间"));
return headerList; return headerList;
} }
...@@ -282,6 +339,18 @@ public class OuterReportController { ...@@ -282,6 +339,18 @@ public class OuterReportController {
public List<List<Object>> getPageData(Query query, Pageable pageable) { public List<List<Object>> getPageData(Query query, Pageable pageable) {
List<List<Object>> resultList = new ArrayList<>(); List<List<Object>> resultList = new ArrayList<>();
List<LiteOrderItem> dtos = liteOrderItemManager.findByQuery(query, pageable); List<LiteOrderItem> dtos = liteOrderItemManager.findByQuery(query, pageable);
if (dtos != null && !dtos.isEmpty()) {
for (LiteOrderItem orderItem : dtos) {
LiteOrder liteOrder = liteOrderCache.getLiteOrder(orderItem.getOrderNo());
if (liteOrder != null) {
orderItem.setStartDate(liteOrder.getStartDate());
orderItem.setEndDate(liteOrder.getEndDate());
orderItem.setFinishDate(liteOrder.getFinishDate());
}
}
}
if (dtos != null && !dtos.isEmpty()) { if (dtos != null && !dtos.isEmpty()) {
for (LiteOrderItem orderItem : dtos) { for (LiteOrderItem orderItem : dtos) {
List<Object> rowList = new ArrayList<>(); List<Object> rowList = new ArrayList<>();
...@@ -300,8 +369,9 @@ public class OuterReportController { ...@@ -300,8 +369,9 @@ public class OuterReportController {
rowList.add(getData(orderItem.getBrand())); rowList.add(getData(orderItem.getBrand()));
rowList.add(getData(orderItem.getLackNum())); rowList.add(getData(orderItem.getLackNum()));
rowList.add(getData(orderItem.getLackReel())); rowList.add(getData(orderItem.getLackReel()));
rowList.add(getData(orderItem.getCreateAt())); rowList.add(getData(orderItem.getStartDate()));
rowList.add(getData(orderItem.getUpdateAt())); rowList.add(getData(orderItem.getEndDate()));
rowList.add(getData(orderItem.getFinishDate()));
resultList.add(rowList); resultList.add(rowList);
} }
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!