package com.hotent.surveyinfo.manager;

import com.hotent.base.manager.BaseManager;
import com.hotent.surveyinfo.model.CostSurveyFdTemplateVersion;
import com.hotent.surveyinfo.model.CostSurveyTemplateVersion;

import java.util.List;

/**
 * 财务数据表版本 服务类
 *
 * @company 山西清众科技股份有限公司
 * @author 超级管理员
 * @since 2025-09-19
 */
public interface CostSurveyFdTemplateVersionManager extends BaseManager<CostSurveyFdTemplateVersion> {
	/**
	 * 根据主键获取详情
	 * @param id
	 * @return
	 */
	CostSurveyFdTemplateVersion getDetail(String id);
	/**
	 * 新建、更新财务数据表版本
	 * @param costSurveyTemplateVersion
	 * @return
	 */
	void createOrUpdate(CostSurveyFdTemplateVersion costSurveyTemplateVersion);

	List<CostSurveyFdTemplateVersion> selectAll();

	List<CostSurveyFdTemplateVersion> selectByStatus(String status);
	CostSurveyFdTemplateVersion selectCurrentVersion(String formName);

	List<CostSurveyFdTemplateVersion> getAllVersions() ;




	/**
	 * 根据survey_template_id查询所有版本数据
	 * @param surveyTemplateId 关联的财务数据表ID
	 * @return 版本列表
	 */
	List<CostSurveyFdTemplateVersion> selectBySurveyTemplateId(String surveyTemplateId);

	String selectMaxVersionByDate(String dateStr) ;
	String generateVersionNumber();

	/**
	 * 根据模板ID和状态查询版本数据
	 * @param surveyFdTemplateId 模板ID
	 * @param status 状态值
	 * @return 符合条件的版本列表
	 */
	List<CostSurveyFdTemplateVersion> selectByFdTemplateIdAndStatus(String surveyFdTemplateId, String status);

}
