This commit is contained in:
moonlight557
2025-10-13 16:03:32 +08:00
commit 3bcf1b595c
23 changed files with 1027 additions and 0 deletions

View File

@@ -0,0 +1,11 @@
<?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.whu.edu.LyStatistic.statistic.mapper.OrgSchemaMapper">
<select id="findSchemasByOrgName" resultType="string">
SELECT schema_code
FROM public.unit_info
WHERE unit_name = #{orgName}
</select>
</mapper>

View File

@@ -0,0 +1,39 @@
<?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.whu.edu.LyStatistic.statistic.mapper.TaskStatisticMapper">
<select id="countByCollector" parameterType="map" resultType="com.whu.edu.LyStatistic.statistic.dto.UserTaskCount">
SELECT collector AS user_id, COUNT(*) AS count
FROM "${schema}"."${table}" t
WHERE t.collector != -1
<if test="timeParam != null">
AND update_time &lt;= #{timeParam}
</if>
<if test="userIds != null and userIds.size() > 0">
AND collector IN
<foreach collection="userIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
GROUP BY collector
</select>
<select id="countByReviewer" parameterType="map" resultType="com.whu.edu.LyStatistic.statistic.dto.UserTaskCount">
SELECT reviewer AS user_id, COUNT(*) AS count
FROM "${schema}"."${table}" t
WHERE t.reviewer != -1
<if test="timeParam != null">
AND update_time &lt;= #{timeParam}
</if>
<if test="userIds != null and userIds.size() > 0">
AND reviewer IN
<foreach collection="userIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
GROUP BY reviewer
</select>
</mapper>

View File

@@ -0,0 +1,25 @@
<?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.whu.edu.LyStatistic.statistic.mapper.UserStaffMapper">
<!-- 根据用户名模糊查询 -->
<select id="findByNameLike" resultType="com.whu.edu.LyStatistic.statistic.dto.UserStaff">
SELECT id, real_name
FROM public.user_staff
WHERE real_name ILIKE CONCAT('%', #{name}, '%')
</select>
<!-- 根据 ID 查询 -->
<select id="findByIds" resultType="com.whu.edu.LyStatistic.statistic.dto.UserStaff">
SELECT id, real_name AS username
FROM public.user_staff
WHERE id IN
<foreach collection="ids" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</select>
</mapper>