张田田 2 долоо хоног өмнө
parent
commit
7372a2d3df

+ 33 - 24
src/views/business/components/AcupointTable.vue

@@ -1,25 +1,26 @@
 <template>
   <div class="recipe-acupoint-wrapper">
-    <div class="top-btns">
-      <el-button size="mini" type="primary" @click="openAddDialog()"
-        >新增</el-button
-      >
-      <el-button size="mini" type="warning" @click="clearAll()">清空</el-button>
-    </div>
-
-    <!-- 处方 tab 切换 -->
-    <div class="prescription-tabs" v-if="prescriptions.length">
-      <div
-        class="tab-item"
-        :class="{ active: activeIndex === index }"
-        v-for="(item, index) in prescriptions"
-        :key="index"
-        @click="switchTab(index)"
-      >
-        <el-tooltip :content="item.itemName" placement="top" :open-delay="300">
-          <span class="tab-name">{{ item.itemName }}</span>
-        </el-tooltip>
-        <span class="tab-close" @click.stop="removePrescription(index)">×</span>
+    <!-- 处方 tab + 按钮同一行 -->
+    <div class="prescription-header">
+      <div class="prescription-tabs" v-if="prescriptions.length">
+        <div
+          class="tab-item"
+          :class="{ active: activeIndex === index }"
+          v-for="(item, index) in prescriptions"
+          :key="index"
+          @click="switchTab(index)"
+        >
+          <el-tooltip :content="item.itemName" placement="top" :open-delay="300">
+            <span class="tab-name">{{ item.itemName }}</span>
+          </el-tooltip>
+          <span class="tab-close" @click.stop="removePrescription(index)">×</span>
+        </div>
+      </div>
+      <div class="top-btns">
+        <el-button size="mini" type="primary" @click="openAddDialog()"
+          >新增处方</el-button
+        >
+        <el-button size="mini" type="warning" @click="clearAll()">清空处方</el-button>
       </div>
     </div>
 
@@ -642,7 +643,7 @@ function createPrescriptionData(options = {}) {
 }
 
 export default {
-  name: "AcupointTable",
+  name: "适宜技术处方",
   components: { popup },
   props: {
     value: {
@@ -676,6 +677,7 @@ export default {
   },
   data() {
     return {
+      name: "适宜技术处方",
       // 配穴相关
       acupointList: [],
       meridianList: [],
@@ -1669,18 +1671,25 @@ export default {
 
 <style lang="scss" scoped>
 .recipe-acupoint-wrapper {
-  .top-btns {
+  // tab + 按钮同一行
+  .prescription-header {
     display: flex;
-    justify-content: flex-end;
+    align-items: center;
+    justify-content: space-between;
     margin-bottom: 6px;
     flex-shrink: 0;
   }
+
+  .top-btns {
+    display: flex;
+    flex-shrink: 0;
+    margin-left: auto;
+  }
 }
 
 // 处方 tab 列表
 .prescription-tabs {
   display: flex;
-  margin-bottom: 10px;
   flex-shrink: 0;
   overflow-x: auto;
   white-space: nowrap;

+ 52 - 6
src/views/diagnosis/Prescribing.vue

@@ -268,7 +268,7 @@
           </el-popover>
         </div>
         <!-- his信息 -->
-        <div class="his-msg" v-if="innerWidth>768 ">
+        <div class="his-msg" v-if="innerWidth>768 " style="flex-wrap: wrap;">
           <div class="his-item" v-if="Object.keys(patiensMsg).length>0">
             <div class="name">HIS病名:</div>
             <div class="value">
@@ -285,6 +285,27 @@
               ></el-input>
             </div>
           </div>
+          <!-- 西医诊断 - 仅适宜技术处方 tab 显示 -->
+          <div class="his-item" v-if="container_i == 2 && patiensMsg.maindiagnosis">
+            <div class="name">西医主诊断:</div>
+            <div class="value">
+              <el-input
+                size="mini"
+                disabled
+                :value="patiensMsg.maindiagnosis.diagnosis || ''"
+              ></el-input>
+            </div>
+          </div>
+          <div class="his-item" v-if="container_i == 2">
+            <div class="name">建议诊断:</div>
+            <div class="value">
+              <el-input
+                size="mini"
+                disabled
+               :value="patiensMsg.maindiagnosis.diagnosis || ''"
+              ></el-input>
+            </div>
+          </div>
         </div>
       </div>
       <div class="flex-vertical-between center-header">
@@ -417,7 +438,7 @@
           :showSubmit="showSubmit"
           :isPs="Number(isPs)"
         ></medicineChinese>
-        <suitScience
+        <!-- <suitScience
           @find="find($event)"
           v-show="container_i==2"
           ref="suitScience"
@@ -426,7 +447,13 @@
           @clear="clearContainer('2')"
           :totalAllMoney.sync="suitScience.allMoney"
           :showSubmit="showSubmit"
-        ></suitScience>
+        ></suitScience> -->
+        <AcupointTable
+          v-show="container_i==2"
+          ref="suitScience"
+          :showEditable="false"
+          @save="submitRecipe1()"
+        />
       </div>
     </div>
 
@@ -1043,7 +1070,8 @@ import Popup from "@/components/Propup.vue";
 
 import chineseMedicine from "@/components/ChineseMedicine.vue";
 import medicineChinese from "@/components/MedicineAndChina.vue";
-import suitScience from "@/components/SuitScience.vue";
+// import suitScience from "@/components/SuitScience.vue";
+import AcupointTable from "@/views/business/components/AcupointTable.vue";
 
 import submitRecipe from "./components/submitRecipe.vue";
 // import TCMDiagnosis from "./components/TCMDiagnosis.vue";
@@ -1115,7 +1143,8 @@ export default {
     Popup,
     chineseMedicine,
     medicineChinese,
-    suitScience,
+    // suitScience,
+    AcupointTable,
     TCMDiagnosis,
     submitRecipe,
     prescription,
@@ -2790,7 +2819,8 @@ export default {
           console.log(this.$refs.medicineC.allMoney);
           this.medicineC.allMoney = this.$refs.medicineC.allMoney;
         } else if (type == 2) {
-          this.suitScience.allMoney = this.$refs.suitScience.allMoney;
+          // this.suitScience.allMoney = this.$refs.suitScience.allMoney;
+          this.suitScience.allMoney = this.$refs.suitScience?.totalPrice || 0;
         }
       }, 500);
     },
@@ -4223,6 +4253,22 @@ export default {
   height: 100%;
   // background: red;
 
+  // AcupointTable 在适宜技术处方 tab 中撑满高度并允许滚动
+  .center-table ::v-deep .recipe-acupoint-wrapper {
+    height: 100%;
+    overflow: hidden;
+    display: flex;
+    flex-direction: column;
+
+    .recipe-acupoint {
+      flex: 1;
+      min-height: 0;
+      overflow: hidden;
+      display: flex;
+      flex-direction: column;
+    }
+  }
+
   .pre-title {
     margin-bottom: 10px;