瀏覽代碼

no message

xiaochan 1 年之前
父節點
當前提交
90d16195f3

+ 1 - 1
src/api/emr-control/emr-control.ts

@@ -42,7 +42,7 @@ export function saveEmr(data: any) {
     });
 }
 
-export function finalControlAdvancedRetrieval(data) {
+export function finalControlAdvancedRetrieval(data: any) {
     return request({
         url: '/emrQualityControl/finalControlAdvancedRetrieval',
         method: 'post',

+ 1 - 0
src/api/emr-control/request.ts

@@ -5,6 +5,7 @@ import {useUserStore} from "@/pinia/user-store";
 const userStore = useUserStore()
 
 const service = axios.create({
+    // @ts-ignore
     baseURL: "http://" + import.meta.env.VITE_EMR_CONTROL_URL,
     withCredentials: true,
     timeout: 0,

+ 1 - 2
src/layout/MenuV2/MenuV2.vue

@@ -2,7 +2,6 @@
   <div class="floating">
     <div>
       <Logo/>
-
       <div style="height: 30px; padding: 0 8px 8px 8px" @click="expandMenu" id="tutorial_search_menu">
         <el-input ref="searchRef"
                   v-model="menuText"
@@ -13,7 +12,7 @@
       </div>
     </div>
 
-    <div class="cy_display_flex_y">
+    <div class="cy_flex_1-y">
       <el-scrollbar>
         <el-menu
             v-if="rendering"

+ 1 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr-editor/components/EmrSidebar.tsx

@@ -1,3 +1,4 @@
+// @ts-nocheck
 import {
     defineComponent,
     h,

+ 14 - 3
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr-func/emr-socket.ts

@@ -1,4 +1,5 @@
 import {uuid} from '@/utils/getUuid'
+// @ts-ignore
 import {sendAMessage} from '@/utils/websocket'
 import {useUserStore} from "@/pinia/user-store";
 
@@ -9,7 +10,15 @@ const emrServer: string = "ws://" + import.meta.env.VITE_EMR_CONTROL_URL + "/web
 
 let socket = null
 
-export const openSocket = (): void => {
+export const openSocket = (): () => void => {
+
+    let socketSetTimeout: number | null = null
+
+    function clearSocket() {
+        if (socketSetTimeout !== null)
+            clearTimeout(socketSetTimeout)
+    }
+
     let url: string = emrServer + sid;
 
     if ('WebSocket' in window) {
@@ -19,7 +28,7 @@ export const openSocket = (): void => {
         socket = null
     }
 
-    if (socket == null) return
+    if (socket == null) return clearSocket
 
     socket.onmessage = function (e): void {
         let data = JSON.parse(e.data)
@@ -27,9 +36,11 @@ export const openSocket = (): void => {
     }
 
     socket.onclose = function (): void {
-        setTimeout((): void => {
+        socketSetTimeout = setTimeout((): void => {
             openSocket()
         }, 3000)
     }
 
+    return clearSocket
+
 }

+ 7 - 13
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr_control_rule/EmrControlRule.vue

@@ -1,5 +1,4 @@
 <template>
-
   <div class="cy_main_card">
     <div class="cy_display_flex_y">
       <div>
@@ -18,8 +17,7 @@
 
 
         <el-button type="primary"
-                   :loading="load"
-                   @click="queryQualityControlData">查询质控数据
+                   @click="querySearch">查询质控数据
         </el-button>
 
         <el-button @click="queryScale">
@@ -74,9 +72,6 @@ import useVxeTable from "@/utils/cy-use/useVxeTable";
 
 const intervalPatients = ref([])
 const timeType = ref('intervalPatients')
-
-const load = ref(false)
-
 const percentage = ref(0)
 const numberToArray = ref([])
 const tabsModel = ref('质控数量')
@@ -85,24 +80,24 @@ const ruleReturnData = ref({
   patient: []
 })
 
-const {CyVxeTable} = useVxeTable({
-  localPaging: true
-});
-
 const siftData = ref({})
 
 const queryQualityControlData = async () => {
   let {startTime, endTime} = getDateRangeFormatDate(intervalPatients.value)
-  load.value = true
   percentage.value = 0
   siftData.value = {}
   let res = await linkQualityControl(startTime, endTime, sid, timeType.value)
   ruleReturnData.value = res
   proportion.value = res.proportion
   numberToArrayFunc()
-  load.value = false
 }
 
+const {CyVxeTable, querySearch} = useVxeTable({
+  localPaging: true,
+  keyField: '',
+  remoteSearch: queryQualityControlData
+});
+
 const numberToArrayFunc = () => {
   numberToArray.value = []
   for (let key in ruleReturnData.value.count) {
@@ -148,7 +143,6 @@ onMounted(() => {
     percentage.value = makePercentage(data.current, data.total)
   })
 })
-
 </script>
 
 <style lang="scss">

+ 2 - 1
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr_control_rule/RuleSift.vue

@@ -60,7 +60,8 @@ const props = defineProps({
 })
 
 const {CyVxeTable} = useVxeTable({
-  localPaging: true
+  localPaging: true,
+  keyField: '',
 });
 
 const exportExcel = () => {