package com.qmth.sop.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.sop.business.bean.result.FormWidgetMetadataResult;
import com.qmth.sop.business.entity.TDFormWidgetMetadata;
import com.qmth.sop.common.enums.TFCustomTypeEnum;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 动态表单元数据表 服务类
 * </p>
 *
 * @author wangliang
 * @since 2023-08-29
 */
public interface TDFormWidgetMetadataService extends IService<TDFormWidgetMetadata> {

    /**
     * 根据流程类型、版本号查询元数据
     *
     * @param type
     * @param version
     * @param tdFormWidgetMetadataSet
     * @return
     */
    Boolean selectMetadataExist(TFCustomTypeEnum type, Integer version, Set<TDFormWidgetMetadata> tdFormWidgetMetadataSet);

    /**
     * 查询所有sop元数据
     *
     * @param type
     * @return
     */
    List<FormWidgetMetadataResult> selectAll(TFCustomTypeEnum type);

    /**
     * 保存sop元数据
     *
     * @param tdFormWidgetMetadataList
     * @return
     */
    Boolean save(List<TDFormWidgetMetadata> tdFormWidgetMetadataList);
}
