package com.heyu.api.data.dao.vv;
/**
* <p>
* sku 与属性的对应关系 服务类
* </p>
*
* @author quyixiao
* @since 2025-08-22
*/
import com.heyu.api.data.entity.vv.VvProductPropertyEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lz.mybatis.plugin.annotations.IN;
import com.lz.mybatis.plugin.annotations.OrderBy;
import com.lz.mybatis.plugin.annotations.OrderType;
import com.lz.mybatis.plugin.annotations.Realy;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface VvProductPropertyDao extends BaseMapper<VvProductPropertyEntity> {


	VvProductPropertyEntity selectVvProductPropertyById(@Param("id")Long id);


	Long insertVvProductProperty(VvProductPropertyEntity vvProductProperty);


	Long insertOrUpdateVvProductProperty(VvProductPropertyEntity vvProductProperty);


	int updateVvProductPropertyById(VvProductPropertyEntity vvProductProperty);


	int updateCoverVvProductPropertyById(VvProductPropertyEntity vvProductProperty);


	int deleteVvProductPropertyById(@Param("id")Long id);


	@OrderBy(value={VvProductPropertyEntity.default_sort}, type={OrderType.ASC})
    List<VvProductPropertyEntity> selectVvProductPropertyByProductId(Long productId);



	@Realy
	int deleteVvProductPropertyRealById(@Param("id")Long id);



    List<VvProductPropertyEntity> selectProductPropertyByIds(@IN List<Long> id);



    @OrderBy(value={VvProductPropertyEntity.default_sort}, type={OrderType.ASC})
    List<VvProductPropertyEntity> selectVvProductPropertyByProductIdList(@IN List<Long> productId);
}