You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
5.8 KiB
115 lines
5.8 KiB
package com.mh.user.mapper; |
|
|
|
import com.mh.user.entity.GatewayManageEntity; |
|
import com.mh.user.provide.GatewayManageProvider; |
|
import org.apache.ibatis.annotations.*; |
|
import org.springframework.stereotype.Component; |
|
|
|
import java.util.List; |
|
|
|
/** |
|
* author: ljf |
|
* desc: 网关管理实现类 |
|
* create-date: 2020-05-21 |
|
* */ |
|
@Component |
|
@Mapper |
|
public interface GatewayManageMapper { |
|
|
|
/** |
|
* 根据条件查询网关信息 |
|
* @param grade 连接状态 |
|
* @param operator 运营商 |
|
* @return |
|
*/ |
|
@SelectProvider(type = GatewayManageProvider.class, method = "queryByOther") |
|
@Results(id="rs",value = { |
|
@Result(column = "id", property = "id"), |
|
@Result(column = "gateway_name", property = "gatewayName"), |
|
@Result(column = "gateway_ip", property = "gatewayIP"), |
|
@Result(column = "gateway_address", property = "gatewayAddress"), |
|
@Result(column = "gateway_port", property = "gatewayPort"), |
|
@Result(column = "grade", property = "grade"), |
|
@Result(column = "internet_card", property = "internetCard"), |
|
@Result(column = "operator", property = "operator"), |
|
@Result(column = "create_date", property = "createDate"), |
|
@Result(column = "connect_date", property = "connectDate"), |
|
@Result(column = "remarks", property = "remarks"), |
|
@Result(column = "heart_beat", property = "heartBeat"), |
|
@Result(column = "imei", property = "imei"), |
|
@Result(column = "sn", property = "sn"), |
|
@Result(column = "data_com", property = "dataCom"), |
|
@Result(column = "thread", property = "thread"), |
|
@Result(column = "community_type", property = "communityType") |
|
}) |
|
List<GatewayManageEntity> queryByOther(@Param("grade") Integer grade, @Param("operator") Integer operator); |
|
|
|
/** |
|
* 新增网关信息 |
|
* @param gatewayManageEntity |
|
*/ |
|
@Insert("insert into gateway_manage(gateway_name, gateway_ip, gateway_address, gateway_port, grade,internet_card,operator, create_date,remarks " + |
|
") values(#{gatewayName},#{gatewayIP},#{gatewayAddress},#{gatewayPort},#{grade},#{internetCard},#{operator},getDate(),#{remarks})" ) |
|
void insertGateWayInfo(GatewayManageEntity gatewayManageEntity); |
|
|
|
/** |
|
* 更新网关信息 |
|
* @param gatewayManageEntity |
|
*/ |
|
@Update("update gateway_manage set gateway_name = #{gatewayName}, gateway_ip = #{gatewayIP}, gateway_address = #{gatewayAddress}, " + |
|
"gateway_port = #{gatewayPort},grade = #{grade},internet_card = #{internetCard}, operator = #{operator}, " + |
|
"remarks=#{remarks} where id = #{id}") |
|
void updateGateWayInfo(GatewayManageEntity gatewayManageEntity); |
|
|
|
// 查询全部信息 |
|
@SelectProvider(type = GatewayManageProvider.class, method = "queryAll") |
|
@ResultMap("rs") |
|
// @Select("select * from (\n" + |
|
// "select *,ROW_NUMBER() over(order by id) as rn from gateway_manage \n" + |
|
// ") t where rn between (#{page}-1)*#{limit} and #{page}*#{limit}") |
|
List<GatewayManageEntity> queryAll(@Param("gatewayID") String gatewayID, |
|
@Param("operator") String operator, |
|
@Param("grade") String grade, |
|
@Param("page") int page, @Param("limit") int limit); |
|
|
|
// 查询全部记录数 |
|
@SelectProvider(type = GatewayManageProvider.class, method = "queryCount") |
|
// @Select("select count(*) from gateway_manage ") |
|
int queryCount(@Param("gatewayID") String gatewayID, |
|
@Param("operator") String operator, |
|
@Param("grade") String grade); |
|
|
|
|
|
// 添加网关设备 |
|
@Insert("insert into gateway_manage(gateway_name, gateway_ip, gateway_address, data_com, connect_date, grade, internet_card, operator, gateway_port)" + |
|
" values (#{gatewayName}, #{gatewayIP}, #{gatewayAddress}, #{dataCom}, #{connectDate}, #{grade}, #{internetCard}, #{operator}, #{gatewayPort})") |
|
void insertGatewayManage(GatewayManageEntity gatewayManageEntity); |
|
|
|
// 通关网关ID删除设备 |
|
@Delete("delete from gateway_manage where id = #{gatewayID}") |
|
void deleteGatewayManageByID(@Param("gatewayID") int gatewayID); |
|
|
|
// 根据网关设备ID查询网关对应信息 |
|
@Select("select id, gateway_name, gateway_ip, gateway_address, collection_loop, connect_date, internet_card, operator, gateway_port, grade from gateway_manage where id = #{gatewayID}") |
|
GatewayManageEntity queryGatewayByID(@Param("gatewayID") Long gatewayID); |
|
|
|
// 查询对应的总数 |
|
@SelectProvider(type = GatewayManageProvider.class, method = "queryByOtherCount") |
|
int queryByOtherCount(@Param("page") int page, @Param("size") int size, @Param("gatewayID") int gatewayID); |
|
|
|
// 根据IP和端口号更新服务器在线时间 |
|
@Update("update gateway_manage set connect_date = getDate() where gateway_ip = #{IP} and convert(varchar(20),gateway_port) = #{port}") |
|
void updateGatewayManage(@Param("IP") String IP, @Param("port") String port); |
|
|
|
// 根据设备类型查询数据库,找出对应的详细信息 |
|
@Select("select id, gateway_name, gateway_ip, gateway_address, data_com, connect_date, internet_card, operator, gateway_port, grade from gateway_manage where grade = #{grade}") |
|
GatewayManageEntity queryGatewayByGrade(@Param("grade") Long grade); |
|
|
|
// 根据设备心跳包更新设备在线状态 |
|
@Update("update gateway_manage set grade = #{status} where heart_beat = #{heartBeat}") |
|
void updateGatewayManageOnlineByHeartBeatCode(String heartBeat, int status); |
|
|
|
// 根据设备IMEI更新设备在线状态 |
|
@Update("update gateway_manage set grade = #{status} where imei = #{imei}") |
|
void updateGatewayManageOnlineByImei(String imei, int status); |
|
}
|
|
|