package com.kingdee.eas.hr.perf.handler; import com.kingdee.bos.Context; import com.kingdee.bos.rabbitmq.guava.Lists; import com.kingdee.eas.framework.CoreBaseInfo; import com.kingdee.eas.util.app.DbUtil; import com.kingdee.jdbc.rowset.IRowSet; import com.kingdee.shr.base.syssetting.api.bean.BatchMessageTipsHeader; import com.kingdee.shr.base.syssetting.exception.SHRWebException; import com.kingdee.shr.perfweb.planexecute.handler.EvaresultAuditBillEditHandler; import org.apache.commons.lang3.StringUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.List; /** * @BelongsProject: dataImpExp820 * @BelongsPackage: com.kingdee.eas.hr.perf.handler * @Author: lhbj * @CreateTime: 2025-01-10 19:09 * @Description: TODO * @Version: 1.0 */ public class EvaresultAuditBillEditHandlerEx extends EvaresultAuditBillEditHandler { protected void verifyModel(HttpServletRequest request, HttpServletResponse response, CoreBaseInfo model) throws SHRWebException { } public String beforeAuditEvaResut(Context ctx, List ids) throws SHRWebException { List unIdLIst = Lists.newArrayList(); StringBuilder err = new StringBuilder(); try { StringBuffer sql = new StringBuffer(); sql.append(" select ers.fid,ers.FPNAME,ers.FPNUMBER,pp.FPSTARTDATE,ers.CFOrgLevelEveID,pp.FYEAR,pp.FTIMEPERIOD from "); sql.append(" T_EVA_EvaResultSummary ers "); sql.append(" left join T_EVA_PerfPeriod pp on ers.FPERIODID=pp.fid "); sql.append(" where ers.fid in(''"); for (String id : ids) { sql.append(",'").append(id).append("'"); } sql.append(" ) "); IRowSet rsSql = DbUtil.executeQuery(ctx, sql.toString()); while (rsSql.next()){ String id = rsSql.getString("id"); String FPNAME = rsSql.getString("FPNAME"); String FPNUMBER = rsSql.getString("FPNUMBER"); String orgLevelEveID = rsSql.getString("CFOrgLevelEveID"); if(StringUtils.isBlank(orgLevelEveID)) { err.append("员工:"+FPNAME+"("+FPNUMBER+"),无法获取当前组织绩效考核等级"); unIdLIst.add(id); } } if(!unIdLIst.isEmpty()) { ids.removeAll(unIdLIst); err.append("存在无法获取当前组织绩效考核等级的记录"); } }catch (Exception e){ e.printStackTrace(); } return err.toString(); } }