Files
tuanwei-java/src/main/java/com/gxwebsoft/gxmu/mapper/xml/TzbcyMaterialMapper.xml
2026-07-20 11:48:06 +08:00

84 lines
2.8 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.gxwebsoft.gxmu.mapper.TzbcyMaterialMapper">
<sql id="Base_Column_List">
m.id,
m.form_id,
m.material_type,
m.file_id,
m.file_name,
m.file_path,
m.file_url,
m.download_url,
m.file_size,
m.content_type,
m.status,
m.reject_reason,
m.audit_user_id,
m.audit_time,
m.user_id,
m.deleted,
m.tenant_id,
m.create_time,
m.update_time,
f.project_name AS project_name,
f.leader AS leader
</sql>
<sql id="Where_Clause">
WHERE m.deleted = 0
<if test="param != null">
<if test="param.id != null">
AND m.id = #{param.id}
</if>
<if test="param.formId != null">
AND m.form_id = #{param.formId}
</if>
<if test="param.status != null">
AND m.status = #{param.status}
</if>
<if test="param.userId != null">
AND m.user_id = #{param.userId}
</if>
<if test="param.userIds != null and param.userIds.size() > 0">
AND m.user_id IN
<foreach collection="param.userIds" item="userId" open="(" separator="," close=")">
#{userId}
</foreach>
</if>
<if test="param.materialType != null and param.materialType != ''">
AND m.material_type LIKE CONCAT('%', #{param.materialType}, '%')
</if>
<if test="param.keywords != null and param.keywords != ''">
AND (
m.material_type LIKE CONCAT('%', #{param.keywords}, '%')
OR m.file_name LIKE CONCAT('%', #{param.keywords}, '%')
OR f.project_name LIKE CONCAT('%', #{param.keywords}, '%')
OR f.leader LIKE CONCAT('%', #{param.keywords}, '%')
)
</if>
</if>
</sql>
<select id="selectPageRel" resultType="com.gxwebsoft.gxmu.entity.TzbcyMaterial">
SELECT
<include refid="Base_Column_List"/>
FROM gxmu_tzbcy_material m
LEFT JOIN gxmu_tzbcy_form f ON f.id = m.form_id AND f.deleted = 0
<include refid="Where_Clause"/>
ORDER BY m.id DESC
</select>
<select id="selectListRel" resultType="com.gxwebsoft.gxmu.entity.TzbcyMaterial">
SELECT
<include refid="Base_Column_List"/>
FROM gxmu_tzbcy_material m
LEFT JOIN gxmu_tzbcy_form f ON f.id = m.form_id AND f.deleted = 0
<include refid="Where_Clause"/>
ORDER BY m.id DESC
</select>
</mapper>