package com.zioinfo.esn.mapper;

import com.zioinfo.esn.domain.TagBindingVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

@Mapper
public interface TagBindingMapper {
    List<TagBindingVo> findAll(@Param("tenantCode") String tenantCode,
                               @Param("storeId") Long storeId,
                               @Param("bindStatus") String bindStatus,
                               @Param("keyword") String keyword);
    TagBindingVo findById(@Param("id") Long id);
    TagBindingVo findByDeviceId(@Param("deviceId") String deviceId);
    List<TagBindingVo> findByProductCode(@Param("tenantCode") String tenantCode,
                                         @Param("storeId") Long storeId,
                                         @Param("productCode") String productCode);
    int insert(TagBindingVo vo);
    int update(TagBindingVo vo);
    int unbind(@Param("id") Long id);
    int delete(@Param("id") Long id);
    long countAll(@Param("tenantCode") String tenantCode);
    long countActive(@Param("tenantCode") String tenantCode);
}
