diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java index 04fdbab..48e7431 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/MaterialInbPurchaseApplyPlugin.java @@ -50,6 +50,7 @@ import java.util.*; * 9:入库单明细-含税金额和入库含税单价值改变逻辑 * 10:采购申请分录-采购申请点击跳转逻辑 * 11:冲销预付为否清空冲销分录逻辑 + * 12:进项发票分录-运费发票勾选逻辑 */ public class MaterialInbPurchaseApplyPlugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener, HyperLinkClickListener { @Override @@ -308,6 +309,63 @@ public class MaterialInbPurchaseApplyPlugin extends AbstractBillPlugIn implement zcgj_prepayentry.clear(); this.getView().updateView("zcgj_prepayentry");//刷新分录 } + } else if ("zcgj_invoice".equals(key)) { + //发票号码 + DynamicObject zcgj_yssupplier = (DynamicObject) this.getModel().getValue("zcgj_yssupplier");//运输单位 + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + Object newValue = changeData.getNewValue(); + if (newValue != null && zcgj_yssupplier != null) { + DynamicObject invoice = (DynamicObject) newValue; + int rowIndex = changeData.getRowIndex(); + DynamicObject seller = invoice.getDynamicObject("seller");//发票号码-销售方 + if (seller != null) { + if (seller.getString("number").equals(zcgj_yssupplier.getString("number"))) { + this.getModel().setValue("zcgj_freight_invoice", true, rowIndex);//运费发票 + } else { + this.getModel().setValue("zcgj_freight_invoice", false, rowIndex);//运费发票 + } + } else { + this.getModel().setValue("zcgj_freight_invoice", false, rowIndex);//运费发票 + } + } else { + this.getModel().setValue("zcgj_freight_invoice", false);//运费发票 + } + } else if ("zcgj_yssupplier".equals(key)) { + //运输单位 + ChangeData[] changeSet = e.getChangeSet(); + ChangeData changeData = changeSet[0]; + Object newValue = changeData.getNewValue(); + DynamicObjectCollection zcgj_entryentityCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_entryentity");//合同进项发票信息 + if (newValue != null) { + DynamicObject zcgj_yssupplier = (DynamicObject) newValue; + if (zcgj_entryentityCollection.size() > 0) { + for (int i = 0; i < zcgj_entryentityCollection.size(); i++) { + DynamicObject zcgj_entryentity = zcgj_entryentityCollection.get(i); + DynamicObject zcgj_invoice = zcgj_entryentity.getDynamicObject("zcgj_invoice");//发票号码 + if (zcgj_invoice != null) { + DynamicObject seller = zcgj_invoice.getDynamicObject("seller");//发票号码-销售方 + if (seller != null) { + if (seller.getString("number").equals(zcgj_yssupplier.getString("number"))) { + this.getModel().setValue("zcgj_freight_invoice", true, i);//运费发票 + } else { + this.getModel().setValue("zcgj_freight_invoice", false, i);//运费发票 + } + } else { + this.getModel().setValue("zcgj_freight_invoice", false, i);//运费发票 + } + } else { + this.getModel().setValue("zcgj_freight_invoice", false, i);//运费发票 + } + } + } + } else { + if (zcgj_entryentityCollection.size() > 0) { + for (int i = 0; i < zcgj_entryentityCollection.size(); i++) { + this.getModel().setValue("zcgj_freight_invoice", false, i);//运费发票 + } + } + } } }