package com.zd.airbottle.service.impl;

import com.zd.airbottle.domain.QpRfidTag;
import com.zd.airbottle.mapper.QpRfidTagMapper;
import com.zd.airbottle.service.IQpRfidTagService;
import com.zd.common.security.utils.SaveUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * RFID标签管理Service业务层处理
 */
@Service
public class QpRfidTagServiceImpl implements IQpRfidTagService {
    @Autowired
    private QpRfidTagMapper qpRfidTagMapper;

    /**
     * 查询RFID标签管理
     *
     * @param id RFID标签管理主键
     * @return RFID标签管理
     */
    @Override
    public QpRfidTag selectQpRfidTagById(Long id) {
        return qpRfidTagMapper.selectQpRfidTagById(id);
    }

    /**
     * 查询RFID标签管理列表
     *
     * @param qpRfidTag RFID标签管理
     * @return RFID标签管理
     */
    @Override
    public List<QpRfidTag> selectQpRfidTagList(QpRfidTag qpRfidTag) {
        return qpRfidTagMapper.selectQpRfidTagList(qpRfidTag);
    }

    /**
     * 新增RFID标签管理
     *
     * @param qpRfidTag RFID标签管理
     * @return 结果
     */
    @Override
    public int insertQpRfidTag(QpRfidTag qpRfidTag) {
        //设置其他公共字段
        SaveUtil.setCommonAttr(qpRfidTag);
        return qpRfidTagMapper.insertQpRfidTag(qpRfidTag);
    }

    /**
     * 修改RFID标签管理
     *
     * @param qpRfidTag RFID标签管理
     * @return 结果
     */
    @Override
    public int updateQpRfidTag(QpRfidTag qpRfidTag) {
        return qpRfidTagMapper.updateQpRfidTag(qpRfidTag);
    }

    /**
     * 批量删除RFID标签管理
     *
     * @param ids 需要删除的RFID标签管理主键
     * @return 结果
     */
    @Override
    public int deleteQpRfidTagByIds(Long[] ids) {
        return qpRfidTagMapper.deleteQpRfidTagByIds(ids);
    }

    /**
     * 删除RFID标签管理信息
     *
     * @param id RFID标签管理主键
     * @return 结果
     */
    @Override
    public int deleteQpRfidTagById(Long id) {
        return qpRfidTagMapper.deleteQpRfidTagById(id);
    }

    /**
     * 根据code查询
     */
    @Override
    public int selectCountTag(String code) {
        return qpRfidTagMapper.selectCountTag(code);
    }

    /***
     * 根据标签查询
     * @param tag
     * @return
     */
    @Override
    public QpRfidTag selectByTag(String tag) {
        return qpRfidTagMapper.selectByTag(tag);
    }
}
