lighter 3 år sedan
förälder
incheckning
01aba6d619
1 ändrade filer med 98 tillägg och 101 borttagningar
  1. 98 101
      src/views/settings/Test.vue

+ 98 - 101
src/views/settings/Test.vue

@@ -1,123 +1,120 @@
 <template>
-  <xc-select-v2 v-model="obj"
-                value="tcode" label="tname"
-                :data="data" :remote-method="testmethod"/>
-  测试:
-  <el-button @click="test1">清空</el-button>
-  <el-button @click="generateData">生成数据</el-button>
-
-  <xc-table :data="tableData" row-key="code" localPaging small @currentChange="currentChange">
-    <el-table-column type="selection" reserve-selection/>
-    <el-table-column label="编码" prop="code"></el-table-column>
-    <el-table-column label="名称" prop="name"></el-table-column>
-    <el-table-column label="其他" prop="qita"></el-table-column>
-  </xc-table>
-
+  <el-container>
+    <el-header>
+      <el-button type="primary" @click="testSave">testSave</el-button>
+      <el-button type="primary" @click="testPrint">testPrint</el-button>
+      <el-button type="primary" @click="testDelete">testDelete</el-button>
+    </el-header>
+    <el-main>
+      <div class="emr-iframe" name="emr">
+        <iframe id="emrIframe" src="/emr/runtime/?documentId=&categoryCode=3f3e2d6006ff11edbc820dada413ba28&patientId=testpatient"></iframe>
+      </div>
+    </el-main>
+  </el-container>
 </template>
 
-<script setup name='Test'>
-import sleep from "@/utils/sleep";
-import XcTable from "@/components/xc/xc-table/XcTable.vue";
-import {clone} from "@/utils/clone";
-import {uuid} from "@/utils/getUuid";
+<script>
 
-let dataV2 = $ref([])
+export default {
+  setup() {
 
-let tableData = $ref({
-  data: [],
-  currentPage: 1,
-  pageSize: 30,
-  total: 0
-})
+    const currentEmr = ref(null)
 
+    const testSave = () => {
+      console.log('test save clicked.')
+      currentEmr.value.saveDocument(null);
+    }
 
-const vChange = (val) => {
-  console.log(val)
-}
-
-const currentChange = (val) => {
-  console.log(tableData)
-  console.log(tableData.currentPage)
-}
-
-const obj = $ref({
-  tcode: '',
-  tname: ''
-})
+    const testPrint = () => {
+      console.log('test print clicked.')
+      currentEmr.value.printDocument(null);
+    }
 
-let data = $ref([])
+    const testDelete = () => {
+      console.log('test delete clicked.')
+      currentEmr.value.deleteDocument(null);
+    }
+    onMounted(() => {
+      console.log('mounted.')
+      nextTick(() => {
+        console.log('start initializing.')
+        currentEmr.value = new EMRInteractive();
+        const iframe = document.getElementById('emrIframe')
+        iframe.parentElement.emr = currentEmr.value
+        // currentEmr.value.setEditor()
+        console.log('initialized.')
+      })
 
-const generateData = () => {
-  for (let i = 0; i < 1000; i++) {
-    data.push({
-      value: i.toString(),
-      label: i === 4 ? 'asdghashjgdhjasgdhjasgdhjasgdhjasgdjhasdg' : 'test' + i
     })
-  }
-
-}
 
-const testmethod = async (val) => {
-  console.log('触发查询事件', val)
-  let length = Math.ceil((Math.random() * 10) * 100)
-  let index = Math.ceil((Math.random() * 10) * 10)
-  data = []
-  for (let i = 0; i < length; i++) {
-    if (i === index) {
-      data.push({
-        value: val,
-        label: i + 'label' + '数据'
-      })
+    return {
+      testSave,
+      testPrint,
+      testDelete
     }
-    data.push({
-      value: val + i,
-      label: i + 'label'
-    })
   }
-  await sleep(2000)
-  obj.tname = ''
-  data = []
-}
-
-const test1 = async () => {
-  data = []
-  await sleep(1000)
-  obj.tcode = 'ad' + Math.ceil((Math.random() * 10))
-  console.log(obj.tcode)
 }
 
-let searchMethod = $ref('')
-const te = (val) => {
-  searchMethod = val
-  console.log(val)
-}
-
-let children = []
-
-for (let i = 0; i < 1000; i++) {
-  children = []
-  for (let j = 0; j < 10; j++) {
-    children.push({
-      code: i + j + 'value' + uuid(5, 62),
-      name: 'name' + j,
-      qita: 'qita' + 12,
+function EMRInteractive() {
+  this.setEditor = (editor, runtime) => {
+    this.editor = editor;
+    this.runtime = runtime;
+  };
+
+  this.getAppContext = () => {
+    return {
+      endpoints: {
+        app: "http://127.0.0.1:3000",
+      },
+      login: {
+        user: {
+          id: "testuser",
+          name: "测试人员",
+        },
+      },
+      data: {
+        emr: {
+          patient: {
+            name: '张三'
+          }
+        }
+      },
+    };
+  };
+  
+  this.saveDocument = (cb) => {
+    console.log('save document.', this)
+
+    let data = this.editor.getDocument();
+    data.properties.categoryCode='3f3e2d6006ff11edbc820dada413ba28';
+    data.properties.patientId = 'testpatient';
+    this.runtime.saveDocument(
+        data,
+        (res) => {
+          console.log("emr保存成功", res);
+        },
+        (err) => {
+          console.log("emr保存失败", err);
+        }
+    );
+  };
+  this.deleteDocument = (cb) => {
+    console.log('delete document.')
+    let documentId = '3f3e2d6006ff11edbc820dada413ba28';
+    this.runtime.delDocument(documentId, (res) => {
+      console.log("emr删除成功");
     });
-  }
-  tableData.data.push({
-    code: 'code' + i,
-    name: 'name' + i,
-    qita: 'qita' + 12,
-    children: i % 3 === 0 ? clone(children) : []
-  })
+  };
+  this.printDocument = (showPreview, docs = null) => {
+    console.log('print document.')
+  };
 }
 
-console.log(tableData)
-
-tableData.total = tableData.data.length
-
-
 </script>
 
 <style scoped>
-
+  .emr-iframe,iframe {
+    width: 100%;
+    height: 700px;
+  }
 </style>