package io.dataease.traffic.dao.mapper;
|
|
import io.dataease.traffic.dao.entity.CoreApiTraffic;
|
import org.apache.ibatis.annotations.*;
|
|
@Mapper
|
public interface CoreApiTrafficMapper {
|
|
@Select("select `alive` from `core_api_traffic` where `api` = #{api}")
|
int getAlive(@Param("api") String api);
|
|
@Update("update `core_api_traffic` set alive = alive + 1 where `api` = #{api}")
|
void upgrade(@Param("api") String api);
|
|
@Insert("insert into core_api_traffic values(#{id}, #{api}, #{threshold}, 0)")
|
void insert(CoreApiTraffic traffic);
|
|
@Select("select count(*) from core_api_traffic where api = #{api}")
|
Integer apiCount(@Param("api") String api);
|
|
@Update("""
|
update `core_api_traffic` set alive =
|
CASE WHEN alive > 0 THEN alive - 1
|
ELSE alive END
|
where `api` = #{api}
|
""")
|
void releaseAlive(@Param("api") String api);
|
|
@Delete("delete from core_api_traffic")
|
void cleanTraffic();
|
}
|