添加地纬同步数据近15天

This commit is contained in:
sh
2026-04-10 16:04:39 +08:00
parent 14870858f4
commit d876409e61
6 changed files with 108 additions and 0 deletions

View File

@@ -102,4 +102,56 @@
ORDER BY bdd.dict_sort
</select>
<select id="getDwgjsjtj" parameterType="com.ruoyi.cms.domain.query.Staticsquery" resultType="com.ruoyi.cms.domain.StaticsHl">
WITH params AS (
SELECT
CAST(#{startTime} AS date) AS target_date,
CAST(#{startTime} AS date) - 14 AS s_date,
CAST(TO_CHAR(CAST(#{startTime} AS date) - 14, 'YYYYMMDD') AS bigint) AS min_id,
CAST(TO_CHAR(CAST(#{startTime} AS date), 'YYYYMMDD') AS bigint) AS max_id
),
date_range AS (
SELECT
d.day AS stat_day
FROM params p
CROSS JOIN generate_series(p.s_date, p.target_date, '1 day') d(day)
),
user_stats AS (
SELECT
CAST(DATE_TRUNC('day', create_time) AS date) AS stat_day,
COUNT(*) AS user_count
FROM app_user
WHERE dw_userid IS NOT NULL
AND create_time &gt;= (SELECT s_date FROM params)
AND create_time &lt; (SELECT target_date FROM params) + 1
GROUP BY CAST(DATE_TRUNC('day', create_time) AS date)
),
job_stats AS (
SELECT
TO_DATE(CAST(row_id AS TEXT), 'YYYYMMDD') AS stat_day,
COUNT(*) AS job_count
FROM job
WHERE row_id BETWEEN (SELECT min_id FROM params) AND (SELECT max_id FROM params)
GROUP BY TO_DATE(CAST(row_id AS TEXT), 'YYYYMMDD')
),
company_stats AS (
SELECT
TO_DATE(CAST(user_id AS TEXT), 'YYYYMMDD') AS stat_day,
COUNT(*) AS company_count
FROM company
WHERE user_id BETWEEN (SELECT min_id FROM params) AND (SELECT max_id FROM params)
GROUP BY TO_DATE(CAST(user_id AS TEXT), 'YYYYMMDD')
)
SELECT
TO_CHAR(d.stat_day, 'YYYY-MM-DD') AS time,
COALESCE(u.user_count, 0) AS rysl,
COALESCE(j.job_count, 0) AS gwsl,
COALESCE(c.company_count, 0) AS qysl
FROM date_range d
LEFT JOIN user_stats u ON d.stat_day = u.stat_day
LEFT JOIN job_stats j ON d.stat_day = j.stat_day
LEFT JOIN company_stats c ON d.stat_day = c.stat_day
ORDER BY d.stat_day DESC
</select>
</mapper>