| | |
| | | |
| | | <select id="selectGdDataObjectionPage" resultMap="gdDataObjectionResultMap"> |
| | | select |
| | | do.*, |
| | | GROUP_CONCAT(da.attach_name SEPARATOR ',') as attach_names, |
| | | bd.dept_name as create_dept_name |
| | | obj.id, |
| | | obj.title, |
| | | obj.objection_status, |
| | | obj.create_dept, |
| | | obj.apply_target_dept_id, |
| | | obj.create_time, |
| | | /* 必须显式查询排序字段,否则某些情况下分页插件生成的 COUNT 会报错 */ |
| | | obj.update_time, |
| | | obj.is_deleted, |
| | | string_agg(da.attach_name::text, ',') as attach_names, |
| | | bd.dept_name as create_dept_name |
| | | from |
| | | ja_gd_data_objection do |
| | | ja_gd_data_objection obj |
| | | left join |
| | | ja_gd_data_objection_attachment da |
| | | on do.id = da.objection_id::VARCHAR and da.is_deleted = 0 |
| | | ja_gd_data_objection_attachment da |
| | | on obj.id::text = da.objection_id::text |
| | | and da.is_deleted = 0 |
| | | left join |
| | | blade_dept bd on bd.id = do.create_dept::VARCHAR |
| | | blade_dept bd on bd.id::text = obj.create_dept::text |
| | | <where> |
| | | do.is_deleted = 0 |
| | | and da.is_deleted = 0 |
| | | obj.is_deleted = 0 |
| | | <if test="param2.title != null and param2.title != ''"> |
| | | and do.title like concat('%',#{param2.title},'%') |
| | | and obj.title::text like concat('%',#{param2.title},'%') |
| | | </if> |
| | | <if test="param2.objectionStatus != null and param2.objectionStatus != ''"> |
| | | and do.objection_status = #{param2.objectionStatus} |
| | | and obj.objection_status::text = #{param2.objectionStatus}::text |
| | | </if> |
| | | <if test="param2.deptList != null and param2.deptList.size > 0"> |
| | | and ( |
| | | do.create_dept in |
| | | obj.create_dept::text in |
| | | <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")"> |
| | | #{deptId} |
| | | #{deptId}::text |
| | | </foreach> |
| | | or obj.apply_target_dept_id::text in |
| | | <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")"> |
| | | #{deptId}::text |
| | | </foreach> |
| | | ) |
| | | or do.apply_target_dept_id in |
| | | <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")"> |
| | | #{deptId} |
| | | </foreach> |
| | | </if> |
| | | </where> |
| | | group by do.id |
| | | group by |
| | | obj.id, obj.title, obj.objection_status, obj.create_dept, |
| | | obj.apply_target_dept_id, obj.create_time, |
| | | /* 只要 SELECT 里出现的非聚合字段,GROUP BY 必须加上 */ |
| | | obj.update_time, |
| | | obj.is_deleted, bd.dept_name |
| | | </select> |
| | | |
| | | |
| | |
| | | |
| | | <select id="getDetail" resultType="org.sxkj.gd.orderdata.vo.GdDataObjectionVO"> |
| | | select |
| | | do.*, |
| | | GROUP_CONCAT(da.attach_name SEPARATOR ',') as attach_names , |
| | | GROUP_CONCAT(da.attach_id SEPARATOR ',') as attach_ids |
| | | obj.*, |
| | | string_agg(da.attach_name SEPARATOR ',') as attach_names , |
| | | string_agg(da.attach_id SEPARATOR ',') as attach_ids |
| | | from |
| | | ja_gd_data_objection do |
| | | ja_gd_data_objection obj |
| | | left join |
| | | ja_gd_data_objection_attachment da on do.id = da.objection_id::VARCHAR |
| | | ja_gd_data_objection_attachment da on obj.id::VARCHAR = da.objection_id::VARCHAR |
| | | <where> |
| | | and da.is_deleted = 0 |
| | | <if test="id != null "> |
| | | and do.id = #{id} |
| | | and obj.id = #{id} |
| | | </if> |
| | | </where> |
| | | group by do.id |
| | | group by obj.id |
| | | </select> |
| | | |
| | | </mapper> |