package com.bonus.sgzb.base.mapper;

import com.bonus.sgzb.base.api.domain.MaLabelBind;
import com.bonus.sgzb.base.api.domain.MaMachine;
import com.bonus.sgzb.base.vo.MaLabelBindVO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 机具设备标签ma_label_bindMapper接口
 *
 * @author bonus
 * @date 2023-12-13
 */
@Mapper
public interface MaLabelBindMapper
{
    /**
     * 查询机具设备标签ma_label_bind
     *
     * @param maId 机具设备标签ma_label_bind主键
     * @return 机具设备标签ma_label_bind
     */
    public MaLabelBindVO selectMaLabelBindByMaId(Long maId);

    /**
     * 查询机具设备标签ma_label_bind列表
     *
     * @param maLabelBindVO 机具设备标签ma_label_bind
     * @return 机具设备标签ma_label_bind集合
     */
    public List<MaLabelBindVO> selectMaLabelBindList(MaLabelBindVO maLabelBindVO);

    /**
     * 查询机具设备标签历史ma_label_bind列表
     *
     * @param maLabelBindVO 机具设备标签ma_label_bind
     * @return 机具设备标签ma_label_bind集合
     */
    public List<MaLabelBindVO> selecthistoryList(MaLabelBindVO maLabelBindVO);
    /**
     * 新增机具设备标签ma_label_bind
     *
     * @param maLabelBindVO 机具设备标签ma_label_bind
     * @return 结果
     */
    public int insertMaLabelBindS(MaLabelBindVO maLabelBindVO);

    /**
     * 新增机具设备标签ma_label_bind
     *
     * @param maMachine 机具设备标签ma_label_bind
     * @return 结果
     */
    public int insertMaLabel(MaMachine maMachine);
    /**
     * 查询机具设备ma_id
     *
     * @param maCode
     * @return 结果
     */
//    public int selectMaMachineMaId(String maCode);
    /**
     * 修改机具设备标签ma_label_bind
     *
     * @param maLabelBindVO 机具设备标签ma_label_bind
     * @return 结果
     */
    public int updateMaLabelBind(MaLabelBindVO maLabelBindVO);

    /**
     * 删除机具设备标签ma_label_bind
     *
     * @param maId 机具设备标签ma_label_bind主键
     * @return 结果
     */
    public int deleteMaLabelBindByMaId(Long maId);

    /**
     * 批量删除机具设备标签ma_label_bind
     *
     * @param id 需要删除的数据主键集合
     * @return 结果
     */
    public int updateMaLabelBindByMaIds(Long id);

    public int updateMaLabelBindMaIds(MaLabelBindVO maLabelBindVO);
    MaLabelBindVO selectMaMachineMaId(String maCode);

    int insertLabelBind(MaLabelBind maLabelBind);

    MaLabelBind selectMaLabelBindByMaCode(MaMachine maMachine);

    void updateMalableCode(MaLabelBind maLabelBind);

    void updateMatypeNum(Long typeId);

}
