| | |
| | | d.status deviceStatus |
| | | from |
| | | ja_fw_drone_alarm_record dar |
| | | left join ja_fw_device d on dar.device_id::VARCHAR = d.id::VARCHAR |
| | | left join ja_fw_device d on dar.device_id::text = d.id::text |
| | | <where> |
| | | dar.is_deleted = 0 |
| | | <if test="ids != null and ids.size() > 0"> |
| | | and dar.id in |
| | | <foreach item="item" collection="ids" separator="," open="(" close=")"> |
| | | #{item} |
| | | #{item}::bigint |
| | | </foreach> |
| | | </if> |
| | | <if test="regionCode != null and regionCode != ''"> |
| | | and (d.final_outbound_area_code::VARCHAR like CONCAT(#{regionCode}::VARCHAR, '%') |
| | | <!-- 或者设备是共享给当前部门的 --> |
| | | and (d.final_outbound_area_code::text like CONCAT(#{regionCode}::text, '%') |
| | | <if test="currentDeptId != null and currentDeptId != '' "> |
| | | or dar.device_id in ( |
| | | SELECT device_id FROM ja_fw_device_per_share |
| | | WHERE loan_to_dept_id::VARCHAR = #{currentDeptId}::VARCHAR |
| | | WHERE |
| | | loan_to_dept_id = #{currentDeptId}::bigint |
| | | AND is_deleted = 0 |
| | | ) |
| | | </if> |
| | |
| | | |
| | | <select id="exportFwDroneFlightRecord" resultType="org.sxkj.fw.record.excel.FwDroneFlightRecordExcel"> |
| | | SELECT |
| | | dfr.id, |
| | | dfr.drone_name, |
| | | dfr.serial_no, |
| | | dfr.alarm_time, |
| | | dfr.area_name, |
| | | dfr.trigger_type, |
| | | dfr.stay_duration, |
| | | dfrd.longitude, |
| | | dfrd.latitude, |
| | | dfrd.point_time |
| | | dfr.id, |
| | | dfr.drone_name, |
| | | dfr.serial_no, |
| | | dfr.alarm_time, |
| | | dfr.area_name, |
| | | dfr.trigger_type, |
| | | dfr.stay_duration, |
| | | dfrd.longitude, |
| | | dfrd.latitude, |
| | | dfrd.point_time |
| | | FROM |
| | | ja_fw_drone_flight_record dfr |
| | | ja_fw_drone_flight_record dfr |
| | | /* 修改点 1:将 VARCHAR 改为更通用的 text,并确保两端类型一致 */ |
| | | left join |
| | | ja_fw_device d on dfr.device_id::VARCHAR = d.id::VARCHAR |
| | | ja_fw_device d on dfr.device_id::text = d.id::text |
| | | left join |
| | | ja_fw_drone_flight_record_detail dfrd on dfr.id::VARCHAR = dfrd.flight_record_id::VARCHAR |
| | | ja_fw_drone_flight_record_detail dfrd on dfr.id::text = dfrd.flight_record_id::text |
| | | <where> |
| | | dfr.is_deleted = 0 |
| | | <if test="ids != null and ids.size() > 0"> |
| | | and dfr.id in |
| | | <foreach item="item" collection="ids" separator="," open="(" close=")"> |
| | | #{item} |
| | | #{item}::bigint |
| | | </foreach> |
| | | </if> |
| | | <if test="regionCode != null and regionCode != ''"> |
| | | and (d.final_outbound_area_code::VARCHAR like CONCAT(#{regionCode}::VARCHAR, '%') |
| | | <!-- 或者设备是共享给当前部门的 --> |
| | | and (d.final_outbound_area_code::text like CONCAT(#{regionCode}::text, '%') |
| | | <if test="currentDeptId != null and currentDeptId != '' "> |
| | | or dfr.device_id in ( |
| | | SELECT device_id FROM ja_fw_device_per_share |
| | | WHERE loan_to_dept_id::VARCHAR = #{currentDeptId}::VARCHAR |
| | | WHERE |
| | | loan_to_dept_id = #{currentDeptId}::bigint |
| | | AND is_deleted = 0 |
| | | ) |
| | | </if> |