package com.xinelu.manage.mapper.signpatientrecord;

import com.xinelu.manage.domain.signpatientrecord.SignPatientRecord;
import com.xinelu.manage.dto.signpatientrecord.SignPatientListDto;
import com.xinelu.manage.vo.signpatientrecord.IntentionalSignVo;
import com.xinelu.manage.vo.signpatientrecord.SignPatientInfoVo;
import com.xinelu.manage.vo.signpatientrecord.SignPatientListVo;
import com.xinelu.manage.vo.signpatientrecord.SignPatientRecordVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author haown
* @description 针对表【sign_patient_record(签约记录表)】的数据库操作Mapper
* @createDate 2024-02-28 15:05:17
* @Entity com.xinelu.manage.domain.SignPatientRecord
*/
public interface SignPatientRecordMapper {

    int deleteByPrimaryKey(Long id);

    int insert(SignPatientRecord record);

    int insertSelective(SignPatientRecord record);

    SignPatientRecord selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(SignPatientRecord record);

    int updateByPrimaryKey(SignPatientRecord record);

	List<SignPatientListVo> selectList(SignPatientListDto signPatientRecord);

	SignPatientInfoVo getByRecordId(Long id);

	List<SignPatientRecordVo> getByPatient(Long patientId);

	/**
	 * @description 查询意向签约
	 * @param id 签约记录表主键
	 * @return 意向签约详情
	 * @Author haown
	 * @Date 2024-08-08 11:00
	 */
	IntentionalSignVo getIntentionalSign(Long id);

    /**
     * 未审核
     *
     * @param routeCheckStatus 审核状态
     * @param serviceStatus    患者庄国泰
     * @return int
     */
    int selectCheckStatus(@Param("routeCheckStatus") String routeCheckStatus, @Param("serviceStatus") String serviceStatus);
}
