lighter 1 рік тому
батько
коміт
7e14ece90e

+ 5 - 0
src/main/java/thyyxxk/webserver/controller/zhuyuanyizheng/CriticalValuesController.java

@@ -42,4 +42,9 @@ public class CriticalValuesController {
         }
         return ResultVoUtil.success(list);
     }
+
+    @GetMapping("/handleZyCriticalValue")
+    public ResultVo<String> handleZyCriticalValue(@RequestParam("id") Integer id) {
+        return service.handleZyCriticalValue(id);
+    }
 }

+ 10 - 2
src/main/java/thyyxxk/webserver/dao/his/zhuyuanyisheng/PatientCriticalValuesDao.java

@@ -50,9 +50,17 @@ public interface PatientCriticalValuesDao {
     @Select("select top 1 code,name from zd_unit_code where name=#{name}")
     CodeName selectTargetDeptByName(String name);
 
-    @Select("select * from t_critical_message where patient_type='INPATIENT' ")
+    @Select("select *, " +
+            "handleStaffName=(select rtrim(d.name) from a_employee_mi d where d.code=handle_staff) " +
+            "from t_critical_message where patient_type='INPATIENT' ")
     List<CriticalValue> selectAllInpatientCriticalValues();
 
-    @Select("select * from t_critical_message where pat_no=#{patNo}")
+    @Select("select *, " +
+            "handleStaffName=(select rtrim(d.name) from a_employee_mi d where d.code=handle_staff) " +
+            "from t_critical_message where pat_no=#{patNo}")
     List<CriticalValue> selectCriticalValuesByPatNo(String patNo);
+
+    @Update("update t_critical_message set handle_time=getdate(), " +
+            "handle_staff=#{staff} where id=#{id} ")
+    int handleZyCriticalValue(Integer id, String staff);
 }

+ 1 - 0
src/main/java/thyyxxk/webserver/entity/criticalValue/CriticalValue.java

@@ -22,6 +22,7 @@ public class CriticalValue {
     private Date sendTime;
     private Date handleTime;
     private String handleStaff;
+    private String handleStaffName;
 
     public CriticalValue(String patNo, String msgId, String msgType, String sourceCode, String sourceName, String targetDeptCode, String targetDeptName, String content, Date createTime, PatientType patientType, InspectionType inspectionType) {
         this.patNo = patNo;

+ 10 - 4
src/main/java/thyyxxk/webserver/service/zhuyuanyisheng/PatientCriticalValuesService.java

@@ -18,10 +18,7 @@ import thyyxxk.webserver.entity.dictionary.CodeName;
 import thyyxxk.webserver.entity.socketmessage.SendUserList;
 import thyyxxk.webserver.service.externalhttp.WebSocketService;
 import thyyxxk.webserver.service.outpatient.wxapi.SendWxInfoService;
-import thyyxxk.webserver.utils.DateUtil;
-import thyyxxk.webserver.utils.ResultVoUtil;
-import thyyxxk.webserver.utils.SocketMsg;
-import thyyxxk.webserver.utils.StringUtil;
+import thyyxxk.webserver.utils.*;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -229,4 +226,13 @@ public class PatientCriticalValuesService {
         }
         return dao.selectCriticalValuesByPatNo(patNo);
     }
+
+    public ResultVo<String> handleZyCriticalValue(Integer id) {
+        String handleStaff = TokenUtil.getInstance().getTokenUserId();
+        int response = dao.handleZyCriticalValue(id, handleStaff);
+        if (response > 0) {
+            return ResultVoUtil.success("处理成功。");
+        }
+        return ResultVoUtil.fail(ExceptionEnum.INTERNAL_SERVER_ERROR, "处理失败,请稍后再试。");
+    }
 }