Compare commits

..

3 Commits

3 changed files with 49 additions and 4 deletions

View File

@ -1,9 +1,15 @@
package zcgj.zcdev.zcdev.pr.plugin.form; package zcgj.zcdev.zcdev.pr.plugin.form;
import kd.bos.bill.AbstractBillPlugIn; import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.bill.BillShowParameter;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.ChangeData;
import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.ShowType;
import kd.bos.form.control.EntryGrid;
import kd.bos.form.events.HyperLinkClickEvent;
import kd.bos.form.events.HyperLinkClickListener;
import kd.bos.form.field.BasedataEdit; import kd.bos.form.field.BasedataEdit;
import kd.bos.form.field.RefBillEdit; import kd.bos.form.field.RefBillEdit;
import kd.bos.form.field.TextEdit; import kd.bos.form.field.TextEdit;
@ -23,8 +29,9 @@ import java.util.EventObject;
* 2结算期间初始化赋值 * 2结算期间初始化赋值
* 3供应商赋值和必录逻辑 * 3供应商赋值和必录逻辑
* 4关联设备维修申请字段过滤 * 4关联设备维修申请字段过滤
* 5:发票号码超链接点击跳转
*/ */
public class MaintenanceConfirmBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener { public class MaintenanceConfirmBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener, HyperLinkClickListener {
@Override @Override
public void registerListener(EventObject e) { public void registerListener(EventObject e) {
super.registerListener(e); super.registerListener(e);
@ -36,6 +43,8 @@ public class MaintenanceConfirmBillPlugin extends AbstractBillPlugIn implements
if (zcgj_maintenance != null) { if (zcgj_maintenance != null) {
zcgj_maintenance.addBeforeF7SelectListener(this); zcgj_maintenance.addBeforeF7SelectListener(this);
} }
EntryGrid control = this.getControl("zcgj_entryentity");
control.addHyperClickListener(this);
} }
public void afterCreateNewData(EventObject e) { public void afterCreateNewData(EventObject e) {
@ -83,6 +92,32 @@ public class MaintenanceConfirmBillPlugin extends AbstractBillPlugIn implements
} }
} }
@Override
public void hyperLinkClick(HyperLinkClickEvent hyperLinkClickEvent) {
String fieldName = hyperLinkClickEvent.getFieldName();
if ("zcgj_invoice".equals(fieldName)) {
//发票号码
EntryGrid entryGrid = getView().getControl("zcgj_entryentity");
int[] selectRows = entryGrid.getSelectRows();
if (selectRows != null && selectRows.length == 1) {
DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_entryentity");
DynamicObject dynamicObject = dynamicObjectCollection.get(selectRows[0]);
DynamicObject zcgjInvoice = dynamicObject.getDynamicObject("zcgj_invoice");
long invoiceId = zcgjInvoice.getLong("id");
if (invoiceId != 0) {
//弹出发票详情
BillShowParameter showParameter = new BillShowParameter();
showParameter.setPkId(invoiceId);
showParameter.setFormId("ec_in_invoice");
showParameter.getOpenStyle().setShowType(ShowType.MainNewTabPage); //打开方式
getView().showForm(showParameter);
}
} else {
this.getView().showTipNotification("请选择一条发票数据。");
}
}
}
@Override @Override
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) { public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
String name = beforeF7SelectEvent.getProperty().getName(); String name = beforeF7SelectEvent.getProperty().getName();

View File

@ -326,7 +326,7 @@ public class MaterialInBillEditPluginExt extends AbstractEcmaBillPlugin implemen
case "matoftaxamount"://材料含税总金额 case "matoftaxamount"://材料含税总金额
this.matoftaxamountChanged((BigDecimal) propValue); this.matoftaxamountChanged((BigDecimal) propValue);
break; break;
case "matamount": case "matamount"://材料总金额
this.matamountChanged((BigDecimal) propValue); this.matamountChanged((BigDecimal) propValue);
break; break;
case "proboq": case "proboq":
@ -811,8 +811,8 @@ public class MaterialInBillEditPluginExt extends AbstractEcmaBillPlugin implemen
private void matamountChanged(BigDecimal propValue) { private void matamountChanged(BigDecimal propValue) {
this.getModel().beginInit(); this.getModel().beginInit();
BigDecimal exchangerate = (BigDecimal) this.getModel().getValue("exchangerate"); BigDecimal exchangerate = (BigDecimal) this.getModel().getValue("exchangerate");//汇率
this.getModel().setValue("stdmateamount", propValue.multiply(exchangerate)); this.getModel().setValue("stdmateamount", propValue.multiply(exchangerate));//材料不含税金额本位币
this.getModel().endInit(); this.getModel().endInit();
this.getView().updateView("stdmateamount"); this.getView().updateView("stdmateamount");
this.summaryTotalAmount(); this.summaryTotalAmount();

View File

@ -192,6 +192,16 @@ public class MaterialInbPurchaseApplyPlugin extends AbstractBillPlugIn implement
this.getView().updateView("transoftaxamount"); this.getView().updateView("transoftaxamount");
this.getView().updateView("totaloftaxamount"); this.getView().updateView("totaloftaxamount");
this.getModel().endInit(); this.getModel().endInit();
} else if ("oftaxamount".equals(key)) {
//入库单明细-含税金额
boolean inputtaxprice = (boolean) this.getModel().getValue("inputtaxprice");//录入含税价
boolean inputtotalprice = (boolean) this.getModel().getValue("inputtotalprice");//录入总价
if (inputtaxprice && inputtotalprice) {
BigDecimal matAmount = (BigDecimal) this.getModel().getValue("matamount");//材料总金额
BigDecimal transAmount = (BigDecimal) this.getModel().getValue("transamount");//总运费
BigDecimal totalAmount = matAmount.add(transAmount);
this.getModel().setValue("totalamount", totalAmount);//入库总金额
}
} }
} }