package com.ruoyi.tms.service.impl; import java.util.List; import com.ruoyi.common.enums.SystemDataNoEnum; import com.ruoyi.common.utils.DateUtils; import javax.annotation.Resource; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.service.ISystemDataNoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.stereotype.Service; import org.springframework.scheduling.annotation.Async; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.ruoyi.common.utils.PageUtils; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.annotation.DataSource; import com.ruoyi.common.enums.DataSourceType; import com.ruoyi.common.core.service.BaseService; import com.ruoyi.tms.mapper.TmsDriverMapper; import com.ruoyi.tms.domain.TmsDriver; import com.ruoyi.tms.service.ITmsDriverService; import com.ruoyi.common.core.text.Convert; /** * 驾驶员信息Service业务层处理 * * @author ruoyi * @date 2025-11-03 */ @Service @Transactional(rollbackFor = Exception.class) public class TmsDriverServiceImpl extends BaseService implements ITmsDriverService { protected final Logger logger = LoggerFactory.getLogger(getClass()); @Resource private TmsDriverMapper tmsDriverMapper; @Autowired ISystemDataNoService systemDataNoService; /** * 查询驾驶员信息 * * @param id 驾驶员信息ID * @return 驾驶员信息 */ @DataSource(DataSourceType.SLAVE) @Override public TmsDriver selectTmsDriverById(Integer id) { return tmsDriverMapper.selectTmsDriverById(id); } /** * 查询驾驶员信息 记录数 * * @param tmsDriver 驾驶员信息 * @return 驾驶员信息集合 */ @DataSource(DataSourceType.SLAVE) @Override public int selectTmsDriverCount(TmsDriver tmsDriver) { return tmsDriverMapper.selectTmsDriverCount(tmsDriver); } /** * 查询驾驶员信息列表 * * @param tmsDriver 驾驶员信息 * @return 驾驶员信息 */ @DataSource(DataSourceType.SLAVE) @Override public List selectTmsDriverList(TmsDriver tmsDriver) { return tmsDriverMapper.selectTmsDriverList(tmsDriver); } /** * 查询驾驶员信息列表 异步 导出 * * @param tmsDriver 驾驶员信息 * @param exportKey 导出功能的唯一标识 * @return 驾驶员信息集合 */ @DataSource(DataSourceType.SLAVE) @Async @Override public void export(TmsDriver tmsDriver,String exportKey) { super.export(TmsDriver.class,exportKey,"tmsDriverData",(pageNum)->{ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE); return selectTmsDriverList(tmsDriver); }); } /** * 新增驾驶员信息 * * @param tmsDriver 驾驶员信息 * @return 结果 */ @Override public int insertTmsDriver(TmsDriver tmsDriver) { String noByKey = systemDataNoService.getNoByKey(SystemDataNoEnum.JSY); tmsDriver.setSystemCode(noByKey); tmsDriver.setCreateBy(SecurityUtils.getUsername()); tmsDriver.setCreateTime(DateUtils.getNowDate()); return tmsDriverMapper.insertTmsDriver(tmsDriver); } /** * 新增驾驶员信息[批量] * * @param tmsDrivers 驾驶员信息 * @return 结果 */ @Override public int insertTmsDriverBatch(List tmsDrivers) { int rows = tmsDriverMapper.insertTmsDriverBatch(tmsDrivers); return rows; } /** * 修改驾驶员信息 * * @param tmsDriver 驾驶员信息 * @return 结果 */ @Override public int updateTmsDriver(TmsDriver tmsDriver) { tmsDriver.setUpdateBy(SecurityUtils.getUsername()); tmsDriver.setUpdateTime(DateUtils.getNowDate()); return tmsDriverMapper.updateTmsDriver(tmsDriver); } /** * 修改驾驶员信息[批量] * * @param tmsDrivers 驾驶员信息 * @return 结果 */ @Override public int updateTmsDriverBatch(List tmsDrivers){ return tmsDriverMapper.updateTmsDriverBatch(tmsDrivers); } /** * 删除驾驶员信息对象 * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deleteTmsDriverByIds(String ids) { return deleteTmsDriverByIds(Convert.toIntArray(ids)); } /** * 删除驾驶员信息对象 * * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deleteTmsDriverByIds(Integer[] ids) { return tmsDriverMapper.deleteTmsDriverByIds(ids); } /** * 删除驾驶员信息信息 * * @param id 驾驶员信息ID * @return 结果 */ @Override public int deleteTmsDriverById(Integer id) { return tmsDriverMapper.deleteTmsDriverById(id); } }