package com.ruoyi.web.work.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.web.work.domain.Position;
import com.ruoyi.web.work.domain.dto.PositionDto;
import com.ruoyi.web.work.domain.dto.PositionQueryDto;
import com.ruoyi.web.work.domain.dto.PositionStateDto;
import com.ruoyi.web.work.domain.vo.PositionListVo;

import java.util.List;

/**
 * @author lsw
 * @date 2024-06-07
 */
public interface IPositionService extends IService<Position> {
    List<Position> selectList(Position position);

    List<Position> manageList(Position position);

    List<PositionListVo> indexList(PositionQueryDto dto);

    /**
     * 职位详情
     *
     * @param id
     * @return
     */
    AjaxResult detail(Long id);

    /**
     * 发布职位
     *
     * @param dto
     * @return
     */
    AjaxResult manageAdd(PositionDto dto);

    /**
     * 编辑职位
     *
     * @param dto
     * @return
     */
    AjaxResult manageEdit(PositionDto dto);

    /**
     * 管理职位详情
     *
     * @param id
     * @return
     */
    AjaxResult manageDetail(Long id);

    /**
     * 删除职位
     *
     * @param id
     * @return
     */
    AjaxResult manageRemove(Long id);

    /**
     * 职位关闭或启用
     *
     * @param dto
     * @return
     */
    AjaxResult manageState(PositionStateDto dto);
}
