sinake
3 天以前 2a3d4e4c082403aeb31d4c1c499a6107ffa835af
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -300,6 +300,78 @@
            order by b.starttime desc
        </if>
    </select>
    <select id="selectPatMedInhospListBySerialnum" parameterType="com.smartor.domain.PatMedInhosp" resultMap="PatMedInhospResult">
        select
        b.inhospid,
        b.nurse_id,
        b.nurse_name,
        b.patname,
        b.management_doctor,
        b.management_doctor_code,
        b.out_way_id,
        b.out_way_name,
        b.deptcheck_flag,
        b.wardcheck_flag,
        b.diagcheck_flag,
        b.inhospstate,
        b.patno,
        b.inhospno,
        b.serialnum,
        b.hospitalname,
        b.hospitalcode,
        b.hospitaldistrictcode,
        b.hospitaldistrictname,
        b.icd10code,
        b.diagname,
        b.starttime,
        b.endtime,
        b.deptcode,
        b.deptname,
        b.roomno,
        b.bed_no,
        b.orgid,
        b.del_flag,
        b.update_by,
        b.update_time,
        b.create_by,
        b.create_time,
        b.isupload,
        b.upload_time,
        b.patid,
        b.leavediagname,
        b.leaveicd10code,
        b.drcode,
        b.drname,
        b.schemestatus,
        b.generalschemestatus,
        b.leaveldeptcode,
        b.leaveldeptname,
        b.hospitaldistrictid,
        b.leavehospitaldistrictcode,
        b.leavehospitaldistrictname,
        b.leavehospitaldistrictid,
        b.deptid,
        b.leaveldeptid,
        b.long_task_reason,
        b.schemetime,
        b.fuflag,
        b.fudate,
        b.fuperiod,
        b.futypecode,
        b.futypedesc,
        b.fuadvice,
        b.fuspecialadvice
        FROM
        pat_med_inhosp b
        <where>
            <if test="serialnum != null ">and b.serialnum = #{serialnum}</if>
        </where>
        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,
@@ -414,6 +486,7 @@
        </where>
        order by b.inhospid desc
    </select>
    <select id="getTagnameBypatid" parameterType="Long" resultType="string">
        SELECT GROUP_CONCAT(d.tagname, ', ')
@@ -576,7 +649,8 @@
        deptcheck_flag, wardcheck_flag, diagcheck_flag, long_task_reason,
        nurse_id, nurse_name, out_way_id, out_way_name, guid,
        operator, operator_id, inhospno, remark,
        fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor, management_doctor_doctor
        fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor,
        management_doctor_doctor
        )
        values
        <foreach collection="list" item="item" separator=",">
@@ -764,22 +838,60 @@
    </select>
    <select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq"
            resultType="com.smartor.domain.PatMedRes">
        SELECT SUM( rs ) AS rs,
        SUM( rc ) AS rc
        FROM (
        SELECT
        COUNT(1) AS rc,
        COUNT(DISTINCT patid) AS rs
        0 AS rs
        FROM
        pat_med_inhosp
        <where>
            del_flag=0
            <if test="orgid != null">
                AND orgid = #{orgid}
            </if>
            <if test="zy != null">
                and inhospstate=0
                and date_format(starttime,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
                and date_format(starttime,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
                <if test="deptcodeList != null   and deptcodeList.size() > 0">
                    and deptcode in
                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                        #{deptcode}
                    </foreach>
                </if>
            </if>
            <if test="cy != null">
                and inhospstate=1
                and date_format(endtime,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
                and date_format(endtime,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
                <if test="deptcodeList != null   and deptcodeList.size() > 0">
                    and leaveldeptcode in
                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                        #{deptcode}
                    </foreach>
                </if>
            </if>
        </where>
        union all
        select
        0 AS rc,
        count(1) AS rs
        FROM
        service_subtask
        <where>
            del_flag = 0
            and service_type=2
            <if test="orgid != null">
                AND orgid = #{orgid}
            </if>
            <if test="startDate != null">
                AND date_format( visit_time, '%y%m%d' ) &gt;= date_format( #{startDate}, '%y%m%d' )
            </if>
            <if test="endDate != null">
                AND date_format( visit_time, '%y%m%d' ) &lt;= date_format(#{endDate},'%y%m%d')
            </if>
            <if test="deptcodeList != null   and deptcodeList.size() > 0">
                and deptcode in
@@ -788,5 +900,6 @@
                </foreach>
            </if>
        </where>
        ) AS combined_data
    </select>
</mapper>