package com.vetti.hotake.service.impl;

import java.util.List;

import com.vetti.common.core.service.BaseServiceImpl;
import com.vetti.common.enums.FillTypeEnum;
import com.vetti.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.vetti.hotake.mapper.HotakeRolesApplyOperRecordMapper;
import com.vetti.hotake.domain.HotakeRolesApplyOperRecord;
import com.vetti.hotake.service.IHotakeRolesApplyOperRecordService;

/**
 * 岗位申请操作信息Service业务层处理
 * 
 * @author wangxiangshun
 * @date 2026-01-18
 */
@SuppressWarnings("all")
@Service
public class HotakeRolesApplyOperRecordServiceImpl extends BaseServiceImpl implements IHotakeRolesApplyOperRecordService
{
    @Autowired
    private HotakeRolesApplyOperRecordMapper hotakeRolesApplyOperRecordMapper;

    /**
     * 查询岗位申请操作信息
     * 
     * @param id 岗位申请操作信息主键
     * @return 岗位申请操作信息
     */
    @Transactional(readOnly = true)
    @Override
    public HotakeRolesApplyOperRecord selectHotakeRolesApplyOperRecordById(Long id)
    {
        return hotakeRolesApplyOperRecordMapper.selectHotakeRolesApplyOperRecordById(id);
    }

    /**
     * 查询岗位申请操作信息列表
     * 
     * @param hotakeRolesApplyOperRecord 岗位申请操作信息
     * @return 岗位申请操作信息
     */
    @Transactional(readOnly = true)
    @Override
    public List<HotakeRolesApplyOperRecord> selectHotakeRolesApplyOperRecordList(HotakeRolesApplyOperRecord hotakeRolesApplyOperRecord)
    {
        return hotakeRolesApplyOperRecordMapper.selectHotakeRolesApplyOperRecordList(hotakeRolesApplyOperRecord);
    }

    /**
     * 新增岗位申请操作信息
     * 
     * @param hotakeRolesApplyOperRecord 岗位申请操作信息
     * @return 结果
     */
    @Transactional(rollbackFor=Exception.class)
    @Override
    public int insertHotakeRolesApplyOperRecord(HotakeRolesApplyOperRecord hotakeRolesApplyOperRecord)
    {
        fill(FillTypeEnum.INSERT.getCode(), hotakeRolesApplyOperRecord);
        return hotakeRolesApplyOperRecordMapper.insertHotakeRolesApplyOperRecord(hotakeRolesApplyOperRecord);
    }

    /**
     * 修改岗位申请操作信息
     * 
     * @param hotakeRolesApplyOperRecord 岗位申请操作信息
     * @return 结果
     */
    @Transactional(rollbackFor=Exception.class)
    @Override
    public int updateHotakeRolesApplyOperRecord(HotakeRolesApplyOperRecord hotakeRolesApplyOperRecord)
    {
        fill(FillTypeEnum.UPDATE.getCode(), hotakeRolesApplyOperRecord);
        return hotakeRolesApplyOperRecordMapper.updateHotakeRolesApplyOperRecord(hotakeRolesApplyOperRecord);
    }

    /**
     * 批量删除岗位申请操作信息
     * 
     * @param ids 需要删除的岗位申请操作信息主键
     * @return 结果
     */
    @Transactional(rollbackFor=Exception.class)
    @Override
    public int deleteHotakeRolesApplyOperRecordByIds(Long[] ids)
    {
        return hotakeRolesApplyOperRecordMapper.deleteHotakeRolesApplyOperRecordByIds(ids);
    }

    /**
     * 删除岗位申请操作信息信息
     * 
     * @param id 岗位申请操作信息主键
     * @return 结果
     */
    @Transactional(rollbackFor=Exception.class)
    @Override
    public int deleteHotakeRolesApplyOperRecordById(Long id)
    {
        return hotakeRolesApplyOperRecordMapper.deleteHotakeRolesApplyOperRecordById(id);
    }
    /**
     * 批量新增岗位申请操作信息
     *
     * @param hotakeRolesApplyOperRecordList 岗位申请操作信息列表
     * @return 结果
     */
    @Transactional(rollbackFor=Exception.class)
    @Override
    public int batchInsertHotakeRolesApplyOperRecord(List<HotakeRolesApplyOperRecord> hotakeRolesApplyOperRecordList){
        return hotakeRolesApplyOperRecordMapper.batchInsertHotakeRolesApplyOperRecord(hotakeRolesApplyOperRecordList);
    }
}
