|  | @@ -1,6 +1,7 @@
 | 
	
		
			
				|  |  |  package fi.em.formPlugin;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import kd.bos.bill.AbstractBillPlugIn;
 | 
	
		
			
				|  |  | +import kd.bos.context.RequestContext;
 | 
	
		
			
				|  |  |  import kd.bos.dataentity.entity.DynamicObject;
 | 
	
		
			
				|  |  |  import kd.bos.dataentity.entity.DynamicObjectCollection;
 | 
	
		
			
				|  |  |  import kd.bos.form.field.BasedataEdit;
 | 
	
	
		
			
				|  | @@ -9,6 +10,8 @@ import kd.bos.form.field.events.BeforeF7SelectListener;
 | 
	
		
			
				|  |  |  import kd.bos.list.ListShowParameter;
 | 
	
		
			
				|  |  |  import kd.bos.orm.query.QCP;
 | 
	
		
			
				|  |  |  import kd.bos.orm.query.QFilter;
 | 
	
		
			
				|  |  | +import kd.bos.permission.api.HasPermOrgResult;
 | 
	
		
			
				|  |  | +import kd.bos.servicehelper.user.UserServiceHelper;
 | 
	
		
			
				|  |  |  import kd.sdk.plugin.Plugin;
 | 
	
		
			
				|  |  |  import org.apache.commons.lang.StringUtils;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -22,7 +25,9 @@ public class BusinessPdF7FormPlugin extends AbstractBillPlugIn implements Plugin
 | 
	
		
			
				|  |  |          super.registerListener(e);
 | 
	
		
			
				|  |  |          // 侦听基础资料字段的事件
 | 
	
		
			
				|  |  |          BasedataEdit fieldEdit = this.getView().getControl("nckd_basedatafield18");
 | 
	
		
			
				|  |  | +        BasedataEdit fieldEdit1 = this.getView().getControl("nckd_orgfield1");
 | 
	
		
			
				|  |  |          fieldEdit.addBeforeF7SelectListener(this);
 | 
	
		
			
				|  |  | +        fieldEdit1.addBeforeF7SelectListener(this);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
	
		
			
				|  | @@ -45,6 +50,17 @@ public class BusinessPdF7FormPlugin extends AbstractBillPlugIn implements Plugin
 | 
	
		
			
				|  |  |                  showParameter.setShowApproved(false);
 | 
	
		
			
				|  |  |                  showParameter.getListFilterParameter().setFilter(qFilter);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | +        } else if (StringUtils.equals(fieldKey, "nckd_orgfield1")) {
 | 
	
		
			
				|  |  | +            long lUserId = Long.parseLong(RequestContext.get().getUserId());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            HasPermOrgResult hasPermOrgResult = UserServiceHelper.getUserChangeAbleOrg(lUserId, true);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            List<Long> getHasPermOrgs = hasPermOrgResult.getHasPermOrgs();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            // 表过滤条件
 | 
	
		
			
				|  |  | +            QFilter qFilter = new QFilter("id", QCP.in, getHasPermOrgs);
 | 
	
		
			
				|  |  | +            ListShowParameter showParameter = (ListShowParameter)beforeF7SelectEvent.getFormShowParameter();
 | 
	
		
			
				|  |  | +            showParameter.getListFilterParameter().setFilter(qFilter);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  }
 |