榆山党群e事通管理微服务模块
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

96 lines
3.7 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.vaccine.vim.dao.VaccinationErrorDao">
<resultMap type="com.elink.esua.epdc.vaccine.vim.dto.VaccinationErrorDTO" id="vaccinationErrorMap">
<result property="id" column="ID"/>
<result property="realName" column="REAL_NAME"/>
<result property="identityNo" column="IDENTITY_NO"/>
<result property="mobile" column="MOBILE"/>
<result property="sex" column="SEX"/>
<result property="county" column="COUNTY"/>
<result property="street" column="STREET"/>
<result property="streetId" column="STREET_ID"/>
<result property="community" column="COMMUNITY"/>
<result property="grid" column="GRID"/>
<result property="villageName" column="VILLAGE_NAME"/>
<result property="dwellingPlace" column="DWELLING_PLACE"/>
<result property="vaccinationTime" column="VACCINATION_TIME"/>
<result property="age" column="AGE"/>
<result property="dose" column="DOSE"/>
<result property="vaccineId" column="VACCINE_ID"/>
<result property="companyId" column="COMPANY_ID"/>
<result property="siteId" column="SITE_ID"/>
<result property="batchNo" column="BATCH_NO"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="errorInfo" column="ERROR_INFO"/>
<result property="insertNo" column="INSERT_NO"/>
</resultMap>
<select id="getMaxInsertNo" resultType="java.lang.Integer">
select (IFNULL(MAX(ee.INSERT_NO),0) + 1) as insertNo from vaccination_error ee where ee.DEL_FLAG = 0
</select>
<select id="getErrorInfoByMax" resultType="com.elink.esua.epdc.vaccine.vim.dto.VaccinationErrorDTO">
SELECT
e.id,
e.REAL_NAME,
e.IDENTITY_NO,
e.MOBILE,
e.COUNTY,
e.STREET,
e.COMMUNITY,
e.GRID,
e.VILLAGE_NAME,
e.DWELLING_PLACE,
e.VACCINATION_TIME,
e.DOSE,
e.BATCH_NO,
e.ERROR_INFO,
IFNULL(
vt.VACCINE_NAME,
e.VACCINE_NAME
) AS VACCINE_NAME,
IFNULL(
vc.COMPANY_NAME,
e.COMPANY_NAME
) AS COMPANY_NAME,
IFNULL(vs.SITE_NAME, e.SITE_NAME) AS SITE_NAME,
CASE
WHEN e.sex = 0 THEN
'男'
WHEN e.sex = 1 THEN
'女'
END AS sex
FROM
vaccination_error e
LEFT JOIN vaccine_type vt ON vt.id = e.VACCINE_ID
AND vt.DEL_FLAG = '0'
LEFT JOIN vaccine_company vc ON vc.id = e.COMPANY_ID
AND vc.DEL_FLAG = '0'
LEFT JOIN vaccination_site vs ON vs.id = e.SITE_ID
AND vs.DEL_FLAG = '0'
WHERE
e.INSERT_NO = (
SELECT
IFNULL(MAX(ee.INSERT_NO), 0)
FROM
vaccination_error ee
WHERE
ee.DEL_FLAG = 0
<if test="createdBy != null and createdBy != ''">
AND ee.CREATED_BY = #{createdBy}
</if>
)
AND e.DEL_FLAG = 0
<if test="createdBy != null and createdBy != ''">
AND e.CREATED_BY = #{createdBy}
</if>
</select>
</mapper>