package com.dcs.hnyz.service.impl;

import java.util.List;
import com.dcs.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.dcs.hnyz.mapper.DcsGroupTaskMapper;
import com.dcs.hnyz.domain.DcsGroupTask;
import com.dcs.hnyz.service.IDcsGroupTaskService;

/**
 * 任务动作组Service业务层处理
 *
 * @author wuhb
 * @date 2025-08-04
 */
@Service
public class DcsGroupTaskServiceImpl implements IDcsGroupTaskService
{
    @Autowired
    private DcsGroupTaskMapper dcsGroupTaskMapper;

    /**
     * 查询任务动作组
     *
     * @param groupId 任务动作组主键
     * @return 任务动作组
     */
    @Override
    public DcsGroupTask selectDcsGroupTaskByGroupId(Long groupId)
    {
        return dcsGroupTaskMapper.selectDcsGroupTaskByGroupId(groupId);
    }

    /**
     * 查询任务动作组列表
     *
     * @param dcsGroupTask 任务动作组
     * @return 任务动作组
     */
    @Override
    public List<DcsGroupTask> selectDcsGroupTaskList(DcsGroupTask dcsGroupTask)
    {
        return dcsGroupTaskMapper.selectDcsGroupTaskList(dcsGroupTask);
    }

    /**
     * 新增任务动作组
     *
     * @param dcsGroupTask 任务动作组
     * @return 结果
     */
    @Override
    public int insertDcsGroupTask(DcsGroupTask dcsGroupTask)
    {
        dcsGroupTask.setCreateTime(DateUtils.getNowDate());
        return dcsGroupTaskMapper.insertDcsGroupTask(dcsGroupTask);
    }

    /**
     * 修改任务动作组
     *
     * @param dcsGroupTask 任务动作组
     * @return 结果
     */
    @Override
    public int updateDcsGroupTask(DcsGroupTask dcsGroupTask)
    {
        dcsGroupTask.setUpdateTime(DateUtils.getNowDate());
        return dcsGroupTaskMapper.updateDcsGroupTask(dcsGroupTask);
    }

    /**
     * 批量删除任务动作组
     *
     * @param groupIds 需要删除的任务动作组主键
     * @return 结果
     */
    @Override
    public int deleteDcsGroupTaskByGroupIds(Long[] groupIds)
    {
        return dcsGroupTaskMapper.deleteDcsGroupTaskByGroupIds(groupIds);
    }

    /**
     * 删除任务动作组信息
     *
     * @param groupId 任务动作组主键
     * @return 结果
     */
    @Override
    public int deleteDcsGroupTaskByGroupId(Long groupId)
    {
        return dcsGroupTaskMapper.deleteDcsGroupTaskByGroupId(groupId);
    }

    @Override
    public DcsGroupTask selectDcsGroupTaskByGroupCode(String groupCode) {
        return dcsGroupTaskMapper.selectDcsGroupTaskByGroupCode(groupCode);
    }
}
