Files
shz-backend/ruoyi-bussiness/src/main/resources/mapper/app/OutdoorFairJobMapper.xml

63 lines
2.3 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.cms.mapper.OutdoorFairJobMapper">
<sql id="fairJobWhere">
WHERE relation.fair_id = #{fairId}
AND (relation.del_flag IS NULL OR relation.del_flag = '0')
AND job.del_flag = '0'
<if test="companyId != null">
AND relation.company_id = #{companyId}
</if>
<if test="companyName != null and companyName != ''">
AND job.company_name LIKE concat(
'%',
cast(#{companyName, jdbcType=VARCHAR} as varchar),
'%'
)
</if>
<if test="jobTitle != null and jobTitle != ''">
AND job.job_title LIKE concat(
'%',
cast(#{jobTitle, jdbcType=VARCHAR} as varchar),
'%'
)
</if>
<if test="education != null and education != ''">
AND job.education = #{education}
</if>
<if test="experience != null and experience != ''">
AND job.experience = #{experience}
</if>
</sql>
<select id="selectFairJobPage" resultType="com.ruoyi.cms.domain.Job">
SELECT job.*,
relation.review_status AS "fairReviewStatus",
relation.review_remark AS "fairReviewRemark",
to_char(relation.review_time, 'YYYY-MM-DD HH24:MI:SS') AS "fairReviewTime"
FROM shz.cms_outdoor_fair_job relation
INNER JOIN shz.job job ON job.job_id = relation.job_id
<include refid="fairJobWhere"/>
ORDER BY relation.id DESC
LIMIT #{pageSize} OFFSET #{offset}
</select>
<select id="countFairJobs" resultType="java.lang.Long">
SELECT COUNT(*)
FROM shz.cms_outdoor_fair_job relation
INNER JOIN shz.job job ON job.job_id = relation.job_id
<include refid="fairJobWhere"/>
</select>
<select id="countJobsByCompany" resultType="java.util.Map">
SELECT company_id AS "companyId", COUNT(*) AS "jobCount"
FROM shz.cms_outdoor_fair_job
WHERE fair_id = #{fairId}
AND (del_flag IS NULL OR del_flag = '0')
GROUP BY company_id
</select>
</mapper>