diff --git a/main/java/shkd/repc/recon/formplugin/ReconPayreqFormPlugin.java b/main/java/shkd/repc/recon/formplugin/ReconPayreqFormPlugin.java index afb2342..6d5d472 100644 --- a/main/java/shkd/repc/recon/formplugin/ReconPayreqFormPlugin.java +++ b/main/java/shkd/repc/recon/formplugin/ReconPayreqFormPlugin.java @@ -137,6 +137,8 @@ public class ReconPayreqFormPlugin extends AbstractFormPlugin implements BeforeF } } + //付款申请根据所属组织携带财务组织 + updateFinanceOrg(); } /** @@ -162,6 +164,40 @@ public class ReconPayreqFormPlugin extends AbstractFormPlugin implements BeforeF } } + //付款申请根据所属组织携带财务组织 + if("usedepart".equals(name)) { + updateFinanceOrg(); + } + } + + private void updateFinanceOrg() { + DynamicObject org = (DynamicObject) this.getModel().getValue("org"); + if (org != null) { + setRenovationFinanceByOrg(org); + } else { + // 组织为空,清空项目 + this.getModel().setValue("qeug_jf", null); + this.getView().updateView("qeug_jf"); + } + } + + private void setRenovationFinanceByOrg(DynamicObject org) { + org = BusinessDataServiceHelper.loadSingle(org.getPkValue(),"bos_org"); + DynamicObject qeug_recon_orgrelation = BusinessDataServiceHelper.loadSingle("qeug_recon_orgrelation", + new QFilter[]{new QFilter("number", QCP.equals, org.getString("number"))}); + if (null != qeug_recon_orgrelation) { + //行政与财务组织对应关系 + qeug_recon_orgrelation = BusinessDataServiceHelper.loadSingle(qeug_recon_orgrelation.getPkValue(),"qeug_recon_orgrelation"); + //甲方 + DynamicObject qeug_recon_developer = BusinessDataServiceHelper.loadSingle("qeug_recon_developer", + new QFilter[]{new QFilter("number", QCP.equals, qeug_recon_orgrelation.getString("qeug_companynumber"))}); + if (null != qeug_recon_developer) { + // 设置项目并更新视图 + this.getModel().setValue("qeug_jf", qeug_recon_developer); + this.getView().updateView("qeug_jf"); + } + } + } @Override