package com.hxhq.business.service;

import java.util.Date;
import java.util.List;
import java.util.Map;

import com.hxhq.business.domain.*;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxhq.system.api.domain.SysUser;

/**
 * 试验-填报单-稽查轨迹Service接口
 *
 * @author hxhq
 * @date 2025-12-31
 */
public interface IStudyFormFillJcgjService extends IService<StudyFormFillJcgj>
{

    /**
     * 轨迹列表
     * @param studyFormFillJcgj
     * @return
     */
    public List<StudyFormFillJcgj> queryList(StudyFormFillJcgj studyFormFillJcgj);


    /**
     * 批量保存稽查轨迹-并保留日志
     * @param jcgjList
     */
    void saveBatchWithLog(List<StudyFormFillJcgj> jcgjList);


    /**
     * 新增稽查轨迹
     * @param studyFormFill 表单
     * @param jcgjlx 稽查轨迹类型:1:流程；3：编辑
     * @param jcmc 稽查名称
     * @param jcmcys 稽查名称颜色：1：蓝色；3：红色；5：绿色；7：橙色
     * @param jcnr 稽查内容
     * @param qmr 签名人
     * @param remark 备注
     * @param time 时间
     * @return
     */
    public  void saveJcgj(StudyFormFill studyFormFill, Integer jcgjlx, String jcmc, Integer jcmcys, Map<String, String> jcnr, SysUser qmr, String remark, Date time);

    /**
     * 新增稽查轨迹
     * @param studyFormFill 表单
     * @param jcgjlx 稽查轨迹类型:1:流程；3：编辑
     * @param jcmc 稽查名称
     * @param jcmcys 稽查名称颜色：1：蓝色；3：红色；5：绿色；7：橙色
     * @param jcnr 稽查内容
     * @param qmr 签名人
     * @param remark 备注
     * @return
     */
    public StudyFormFillJcgj getJcgj(Date time,StudyFormFill studyFormFill, Integer jcgjlx, String jcmc, Integer jcmcys, Map<String, String>  jcnr, SysUser qmr, String remark);

    /**
     * 新增稽查轨迹
     * @param studyFormFill 表单
     * @param jcgjlx 稽查轨迹类型:1:流程；3：编辑
     * @param jcmc 稽查名称
     * @param jcmcys 稽查名称颜色：1：蓝色；3：红色；5：绿色；7：橙色
     * @param jcnr 稽查内容
     * @param jcnrEn 稽查内容英文
     * @param qmr 签名人
     * @param remark 备注
     * @return
     */
    public  StudyFormFillJcgj getJcgj(Date time,StudyFormFill studyFormFill, Integer jcgjlx, String jcmc, Integer jcmcys, String jcnr, String jcnrEn,  SysUser qmr, String remark);

}
