pengjingzhao 1 tydzień temu
rodzic
commit
722e077681

+ 121 - 110
src/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/yz-header/YzQueryCondition.vue

@@ -36,7 +36,8 @@
         <YfGrouo
           v-model="queryParam.groupNo"
           style="width: 90px"
-          v-title="'在新增医嘱的时候,去指定的药房查询药品。'"/>
+          v-title="'在新增医嘱的时候,去指定的药房查询药品。'"
+        />
       </label>
       <label>
         排序:
@@ -136,7 +137,7 @@
           '鼠标右键数据框,可以取消停止。'
         "
       >
-        批量停止
+        停止医嘱
         <template #dropdown>
           <el-dropdown-menu>
             <div v-title="'跳转到这个患者,修改医嘱时间的申请页面。'">
@@ -330,11 +331,15 @@
       <strong>主要诊断病种分值:{{ diseFamilyGrade }}</strong>
     </div>
     <el-tag type="info">医保诊断录入</el-tag>
-    <el-tag style="margin-left: 12px">患者:{{ props.patientInfo?.name }}</el-tag>
+    <el-tag style="margin-left: 12px"
+      >患者:{{ props.patientInfo?.name }}</el-tag
+    >
     <el-tag style="margin-left: 8px"
       >医疗类别:{{ props.patientInfo?.medTypeName }}
     </el-tag>
-    <el-tag style="margin-left: 8px">险种类型:{{ props.patientInfo?.insutype }}</el-tag>
+    <el-tag style="margin-left: 8px"
+      >险种类型:{{ props.patientInfo?.insutype }}</el-tag
+    >
     <div style="height: 5px"></div>
     <el-input
       v-model="ybDiag.name"
@@ -515,7 +520,6 @@
   <CopyTableDataOrder v-model="copyTableDialog" v-if="copyTableDialog" />
 </template>
 
-
 <script setup lang="jsx">
 import { MLRKON_CLIENT } from "@/api/heliyongyao/mlrkon.js";
 import {
@@ -563,10 +567,11 @@ import { useDialog } from "@/components/cy/CyDialog/index";
 import XEUtils from "xe-utils";
 
 import { useYfGroupStore } from "@/pinia/use-yf-group";
-import { rationalUseOfMedicine , getInfoRationalUseOfMedicine} from "@/api/heliyongyao/rational-use";
 import {
-  getPatientAllergens,
-} from '@/api/public-api'
+  rationalUseOfMedicine,
+  getInfoRationalUseOfMedicine,
+} from "@/api/heliyongyao/rational-use";
+import { getPatientAllergens } from "@/api/public-api";
 import {
   doSaveYbDiags,
   fetchSsfz,
@@ -580,7 +585,6 @@ import { watchEffect } from "vue";
 
 import YfGrouo from "@/components/cy/yf-group/YfGrouo.vue";
 
-
 const props = defineProps({
   patientInfo: {
     type: Object,
@@ -654,13 +658,13 @@ const searchMethods = [
 ];
 
 // 过滤出院病情状态
-const filterDismissStatus = (status) => {
+const filterDismissStatus = status => {
   const statusMap = {
     1: "治愈",
     2: "好转",
     3: "未愈",
     4: "死亡",
-    9: "其他"
+    9: "其他",
   };
   return statusMap[status] || "";
 };
@@ -675,13 +679,15 @@ const openYbDiag = () => {
     xcMessage.error("自费病人无需填写医保诊断");
     return;
   }
-  
+
   // 获取医保诊断列表
-  getYbDiags(props.patientInfo.inpatientNo, props.patientInfo.admissTimes).then(res => {
-    ybDiags.value = res;
-    showYbDiag.value = true;
-  });
-  
+  getYbDiags(props.patientInfo.inpatientNo, props.patientInfo.admissTimes).then(
+    res => {
+      ybDiags.value = res;
+      showYbDiag.value = true;
+    }
+  );
+
   // 获取病案诊断信息
   //getDisDiag(props.patientInfo.inpatientNo, props.patientInfo.admissTimes).then(res => {
   //  filterDisDiagList.value = res.filter(item => item.code && item.name);
@@ -689,7 +695,7 @@ const openYbDiag = () => {
 };
 
 // 显示搜索对话框
-const showSearchData = (flag) => {
+const showSearchData = flag => {
   searchUrl.value = "diag";
   searchTargetCode.value = "ybDiagCode";
   showSearch.value = true;
@@ -734,18 +740,20 @@ const nextPage = () => {
 };
 
 // 处理搜索选择
-const handleSelectSearch = (item) => {
+const handleSelectSearch = item => {
   if (searchTargetCode.value === "ybDiagCode") {
     ybDiag.code = item.code;
     ybDiag.name = item.name;
     ybDiag.cyzg = 0;
     ybDiag.siDiagType = 1;
     if (!ybDiags.value || ybDiags.value.length === 0) {
-      fetchSsfz(item.code, props.patientInfo.inpatientNo, props.patientInfo.admissTimes).then(
-        res => {
-          diseFamilyGrade.value = res;
-        }
-      );
+      fetchSsfz(
+        item.code,
+        props.patientInfo.inpatientNo,
+        props.patientInfo.admissTimes
+      ).then(res => {
+        diseFamilyGrade.value = res;
+      });
     }
   }
   searchContent.value = "";
@@ -772,7 +780,7 @@ const addToYbDiags = () => {
 };
 
 // 删除医保诊断
-const deleteYbDiag = (index) => {
+const deleteYbDiag = index => {
   ybDiags.value.splice(index, 1);
 };
 
@@ -789,18 +797,20 @@ const saveYbDiags = () => {
 };
 
 // 同步病案诊断到医保诊断
-const syncronizeWithSiDiagnose = (code) => {
+const syncronizeWithSiDiagnose = code => {
   selectSiDiagByBaDiag(code).then(res => {
     ybDiag.code = res.code;
     ybDiag.name = res.name;
     ybDiag.cyzg = 0;
     ybDiag.siDiagType = 1;
     if (!ybDiags.value || ybDiags.value.length === 0) {
-      fetchSsfz(res.code, props.patientInfo.inpatientNo, props.patientInfo.admissTimes).then(
-        res2 => {
-          diseFamilyGrade.value = res2;
-        }
-      );
+      fetchSsfz(
+        res.code,
+        props.patientInfo.inpatientNo,
+        props.patientInfo.admissTimes
+      ).then(res2 => {
+        diseFamilyGrade.value = res2;
+      });
     }
   });
 };
@@ -835,7 +845,7 @@ const addYiZhuClick = () => {
 };
 
 let yzList = ref([]);
-let patientAllergenData = ref([]);  
+let patientAllergenData = ref([]);
 const currentConfirmOrdersClick = async () => {
   if (!props.patientInfo.inpatientNo) {
     BizException(ExceptionEnum.MESSAGE_ERROR, "请先选择患者");
@@ -846,92 +856,93 @@ const currentConfirmOrdersClick = async () => {
   await getInfoRationalUseOfMedicine(
     props.patientInfo.inpatientNo,
     props.patientInfo.admissTimes
-  ).then(res=>{
-    if(res && res.list && res.list.length>0){
-      let resultList = res.list
-      let currentGroupNo = 0
-      resultList.forEach(item=>{
-        if(item.parentNo) {
-          let groupParent =  resultList.find(citem => citem.actOrderNo === item.parentNo)
-          if(groupParent){
-            if(groupParent.group) {
-              item.group = groupParent.group
-            } else {
-              item.group = currentGroupNo
-              groupParent.group = currentGroupNo
-            } 
+  )
+    .then(res => {
+      if (res && res.list && res.list.length > 0) {
+        let resultList = res.list;
+        let currentGroupNo = 0;
+        resultList.forEach(item => {
+          if (item.parentNo) {
+            let groupParent = resultList.find(
+              citem => citem.actOrderNo === item.parentNo
+            );
+            if (groupParent) {
+              if (groupParent.group) {
+                item.group = groupParent.group;
+              } else {
+                item.group = currentGroupNo;
+                groupParent.group = currentGroupNo;
+              }
+            }
+            currentGroupNo++;
+          } else if (!item.group) {
+            item.group = currentGroupNo;
+            currentGroupNo++;
           }
-          currentGroupNo++ ;
-        } else if(!item.group) {
-          item.group = currentGroupNo
-          currentGroupNo++ ;
-        } 
-      })
-      console.log("resultList",resultList);
-        yzList.value = resultList.map(item=>  (
-        {  
-          id : item.id , 
-          code  : item.orderCode,
-          route : item.supplyCodeName,
-          dose :item.dose ,
-          doseUnit : item.doseUnitName,
-          freq : item.frequCode,
-          unit : item.miniUnitName ,
-          repeat : item.frequCode ? item.frequCode == "ONCE" ? "0" : "1" : "",
-          startDateTime : item.startTime,
-          group : item.group + ""
-         } 
-        )
-        );
-        console.log(yzList.value,"yzList")
-    }
-   }).catch(err=>{
-    console.log("err",err);
-    BizException(ExceptionEnum.MESSAGE_ERROR, "网络错误!");
-  })
+        });
+        console.log("resultList", resultList);
+        yzList.value = resultList.map(item => ({
+          id: item.id,
+          code: item.orderCode,
+          route: item.supplyCodeName,
+          dose: item.dose,
+          doseUnit: item.doseUnitName,
+          freq: item.frequCode,
+          unit: item.miniUnitName,
+          repeat: item.frequCode ? (item.frequCode == "ONCE" ? "0" : "1") : "",
+          startDateTime: item.startTime,
+          group: item.group + "",
+        }));
+        console.log(yzList.value, "yzList");
+      }
+    })
+    .catch(err => {
+      console.log("err", err);
+      BizException(ExceptionEnum.MESSAGE_ERROR, "网络错误!");
+    });
   // 获取患者诊断
-  let admissDigArr = props.patientInfo.admissDiag.split(",")
-  let admissDigNameArr = props.patientInfo.admissDiagStr.split(",")
-  let patientDiag = ref([])
+  let admissDigArr = props.patientInfo.admissDiag.split(",");
+  let admissDigNameArr = props.patientInfo.admissDiagStr.split(",");
+  let patientDiag = ref([]);
   for (let i = 0; i < admissDigArr.length; i++) {
     patientDiag.value.push({
       code: admissDigArr[i],
-      name: admissDigNameArr[i]
-    })
+      name: admissDigNameArr[i],
+    });
   }
   // 获取患者过敏史
-  await getPatientAllergens(props.patientInfo.inpatientNo).then((res) => {
-      patientAllergenData.value = res
-      console.log("patientAllergenData",patientAllergenData.value);
-  })
+  await getPatientAllergens(props.patientInfo.inpatientNo).then(res => {
+    patientAllergenData.value = res;
+    console.log("patientAllergenData", patientAllergenData.value);
+  });
   // console.log("yiZhuData",yiZhuData);
   let params = {
-    station:{ 
-      "type":"1"  //门诊2 住院1,工作站类型
+    station: {
+      type: "1", //门诊2 住院1,工作站类型
     },
     doctor: {
-      code: userStore.codeRs,  //医生编码
-      name: userStore.name ,  //医生姓名
-      deptCode:userStore.deptCode,   //科室编码
+      code: userStore.codeRs, //医生编码
+      name: userStore.name, //医生姓名
+      deptCode: userStore.deptCode, //科室编码
     },
-    patient:{
-      id : props.patientInfo.inpatientNo,
-      code : props.patientInfo.patNo,
-      visitId:"" ,
-      name : props.patientInfo.name,
-      chargeType : props.patientInfo.medTypeName,
-      sex : props.patientInfo.sexName,
-      deptCode : props.patientInfo.smallDept,
-      birthday : props.patientInfo.birthDate,
-      height :"",
-      weight :"", 
-      medconds :{
-        diag : patientDiag,
-        allergens : patientAllergenData.value
-      }
+    patient: {
+      id: props.patientInfo.inpatientNo,
+      code: props.patientInfo.patNo,
+      visitId: "",
+      name: props.patientInfo.name,
+      chargeType: props.patientInfo.medTypeName,
+      sex: props.patientInfo.sexName,
+      deptCode: props.patientInfo.smallDept,
+      birthday: props.patientInfo.birthDate,
+      height: "",
+      weight: "",
+      medconds: {
+        diag: patientDiag,
+        allergens: patientAllergenData.value,
+      },
     },
-    orders:yzList
-  }
+    orders: yzList,
+  };
   // console.log("userStore",userStore);
   // console.log("MLRKON_CLIENT",MLRKON_CLIENT)
   // console.log("MLRKON_CLIENT-params",params)
@@ -945,15 +956,15 @@ const currentConfirmOrdersClick = async () => {
   //     xcMessage.error("合理用药未通过");
   //   }
   // }
-  
+
   // await MLRKON_CLIENT.doCall("srv_screen", JSON.stringify(params), { "api": false, "timeout": 10000}, getResult)
-  props.confirmOrdersClick()
+  props.confirmOrdersClick();
   // return
 };
 
-  const mlrkonCallBack = (data) => { 
-    console.log("mlrkonCallBack",data);
-  };
+const mlrkonCallBack = data => {
+  console.log("mlrkonCallBack", data);
+};
 
 /**
  * 确认医嘱