|
@@ -0,0 +1,64 @@
|
|
|
|
|
+package nckd.xtpoc.fi.app.plugin.form;
|
|
|
|
|
+
|
|
|
|
|
+import kd.bos.bill.AbstractBillPlugIn;
|
|
|
|
|
+import kd.bos.dataentity.entity.DynamicObject;
|
|
|
|
|
+import kd.bos.dataentity.entity.DynamicObjectCollection;
|
|
|
|
|
+import kd.bos.entity.datamodel.events.BizDataEventArgs;
|
|
|
|
|
+import kd.bos.entity.datamodel.events.PropertyChangedArgs;
|
|
|
|
|
+import java.util.EventObject;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 费用报销单:nckd_er_dailyreimburs_ext
|
|
|
|
|
+ * @author wanghaiwu_kd
|
|
|
|
|
+ * @date 2025/11/09
|
|
|
|
|
+ */
|
|
|
|
|
+public class DailyReimburseCusEditPlugin extends AbstractBillPlugIn {
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void registerListener(EventObject e) {
|
|
|
|
|
+ super.registerListener(e);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void createNewData(BizDataEventArgs e) {
|
|
|
|
|
+ super.createNewData(e);
|
|
|
|
|
+
|
|
|
|
|
+ setFeildVisibleByExpenseItem();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void afterBindData(EventObject e) {
|
|
|
|
|
+ super.afterBindData(e);
|
|
|
|
|
+
|
|
|
|
|
+ setFeildVisibleByExpenseItem();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void propertyChanged(PropertyChangedArgs e) {
|
|
|
|
|
+ super.propertyChanged(e);
|
|
|
|
|
+
|
|
|
|
|
+ String propertyName = e.getProperty().getName();
|
|
|
|
|
+
|
|
|
|
|
+ if("expenseitem".equals(propertyName)){
|
|
|
|
|
+ setFeildVisibleByExpenseItem();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 费用明细分录,根据【费用项目】控制【图书分类】字段的显示
|
|
|
|
|
+ * 费用项目 = FY004.08,显示【图书分类】字段,而且必录
|
|
|
|
|
+ */
|
|
|
|
|
+ private void setFeildVisibleByExpenseItem(){
|
|
|
|
|
+ DynamicObject dataEntity = getModel().getDataEntity(true);
|
|
|
|
|
+ DynamicObjectCollection expenseEntryCols = dataEntity.getDynamicObjectCollection("expenseentryentity");
|
|
|
|
|
+ boolean isShowBookClass = false;
|
|
|
|
|
+ for(DynamicObject expenseEntry : expenseEntryCols){
|
|
|
|
|
+ DynamicObject enpenseItem = expenseEntry.getDynamicObject("expenseitem");
|
|
|
|
|
+ if( enpenseItem!= null && "FY004.08".equals(enpenseItem.getString("number"))) {
|
|
|
|
|
+ isShowBookClass = true;
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ this.getView().setVisible(isShowBookClass, "nckd_bookclass");
|
|
|
|
|
+ }
|
|
|
|
|
+}
|