添加特殊员工住宿逻辑-龚宇杰
This commit is contained in:
		
							parent
							
								
									402ba55307
								
							
						
					
					
						commit
						a53916fda1
					
				| 
						 | 
				
			
			@ -8,6 +8,8 @@ import kd.bos.entity.datamodel.IDataModel;
 | 
			
		|||
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
 | 
			
		||||
import kd.bos.form.events.BeforeDoOperationEventArgs;
 | 
			
		||||
import kd.bos.form.operate.FormOperate;
 | 
			
		||||
import kd.bos.orm.query.QCP;
 | 
			
		||||
import kd.bos.orm.query.QFilter;
 | 
			
		||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
 | 
			
		||||
import kd.fi.er.business.tripstd.context.StdPreCalContext;
 | 
			
		||||
import kd.fi.er.business.tripstd.model.TripStandardDetail;
 | 
			
		||||
| 
						 | 
				
			
			@ -113,7 +115,8 @@ public class TripPersonCohabitPlugin extends AbstractBillPlugIn implements Plugi
 | 
			
		|||
                    if (cohabitPersons.containsKey(travelerI.getLong("id"))) continue;
 | 
			
		||||
 | 
			
		||||
                    boolean isCohabit = false;//是否同住
 | 
			
		||||
                    for (int j = i + 1; j < travelers.size(); j++) {
 | 
			
		||||
                    boolean isSpecialStaff = isSpecialStaff(travelerI);//是否为特殊员工
 | 
			
		||||
                    for (int j = i + 1; j < travelers.size() && !isSpecialStaff; j++) {
 | 
			
		||||
                        DynamicObject travelerJ = travelers.get(j).getDynamicObject("fbasedataid");
 | 
			
		||||
                        travelerI = BusinessDataServiceHelper.loadSingle(travelerI.getPkValue(), "bos_user");
 | 
			
		||||
                        travelerJ = BusinessDataServiceHelper.loadSingle(travelerJ.getPkValue(), "bos_user");
 | 
			
		||||
| 
						 | 
				
			
			@ -215,4 +218,24 @@ public class TripPersonCohabitPlugin extends AbstractBillPlugIn implements Plugi
 | 
			
		|||
            stdDetail.append("旺季¥").append(highStd).append("/天");
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 判断是否为特殊员工
 | 
			
		||||
     *
 | 
			
		||||
     * @param staff 员工
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    private boolean isSpecialStaff(DynamicObject staff) {
 | 
			
		||||
        QFilter statusQF = new QFilter("status", QCP.equals, "C");
 | 
			
		||||
        QFilter enableQF = new QFilter("enable", QCP.equals, "1");
 | 
			
		||||
        QFilter staffQF = new QFilter("zf47_staff.id", QCP.equals, staff.getPkValue());
 | 
			
		||||
 | 
			
		||||
        DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("zf47_acc_special_staff", new QFilter[]{statusQF, enableQF, staffQF});
 | 
			
		||||
        if (dynamicObject != null) {
 | 
			
		||||
            String jobLevel = dynamicObject.getString("zf47_job_level");
 | 
			
		||||
            return !"3".equals(jobLevel);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue