报销单费用项目过滤
This commit is contained in:
		
							parent
							
								
									3a6bfaa1f8
								
							
						
					
					
						commit
						82c1c1bf54
					
				| 
						 | 
				
			
			@ -46,6 +46,12 @@ public class ReimbursementAccountTypePlugin  extends AbstractBillPlugIn implemen
 | 
			
		|||
                if(accounttype != null) {
 | 
			
		||||
                    accounttype.addBeforeF7SelectListener(this);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                //仅针对矿山下组织下的逻辑
 | 
			
		||||
                BasedataEdit expenseitem = this.getControl("expenseitem"); //科目分类
 | 
			
		||||
                if(expenseitem != null) {
 | 
			
		||||
                    expenseitem.addBeforeF7SelectListener(this);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -102,6 +108,41 @@ public class ReimbursementAccountTypePlugin  extends AbstractBillPlugIn implemen
 | 
			
		|||
 | 
			
		||||
                    }
 | 
			
		||||
 | 
			
		||||
                }else if("expenseitem".equals(name)){//费用项目增加过滤
 | 
			
		||||
                    int row = beforeF7SelectEvent.getRow();
 | 
			
		||||
                    DynamicObjectCollection dynamicObjectCollection = this.getModel().getDataEntity(true).getDynamicObjectCollection("expenseentryentity");
 | 
			
		||||
                    if(dynamicObjectCollection!=null){
 | 
			
		||||
                        DynamicObject expenseitem = dynamicObjectCollection.get(row).getDynamicObject("expenseitem");
 | 
			
		||||
                        if(expenseitem!=null){
 | 
			
		||||
                           // QFilter filter = new QFilter("zcgj_entryentity.zcgj_fee", QCP.equals,expenseitem.getLong("id"));
 | 
			
		||||
                            String typeKey = "20"; //差旅报销单
 | 
			
		||||
                            if("er_dailyreimbursebill".equals(billFormId)){ //费用报销单
 | 
			
		||||
                                typeKey = "30"; //差旅报销单
 | 
			
		||||
                            }else if("er_publicreimbursebill".equals(billFormId)){ //对公报销单
 | 
			
		||||
                                typeKey = "40"; //差旅报销单
 | 
			
		||||
                            }else if("er_prepaybill".equals(billFormId)){ //预付单
 | 
			
		||||
                                typeKey = "50"; //差旅报销单
 | 
			
		||||
                            }
 | 
			
		||||
                            QFilter biztypefilter = new QFilter("zcgj_biztype",QCP.equals,typeKey); //过滤业务单据为支出财务确认单
 | 
			
		||||
                            //分录过滤
 | 
			
		||||
                            //使用BusinessDataServiceHelper.load查出来的数据,返回的是符合条件的整单,即使只有分录中的某一行符合条件,也会返回整张单包括其他分录行的数据
 | 
			
		||||
                            //使用 QueryServiceHelper.query查出来的数据只会包含符合条件的分录行,不含其他行数据
 | 
			
		||||
                            DynamicObjectCollection accountfeeEntries = QueryServiceHelper.query("zcgj_accountfee", "zcgj_entryentity.zcgj_accounttype.number," +
 | 
			
		||||
                                    "zcgj_entryentity.zcgj_fee.number", new QFilter[]{biztypefilter});
 | 
			
		||||
                            List<String> numbers = new ArrayList<>();
 | 
			
		||||
                            if(accountfeeEntries!=null){
 | 
			
		||||
                                for (DynamicObject dynamicObject : accountfeeEntries) {
 | 
			
		||||
                                    String zcgjFeeNumber = dynamicObject.getString("zcgj_entryentity.zcgj_fee.number");
 | 
			
		||||
                                    if(zcgjFeeNumber!=null){
 | 
			
		||||
                                        numbers.add(zcgjFeeNumber);
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                            QFilter qFilter = new QFilter("number", QCP.in, numbers);
 | 
			
		||||
                            ListShowParameter showParameter = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter();
 | 
			
		||||
                            showParameter.getListFilterParameter().getQFilters().add(qFilter);
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue