Browse Source

优化代码

xiaochan 2 years ago
parent
commit
8a7ce16226

+ 16 - 21
src/components/medical-insurance/medicine-return-order/GenerateMedicineReturnOrder.vue

@@ -44,19 +44,23 @@
           {{ value.groupName }}
         </div>
       </div>
-      <div style="border: 1px solid; height: 500px;width: 560px">
-        <div ref="divRef" style="width: 100%">
-          <table width="100%" style="height: 100%">
-            <thead>
+
+      <div ref="divRef">
+        <div style="height: 500px;width: 560px;">
+          <table border=1 width="100%" style="border:solid 1px black;border-collapse:collapse">
+            <thead style="height: 14pt; text-align: center">
             <tr>
-              <th colspan="7">
-                <div style="font-size: 20px;margin: 5px">护士退药单</div>
+              <th colspan="7" style="border: 0">
+                <div style="font-size: 20px">
+                  护士退药单
+                </div>
                 <div>
                   药单号: {{ data.pageNo === null ? '未生成药单' : data.pageNo }}
                 </div>
               </th>
             </tr>
-            <tr>
+
+            <tr class="tr-border_th">
               <th>编码</th>
               <th>名称</th>
               <th>规格</th>
@@ -64,8 +68,9 @@
               <th>零售价</th>
               <th>金额</th>
             </tr>
+
             </thead>
-            <tbody>
+
             <tr v-for="(drugs,di) in data.pageNo ===null ? data.notGenerated : data.toGenerate">
               <td>
                 {{ drugs.chargeCode }}
@@ -86,7 +91,6 @@
                 {{ -drugs.retprice }}
               </td>
             </tr>
-            </tbody>
             <tfoot>
             <tr>
               <td>总金额</td>
@@ -191,11 +195,11 @@ const divRef = ref(null)
 const printThePrescription = () => {
   let LODOP = getLodop()
   LODOP.PRINT_INIT('护士退药单') // 初始化打印机 名字
-  LODOP.SET_PRINT_PAGESIZE(1, 0, 0, 'A4')// 设置纸张大小  A4
+  LODOP.SET_PRINT_PAGESIZE(1, 0, 0, 'A5')// 设置纸张大小  A4
   LODOP.SET_PRINT_MODE('FULL_WIDTH_FOR_OVERFLOW', true) // 整宽不变形
-  let style = '<style>' + 'table,tr,td{border-collapse:collapse;border:1px solid}table{width:100%}' + '</style>'
+  let style = '<style>' + 'table,tr,td{border-collapse:collapse;border:1px solid #000}' + '</style>'
   let body = '<body>' + divRef.value?.innerHTML + '</body>'
-  LODOP.ADD_PRINT_HTM('2mm', '5mm', '100%', '100%', style + body) //要打印的内容
+  LODOP.ADD_PRINT_TABLE('2mm', '5mm', '100%', '100%', style + body) //要打印的内容
   LODOP.PREVIEW() // 关闭
 }
 
@@ -234,15 +238,6 @@ onMounted(async () => {
   margin-bottom: 5px;
 }
 
-table, tr, td {
-  border-collapse: collapse;
-  border: 1px solid;
-}
-
-table {
-  width: 100%;
-}
-
 .drug_button {
   padding: 5px;
   border-radius: 5px;

+ 269 - 263
src/components/zhu-yuan-yi-sheng/jian-cha-shen-qing/TianJiaJianChaJianYan.vue

@@ -1,133 +1,137 @@
 <template>
-    <div style="display: flex;margin: 0 10px">
-        <div style="width: 400px">
-            <el-radio-group v-model="chaZhaoLeiXing" @change="dianJiLeiXingChaXun">
-                <el-radio-button :label="1">新申请</el-radio-button>
-                <el-radio-button :label="2">个人模板</el-radio-button>
-                <el-radio-button :label="3">科室模板</el-radio-button>
-            </el-radio-group>
-            <div style="overflow: auto"
-                 :style="{height: getWindowSize.h -(yzHeaderSize + 75) + 'px'}">
-                <div v-show="chaZhaoLeiXing === 1">
-                    <JyJcTree yjyc="jy" @nodeClick="nodeClick"/>
-                </div>
-                <div v-show="chaZhaoLeiXing !== 1">
-                    <jy-jc-template-tree :data="templateData"
-                                         @node-click="tempClick"
-                                         @del-click="clickDeleteTemplate"/>
-                </div>
-            </div>
+  <div style="display: flex;margin: 0 10px">
+    <div style="width: 400px">
+      <el-radio-group v-model="chaZhaoLeiXing" @change="dianJiLeiXingChaXun">
+        <el-radio-button :label="1">新申请</el-radio-button>
+        <el-radio-button :label="2">个人模板</el-radio-button>
+        <el-radio-button :label="3">科室模板</el-radio-button>
+      </el-radio-group>
+      <div style="overflow: auto"
+           :style="{height: getWindowSize.h -(yzHeaderSize + 75) + 'px'}">
+        <div v-show="chaZhaoLeiXing === 1">
+          <JyJcTree yjyc="jy" @nodeClick="nodeClick"/>
         </div>
-
-        <div style="flex: 1">
-            <el-button @click="dianJiBaoCunShenQing">保存</el-button>
-            <el-button @click="clickSaveTemplate">存为模板</el-button>
-            <CuoWuXinXiVue/>
-            <!--   这里是检查的数据信息     -->
-            <el-table :data="xuanZhongJianCha.data"
-                      :header-cell-class-name="starAdd"
-                      :height="getWindowSize.h -(yzHeaderSize + 75)">
-                <el-table-column label="操作" width="90" fixed="left">
-                    <template #default="scope">
-                        <el-button-group>
-                            <el-button icon="Edit" type="primary"
-                                       @click="dianJiBianJi(scope.row, scope.$index)"></el-button>
-                            <el-button icon="Delete" type="danger"
-                                       @click="deleteInspectionCheck(scope.$index)"></el-button>
-                        </el-button-group>
-                    </template>
-                </el-table-column>
-                <el-table-column label="项目编码" prop="orderCode"></el-table-column>
-                <el-table-column label="项目名称" prop="orderName" show-overflow-tooltip></el-table-column>
-                <el-table-column label="检查时间" prop="startTime" show-overflow-tooltip></el-table-column>
-                <el-table-column label="执行科室" prop="execDeptName"></el-table-column>
-                <el-table-column label="急诊标识">
-                    <template #default="scope">
-                        <span v-if="scope.row.jzFlag === 1">√</span>
-                    </template>
-                </el-table-column>
-                <el-table-column label="自费">
-                    <template #default="scope">
-                        <span v-if="scope.row.ybSelfFlag === 1">√</span>
-                    </template>
-                </el-table-column>
-                <el-table-column v-if="!jianCha" label="标本" prop="inspectStuffName"
-                                 show-overflow-tooltip></el-table-column>
-                <el-table-column :label="jianCha ? '病史摘要' : '申请说明'" prop="reqComment"
-                                 show-overflow-tooltip></el-table-column>
-                <el-table-column v-if="jianCha" label="体征信息" prop="reqTzComment"
-                                 show-overflow-tooltip></el-table-column>
-                <el-table-column v-if="jianCha" label="辅检结果" prop="reqOtherResult"
-                                 show-overflow-tooltip></el-table-column>
-                <el-table-column v-if="jianCha" label="临床诊断" prop="diagText"
-                                 show-overflow-tooltip></el-table-column>
-            </el-table>
+        <div v-show="chaZhaoLeiXing !== 1">
+          <jy-jc-template-tree :data="templateData"
+                               @node-click="tempClick"
+                               @del-click="clickDeleteTemplate"/>
         </div>
+      </div>
+    </div>
 
+    <div style="flex: 1">
+      <el-button @click="dianJiBaoCunShenQing">保存</el-button>
+      <el-button @click="clickSaveTemplate">存为模板</el-button>
+      <CuoWuXinXiVue/>
+
+
+      <!--   这里是检查的数据信息     -->
+      <el-table :data="xuanZhongJianCha.data"
+                :header-cell-class-name="starAdd"
+                :height="getWindowSize.h -(yzHeaderSize + 75)">
+        <el-table-column label="操作" width="90" fixed="left">
+          <template #default="scope">
+            <el-button-group>
+              <el-button icon="Edit" type="primary"
+                         @click="dianJiBianJi(scope.row, scope.$index)"></el-button>
+              <el-button icon="Delete" type="danger"
+                         @click="deleteInspectionCheck(scope.$index)"></el-button>
+            </el-button-group>
+          </template>
+        </el-table-column>
+        <el-table-column label="项目编码" prop="orderCode"></el-table-column>
+        <el-table-column label="项目名称" prop="orderName" show-overflow-tooltip></el-table-column>
+        <el-table-column label="检查时间" prop="startTime" show-overflow-tooltip></el-table-column>
+        <el-table-column label="执行科室" prop="execDeptName"></el-table-column>
+        <el-table-column label="急诊标识">
+          <template #default="scope">
+            <span v-if="scope.row.jzFlag === 1">√</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="自费">
+          <template #default="scope">
+            <span v-if="scope.row.ybSelfFlag === 1">√</span>
+          </template>
+        </el-table-column>
+        <el-table-column v-if="!jianCha" label="标本" prop="inspectStuffName"
+                         show-overflow-tooltip></el-table-column>
+        <el-table-column :label="jianCha ? '病史摘要' : '申请说明'" prop="reqComment"
+                         show-overflow-tooltip></el-table-column>
+        <el-table-column v-if="jianCha" label="体征信息" prop="reqTzComment"
+                         show-overflow-tooltip></el-table-column>
+        <el-table-column v-if="jianCha" label="辅检结果" prop="reqOtherResult"
+                         show-overflow-tooltip></el-table-column>
+        <el-table-column v-if="jianCha" label="临床诊断" prop="diagText"
+                         show-overflow-tooltip></el-table-column>
+      </el-table>
     </div>
 
+  </div>
+
+
+  <el-dialog v-model="baoCunMuBan.dialog" center title="保存检查模板" width="30%">
+    <el-form ref="baoCunMuBanRef" :model="baoCunMuBan" :rules="baoCunMuBanJiaoYan" label-width="80px">
+      <el-row>
+        <el-col :span="24">
+          <el-form-item label="模板类型" prop="orderType">
+            <el-radio-group v-model="baoCunMuBan.orderType">
+              <el-radio-button :label="1">个人</el-radio-button>
+              <el-radio-button :label="2">科室</el-radio-button>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
+        <el-col :span="24">
+          <el-form-item label="名称" prop="tcName">
+            <el-input v-model="baoCunMuBan.tcName" ref="tcNameRef" clearable></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="24">
+          <el-form-item label="排序码" prop="sortNo">
+            <el-input-number v-model="baoCunMuBan.sortNo" :max="9999" :min="0"></el-input-number>
+          </el-form-item>
+        </el-col>
+        <el-col :span="24">
+          <el-form-item label="录入方式" prop="tcFlag">
+            <el-radio-group v-model="baoCunMuBan.tcFlag">
+              <el-radio-button :label="0">自动选择</el-radio-button>
+              <el-radio-button :label="1">手工录入</el-radio-button>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
+        <el-col :span="24">
+          <el-button @click="dianJiBaoCunMuBan(baoCunMuBanRef)">提交</el-button>
+          <el-button>关闭</el-button>
+        </el-col>
+      </el-row>
+    </el-form>
+  </el-dialog>
+  <BianJiJianYan ref="bianJiRef"
+                 :jian-cha="jianCha"
+                 @fanYe="bianJiFanYe"/>
+
+  <!--  <check-the-edits/>-->
 
-    <el-dialog v-model="baoCunMuBan.dialog" center title="保存检查模板" width="30%">
-        <el-form ref="baoCunMuBanRef" :model="baoCunMuBan" :rules="baoCunMuBanJiaoYan" label-width="80px">
-            <el-row>
-                <el-col :span="24">
-                    <el-form-item label="模板类型" prop="orderType">
-                        <el-radio-group v-model="baoCunMuBan.orderType">
-                            <el-radio-button :label="1">个人</el-radio-button>
-                            <el-radio-button :label="2">科室</el-radio-button>
-                        </el-radio-group>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="名称" prop="tcName">
-                        <el-input v-model="baoCunMuBan.tcName" ref="tcNameRef" clearable></el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="排序码" prop="sortNo">
-                        <el-input-number v-model="baoCunMuBan.sortNo" :max="9999" :min="0"></el-input-number>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item label="录入方式" prop="tcFlag">
-                        <el-radio-group v-model="baoCunMuBan.tcFlag">
-                            <el-radio-button :label="0">自动选择</el-radio-button>
-                            <el-radio-button :label="1">手工录入</el-radio-button>
-                        </el-radio-group>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="24">
-                    <el-button @click="dianJiBaoCunMuBan(baoCunMuBanRef)">提交</el-button>
-                    <el-button>关闭</el-button>
-                </el-col>
-            </el-row>
-        </el-form>
-    </el-dialog>
-
-    <BianJiJianYan ref="bianJiRef"
-                   :jian-cha="jianCha"
-                   @fanYe="bianJiFanYe"/>
 </template>
 
 <script setup name="TianJiaJianChaJianYan">
 import {computed, onMounted, ref} from 'vue'
 import {
-    baoCunJianChaJianYanMuBan,
-    baoCunJianYanJianCha,
-    getTemplate,
-    jianChaJianYanMuBanMing,
-    shanShuJianChaMuBan,
+  baoCunJianChaJianYanMuBan,
+  baoCunJianYanJianCha,
+  getTemplate,
+  jianChaJianYanMuBanMing,
+  shanShuJianChaMuBan,
 } from '@/api/zhu-yuan-yi-sheng/jian-yan-jian-cha-shen-qing'
 import store from '@/store'
 import {ElMessage, ElMessageBox} from 'element-plus'
 import {stringNotBlank} from '@/utils/blank-utils'
 import BianJiJianYan
-    from '@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/EditInspection.vue'
+  from '@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/EditInspection.vue'
 import {
-    cuoWuXinXi,
-    huanZheXinXi,
-    youWuXuanZheHuanZhe,
-    xuanZhongJianCha, yzHeaderSize
+  cuoWuXinXi,
+  huanZheXinXi,
+  youWuXuanZheHuanZhe,
+  xuanZhongJianCha, yzHeaderSize
 } from '@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng'
 import {getServerDateApi, yaoPinXiangMuPiPeiYiBao} from '@/api/public-api'
 import CuoWuXinXiVue from '@/components/zhu-yuan-yi-sheng/CuoWuXinXi.vue'
@@ -136,230 +140,232 @@ import {BizException, ExceptionEnum} from "@/utils/BizException";
 import JyJcTree from "@/components/zhu-yuan-yi-sheng/yi-zhu-lu-ru/jy-jc-tree/JyJcTree.vue";
 import {xcMessage} from "@/utils/xiaochan-element-plus";
 import JyJcTemplateTree
-    from "@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JyJcTemplateTree.vue";
+  from "@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JyJcTemplateTree.vue";
 import {getWindowSize} from '@/utils/window-size'
+import CheckTheEdits
+  from "@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/components/CheckTheEdits.vue";
 
 
 const props = defineProps({
-    jianCha: {
-        type: Boolean,
-        default: true,
-    },
+  jianCha: {
+    type: Boolean,
+    default: true,
+  },
 })
 const chaZhaoLeiXing = ref(1)
 
 const windowSize = computed(() => {
-    return store.state.app.windowSize
+  return store.state.app.windowSize
 })
 
 const bianJiRef = ref(null)
 const baoCunMuBanRef = ref()
 const tcNameRef = $ref(null)
 const baoCunMuBan = ref({
-    dialog: false,
-    tcName: '',
-    orderType: 1,
-    sortNo: 0,
-    tcFlag: 1,
-    fuGaiYuanShuJu: false,
-    chongFuMing: false,
+  dialog: false,
+  tcName: '',
+  orderType: 1,
+  sortNo: 0,
+  tcFlag: 1,
+  fuGaiYuanShuJu: false,
+  chongFuMing: false,
 })
 
 const templateData = ref()
 const dianJiLeiXingChaXun = () => {
-    getTemplate('2', chaZhaoLeiXing.value).then((res) => {
-        templateData.value = res
-    })
+  getTemplate('2', chaZhaoLeiXing.value).then((res) => {
+    templateData.value = res
+  })
 }
 
 const tempClick = async (data) => {
-    if (data.isTheParentNode === '2') {
-        if (xuanZhongJianCha.value.weiBianMa.indexOf(data.orderCode) > -1) {
-            BizException(ExceptionEnum.MESSAGE_ERROR, '请勿重复添加。')
-        }
-        data.startTime = await getServerDateApi()
-        xuanZhongJianCha.value.weiBianMa.push(data.orderCode)
-        xuanZhongJianCha.value.data.push(data)
+  if (data.isTheParentNode === '2') {
+    if (xuanZhongJianCha.value.weiBianMa.indexOf(data.orderCode) > -1) {
+      BizException(ExceptionEnum.MESSAGE_ERROR, '请勿重复添加。')
     }
+    data.startTime = await getServerDateApi()
+    xuanZhongJianCha.value.weiBianMa.push(data.orderCode)
+    xuanZhongJianCha.value.data.push(data)
+  }
 }
 
 const dianJiBianJi = (row, index) => {
-    bianJiRef.value.daKaiBenDuiHua(row, index, xuanZhongJianCha.value.data.length)
+  bianJiRef.value.daKaiBenDuiHua(row, index, xuanZhongJianCha.value.data.length)
 }
 
 const dianJiBaoCunShenQing = () => {
-    if (xuanZhongJianCha.value.data.length < 0) {
-        ElMessage.error('请选择数据')
-        return
-    }
-    if (youWuXuanZheHuanZhe()) {
-        clickSaveTemplate()
-        return
+  if (xuanZhongJianCha.value.data.length < 0) {
+    ElMessage.error('请选择数据')
+    return
+  }
+  if (youWuXuanZheHuanZhe()) {
+    clickSaveTemplate()
+    return
+  }
+  let listCode = []
+  xuanZhongJianCha.value.data.forEach((item) => {
+    listCode.push(item.orderCode + '-00')
+  })
+  yaoPinXiangMuPiPeiYiBao(listCode).then((res) => {
+    if (stringNotBlank(res)) {
+      cuoWuXinXi.value = res
+      ElMessageBox.confirm(res, '提示,仅提示,请继续电子确认完成保存。', {
+        type: 'warning',
+        dangerouslyUseHTMLString: true,
+        confirmButtonText: '继续录入'
+      }).then(() => {
+        baoCunShuJu()
+      }).catch(() => {
+      })
+    } else {
+      baoCunShuJu()
     }
-    let listCode = []
-    xuanZhongJianCha.value.data.forEach((item) => {
-        listCode.push(item.orderCode + '-00')
-    })
-    yaoPinXiangMuPiPeiYiBao(listCode).then((res) => {
-        if (stringNotBlank(res)) {
-            cuoWuXinXi.value = res
-            ElMessageBox.confirm(res, '提示,仅提示,请继续电子确认完成保存。', {
-                type: 'warning',
-                dangerouslyUseHTMLString: true,
-                confirmButtonText: '继续录入'
-            }).then(() => {
-                baoCunShuJu()
-            }).catch(() => {
-            })
-        } else {
-            baoCunShuJu()
-        }
-    })
+  })
 }
 
 function baoCunShuJu() {
-    ElMessageBox.confirm('确定要保存这些数据吗?', '提示', {
-        type: 'warning',
-    }).then(() => {
-        let data = huanZheXinXi.value
-        data.list = xuanZhongJianCha.value.data
-        data.reqType = props.jianCha ? 3 : 2
-        baoCunJianYanJianCha(data)
-            .then((res) => {
-                xuanZhongJianCha.value.weiBianMa = []
-                xuanZhongJianCha.value.data = []
-            })
-            .catch((e) => {
-                cuoWuXinXi.value = e
-            })
-    }).catch(() => {
-    })
+  ElMessageBox.confirm('确定要保存这些数据吗?', '提示', {
+    type: 'warning',
+  }).then(() => {
+    let data = huanZheXinXi.value
+    data.list = xuanZhongJianCha.value.data
+    data.reqType = props.jianCha ? 3 : 2
+    baoCunJianYanJianCha(data)
+        .then((res) => {
+          xuanZhongJianCha.value.weiBianMa = []
+          xuanZhongJianCha.value.data = []
+        })
+        .catch((e) => {
+          cuoWuXinXi.value = e
+        })
+  }).catch(() => {
+  })
 }
 
 const clickDeleteTemplate = (data) => {
-    ElMessageBox.confirm('是否要删除该模板', '提示', {
-        type: 'warning',
-    })
-        .then(() => {
-            shanShuJianChaMuBan(data.code, store.state.user.info.deptCode).then(() => {
-                dianJiLeiXingChaXun()
-            })
-        })
-        .catch(() => {
+  ElMessageBox.confirm('是否要删除该模板', '提示', {
+    type: 'warning',
+  })
+      .then(() => {
+        shanShuJianChaMuBan(data.code, store.state.user.info.deptCode).then(() => {
+          dianJiLeiXingChaXun()
         })
+      })
+      .catch(() => {
+      })
 }
 
 const baoCunMuBanJiaoYan = ref({
-    tcName: [
-        {required: true, message: '名称不能为空', trigger: 'blur'},
-        {min: 1, max: 30, message: '长度在 1 到 30 个字', trigger: 'blur'},
-    ],
-    orderType: [{required: true, message: '名称不能为空', trigger: 'blur'}],
-    sortNo: [{required: true, message: '名称不能为空', trigger: 'blur'}],
-    tcFlag: [{required: true, message: '名称不能为空', trigger: 'blur'}],
+  tcName: [
+    {required: true, message: '名称不能为空', trigger: 'blur'},
+    {min: 1, max: 30, message: '长度在 1 到 30 个字', trigger: 'blur'},
+  ],
+  orderType: [{required: true, message: '名称不能为空', trigger: 'blur'}],
+  sortNo: [{required: true, message: '名称不能为空', trigger: 'blur'}],
+  tcFlag: [{required: true, message: '名称不能为空', trigger: 'blur'}],
 })
 
 const dianJiBaoCunMuBan = async (form) => {
-    if (!form) return
-    try {
-        await form.validate()
-        jianChaJianYanMuBanMing(baoCunMuBan.value.tcName, props.jianCha ? '3' : '2').then((res) => {
-            if (res) {
-                ElMessageBox.confirm('已经存在相同的模板名称,是否覆盖数据', '温馨提示', {
-                    type: 'warning',
-                    distinguishCancelAndClose: true,
-                    confirmButtonText: '覆盖',
-                    cancelButtonText: '取消',
-                })
-                    .then(() => {
-                        faSongBaoCunMuBan()
-                    })
-                    .catch((e) => {
-                    })
-            } else {
-                faSongBaoCunMuBan()
-            }
+  if (!form) return
+  try {
+    await form.validate()
+    jianChaJianYanMuBanMing(baoCunMuBan.value.tcName, props.jianCha ? '3' : '2').then((res) => {
+      if (res) {
+        ElMessageBox.confirm('已经存在相同的模板名称,是否覆盖数据', '温馨提示', {
+          type: 'warning',
+          distinguishCancelAndClose: true,
+          confirmButtonText: '覆盖',
+          cancelButtonText: '取消',
         })
-    } catch (e) {
-        console.log(e)
-    }
+            .then(() => {
+              faSongBaoCunMuBan()
+            })
+            .catch((e) => {
+            })
+      } else {
+        faSongBaoCunMuBan()
+      }
+    })
+  } catch (e) {
+    console.log(e)
+  }
 }
 
 const faSongBaoCunMuBan = () => {
-    baoCunMuBan.value.reqType = props.jianCha ? 3 : 2
-    baoCunMuBan.value.list = xuanZhongJianCha.value.data
-    baoCunMuBan.value.tcExec = store.state.user.info.deptCode
-    baoCunJianChaJianYanMuBan(baoCunMuBan.value).then((res) => {
-        dianJiLeiXingChaXun()
-        baoCunMuBan.value.dialog = false
-    })
+  baoCunMuBan.value.reqType = props.jianCha ? 3 : 2
+  baoCunMuBan.value.list = xuanZhongJianCha.value.data
+  baoCunMuBan.value.tcExec = store.state.user.info.deptCode
+  baoCunJianChaJianYanMuBan(baoCunMuBan.value).then((res) => {
+    dianJiLeiXingChaXun()
+    baoCunMuBan.value.dialog = false
+  })
 }
 
 const bianJiFanYe = (val) => {
-    let index = val.val - 1
-    bianJiRef.value.daKaiBenDuiHua(xuanZhongJianCha.value.data[index], index, xuanZhongJianCha.value.data.length)
+  let index = val.val - 1
+  bianJiRef.value.daKaiBenDuiHua(xuanZhongJianCha.value.data[index], index, xuanZhongJianCha.value.data.length)
 }
 
 const clickSaveTemplate = async () => {
-    if (xuanZhongJianCha.value.data.length > 0) {
-        baoCunMuBan.value.dialog = true
-        await Sleep(200)
-        tcNameRef.focus()
-    } else {
-        ElMessage.error('请选择数据')
-    }
+  if (xuanZhongJianCha.value.data.length > 0) {
+    baoCunMuBan.value.dialog = true
+    await Sleep(200)
+    tcNameRef.focus()
+  } else {
+    ElMessage.error('请选择数据')
+  }
 }
 
 const starAdd = (obj) => {
-    let index = [0, 1, 2, 3, 6, 7, 8, 9]
-    if (index.indexOf(obj.columnIndex) > -1) {
-        return 'star'
-    }
+  let index = [0, 1, 2, 3, 6, 7, 8, 9]
+  if (index.indexOf(obj.columnIndex) > -1) {
+    return 'star'
+  }
 }
 
 
 const nodeClick = async (val) => {
-    if (val.code.length < 5) {
-        BizException(ExceptionEnum.LOGICAL_ERROR, '无法添加目录')
-    }
-    let temp = {
-        orderType: "",
-        execDept: val.execUnit,
-        execDeptName: val.execUnitName,
-        inspectStuff: val.inspectStuff,
-        orderCode: val.code,
-        startTime: await getServerDateApi(),
-        inspectStuffName: val.inspectStuffName,
-        orderName: val.name,
-        checkFlag: "0",
-        jzFlag: 0,
-        ybSelfFlag: 0
-    }
-    if (xuanZhongJianCha.value.weiBianMa.indexOf(temp.orderCode) > -1) {
-        xcMessage.error('请勿重复添加。')
-    } else {
-        xuanZhongJianCha.value.weiBianMa.push(temp.orderCode)
-        xuanZhongJianCha.value.data.push(temp)
-    }
+  if (val.code.length < 5) {
+    BizException(ExceptionEnum.LOGICAL_ERROR, '无法添加目录')
+  }
+  let temp = {
+    orderType: "",
+    execDept: val.execUnit,
+    execDeptName: val.execUnitName,
+    inspectStuff: val.inspectStuff,
+    orderCode: val.code,
+    startTime: await getServerDateApi(),
+    inspectStuffName: val.inspectStuffName,
+    orderName: val.name,
+    checkFlag: "0",
+    jzFlag: 0,
+    ybSelfFlag: 0
+  }
+  if (xuanZhongJianCha.value.weiBianMa.indexOf(temp.orderCode) > -1) {
+    xcMessage.error('请勿重复添加。')
+  } else {
+    xuanZhongJianCha.value.weiBianMa.push(temp.orderCode)
+    xuanZhongJianCha.value.data.push(temp)
+  }
 }
 
 const deleteInspectionCheck = (index) => {
-    xuanZhongJianCha.value.data.splice(index, 1)
-    xuanZhongJianCha.value.weiBianMa.splice(index, 1)
+  xuanZhongJianCha.value.data.splice(index, 1)
+  xuanZhongJianCha.value.weiBianMa.splice(index, 1)
 }
 
 onMounted(() => {
-    dianJiLeiXingChaXun()
+  dianJiLeiXingChaXun()
 })
 
 </script>
 
 <style scoped>
 :deep(.el-table .children-row) {
-    background: rgba(145, 247, 145, 0.5);
+  background: rgba(145, 247, 145, 0.5);
 }
 
 :deep(.el-table) {
-    --el-table-row-hover-background-color: #85dbfd7a;
+  --el-table-row-hover-background-color: #85dbfd7a;
 }
 </style>

+ 192 - 193
src/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/EditInspection.vue

@@ -1,134 +1,133 @@
 <template>
-    <el-dialog v-model="dialog" title="编辑检验"
-               @close="guanBi">
-        <el-pagination :current-page="index"
-                       :page-size="1"
-                       :total="count"
-                       background layout="total,  prev, pager, next"
-                       @current-change="bianJiFenYe"/>
-        <el-form label-width="100px" size="small" :model="bianJiJianChaShuJu">
-            <el-row>
-                <el-col :span="12">
-                    <el-form-item label="检查项目编码:">
-                        {{ bianJiJianChaShuJu.orderCode }}
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item label="检查项目名称:">
-                        {{ bianJiJianChaShuJu.orderName }}
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item class="bi_tian" label="检查时间:">
-                        <el-date-picker
-                                v-model="bianJiJianChaShuJu.startTime"
-                                ref="checkTheTimeRef"
-                                format="YYYY-MM-DD HH:mm:ss"
-                                style="width: 180px"
-                                type="datetime"
-                                value-format="YYYY-MM-DD HH:mm:ss"
-                        >
-                        </el-date-picker>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item class="bi_tian" label="执行科室:">
-                        <xc-select-v3
-                                style="width: 120px"
-                                v-model="bianJiJianChaShuJu"
-                                :data="zhiXingKeShiData"
-                                code="execDept"
-                                name="execDeptName"
-                                :remote-method="metZhiXingKeShi"/>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item label="急诊:">
-                        <el-switch
-                                v-model="bianJiJianChaShuJu.jzFlag"
-                                :active-value="1"
-                                :inactive-value="0"
-                                active-color="#13ce66"
-                                active-text="急诊"
-                                inactive-color="#ff4949"
-                                inactive-text="普通"
-                        >
-                        </el-switch>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item label="自费:">
-                        <el-switch
-                                v-model="bianJiJianChaShuJu.ybSelfFlag"
-                                :active-value="1"
-                                :inactive-value="0"
-                                active-color="#13ce66"
-                                active-text="自费"
-                                inactive-color="#ff4949"
-                                inactive-text="医保">
-                        </el-switch>
-                    </el-form-item>
-                </el-col>
-                <el-col v-if="jianCha" :span="12">
-                    <el-form-item class="bi_tian" label="临床诊断:" prop="diagCode">
-                        <xc-select-v3
-                                v-model="bianJiJianChaShuJu"
-                                :data="linChuangZhenDuanShuJu"
-                                :remote-method="linChuangZhenDuanSuoSou"
-                                code="diagCode"
-                                name="diagText"
-                        />
-                    </el-form-item>
-                </el-col>
-                <el-col v-if="jianCha" :span="12">
-                    <el-switch v-model="zhenDuanLaiYuan" :active-value="true" :inactive-value="false"
-                               active-color="#13ce66"
-                               active-text="医保" inactive-color="#ff4949" inactive-text="本院">
-                    </el-switch>
-                </el-col>
-                <el-col :span="24">
-                    <el-form-item v-if="!jianCha" class="bi_tian" label="标本:">
-                        <el-select v-model="bianJiJianChaShuJu.inspectStuff"
-                                   :remote-method="biaoBenSouSuo"
-                                   clearable filterable
-                                   remote @change="bianBenMing">
-                            <el-option v-for="item in biaoBenShuJu" :key="item.code" :label="item.name"
-                                       :value="item.code">
-                                <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
-                                <el-divider direction="vertical"></el-divider>
-                                <span>{{ item.name }}</span>
-                            </el-option>
-                        </el-select>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item :label="jianCha ? '病史摘要:' : '申请说明'" class="bi_tian">
-                        <el-input v-model="bianJiJianChaShuJu.reqComment" :rows="6" maxlength="125" show-word-limit
-                                  type="textarea"></el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col v-if="jianCha" :span="12">
-                    <el-button @click="daKaiShuoMingMuBan">说明模板</el-button>
-                </el-col>
-                <el-col v-if="jianCha" :span="24">
-                    <el-form-item class="bi_tian" label="体征信息:">
-                        <el-input v-model="bianJiJianChaShuJu.reqTzComment" :rows="6" maxlength="125" show-word-limit
-                                  type="textarea"></el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col v-if="jianCha" :span="24">
-                    <el-form-item class="bi_tian" label="相关辅检结果:">
-                        <el-input v-model="bianJiJianChaShuJu.reqOtherResult" :rows="6" maxlength="125" show-word-limit
-                                  type="textarea"></el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col :offset="20" :span="24">
-                    <el-button icon="Check" type="primary" @click="fillData">确定</el-button>
-                </el-col>
-            </el-row>
-        </el-form>
-    </el-dialog>
-    <shuo-ming-mu-ban ref="shouMingMuBan" @huoQuXuanZhongShuJu="xuanZhongMuBan"></shuo-ming-mu-ban>
+  <el-dialog v-model="dialog" title="编辑检验"
+             @close="guanBi">
+    <el-pagination :current-page="index"
+                   :page-size="1"
+                   :total="count"
+                   background layout="total,  prev, pager, next"
+                   @current-change="bianJiFenYe"/>
+    <el-form label-width="100px" size="small" :model="bianJiJianChaShuJu">
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="检查项目编码:">
+            {{ bianJiJianChaShuJu.orderCode }}
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="检查项目名称:">
+            {{ bianJiJianChaShuJu.orderName }}
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item class="bi_tian" label="检查时间:">
+            <el-date-picker
+                v-model="bianJiJianChaShuJu.startTime"
+                ref="checkTheTimeRef"
+                format="YYYY-MM-DD HH:mm:ss"
+                style="width: 180px"
+                type="datetime"
+                value-format="YYYY-MM-DD HH:mm:ss">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item class="bi_tian" label="执行科室:">
+            <xc-select-v3
+                style="width: 120px"
+                v-model="bianJiJianChaShuJu"
+                :data="zhiXingKeShiData"
+                code="execDept"
+                name="execDeptName"
+                :remote-method="metZhiXingKeShi"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="急诊:">
+            <el-switch
+                v-model="bianJiJianChaShuJu.jzFlag"
+                :active-value="1"
+                :inactive-value="0"
+                active-color="#13ce66"
+                active-text="急诊"
+                inactive-color="#ff4949"
+                inactive-text="普通"
+            >
+            </el-switch>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="自费:">
+            <el-switch
+                v-model="bianJiJianChaShuJu.ybSelfFlag"
+                :active-value="1"
+                :inactive-value="0"
+                active-color="#13ce66"
+                active-text="自费"
+                inactive-color="#ff4949"
+                inactive-text="医保">
+            </el-switch>
+          </el-form-item>
+        </el-col>
+        <el-col v-if="jianCha" :span="12">
+          <el-form-item class="bi_tian" label="临床诊断:" prop="diagCode">
+            <xc-select-v3
+                v-model="bianJiJianChaShuJu"
+                :data="linChuangZhenDuanShuJu"
+                :remote-method="linChuangZhenDuanSuoSou"
+                code="diagCode"
+                name="diagText"
+            />
+          </el-form-item>
+        </el-col>
+        <el-col v-if="jianCha" :span="12">
+          <el-switch v-model="zhenDuanLaiYuan" :active-value="true" :inactive-value="false"
+                     active-color="#13ce66"
+                     active-text="医保" inactive-color="#ff4949" inactive-text="本院">
+          </el-switch>
+        </el-col>
+        <el-col :span="24">
+          <el-form-item v-if="!jianCha" class="bi_tian" label="标本:">
+            <el-select v-model="bianJiJianChaShuJu.inspectStuff"
+                       :remote-method="biaoBenSouSuo"
+                       clearable filterable
+                       remote @change="bianBenMing">
+              <el-option v-for="item in biaoBenShuJu" :key="item.code" :label="item.name"
+                         :value="item.code">
+                <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
+                <el-divider direction="vertical"></el-divider>
+                <span>{{ item.name }}</span>
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item :label="jianCha ? '病史摘要:' : '申请说明'" class="bi_tian">
+            <el-input v-model="bianJiJianChaShuJu.reqComment" :rows="6" maxlength="125" show-word-limit
+                      type="textarea"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col v-if="jianCha" :span="12">
+          <el-button @click="daKaiShuoMingMuBan">说明模板</el-button>
+        </el-col>
+        <el-col v-if="jianCha" :span="24">
+          <el-form-item class="bi_tian" label="体征信息:">
+            <el-input v-model="bianJiJianChaShuJu.reqTzComment" :rows="6" maxlength="125" show-word-limit
+                      type="textarea"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col v-if="jianCha" :span="24">
+          <el-form-item class="bi_tian" label="相关辅检结果:">
+            <el-input v-model="bianJiJianChaShuJu.reqOtherResult" :rows="6" maxlength="125" show-word-limit
+                      type="textarea"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :offset="20" :span="24">
+          <el-button icon="Check" type="primary" @click="fillData">确定</el-button>
+        </el-col>
+      </el-row>
+    </el-form>
+  </el-dialog>
+  <shuo-ming-mu-ban ref="shouMingMuBan" @huoQuXuanZhongShuJu="xuanZhongMuBan"></shuo-ming-mu-ban>
 </template>
 <!--编辑检验项目信息-->
 <script setup name="BianJiJianChaShenQing">
@@ -143,39 +142,39 @@ import {huoQuZhiXinKeShi} from "@/api/zhu-yuan-yi-sheng/yi-zhu-lu-ru";
 import {xuanZhongJianCha} from "@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng";
 
 const props = defineProps({
-    jianCha: {
-        type: Boolean,
-        default: true,
-    },
+  jianCha: {
+    type: Boolean,
+    default: true,
+  },
 })
 
 const emit = defineEmits(['fan-ye', 'dialogCloses'])
 
 const fillData = () => {
-    let tData = bianJiJianChaShuJu.value
-    xuanZhongJianCha.value.data.forEach((item, i) => {
-        if (i !== index.value - 1) {
-            item.jzFlag = tData.jzFlag
-            item.ybSelfFlag = tData.ybSelfFlag
+  let tData = bianJiJianChaShuJu.value
+  xuanZhongJianCha.value.data.forEach((item, i) => {
+    if (i !== index.value - 1) {
+      item.jzFlag = tData.jzFlag
+      item.ybSelfFlag = tData.ybSelfFlag
 
-            item.diagCode = tData.diagCode
-            item.diagText = tData.diagText
+      item.diagCode = tData.diagCode
+      item.diagText = tData.diagText
 
-            item.reqComment = tData.reqComment
-        }
-    })
-    guanBi()
+      item.reqComment = tData.reqComment
+    }
+  })
+  guanBi()
 }
 const guanBi = () => {
-    biaoBenShuJu.value = []
-    linChuangZhenDuanShuJu.value = []
-    bianJiJianChaShuJu.value = {}
-    dialog.value = false
-    emit('dialogCloses', {bianJiJianChaShuJu})
+  biaoBenShuJu.value = []
+  linChuangZhenDuanShuJu.value = []
+  bianJiJianChaShuJu.value = {}
+  dialog.value = false
+  emit('dialogCloses', {bianJiJianChaShuJu})
 }
 
 const windowSize = computed(() => {
-    return store.state.app.windowSize
+  return store.state.app.windowSize
 })
 
 const dialog = ref(false)
@@ -193,36 +192,36 @@ const index = ref(0)
 const zhenDuanLaiYuan = ref(false)
 
 const daKaiBenDuiHua = async (val, xiaBiao, zhongShu) => {
-    dialog.value = true
-    index.value = xiaBiao + 1
-    count.value = zhongShu
-    bianJiJianChaShuJu.value = val
+  dialog.value = true
+  index.value = xiaBiao + 1
+  count.value = zhongShu
+  bianJiJianChaShuJu.value = val
 
-    if (!props.jianCha) {
-        if (stringNotBlank(val.inspectStuff)) {
-            let index = biaoBenShuJu.value.findIndex(item => {
-                return item.code === val.inspectStuff
-            })
-            if (index === -1) {
-                biaoBenShuJu.value.push({code: val.inspectStuff, name: val.inspectStuffName})
-            }
-        }
+  if (!props.jianCha) {
+    if (stringNotBlank(val.inspectStuff)) {
+      let index = biaoBenShuJu.value.findIndex(item => {
+        return item.code === val.inspectStuff
+      })
+      if (index === -1) {
+        biaoBenShuJu.value.push({code: val.inspectStuff, name: val.inspectStuffName})
+      }
     }
+  }
 }
 const daKaiShuoMingMuBan = () => {
-    shouMingMuBan.value.dialog = true
-    shouMingMuBan.value.huoQuShuoMingMuBan(0)
+  shouMingMuBan.value.dialog = true
+  shouMingMuBan.value.huoQuShuoMingMuBan(0)
 }
 
 const xuanZhongMuBan = (val) => {
-    if (stringIsBlank(bianJiJianChaShuJu.value.reqComment)) {
-        bianJiJianChaShuJu.value.reqComment = ''
-    }
-    if (val.length + bianJiJianChaShuJu.value.reqComment.length > 125) {
-        return ElMessage.error('字符超长无法添加,病史摘要最多125个字。')
-    }
-    bianJiJianChaShuJu.value.reqComment += val + ','
-    ElMessage.success('复制成功。')
+  if (stringIsBlank(bianJiJianChaShuJu.value.reqComment)) {
+    bianJiJianChaShuJu.value.reqComment = ''
+  }
+  if (val.length + bianJiJianChaShuJu.value.reqComment.length > 125) {
+    return ElMessage.error('字符超长无法添加,病史摘要最多125个字。')
+  }
+  bianJiJianChaShuJu.value.reqComment += val + ','
+  ElMessage.success('复制成功。')
 }
 
 /**
@@ -230,39 +229,39 @@ const xuanZhongMuBan = (val) => {
  * @param val
  */
 const linChuangZhenDuanSuoSou = (val) => {
-    diagnosisInOurHospital(val).then((res) => {
-        linChuangZhenDuanShuJu.value = res
-    })
+  diagnosisInOurHospital(val).then((res) => {
+    linChuangZhenDuanShuJu.value = res
+  })
 }
 
 const bianJiFenYe = async (val) => {
-    biaoBenShuJu.value = []
-    linChuangZhenDuanShuJu.value = []
-    index.value = val
-    emit('fan-ye', {val})
+  biaoBenShuJu.value = []
+  linChuangZhenDuanShuJu.value = []
+  index.value = val
+  emit('fan-ye', {val})
 }
 
 const bianBenMing = (val) => {
-    for (let item of biaoBenShuJu.value) {
-        if (item.code === val) {
-            return (bianJiJianChaShuJu.value.inspectStuffName = item.name)
-        }
+  for (let item of biaoBenShuJu.value) {
+    if (item.code === val) {
+      return (bianJiJianChaShuJu.value.inspectStuffName = item.name)
     }
+  }
 }
 const biaoBenSouSuo = (val) => {
-    if (val.length > 1) {
-        biaoBenApi(val).then((res) => {
-            biaoBenShuJu.value = res
-        })
-    }
+  if (val.length > 1) {
+    biaoBenApi(val).then((res) => {
+      biaoBenShuJu.value = res
+    })
+  }
 }
 
 /* 获取执行科室 */
 const zhiXingKeShiData = ref([])
 const metZhiXingKeShi = (val) => {
-    huoQuZhiXinKeShi(val).then((res) => {
-        zhiXingKeShiData.value = res
-    })
+  huoQuZhiXinKeShi(val).then((res) => {
+    zhiXingKeShiData.value = res
+  })
 }
 
 defineExpose({daKaiBenDuiHua})

+ 127 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/components/CheckTheEdits.vue

@@ -0,0 +1,127 @@
+<script setup name='CheckTheEdits'>
+import XcSelectV3 from "@/components/xiao-chan/select-v3/XcSelectV3.vue";
+import {huoQuZhiXinKeShi} from "@/api/zhu-yuan-yi-sheng/yi-zhu-lu-ru";
+import {diagnosisInOurHospital} from "@/api/zhu-yuan-yi-sheng/jian-yan-jian-cha-shen-qing";
+
+const dialog = ref(true)
+
+const {data} = defineProps({
+  data: {
+    type: Object,
+    default: {}
+  }
+})
+
+
+/* 获取执行科室 */
+const zhiXingKeShiData = ref([])
+const metZhiXingKeShi = (val) => {
+  huoQuZhiXinKeShi(val).then((res) => {
+    zhiXingKeShiData.value = res
+  })
+}
+
+const linChuangZhenDuanShuJu = ref([])
+const linChuangZhenDuanSuoSou = (val) => {
+  diagnosisInOurHospital(val).then((res) => {
+    linChuangZhenDuanShuJu.value = res
+  })
+}
+
+</script>
+
+<template>
+
+  <el-dialog v-model="dialog" title="编辑检验">
+
+    <el-form label-width="100px" size="small" inline>
+      <el-row>
+
+        <el-col :span="12">
+          <el-form-item label="检查项目编码:">
+            {{ data.orderCode }}
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="检查项目名称:">
+            {{ data.orderName }}
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item class="bi_tian" label="检查时间:">
+            <el-date-picker
+                v-model="data.startTime"
+                format="YYYY-MM-DD HH:mm:ss"
+                style="width: 180px"
+                type="datetime"
+                value-format="YYYY-MM-DD HH:mm:ss">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item class="bi_tian" label="执行科室:">
+            <xc-select-v3
+                style="width: 120px"
+                v-model="data"
+                :data="zhiXingKeShiData"
+                code="execDept"
+                name="execDeptName"
+                :remote-method="metZhiXingKeShi"/>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="急诊:">
+            <el-switch
+                v-model="data.jzFlag"
+                :active-value="1"
+                :inactive-value="0"
+                active-color="#13ce66"
+                active-text="急诊"
+                inactive-color="#ff4949"
+                inactive-text="普通">
+            </el-switch>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="自费:">
+            <el-switch
+                v-model="data.ybSelfFlag"
+                :active-value="1"
+                :inactive-value="0"
+                active-color="#13ce66"
+                active-text="自费"
+                inactive-color="#ff4949"
+                inactive-text="医保">
+            </el-switch>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item class="bi_tian" label="临床诊断:" prop="diagCode">
+            <xc-select-v3
+                v-model="data"
+                :data="linChuangZhenDuanShuJu"
+                :remote-method="linChuangZhenDuanSuoSou"
+                code="diagCode"
+                name="diagText"
+            />
+          </el-form-item>
+        </el-col>
+
+
+      </el-row>
+    </el-form>
+
+
+  </el-dialog>
+
+</template>
+
+<style scoped lang="scss">
+
+</style>

+ 104 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/components/JianYanShenQingDan.vue

@@ -0,0 +1,104 @@
+<script setup name='JianYanShenQingDan'>
+import JsBarcode from "jsbarcode";
+
+const props = defineProps({
+  data: {
+    inpatientNo: ''
+  }
+})
+
+
+onMounted(async () => {
+  await nextTick()
+  JsBarcode("#pathologyApplicationForm", '1561561', {
+    lineColor: "#333",
+    width: 2,
+    height: 30,
+    displayValue: false, //是否显示文字信息
+    fontSize: 15,//设置文本的大小
+    margin: 0,
+  });
+})
+</script>
+
+<template>
+  <div style="height: 500px;width: 560px;">
+    <table width="100%" style=" border-collapse:collapse">
+      <thead style="height: 14pt; text-align: center">
+      <tr>
+        <th colspan="7" style="border: 0">
+          <div style="position: relative ">
+            <div style="position: absolute; left: 5px; top: 5px; height: 20px">
+              <svg id="pathologyApplicationForm"/>
+            </div>
+            <div style="font-size: 20px">
+              长沙泰和医院
+            </div>
+            <div>
+              检验申请单
+            </div>
+          </div>
+        </th>
+      </tr>
+      </thead>
+
+      <tbody style="border: 1px solid #000">
+      <tr style="border-bottom: 1px solid #000">
+        <td style="padding: 5px">住院号:{{ props.data.inpatientNo }}</td>
+        <td style="padding: 5px">姓名:{{ props.data.name }}</td>
+        <td style="padding: 5px">性别:{{ props.data.sexName }}</td>
+        <td style="padding: 5px">年龄:{{ props.data.age }}</td>
+      </tr>
+
+      <tr class="content_of_the_application">
+        <td>标本</td>
+        <td colspan="3">
+          {{ props.data.inspectStuffName }}
+        </td>
+      </tr>
+
+      <tr class="content_of_the_application">
+        <td>申请说明</td>
+        <td colspan="3">
+          {{ props.data.reqComment }}
+        </td>
+      </tr>
+
+      </tbody>
+
+      <tfoot>
+      <tr>
+        <td style="border-left: 1px solid #000">
+          申请科室:
+        </td>
+        <td colspan="3" style="border-right:  1px solid #000">
+          申请医生:
+        </td>
+      </tr>
+      <tr style="border-bottom: 1px solid #000">
+        <td style="border-left: 1px solid #000">
+          申请日期:
+        </td>
+        <td colspan="3" style="border-right:  1px solid #000">
+          申请医生
+        </td>
+      </tr>
+      </tfoot>
+
+    </table>
+  </div>
+</template>
+
+<style scoped lang="scss">
+td {
+  padding: 5px;
+}
+
+.content_of_the_application td {
+  padding: 10px;
+  border-right: 1px solid #000;
+  border-bottom: 1px solid #000;
+}
+
+
+</style>

+ 25 - 18
src/views/settings/Test.vue

@@ -1,33 +1,40 @@
 <template>
-  <component :is="a"/>
+  <jian-yan-shen-qing-dan :data="data"/>
+
+  <el-button @click="打印测试">打印</el-button>
+
 </template>
 
 <script setup lang="jsx">
+import JianYanShenQingDan
+  from "@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/components/JianYanShenQingDan.vue";
 
-const test = (val) => {
-  console.log(111)
-}
 
-const test1 = (val) => {
-  console.log(val)
-  console.log(222)
+let data = {
+  inpatientNo: '040123',
+  name: '测试',
+  sexName: '男',
+  age: 20,
+  inspectStuffName: '测试',
+  reqComment: '爱上降低金卡好几十块的'
 }
 
-const a = () => (
-    <div onClick={test1} className="a">
-      <div onClick={test}>测试</div>
-    </div>
-)
 
-</script>
+const 打印测试 = () => {
+
+  let content = h(JianYanShenQingDan, {
+    props: {
+      data: data
+    }
+  })
+
 
-<style lang="scss">
 
-.a {
-  width: 120px;
-  height: 220px;
-  border: 1px solid;
 }
 
+</script>
+
+<style lang="scss">
+
 </style>