package com.panzhihua.service_community.dao;
|
|
import java.util.List;
|
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.panzhihua.common.model.dtos.vaccines.VaccinesInoculationByAdminDTO;
|
import com.panzhihua.common.model.vos.vaccines.ComMngVaccinesInoculationExcelVo;
|
import com.panzhihua.common.model.vos.vaccines.VaccinesInoculationByAdminVO;
|
import com.panzhihua.common.model.vos.vaccines.VaccinesUserInoculationByAppVO;
|
import com.panzhihua.service_community.model.dos.ComMngVaccinesInoculationRecordDO;
|
|
/**
|
* @auther lyq
|
* @create 2021-05-19 14:17:59
|
* @describe 疫苗接种记录表mapper类
|
*/
|
@Mapper
|
public interface ComMngVaccinesInoculationRecordDAO extends BaseMapper<ComMngVaccinesInoculationRecordDO> {
|
|
@Select("<script> "
|
+ "select id,vaccines,name,inoculation_at,vaccines_code,medical_institution,dosage from com_mng_vaccines_inoculation_record "
|
+ " where 1=1 and " + "<if test='ids != null and ids.size>0'>" + "(user_type = 2 and user_id in "
|
+ "<foreach item=\"item\" collection=\"ids\" separator=\",\" open=\"(\" close=\")\" index=\"\"> " + "#{item} "
|
+ "</foreach>" + " ) or " + " </if> " +
|
|
" (user_type = 1 and user_id = #{userId}) " + " order by inoculation_at desc " + " </script>")
|
List<VaccinesUserInoculationByAppVO> getUserInoculationListByApp(@Param("ids") List<Long> ids,
|
@Param("userId") Long userId);
|
|
@Select("<script> "
|
+ "select cmvir.id,cmvir.name,cmvir.sex,cmvir.age,cmvir.phone,cmvir.id_card,cmvir.inoculation_at,cmvir.dosage "
|
+ ",cmvir.medical_institution,cmvir.vaccines_code,cmvir.vaccines,cmvir.remark from com_mng_vaccines_inoculation_record as cmvir"
|
+ " <where>" + "<if test='inoculationByAdminDTO.communityId != null'>"
|
+ " and cmvir.community_id = ${inoculationByAdminDTO.communityId} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.name != null and inoculationByAdminDTO.name != ""'>"
|
+ " and cmvir.name like concat('%',#{inoculationByAdminDTO.name},'%') " + " </if> "
|
+ "<if test='inoculationByAdminDTO.dosage != null and inoculationByAdminDTO.dosage != ""'>"
|
+ " and cmvir.dosage = #{inoculationByAdminDTO.dosage} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.idCard != null and inoculationByAdminDTO.idCard != ""'>"
|
+ " and cmvir.id_card = #{inoculationByAdminDTO.idCard} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.phone != null and inoculationByAdminDTO.phone != ""'>"
|
+ " and cmvir.phone = #{inoculationByAdminDTO.phone} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.startTime != null and inoculationByAdminDTO.startTime != ""'>\n"
|
+ " AND cmvir.inoculation_at <![CDATA[>=]]> #{inoculationByAdminDTO.startTime} \n" + "</if>"
|
+ "<if test='inoculationByAdminDTO.endTime != null and inoculationByAdminDTO.endTime != ""'>\n"
|
+ " AND cmvir.inoculation_at <![CDATA[<=]]> #{inoculationByAdminDTO.endTime} " + " </if> \n" + " </where>"
|
+ " order by inoculation_at desc " + " </script>")
|
IPage<VaccinesInoculationByAdminVO> getVaccinesInoculationListByAdmin(Page page,
|
@Param("inoculationByAdminDTO") VaccinesInoculationByAdminDTO inoculationByAdminDTO);
|
|
@Select("<script> "
|
+ "select cmvir.name,cmvir.sex,cmvir.age,cmvir.phone,cmvir.id_card,cmvir.inoculation_at,cmvir.dosage "
|
+ ",cmvir.medical_institution,cmvir.vaccines_code,cmvir.vaccines,cmvir.remark from com_mng_vaccines_inoculation_record as cmvir"
|
+ " <where>" + "<if test='inoculationByAdminDTO.communityId != null'>"
|
+ " and cmvir.community_id = ${inoculationByAdminDTO.communityId} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.ids != null and inoculationByAdminDTO.ids.size > 0'>" + " and cmvir.id in "
|
+ "<foreach item=\"item\" collection=\"inoculationByAdminDTO.ids\" separator=\",\" open=\"(\" close=\")\" index=\"\"> \n"
|
+ "#{item}" + "</foreach>" + " </if> "
|
+ "<if test='inoculationByAdminDTO.name != null and inoculationByAdminDTO.name != ""'>"
|
+ " and cmvir.name like concat('%',#{inoculationByAdminDTO.name},'%') " + " </if> "
|
+ "<if test='inoculationByAdminDTO.dosage != null and inoculationByAdminDTO.dosage != ""'>"
|
+ " and cmvir.dosage = #{inoculationByAdminDTO.dosage} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.idCard != null and inoculationByAdminDTO.idCard != ""'>"
|
+ " and cmvir.id_card = #{inoculationByAdminDTO.idCard} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.phone != null and inoculationByAdminDTO.phone != ""'>"
|
+ " and cmvir.phone = #{inoculationByAdminDTO.phone} " + " </if> "
|
+ "<if test='inoculationByAdminDTO.startTime != null and inoculationByAdminDTO.startTime != ""'>\n"
|
+ " AND cmvir.inoculation_at <![CDATA[>=]]> #{inoculationByAdminDTO.startTime} \n" + "</if>"
|
+ "<if test='inoculationByAdminDTO.endTime != null and inoculationByAdminDTO.endTime != "" '>\n"
|
+ " AND cmvir.inoculation_at <![CDATA[<=]]> #{inoculationByAdminDTO.endTime} " + " </if> \n" + " </where>"
|
+ " order by inoculation_at desc " + " </script>")
|
List<ComMngVaccinesInoculationExcelVo> exportVaccinesInoculationListByAdmin(
|
@Param("inoculationByAdminDTO") VaccinesInoculationByAdminDTO inoculationByAdminDTO);
|
}
|