Commit b5f3ea4a 张少辉

1.缺料报表优化

1 个父辈 9d89ae24
......@@ -409,6 +409,22 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
private String mg;
/**
* 工单开始时间
*/
private Date startDate;
/**
* 工单结束时间
*/
private Date endDate;
/**
* 工单完成时间
*/
private Date finishDate;
public void setOutReelList(String reel) {
if (outReelList == null){
outReelList = new ArrayList<>();
......
......@@ -110,6 +110,12 @@ public class ReportQueryCondition {
//过期状态
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 size;
......
......@@ -3,6 +3,7 @@ package com.neotel.smfcore.custom.lizhen.report.outer;
import cn.hutool.core.date.DateUtil;
import com.google.common.collect.Lists;
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.utils.FileUtil;
import com.neotel.smfcore.common.utils.QueryHelp;
......@@ -190,11 +191,33 @@ public class OuterReportController {
Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder();
for (LiteOrder order : liteOrders) {
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());
}
}
if (orderList == null || orderList.isEmpty()) {
return new PageData<>();
return new PageData<>(new ArrayList<>(), 0);
}
Query query = new Query();
String pn = queryCondition.getPn();
......@@ -216,7 +239,18 @@ public class OuterReportController {
criteria.andOperator(Criteria.where("warehouse").is(warehouseCode));
}
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("缺料导出")
......@@ -227,6 +261,28 @@ public class OuterReportController {
Collection<LiteOrder> liteOrders = liteOrderCache.getAllLiteOrder();
for (LiteOrder order : liteOrders) {
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());
}
}
......@@ -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("工单完成时间"));
return headerList;
}
......@@ -282,6 +339,18 @@ public class OuterReportController {
public List<List<Object>> getPageData(Query query, Pageable pageable) {
List<List<Object>> resultList = new ArrayList<>();
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()) {
for (LiteOrderItem orderItem : dtos) {
List<Object> rowList = new ArrayList<>();
......@@ -300,8 +369,9 @@ public class OuterReportController {
rowList.add(getData(orderItem.getBrand()));
rowList.add(getData(orderItem.getLackNum()));
rowList.add(getData(orderItem.getLackReel()));
rowList.add(getData(orderItem.getCreateAt()));
rowList.add(getData(orderItem.getUpdateAt()));
rowList.add(getData(orderItem.getStartDate()));
rowList.add(getData(orderItem.getEndDate()));
rowList.add(getData(orderItem.getFinishDate()));
resultList.add(rowList);
}
}
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!