| | |
| | | <result property="delFlag" column="del_flag"/> |
| | | </resultMap> |
| | | |
| | | <resultMap id="ChannelResult" type="TDetectionChannel"> |
| | | <id property="channelId" column="channel_id"/> |
| | | <result property="adapterId" column="adapter_id"/> |
| | | <result property="cabinetId" column="cabinet_id"/> |
| | | <result property="devtype" column="devtype"/> |
| | | <result property="devid" column="devid"/> |
| | | <result property="subdevid" column="subdevid"/> |
| | | <result property="chlid" column="chlid"/> |
| | | <result property="displayNo" column="display_no"/> |
| | | <result property="onlineStatus" column="online_status"/> |
| | | <result property="workStatus" column="work_status"/> |
| | | <result property="lastSeenAtUtc" column="last_seen_at_utc"/> |
| | | <result property="status" column="status"/> |
| | | </resultMap> |
| | | |
| | | <sql id="adapterColumns"> |
| | | adapter_id, adapter_code, adapter_name, adapter_type, host, port, poll_interval_ms, timezone_id, |
| | | capabilities, (json_extract(capabilities, '$.control') = false) read_only, status, |
| | |
| | | where adapter_id=#{adapterId} and del_flag=0 |
| | | </update> |
| | | |
| | | <select id="selectCabinetIdByIdentity" resultType="Long"> |
| | | select cabinet_id from t_detection_cabinet |
| | | where adapter_id=#{adapterId} and vendor_device_type=#{devtype} and vendor_device_id=#{devid} and del_flag=0 limit 1 |
| | | </select> |
| | | |
| | | <insert id="insertDetectedCabinet" parameterType="TDetectionCabinet" useGeneratedKeys="true" keyProperty="cabinetId"> |
| | | insert into t_detection_cabinet(adapter_id, cabinet_code, cabinet_name, manufacturer, model, capacity, |
| | | channel_count, vendor_device_type, vendor_device_id, ip_address, mac_address, online_status, |
| | | last_seen_at_utc, registration_status, status, create_by, create_time, del_flag) |
| | | values(#{adapterId}, #{cabinetCode}, #{cabinetName}, #{manufacturer}, #{model}, 1, |
| | | #{channelCount}, #{vendorDeviceType}, #{vendorDeviceId}, #{ipAddress}, #{macAddress}, |
| | | #{onlineStatus}, #{lastSeenAtUtc}, 'DISCOVERED', '0', 'system', sysdate(), 0) |
| | | </insert> |
| | | |
| | | <update id="updateDetectedCabinet" parameterType="TDetectionCabinet"> |
| | | update t_detection_cabinet set channel_count=#{channelCount}, ip_address=#{ipAddress}, |
| | | online_status=#{onlineStatus}, last_seen_at_utc=#{lastSeenAtUtc}, update_by='system', update_time=sysdate() |
| | | where cabinet_id=#{cabinetId} and del_flag=0 |
| | | </update> |
| | | |
| | | <insert id="upsertDetectedChannel" parameterType="TDetectionChannel"> |
| | | insert into t_detection_channel(adapter_id, cabinet_id, devtype, devid, subdevid, chlid, display_no, |
| | | online_status, work_status, last_seen_at_utc, status, create_time, del_flag) |
| | | values(#{adapterId}, #{cabinetId}, #{devtype}, #{devid}, #{subdevid}, #{chlid}, #{displayNo}, |
| | | #{onlineStatus}, #{workStatus}, #{lastSeenAtUtc}, '0', sysdate(), 0) |
| | | on duplicate key update cabinet_id=values(cabinet_id), display_no=values(display_no), |
| | | online_status=values(online_status), work_status=values(work_status), |
| | | last_seen_at_utc=values(last_seen_at_utc), update_time=sysdate() |
| | | </insert> |
| | | |
| | | <select id="selectDetectionChannelsByAdapterId" resultMap="ChannelResult"> |
| | | select channel_id, adapter_id, cabinet_id, devtype, devid, subdevid, chlid, display_no, |
| | | online_status, work_status, last_seen_at_utc, status |
| | | from t_detection_channel where adapter_id=#{adapterId} and del_flag=0 |
| | | order by devtype, devid, subdevid, chlid |
| | | </select> |
| | | </mapper> |