package com.flossom.system.service.impl;

import java.util.List;

import com.flossom.common.core.domain.entity.WxInstrumentMode;
import com.flossom.common.core.mapper.WxInstrumentModeMapper;
import com.flossom.common.core.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.flossom.system.service.IWxInstrumentModeService;

/**
 * 仪器与模式的关联Service业务层处理
 *
 * @author flossom
 * @date 2024-01-17
 */
@Service
public class WxInstrumentModeServiceImpl implements IWxInstrumentModeService {

    @Autowired
    private WxInstrumentModeMapper wxInstrumentModeMapper;

    /**
     * 查询仪器与模式的关联
     *
     * @param id 仪器与模式的关联主键
     * @return 仪器与模式的关联
     */
    @Override
    public WxInstrumentMode selectWxInstrumentModeById(Long id) {
        return wxInstrumentModeMapper.selectWxInstrumentModeById(id);
    }

    /**
     * 查询仪器与模式的关联列表
     *
     * @param wxInstrumentMode 仪器与模式的关联
     * @return 仪器与模式的关联
     */
    @Override
    public List<WxInstrumentMode> selectWxInstrumentModeList(WxInstrumentMode wxInstrumentMode) {
        return wxInstrumentModeMapper.selectWxInstrumentModeList(wxInstrumentMode);
    }

    /**
     * 新增仪器与模式的关联
     *
     * @param wxInstrumentMode 仪器与模式的关联
     * @return 结果
     */
    @Override
    public int insertWxInstrumentMode(WxInstrumentMode wxInstrumentMode) {
        wxInstrumentMode.setCreateTime(DateUtils.getNowDate());
        return wxInstrumentModeMapper.insertWxInstrumentMode(wxInstrumentMode);
    }

    /**
     * 修改仪器与模式的关联
     *
     * @param wxInstrumentMode 仪器与模式的关联
     * @return 结果
     */
    @Override
    public int updateWxInstrumentMode(WxInstrumentMode wxInstrumentMode) {
        return wxInstrumentModeMapper.updateWxInstrumentMode(wxInstrumentMode);
    }

    /**
     * 批量删除仪器与模式的关联
     *
     * @param ids 需要删除的仪器与模式的关联主键
     * @return 结果
     */
    @Override
    public int deleteWxInstrumentModeByIds(Long[] ids) {
        return wxInstrumentModeMapper.deleteWxInstrumentModeByIds(ids);
    }

    /**
     * 删除仪器与模式的关联信息
     *
     * @param id 仪器与模式的关联主键
     * @return 结果
     */
    @Override
    public int deleteWxInstrumentModeById(Long id) {
        return wxInstrumentModeMapper.deleteWxInstrumentModeById(id);
    }
}
