查询职员的职位或历史职位

来源:互联网 发布:北大青鸟java学士后 编辑:程序博客网 时间:2024/04/26 22:13

    /**
     * 查询职员的职位或历史职位
     * @author yell
     */
    protected String _getPersonPosition(Context ctx, Object personId)
            throws BOSException {
        StringBuffer sqlSB=new StringBuffer();
        sqlSB.append("select T_ORG_PositionMember.FPositionID as position/n");
        sqlSB.append("from T_ORG_PositionMember left outer join T_BD_Person on T_BD_Person.fid=T_ORG_PositionMember.FPersonID/n");
        sqlSB.append("left outer join T_ORG_Position/n");
        sqlSB.append("where  T_ORG_PositionMember.FIsPrimary=1 and T_ORG_PositionMember.FPersonID='");
        sqlSB.append(personId);
        sqlSB.append("';");
        logger.info("查询职员的职位为:"+sqlSB+"/n");
        IRowSet rowSet = DbUtil.executeQuery(ctx, sqlSB.toString());
        if (rowSet == null || rowSet.size() < 1) {
            sqlSB.delete(0, sqlSB.length());
            sqlSB.delete(0, sqlSB.length());
            sqlSB.append("select fprimarypositionid as position from t_hr_personposition  where fpersonid='");
            sqlSB.append(personId);
            sqlSB.append("' order by fcreatetime desc");
            logger.info("查询职员的历史职位为:"+sqlSB+"/n");
            rowSet = DbUtil.executeQuery(ctx, sqlSB.toString());
            if (rowSet == null || rowSet.size() < 1) {
                return null;
            }
        }
        try {
            rowSet.next();
            return rowSet.getString("position");
        } catch (SQLException e) {
            e.printStackTrace();
            throw new BOSException(e);
        }
    }

原创粉丝点击