Browse Source

修复病程记录的问题

xiaochan 2 năm trước cách đây
mục cha
commit
423d989ed0

+ 6 - 3
src/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr-editor/EmrMain.vue

@@ -431,8 +431,10 @@ const emrEvent = {
     // 每一个病历只能一个人编辑
     await editJudgment()
     openOrClosePage(isOpenPage.value)
-    // 如果创建人不是自己就要开启审阅
-    openTheTraceByUser(createId)
+    // 如果创建人不是自己就要开启审阅 如果是病程记录就不需要触发
+    if (!isCourse()) {
+      openTheTraceByUser(createId)
+    }
   },
 
   'contentchange': (e, op) => {
@@ -492,6 +494,8 @@ const emrEvent = {
     let walker = modelService.createTreeWalker(node);
     let values = modelService.getElementsDataFromWalker(walker, '编辑者');
     let editorCode = values['编辑者']?.value[0]?.code;
+    console.log(123)
+    // console.log(editorCode, userData.code)
     if (editorCode) {
       openTheTraceByUser(editorCode)
     }
@@ -1410,7 +1414,6 @@ const modRightRef = ref(null)
 const rightRef = ref(null)
 const rightRefOld = ref(null)
 
-
 const turnOnConciseMode = () => {
   modLeftRef.value.appendChild(leftRef.value)
   modRightRef.value.appendChild(rightRef.value)

+ 71 - 29
src/views/settings/Test.vue

@@ -1,42 +1,84 @@
 <template>
-
-  <xc-combo-grid-v2
-      v-model="obj.code"
-      clearable
-      filterable
-      v-model:data="data"/>
-
-  <el-button @click="测试('04.0412')">测试1</el-button>
-  <el-button @click="测试('11')">测试2</el-button>
-
+  <el-form>
+    <el-row :gutter="2">
+      <el-col v-for="item in testJson.header" :span="item.col || 4">
+        <el-form-item :label="item.label">
+          <component
+              v-model="queryParam[item.key]"
+              v-bind="item.bind"
+              :is="el[item.name]">
+            <template v-if="item.selectData">
+              <el-option :label="select.name"
+                         :value="select.code"
+                         v-for="select in item.selectData"/>
+            </template>
+            {{ item.text }}
+          </component>
+        </el-form-item>
+      </el-col>
+      <el-col :span="3">
+        <el-button @click="执行查询">查询</el-button>
+        <el-button>重置</el-button>
+      </el-col>
+    </el-row>
+  </el-form>
 </template>
 
-<script setup>
-import XcComboGridV2 from "@/components/xiao-chan/combo-grid/XcComboGridV2.vue";
-import {obtainSurgicalItems} from "@/api/zhu-yuan-yi-sheng/shou-shu-shen-qing";
+<script setup lang="ts">
+import * as el from "element-plus";
+import {onMounted, ref} from 'vue'
+import XEUtils from 'xe-utils'
 
-const model = ref('')
+interface codeName {
+  code: string | number
+  name: string
+}
 
-const obj = ref({
-  code: '',
-  codeName: '',
-})
+interface header {
+  name: string
+  bind?: any,
+  text?: string
+  key?: string
+  label?: string
+  col?: number
+  selectData?: codeName[]
+}
 
-const data = ref([])
+interface componentType {
+  header: Array<header>,
+  querySql: string,
+}
 
-const queryOperation = (val) => {
-  return obtainSurgicalItems(val, 0)
+let testJson: componentType = {
+  header: [
+    {name: 'ElInput', label: '人员编码', bind: {style: {width: "220px"}}, key: 'code'},
+    {
+      name: 'ElSelect', label: '停用', key: 'del_flag',
+      selectData: [
+        {code: 1, name: '删除'},
+        {code: 2, name: '启用'},
+      ]
+    }
+  ],
+  querySql: "select * from a_employee_mi where 1=1 <if> and code = '{{code}}' </if> <if> and isnull(del_flag, '0') = '{{del_flag}}' </if>",
 }
 
-const 测试 = (val) => {
-  obj.value.code = val
+const queryParam = ref({})
+
+const 执行查询 = () => {
+  let regex = /<if>([\s\S]*?)<\/if>/g;
+  let match = regex.exec(testJson.querySql);
+
+  console.log(match)
+  console.log(XEUtils.template(testJson.querySql, queryParam.value));
 }
 
-onMounted(async () => {
-  data.value = await obtainSurgicalItems('12', 0)
+onMounted(() => {
+  testJson.header.forEach(item => {
+    queryParam.value[item.key] = ''
+  })
+  console.log(queryParam.value)
+  console.log(el)
 })
-</script>
-
-<style lang="scss">
 
-</style>
+</script>