采购订单列表推送至企业微信
This commit is contained in:
parent
73a9939d0b
commit
5d6dcd6042
@ -863,9 +863,8 @@ public class KingdeeWorkCenterDataController extends BaseController {
|
|||||||
// 过滤采购申请单数据
|
// 过滤采购申请单数据
|
||||||
List<PurchaseRequestExcelDTO> purchaseRequestList = filterReqPurchaseOrders(allpurchaseRequestList);
|
List<PurchaseRequestExcelDTO> purchaseRequestList = filterReqPurchaseOrders(allpurchaseRequestList);
|
||||||
|
|
||||||
msg.append("- 采购订单(已过滤):").append(purchaseOrderList.size()).append("条\n");
|
msg.append("- 采购订单:").append(purchaseOrderList.size()).append("条\n");
|
||||||
msg.append("- 采购申请:").append(purchaseRequestList.size()).append("条\n");
|
msg.append("- 采购申请单:").append(purchaseRequestList.size()).append("条\n");
|
||||||
msg.append("- 过滤条件:生产令号0259/240605开头,交货日期小于当前时间\n");
|
|
||||||
|
|
||||||
// 生成Excel文件使用采购模板
|
// 生成Excel文件使用采购模板
|
||||||
String fileName = String.format("采购订单和申请数据_%s.xlsx",
|
String fileName = String.format("采购订单和申请数据_%s.xlsx",
|
||||||
@ -958,58 +957,13 @@ public class KingdeeWorkCenterDataController extends BaseController {
|
|||||||
map.put("FArrivalDate", item.getFArrivalDate());
|
map.put("FArrivalDate", item.getFArrivalDate());
|
||||||
map.put("FApplicationDate", item.getFApplicationDate());
|
map.put("FApplicationDate", item.getFApplicationDate());
|
||||||
map.put("FUCHNText", item.getFUCHNText());
|
map.put("FUCHNText", item.getFUCHNText());
|
||||||
|
map.put("FCreatorIdFName", item.getFCreatorIdFName());
|
||||||
mapList.add(map);
|
mapList.add(map);
|
||||||
index++;
|
index++;
|
||||||
}
|
}
|
||||||
return mapList;
|
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 productionOrderNo = allOrder.getFUCHNText2();
|
||||||
String deliveryDate = allOrder.getFDeliveryDate();
|
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: 交货日期不能为空,并且必须早于今天
|
// 条件3: 交货日期不能为空,并且必须早于今天
|
||||||
if (deliveryDate == null || deliveryDate.trim().isEmpty()) {
|
if (deliveryDate == null || deliveryDate.trim().isEmpty()) {
|
||||||
log.debug("过滤掉: 交货日期为空");
|
log.debug("过滤掉: 交货日期为空");
|
||||||
@ -1086,19 +1026,7 @@ public class KingdeeWorkCenterDataController extends BaseController {
|
|||||||
String productionOrderNo = allOrder.getFUCHNText();
|
String productionOrderNo = allOrder.getFUCHNText();
|
||||||
String deliveryDate = allOrder.getFArrivalDate();
|
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: 交货日期不能为空,并且必须早于今天
|
// 条件3: 交货日期不能为空,并且必须早于今天
|
||||||
if (deliveryDate == null || deliveryDate.trim().isEmpty()) {
|
if (deliveryDate == null || deliveryDate.trim().isEmpty()) {
|
||||||
|
|||||||
@ -69,7 +69,11 @@ public class PurchaseRequestExcelDTO {
|
|||||||
* 生产令号
|
* 生产令号
|
||||||
*/
|
*/
|
||||||
@JsonProperty("F_UCHN_Text")
|
@JsonProperty("F_UCHN_Text")
|
||||||
private String FUCHNText;
|
private String FUCHNText;/**
|
||||||
|
* 生产令号
|
||||||
|
*/
|
||||||
|
@JsonProperty("FCreatorId.FName")
|
||||||
|
private String FCreatorIdFName;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2583,7 +2583,7 @@ public class JdUtil {
|
|||||||
// 请求参数,要求为json字符串
|
// 请求参数,要求为json字符串
|
||||||
JsonObject json = new JsonObject();
|
JsonObject json = new JsonObject();
|
||||||
json.addProperty("FormId", "PUR_Requisition");
|
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();
|
JsonObject filterObject = new JsonObject();
|
||||||
JsonArray filterString = new JsonArray();
|
JsonArray filterString = new JsonArray();
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user