diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/controller/KingdeeWorkCenterDataController.java b/ruoyi-system/src/main/java/com/ruoyi/system/controller/KingdeeWorkCenterDataController.java index a6d6e4d..fc39732 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/controller/KingdeeWorkCenterDataController.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/controller/KingdeeWorkCenterDataController.java @@ -863,12 +863,11 @@ public class KingdeeWorkCenterDataController extends BaseController { // 过滤采购申请单数据 List purchaseRequestList = filterReqPurchaseOrders(allpurchaseRequestList); - msg.append("- 采购订单(已过滤):").append(purchaseOrderList.size()).append("条\n"); - msg.append("- 采购申请:").append(purchaseRequestList.size()).append("条\n"); - msg.append("- 过滤条件:生产令号0259/240605开头,交货日期小于当前时间\n"); + msg.append("- 采购订单:").append(purchaseOrderList.size()).append("条\n"); + msg.append("- 采购申请单:").append(purchaseRequestList.size()).append("条\n"); // 生成Excel文件使用采购模板 - String fileName = String.format("采购订单和申请数据_%s.xlsx", + String fileName = String.format("采购订单和申请数据_%s.xlsx", DateUtil.format(new Date(), "yyyyMMddHHmmss")); String filePath = FileUtils.getTempDirectoryPath() + File.separator + fileName; @@ -879,13 +878,13 @@ public class KingdeeWorkCenterDataController extends BaseController { staticDataMap.put("purchaseRequestCount", purchaseRequestList.size()); List dynamicDataMappingList = new ArrayList<>(); - + // 添加采购订单数据 if (!purchaseOrderList.isEmpty()) { List> orderDataList = convertPurchaseOrderToMapList(purchaseOrderList); dynamicDataMappingList.addAll(DynamicDataMapping.createOneDataList("PurchaseOrderExcelDTO", orderDataList)); } - + // 添加采购申请数据 if (!purchaseRequestList.isEmpty()) { List> requestDataList = convertPurchaseRequestToMapList(purchaseRequestList); @@ -902,7 +901,7 @@ public class KingdeeWorkCenterDataController extends BaseController { wxRobotUtil.sendFileToWeChatGroup(excelFile, robotId); FileUtils.deleteQuietly(excelFile); } - + msg.append("\n详细数据请查看发送的Excel文件!"); wxRobotUtil.sendMsgToWeChatGroup(msg.toString(), robotId, true); // @所有人 @@ -958,58 +957,13 @@ public class KingdeeWorkCenterDataController extends BaseController { map.put("FArrivalDate", item.getFArrivalDate()); map.put("FApplicationDate", item.getFApplicationDate()); map.put("FUCHNText", item.getFUCHNText()); + map.put("FCreatorIdFName", item.getFCreatorIdFName()); mapList.add(map); index++; } return mapList; } - /** - * 过滤采购订单数据 - */ - /* private List filterPurchaseOrders(List allOrders) { - String currentTime = DateUtil.format(new Date(), "yyyy-MM-dd"); - return allOrders.stream() - .filter(order -> { - String productionOrderNo = order.getFUCHNText2(); - String deliveryDate = order.getFDeliveryDate(); - - // 过滤条件1: FUCHNText2 不为空 - if (productionOrderNo == null || productionOrderNo.trim().isEmpty()) { - return false; - } - - // 过滤条件2: 生产令号以NO开头 - if (!productionOrderNo.startsWith("NO")) { - return false; - } - - // 过滤条件3: 生产令号以0259开头或240605开头 - if (!productionOrderNo.startsWith("0259") && !productionOrderNo.startsWith("240605")) { - return false; - } - - // 过滤条件4: 交货日期小于当前时间 - if (deliveryDate != null && !deliveryDate.trim().isEmpty()) { - try { - // 处理日期格式 2024-02-22T00:00:00 - String dateStr = deliveryDate.split("T")[0]; // 提取日期部分 - if (dateStr.compareTo(currentTime) >= 0) { - return false; // 交货日期大于等于当前时间,过滤掉 - } - } catch (Exception e) { - log.warn("解析交货日期失败: {}", deliveryDate, e); - return false; - } - } - - return true; - }) - .collect(java.util.stream.Collectors.toList()); - }*/ - /** - * 过滤采购订单数据 - */ /** * 过滤采购订单数据 @@ -1026,20 +980,6 @@ public class KingdeeWorkCenterDataController extends BaseController { String productionOrderNo = allOrder.getFUCHNText2(); String deliveryDate = allOrder.getFDeliveryDate(); - // 条件1: 生产令号不能为空 - if (productionOrderNo == null || productionOrderNo.trim().isEmpty()) { - log.debug("过滤掉: 生产令号为空"); - continue; - } - - // 条件2: 不能以 NO / GMJ / GSC 开头 - if (productionOrderNo.startsWith("NO") - || productionOrderNo.startsWith("GMJ") - || productionOrderNo.startsWith("GSC")) { - log.debug("过滤掉: 生产令号不符合前缀条件: {}", productionOrderNo); - continue; - } - // 条件3: 交货日期不能为空,并且必须早于今天 if (deliveryDate == null || deliveryDate.trim().isEmpty()) { log.debug("过滤掉: 交货日期为空"); @@ -1086,19 +1026,7 @@ public class KingdeeWorkCenterDataController extends BaseController { String productionOrderNo = allOrder.getFUCHNText(); String deliveryDate = allOrder.getFArrivalDate(); - // 条件1: 生产令号不能为空 - if (productionOrderNo == null || productionOrderNo.trim().isEmpty()) { - log.debug("过滤掉: 生产令号为空"); - continue; - } - // 条件2: 不能以 NO / 0259 / 240605 开头 - if (productionOrderNo.startsWith("NO") - || productionOrderNo.startsWith("0259") - || productionOrderNo.startsWith("240605")) { - log.debug("过滤掉: 生产令号不符合前缀条件: {}", productionOrderNo); - continue; - } // 条件3: 交货日期不能为空,并且必须早于今天 if (deliveryDate == null || deliveryDate.trim().isEmpty()) { diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/PurchaseRequestExcelDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/PurchaseRequestExcelDTO.java index bb966e4..af71639 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/PurchaseRequestExcelDTO.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/PurchaseRequestExcelDTO.java @@ -69,7 +69,11 @@ public class PurchaseRequestExcelDTO { * 生产令号 */ @JsonProperty("F_UCHN_Text") - private String FUCHNText; + private String FUCHNText;/** + * 生产令号 + */ + @JsonProperty("FCreatorId.FName") + private String FCreatorIdFName; } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/runner/JdUtil.java b/ruoyi-system/src/main/java/com/ruoyi/system/runner/JdUtil.java index 035fe56..5f8f345 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/runner/JdUtil.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/runner/JdUtil.java @@ -2583,7 +2583,7 @@ public class JdUtil { // 请求参数,要求为json字符串 JsonObject json = new JsonObject(); json.addProperty("FormId", "PUR_Requisition"); - json.addProperty("FieldKeys", "FBillNo,FBillTypeID,FSuggestPurDate,FSuggestSupplierId.FName,FMaterialId.FNumber,FMaterialName,FPriceUnitId.FName,FReqQty,FArrivalDate,FApplicationDate,F_UCHN_Text"); + json.addProperty("FieldKeys", "FBillNo,FBillTypeID,FSuggestPurDate,FSuggestSupplierId.FName,FMaterialId.FNumber,FMaterialName,FPriceUnitId.FName,FReqQty,FArrivalDate,FApplicationDate,F_UCHN_Text,FCreatorId.FName"); // 创建过滤条件 JsonObject filterObject = new JsonObject(); JsonArray filterString = new JsonArray(); diff --git a/ruoyi-system/src/main/resources/EXCEL模板/采购订单模板1.xlsx b/ruoyi-system/src/main/resources/EXCEL模板/采购订单模板1.xlsx index 7f941c1..49a7727 100644 Binary files a/ruoyi-system/src/main/resources/EXCEL模板/采购订单模板1.xlsx and b/ruoyi-system/src/main/resources/EXCEL模板/采购订单模板1.xlsx differ