package com.ruoyi.tms.service.impl; import java.util.List; import com.ruoyi.common.utils.DateUtils; import javax.annotation.Resource; import com.ruoyi.common.utils.SecurityUtils; 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.TmsProjectMapper; import com.ruoyi.tms.domain.TmsProject; import com.ruoyi.tms.service.ITmsProjectService; import com.ruoyi.common.core.text.Convert; /** * 项目管理Service业务层处理 * * @author ruoyi * @date 2025-11-04 */ @Service @Transactional(rollbackFor = Exception.class) public class TmsProjectServiceImpl extends BaseService implements ITmsProjectService { protected final Logger logger = LoggerFactory.getLogger(getClass()); @Resource private TmsProjectMapper tmsProjectMapper; /** * 查询项目管理 * * @param id 项目管理ID * @return 项目管理 */ @DataSource(DataSourceType.SLAVE) @Override public TmsProject selectTmsProjectById(Integer id) { return tmsProjectMapper.selectTmsProjectById(id); } /** * 查询项目管理 记录数 * * @param tmsProject 项目管理 * @return 项目管理集合 */ @DataSource(DataSourceType.SLAVE) @Override public int selectTmsProjectCount(TmsProject tmsProject) { return tmsProjectMapper.selectTmsProjectCount(tmsProject); } /** * 查询项目管理列表 * * @param tmsProject 项目管理 * @return 项目管理 */ @DataSource(DataSourceType.SLAVE) @Override public List selectTmsProjectList(TmsProject tmsProject) { return tmsProjectMapper.selectTmsProjectList(tmsProject); } /** * 查询项目管理列表 异步 导出 * * @param tmsProject 项目管理 * @param exportKey 导出功能的唯一标识 * @return 项目管理集合 */ @DataSource(DataSourceType.SLAVE) @Async @Override public void export(TmsProject tmsProject,String exportKey) { super.export(TmsProject.class,exportKey,"tmsProjectData",(pageNum)->{ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE); return selectTmsProjectList(tmsProject); }); } /** * 新增项目管理 * * @param tmsProject 项目管理 * @return 结果 */ @Override public int insertTmsProject(TmsProject tmsProject) { tmsProject.setCreateBy(SecurityUtils.getUsername()); tmsProject.setCreateTime(DateUtils.getNowDate()); return tmsProjectMapper.insertTmsProject(tmsProject); } /** * 新增项目管理[批量] * * @param tmsProjects 项目管理 * @return 结果 */ @Override public int insertTmsProjectBatch(List tmsProjects) { int rows = tmsProjectMapper.insertTmsProjectBatch(tmsProjects); return rows; } /** * 修改项目管理 * * @param tmsProject 项目管理 * @return 结果 */ @Override public int updateTmsProject(TmsProject tmsProject) { tmsProject.setUpdateBy(SecurityUtils.getUsername()); tmsProject.setUpdateTime(DateUtils.getNowDate()); return tmsProjectMapper.updateTmsProject(tmsProject); } /** * 修改项目管理[批量] * * @param tmsProjects 项目管理 * @return 结果 */ @Override public int updateTmsProjectBatch(List tmsProjects){ return tmsProjectMapper.updateTmsProjectBatch(tmsProjects); } /** * 删除项目管理对象 * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deleteTmsProjectByIds(String ids) { return deleteTmsProjectByIds(Convert.toIntArray(ids)); } /** * 删除项目管理对象 * * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deleteTmsProjectByIds(Integer[] ids) { return tmsProjectMapper.deleteTmsProjectByIds(ids); } /** * 删除项目管理信息 * * @param id 项目管理ID * @return 结果 */ @Override public int deleteTmsProjectById(Integer id) { return tmsProjectMapper.deleteTmsProjectById(id); } }