采购订单列表推送至企业微信
This commit is contained in:
parent
73a9939d0b
commit
5d6dcd6042
@ -863,9 +863,8 @@ public class KingdeeWorkCenterDataController extends BaseController {
|
||||
// 过滤采购申请单数据
|
||||
List<PurchaseRequestExcelDTO> 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",
|
||||
@ -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<PurchaseOrderExcelDTO> filterPurchaseOrders(List<PurchaseOrderExcelDTO> 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()) {
|
||||
|
||||
@ -69,7 +69,11 @@ public class PurchaseRequestExcelDTO {
|
||||
* 生产令号
|
||||
*/
|
||||
@JsonProperty("F_UCHN_Text")
|
||||
private String FUCHNText;
|
||||
private String FUCHNText;/**
|
||||
* 生产令号
|
||||
*/
|
||||
@JsonProperty("FCreatorId.FName")
|
||||
private String FCreatorIdFName;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -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();
|
||||
|
||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user