feat: 增加跨域招聘会逐场统计明细
This commit is contained in:
@@ -270,6 +270,85 @@
|
||||
), 0) AS "viewCount"
|
||||
</select>
|
||||
|
||||
<select id="selectCrossDomainFairStatistics"
|
||||
resultType="com.ruoyi.cms.domain.rc.CrossDomainStatisticsFairItem">
|
||||
SELECT
|
||||
f.job_fair_id AS "fairId",
|
||||
f.job_fair_title AS "fairTitle",
|
||||
f.job_fair_start_time AS "startTime",
|
||||
COALESCE((
|
||||
SELECT COUNT(DISTINCT company_relation.company_id)
|
||||
FROM public_job_fair_company company_relation
|
||||
WHERE company_relation.job_fair_id = f.job_fair_id
|
||||
AND company_relation.del_flag = '0'
|
||||
AND COALESCE(company_relation.review_status, '1') = '1'
|
||||
), 0) AS "companyCount",
|
||||
COALESCE((
|
||||
SELECT COUNT(DISTINCT fair_job.job_id)
|
||||
FROM public_job_fair_job fair_job
|
||||
INNER JOIN job job_info ON job_info.job_id = fair_job.job_id
|
||||
AND job_info.del_flag = '0'
|
||||
WHERE fair_job.job_fair_id = f.job_fair_id
|
||||
AND fair_job.del_flag = '0'
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM public_job_fair_company company_relation
|
||||
WHERE company_relation.job_fair_id = fair_job.job_fair_id
|
||||
AND company_relation.company_id = fair_job.company_id
|
||||
AND company_relation.del_flag = '0'
|
||||
AND COALESCE(company_relation.review_status, '1') = '1'
|
||||
)
|
||||
), 0) AS "jobCount",
|
||||
COALESCE((
|
||||
SELECT SUM(CASE
|
||||
WHEN job_info.vacancies IS NULL OR job_info.vacancies <![CDATA[ <= ]]> 0 THEN 1
|
||||
ELSE job_info.vacancies
|
||||
END)
|
||||
FROM (
|
||||
SELECT DISTINCT fair_job.job_id
|
||||
FROM public_job_fair_job fair_job
|
||||
WHERE fair_job.job_fair_id = f.job_fair_id
|
||||
AND fair_job.del_flag = '0'
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM public_job_fair_company company_relation
|
||||
WHERE company_relation.job_fair_id = fair_job.job_fair_id
|
||||
AND company_relation.company_id = fair_job.company_id
|
||||
AND company_relation.del_flag = '0'
|
||||
AND COALESCE(company_relation.review_status, '1') = '1'
|
||||
)
|
||||
) fair_job
|
||||
INNER JOIN job job_info ON job_info.job_id = fair_job.job_id
|
||||
AND job_info.del_flag = '0'
|
||||
), 0) AS "demandCount",
|
||||
COALESCE((
|
||||
SELECT SUM(COALESCE(job_info."view", 0))
|
||||
FROM (
|
||||
SELECT DISTINCT fair_job.job_id
|
||||
FROM public_job_fair_job fair_job
|
||||
WHERE fair_job.job_fair_id = f.job_fair_id
|
||||
AND fair_job.del_flag = '0'
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM public_job_fair_company company_relation
|
||||
WHERE company_relation.job_fair_id = fair_job.job_fair_id
|
||||
AND company_relation.company_id = fair_job.company_id
|
||||
AND company_relation.del_flag = '0'
|
||||
AND COALESCE(company_relation.review_status, '1') = '1'
|
||||
)
|
||||
) fair_job
|
||||
INNER JOIN job job_info ON job_info.job_id = fair_job.job_id
|
||||
AND job_info.del_flag = '0'
|
||||
), 0) AS "viewCount"
|
||||
FROM public_job_fair f
|
||||
WHERE UPPER(COALESCE(f.is_cross_domain, 'N')) = 'Y'
|
||||
AND f.job_fair_type = '1'
|
||||
AND f.del_flag = '0'
|
||||
AND f.job_fair_start_time <![CDATA[ >= ]]> #{startDate}
|
||||
AND f.job_fair_start_time <![CDATA[ < ]]> #{endDate}
|
||||
ORDER BY f.job_fair_start_time DESC NULLS LAST, f.job_fair_id DESC
|
||||
</select>
|
||||
|
||||
<select id="checkUserSignUp" resultType="java.lang.Integer">
|
||||
select count(1) from rc_job_fair_sign_up
|
||||
where job_fair_id = #{jobFairId}::bigint and user_id = #{personId} and del_flag = '0' and status = '0'
|
||||
|
||||
Reference in New Issue
Block a user