liusheng
2025-04-02 ae086bc3ad6f785e6368b84e57a7e199c675779b
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -60,11 +60,26 @@
        <result property="operator" column="operator"/>
        <result property="operatorId" column="operator_id"/>
        <result property="remark" column="remark"/>
        <result property="tagname" column="tagname"/>
        <result property="fuflag" column="fuflag"/>
        <result property="fudate" column="fudate"/>
        <result property="fuperiod" column="fuperiod"/>
        <result property="futypecode" column="futypecode"/>
        <result property="futypedesc" column="futypedesc"/>
        <result property="fuadvice" column="fuadvice"/>
        <result property="fuspecialadvice" column="fuspecialadvice"/>
    </resultMap>
    <sql id="selectPatMedInhospVo">
        select inhospid,
               patname,
               fuflag,
               fudate,
               fuperiod,
               futypecode,
               futypedesc,
               fuadvice,
               fuspecialadvice,
               remark,
               guid,
               operator,
@@ -122,10 +137,6 @@
        select CONCAT( a.age, a.age_unit ) AS age,
        a.telcode as telcode,
        a.sex,
        b.guid,
        b.operator,
        b.remark,
        b.operator_id,
        b.inhospid,
        b.nurse_id,
        b.nurse_name,
@@ -173,28 +184,37 @@
        b.deptid,
        b.leaveldeptid,
        b.long_task_reason,
        b.schemetime
        b.schemetime,
        b.fuflag,
        b.fudate,
        b.fuperiod,
        b.futypecode,
        b.futypedesc,
        b.fuadvice,
        b.fuspecialadvice
        FROM
        pat_med_inhosp b,
        pat_archive a
        pat_med_inhosp b
        JOIN
        pat_archive a ON a.id = b.patid
        LEFT JOIN
        pat_archivetag c ON c.patid = a.id AND (C.del_flag = 0 OR C.del_flag IS NULL)
        <where>
            a.del_flag=0
            and b.del_flag=0
            and a.id = b.patid
            AND a.idcardno != ''
            a.del_flag = 0
            AND b.del_flag = 0
            AND a.idcardno IS NOT NULL
            <if test="startOutHospTime != null">
                AND date_format(b.endtime,'%y%m%d') &gt;= date_format(#{startOutHospTime},'%y%m%d')
                AND STR_TO_DATE(b.endtime,'%Y-%m-%d') &gt;= STR_TO_DATE(#{startOutHospTime},'%Y-%m-%d')
            </if>
            <if test="endOutHospTime != null">
                AND date_format(b.endtime,'%y%m%d') &lt;= date_format(#{endOutHospTime},'%y%m%d')
                AND STR_TO_DATE(b.endtime,'%Y-%m-%d') &lt;= STR_TO_DATE(#{endOutHospTime},'%Y-%m-%d')
            </if>
            <if test="tagname != null  and tagname != ''">and c.tagname like concat('%', #{tagname}, '%')</if>
            <if test="startInHospTime != null">
                AND date_format(b.starttime,'%y%m%d') &gt;= date_format(#{startInHospTime},'%y%m%d')
                AND STR_TO_DATE(b.starttime, '%Y-%m-%d') >= STR_TO_DATE(#{startInHospTime}, '%Y-%m-%d')
            </if>
            <if test="endInHospTime != null">
                AND date_format(b.starttime,'%y%m%d') &lt;= date_format(#{endInHospTime},'%y%m%d')
                AND STR_TO_DATE(b.starttime, '%Y-%m-%d') &lt;= STR_TO_DATE(#{startInHospTime}, '%Y-%m-%d')
            </if>
            <if test="hospitalname != null  and hospitalname != ''">and hospitalname like concat('%', #{hospitalname},
                '%')
@@ -205,6 +225,7 @@
            </if>
            <if test="endtime != null ">and b.endtime = #{endtime}</if>
            <if test="inhospno != null ">and b.inhospno = #{inhospno}</if>
            <if test="fuflag != null ">and b.fuflag = #{fuflag}</if>
            <if test="serialnum != null ">and b.serialnum = #{serialnum}</if>
            <if test="endtime != null ">and b.endtime = #{endtime}</if>
            <if test="patno != null ">and b.patno = #{patno}</if>
@@ -245,9 +266,15 @@
                </foreach>
            </if>
        </where>
        GROUP BY
        b.inhospid,
        a.age,
        a.age_unit,
        a.telcode,
        a.id,
        a.sex
        order by b.inhospid desc
    </select>
    <select id="selectPatMedInhospListByCondition" parameterType="com.smartor.domain.PatMedInhospVO"
            resultMap="PatMedInhospResult">
        select CONCAT( a.age, a.age_unit ) AS age,
@@ -302,6 +329,13 @@
        b.deptid,
        b.leaveldeptid,
        b.long_task_reason,
        b.fuflag,
        b.fudate,
        b.fuperiod,
        b.futypecode,
        b.futypedesc,
        b.fuadvice,
        b.fuspecialadvice
        b.schemetime
        FROM
        pat_med_inhosp b,
@@ -319,6 +353,7 @@
                concat('%', #{hospitaldistrictname}, '%')
            </if>
            <if test="endtime != null ">and b.endtime = #{endtime}</if>
            <if test="fuflag != null ">and b.fuflag = #{fuflag}</if>
            <if test="nurseId != null ">and b.nurse_id = #{nurseId}</if>
            <if test="nurseName != null ">and b.nurse_name = #{nurseName}</if>
            <if test="patno != null ">and b.patno = #{patno}</if>
@@ -345,6 +380,13 @@
            </if>
        </where>
        order by b.inhospid desc
    </select>
    <select id="getTagnameBypatid" parameterType="Long" resultType="string">
        SELECT GROUP_CONCAT(d.tagname, ', ')
        FROM pat_archivetag d
        WHERE d.patid = #{patid}
          AND d.del_flag = 0
    </select>
@@ -408,6 +450,13 @@
            <if test="operatorId != null ">operator_id,</if>
            <if test="inhospno != null ">inhospno,</if>
            <if test="remark != null ">remark,</if>
            <if test="fuflag != null ">fuflag,</if>
            <if test="fudate != null ">fudate,</if>
            <if test="fuperiod != null ">fuperiod,</if>
            <if test="futypecode != null ">futypecode,</if>
            <if test="futypedesc != null ">futypedesc,</if>
            <if test="fuadvice != null ">fuadvice,</if>
            <if test="fuspecialadvice != null ">fuspecialadvice,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="serialnum != null">#{serialnum},</if>
@@ -461,6 +510,13 @@
            <if test="operatorId != null ">#{operatorId},</if>
            <if test="inhospno != null ">#{inhospno},</if>
            <if test="remark != null ">#{remark},</if>
            <if test="fuflag != null ">#{fuflag},</if>
            <if test="fudate != null ">#{fudate},</if>
            <if test="fuperiod != null ">#{fuperiod},</if>
            <if test="futypecode != null ">#{futypecode},</if>
            <if test="futypedesc != null ">#{futypedesc},</if>
            <if test="fuadvice != null ">#{fuadvice},</if>
            <if test="fuspecialadvice != null ">#{fuspecialadvice},</if>
        </trim>
    </insert>
@@ -517,6 +573,13 @@
            <if test="operator != null ">operator = #{operator},</if>
            <if test="operatorId != null ">operator_id = #{operatorId},</if>
            <if test="remark != null ">remark = #{remark},</if>
            <if test="fuflag != null ">fuflag = #{fuflag},</if>
            <if test="fudate != null ">fudate = #{fudate},</if>
            <if test="fuperiod != null ">fuperiod = #{fuperiod},</if>
            <if test="futypecode != null ">futypecode = #{futypecode},</if>
            <if test="futypedesc != null ">futypedesc = #{futypedesc},</if>
            <if test="fuadvice != null ">fuadvice = #{fuadvice},</if>
            <if test="fuspecialadvice != null ">fuspecialadvice = #{fuspecialadvice},</if>
        </trim>
        where inhospid = #{inhospid}
    </update>