package com.zd.laboratory.mapper;

import java.util.List;

import com.zd.common.core.domain.R;
import com.zd.laboratory.domain.LabNegativeListRecords;
import org.apache.ibatis.annotations.Param;

/**
 * 负面清单列表Mapper接口
 * 
 * @author zd
 * @date 2021-12-15
 */
public interface LabNegativeListRecordsMapper 
{
    /**
     * 查询负面清单列表
     * 
     * @param id 负面清单列表主键
     * @return 负面清单列表
     */
    public LabNegativeListRecords selectLabNegativeListRecordsById(Long id);

    /**
     * 查询负面清单列表列表
     * 
     * @param labNegativeListRecords 负面清单列表
     * @return 负面清单列表集合
     */
    public List<LabNegativeListRecords> selectLabNegativeListRecordsList(LabNegativeListRecords labNegativeListRecords);

    /**
     * 新增负面清单列表
     * 
     * @param labNegativeListRecords 负面清单列表
     * @return 结果
     */
    public int insertLabNegativeListRecords(LabNegativeListRecords labNegativeListRecords);

    /**
     * 修改负面清单列表
     * 
     * @param labNegativeListRecords 负面清单列表
     * @return 结果
     */
    public int updateLabNegativeListRecords(LabNegativeListRecords labNegativeListRecords);

    /**
     * 删除负面清单列表
     * 
     * @param id 负面清单列表主键
     * @return 结果
     */
    public int deleteLabNegativeListRecordsById(Long id);

    /**
     * 批量删除负面清单列表
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteLabNegativeListRecordsByIds(Long[] ids);

    int updateStatus(Long userId);

    int updateByUserId(Long userId);

    int delByUserId(Long userId);

    int updateIsNegative(@Param("id") Long id, @Param("i") Long i);

    LabNegativeListRecords findByUserId(Long userId);

    int updateNegativeStatus(@Param("joinUserId") Long joinUserId);

    int updateCreditScore(@Param("userId") Long userId, @Param("score") Integer score);

    int updateblackStatus(@Param("userId") Long joinUserId, @Param("deducPoints") Long deducPoints);

    int  updateUser(@Param("userId") Long joinUserId, @Param("deducPoints") Long deducPoints);
}
