吉安感知网项目-后端
xiebin
2026-04-01 eeb3b5c9c794a35d7b7f3c8e56f9eef8eb8d3451
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/mapper/GdPatrolTaskMapper.xml
@@ -32,16 +32,16 @@
    <select id="selectGdPatrolTaskPage" resultMap="gdPatrolTaskResultMap">
        select
            pt.*,
            md.nickname as deviceName,
            md.nickname as device_name,
            wo.work_order_name,
            IFNULL(tr.result_count, 0) as result_count,
            IFNULL(tr.issue_event_count, 0) as issue_event_count
            COALESCE(tr.result_count, 0) as result_count,
            COALESCE(tr.issue_event_count, 0) as issue_event_count
        from
            ja_gd_patrol_task pt
        left join
            ja_gd_work_order wo on pt.work_order_id = wo.id
            ja_gd_work_order wo on pt.work_order_id = wo.id::VARCHAR
        left join
                ja_gd_manage_device md on md.id = pt.device_id
                ja_gd_manage_device md on md.id = pt.device_id::VARCHAR
        left join
            (
            select patrol_task_id,
@@ -53,8 +53,9 @@
                is_deleted = 0
            group by
                patrol_task_id
            ) tr on tr.patrol_task_id = pt.id
            ) tr on tr.patrol_task_id = pt.id::VARCHAR
        <where>
                pt.is_deleted = 0
            <if test="param2.workOrderId != null and param2.workOrderId != ''">
                and pt.work_order_id = #{param2.workOrderId}
            </if>
@@ -67,9 +68,9 @@
            <if test="param2.taskStatus != null and param2.taskStatus != ''">
                and pt.task_status = #{param2.taskStatus}
            </if>
            <if test="param3 != null and param3.size > 0">
            <if test="param2.deptList != null and param2.deptList.size > 0">
                and pt.create_dept in
                <foreach collection="param3" item="deptId" open="(" separator="," close=")">
                <foreach collection="param2.deptList" item="deptId" open="(" separator="," close=")">
                    #{deptId}
                </foreach>
            </if>
@@ -84,6 +85,45 @@
        SELECT * FROM ja_gd_patrol_task ${ew.customSqlSegment}
    </select>
    <select id="getPatrolTaskIdById" resultType="org.sxkj.gd.workorder.vo.GdPatrolTaskVO">
        SELECT
            pt.*,
            md.airport_id as airport_id
        FROM
            ja_gd_patrol_task pt
        left join
                ja_gd_manage_device md on md.id = pt.device_id::VARCHAR
        WHERE pt.id = #{patrolTaskId}
    </select>
    <select id="getPatrolTaskDetail" resultType="org.sxkj.gd.workorder.vo.GdPatrolTaskVO">
        SELECT
            pt.*,
            md.airport_id as airport_id,
            md.height,
            md.longitude,
            md.latitude,
            md.nickname as device_name,
            wo.work_order_name
        FROM
            ja_gd_patrol_task pt
        left join
            ja_gd_work_order wo on pt.work_order_id = wo.id::VARCHAR
        left join
            ja_gd_manage_device md on md.id = pt.device_id::VARCHAR
        WHERE pt.id = #{id}
    </select>
    <select id="getWorkOrderIdById" resultType="org.sxkj.gd.workorder.entity.GdWorkOrderEntity">
        SELECT
            *
        FROM
            ja_gd_work_order
        WHERE id = #{id}
          AND work_order_status = #{code}
    </select>
    <!-- 自定义更新工单状态语句 -->
    <update id="updateWorkOrderById" parameterType="org.sxkj.gd.workorder.entity.GdWorkOrderEntity">
        UPDATE ja_gd_work_order