Browse Source

急诊历史病历列表修改

rgb 6 years ago
parent
commit
a751233dc4

+ 11 - 0
icss-service/src/main/java/com/diagbot/client/TranServiceClient.java

@@ -7,8 +7,10 @@ import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.hystrix.TranServiceHystrix;
 import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.dto.HospitalInfoDTO;
 import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.dto.LisDataDTO;
@@ -23,6 +25,7 @@ import com.diagbot.entity.HospitalDept;
 import com.diagbot.entity.PatientInfo;
 import com.diagbot.vo.AddDiagnoseSecondVO;
 import com.diagbot.vo.DoctorInfoVO;
+import com.diagbot.vo.HisInquirysForJzVO;
 import com.diagbot.vo.HosCodeVO;
 import com.diagbot.vo.HospitalInfoVO;
 import com.diagbot.vo.LisArgumentsVO;
@@ -123,6 +126,14 @@ public interface TranServiceClient {
     @PostMapping("/inquiryInfo/saveInquiryToHis")
     RespDTO<Boolean> saveInquiryToHis(@RequestBody SaveInquiryToHisVO saveInquiryToHisVO);
     
+    /**
+     * 急诊-历史病历列表
+     * @param hisInquirysForJzVO
+     * @return
+     */
+    @PostMapping("/inquiryInfo/hisInquirysForJz")
+    RespDTO<IPage<HisInquirysForJzDTO>> hisInquirysForJz(@RequestBody HisInquirysForJzVO hisInquirysForJzVO);
+    
     /**
      * 急诊-添加二次诊断
      * @param addDiagnoseSecondVO

+ 9 - 0
icss-service/src/main/java/com/diagbot/client/hystrix/TranServiceHystrix.java

@@ -8,8 +8,10 @@ import javax.validation.Valid;
 import org.springframework.stereotype.Component;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.TranServiceClient;
 import com.diagbot.dto.DoctorInfoDTO;
+import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.dto.HospitalInfoDTO;
 import com.diagbot.dto.LisConfigDTO;
 import com.diagbot.dto.LisDataDTO;
@@ -24,6 +26,7 @@ import com.diagbot.entity.HospitalDept;
 import com.diagbot.entity.PatientInfo;
 import com.diagbot.vo.AddDiagnoseSecondVO;
 import com.diagbot.vo.DoctorInfoVO;
+import com.diagbot.vo.HisInquirysForJzVO;
 import com.diagbot.vo.HosCodeVO;
 import com.diagbot.vo.HospitalInfoVO;
 import com.diagbot.vo.LisArgumentsVO;
@@ -100,6 +103,12 @@ public class TranServiceHystrix implements TranServiceClient {
     }
     
     @Override
+	public RespDTO<IPage<HisInquirysForJzDTO>> hisInquirysForJz(HisInquirysForJzVO hisInquirysForJzVO) {
+    	log.error("【hystrix】调用{}异常", "hisInquirysForJz");
+		return null;
+	}
+
+	@Override
 	public RespDTO<Boolean> addDiagnoseSecond(AddDiagnoseSecondVO addDiagnoseSecondVO) {
     	log.error("【hystrix】调用{}异常", "addDiagnoseSecond");
 		return null;

+ 0 - 1
icss-service/src/main/java/com/diagbot/facade/InquiryDetailFacade.java

@@ -38,7 +38,6 @@ public class InquiryDetailFacade extends InquiryDetailServiceImpl {
     public void removeByInquiryId(Long inquiryId) {
         QueryWrapper<InquiryDetail> queryWrapper = new QueryWrapper<InquiryDetail>();
         queryWrapper.eq("inquiry_id", inquiryId);
-        queryWrapper.ne("type", 9);
         this.remove(queryWrapper);
     }
 

+ 3 - 41
icss-service/src/main/java/com/diagbot/facade/InquiryInfoFacade.java

@@ -369,49 +369,11 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl {
      * @return
      */
     public IPage<HisInquirysForJzDTO> hisInquirysForJz(HisInquirysForJzVO hisInquirysForJzVO){
-    	IPage<HisInquirysForJzDTO> ipage = this.baseMapper.hisInquirysForJz(hisInquirysForJzVO);
-    	
-    	if(ListUtil.isNotEmpty(ipage.getRecords())){
-    		
-    		List<Long> hospitalDeptIdList = ipage.getRecords().stream().map(i -> i.getHospitalDeptId()).distinct().collect(Collectors.toList());
-            List<Long> patientIdList = ipage.getRecords().stream().map(i -> i.getPatientId()).distinct().collect(Collectors.toList());
-            List<Long> inquiryIdList = ipage.getRecords().stream().map(i -> i.getInquiryId()).distinct().collect(Collectors.toList());
-
-            List<Long> doctorIdList = ipage.getRecords().stream().map(i -> i.getDoctorId()).collect(Collectors.toList());
-            doctorIdList.addAll(ipage.getRecords().stream().map(i -> i.getDoctorIdSecond()).collect(Collectors.toList()));
-            doctorIdList = doctorIdList.stream().distinct().collect(Collectors.toList());
-            
-            Map<Long, HospitalDept> hospitalDeptMap = hospitalDeptFacade.hospitalDeptInfoMapByIds(hospitalDeptIdList);
-            Map<Long, PatientInfo> patientInfoMap = patientInfoFacade.patientInfoMapByIds(patientIdList);
-            Map<Long, List<InquiryDetail>> inquiryDetailMap = inquiryDetailFacade.getDetailsByInquryIds(inquiryIdList);
-            Map<Long, DoctorInfo> doctorInfoMap = doctorInfoFacade.doctorInfoMapByIds(doctorIdList);
-        	
-            ipage.getRecords().forEach(i -> {
-                i.setInquiryTime(i.getInquiryDate());
-                i.setHospitalDeptName(Optional.ofNullable(hospitalDeptMap.get(i.getHospitalDeptId())).map(t -> t.getName()).orElse(null));
-                i.setDoctorName(Optional.ofNullable(doctorInfoMap.get(i.getDoctorId())).map(t -> t.getName()).orElse(null));
-                i.setDoctorNameSecond(Optional.ofNullable(doctorInfoMap.get(i.getDoctorIdSecond())).map(t -> t.getName()).orElse(null));
-                PatientInfo patientInfo = patientInfoMap.get(i.getPatientId());
-                if (patientInfo != null) {
-                    i.setPatientName(patientInfo.getName());
-                    i.setPatientIdNo(patientInfo.getIdNo());
-                    i.setPatientSex(SexTypeEnum.getName(patientInfo.getSex()));
-                    i.setPatientAge(DateUtil.yearCompare(patientInfo.getBirthday(), DateUtil.now()));
-                }
-                
-                List<InquiryDetail> detailList= inquiryDetailMap.get(i.getInquiryId());
-                i.setDetailList(detailList);
-                String diagnose = detailList.stream().filter(inquiryDetail->inquiryDetail.getType()==7).map(inquiryDetail->inquiryDetail.getContent()).toString();
-                i.setDiagnose(diagnose.split(";")[0]);
-                
-            });
-             
-    	}
-    	
-    	return ipage;
+    	RespDTO<IPage<HisInquirysForJzDTO>> res = tranServiceClient.hisInquirysForJz(hisInquirysForJzVO);
+    	RespDTOUtil.respNGDeal(res, "获取急诊历史病历列表失败");
+    	return res.data;
     }
     
-    
     /**
      * 对接-历史病历列表
      * 

+ 0 - 6
icss-service/src/main/java/com/diagbot/mapper/InquiryInfoMapper.java

@@ -3,10 +3,7 @@ package com.diagbot.mapper;
 import java.util.Map;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.entity.InquiryInfo;
-import com.diagbot.vo.HisInquirysForJzVO;
 
 /**
  * <p>
@@ -28,7 +25,4 @@ public interface InquiryInfoMapper extends BaseMapper<InquiryInfo> {
 	 */
 	InquiryInfo getPatientLast(Map<String,Object> map);
 	
-	
-	IPage<HisInquirysForJzDTO> hisInquirysForJz(HisInquirysForJzVO hisInquirysForJzVO);
-	
 }

+ 0 - 1
icss-service/src/main/java/com/diagbot/web/InquiryInfoController.java

@@ -1,6 +1,5 @@
 package com.diagbot.web;
 
-
 import java.util.List;
 
 import javax.validation.Valid;

+ 0 - 42
icss-service/src/main/resources/mapper/InquiryInfoMapper.xml

@@ -36,46 +36,4 @@
 		limit 0,1
     </select>
     
-    <select id="hisInquirysForJz" resultType="com.diagbot.dto.HisInquirysForJzDTO">
-    	SELECT
-		a.id AS inquiryId,
-		a.hospital_dept_id AS hospitalDeptId,
-		a.doctor_id AS doctorId,
-		a.patient_id AS patientId,
-		a.inquiry_code AS inquiryCode,
-		a.gmt_modified AS inquiryDate,
-		b.modifier AS doctorIdSecond,
-		b.gmt_modified AS inquiryTimeSecond,
-		b.content_value AS diagnoseSecond
-		FROM icss_inquiry_info a
-		LEFT JOIN
-		(SELECT
-		inquiry_id,
-		gmt_modified,
-		modifier,
-		content_value
-		FROM icss_inquiry_detail
-		WHERE type=9) b
-		ON a.id=b.inquiry_id
-		WHERE 1=1
-		AND a.hospital_id=#{hospitalId}
-		AND a.hospital_dept_id=#{hospitalDeptId}
-		<if test="startDate!=null">
-			AND a.gmt_modified>=#{startDate}
-		</if>
-		<if test="endDate!=null">
-			AND #{endDate}>=a.gmt_modified
-		</if>
-		<choose>
-			<when test="isHasSecond==0">
-				AND b.inquiry_id IS NULL
-			</when>
-			<when test="isHasSecond==1">
-				AND b.inquiry_id IS NOT NULL
-			</when>
-			<otherwise></otherwise>
-		</choose>
-		ORDER BY a.gmt_modified DESC
-    </select>
-
 </mapper>

+ 122 - 0
tran-service/src/main/java/com/diagbot/dto/HisInquirysForJzDTO.java

@@ -0,0 +1,122 @@
+package com.diagbot.dto;
+
+import java.util.Date;
+import java.util.List;
+
+import com.diagbot.entity.InquiryDetail;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2018/11/19 18:56
+ */
+@ApiModel(value="急诊-历史病历列表接口出参")
+@Getter
+@Setter
+public class HisInquirysForJzDTO{
+	
+    /**
+     * 问诊记录id
+     */
+    private Long inquiryId;
+	
+	/**
+     * 医生id
+     */
+    private Long doctorId;
+	
+    /**
+     * 医生姓名
+     */
+    private String doctorName;
+	
+	/**
+	 * 就诊日期
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+	private Date inquiryDate;
+	
+	/**
+	 * 就诊时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private Date inquiryTime;
+	
+    /**
+     * 诊断
+     */
+    private String diagnose;
+	
+	/**
+     * 二次诊断的医生id
+     */
+    private Long doctorIdSecond;
+	
+    /**
+     * 二次诊断的医生姓名
+     */
+    private String doctorNameSecond;
+	
+	/**
+	 * 二次诊断的就诊时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private Date inquiryTimeSecond;
+	
+    /**
+     * 二次诊断的诊断
+     */
+    private String diagnoseSecond;
+	
+    /**
+     * 门诊号
+     */
+    private String inquiryCode;
+	
+    /**
+     * 医院科室id
+     */
+    private Long hospitalDeptId;
+	
+    /**
+     * 医院科室名称
+     */
+    private String hospitalDeptName;
+	
+	/**
+     * 病人id
+     */
+    private Long patientId;
+	
+	/**
+     * 病人姓名
+     */
+    private String patientName;
+	
+    /**
+     * 病人性别
+     */
+    private String patientSex;
+	
+    /**
+     * 病人年龄
+     */
+    private Integer patientAge;
+	
+    /**
+     * 病人证件号码
+     */
+    private String patientIdNo;
+    
+	/**
+     * 病历明细
+     */
+	private List<InquiryDetail> detailList;
+	
+	
+}

+ 51 - 0
tran-service/src/main/java/com/diagbot/enums/SexTypeEnum.java

@@ -0,0 +1,51 @@
+package com.diagbot.enums;
+
+import com.diagbot.core.KeyedNamed;
+
+import lombok.Setter;
+/**
+ * 
+ * @author rgb
+ * @Description: TODO
+ * @date 2018年12月11日 下午2:31:42
+ */
+public enum SexTypeEnum implements KeyedNamed {
+    Disable(1, "男"),
+    Enable(2, "女");
+
+    @Setter
+    private Integer key;
+
+    @Setter
+    private String name;
+
+    SexTypeEnum(Integer key, String name) {
+        this.key = key;
+        this.name = name;
+    }
+
+    public static SexTypeEnum getEnum(Integer key) {
+        for (SexTypeEnum item : SexTypeEnum.values()) {
+            if (item.key == key) {
+                return item;
+            }
+        }
+        return null;
+    }
+
+    public static String getName(Integer key) {
+        SexTypeEnum item = getEnum(key);
+        return item != null ? item.name : null;
+    }
+
+    @Override
+    public int getKey() {
+        return key;
+    }
+
+    @Override
+    public String getName() {
+        return name;
+    }
+}
+

+ 24 - 1
tran-service/src/main/java/com/diagbot/facade/InquiryDetailFacade.java

@@ -1,13 +1,36 @@
 package com.diagbot.facade;
 
-import com.diagbot.service.impl.InquiryDetailServiceImpl;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
 import org.springframework.stereotype.Component;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.entity.InquiryDetail;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.impl.InquiryDetailServiceImpl;
+
 /**
  * @author: rengb
  * @since 2019-5-27
  */
 @Component
 public class InquiryDetailFacade extends InquiryDetailServiceImpl {
+	
+    /**
+     * 根据病历id集合获取病历明细
+     *
+     * @param inquiryIds
+     * @return
+     */
+    public Map<Long, List<InquiryDetail>> getDetailsByInquryIds(List<Long> inquiryIds) {
+        QueryWrapper<InquiryDetail> queryWrapper = new QueryWrapper<InquiryDetail>();
+        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+        			.ne("type", 9)
+        			.in("inquiry_id", inquiryIds);
+        List<InquiryDetail> inquiryDetails = this.list(queryWrapper);
+        return inquiryDetails.stream().collect(Collectors.groupingBy(InquiryDetail::getInquiryId));
+    }
 
 }

+ 46 - 0
tran-service/src/main/java/com/diagbot/facade/InquiryInfoFacade.java

@@ -2,20 +2,28 @@ package com.diagbot.facade;
 
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.entity.InquiryDetail;
 import com.diagbot.entity.InquiryInfo;
+import com.diagbot.entity.PatientInfo;
 import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.SexTypeEnum;
 import com.diagbot.service.impl.InquiryDetailServiceImpl;
 import com.diagbot.service.impl.InquiryInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
 import com.diagbot.vo.AddDiagnoseSecondVO;
+import com.diagbot.vo.HisInquirysForJzVO;
 import com.diagbot.vo.SaveInquiryToHisVO;
 
 /**
@@ -28,6 +36,8 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl{
 	
 	@Autowired
     private InquiryDetailFacade inquiryDetailFacade;
+	@Autowired
+	private PatientInfoFacade patientInfoFacade;
 	@Autowired
 	@Qualifier("inquiryDetailServiceImpl")
 	private InquiryDetailServiceImpl inquiryDetailServiceImpl;
@@ -89,6 +99,42 @@ public class InquiryInfoFacade extends InquiryInfoServiceImpl{
         return true;
     }
     
+    /**
+     * 急诊-历史病历列表
+     * 
+     * @param hisInquirysForJzVO
+     * @return
+     */
+    public IPage<HisInquirysForJzDTO> hisInquirysForJz(HisInquirysForJzVO hisInquirysForJzVO){
+    	IPage<HisInquirysForJzDTO> ipage = this.baseMapper.hisInquirysForJz(hisInquirysForJzVO);
+    	
+    	if(ListUtil.isNotEmpty(ipage.getRecords())){
+            List<Long> patientIdList = ipage.getRecords().stream().map(i -> i.getPatientId()).distinct().collect(Collectors.toList());
+            List<Long> inquiryIdList = ipage.getRecords().stream().map(i -> i.getInquiryId()).distinct().collect(Collectors.toList());
+
+            Map<Long, PatientInfo> patientInfoMap = patientInfoFacade.patientInfoMapByIds(patientIdList);
+            Map<Long, List<InquiryDetail>> inquiryDetailMap = inquiryDetailFacade.getDetailsByInquryIds(inquiryIdList);
+        	
+            ipage.getRecords().forEach(i -> {
+                PatientInfo patientInfo = patientInfoMap.get(i.getPatientId());
+                if (patientInfo != null) {
+                    i.setPatientName(patientInfo.getName());
+                    i.setPatientIdNo(patientInfo.getIdNo());
+                    i.setPatientSex(SexTypeEnum.getName(patientInfo.getSex()));
+                    i.setPatientAge(DateUtil.yearCompare(patientInfo.getBirthday(), DateUtil.now()));
+                }
+                
+                List<InquiryDetail> detailList= inquiryDetailMap.get(i.getInquiryId());
+                i.setDetailList(detailList);
+                String diagnose = detailList.stream().filter(inquiryDetail->inquiryDetail.getType()==7).map(inquiryDetail->inquiryDetail.getContentValue()).collect(Collectors.toList()).get(0);
+                i.setDiagnose(diagnose.split(";")[0]);
+            });
+    	}
+    	
+    	return ipage;
+    }
+    
+    
     /**
      * 急诊-添加二次诊断
      * 

+ 5 - 0
tran-service/src/main/java/com/diagbot/mapper/InquiryInfoMapper.java

@@ -1,7 +1,10 @@
 package com.diagbot.mapper;
 
+import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.entity.InquiryInfo;
+import com.diagbot.vo.HisInquirysForJzVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 
 /**
  * <p>
@@ -12,5 +15,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2019-05-27
  */
 public interface InquiryInfoMapper extends BaseMapper<InquiryInfo> {
+	
+	IPage<HisInquirysForJzDTO> hisInquirysForJz(HisInquirysForJzVO hisInquirysForJzVO);
 
 }

+ 47 - 0
tran-service/src/main/java/com/diagbot/vo/HisInquirysForJzVO.java

@@ -0,0 +1,47 @@
+package com.diagbot.vo;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: rengb
+ * @time: 2018/11/19 18:58
+ */
+@ApiModel(value="急诊-历史病历列表接口传参")
+@SuppressWarnings({ "rawtypes", "serial" })
+@Getter
+@Setter
+public class HisInquirysForJzVO extends Page {
+	
+	/**
+     * 医院id
+     */
+    private Long hospitalId;
+
+    /**
+     * 科室id
+     */
+    private Long hospitalDeptId;
+    
+	/**
+	 * 开始时间
+	 */
+	private Date startDate;
+	
+	/**
+	 * 结束时间
+	 */
+	private Date endDate;
+	
+	/**
+	 * 是否有二次诊断,0-没有,1-有
+	 */
+	private Integer isHasSecond; 
+	   
+}

+ 15 - 0
tran-service/src/main/java/com/diagbot/web/InquiryInfoController.java

@@ -7,10 +7,13 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.HisInquirysForJzDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.InquiryInfoFacade;
 import com.diagbot.vo.AddDiagnoseSecondVO;
+import com.diagbot.vo.HisInquirysForJzVO;
 import com.diagbot.vo.SaveInquiryToHisVO;
 
 import io.swagger.annotations.Api;
@@ -46,6 +49,18 @@ public class InquiryInfoController {
 	     return RespDTO.onSuc(inquiryInfoFacade.saveInquiryToHis(saveInquiryToHisVO));
 	 }
 	 
+	 /**
+	  * 急诊-历史病历列表
+	  * @param hisInquirysForJzVO
+	  * @return
+	  */
+	 @PostMapping("/hisInquirysForJz")
+	 @SysLogger("hisInquirysForJz")
+	 @ApiIgnore
+	 public RespDTO<IPage<HisInquirysForJzDTO>> hisInquirysForJz(@RequestBody HisInquirysForJzVO hisInquirysForJzVO) {
+		 return RespDTO.onSuc(inquiryInfoFacade.hisInquirysForJz(hisInquirysForJzVO));
+	 }
+	 
 	 /**
 	  * 急诊-添加二次诊断
 	  * @param addDiagnoseSecondVO

+ 49 - 0
tran-service/src/main/resources/mapper/InquiryInfoMapper.xml

@@ -20,5 +20,54 @@
         <result column="diagnose" property="diagnose" />
         <result column="remark" property="remark" />
     </resultMap>
+    
+    <select id="hisInquirysForJz" resultType="com.diagbot.dto.HisInquirysForJzDTO">
+    	SELECT
+		a.id AS inquiryId,
+		a.doctor_id AS doctorId,
+		e.`name` AS doctorName,
+		a.gmt_modified AS inquiryDate,
+		a.gmt_create AS inquiryTime,
+		b.doctorIdSecond,
+		f.`name` AS doctorNameSecond,
+		b.inquiryTimeSecond,
+		b.diagnoseSecond,
+		a.inquiry_code AS inquiryCode,
+		a.hospital_dept_id AS hospitalDeptId,
+		c.`name` AS hospitalDeptName,
+		a.patient_id AS patientId	
+		FROM tran_inquiry_info a
+		LEFT JOIN
+		(SELECT
+		inquiry_id AS inquiryId,
+		gmt_modified AS inquiryTimeSecond,
+		modifier AS doctorIdSecond,
+		content_value AS diagnoseSecond
+		FROM tran_inquiry_detail
+		WHERE type=9) b
+		ON a.id=b.inquiryId
+		LEFT JOIN tran_hospital_dept c ON a.hospital_dept_id=c.id
+		LEFT JOIN tran_doctor_info e ON a.doctor_id=e.id
+		LEFT JOIN tran_doctor_info f ON b.doctorIdSecond=f.id
+		WHERE 1=1
+		AND a.hospital_id=#{hospitalId}
+		AND a.hospital_dept_id=#{hospitalDeptId}
+		<if test="startDate!=null">
+			AND a.gmt_modified>=#{startDate}
+		</if>
+		<if test="endDate!=null">
+			AND #{endDate}>=a.gmt_modified
+		</if>
+		<choose>
+			<when test="isHasSecond==0">
+				AND b.inquiryId IS NULL
+			</when>
+			<when test="isHasSecond==1">
+				AND b.inquiryId IS NOT NULL
+			</when>
+			<otherwise></otherwise>
+		</choose>
+		ORDER BY a.gmt_modified DESC
+    </select>
 
 </mapper>