package com.ads.business.service;

import com.ads.business.entity.Doc;
import com.ads.business.service.model.request.DocListRequest;
import com.ads.business.service.model.request.DocRequest;
import com.ads.business.service.model.response.DocResponse;
import com.ads.common.data.JsonResult;
import com.baomidou.mybatisplus.extension.service.IService;

import javax.servlet.http.HttpServletRequest;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author hou
 * @since 2021-10-21
 */
public interface DocService extends IService<Doc> {

    /**
     * 新增文件信息
     *
     * @param inData 新增文件参数信息
     * @return 新增结果信息
     */
    String addDoc(DocRequest inData);

    /**
     * 编辑文件信息
     *
     * @param inData 编辑文件参数信息
     * @return 编辑结果信息
     */
    String updateDoc(DocRequest inData);

    /**
     * 获取文件信息
     *
     * @param docId 文件ID
     * @return 返回文件结果
     */
    DocResponse detail(Long docId);

    /**
     * 获取文件信息
     *
     * @param docId 文件ID
     * @return 返回文件结果
     */
    JsonResult pdfDetail(HttpServletRequest request, Long docId, String userNo);

    /**
     * 状态开关
     *
     * @param id     文件ID
     * @param status 文件状态
     * @return
     */
    JsonResult updateSwitch(Long id, Integer status);

    /**
     * 获取文件列表信息
     *
     * @param request 列表查询参数信息
     * @param type    1 移动端
     * @return 文件参数结果信息
     */
    JsonResult docList(DocListRequest request, Integer type);
}
