Browse Source

添加影像检查

李帅 1 month ago
parent
commit
de658fc2f2

+ 11 - 10
src/utils/request.js

@@ -21,7 +21,7 @@ const service = axios.create({
21
   // baseURL: "http://106.74.15.131:81/api",
21
   // baseURL: "http://106.74.15.131:81/api",
22
   
22
   
23
   // axios中请求配置有baseURL选项,表示请求URL公共部分
23
   // axios中请求配置有baseURL选项,表示请求URL公共部分
24
-  // baseURL: "http://192.168.3.142:8081/api",
24
+  // baseURL: "http://192.168.3.142:8080/api",
25
   // baseURL: "http://192.168.3.90:8080/api",
25
   // baseURL: "http://192.168.3.90:8080/api",
26
   // baseURL: "http://172.16.100.153:8081/api",
26
   // baseURL: "http://172.16.100.153:8081/api",
27
   // baseURL: "http://192.168.97.176:8081/api",
27
   // baseURL: "http://192.168.97.176:8081/api",
@@ -127,15 +127,16 @@ service.interceptors.response.use(res => {
127
       Notification.error({ title: msg })
127
       Notification.error({ title: msg })
128
       return Promise.reject('error')
128
       return Promise.reject('error')
129
     } else {
129
     } else {
130
-      if(res.data.msg && res.data.msg ==="退出成功"){
131
-        return res.data
132
-      } else {
133
-        if(JSON.parse(cyptoTool.methods.decrypt(res.data)).code === 500) {
134
-          JSON.parse(cyptoTool.methods.decrypt(res.data)) 
135
-          return Message.error(JSON.parse(cyptoTool.methods.decrypt(res.data)).msg)
136
-        }
137
-        return  JSON.parse(cyptoTool.methods.decrypt(res.data)) 
138
-      }
130
+      // if(res.data.msg && res.data.msg ==="退出成功"){
131
+      //   return res.data
132
+      // } else {
133
+      //   if(JSON.parse(cyptoTool.methods.decrypt(res.data)).code === 500) {
134
+      //     JSON.parse(cyptoTool.methods.decrypt(res.data)) 
135
+      //     return Message.error(JSON.parse(cyptoTool.methods.decrypt(res.data)).msg)
136
+      //   }
137
+      //   return  JSON.parse(cyptoTool.methods.decrypt(res.data)) 
138
+      // }
139
+      return res.data
139
     }
140
     }
140
   },
141
   },
141
   error => {
142
   error => {

+ 6 - 0
src/views/medicalRecords/recordDetailDialog.vue

@@ -50,6 +50,12 @@
50
           </div>
50
           </div>
51
         </div>
51
         </div>
52
         <div style="display: flex; margin-top: 30px">
52
         <div style="display: flex; margin-top: 30px">
53
+          <div style="width: 80px; font-weight: 700">影像检查:</div>
54
+          <div style="flex: 1; display: flex; flex-direction: column">
55
+            {{ recordDetailObj.imageInspectContent }}
56
+          </div>
57
+        </div>
58
+        <div style="display: flex; margin-top: 30px">
53
           <div style="width: 80px; font-weight: 700">诊断:</div>
59
           <div style="width: 80px; font-weight: 700">诊断:</div>
54
           <div style="flex: 1; display: flex; flex-direction: column">
60
           <div style="flex: 1; display: flex; flex-direction: column">
55
             {{ recordDetailObj.diagnosisContent }}
61
             {{ recordDetailObj.diagnosisContent }}

+ 44 - 0
src/views/patientCenter/index.vue

@@ -466,6 +466,7 @@
466
               @changeInspect="changeInspect"
466
               @changeInspect="changeInspect"
467
               @changeDiagnosis="changeDiagnosis"
467
               @changeDiagnosis="changeDiagnosis"
468
               @changeTreatmentPlanning="changeTreatmentPlanning"
468
               @changeTreatmentPlanning="changeTreatmentPlanning"
469
+              @changeImageingInspect="changeImageingInspect"
469
               @changeDispose="changeDispose"
470
               @changeDispose="changeDispose"
470
               @changeNote="changeNote"
471
               @changeNote="changeNote"
471
               :widthSize="widthSize"
472
               :widthSize="widthSize"
@@ -483,6 +484,9 @@
483
               :treatmentPlanningContent="treatmentPlanningContent"
484
               :treatmentPlanningContent="treatmentPlanningContent"
484
               :treatmentPlanningStr="treatmentPlanningStr"
485
               :treatmentPlanningStr="treatmentPlanningStr"
485
               :treatmentPlanningOptions="treatmentPlanningOptions"
486
               :treatmentPlanningOptions="treatmentPlanningOptions"
487
+              :imageInspectContent="imageInspectContent"
488
+              :imageInspectStr="imageInspectStr"
489
+              :imageInspectOption="imageInspectOption"
486
               :disposeContent="disposeContent"
490
               :disposeContent="disposeContent"
487
               :disposeStr="disposeStr"
491
               :disposeStr="disposeStr"
488
               :disposeOptions="disposeOptions"
492
               :disposeOptions="disposeOptions"
@@ -753,6 +757,11 @@ export default {
753
       treatmentPlanningOptions:{}, //治疗计划的下拉对应内容
757
       treatmentPlanningOptions:{}, //治疗计划的下拉对应内容
754
       treatmentPlanningMap: new Map(), //治疗计划的map
758
       treatmentPlanningMap: new Map(), //治疗计划的map
755
 
759
 
760
+      imageInspectContent:"", //影像检查的合并内容
761
+      imageInspectStr:[], //影像检查的合并一句话的格式
762
+      imageInspectOption:{}, //影像检查的下拉对应内容
763
+      imageInspectMap: new Map(), //影像检查的map
764
+
756
       disposeContent:"", //处置的合并内容
765
       disposeContent:"", //处置的合并内容
757
       disposeStr:[], //处置的合并一句话的格式
766
       disposeStr:[], //处置的合并一句话的格式
758
       disposeOptions:{}, //处置的下拉对应内容
767
       disposeOptions:{}, //处置的下拉对应内容
@@ -1087,6 +1096,14 @@ export default {
1087
         }
1096
         }
1088
       ]
1097
       ]
1089
 
1098
 
1099
+      this.imageInspectContent = obj.imageInspectContent
1100
+      this.imageInspectStr = [
1101
+        {
1102
+          type: 'string',
1103
+          value: obj.imageInspectContent
1104
+        }
1105
+      ]
1106
+
1090
       this.disposeContent = obj.disposeContent
1107
       this.disposeContent = obj.disposeContent
1091
       this.disposeStr = [
1108
       this.disposeStr = [
1092
         {
1109
         {
@@ -1205,6 +1222,25 @@ export default {
1205
         this.treatmentPlanningOptions = Object.assign(this.treatmentPlanningOptions, list.treatmentPlanningOption.dic_data);
1222
         this.treatmentPlanningOptions = Object.assign(this.treatmentPlanningOptions, list.treatmentPlanningOption.dic_data);
1206
       }
1223
       }
1207
 
1224
 
1225
+        // 判断是否有相同的合并内容 如果相同则直接合并如果不同加新的合并内容 //影像检查
1226
+        if(this.imageInspectMap.has("_" + list.imageInspectContent)){
1227
+        let imageInspectOptionStr = this.imageInspectMap.get("_" + list.imageInspectContent) // 老牙位
1228
+        let str = this.initToothPosition(this.yaKey) + imageInspectOptionStr // 老新结合 牙位
1229
+        this.imageInspectMap.set("_" + list.imageInspectContent,str)
1230
+        this.imageInspectContent = this.imageInspectContent.replace(imageInspectOptionStr,str)
1231
+        this.imageInspectStr = this.imageInspectStr.map(item=>{
1232
+          if(item.value == imageInspectOptionsStr){
1233
+            item.value = str
1234
+          }
1235
+          return item
1236
+        })
1237
+      }else {
1238
+        this.imageInspectMap.set("_" + list.imageInspectContent,this.initToothPosition(this.yaKey))
1239
+        this.imageInspectContent = this.imageInspectContent + this.initToothPosition(this.yaKey) + list.imageInspectContent
1240
+        this.imageInspectStr = [...this.imageInspectStr,{type:'string',value:this.initToothPosition(this.yaKey)},...list.imageInspectOption.str]
1241
+        this.imageInspectOptions = Object.assign(this.imageInspectOption, list.imageInspectOption.dic_data);
1242
+      }
1243
+
1208
       // 判断是否有相同的合并内容 如果相同则直接合并如果不同加新的合并内容 //处置
1244
       // 判断是否有相同的合并内容 如果相同则直接合并如果不同加新的合并内容 //处置
1209
       if(this.disposeMap.has("_" + list.disposeContent)){
1245
       if(this.disposeMap.has("_" + list.disposeContent)){
1210
         let disposeOptionsStr = this.disposeMap.get("_" + list.disposeContent) // 老牙位
1246
         let disposeOptionsStr = this.disposeMap.get("_" + list.disposeContent) // 老牙位
@@ -1297,6 +1333,11 @@ export default {
1297
       this.treatmentPlanningOptions={}
1333
       this.treatmentPlanningOptions={}
1298
       this.treatmentPlanningMap= new Map()
1334
       this.treatmentPlanningMap= new Map()
1299
 
1335
 
1336
+      this.imageInspectContent=""
1337
+      this.imageInspectStr=[]
1338
+      this.imageInspectOption={}
1339
+      this.imageInspectMap= new Map()
1340
+
1300
       this.disposeContent=""
1341
       this.disposeContent=""
1301
       this.disposeStr=[]
1342
       this.disposeStr=[]
1302
       this.disposeOptions={}
1343
       this.disposeOptions={}
@@ -1401,6 +1442,9 @@ export default {
1401
     changeTreatmentPlanning(name){
1442
     changeTreatmentPlanning(name){
1402
       this.treatmentPlanningContent = name;
1443
       this.treatmentPlanningContent = name;
1403
     },
1444
     },
1445
+    changeImageingInspect(name){
1446
+      this.imageInspectContent = name;
1447
+    },
1404
     changeDispose(name){
1448
     changeDispose(name){
1405
       this.disposeContent = name;
1449
       this.disposeContent = name;
1406
     },
1450
     },

+ 1 - 1
src/views/patientCenter/medical/addMedicalTreeDialog.vue

@@ -4,7 +4,7 @@
4
       title="选择模版"
4
       title="选择模版"
5
       :visible.sync="addMedicalTreeDialogFlag"
5
       :visible.sync="addMedicalTreeDialogFlag"
6
       v-if="addMedicalTreeDialogFlag"
6
       v-if="addMedicalTreeDialogFlag"
7
-      width="1100px"
7
+      width="1200px"
8
       :close-on-press-escape="false"
8
       :close-on-press-escape="false"
9
       :close-on-click-modal="false"
9
       :close-on-click-modal="false"
10
       :before-close="beforeClose"
10
       :before-close="beforeClose"

+ 6 - 0
src/views/patientCenter/medical/index.vue

@@ -90,6 +90,12 @@
90
                     </div>
90
                     </div>
91
                   </div>
91
                   </div>
92
                   <div style="display: flex; margin-top: 10px">
92
                   <div style="display: flex; margin-top: 10px">
93
+                    <div style="width: 80px; font-weight: 700">影像检查:</div>
94
+                    <div style="flex: 1; display: flex; flex-direction: column">
95
+                        {{ item.imageInspectContent }}
96
+                    </div>
97
+                  </div>
98
+                  <div style="display: flex; margin-top: 10px">
93
                     <div style="width: 80px; font-weight: 700">诊断:</div>
99
                     <div style="width: 80px; font-weight: 700">诊断:</div>
94
                     <div style="flex: 1; display: flex; flex-direction: column">
100
                     <div style="flex: 1; display: flex; flex-direction: column">
95
                         {{ item.diagnosisContent }}
101
                         {{ item.diagnosisContent }}

+ 81 - 0
src/views/patientCenter/medical/yaChi.vue

@@ -2766,6 +2766,64 @@ flex: 1;
2766
           ></div>
2766
           ></div>
2767
         </div>
2767
         </div>
2768
 
2768
 
2769
+        <!-- 影像检查 -->
2770
+        <div class="dic_box">
2771
+          <span class="leftWidth"> 影像检查: </span>
2772
+
2773
+          <div
2774
+            ref="imageInspectText"
2775
+            style="
2776
+              display: flex;
2777
+              align-items: center;
2778
+              line-height: 21px;
2779
+              min-width: 400px;
2780
+              flex-wrap: wrap;
2781
+              flex: 1;
2782
+            "
2783
+            contenteditable="true"
2784
+            @input="changeImageingInspect"
2785
+          >
2786
+            <div
2787
+              v-for="(item, index) in imageInspectStr"
2788
+              :key="index"
2789
+              style="display: flex"
2790
+            >
2791
+              <!-- 如果是字符串类型,则直接显示文本 -->
2792
+              <span class="string" v-if="item.type === 'string'">
2793
+                {{ item.value }}
2794
+              </span>
2795
+              <!-- 如果是选择框类型,则渲染一个 select 元素 -->
2796
+              <span
2797
+                contenteditable="false"
2798
+                class="select"
2799
+                v-else-if="item.type === 'select'"
2800
+              >
2801
+                <select>
2802
+                  <option
2803
+                    v-for="(option, optIndex) in imageInspectOption[
2804
+                      item.value
2805
+                    ]"
2806
+                    :key="optIndex"
2807
+                  >
2808
+                    {{ option }}
2809
+                  </option>
2810
+                </select>
2811
+              </span>
2812
+            </div>
2813
+          </div>
2814
+        </div>
2815
+        <div style="display: flex; justify-content: flex-end">
2816
+          <div
2817
+            style="
2818
+              width: calc(100% - 70px);
2819
+              height: 2px;
2820
+              background-color: #e0e0e0;
2821
+              margin: 10px 0;
2822
+              text-align: right;
2823
+            "
2824
+          ></div>
2825
+        </div>
2826
+
2769
         <!-- 诊断 -->
2827
         <!-- 诊断 -->
2770
         <div class="dic_box">
2828
         <div class="dic_box">
2771
           <span class="leftWidth"> 诊断: </span>
2829
           <span class="leftWidth"> 诊断: </span>
@@ -3162,6 +3220,10 @@ export default {
3162
       type: Object,
3220
       type: Object,
3163
       default: {}
3221
       default: {}
3164
     },
3222
     },
3223
+    imageInspectOption: {
3224
+      type: Object,
3225
+      default: {}
3226
+    },
3165
     disposeContent: {
3227
     disposeContent: {
3166
       type: String,
3228
       type: String,
3167
       default: ''
3229
       default: ''
@@ -3194,6 +3256,10 @@ export default {
3194
       type: Array,
3256
       type: Array,
3195
       default: []
3257
       default: []
3196
     },
3258
     },
3259
+    imageInspectStr: {
3260
+      type: Array,
3261
+      default: []
3262
+    },
3197
     diagnosisOptions: {
3263
     diagnosisOptions: {
3198
       type: Object,
3264
       type: Object,
3199
       default: {}
3265
       default: {}
@@ -3317,6 +3383,21 @@ export default {
3317
       text = newVal.replace(/\s/g, '')
3383
       text = newVal.replace(/\s/g, '')
3318
       this.$emit('changeDiagnosis', text)
3384
       this.$emit('changeDiagnosis', text)
3319
     },
3385
     },
3386
+    changeImageingInspect() {
3387
+      const ele = this.$refs.imageInspectText
3388
+      let text = null
3389
+      let newVal = ''
3390
+      Array.from(ele.children).forEach((item) => {
3391
+        const child = item.children[0]
3392
+        if (item.children[0].className === 'string') {
3393
+          newVal = newVal + child.textContent
3394
+        } else if (item.children[0].className === 'select') {
3395
+          newVal = newVal + child.children[0].value
3396
+        }
3397
+      })
3398
+      text = newVal.replace(/\s/g, '')
3399
+      this.$emit('changeImageingInspect', text)
3400
+    },
3320
     changeTreatmentPlanning() {
3401
     changeTreatmentPlanning() {
3321
       const ele = this.$refs.treatmentPlanningText
3402
       const ele = this.$refs.treatmentPlanningText
3322
       let text = null
3403
       let text = null

+ 6 - 0
src/views/patientCenter/printMedical.vue

@@ -105,6 +105,12 @@
105
           </span>
105
           </span>
106
         </div>
106
         </div>
107
         <div class="row_df_box">
107
         <div class="row_df_box">
108
+          <span style="width: 80px"> 影像检查: </span>
109
+          <span style="display: flex; flex: 1; flex-direction: column">
110
+            {{ tableData.imageInspectContent }}
111
+          </span>
112
+        </div>
113
+        <div class="row_df_box">
108
           <span style="width: 80px"> 诊断: </span>
114
           <span style="width: 80px"> 诊断: </span>
109
           <span style="display: flex; flex: 1; flex-direction: column">
115
           <span style="display: flex; flex: 1; flex-direction: column">
110
             {{ tableData.diagnosisContent }}
116
             {{ tableData.diagnosisContent }}

+ 14 - 0
src/views/returnVisit/addVisitDialog.vue

@@ -394,6 +394,20 @@
394
                             </div>
394
                             </div>
395
                             <div style="display: flex; margin-top: 10px">
395
                             <div style="display: flex; margin-top: 10px">
396
                               <div style="width: 80px; font-weight: 700">
396
                               <div style="width: 80px; font-weight: 700">
397
+                                影像检查:
398
+                              </div>
399
+                              <div
400
+                                style="
401
+                                  flex: 1;
402
+                                  display: flex;
403
+                                  flex-direction: column;
404
+                                "
405
+                              >
406
+                                {{ item.imageInspectContent }}
407
+                              </div>
408
+                            </div>
409
+                            <div style="display: flex; margin-top: 10px">
410
+                              <div style="width: 80px; font-weight: 700">
397
                                 诊断:
411
                                 诊断:
398
                               </div>
412
                               </div>
399
                               <div
413
                               <div