From 5d1d54e83546ba9fc85c69b32287883d04f4a475 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 01 十一月 2024 18:56:13 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml | 680 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 623 insertions(+), 57 deletions(-) diff --git a/smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml b/smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml index 8dd64f2..1349cf4 100644 --- a/smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml @@ -1,69 +1,238 @@ <?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"> + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.smartor.mapper.PatArchiveMapper"> - - <resultMap type="PatArchive" id="PatArchiveResult"> - <result property="patid" column="patid" /> - <result property="name" column="name" /> - <result property="sex" column="sex" /> - <result property="iccardno" column="iccardno" /> - <result property="birthdate" column="birthdate" /> - <result property="age" column="age" /> - <result property="source" column="source" /> - <result property="archivetime" column="archivetime" /> - <result property="archiveby" column="archiveby" /> - <result property="telcode" column="telcode" /> - <result property="relativetelcode" column="relativetelcode" /> - <result property="iccardtype" column="iccardtype" /> - <result property="orgid" column="orgid" /> - <result property="openid" column="openid" /> - <result property="delFlag" column="del_flag" /> - <result property="updateBy" column="update_by" /> - <result property="updateTime" column="update_time" /> - <result property="createBy" column="create_by" /> - <result property="createTime" column="create_time" /> - <result property="isupload" column="isupload" /> - <result property="uploadTime" column="upload_time" /> + + <resultMap type="com.smartor.domain.PatArchive" id="PatArchiveResult"> + <result property="id" column="id"/> + <result property="patientno" column="patientno"/> + <result property="sourcefrom" column="sourcefrom"/> + <result property="notrequiredFlag" column="notrequired_flag"/> + <result property="notrequiredreason" column="notrequiredreason"/> + <result property="patidHis" column="patid_his"/> + <result property="sdFlag" column="sd_flag"/> + <result property="pattype" column="pattype"/> + <result property="viptype" column="viptype"/> + <result property="name" column="name"/> + <result property="sex" column="sex"/> + <result property="nation" column="nation"/> + <result property="nativePlace" column="native_place"/> + <result property="placeOfResidence" column="place_of_residence"/> + <result property="birthplace" column="birthplace"/> + <result property="idcardno" column="idcardno"/> + <result property="birthdate" column="birthdate"/> + <result property="age" column="age"/> + <result property="sourcefrom" column="sourcefrom"/> + <result property="archivetime" column="archivetime"/> + <result property="archiveby" column="archiveby"/> + <result property="telcode" column="telcode"/> + <result property="relativetelcode" column="relativetelcode"/> + <result property="idcardtype" column="idcardtype"/> + <result property="orgid" column="orgid"/> + <result property="openid" column="openid"/> + <result property="delFlag" column="del_flag"/> + <result property="dept" column="deptname"/> + <result property="deptcode" column="deptcode"/> + <result property="drcode" column="drcode"/> + <result property="drname" column="drname"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="isupload" column="isupload"/> + <result property="uploadTime" column="upload_time"/> + <result property="tag" column="tag"/> + <result property="pattype" column="pattype"/> + <result property="bedNo" column="bedno"/> + <result property="inhosptime" column="inhosptime"/> + <result property="ageUnit" column="age_unit"/> + <result property="leavehospitaldistrictname" column="leavehospitaldistrictname"/> + <result property="leavehospitaldistrictcode" column="leavehospitaldistrictcode"/> + </resultMap> + + + <resultMap type="com.smartor.domain.PatArchiveOthreInfo" id="PatArchiveOthreInfoResult"> + <result property="id" column="id"/> + <result property="notrequiredFlag" column="notrequired_flag"/> + <result property="notrequiredreason" column="notrequiredreason"/> + <result property="patientno" column="patientno"/> + <result property="sourcefrom" column="sourcefrom"/> + <result property="patidHis" column="patid_his"/> + <result property="sdFlag" column="sd_flag"/> + <result property="pattype" column="pattype"/> + <result property="viptype" column="viptype"/> + <result property="name" column="name"/> + <result property="sex" column="sex"/> + <result property="nation" column="nation"/> + <result property="nativePlace" column="native_place"/> + <result property="placeOfResidence" column="place_of_residence"/> + <result property="birthplace" column="birthplace"/> + <result property="idcardno" column="idcardno"/> + <result property="birthdate" column="birthdate"/> + <result property="age" column="age"/> + <result property="sourcefrom" column="sourcefrom"/> + <result property="archivetime" column="archivetime"/> + <result property="archiveby" column="archiveby"/> + <result property="telcode" column="telcode"/> + <result property="relativetelcode" column="relativetelcode"/> + <result property="idcardtype" column="idcardtype"/> + <result property="orgid" column="orgid"/> + <result property="openid" column="openid"/> + <result property="delFlag" column="del_flag"/> + <result property="dept" column="deptname"/> + <result property="deptcode" column="deptcode"/> + <result property="drcode" column="drcode"/> + <result property="drname" column="drname"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="isupload" column="isupload"/> + <result property="uploadTime" column="upload_time"/> + <result property="tag" column="tag"/> + <result property="pattype" column="pattype"/> + <result property="bedNo" column="bedno"/> + <result property="starttime" column="starttime"/> + <result property="endtime" column="endtime"/> + <result property="ageUnit" column="age_unit"/> + <result property="inhospno" column="inhospno"/> + <result property="nurseId" column="nurse_id"/> + <result property="nurseName" column="nurse_name"/> + <result property="outWayName" column="out_way_name"/> + <result property="outWayId" column="out_way_id"/> + <result property="leavehospitaldistrictname" column="leavehospitaldistrictname"/> + <result property="leavehospitaldistrictcode" column="leavehospitaldistrictcode"/> </resultMap> <sql id="selectPatArchiveVo"> - select patid, name, sex, iccardno, birthdate, age, source, archivetime, archiveby, telcode, relativetelcode, iccardtype, orgid, openid, del_flag, update_by, update_time, create_by, create_time, isupload, upload_time from pat_archive + select id, + notrequired_flag, + notrequiredreason, + patientno, + patid_his, + age_unit, + sd_flag, + name, + sex, + idcardno, + birthdate, + age, + nation, + native_place, + place_of_residence, + birthplace, + sourcefrom, + archivetime, + archiveby, + telcode, + relativetelcode, + idcardtype, + orgid, + openid, + del_flag, + update_by, + update_time, + create_by, + create_time, + isupload, + pattype, + viptype, + upload_time + from pat_archive </sql> - <select id="selectPatArchiveList" parameterType="PatArchive" resultMap="PatArchiveResult"> + <select id="selectPatArchiveList" parameterType="com.smartor.domain.PatArchive" resultMap="PatArchiveResult"> <include refid="selectPatArchiveVo"/> - <where> - <if test="name != null and name != ''"> and name like concat('%', #{name}, '%')</if> - <if test="iccardno != null and iccardno != ''"> and iccardno = #{iccardno}</if> - <if test="source != null "> and source = #{source}</if> - <if test="telcode != null and telcode != ''"> and telcode = #{telcode}</if> - <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if> - <if test="isupload != null "> and isupload = #{isupload}</if> - <if test="uploadTime != null "> and upload_time = #{uploadTime}</if> + <where> + del_flag=0 + <if test="name != null and name != ''">and name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and idcardno = #{idcardno}</if> + <if test="sourcefrom != null ">and sourcefrom = #{sourcefrom}</if> + <if test="telcode != null and telcode != ''">and telcode = #{telcode}</if> + <if test="orgid != null and orgid != ''">and orgid = #{orgid}</if> + <if test="id != null and id != ''">and id = #{id}</if> + <if test="isupload != null ">and isupload = #{isupload}</if> + <if test="uploadTime != null ">and upload_time = #{uploadTime}</if> + <if test="viptype != null ">and viptype = #{viptype}</if> + <if test="pattype != null ">and pattype = #{pattype}</if> + <if test="patientno != null ">and patientno = #{patientno}</if> + <if test="patidHis != null ">and patid_his = #{patidHis}</if> + <if test="sdFlag != null ">and sd_flag = #{sdFlag}</if> + <if test="ageUnit != null ">and age_unit = #{ageUnit}</if> + <if test="notrequiredFlag != null ">and notrequired_flag = #{notrequiredFlag}</if> + <if test="notrequiredreason != null ">and notrequiredreason = #{notrequiredreason}</if> </where> </select> - + + + <select id="patInfoByContion" parameterType="com.smartor.domain.PatArchiveReq" resultMap="PatArchiveResult"> + select + a.id, + a.age_unit, + a.notrequired_flag, + a.notrequiredreason, + a.patientno, + a.patid_his, + a.sd_flag, + a.name, + a.sex, + c.tagname as tag, + a.idcardtype, + a.idcardno, + a.age, + a.telcode, + a.create_time, + a.update_time, + a.viptype, + a.birthdate + from pat_archive a,pat_archivetag b ,base_tag c + <where> + a.del_flag=0 and + a.id = b.patid and b.tagid = c.tagid + <if test="name != null and name != ''">and a.name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and idcardno = #{idcardno}</if> + <if test="telcode != null and telcode != ''">and telcode = #{telcode}</if> + <if test="tagIds != null and tagIds != ''">and c.tagid in + <foreach collection="tagIds" item="tagId" open="(" separator="," close=")"> + #{tagId} + </foreach> + </if> + </where> + </select> + <select id="selectPatArchiveByPatid" parameterType="Long" resultMap="PatArchiveResult"> <include refid="selectPatArchiveVo"/> - where patid = #{patid} + where id = #{id} and del_flag=0 </select> - - <insert id="insertPatArchive" parameterType="PatArchive" useGeneratedKeys="true" keyProperty="patid"> + + <insert id="insertPatArchiveSingle" parameterType="com.smartor.domain.PatArchive" useGeneratedKeys="true" + keyProperty="id"> insert into pat_archive <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="patientno != null">patientno,</if> + <if test="patidHis != null">patid_his,</if> + <if test="sdFlag != null">sd_flag,</if> + <if test="pattype != null">pattype,</if> + <if test="viptype != null">viptype,</if> <if test="name != null">name,</if> <if test="sex != null">sex,</if> - <if test="iccardno != null">iccardno,</if> + <if test="nation != null">nation,</if> + <if test="nativePlace != null">native_place,</if> + <if test="placeOfResidence != null">place_of_residence,</if> + <if test="birthplace != null">birthplace,</if> + <if test="idcardno != null">idcardno,</if> + <if test="dduserid != null">dduserid,</if> + <if test="pid != null">pid,</if> + <if test="guid != null">guid,</if> <if test="birthdate != null">birthdate,</if> <if test="age != null">age,</if> - <if test="source != null">source,</if> + <if test="sourcefrom != null">sourcefrom,</if> <if test="archivetime != null">archivetime,</if> <if test="archiveby != null">archiveby,</if> <if test="telcode != null">telcode,</if> <if test="relativetelcode != null">relativetelcode,</if> - <if test="iccardtype != null">iccardtype,</if> + <if test="idcardtype != null">idcardtype,</if> <if test="orgid != null">orgid,</if> <if test="openid != null">openid,</if> <if test="delFlag != null and delFlag != ''">del_flag,</if> @@ -73,19 +242,34 @@ <if test="createTime != null">create_time,</if> <if test="isupload != null">isupload,</if> <if test="uploadTime != null">upload_time,</if> - </trim> + <if test="ageUnit != null">age_unit,</if> + <if test="notrequiredFlag != null ">notrequired_flag,</if> + <if test="notrequiredreason != null ">notrequiredreason,</if> + </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="patientno != null">#{patientno},</if> + <if test="patidHis != null">#{patidHis},</if> + <if test="sdFlag != null">#{sdFlag},</if> + <if test="pattype != null">#{pattype},</if> + <if test="viptype != null">#{>viptype},</if> <if test="name != null">#{name},</if> <if test="sex != null">#{sex},</if> - <if test="iccardno != null">#{iccardno},</if> + <if test="nation != null">#{nation},</if> + <if test="nativePlace != null">#{nativePlace},</if> + <if test="placeOfResidence != null">#{placeOfResidence},</if> + <if test="birthplace != null">#{birthplace},</if> + <if test="idcardno != null">#{idcardno},</if> + <if test="dduserid != null">#{dduserid},</if> + <if test="pid != null">#{pid},</if> + <if test="guid != null">#{guid},</if> <if test="birthdate != null">#{birthdate},</if> <if test="age != null">#{age},</if> - <if test="source != null">#{source},</if> + <if test="sourcefrom != null">#{sourcefrom},</if> <if test="archivetime != null">#{archivetime},</if> <if test="archiveby != null">#{archiveby},</if> <if test="telcode != null">#{telcode},</if> <if test="relativetelcode != null">#{relativetelcode},</if> - <if test="iccardtype != null">#{iccardtype},</if> + <if test="idcardtype != null">#{idcardtype},</if> <if test="orgid != null">#{orgid},</if> <if test="openid != null">#{openid},</if> <if test="delFlag != null and delFlag != ''">#{delFlag},</if> @@ -95,23 +279,40 @@ <if test="createTime != null">#{createTime},</if> <if test="isupload != null">#{isupload},</if> <if test="uploadTime != null">#{uploadTime},</if> - </trim> + <if test="ageUnit != null">#{ageUnit},</if> + <if test="notrequiredFlag != null ">#{notrequiredFlag},</if> + <if test="notrequiredreason != null ">#{notrequiredreason},</if> + </trim> </insert> - <update id="updatePatArchive" parameterType="PatArchive"> + <insert id="insertPatArchive"> + insert into + pat_archive(name,viptype,sex,idcardno,birthdate,place_of_residence,age,sourcefrom,archivetime,archiveby,telcode,relativetelcode,idcardtype,orgid,openid,dduserid,update_by,update_time + ,create_by,create_time,isupload,upload_time,pattype,nation,birthplace,native_place,patientno,patid_his,sd_flag,age_unit,notrequired_flag,notrequiredreason) + values + <foreach item="item" index="index" collection="list" separator=","> + (#{item.name},#{item.viptype},#{item.sex},#{item.idcardno},#{item.birthdate},#{item.placeOfResidence},#{item.age},#{item.sourcefrom},#{item.archivetime},#{item.archiveby} + ,#{item.telcode},#{item.archiveby},#{item.idcardtype},#{item.orgid},#{item.openid},#{item.dduserid},#{item.updateBy}, + #{item.updateTime},#{item.createBy},#{item.createTime},#{item.isupload},#{item.uploadTime},#{item.pattype},#{item.nation},#{item.birthplace},#{item.nativePlace},#{item.patientno},#{item.patidHis},#{item.sdFlag},#{item.ageUnit},#{item.notrequiredFlag},#{item.notrequiredreason} + </foreach> + </insert> + + <update id="updatePatArchive" parameterType="com.smartor.domain.PatArchive"> update pat_archive <trim prefix="SET" suffixOverrides=","> <if test="name != null">name = #{name},</if> <if test="sex != null">sex = #{sex},</if> - <if test="iccardno != null">iccardno = #{iccardno},</if> + <if test="idcardno != null">idcardno = #{idcardno},</if> <if test="birthdate != null">birthdate = #{birthdate},</if> + <if test="placeOfResidence != null">place_of_residence = #{placeOfResidence},</if> + <if test="birthplace != null">birthplace = #{birthplace},</if> <if test="age != null">age = #{age},</if> - <if test="source != null">source = #{source},</if> + <if test="sourcefrom != null">sourcefrom = #{sourcefrom},</if> <if test="archivetime != null">archivetime = #{archivetime},</if> <if test="archiveby != null">archiveby = #{archiveby},</if> <if test="telcode != null">telcode = #{telcode},</if> <if test="relativetelcode != null">relativetelcode = #{relativetelcode},</if> - <if test="iccardtype != null">iccardtype = #{iccardtype},</if> + <if test="idcardtype != null">idcardtype = #{idcardtype},</if> <if test="orgid != null">orgid = #{orgid},</if> <if test="openid != null">openid = #{openid},</if> <if test="delFlag != null and delFlag != ''">del_flag = #{delFlag},</if> @@ -121,18 +322,383 @@ <if test="createTime != null">create_time = #{createTime},</if> <if test="isupload != null">isupload = #{isupload},</if> <if test="uploadTime != null">upload_time = #{uploadTime},</if> + <if test="viptype != null">viptype = #{viptype},</if> + <if test="viptype != null">patientno = #{patientno},</if> + <if test="viptype != null">patid_his = #{patidHis},</if> + <if test="viptype != null">sd_flag = #{sdFlag},</if> + <if test="ageUnit != null">age_unit = #{ageUnit},</if> + <if test="notrequiredFlag != null ">notrequired_flag = #{notrequiredFlag},</if> + <if test="notrequiredreason != null ">notrequiredreason = #{notrequiredreason},</if> </trim> - where patid = #{patid} + where id = #{id} </update> <delete id="deletePatArchiveByPatid" parameterType="Long"> - delete from pat_archive where patid = #{patid} + delete + from pat_archive + where id = #{id} </delete> <delete id="deletePatArchiveByPatids" parameterType="String"> - delete from pat_archive where patid in - <foreach item="patid" collection="array" open="(" separator="," close=")"> - #{patid} + delete from pat_archive where id in + <foreach item="id" collection="array" open="(" separator="," close=")"> + #{id} </foreach> </delete> -</mapper> \ No newline at end of file + + <select id="selectPatArchiveInfoByAllhosp" parameterType="com.smartor.domain.PatArchiveReq" + resultMap="PatArchiveOthreInfoResult"> + + SELECT + a.id, + a.age_unit, + a.patid_his, + a.notrequired_flag, + a.notrequiredreason, + a.sd_flag, + a.patientno, + a.NAME, + a.sex, + a.nation, + a.native_place, + a.place_of_residence, + a.birthplace, + a.idcardno, + a.birthdate, + a.age, + a.sourcefrom, + a.archivetime, + a.archiveby, + a.telcode, + a.relativetelcode, + a.idcardtype, + a.orgid, + a.openid, + a.del_flag, + a.update_by, + a.update_time, + a.create_by, + a.create_time, + a.isupload, + a.upload_time, + a.viptype, + a.pattype, + b.tagname AS tag, + b.tagid AS tagid + FROM + pat_archive a + LEFT JOIN pat_archivetag b ON a.id = b.patid AND b.del_flag = 0 + <where> + a.del_flag = 0 + <if test="name != null and name != ''">and a.name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and a.idcardno = #{idcardno}</if> + <if test="notrequiredFlag != null and notrequiredFlag != ''">and a.notrequired_flag = #{notrequiredFlag} + </if> + <if test="pid != null and pid != ''">and a.id = #{pid}</if> + <if test="telcode != null and telcode != ''">and a.telcode = #{telcode}</if> + <if test="tagIds != null and tagIds != ''">and b.tagid in + <foreach collection="tagIds" item="tagId" open="(" separator="," close=")"> + #{tagId} + </foreach> + </if> + + </where> + order by a.update_time desc + </select> + + + <select id="selectPatArchiveInfoByInhosp" parameterType="com.smartor.domain.PatArchiveReq" + resultMap="PatArchiveOthreInfoResult"> + + select + a.id, + a.age_unit, + a.inhospno, + a.notrequired_flag, + a.notrequiredreason, + a.patid_his, + a.sd_flag, + a.patientno, + a.NAME, + d.deptname, + d.deptcode, + d.drcode, + d.drname, + a.sex, + a.nation, + a.native_place, + a.place_of_residence, + a.birthplace, + a.idcardno, + a.birthdate, + a.age, + a.sourcefrom, + a.archivetime, + a.archiveby, + a.telcode, + a.relativetelcode, + a.idcardtype, + a.orgid, + a.viptype, + a.openid, + a.del_flag, + a.update_by, + a.update_time, + a.create_by, + a.create_time, + a.isupload, + a.upload_time, + a.pattype, + d.bed_no, + d.starttime, + d.endtime, + d.nurse_name, + d.nurse_id, + d.endtime, + d.out_way_id, + d.leavehospitaldistrictname AS leavehospitaldistrictname, + d.leavehospitaldistrictcode AS leavehospitaldistrictcode, + t.tagname + FROM + pat_med_inhosp d + JOIN pat_archive a ON a.id = d.patid + LEFT JOIN ( SELECT patid, GROUP_CONCAT( tagname ) AS tagname FROM pat_archivetag GROUP BY patid ) t ON t.patid = + d.patid + <where> + d.del_flag != 1 + AND a.del_flag != 1 + <if test="name != null and name != ''">and a.name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and a.idcardno = #{idcardno}</if> + <if test="pid != null and pid != ''">and a.id = #{id}</if> + <if test="telcode != null and telcode != ''">and a.telcode = #{telcode}</if> + <if test="notrequiredFlag != null and notrequiredFlag != ''">and a.notrequired_flag = #{notrequiredFlag} + </if> + <if test="hospitalname != null and hospitalname != ''"> + AND d.hospitalname = #{hospitalname} + </if> + <if test="hospitaldistrictname != null and hospitaldistrictname != ''"> + AND d.hospitaldistrictname LIKE concat('%',#{hospitaldistrictname}, '%') + </if> + <if test="leaveicd10code != null and leaveicd10code != ''"> + AND d.leaveicd10code LIKE concat('%',#{leaveicd10code}, '%') + </if> + <if test="endtime != null"> + AND d.endtime = #{endtime} + </if> + <if test="visitno != null and visitno != ''"> + AND d.inhospno = #{visitno} + </if> + <if test="deptname != null and deptname != ''"> + and d.deptname LIKE concat('%', #{deptname}, '%') + </if> + <if test="drname != null and drname != ''"> + AND d.drname LIKE concat('%',#{drname}, '%') + </if> + <if test="diagname != null and diagname != ''"> + AND d.diagname LIKE concat('%',#{diagname}, '%') + </if> + <if test="deptname != null and deptname != ''"> + AND d.deptname LIKE concat('%',#{deptname}, '%') + </if> + <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size()>0"> + AND d.leavehospitaldistrictcode IN + <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator="," + close=")"> + #{leavehospitaldistrictcode} + </foreach> + </if> + <if test="leaveldeptcodes != null and leaveldeptcodes.size() > 0"> + AND d.leaveldeptcode IN + <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator="," + close=")"> + #{leaveldeptcode} + </foreach> + </if> + <if test="pids != null"> + AND a.id NOT IN + <foreach collection="pids" item="pid" open="(" separator="," close=")"> + #{pid} + </foreach> + </if> + <if test="isFilter == true"> + AND NOT exists ( SELECT 1 FROM pat_filterlist f where d.patid=f.patid) + </if> + </where> + order by a.update_time desc + </select> + + <select id="selectPatArchiveInfoByOuthosp" parameterType="com.smartor.domain.PatArchiveReq" + resultMap="PatArchiveOthreInfoResult"> + + select + a.id, + a.age_unit, + a.patid_his, + a.sd_flag, + a.patientno, + a.notrequired_flag, + a.notrequiredreason, + d.deptname, + d.deptcode, + d.drcode, + d.drname, + a.name, + a.sex, + a.nation, + a.native_place, + a.place_of_residence, + a.birthplace, + a.idcardno, + a.birthdate, + a.age, + a.viptype, + a.sourcefrom, + a.archivetime, + a.archiveby, + a.telcode, + a.relativetelcode, + a.idcardtype, + a.orgid, + a.openid, + a.del_flag, + a.update_by, + a.update_time, + a.create_by, + a.create_time, + a.isupload, + a.upload_time, + d.leavehospitaldistrictcode AS leavehospitaldistrictcode, + d.leavehospitaldistrictname AS leavehospitaldistrictname, + a.pattype + from pat_med_outhosp d JOIN pat_archive a ON a.id = d.patid + LEFT JOIN ( SELECT patid, GROUP_CONCAT( tagname ) AS tagname FROM pat_archivetag GROUP BY patid ) t ON t.patid = + d.patid + <where> + d.del_flag != 1 + AND a.del_flag != 1 + <if test="pid != null and pid != ''">and a.id = #{pid}</if> + <if test="name != null and name != ''">and a.name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and a.idcardno = #{idcardno}</if> + <if test="telcode != null and telcode != ''">and a.telcode = #{telcode}</if> + <if test="hospitaldistrictname != null and hospitaldistrictname != ''"> + AND d.hospitaldistrictname LIKE concat('%',#{hospitaldistrictname}, '%') + </if> + <if test="notrequiredFlag != null and notrequiredFlag != ''">and a.notrequired_flag = #{notrequiredFlag} + </if> + <if test="diagname != null and diagname != ''"> + AND d.diagname LIKE concat('%',#{diagname}, '%') + </if> + <if test="hospitalname != null and hospitalname != ''"> + AND d.hospitalname = #{hospitalname} + </if> + <if test="visitno != null and visitno != ''"> + AND d.outhospno = #{visitno} + </if> + <if test="deptname != null and deptname != ''"> + and d.deptname LIKE concat('%', #{deptname}, '%') + </if> + <if test="leavehospitaldistrictname != null and leavehospitaldistrictname != ''"> + and d.leavehospitaldistrictname LIKE concat('%', #{leavehospitaldistrictname}, '%') + </if> + <if test="drname != null and drname != ''"> + AND d.drname LIKE concat('%',#{drname}, '%') + </if> + <if test="pids != null"> + AND a.id NOT IN + <foreach collection="pids" item="pid" open="(" separator="," close=")"> + #{pid} + </foreach> + </if> + <if test="isFilter == true"> + AND NOT exists ( SELECT 1 FROM pat_filterlist f where d.patid=f.patid) + </if> + </where> + order by a.update_time desc + </select> + + <select id="selectPatArchiveInfoByPhysical" parameterType="com.smartor.domain.PatArchiveReq" + resultMap="PatArchiveOthreInfoResult"> + + select + a.id, + a.age_unit, + a.name, + a.notrequired_flag, + a.notrequiredreason, + a.patid_his, + a.sd_flag, + a.patientno, + a.sex, + d.deptname, + d.deptcode, + d.drcode, + d.drname, + a.nation, + a.native_place, + a.place_of_residence, + a.birthplace, + a.viptype, + a.idcardno, + a.birthdate, + a.age, + a.sourcefrom, + a.archivetime, + a.archiveby, + a.telcode, + a.relativetelcode, + a.idcardtype, + a.orgid, + a.openid, + a.del_flag, + a.update_by, + a.update_time, + a.create_by, + a.create_time, + a.isupload, + a.upload_time, + a.pattype + from pat_med_physical d JOIN pat_archive a ON a.id = d.patid + LEFT JOIN ( SELECT patid, GROUP_CONCAT( tagname ) AS tagname FROM pat_archivetag GROUP BY patid ) t ON t.patid = + d.patid + <where> + d.del_flag != 1 + AND a.del_flag != 1 + <if test="pid != null and pid != ''">and a.id = #{pid}</if> + <if test="name != null and name != ''">and a.name like concat('%', #{name}, '%')</if> + <if test="idcardno != null and idcardno != ''">and a.idcardno = #{idcardno}</if> + <if test="telcode != null and telcode != ''">and a.telcode = #{telcode}</if> + <if test="hospitaldistrictname != null and hospitaldistrictname != ''"> + AND d.hospitaldistrictname LIKE concat('%',#{hospitaldistrictname}, '%') + </if> + <if test="diagname != null and diagname != ''"> + AND d.diagname LIKE concat('%',#{diagname}, '%') + </if> + <if test="notrequiredFlag != null and notrequiredFlag != ''">and a.notrequired_flag = #{notrequiredFlag} + </if> + <if test="hospitalname != null and hospitalname != ''"> + AND d.hospitalname = #{hospitalname} + </if> + + <if test="visitno != null and visitno != ''"> + AND d.physno = #{visitno} + </if> + <if test="deptname != null and deptname != ''"> + and d.deptname LIKE concat('%', #{deptname}, '%') + </if> + <if test="drname != null and drname != ''"> + AND d.drname LIKE concat('%',#{drname}, '%') + </if> + <if test="pids != null"> + AND a.id NOT IN + <foreach collection="pids" item="pid" open="(" separator="," close=")"> + #{pid} + </foreach> + </if> + <if test="isFilter == true"> + AND NOT exists ( SELECT 1 FROM pat_filterlist f where d.patid=f.patid) + </if> + </where> + order by a.update_time desc + </select> + +</mapper> -- Gitblit v1.9.3