package top.continew.admin.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import top.continew.admin.business.model.entity.DeptModelDO;
import top.continew.admin.business.model.query.ModelQuery;
import top.continew.admin.business.model.req.DeptModelReq;
import top.continew.admin.business.model.resp.ModelResp;
import top.continew.starter.extension.crud.model.query.PageQuery;
import top.continew.starter.extension.crud.model.resp.PageResp;

import java.util.List;

/**
 * @author 张波
 * @since 2024/10/20 14:42
 */
public interface DeptModelService extends IService<DeptModelDO> {

    /**
     * 部门与模型绑定
     *
     * @param req 请求参数
     */
    void bind(DeptModelReq req);

    /**
     * 获取用户所在部门可见模型
     *
     * @param query     查询条件
     * @param pageQuery 分页条件
     * @return 用户所在部门可见模型
     */
    PageResp<ModelResp> getModels(ModelQuery query, PageQuery pageQuery);

    /**
     * 获取部门绑定的操作平台列表
     *
     * @param deptId 部门ID
     * @return 操作平台列表
     */
    List<Integer> getModelByDept(Long deptId);
}
