diff --git a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/PublicreimbursebillNoContractPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/PublicreimbursebillNoContractPlugin.java index 2b11f8d..b4ac424 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/PublicreimbursebillNoContractPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-fs/src/main/java/zcgj/zcdev/zcdev/fs/plugin/form/PublicreimbursebillNoContractPlugin.java @@ -100,13 +100,9 @@ public class PublicreimbursebillNoContractPlugin extends AbstractBillPlugIn impl this.getModel().setValue("zcgj_ec_project", project[0]); } } - List comboList = new ArrayList<>(); - comboList.add(new ComboItem(new LocaleString("供应商"), "bd_supplier")); - //comboList.add(new ComboItem(new LocaleString("个人"), "er_payeer")); - ComboEdit comboEdit = getView().getControl("payertype"); - comboEdit.setComboItems(comboList); } } + } @Override @@ -156,27 +152,39 @@ public class PublicreimbursebillNoContractPlugin extends AbstractBillPlugIn impl }else if(name.equals("zcgj_ecpaytype")){ ChangeData changeData = e.getChangeSet()[0]; String ecpaytype = (String)changeData.getNewValue(); - DynamicObjectCollection accountentry = this.getModel().getDataEntity().getDynamicObjectCollection("accountentry"); - accountentry.clear(); - DynamicObject dynamicObject = accountentry.addNew(); List comboList = new ArrayList<>(); if("DG".equals(ecpaytype)){ comboList.add(new ComboItem(new LocaleString("供应商"), "bd_supplier")); - dynamicObject.set("payertype","bd_supplier"); }else if("DS".equals(ecpaytype)){ comboList.add(new ComboItem(new LocaleString("个人"), "er_payeer")); - dynamicObject.set("payertype","er_payeer"); } ComboEdit comboEdit = getView().getControl("payertype"); comboEdit.setComboItems(comboList); + DynamicObjectCollection accountentry = this.getModel().getDataEntity().getDynamicObjectCollection("accountentry"); + if(accountentry!=null){ + String type= ""; + if("DG".equals(ecpaytype)){ + type = "bd_supplier"; + }else if("DS".equals(ecpaytype)){ + type = "er_payeer"; + } + for (DynamicObject dynamicObject : accountentry) { + dynamicObject.set("payertype",type); + } + } this.getView().updateView("accountentry"); } } } + protected DynamicObject getCurrency() { + QFilter numberFilter = new QFilter("number", "=", "CNY"); + return BusinessDataServiceHelper.loadSingle("bd_currency", "", new QFilter[]{numberFilter}); + } + @Override public void registerListener(EventObject e) { super.registerListener(e); @@ -188,6 +196,9 @@ public class PublicreimbursebillNoContractPlugin extends AbstractBillPlugIn impl RefBillEdit zcgj_maintenanceack = this.getView().getControl("zcgj_maintenanceack");//设备维修确认单 zcgj_maintenanceack.addBeforeF7SelectListener(this); + BasedataEdit project = this.getView().getControl("zcgj_ec_project");//设备维修确认单 + project.addBeforeF7SelectListener(this); + this.addItemClickListeners("receiveentrytoolbar");//收款信息 增行 } @@ -195,63 +206,77 @@ public class PublicreimbursebillNoContractPlugin extends AbstractBillPlugIn impl @Override public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) { - ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter(); - IDataEntityProperty property = beforeF7SelectEvent.getProperty();//过滤字段信息 - String propertyName = property.getName();//过滤字段标识 + boolean isec=(boolean)this.getModel().getValue("zcgj_isec"); + if(isec){ + ListShowParameter formShowParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter(); + IDataEntityProperty property = beforeF7SelectEvent.getProperty();//过滤字段信息 + String propertyName = property.getName();//过滤字段标识 - if("zcgj_materialinbill".equals(propertyName)){ //费用承担公司过滤 - DynamicObject billpayerid = (DynamicObject)this.getModel().getValue("billpayerid"); - DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany"); - List qFilter = new ArrayList<>(); - if(billpayerid!=null ){ - Long payerid = billpayerid.getLong("id"); - qFilter.add(new QFilter("supplier", QCP.equals, payerid)); - } - if(costcompany!=null){ - Long companyId = costcompany.getLong("id"); - qFilter.add(new QFilter("fiaccountorg", QCP.equals, companyId)); - } - qFilter.add(new QFilter("billstatus", QCP.equals, "C")); - formShowParameter.getListFilterParameter().setQFilters(qFilter); - }else if("zcgj_maintenanceack".equals(propertyName)){ - DynamicObject billpayerid = (DynamicObject)this.getModel().getValue("billpayerid"); - DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany"); - List qFilter = new ArrayList<>(); - if(billpayerid!=null){ - Long payerid = billpayerid.getLong("id"); - qFilter.add(new QFilter("entryentity.zcgj_supplier", QCP.equals, payerid)); + if("zcgj_materialinbill".equals(propertyName)){ //费用承担公司过滤 + DynamicObject billpayerid = (DynamicObject)this.getModel().getValue("billpayerid"); + DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany"); + List qFilter = new ArrayList<>(); + if(billpayerid!=null ){ + Long payerid = billpayerid.getLong("id"); + qFilter.add(new QFilter("supplier", QCP.equals, payerid)); + } + if(costcompany!=null){ + Long companyId = costcompany.getLong("id"); + qFilter.add(new QFilter("fiaccountorg", QCP.equals, companyId)); + } + qFilter.add(new QFilter("billstatus", QCP.equals, "C")); + formShowParameter.getListFilterParameter().setQFilters(qFilter); + }else if("zcgj_maintenanceack".equals(propertyName)){ + DynamicObject billpayerid = (DynamicObject)this.getModel().getValue("billpayerid"); + DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany"); + List qFilter = new ArrayList<>(); + if(billpayerid!=null){ + Long payerid = billpayerid.getLong("id"); + qFilter.add(new QFilter("entryentity.zcgj_supplier", QCP.equals, payerid)); - } - if(costcompany!=null){ - Long companyId = costcompany.getLong("id"); - qFilter.add(new QFilter("zcgj_accountorg", QCP.equals, companyId)); - } + } + if(costcompany!=null){ + Long companyId = costcompany.getLong("id"); + qFilter.add(new QFilter("zcgj_accountorg", QCP.equals, companyId)); + } - qFilter.add(new QFilter("zcgj_maintype", QCP.equals, "10")); - qFilter.add(new QFilter("billstatus", QCP.equals, "C")); - formShowParameter.getListFilterParameter().setQFilters(qFilter); + qFilter.add(new QFilter("zcgj_maintype", QCP.equals, "10")); + qFilter.add(new QFilter("billstatus", QCP.equals, "C")); + formShowParameter.getListFilterParameter().setQFilters(qFilter); + }else if("zcgj_ec_project".equals(propertyName)){ + DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany"); + List qFilter = new ArrayList<>(); + if(costcompany!=null){ + Long companyId = costcompany.getLong("id"); + qFilter.add(new QFilter("fiaccountorg", QCP.equals, companyId)); + } + formShowParameter.getListFilterParameter().setQFilters(qFilter); + } } } @Override public void itemClick(ItemClickEvent evt) { super.itemClick(evt); - //付款计划增行 - if (evt.getItemKey().equals("addaccount1")) { - String zcgjEcpaytype = (String) this.getModel().getValue("zcgj_ecpaytype"); - String payertype = ""; - if("DG".equals(zcgjEcpaytype)){ - payertype = "bd_supplier"; - }else if("DS".equals(zcgjEcpaytype)){ - payertype = "er_payeer"; - } - //收款人类型设置默认值 - DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("accountentry"); - if(!dynamicObjectCollection.isEmpty()){ - DynamicObject dynamicObject = dynamicObjectCollection.get(dynamicObjectCollection.size() - 1); - dynamicObject.set("payertype",payertype); - this.getView().updateView("accountentry"); + boolean isec=(boolean)this.getModel().getValue("zcgj_isec"); + if(isec){ + //付款计划增行 + if (evt.getItemKey().equals("addaccount1")) { + String zcgjEcpaytype = (String) this.getModel().getValue("zcgj_ecpaytype"); + String payertype = ""; + if("DG".equals(zcgjEcpaytype)){ + payertype = "bd_supplier"; + }else if("DS".equals(zcgjEcpaytype)){ + payertype = "er_payeer"; + } + //收款人类型设置默认值 + DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("accountentry"); + if(!dynamicObjectCollection.isEmpty()){ + DynamicObject dynamicObject = dynamicObjectCollection.get(dynamicObjectCollection.size() - 1); + dynamicObject.set("payertype",payertype); + this.getView().updateView("accountentry"); + } } } }