From caf9d837bc7b2bb6de6b7ba0aac72c3ab7ae93a8 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 05 Aug 2026 11:19:31 +0800
Subject: [PATCH] fix(workorder): 修复管理员查询状态列表权限问题
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/mapper/GdDataObjectionMapper.xml | 77 +++++++++++++++++++++++++++++---------
1 files changed, 58 insertions(+), 19 deletions(-)
diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/mapper/GdDataObjectionMapper.xml b/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/mapper/GdDataObjectionMapper.xml
index 141a444..7bb6480 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/mapper/GdDataObjectionMapper.xml
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/mapper/GdDataObjectionMapper.xml
@@ -30,32 +30,64 @@
<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_type,
+ obj.objection_status,
+ obj.catalog_resource_name,
+ obj.submitter,
+ obj.submitter_contact,
+ obj.handle_unit,
+ obj.objection_desc,
+ obj.objection_basis,
+ obj.other_objection_detail,
+ obj.review_opinion,
+ obj.area_code,
+ obj.apply_target_dept_id,
+ obj.create_user,
+ obj.create_dept,
+ obj.create_time,
+ obj.update_user,
+ obj.update_time,
+ obj.status,
+ 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
+ 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
+ blade_dept bd on bd.id::text = obj.create_dept::text
<where>
- do.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
+ and (
+ 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>
+ )
</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>
@@ -64,15 +96,22 @@
</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
- from ja_gd_data_objection do
- left join ja_gd_data_objection_attachment da on do.id = da.objection_id
+ SELECT
+ obj.*,
+ string_agg(da.attach_name::text, ',') AS attach_names,
+ string_agg(da.attach_id::text, ',') AS attach_ids
+ FROM
+ ja_gd_data_objection obj
+ LEFT JOIN
+ ja_gd_data_objection_attachment da ON obj.id::text = da.objection_id::text
<where>
- <if test="id != null ">
- and do.id = #{id}
+ da.is_deleted = 0
+ <if test="id != null">
+ AND obj.id::text = #{id}::text
</if>
</where>
- group by do.id
+ GROUP BY
+ obj.id
</select>
</mapper>
--
Gitblit v1.9.3