package cn.hnthyy.thmz.service.his.mz;

import cn.hnthyy.thmz.entity.MzException;
import cn.hnthyy.thmz.entity.thmz.TCommonParams;

import java.util.List;

public interface TCommonParamsService {
    /**
     * 新增通用参数
     *
     * @param tCommonParams
     * @return
     */
    int saveTCommonParams(TCommonParams tCommonParams);

    /**
     * 根据id查询
     *
     * @param id
     * @return
     */
    TCommonParams queryById(Long id);


    /**
     * 根据参数名和参数类型以及创建人id查询
     *
     * @param commonParams
     * @param paramsType
     * @param createIdCode
     * @return
     */
    TCommonParams queryByParamsName(String commonParams, Integer paramsType, String createIdCode);

    /**
     * 根据参数类型查询参数列表
     *
     * @param paramsType
     * @param createIdCode
     * @return
     */
    List<TCommonParams> queryTCommonParamsByParamsType(Integer paramsType, String createIdCode);


    /**
     * 根据参数类型查询参数列表
     *
     * @param paramsType
     * @param commonParams
     * @param createIdCode
     * @return
     */
    List<TCommonParams> queryTCommonParamsByParamsType(Integer paramsType, String commonParams, String createIdCode);

    /**
     * 根据参数名和参数类型,数据条数以及创建人id查询
     *
     * @param commonParams
     * @param paramsType
     * @param createIdCode
     * @param pageSize
     * @return
     */
    List<TCommonParams> queryTCommonParamsByParamsType(String commonParams, Integer paramsType, Integer pageSize, String createIdCode);

    /**
     * 更新用户信息
     *
     * @param tCommonParams
     * @return
     */
    int modifyTCommonParams(TCommonParams tCommonParams);

    /**
     * 初始化门诊诊断
     *
     * @return
     */
    int initDiagnose();


    /**
     * 初始化门诊主诉记录
     *
     * @return
     */
    int initEmrChiefComplaint() throws MzException;


    /**
     * 初始化门诊主诉记录
     *
     * @return
     */
    int initEmrHpi() throws MzException;

    /**
     * 初始化门诊既往史记录
     *
     * @return
     */
    int initEmrPs() throws MzException;
}
