package com.zm.order.tool.server.dao;

import com.zm.order.tool.server.model.Metadata;
import com.zm.order.tool.server.query.ListMetadataQuery;
import com.zm.order.tool.server.query.MetadataQuery;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author 陈标
 * @Description
 * @Date 2020/7/23 0023 17:27
 */
@Repository
public interface MetadataDao {


    /**
     * 插入数据
     *
     * @param metadata
     * @return
     */
    int insert(Metadata metadata);


    /**
     * 列表查询
     *
     * @param query
     * @return
     */
    List<Metadata> selectList(ListMetadataQuery query);


    /**
     * 单个查询
     *
     * @param bizType
     * @param property
     * @param value
     * @return
     */
    Metadata selectOne(@Param("bizType") String bizType, @Param("property") String property, @Param("value") String value);


    /**
     * 删除
     *
     * @param idList
     * @return
     */
    int delete(@Param("idList") List<Long> idList);


    /**
     * 修改数据
     *
     * @param metadata
     * @return
     */
    int update(Metadata metadata);


    /**
     * 数量查询
     *
     * @param query
     * @return
     */
    int count(ListMetadataQuery query);





}
