liusheng
2024-09-18 907641e56c2085aaa81f267946dc3e3e9fca73e7
smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml
@@ -8,6 +8,8 @@
        <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"/>
@@ -31,6 +33,9 @@
        <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"/>
@@ -41,12 +46,70 @@
        <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="leavehospitaldistrictname" column="leavehospitaldistrictname"/>
        <result property="leavehospitaldistrictcode" column="leavehospitaldistrictcode"/>
    </resultMap>
    <sql id="selectPatArchiveVo">
        select id,
               notrequired_flag,
               notrequiredreason,
               patientno,
               patid_his,
               age_unit,
               sd_flag,
               name,
               sex,
@@ -80,6 +143,7 @@
    <select id="selectPatArchiveList" parameterType="com.smartor.domain.PatArchive" resultMap="PatArchiveResult">
        <include refid="selectPatArchiveVo"/>
        <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>
@@ -93,6 +157,9 @@
            <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>
@@ -100,6 +167,9 @@
    <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,
@@ -170,6 +240,9 @@
            <if test="createTime != null">create_time,</if>
            <if test="isupload != null">isupload,</if>
            <if test="uploadTime != null">upload_time,</if>
            <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>
@@ -204,18 +277,21 @@
            <if test="createTime != null">#{createTime},</if>
            <if test="isupload != null">#{isupload},</if>
            <if test="uploadTime != null">#{uploadTime},</if>
            <if test="ageUnit != null">#{ageUnit},</if>
            <if test="notrequiredFlag != null ">#{notrequiredFlag},</if>
            <if test="notrequiredreason != null ">#{notrequiredreason},</if>
        </trim>
    </insert>
    <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)
        ,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.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>
@@ -249,6 +325,9 @@
            <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 id = #{id}
    </update>
@@ -267,11 +346,14 @@
    </delete>
    <select id="selectPatArchiveInfoByAllhosp" parameterType="com.smartor.domain.PatArchiveReq"
            resultMap="PatArchiveResult">
            resultMap="PatArchiveOthreInfoResult">
        SELECT
        a.id,
        a.age_unit,
        a.patid_his,
        a.notrequired_flag,
        a.notrequiredreason,
        a.sd_flag,
        a.patientno,
        a.NAME,
@@ -323,15 +405,22 @@
    <select id="selectPatArchiveInfoByInhosp" parameterType="com.smartor.domain.PatArchiveReq"
            resultMap="PatArchiveResult">
            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,
@@ -358,7 +447,13 @@
        a.upload_time,
        a.pattype,
        d.bed_no,
        d.starttime AS inhosptime,
        d.starttime,
        d.endtime,
        d.nurse_name,
        d.nurse_id,
        d.endtime,
        d.leavehospitaldistrictname AS leavehospitaldistrictname,
        d.leavehospitaldistrictcode AS leavehospitaldistrictcode,
        t.tagname
        FROM
        pat_med_inhosp d
@@ -400,6 +495,20 @@
            <if test="deptname != null and deptname != ''">
                AND d.deptname LIKE concat('%',#{deptname}, '%')
            </if>
            <if test="leavehospitaldistrictcodes != null">
                AND d.leavehospitaldistrictcode IN
                <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
                         close=")">
                    #{leavehospitaldistrictcode}
                </foreach>
            </if>
            <if test="leaveldeptcodes != null">
                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=")">
@@ -414,14 +523,20 @@
    </select>
    <select id="selectPatArchiveInfoByOuthosp" parameterType="com.smartor.domain.PatArchiveReq"
            resultMap="PatArchiveResult">
            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,
@@ -447,6 +562,8 @@
        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 =
@@ -473,6 +590,9 @@
            <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>
@@ -490,16 +610,22 @@
    </select>
    <select id="selectPatArchiveInfoByPhysical" parameterType="com.smartor.domain.PatArchiveReq"
            resultMap="PatArchiveResult">
            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,