package com.qaup.system.service.impl;

import java.util.List;
import com.qaup.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.qaup.system.mapper.SysDriverInfoMapper;
import com.qaup.system.domain.SysDriverInfo;
import com.qaup.system.service.ISysDriverInfoService;

/**
 * 驾驶员信息Service业务层处理
 * 
 * @author qaup
 * @date 2025-06-30
 */
@Service
public class SysDriverInfoServiceImpl implements ISysDriverInfoService 
{
    @Autowired
    private SysDriverInfoMapper sysDriverInfoMapper;

    /**
     * 查询驾驶员信息
     * 
     * @param userId 驾驶员信息主键
     * @return 驾驶员信息
     */
    @Override
    public SysDriverInfo selectSysDriverInfoByUserId(Long userId)
    {
        return sysDriverInfoMapper.selectSysDriverInfoByUserId(userId);
    }

    /**
     * 查询驾驶员信息列表
     * 
     * @param sysDriverInfo 驾驶员信息
     * @return 驾驶员信息
     */
    @Override
    public List<SysDriverInfo> selectSysDriverInfoList(SysDriverInfo sysDriverInfo)
    {
        return sysDriverInfoMapper.selectSysDriverInfoList(sysDriverInfo);
    }

    /**
     * 新增驾驶员信息
     * 
     * @param sysDriverInfo 驾驶员信息
     * @return 结果
     */
    @Override
    public int insertSysDriverInfo(SysDriverInfo sysDriverInfo)
    {
        sysDriverInfo.setCreateTime(DateUtils.getNowDate());
        return sysDriverInfoMapper.insertSysDriverInfo(sysDriverInfo);
    }

    /**
     * 修改驾驶员信息
     * 
     * @param sysDriverInfo 驾驶员信息
     * @return 结果
     */
    @Override
    public int updateSysDriverInfo(SysDriverInfo sysDriverInfo)
    {
        sysDriverInfo.setUpdateTime(DateUtils.getNowDate());
        return sysDriverInfoMapper.updateSysDriverInfo(sysDriverInfo);
    }

    /**
     * 批量删除驾驶员信息
     * 
     * @param userIds 需要删除的驾驶员信息主键
     * @return 结果
     */
    @Override
    public int deleteSysDriverInfoByUserIds(Long[] userIds)
    {
        return sysDriverInfoMapper.deleteSysDriverInfoByUserIds(userIds);
    }

    /**
     * 删除驾驶员信息信息
     * 
     * @param userId 驾驶员信息主键
     * @return 结果
     */
    @Override
    public int deleteSysDriverInfoByUserId(Long userId)
    {
        return sysDriverInfoMapper.deleteSysDriverInfoByUserId(userId);
    }
}
