Browse Source

满意度调查可以查看患者的出院科室

lighter 1 năm trước cách đây
mục cha
commit
61cc5ba4f0

+ 3 - 2
src/main/java/thyyxxk/webserver/controller/outpatient/interactive/clinicsatisfied/ClinicSatisfiedController.java

@@ -46,8 +46,9 @@ public class ClinicSatisfiedController {
     }
 
     @GetMapping("/getPatientBriefInfo")
-    public ResultVo<PatientBriefInfo> getPatientBriefInfo(@RequestParam("patNo") String patNo) {
-        PatientBriefInfo info = service.getPatientBriefInfo(patNo);
+    public ResultVo<PatientBriefInfo> getPatientBriefInfo(@RequestParam("patNo") String patNo,
+                                                          @RequestParam("times") Integer times) {
+        PatientBriefInfo info = service.getPatientBriefInfo(patNo, times);
         if (null == info) {
             return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST, "没有找到患者的基础数据。");
         }

+ 7 - 4
src/main/java/thyyxxk/webserver/dao/his/outpatient/interactive/ClinicSatisfiedDao.java

@@ -56,11 +56,14 @@ public interface ClinicSatisfiedDao {
             "and suggestion is not null and LEN(suggestion)>5 order by id")
     List<BriefSuggestion> selectInpatientSuggestions(@Param(Constants.WRAPPER) QueryWrapper<?> queryWrapper);
 
-    @Select("select rtrim(name) as patName,isnull(home_tel,employer_tel) as phoneNo " +
-            "from a_patient_mi where inpatient_no=#{patNo}")
-    PatientBriefInfo selectInpatientBriefInfo(String patNo);
+    @Select("select rtrim(name) as patName,patNo=#{patNo}, " +
+            "phoneNo=(select isnull(d.home_tel,d.employer_tel) from a_patient_mi d " +
+            "where d.inpatient_no=a.inpatient_no), " +
+            "wardName=(select rtrim(d.name) from zd_unit_code d where d.code=a.zk_ward) " +
+            "from ${table} a where inpatient_no=#{patNo} and admiss_times=#{times}")
+    PatientBriefInfo selectInpatientBriefInfo(String table, String patNo, Integer times);
 
-    @Select("select rtrim(name) as patName,rtrim(phone_no) as phoneNo " +
+    @Select("select rtrim(name) as patName,rtrim(phone_no) as phoneNo,patNo=#{patNo} " +
             "from mz_patient_mi where patient_id=#{patNo}")
     PatientBriefInfo selectOutpatientBriefInfo(String patNo);
 }

+ 7 - 5
src/main/java/thyyxxk/webserver/service/outpatient/interactive/clinicsatisfied/ClinicSatisfiedService.java

@@ -196,11 +196,13 @@ public class ClinicSatisfiedService {
         return builder + input;
     }
 
-    public PatientBriefInfo getPatientBriefInfo(String patNo) {
-        PatientBriefInfo info = patNo.contains("-") ?
-                dao.selectOutpatientBriefInfo(patNo) : dao.selectInpatientBriefInfo(patNo);
-        if (null != info) {
-            info.setPatNo(patNo);
+    public PatientBriefInfo getPatientBriefInfo(String patNo, Integer times) {
+        if (times == 0) {
+            return dao.selectOutpatientBriefInfo(patNo);
+        }
+        PatientBriefInfo info = dao.selectInpatientBriefInfo("zy_inactpatient", patNo, times);
+        if (null == info) {
+            info = dao.selectInpatientBriefInfo("zy_actpatient", patNo, times);
         }
         return info;
     }