package com.xinelu.manage.mapper.patientinfoimportmain;

import com.xinelu.manage.domain.patientinfoimportmain.PatientInfoImportMain;
import com.xinelu.manage.vo.patientinfoimportmain.PatientInfoImportMainVO;

import java.util.List;

/**
 * 患者导入记录Mapper接口
 *
 * @author xinelu
 * @date 2024-11-29
 */
public interface PatientInfoImportMainMapper {
    /**
     * 查询患者导入记录
     *
     * @param id 患者导入记录主键
     * @return 患者导入记录
     */
    PatientInfoImportMain selectPatientInfoImportMainById(Long id);

    // @Select("SELECT p.sn,count( 1 ) AS patientcount,DATE_FORMAT( p.create_time, '%Y-%m-%d' ) AS createTime,p.create_by FROM patient_info_import p GROUP BY p.sn,DATE_FORMAT( p.create_time, '%Y-%m-%d' ),p.create_by")
    // @Select("select * from patient_info")
    // @DataSource(value =  DataSourceType.HKHIS)
    List<PatientInfoImportMainVO> GetPatientInfoImport(PatientInfoImportMainVO patientInfoImport2VO);



    /**
     * 查询患者导入记录列表
     *
     * @param patientInfoImportMain 患者导入记录
     * @return 患者导入记录集合
     */
    List<PatientInfoImportMain> selectPatientInfoImportMainList(PatientInfoImportMain patientInfoImportMain);

    /**
     * 新增患者导入记录
     *
     * @param patientInfoImportMain 患者导入记录
     * @return 结果
     */
    int insertPatientInfoImportMain(PatientInfoImportMain patientInfoImportMain);

    /**
     * 修改患者导入记录
     *
     * @param patientInfoImportMain 患者导入记录
     * @return 结果
     */
    int updatePatientInfoImportMain(PatientInfoImportMain patientInfoImportMain);

    /**
     * 删除患者导入记录
     *
     * @param id 患者导入记录主键
     * @return 结果
     */
    int deletePatientInfoImportMainById(Long id);

    /**
     * 批量删除患者导入记录
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deletePatientInfoImportMainByIds(Long[] ids);
}
