diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/EquipmentCardTaskPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/EquipmentCardTaskPlugin.java index 421e1fe..aad0bf9 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/EquipmentCardTaskPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/task/EquipmentCardTaskPlugin.java @@ -142,22 +142,23 @@ public class EquipmentCardTaskPlugin extends AbstractTask { } DynamicObject eceq_equipment = BusinessDataServiceHelper.loadSingle("eceq_equipinfo", new QFilter[]{new QFilter("number", QCP.equals, number)}); if (eceq_equipment != null) { -// SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM"); //设置格式 -// String ym = sd.format(date); + SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM"); //设置格式 + String ym = sd.format(date); DynamicObjectCollection entrys = eceq_equipment.getDynamicObjectCollection("zcgj_entryentity"); -// QFilter qf = new QFilter("realcard.number", QCP.equals, number); -// if (entrys.size() > 0) {//若分录行数大于0 则取上月的 -// qf.and(new QFilter("billno", QCP.in, ym)); -// for (int i = 0; i < entrys.size(); i++) { -// DynamicObject entry = entrys.get(i); -// String zcgjDebillno = entry.getString("zcgj_debillno"); -// entrys.removeIf(record -> isLastMonth(zcgjDebillno));//若属于上个月那就删除重新塞入 -// } -// } + QFilter qf = new QFilter("realcard.number", QCP.equals, number); + if (entrys.size() > 0) {//若分录行数大于0 则取上月的 + qf.and(new QFilter("billno", QCP.in, ym)); + for (int i = 0; i < entrys.size(); i++) { + DynamicObject entry = entrys.get(i); + String zcgjDebillno = entry.getString("zcgj_debillno"); + entrys.removeIf(record -> isLastMonth(zcgjDebillno));//若属于上个月那就删除重新塞入 + } + } // DynamicObjectCollection depresplitdetails = QueryServiceHelper.query("fa_depresplitdetail", "billno,period,splitdept,assentry.costcentrer,assentry.splitamount", new QFilter[]{qf}); // DynamicObject[] depresplitdetails = BusinessDataServiceHelper.load("fa_depresplitdetail", "billno,period,splitdept,assentry.costcentrer,assentry.splitamount", new QFilter[]{qf}); - DataSet rows = QueryServiceHelper.queryDataSet(this.getClass().getName(), "fa_depresplitdetail", "id,billno,period,splitdept,assentry,assentry.costcentrer,assentry.splitamount", qFilter.toArray(), "period.number DESC", 1); + DataSet rows = QueryServiceHelper.queryDataSet(this.getClass().getName(), "fa_depresplitdetail", "id,billno,period,splitdept,assentry,assentry.costcentrer,assentry.splitamount", + new QFilter[]{new QFilter("realcard.number", QCP.equals, number)}, "period.number DESC"); DynamicObjectCollection depresplitdetails = ORM.create().toPlainDynamicObjectCollection(rows.copy()); // // 增强版比较器(自动适配多种日期格式) // for (int i = 0; i < depresplitdetails.size(); i++) {