package com.hxhq.business.service;

import java.util.List;
import com.hxhq.business.domain.StudyFormPlan;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxhq.business.dto.study.StudyFormPlanListDto;
import com.hxhq.business.form.study.StudyFormUpdateForm;
import com.hxhq.business.form.study.StudyFormPlanSearchForm;

/**
 * 试验-配置计划Service接口
 *
 * @author hxhq
 * @date 2025-12-29
 */
public interface IStudyFormPlanService extends IService<StudyFormPlan>
{
    /**
     * 查询试验-填报单列表
     *
     * @param form 试验-填报单
     * @return 试验-填报单集合
     */
    public List<StudyFormPlanListDto> queryList(StudyFormPlanSearchForm form);

    /**
     * 详情
     *
     * @param id
     * @return 详情
     */
    public StudyFormPlan queryInfo(Long id);


    /**
     * 更换归属人
     * @param studyFormPlan
     */
    public void ghgsr(StudyFormPlan studyFormPlan);

    /**
     * 保存
     * @param studyFormPlan
     */
    public StudyFormPlan bc(StudyFormPlan studyFormPlan);

    /**
     * 仅保存
     * @param studyFormPlan
     */
    public StudyFormPlan bcOnly(StudyFormPlan studyFormPlan);


    /**
     * 提交
     * @param studyFormPlan
     */
    public void tj(StudyFormPlan studyFormPlan);

    /**
     * 复核通过
     * @param studyFormPlan
     */
    public void fhtg(StudyFormPlan studyFormPlan);


    /**
     * 复核拒绝
     * @param studyFormPlan
     */
    public void fhjj(StudyFormPlan studyFormPlan);

    /**
     * 审阅
     * @param studyFormPlan
     */
    public void sy(StudyFormPlan studyFormPlan);

    /**
     * 更新表单内容
     */
    public void updateBdnr(StudyFormUpdateForm form);

    /**
     * 更新复核意见
     */
    public void updateFhyjjl(StudyFormUpdateForm form);

    /**
     * 更新字段勾选记录
     */
    public void updateZdgxjl(StudyFormUpdateForm form);

}
