|  |  | 
 |  |  |         <result property="patname" column="patname"/> | 
 |  |  |         <result property="patno" column="patno"/> | 
 |  |  |         <result property="inhospstate" column="inhospstate"/> | 
 |  |  |         <result property="checkFlag" column="check_flag"/> | 
 |  |  |         <result property="deptcheckFlag" column="deptcheck_flag"/> | 
 |  |  |         <result property="wardcheckFlag" column="wardcheck_flag"/> | 
 |  |  |         <result property="diagcheckFlag" column="diagcheck_flag"/> | 
 |  |  |         <result property="age" column="age"/> | 
 |  |  |         <result property="sex" column="sex"/> | 
 |  |  |         <result property="telcode" column="telcode"/> | 
 |  |  | 
 |  |  |         <result property="guid" column="guid"/> | 
 |  |  |         <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"/> | 
 |  |  |         <result property="managementDoctor" column="management_doctor"/> | 
 |  |  |         <result property="managementDoctorCode" column="management_doctor_code"/> | 
 |  |  |     </resultMap> | 
 |  |  |  | 
 |  |  |     <sql id="selectPatMedInhospVo"> | 
 |  |  |         select inhospid, | 
 |  |  |                patname, | 
 |  |  |                fuflag, | 
 |  |  |                management_doctor, | 
 |  |  |                management_doctor_code, | 
 |  |  |                fudate, | 
 |  |  |                fuperiod, | 
 |  |  |                futypecode, | 
 |  |  |                futypedesc, | 
 |  |  |                fuadvice, | 
 |  |  |                fuspecialadvice, | 
 |  |  |                remark, | 
 |  |  |                guid, | 
 |  |  |                operator, | 
 |  |  |                operator_id, | 
 |  |  | 
 |  |  |                out_way_name, | 
 |  |  |                nurse_id, | 
 |  |  |                nurse_name, | 
 |  |  |                check_flag, | 
 |  |  |                deptcheck_flag, | 
 |  |  |                wardcheck_flag, | 
 |  |  |                diagcheck_flag, | 
 |  |  |                inhospstate, | 
 |  |  |                patno, | 
 |  |  |                long_task_reason, | 
 |  |  | 
 |  |  |         select CONCAT( a.age, a.age_unit ) AS age, | 
 |  |  |         a.telcode as telcode, | 
 |  |  |         a.sex, | 
 |  |  |         b.guid, | 
 |  |  |         b.operator, | 
 |  |  |         b.operator_id, | 
 |  |  |         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.check_flag, | 
 |  |  |         b.deptcheck_flag, | 
 |  |  |         b.wardcheck_flag, | 
 |  |  |         b.diagcheck_flag, | 
 |  |  |         b.inhospstate, | 
 |  |  |         b.patno, | 
 |  |  |         b.inhospno, | 
 |  |  | 
 |  |  |         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, | 
 |  |  |         a.idcardno | 
 |  |  |         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 != '' | 
 |  |  |             <if test="startOutHospTime != null"> | 
 |  |  |                 AND date_format(b.endtime,'%y%m%d') >= date_format(#{startOutHospTime},'%y%m%d') | 
 |  |  |             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') >= | 
 |  |  |                 date_format(#{startOutHospTime},'%y%m%d') | 
 |  |  |             </if> | 
 |  |  |             <if test="endOutHospTime != null"> | 
 |  |  |                 AND date_format(b.endtime,'%y%m%d') <= date_format(#{endOutHospTime},'%y%m%d') | 
 |  |  |             <if test="endOutHospTime != null ">and date_format(b.endtime,'%y%m%d') <= | 
 |  |  |                 date_format(#{endOutHospTime},'%y%m%d') | 
 |  |  |             </if> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |             <if test="startInHospTime != null"> | 
 |  |  |                 AND date_format(b.starttime,'%y%m%d') >= date_format(#{startInHospTime},'%y%m%d') | 
 |  |  |             <if test="startInHospTime != null ">and date_format(b.starttime,'%y%m%d') >= | 
 |  |  |                 date_format(#{startInHospTime},'%y%m%d') | 
 |  |  |             </if> | 
 |  |  |             <if test="endInHospTime != null"> | 
 |  |  |                 AND date_format(b.starttime,'%y%m%d') <= date_format(#{endInHospTime},'%y%m%d') | 
 |  |  |             <if test="endInHospTime != null ">and date_format(b.starttime,'%y%m%d') <= | 
 |  |  |                 date_format(#{endInHospTime},'%y%m%d') | 
 |  |  |             </if> | 
 |  |  |             <if test="hospitalname != null  and hospitalname != ''">and hospitalname like concat('%', #{hospitalname}, | 
 |  |  |                 '%') | 
 |  |  | 
 |  |  |                 concat('%', #{hospitaldistrictname}, '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="endtime != null ">and b.endtime = #{endtime}</if> | 
 |  |  |             <if test="managementDoctor != null ">and b.management_doctor = #{managementDoctor}</if> | 
 |  |  |             <if test="managementDoctorCode != null ">and b.management_doctor_code = #{managementDoctorCode}</if> | 
 |  |  |             <if test="inhospno != null ">and b.inhospno = #{inhospno}</if> | 
 |  |  |             <if test="fuflag != null ">and b.fuflag = #{fuflag}</if> | 
 |  |  |             <if test="orgid != null ">and b.orgid = #{orgid}</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> | 
 |  |  |             <if test="nurseId != null ">and b.nurse_id = #{nurseId}</if> | 
 |  |  |             <if test="nurseName != null ">and b.nurse_name = #{nurseName}</if> | 
 |  |  |             <if test="checkFlag != null ">and b.check_flag = #{checkFlag}</if> | 
 |  |  |             <if test="nurseName != null and nurseName != ''">and b.nurse_name = #{nurseName}</if> | 
 |  |  |             <if test="deptcheckFlag != null ">and b.deptcheck_flag = #{deptcheckFlag}</if> | 
 |  |  |             <if test="wardcheckFlag != null ">and b.wardcheck_flag = #{wardcheckFlag}</if> | 
 |  |  |             <if test="diagcheckFlag != null ">and b.diagcheck_flag = #{diagcheckFlag}</if> | 
 |  |  |             <if test="cry != null and cry == 0 ">and b.endtime is null</if> | 
 |  |  |             <if test="cry != null and cry == 1 ">and b.endtime is not null</if> | 
 |  |  |             <if test="cry != null and cry == 1 ">and b.inhospstate=1</if> | 
 |  |  |             <if test="inhospstate != null ">and b.inhospstate = #{inhospstate}</if> | 
 |  |  |             <if test="schemestatus != null ">and b.schemestatus = #{schemestatus}</if> | 
 |  |  |             <if test="outWayId != null ">and b.out_way_id = #{outWayId}</if> | 
 |  |  |             <if test="outWayName != null ">and b.out_way_name = #{outWayName}</if> | 
 |  |  |             <if test="leaveldeptcode != null ">and b.leaveldeptcode = #{leaveldeptcode}</if> | 
 |  |  |             <if test="leavediagname != null  and leavediagname != ''">and b.leavediagname like concat('%', | 
 |  |  |                 #{leavediagname}, '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="drname != null  and drname != ''">and b.drname like concat('%', #{drname}, '%')</if> | 
 |  |  |             <if test="leaveldeptname != null  and leaveldeptname != ''">and b.leaveldeptname like concat('%', | 
 |  |  |                 #{leaveldeptname}, '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="deptname != null  and deptname != ''">and b.deptname like concat('%', | 
 |  |  |                 #{deptname}, '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="patid != null  and patid != ''">and a.id =#{patid} | 
 |  |  |             </if> | 
 |  |  | 
 |  |  |                 </foreach> | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |         order by b.inhospid desc | 
 |  |  |         GROUP BY | 
 |  |  |         b.inhospid, | 
 |  |  |         a.age, | 
 |  |  |         a.age_unit, | 
 |  |  |         a.telcode, | 
 |  |  |         a.id, | 
 |  |  |         a.sex | 
 |  |  |         <if test="cry==1"> | 
 |  |  |             order by b.endtime desc | 
 |  |  |         </if> | 
 |  |  |         <if test="cry==0"> | 
 |  |  |             order by b.starttime desc | 
 |  |  |         </if> | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |     <select id="selectPatMedInhospListByCondition" parameterType="com.smartor.domain.PatMedInhospVO" | 
 |  |  |             resultMap="PatMedInhospResult"> | 
 |  |  |         select CONCAT( a.age, a.age_unit ) AS age, | 
 |  |  |         a.telcode as telcode, | 
 |  |  |     <select id="selectPatMedInhospListBySerialnum" parameterType="com.smartor.domain.PatMedInhosp" resultMap="PatMedInhospResult"> | 
 |  |  |         select | 
 |  |  |         b.inhospid, | 
 |  |  |         b.patname, | 
 |  |  |         b.operator_id, | 
 |  |  |         b.operator, | 
 |  |  |         b.out_way_id, | 
 |  |  |         b.out_way_name, | 
 |  |  |         b.nurse_id, | 
 |  |  |         b.nurse_name, | 
 |  |  |         b.check_flag, | 
 |  |  |         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.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, | 
 |  |  |         a.telcode as telcode, | 
 |  |  |         b.inhospid, | 
 |  |  |         b.management_doctor, | 
 |  |  |         b.management_doctor_code, | 
 |  |  |         b.patname, | 
 |  |  |         b.operator_id, | 
 |  |  |         b.operator, | 
 |  |  |         b.remark, | 
 |  |  |         b.out_way_id, | 
 |  |  |         b.out_way_name, | 
 |  |  |         b.nurse_id, | 
 |  |  |         b.nurse_name, | 
 |  |  |         b.deptcheck_flag, | 
 |  |  |         b.diagcheck_flag, | 
 |  |  |         b.wardcheck_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.fuflag, | 
 |  |  |         b.fudate, | 
 |  |  |         b.fuperiod, | 
 |  |  |         b.futypecode, | 
 |  |  |         b.futypedesc, | 
 |  |  |         b.fuadvice, | 
 |  |  |         b.fuspecialadvice, | 
 |  |  |         b.schemetime | 
 |  |  |         FROM | 
 |  |  |         pat_med_inhosp b, | 
 |  |  | 
 |  |  |             <if test="hospitalname != null  and hospitalname != ''">and hospitalname like concat('%', #{hospitalname}, | 
 |  |  |                 '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="managementDoctor != null ">and b.management_doctor = #{managementDoctor}</if> | 
 |  |  |             <if test="managementDoctorCode != null ">and b.management_doctor_code = #{managementDoctorCode}</if> | 
 |  |  |             <if test="patname != null  and patname != ''">and patname like concat('%', #{patname}, '%')</if> | 
 |  |  |             <if test="hospitaldistrictname != null  and hospitaldistrictname != ''">and hospitaldistrictname like | 
 |  |  |                 concat('%', #{hospitaldistrictname}, '%') | 
 |  |  |             </if> | 
 |  |  |             <if test="endtime != null ">and b.endtime = #{endtime}</if> | 
 |  |  |             <if test="serialnum != null ">and b.serialnum = #{serialnum}</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> | 
 |  |  |             <if test="checkFlag != null ">and b.check_flag = #{checkFlag}</if> | 
 |  |  |             <if test="diagcheckFlag != null ">and b.diagcheck_flag = #{diagcheckFlag}</if> | 
 |  |  |             <if test="deptcheckFlag != null ">and b.deptcheck_flag = #{deptcheckFlag}</if> | 
 |  |  |             <if test="wardcheckFlag != null ">and b.wardcheck_flag = #{wardcheckFlag}</if> | 
 |  |  |             <if test="inhospstate != null ">and b.inhospstate = #{inhospstate}</if> | 
 |  |  |             <if test="schemestatus != null ">and b.schemestatus = #{schemestatus}</if> | 
 |  |  |             <if test="leavediagname != null  and leavediagname != ''">and b.leavediagname like concat('%', | 
 |  |  | 
 |  |  |     </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> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     <select id="selectPatMedInhospByInhospid" parameterType="Long" resultMap="PatMedInhospResult"> | 
 |  |  |         <include refid="selectPatMedInhospVo"/> | 
 |  |  |         where inhospid = #{inhospid} | 
 |  |  |     </select> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     <insert id="insertPatMedInhosp" parameterType="com.smartor.domain.PatMedInhosp" useGeneratedKeys="true" | 
 |  |  |             keyProperty="inhospid"> | 
 |  |  | 
 |  |  |             <if test="patname!= null">patname,</if> | 
 |  |  |             <if test="patno != null">patno,</if> | 
 |  |  |             <if test="inhospstate != null">inhospstate,</if> | 
 |  |  |             <if test="checkFlag != null">check_flag,</if> | 
 |  |  |             <if test="deptcheckFlag != null">deptcheck_flag,</if> | 
 |  |  |             <if test="wardcheckFlag != null">wardcheck_flag,</if> | 
 |  |  |             <if test="diagcheckFlag != null">diagcheck_flag,</if> | 
 |  |  |             <if test="longTaskReason != null">long_task_reason,</if> | 
 |  |  |             <if test="nurseId != null ">nurse_id,</if> | 
 |  |  |             <if test="nurseName != null ">nurse_name,</if> | 
 |  |  | 
 |  |  |             <if test="operator != null ">operator,</if> | 
 |  |  |             <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> | 
 |  |  |             <if test="managementDoctor != null ">management_doctor,</if> | 
 |  |  |             <if test="managementDoctorCode != null ">management_doctor_code,</if> | 
 |  |  |         </trim> | 
 |  |  |         <trim prefix="values (" suffix=")" suffixOverrides=","> | 
 |  |  |             <if test="serialnum != null">#{serialnum},</if> | 
 |  |  | 
 |  |  |             <if test="patname!= null">#{patname},</if> | 
 |  |  |             <if test="patno != null">#{patno},</if> | 
 |  |  |             <if test="inhospstate != null">#{inhospstate},</if> | 
 |  |  |             <if test="checkFlag != null">#{checkFlag},</if> | 
 |  |  |             <if test="deptcheckFlag != null">#{deptcheckFlag},</if> | 
 |  |  |             <if test="wardcheckFlag != null">#{wardcheckFlag},</if> | 
 |  |  |             <if test="diagcheckFlag != null">#{diagcheckFlag},</if> | 
 |  |  |             <if test="longTaskReason != null">#{longTaskReason},</if> | 
 |  |  |             <if test="nurseId != null ">#{nurseId},</if> | 
 |  |  |             <if test="nurseName != null ">#{nurseName},</if> | 
 |  |  | 
 |  |  |             <if test="operator != null ">#{operator},</if> | 
 |  |  |             <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> | 
 |  |  |             <if test="managementDoctor != null ">#{managementDoctor},</if> | 
 |  |  |             <if test="managementDoctorCode != null ">#{managementDoctorCode},</if> | 
 |  |  |         </trim> | 
 |  |  |     </insert> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     <insert id="insertPatMedInhospBatch" parameterType="java.util.List" useGeneratedKeys="true" | 
 |  |  |             keyProperty="item.inhospid"> | 
 |  |  |         insert into pat_med_inhosp ( | 
 |  |  |         serialnum, hospitalname, hospitalcode, hospitaldistrictcode, hospitaldistrictname, | 
 |  |  |         icd10code, diagname, starttime, endtime, deptcode, deptname, roomno, bed_no, | 
 |  |  |         orgid, del_flag, update_by, update_time, create_by, create_time, isupload, | 
 |  |  |         upload_time, patid, leavediagname, leaveicd10code, drcode, drname, | 
 |  |  |         schemestatus, generalschemestatus, leaveldeptcode, leaveldeptname, hospitaldistrictid, | 
 |  |  |         leavehospitaldistrictcode, leavehospitaldistrictname, leavehospitaldistrictid, | 
 |  |  |         deptid, leaveldeptid, schemetime, patname, patno, inhospstate, | 
 |  |  |         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 | 
 |  |  |         ) | 
 |  |  |         values | 
 |  |  |         <foreach collection="list" item="item" separator=","> | 
 |  |  |             ( | 
 |  |  |             #{item.serialnum}, #{item.hospitalname}, #{item.hospitalcode}, #{item.hospitaldistrictcode}, | 
 |  |  |             #{item.hospitaldistrictname}, | 
 |  |  |             #{item.icd10code}, #{item.diagname}, #{item.starttime}, #{item.endtime}, #{item.deptcode}, #{item.deptname}, | 
 |  |  |             #{item.roomno}, #{item.bedNo}, | 
 |  |  |             #{item.orgid}, #{item.delFlag}, #{item.updateBy}, #{item.updateTime}, #{item.createBy}, #{item.createTime}, | 
 |  |  |             #{item.isupload}, | 
 |  |  |             #{item.uploadTime}, #{item.patid}, #{item.leavediagname}, #{item.leaveicd10code}, #{item.drcode}, | 
 |  |  |             #{item.drname}, | 
 |  |  |             #{item.schemestatus}, #{item.generalschemestatus}, #{item.leaveldeptcode}, #{item.leaveldeptname}, | 
 |  |  |             #{item.hospitaldistrictid}, | 
 |  |  |             #{item.leavehospitaldistrictcode}, #{item.leavehospitaldistrictname}, #{item.leavehospitaldistrictid}, | 
 |  |  |             #{item.deptid}, #{item.leaveldeptid}, #{item.schemetime}, #{item.patname}, #{item.patno}, | 
 |  |  |             #{item.inhospstate}, | 
 |  |  |             #{item.deptcheckFlag}, #{item.wardcheckFlag}, #{item.diagcheckFlag}, #{item.longTaskReason}, | 
 |  |  |             #{item.nurseId}, #{item.nurseName}, #{item.outWayId}, #{item.outWayName}, #{item.guid}, | 
 |  |  |             #{item.operator}, #{item.operatorId}, #{item.inhospno}, #{item.remark}, | 
 |  |  |             #{item.fuflag}, #{item.fudate}, #{item.fuperiod}, #{item.futypecode}, #{item.futypedesc}, #{item.fuadvice}, | 
 |  |  |             #{item.fuspecialadvice}, #{item.managementDoctor}, #{item.managementDoctorCode} | 
 |  |  |             ) | 
 |  |  |         </foreach> | 
 |  |  |     </insert> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     <update id="updatePatMedInhosp" parameterType="com.smartor.domain.PatMedInhosp"> | 
 |  |  |         update pat_med_inhosp | 
 |  |  | 
 |  |  |             <if test="patname!= null">patname = #{patname},</if> | 
 |  |  |             <if test="patno != null">patno = #{patno},</if> | 
 |  |  |             <if test="inhospstate != null">inhospstate = #{inhospstate},</if> | 
 |  |  |             <if test="checkFlag != null">check_flag = #{checkFlag},</if> | 
 |  |  |             <if test="deptcheckFlag != null">deptcheck_flag = #{deptcheckFlag},</if> | 
 |  |  |             <if test="wardcheckFlag != null">wardcheck_flag = #{wardcheckFlag},</if> | 
 |  |  |             <if test="diagcheckFlag != null">diagcheck_flag = #{diagcheckFlag},</if> | 
 |  |  |             <if test="longTaskReason != null">long_task_reason = #{longTaskReason},</if> | 
 |  |  |             <if test="nurseId != null ">nurse_id = #{nurseId},</if> | 
 |  |  |             <if test="nurseName != null ">nurse_name = #{nurseName},</if> | 
 |  |  | 
 |  |  |             <if test="guid != null ">guid = #{guid},</if> | 
 |  |  |             <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> | 
 |  |  |             <if test="managementDoctor != null ">management_doctor = #{managementDoctor},</if> | 
 |  |  |             <if test="managementDoctorCode != null ">management_doctor_code = #{managementDoctorCode}</if> | 
 |  |  |  | 
 |  |  |         </trim> | 
 |  |  |         where inhospid = #{inhospid} | 
 |  |  |     </update> | 
 |  |  | 
 |  |  |             FROM pat_med_outhosp | 
 |  |  |             <where> | 
 |  |  |                 del_flag=0 | 
 |  |  |                 <if test="deptcodeList != null"> | 
 |  |  |                 <if test="deptcodeList != null   and deptcodeList.size() > 0"> | 
 |  |  |                     and deptcode in | 
 |  |  |                     <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> | 
 |  |  |                         #{deptcode} | 
 |  |  | 
 |  |  |             <where> | 
 |  |  |                 del_flag=0 | 
 |  |  |                 and inhospstate=0 | 
 |  |  |                 <if test="deptcodeList != null"> | 
 |  |  |                 <if test="deptcodeList != null   and deptcodeList.size() > 0"> | 
 |  |  |                     and deptcode in | 
 |  |  |                     <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> | 
 |  |  |                         #{deptcode} | 
 |  |  | 
 |  |  |             <where> | 
 |  |  |                 del_flag=0 | 
 |  |  |                 and inhospstate=1 | 
 |  |  |                 <if test="deptcodeList != null"> | 
 |  |  |                 <if test="deptcodeList != null   and deptcodeList.size() > 0"> | 
 |  |  |                     and deptcode in | 
 |  |  |                     <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> | 
 |  |  |                         #{deptcode} | 
 |  |  | 
 |  |  |             <where> | 
 |  |  |                 del_flag=0 | 
 |  |  |                 and inhospstate=1 | 
 |  |  |                 <if test="deptcodeList != null"> | 
 |  |  |                 <if test="deptcodeList != null   and deptcodeList.size() > 0"> | 
 |  |  |                     and deptcode in | 
 |  |  |                     <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> | 
 |  |  |                         #{deptcode} | 
 |  |  | 
 |  |  |         </if> | 
 |  |  |         ) AS combined | 
 |  |  |         GROUP BY deptname; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     </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') >= date_format(#{startDate},'%y%m%d') | 
 |  |  |                 and date_format(starttime,'%y%m%d') <= 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') >= date_format(#{startDate},'%y%m%d') | 
 |  |  |                 and date_format(endtime,'%y%m%d') <= 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> | 
 |  |  |             <if test="deptcodeList != null"> | 
 |  |  |  | 
 |  |  |         </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' ) >= date_format( #{startDate}, '%y%m%d' ) | 
 |  |  |             </if> | 
 |  |  |             <if test="endDate != null"> | 
 |  |  |                 AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d') | 
 |  |  |             </if> | 
 |  |  |             <if test="deptcodeList != null   and deptcodeList.size() > 0"> | 
 |  |  |                 and deptcode in | 
 |  |  |                 <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")"> | 
 |  |  |                     #{deptcode} | 
 |  |  |                 </foreach> | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  |         ) AS combined_data | 
 |  |  |     </select> | 
 |  |  | </mapper> |