diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EntCostSplitBillPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EntCostSplitBillPlugin.java index b0082a5..ee2f97c 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EntCostSplitBillPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/EntCostSplitBillPlugin.java @@ -50,6 +50,7 @@ public class EntCostSplitBillPlugin extends AbstractBillPlugIn { if (entryCollection.size() > 0) { entryCollection.clear(); } + QFilter filter = new QFilter("zcgj_org", QCP.equals, org1.getPkValue());//核算组织 filter.and(new QFilter("zcgj_period", QCP.equals, period1.getPkValue()));//期间 // filter.and(new QFilter("zcgj_isnew", QCP.equals, true));//是否最新 @@ -67,18 +68,31 @@ public class EntCostSplitBillPlugin extends AbstractBillPlugIn { (debitLocal instanceof String && ((String) debitLocal).equals("0"))) { continue; } + QFilter[] qFilter = new QFilter[]{new QFilter("id", QCP.equals, rptAssistBalanceGx.get("zcgj_account"))};//科目ID DynamicObject bd_accountview = BusinessDataServiceHelper.loadSingle("bd_accountview", "id,number,name", qFilter);//"会计科目" if (bd_accountview == null) { continue; } + + QFilter filter3 = new QFilter("zcgj_companyblentry.zcgj_org", QCP.equals, org1.getPkValue());//组织 + DynamicObject zcgj_companybelong = QueryServiceHelper.queryOne("zcgj_companybelong", "id", + new QFilter[]{filter3});//"公司归属区域" + Long id = 0L; + if (zcgj_companybelong != null) { + id = (Long) zcgj_companybelong.get("id"); + } + QFilter filter1 = new QFilter("zcgj_acccostentry.zcgj_accountnumber", QCP.equals, bd_accountview.getString("number"));//科目编码 + filter1.and(new QFilter("zcgj_belongcompany", QCP.equals, id)); DynamicObject zcgj_accountcost = QueryServiceHelper.queryOne("zcgj_accountcost", "id,zcgj_acccostentry.zcgj_costtype,zcgj_acccostentry.zcgj_sectype", new QFilter[]{filter1});//"会计科目与成本项目" + QFilter[] qFilters = new QFilter[]{new QFilter("name", QCP.equals, rptAssistBalanceGx.get("zcgj_processname"))};//工序名称 DynamicObject ec_ecbd_pro_cbs = BusinessDataServiceHelper.loadSingle("ec_ecbd_pro_cbs", "id", qFilters);//"项目工序" + QFilter filter2 = new QFilter("fiaccountorg", QCP.equals, org1.getPkValue());//财务记账组织 filter2.and(new QFilter("billstatus", QCP.equals, "C"));//单据状态 DynamicObject[] ec_projects = BusinessDataServiceHelper.load("ec_project", "id,zcgj_init", new QFilter[]{filter2});// "项目" @@ -129,17 +143,21 @@ public class EntCostSplitBillPlugin extends AbstractBillPlugIn { for (DynamicObject ec_project : ec_projects) { boolean zcgj_init = ec_project.getBoolean("zcgj_init");//默认项目 if (zcgj_init) { + DynamicObject ec_project_f7 = BusinessDataServiceHelper.loadSingle("ec_project_f7", "id", - new QFilter[]{new QFilter("id", QCP.equals, ec_project.getPkValue())});//项目 - newEntry.set("project", ec_project_f7);//"项目" + new QFilter[]{new QFilter("id", QCP.equals, ec_project.getPkValue())});//"项目" + + newEntry.set("project", ec_project_f7);//项目 newEntrySubEntryEntity.set("zcgj_project", ec_project_f7);//项目 break; } } Object project = newEntry.get("project"); if (project == null) { + DynamicObject ec_project_f7 = BusinessDataServiceHelper.loadSingle("ec_project_f7", "id", - new QFilter[]{new QFilter("id", QCP.equals, ec_projects[0].getPkValue())});//项目 + new QFilter[]{new QFilter("id", QCP.equals, ec_projects[0].getPkValue())});//"项目" + newEntry.set("project", ec_project_f7);//项目 newEntrySubEntryEntity.set("zcgj_project", ec_project_f7);//项目 }