Browse Source

表格渲染

xiaoming_global 5 years ago
parent
commit
f15fb18a92
1 changed files with 119 additions and 29 deletions
  1. 119 29
      src/pages/main/dialysis/AdviceTable.vue

+ 119 - 29
src/pages/main/dialysis/AdviceTable.vue View File

@@ -193,47 +193,118 @@
193 193
       <div class="NoData" v-show="advice_groups.length == 0">
194 194
         <img style="margin-top: 50px; margin-bottom: 50px" src="@/assets/login/data.jpg" alt />
195 195
       </div>
196
-    </div>-->
197
-    <el-table :data="advice_groups" border style="width: 100%">
198
-      <el-table-column fixed prop="date" label="期效" width="100">
196
+    </div> -->
197
+    <el-table :data="tableData" border style="width: 100%">
198
+      <el-table-column fixed prop="date" label="期效" width="100" align="center">
199 199
         <template slot-scope="scope">
200
-              <span v-if="scope.row.advices.advice_type == 1">长嘱</span>
201
-              <span v-if="scope.row.advices.advice_type == 2">临嘱</span>
202
-              <span v-if="scope.row.advices.advice_type == 3">临嘱</span>
200
+              <span v-if="scope.row.advice_type == 1">长嘱</span>
201
+              <span v-if="scope.row.advice_type == 2">临嘱</span>
202
+              <span v-if="scope.row.advice_type == 3">临嘱</span>
203 203
         </template>
204 204
       </el-table-column>
205
-      <el-table-column prop="name" label="开始时间" width="100">
205
+      <el-table-column prop="name" label="开始时间" width="100" align="center">
206 206
         <template slot-scope="scope">
207
-            {{ parseTime(scope.row.advices.start_time, "{m}-{d}{h}:{i}") }}
207
+            {{ parseTime(scope.row.start_time, "{m}-{d}{h}:{i}") }}
208
+        </template>
209
+      </el-table-column>
210
+      <el-table-column prop="province" label="医嘱内容" width="120" align="center">
211
+        <template slot-scope="scope">
212
+           {{ scope.row.advice_name }}
213
+        </template>
214
+      </el-table-column>
215
+      <el-table-column prop="city" label="规格" width="120" align="center">
216
+        <template slot-scope="scope">
217
+          {{ scope.row.advice_desc }}{{scope.row.drug_spec_unit}}
218
+        </template>
219
+      </el-table-column>
220
+      <el-table-column prop="address" label="开药数量" width="100" align="center">
221
+        <template slot-scope="scope">
222
+           <span
223
+                v-if="scope.row.prescribing_number"
224
+              >{{ scope.row.prescribing_number }}{{ scope.row.prescribing_number_unit }}</span>
225
+        </template>
226
+      </el-table-column>
227
+      <el-table-column prop="date" label="单次用量" width="100" align="center">
228
+        <template slot-scope="scope">
229
+          <span v-if="scope.row.single_dose">{{ scope.row.single_dose }} {{ scope.row.single_dose_unit }}</span>
230
+        </template>
231
+      </el-table-column>
232
+      <el-table-column prop="name" label="给药途径" width="100" align="center">
233
+        <template slot-scope="scope">
234
+           {{ scope.row.parent_id == 0 ? scope.row.delivery_way : '' }}
235
+        </template>
236
+      </el-table-column>
237
+      <el-table-column prop="province" label="执行频率" width="120" align="center">
238
+        <template slot-scope="scope">
239
+            {{ scope.row.parent_id == 0 ? scope.row.execution_frequency : '' }}
240
+        </template>
241
+      </el-table-column>
242
+      <el-table-column prop="city" label="执行时间" width="120" align="center">
243
+        <template slot-scope="scope">
244
+           {{ parseTime(scope.row.execution_time, "{m}-{d}{h}:{i}") }}
245
+        </template>
246
+      </el-table-column>
247
+      <el-table-column prop="address" label="执行护士" width="100" align="center">
248
+        <template slot-scope="scope">
249
+             <span
250
+                v-if="scope.row.stop_state == 1 && scope.row.parent_id == 0"
251
+              >{{ tranDoctor(scope.row.execution_staff) }}</span>
252
+        </template>
253
+      </el-table-column>
254
+      <el-table-column prop="date" label="开嘱医生" width="100" align="center">
255
+        <template slot-scope="scope">
256
+                <span
257
+                v-if="scope.row.stop_state == 1 && scope.row.parent_id == 0"
258
+              >{{ tranDoctor(scope.row.advice_doctor) }}</span>
259
+        </template>
260
+      </el-table-column>
261
+      <el-table-column prop="name" label="开嘱时间" width="100" align="center">
262
+        <template slot-scope="scope">
263
+           {{ parseTime(scope.row.created_time, "{m}-{d}{h}:{i}") }}
264
+        </template>
265
+      </el-table-column>
266
+      <el-table-column prop="province" label="校对护士" width="120" align="center">
267
+        <template slot-scope="scope">
268
+             <span
269
+                v-if="scope.row.stop_state == 1 && scope.row.parent_id == 0"
270
+              >{{ tranDoctor(scope.row.checker) }}</span>
271
+        </template>
272
+      </el-table-column>
273
+      <el-table-column prop="city" label="校对时间" width="120" align="center">
274
+        <template slot-scope="scope">
275
+          {{ parseTime(scope.row.check_time, "{m}-{d}{h}:{i}") }}
276
+        </template>
277
+      </el-table-column>
278
+      <el-table-column prop="date" label="停止时间" width="100" align="center">
279
+        <template slot-scope="scope">
280
+          {{ scope.row.stop_state == 1 && scope.row.parent_id
281
+              == 0 ? parseTime(scope.row.stop_time, '{y}-{m}-{d} {h}:{i}') : '' }}
282
+        </template>
283
+      </el-table-column>
284
+      <el-table-column prop="name" label="停止原因" width="100" align="center">
285
+        <template slot-scope="scope">
286
+             <span v-if="scope.row.stop_state == 1 && scope.row.parent_id == 0">{{ scope.row.stop_reason }}</span>
287
+        </template>
288
+      </el-table-column>
289
+      <el-table-column prop="province" label="停嘱医生" width="120" align="center">
290
+        <template slot-scope="scope">
291
+              <span
292
+                v-if="scope.row.stop_state == 1 && scope.row.parent_id == 0"
293
+              >{{ tranDoctor(scope.row.stop_doctor) }}</span>
208 294
         </template>
209 295
       </el-table-column>
210
-      <el-table-column prop="province" label="医嘱内容" width="120"></el-table-column>
211
-      <el-table-column prop="city" label="规格" width="120"></el-table-column>
212
-      <el-table-column prop="address" label="开药数量" width="100"></el-table-column>
213
-      <el-table-column prop="date" label="单次用量" width="100"></el-table-column>
214
-      <el-table-column prop="name" label="给药途径" width="100"></el-table-column>
215
-      <el-table-column prop="province" label="执行频率" width="120"></el-table-column>
216
-      <el-table-column prop="city" label="执行时间" width="120"></el-table-column>
217
-      <el-table-column prop="address" label="执行护士" width="100"></el-table-column>
218
-      <el-table-column prop="date" label="开嘱医生" width="100"></el-table-column>
219
-      <el-table-column prop="name" label="开嘱时间" width="100"></el-table-column>
220
-      <el-table-column prop="province" label="校对护士" width="120"></el-table-column>
221
-      <el-table-column prop="city" label="校对时间" width="120"></el-table-column>
222
-      <el-table-column prop="date" label="停止时间" width="100"></el-table-column>
223
-      <el-table-column prop="name" label="停止原因" width="100"></el-table-column>
224
-      <el-table-column prop="province" label="停嘱医生" width="120"></el-table-column>
225 296
       <el-table-column label="操作" width="500">
226 297
         <template slot-scope="scope">
227
-          <span class="xg" @click="modifyAdviceAction(group_index, advice_index)">
298
+          <span class="xg" @click="modifyAdviceAction( scope.$index,0)">
228 299
             <span class="iconfont">&#xe6f7;</span>修改医嘱
229 300
           </span>
230
-          <span class="xg" @click="stopAdviceAction(group_index, advice_index)">
301
+          <span class="xg" @click="stopAdviceAction(scope.$index, 0)">
231 302
             <span class="iconfont">&#xe64c;</span>停止医嘱
232 303
           </span>
233
-          <span class="sc" @click="deleteAdviceAction(group_index, advice_index)">
304
+          <span class="sc" @click="deleteAdviceAction(scope.$index, 0)">
234 305
             <span class="iconfont">&#xe6f8;</span>删除医嘱
235 306
           </span>
236
-          <span class="xg" @click="addSubdrugAction(group_index, advice_index)">
307
+          <span class="xg" @click="addSubdrugAction(scope.$index, 0)">
237 308
             <span class="iconfont">&#xe604;</span>添加子药
238 309
           </span>
239 310
         </template>
@@ -543,7 +614,7 @@ export default {
543 614
         group_index: -1,
544 615
         advice_index: -1
545 616
       },
546
-      tabelData: []
617
+      tableData: []
547 618
     }
548 619
   },
549 620
   methods: {
@@ -600,7 +671,7 @@ export default {
600 671
                     child_count++
601 672
                   }
602 673
                 }
603
-                group.advices.splice(advice_index, child_count + 1)
674
+                group.advices.splice(group_index, child_count + 1)
604 675
               }
605 676
               if (group.advices.length == 0) {
606 677
                 this.advice_groups.splice(group_index, 1)
@@ -747,7 +818,14 @@ export default {
747 818
       this.visibility = false
748 819
       this.stopPopup = false
749 820
     },
821
+    // modifyAdviceAction (id, index) {
822
+    //   console.log('id', id)
823
+    //   console.log('index', index)
824
+    // },
825
+
750 826
     modifyAdviceAction: function (group_index, advice_index) {
827
+      console.log('group_index', group_index)
828
+      console.log('advice_index', advice_index)
751 829
       var group = this.advice_groups[group_index]
752 830
       var advice = group.advices[advice_index]
753 831
       if (advice.advice_type == 1) {
@@ -887,6 +965,8 @@ export default {
887 965
       })
888 966
     },
889 967
     addSubdrugAction: function (group_index, advice_index) {
968
+      console.log('group_index', group_index)
969
+      console.log('advice_index', advice_index)
890 970
       var group = this.advice_groups[group_index]
891 971
       var advice = group.advices[advice_index]
892 972
       this.showPopup = true
@@ -1367,6 +1447,16 @@ export default {
1367 1447
           }
1368 1448
 
1369 1449
           console.log('advice_groups是什么', advice_groups)
1450
+          let arr = [...this.advice_groups]
1451
+          let arr2 = []
1452
+          arr.map(item => {
1453
+            console.log('item是什么', item.advices)
1454
+            arr2.push(...item.advices)
1455
+          })
1456
+          console.log('arr2是什么', arr2)
1457
+          this.tableData = arr2
1458
+          // this.tabelData = advice_groups
1459
+
1370 1460
           // var sl = response.data.data.advices.length;
1371 1461
           // for (let index = 0; index < sl; index++) {
1372 1462
           //   var advice = response.data.data.advices[index];