61 lines
3.0 KiB
XML
61 lines
3.0 KiB
XML
|
|
<?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.StaticsMapper">
|
||
|
|
|
||
|
|
<select id="qygwtjCount" parameterType="com.ruoyi.cms.domain.query.Staticsquery" resultType="com.ruoyi.cms.domain.StaticsJob">
|
||
|
|
WITH time_params AS (
|
||
|
|
SELECT
|
||
|
|
CAST(#{startTime} AS timestamp) AS start_time,
|
||
|
|
CAST(#{endTime} AS timestamp) AS end_time
|
||
|
|
),
|
||
|
|
job_stats AS (
|
||
|
|
SELECT COUNT(*) AS 归集岗位合计 FROM job, time_params tp
|
||
|
|
WHERE posting_date >= tp.start_time AND posting_date < tp.end_time
|
||
|
|
),
|
||
|
|
company_stats AS (
|
||
|
|
SELECT COUNT(company_id) AS 注册企业数 FROM company, time_params tp
|
||
|
|
WHERE del_flag='0' AND create_time >= tp.start_time AND create_time < tp.end_time
|
||
|
|
),
|
||
|
|
user_stats AS (
|
||
|
|
SELECT COUNT(*) AS 求职者实名数 FROM app_user, time_params tp
|
||
|
|
WHERE del_flag='0' AND is_company_user='1' AND id_card IS NOT NULL
|
||
|
|
AND create_time >= tp.start_time AND create_time < tp.end_time
|
||
|
|
),
|
||
|
|
apply_stats AS (
|
||
|
|
SELECT COUNT(id) AS 简历投递数量 FROM job_apply, time_params tp
|
||
|
|
WHERE del_flag='0' AND create_time >= tp.start_time AND create_time < tp.end_time
|
||
|
|
)
|
||
|
|
SELECT
|
||
|
|
js.归集岗位合计 gjgwhj, cs.注册企业数 zcqys,
|
||
|
|
us.求职者实名数 qzzsms, as2.简历投递数量 jlsl
|
||
|
|
FROM job_stats js, company_stats cs, user_stats us, apply_stats as2;
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="getGroutCityJobs" parameterType="com.ruoyi.cms.domain.query.Staticsquery" resultType="com.ruoyi.cms.domain.StaticsJob">
|
||
|
|
WITH job_stats AS (
|
||
|
|
SELECT job_location_area_code, COUNT(job_id) AS zs,
|
||
|
|
SUM(CASE WHEN education >= 3 THEN 1 ELSE 0 END) AS gxbysgw,
|
||
|
|
SUM(CASE WHEN del_flag = '0' THEN 1 ELSE 0 END) AS sszzgw
|
||
|
|
FROM job WHERE job_location_area_code IS NOT NULL
|
||
|
|
<if test="startTime!=null and startTime!='' ">
|
||
|
|
<![CDATA[ AND posting_date >= CAST(#{startTime} AS timestamp) ]]>
|
||
|
|
</if>
|
||
|
|
<if test="endTime!=null and endTime!='' ">
|
||
|
|
<![CDATA[ AND posting_date <= CAST(#{endTime} AS timestamp) ]]>
|
||
|
|
</if>
|
||
|
|
GROUP BY job_location_area_code
|
||
|
|
),apply_stats AS (
|
||
|
|
SELECT j.job_location_area_code, COUNT(ja.id) AS jlsl
|
||
|
|
FROM job j INNER JOIN job_apply ja ON j.job_id = ja.job_id
|
||
|
|
WHERE j.job_location_area_code IS NOT NULL
|
||
|
|
GROUP BY j.job_location_area_code )
|
||
|
|
SELECT js.zs, js.gxbysgw, js.sszzgw, COALESCE(as2.jlsl, 0) AS jlsl,
|
||
|
|
bdd.dict_label as label FROM job_stats js
|
||
|
|
LEFT JOIN bussiness_dict_data bdd ON js.job_location_area_code = bdd.dict_value AND bdd.dict_type = 'area'
|
||
|
|
LEFT JOIN apply_stats as2 ON js.job_location_area_code = as2.job_location_area_code
|
||
|
|
ORDER BY bdd.dict_sort
|
||
|
|
</select>
|
||
|
|
|
||
|
|
</mapper>
|