package com.hw.ems.base.service.impl;

import java.util.List;

import com.hw.common.core.text.Convert;
import com.hw.common.core.utils.DateUtils;
import com.hw.ems.base.domain.BaseTypeRelation;
import com.hw.ems.base.mapper.BaseTypeRelationMapper;
import com.hw.ems.base.service.IBaseTypeRelationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;


/**
 * 计量与类型对应关系Service业务层处理
 *
 * @author YinQ
 * @date 2023-04-07
 */
@Service
public class BaseTypeRelationServiceImpl implements IBaseTypeRelationService {
    @Autowired
    private BaseTypeRelationMapper baseTypeRelationMapper;

    /**
     * 查询计量与类型对应关系
     *
     * @param objid 计量与类型对应关系主键
     * @return 计量与类型对应关系
     */
    @Override
    //@DS("#header.poolName")
    public BaseTypeRelation selectBaseTypeRelationByObjid(Long objid) {
        return baseTypeRelationMapper.selectBaseTypeRelationByObjid(objid);
    }

    /**
     * 查询计量与类型对应关系列表
     *
     * @param baseTypeRelation 计量与类型对应关系
     * @return 计量与类型对应关系
     */
    @Override
    //@DS("#header.poolName")
//    @DataScope(deptAlias = "null")
    public List<BaseTypeRelation> selectBaseTypeRelationList(BaseTypeRelation baseTypeRelation) {
        return baseTypeRelationMapper.selectBaseTypeRelationList(baseTypeRelation);
    }

    /**
     * 新增计量与类型对应关系
     *
     * @param baseTypeRelation 计量与类型对应关系
     * @return 结果
     */
    @Override
    //@DS("#header.poolName")
    public int insertBaseTypeRelation(BaseTypeRelation baseTypeRelation) {
        baseTypeRelation.setCreateTime(DateUtils.getNowDate());
        return baseTypeRelationMapper.insertBaseTypeRelation(baseTypeRelation);
    }

    /**
     * 修改计量与类型对应关系
     *
     * @param baseTypeRelation 计量与类型对应关系
     * @return 结果
     */
    @Override
    //@DS("#header.poolName")
    public int updateBaseTypeRelation(BaseTypeRelation baseTypeRelation) {
        baseTypeRelation.setUpdateTime(DateUtils.getNowDate());
        return baseTypeRelationMapper.updateBaseTypeRelation(baseTypeRelation);
    }

    /**
     * 批量删除计量与类型对应关系
     *
     * @param objids 需要删除的计量与类型对应关系主键
     * @return 结果
     */
    @Override
    //@DS("#header.poolName")
    public int deleteBaseTypeRelationByObjids(String objids) {
        return baseTypeRelationMapper.deleteBaseTypeRelationByObjids(Convert.toStrArray(objids));
    }

    /**
     * 删除计量与类型对应关系信息
     *
     * @param objid 计量与类型对应关系主键
     * @return 结果
     */
    @Override
    //@DS("#header.poolName")
    public int deleteBaseTypeRelationByObjid(Long objid) {
        return baseTypeRelationMapper.deleteBaseTypeRelationByObjid(objid);
    }
}
