| 
					
				 | 
			
			
				@@ -1,10 +1,12 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package nckd.jimin.jyyy.fi.plugin.form; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.bill.AbstractBillPlugIn; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import kd.bos.bill.BillShowParameter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.dataentity.entity.DynamicObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.dataentity.entity.DynamicObjectCollection; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.entity.datamodel.events.BizDataEventArgs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.entity.property.BasedataProp; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import kd.bos.ext.fi.plugin.ArApConvert.util.EmptyUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.form.field.BasedataEdit; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.form.field.events.BeforeF7SelectEvent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.form.field.events.BeforeF7SelectListener; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -13,6 +15,8 @@ import kd.bos.list.ListShowParameter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.orm.query.QCP; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.orm.query.QFilter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import kd.bos.servicehelper.BusinessDataServiceHelper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import kd.bos.util.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import nckd.base.helper.CommonHelperUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.Arrays; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.EventObject; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -42,12 +46,15 @@ public class PublicReimburseBillFormPlugin extends AbstractBillPlugIn implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String property = evt.getProperty().getName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String entityId = ((BasedataProp) evt.getProperty()).getBaseEntityId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         int curRowIndex = evt.getRow(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if ("expenseitem".equals(property) || "nckd_expenseitem".equals(property)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if("expenseitem".equals(property) || "nckd_expenseitem".equals(property)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ListShowParameter showParameter = (ListShowParameter) evt.getFormShowParameter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ListFilterParameter filterParam = showParameter.getListFilterParameter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             List<QFilter> qFilters = filterParam.getQFilters(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             Map<String, Object> customParams = this.getView().getFormShowParameter().getCustomParams(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (customParams.get("nckd_viewTypeFilter") != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(customParams.get("nckd_viewTypeFilter") != null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 QFilter viewTypeFilter = QFilter.fromSerializedString(customParams.get("nckd_viewTypeFilter").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 qFilters.add(viewTypeFilter); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -56,7 +63,9 @@ public class PublicReimburseBillFormPlugin extends AbstractBillPlugIn implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 List<Long> idList = (List)collection.stream().mapToLong((x) -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return x.getLong("fbasedataid_id"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }).boxed().collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 QFilter viewTypeFilter = new QFilter("nckd_payviewtype.id", QCP.in, idList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 qFilters.add(viewTypeFilter); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -67,11 +76,25 @@ public class PublicReimburseBillFormPlugin extends AbstractBillPlugIn implements 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         super.afterCreateNewData(e); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Map<String, Object> customParams = this.getView().getFormShowParameter().getCustomParams(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        BillShowParameter parameter = new BillShowParameter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String formId = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(EmptyUtils.isNotEmpty(customParams.get("formId"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            formId =customParams.get("formId").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            parameter.setFormId(formId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(StringUtils.isNotEmpty(formId)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.getModel().setValue("nckd_pageid", formId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(customParams.get("viewType") != null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             String[] typeStrings = customParams.get("viewType").toString().split(","); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             QFilter qFilter = new QFilter("number", QCP.in, typeStrings); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             DynamicObject[] viewTypeCols = BusinessDataServiceHelper.load("nckd_payviewtype", "id, masterid,number, name", qFilter.toArray()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(viewTypeCols != null && viewTypeCols.length > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //页面类型赋值 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.getModel().setValue("nckd_payviewtype", viewTypeCols[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 List<Long> idList = Arrays.stream(viewTypeCols) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         .map(type ->  type.getLong("id")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         .collect(Collectors.toList()); 
			 |