Przeglądaj źródła

新功能开发

csx 5 lat temu
rodzic
commit
500e3da3f0

+ 15 - 0
src/api/advice.js Wyświetl plik

@@ -296,7 +296,22 @@ export function postDoctorAdviceConfig(params) {
296 296
 
297 297
 
298 298
 
299
+export function getDoctorInitConfig() {
300
+  return request({
301
+    url: '/api/advicetemplate/init/get',
302
+    method: 'get',
303
+  })
304
+}
305
+
299 306
 
307
+export function PostInitAdviceTemplate(params) {
308
+  return request({
309
+    url: '/api/advicetemplate/init/commit',
310
+    method: 'post',
311
+    params:params
312
+
313
+  })
314
+}
300 315
 
301 316
 
302 317
 

+ 44 - 0
src/api/config.js Wyświetl plik

@@ -48,3 +48,47 @@ export function getIsDocking(params) {
48 48
   })
49 49
 }
50 50
 
51
+
52
+
53
+
54
+
55
+export function getAllSystemPrescription() {
56
+  return request({
57
+    url: '/api/systemprescription/all',
58
+    method: 'get',
59
+  })
60
+}
61
+
62
+
63
+export function getSystemPrescription(params) {
64
+  return request({
65
+    url: '/api/systemprescription/get',
66
+    method: 'get',
67
+    params:params
68
+
69
+  })
70
+}
71
+
72
+
73
+export function postSystemPrescription(params) {
74
+  return request({
75
+    url: '/api/systemprescription/commit',
76
+    method: 'post',
77
+    data: params
78
+
79
+  })
80
+}
81
+
82
+
83
+export function updateSystemPrescription(id,params) {
84
+  return request({
85
+    url: '/api/systemprescription/update?id='+id,
86
+    method: 'post',
87
+    data: params
88
+
89
+  })
90
+}
91
+
92
+
93
+
94
+

+ 2 - 1
src/lang/zh.js Wyświetl plik

@@ -164,7 +164,8 @@ export default {
164 164
     export: '一键导出',
165 165
     upload_config: '质控上报配置',
166 166
     quality_control: '质控上报',
167
-    remind_print: '排版提醒打印'
167
+    remind_print: '排版提醒打印',
168
+    system_prescription:"透析方案",
168 169
 
169 170
   },
170 171
   navbar: {

+ 10 - 4
src/router/modules/systems.js Wyświetl plik

@@ -82,8 +82,14 @@ export default {
82 82
     meta: {
83 83
       title: 'template'
84 84
     }
85
-  },
86
-  {
85
+  },{
86
+      path: '/data/prescription',
87
+      component: () => import('@/xt_pages/data/prescription'),
88
+      name: 'prescription',
89
+      meta: {
90
+        title: 'system_prescription'
91
+      }
92
+    }, {
87 93
     path: '/data/druguse',
88 94
     component: () => import('@/xt_pages/data/druguseTemplate'),
89 95
     name: 'druguse',
@@ -97,7 +103,7 @@ export default {
97 103
     meta: {
98 104
       title: 'showconfig'
99 105
     }
100
-  }, {
106
+  },{
101 107
     path: '/data/print',
102 108
     component: () => import('@/xt_pages/data/printTemplate'),
103 109
     name: 'printTemplate',
@@ -111,6 +117,6 @@ export default {
111 117
     meta: {
112 118
       title: 'hisconfig'
113 119
     }
114
-  }
120
+  },
115 121
   ]
116 122
 }

+ 61 - 10
src/xt_pages/data/druguseTemplate.vue Wyświetl plik

@@ -22,7 +22,15 @@
22 22
           <div>
23 23
             <div class="filter-container">
24 24
               <el-button size="small"
25
+                         :loading="loading"
25 26
                          style="float: right;"
27
+                         :disabled="is_init?true:false"
28
+                         @click="initAdvice()"
29
+                         type="primary">医嘱初始化
30
+              </el-button>
31
+
32
+              <el-button size="small"
33
+                         style="float: right;margin-left: 10px;margin-right: 10px"
26 34
                          @click="dialogConfigVisible = true"
27 35
                          type="primary">长期医嘱提醒配置
28 36
               </el-button>
@@ -1187,7 +1195,9 @@
1187 1195
     UpdateExecutionFrequency,
1188 1196
     updateTemplateName,
1189 1197
     getDoctorAdviceConfig,
1190
-    postDoctorAdviceConfig
1198
+    postDoctorAdviceConfig,
1199
+    PostInitAdviceTemplate,
1200
+    getDoctorInitConfig,
1191 1201
   } from '@/api/advice'
1192 1202
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
1193 1203
 
@@ -1219,6 +1229,7 @@
1219 1229
         isEdit: false,
1220 1230
         dialogTitle: '',
1221 1231
         is_open_remind:0,
1232
+        is_init:0,
1222 1233
         isAddChild: false,
1223 1234
         parent_id: 0,
1224 1235
         editDialogTitle: '编辑医嘱',
@@ -1242,7 +1253,7 @@
1242 1253
           name: ''
1243 1254
 
1244 1255
         },
1245
-
1256
+        loading:false,
1246 1257
         drugways: [],
1247 1258
         executionFrequencyOptions: [],
1248 1259
         drugdicRules: {
@@ -1350,8 +1361,34 @@
1350 1361
       this.getAdviceConfig()
1351 1362
       this.unitsOption = getDataConfig('hemodialysis', 'units')
1352 1363
       this.getDoctorAdviceConfig()
1364
+      this.getDoctorInitConfig()
1353 1365
     },
1354 1366
     methods: {
1367
+      initAdvice(){
1368
+        this.$confirm('是否进行医嘱初始化操作?', '提示', {
1369
+          confirmButtonText: '确定',
1370
+          cancelButtonText: '取消',
1371
+          type: 'warning'
1372
+        }).then(() => {
1373
+          let params = {
1374
+            is_init:1
1375
+          }
1376
+          this.loading = true
1377
+          PostInitAdviceTemplate(params).then(response => {
1378
+            if (response.data.state == 1) {
1379
+                this.is_init = response.data.data.init_config.is_init
1380
+              this.getAdviceConfig()
1381
+              this.loading = false
1382
+
1383
+            } else {
1384
+              this.loading = false
1385
+              this.$message.error(response.data.msg)
1386
+            }
1387
+          })
1388
+        }).catch(() => {
1389
+          this.loading = false
1390
+        });
1391
+      },
1355 1392
       getDoctorAdviceConfig(){
1356 1393
         getDoctorAdviceConfig().then(response => {
1357 1394
           if (response.data.state == 1) {
@@ -1361,6 +1398,20 @@
1361 1398
           }
1362 1399
         })
1363 1400
       },
1401
+      getDoctorInitConfig(){
1402
+        getDoctorInitConfig().then(response => {
1403
+          if (response.data.state == 1) {
1404
+            if(response.data.data.advice_init == null){
1405
+              this.is_init = 0
1406
+            }else{
1407
+              this.is_init = response.data.data.advice_init.is_init
1408
+            }
1409
+
1410
+          } else {
1411
+            this.$message.error(response.data.msg)
1412
+          }
1413
+        })
1414
+      },
1364 1415
       adviceNameShow({ row, column, rowIndex, columnIndex }) {
1365 1416
         if (columnIndex == 1) {
1366 1417
           return 'templateadvicenamedisplay'
@@ -1489,10 +1540,10 @@
1489 1540
             this.$message.success('添加模版成功')
1490 1541
 
1491 1542
             var template = response.data.data.template
1492
-            if (template.DoctorAdviceTemplate.length > 0) {
1493
-              for (let i = 0; i < template.DoctorAdviceTemplate.length; i++) {
1543
+            if (template.advice_templates.length > 0) {
1544
+              for (let i = 0; i < template.advice_templates.length; i++) {
1494 1545
                 const object = {}
1495
-                const DoctorAdviceTemplate = template.DoctorAdviceTemplate[i]
1546
+                const DoctorAdviceTemplate = template.advice_templates[i]
1496 1547
                 for (const key in DoctorAdviceTemplate) {
1497 1548
                   object[key] = DoctorAdviceTemplate[key]
1498 1549
                 }
@@ -1919,10 +1970,10 @@
1919 1970
             this.executionFrequencyOptions = response.data.data.efs
1920 1971
             this.drugdics = response.data.data.drugs
1921 1972
             const len = response.data.data.advice_templates.length
1922
-
1973
+            console.log(response.data.data.advice_templates)
1923 1974
             for (let i = 0; i < len; i++) {
1924 1975
               // 对于空医嘱模版的处理
1925
-              if (response.data.data.advice_templates[i] != null && response.data.data.advice_templates[i].DoctorAdviceTemplate.length == 0) {
1976
+              if (response.data.data.advice_templates[i] != null && response.data.data.advice_templates[i].advice_template.length == 0) {
1926 1977
                 const object = {}
1927 1978
                 object['name'] = response.data.data.advice_templates[i].name
1928 1979
                 object['isNoSub'] = 1
@@ -1931,10 +1982,10 @@
1931 1982
               }
1932 1983
 
1933 1984
               // 非空模版的处理
1934
-              for (let y = 0; y < response.data.data.advice_templates[i].DoctorAdviceTemplate.length; y++) {
1935
-                if (response.data.data.advice_templates[i].id == response.data.data.advice_templates[i].DoctorAdviceTemplate[y].template_id) {
1985
+              for (let y = 0; y < response.data.data.advice_templates[i].advice_template.length; y++) {
1986
+                if (response.data.data.advice_templates[i].id == response.data.data.advice_templates[i].advice_template[y].template_id) {
1936 1987
                   const object = {}
1937
-                  const DoctorAdviceTemplate = response.data.data.advice_templates[i].DoctorAdviceTemplate[y]
1988
+                  const DoctorAdviceTemplate = response.data.data.advice_templates[i].advice_template[y]
1938 1989
                   for (const key in DoctorAdviceTemplate) {
1939 1990
                     object[key] = DoctorAdviceTemplate[key]
1940 1991
                   }

+ 900 - 0
src/xt_pages/data/prescription.vue Wyświetl plik

@@ -0,0 +1,900 @@
1
+<template>
2
+  <div class="app-container ">
3
+
4
+    <div class="dataTitle">透析方案</div>
5
+
6
+    <div class="app-container" style="margin-left: -20px;margin-top: -20px" v-loading="pageLoading"
7
+         element-loading-text="拼命加载中">
8
+      <el-row :gutter="20">
9
+        <el-col :span="7">
10
+          <el-table
11
+            :header-cell-style="{
12
+              backgroundColor: 'rgb(245, 247, 250)',
13
+              color: '#606266'
14
+            }"
15
+            :row-style="{ color: '#303133' }"
16
+            :data="treatment_mode"
17
+            border
18
+            style="width: 100%"
19
+            highlight-current-row
20
+            :row-class-name="tableRows"
21
+            @row-click="onRowClicks"
22
+            ref="singleTable"
23
+          >
24
+            <el-table-column
25
+              label="透析模式"
26
+              align="center">
27
+              <template slot-scope="scope">
28
+                {{ scope.row.name }}
29
+              </template>
30
+            </el-table-column>
31
+
32
+
33
+            <el-table-column
34
+              label="状态"
35
+              width="80"
36
+              align="center">
37
+              <template slot-scope="scope">
38
+                {{getModeStatus(scope.row.id)}}
39
+              </template>
40
+            </el-table-column>
41
+          </el-table>
42
+        </el-col>
43
+        <el-col :span="17" v-loading="itemLoading">
44
+          <div class="filter-container">
45
+
46
+            <el-row :gutter="20">
47
+              <el-col :span="16">
48
+                <div>{{mode_name}}</div>
49
+              </el-col>
50
+              <el-col :span="8">
51
+                <el-button style="float: right;visibility: hidden" size="small" class="filter-item" type="primary"
52
+                           icon="el-icon-edit-outline"
53
+                           @click="openEdit()">修改
54
+                </el-button>
55
+              </el-col>
56
+            </el-row>
57
+
58
+
59
+          </div>
60
+          <div class="filter-container" style="float:right">
61
+            <el-form ref="addPlan" :model="addPlan" label-width="160px" style="border: black">
62
+
63
+              <el-row :gutter="20">
64
+                <el-col :span="8">
65
+                  <el-form-item label="透析时长(h):" prop="dialysis_duration">
66
+                    <el-time-picker
67
+                      v-model="dialysisTimeShow"
68
+                      :picker-options="{
69
+                  selectableRange: '00:01:00 - 23:59:00'
70
+                }"
71
+                      placeholder="透析时长"
72
+                      style="width:100%;"
73
+                      value-format="H:m"
74
+                      format="H:m"
75
+                      @change="selectnDialysisTime"
76
+                    >
77
+                    </el-time-picker>
78
+
79
+                  </el-form-item>
80
+                </el-col>
81
+
82
+                <el-col :span="8">
83
+                  <el-form-item label="血流量(ml/min):" prop="blood_flow_volume">
84
+                    <el-input v-model="addPlan.blood_flow_volume" ></el-input>
85
+                  </el-form-item>
86
+                </el-col>
87
+                <el-col :span="8" v-if="this.$store.getters.xt_user.template_info.template_id == 6">
88
+                  <el-form-item label="目标超滤量(ml) : ">
89
+                    <el-input v-model="addPlan.target_ultrafiltration" type="number" ></el-input>
90
+                  </el-form-item>
91
+                </el-col>
92
+
93
+                <el-col :span="8" v-if="this.$store.getters.xt_user.template_info.template_id != 6">
94
+                  <el-form-item label="目标超滤量(L) : ">
95
+                    <el-input v-model="addPlan.target_ultrafiltration" type="number" ></el-input>
96
+                  </el-form-item>
97
+                </el-col>
98
+
99
+
100
+                <el-col :span="8">
101
+                  <el-form-item label="透析液配方:">
102
+                    <el-select v-model="addPlan.dialysate_formulation" >
103
+                      <el-option v-for="(item,index)  in dialysate_formulation" :label="item.name" :key="index"
104
+                                 :value="item.id"></el-option>
105
+                    </el-select>
106
+                  </el-form-item>
107
+                </el-col>
108
+
109
+                <el-col :span="8">
110
+                  <el-form-item label="抗凝剂:" prop="anticoagulant">
111
+                    <el-select v-model="addPlan.anticoagulant" @change="changeThisAnticoagulant" >
112
+                      <el-option v-for="(item,index)  in anticoagulantsConfit" :label="item.name" :key="index"
113
+                                 :value="item.id"></el-option>
114
+                    </el-select>
115
+                  </el-form-item>
116
+                </el-col>
117
+                <el-col :span="8" v-if="anticoagulant.shouji != -1">
118
+                  <el-form-item :label="'首剂('+anticoagulant.shouji_unit+'): '" prop="anticoagulant_shouji">
119
+                    <el-input v-model="addPlan.anticoagulant_shouji"
120
+                              :disabled="anticoagulant.shouji==1?false:true" type="number"></el-input>
121
+                  </el-form-item>
122
+                </el-col>
123
+                <el-col :span="8" v-if="anticoagulant.weichi != -1">
124
+                  <el-form-item :label="'维持('+anticoagulant.weichi_unit+'): '" prop="anticoagulant_weichi">
125
+                    <el-input v-model="addPlan.anticoagulant_weichi"
126
+                              :disabled="anticoagulant.weichi==1?false:true" type="number"></el-input>
127
+                  </el-form-item>
128
+                </el-col>
129
+                <el-col :span="8" v-if="anticoagulant.zongliang != -1">
130
+                  <el-form-item :label="'总量('+anticoagulant.zongliang_unit+'): '" prop="anticoagulant_zongliang">
131
+                    <el-input v-model="addPlan.anticoagulant_zongliang"
132
+                              :disabled="anticoagulant.zongliang==1?false:true" type="number"></el-input>
133
+                  </el-form-item>
134
+                </el-col>
135
+                <el-col :span="8" v-if="anticoagulant.gaimingcheng != -1">
136
+                  <el-form-item :label="'钙('+anticoagulant.gaimingcheng_unit+'): '" prop="anticoagulant_gaimingcheng">
137
+                    <el-input v-model="addPlan.anticoagulant_gaimingcheng"
138
+                              :disabled="anticoagulant.gaimingcheng==1?false:true"
139
+                              placeholder="钙名称"></el-input>
140
+                  </el-form-item>
141
+                </el-col>
142
+                <el-col :span="8" v-if="anticoagulant.gaijiliang != -1">
143
+                  <el-form-item prop="anticoagulant_gaijiliang">
144
+                    <el-input v-model="addPlan.anticoagulant_gaijiliang"
145
+                              :disabled="anticoagulant.gaijiliang==1?false:true"
146
+                              placeholder="钙剂量"></el-input>
147
+                  </el-form-item>
148
+                </el-col>
149
+                <el-col :span="8">
150
+                  <el-form-item label="置换量(L) : " prop="replacement_total">
151
+                    <el-input v-model="addPlan.replacement_total" type="number"></el-input>
152
+                  </el-form-item>
153
+                </el-col>
154
+
155
+
156
+                <el-col :span="8">
157
+                  <el-form-item label="钾(mmol/L): " prop="kalium">
158
+                    <el-input v-model="addPlan.kalium" ></el-input>
159
+                  </el-form-item>
160
+                </el-col>
161
+                <el-col :span="8">
162
+                  <el-form-item label="钠(mmol/L): " prop="sodium">
163
+                    <el-input v-model="addPlan.sodium" ></el-input>
164
+                  </el-form-item>
165
+                </el-col>
166
+                <el-col :span="8">
167
+                  <el-form-item label="钙(mmol/L): " prop="calcium">
168
+                    <el-input v-model="addPlan.calcium" ></el-input>
169
+                  </el-form-item>
170
+                </el-col>
171
+
172
+                <el-col :span="8">
173
+                  <el-form-item label="透析器/灌流器:">
174
+                    <el-input v-model="addPlan.dialyzer_perfusion_apparatus" ></el-input>
175
+                  </el-form-item>
176
+                </el-col>
177
+
178
+
179
+                <el-col :span="8">
180
+                  <el-form-item label="碳酸氢盐(mmol/L): " prop="bicarbonate">
181
+                    <el-input v-model="addPlan.bicarbonate" ></el-input>
182
+                  </el-form-item>
183
+                </el-col>
184
+                <el-col :span="8">
185
+                  <el-form-item label="葡萄糖(mmol/L): " prop="glucose">
186
+                    <el-input v-model="addPlan.glucose" ></el-input>
187
+                  </el-form-item>
188
+                </el-col>
189
+
190
+
191
+                <el-col :span="8">
192
+                  <el-form-item label="透析液流量(ml/min): " prop="dialysate_flow">
193
+                    <el-input v-model="addPlan.dialysate_flow" ></el-input>
194
+                  </el-form-item>
195
+                </el-col>
196
+                <el-col :span="8">
197
+                  <el-form-item label="透析液温度(℃): " prop="dialysate_temperature">
198
+                    <el-input v-model="addPlan.dialysate_temperature" ></el-input>
199
+                  </el-form-item>
200
+                </el-col>
201
+
202
+                <el-col :span="8">
203
+                  <el-form-item label="电导度(mS/cm): " prop="conductivity">
204
+                    <el-input v-model="addPlan.conductivity" ></el-input>
205
+                  </el-form-item>
206
+                </el-col>
207
+
208
+
209
+                <el-col :span="8">
210
+                  <el-form-item label="体液过多症状:">
211
+                    <el-select v-model="addPlan.body_fluid" >
212
+                      <el-option v-for="(item,index)  in body_fluid_option" :label="item.name" :key="index"
213
+                                 :value="item.id"></el-option>
214
+                    </el-select>
215
+                  </el-form-item>
216
+                </el-col>
217
+
218
+                <el-col :span="8">
219
+                  <el-form-item label="体液过多其他症状">
220
+                    <el-input v-model="addPlan.body_fluid_other" ></el-input>
221
+                  </el-form-item>
222
+                </el-col>
223
+
224
+
225
+                <el-col :span="8">
226
+                  <el-form-item label="透析前使用特殊药物">
227
+                    <el-select v-model="addPlan.special_medicine" placeholder="请选择" style="width:100%;"
228
+                               >
229
+                      <el-option :key="0" label="请选择" :value="0"></el-option>
230
+                      <el-option v-for="(item,index) in special_medicine_option" :label="item.name" :key="index"
231
+                                 :value="item.id"></el-option>
232
+                    </el-select>
233
+                  </el-form-item>
234
+                </el-col>
235
+
236
+                <el-col :span="8">
237
+                  <el-form-item label="使用其他特殊药物">
238
+                    <el-input v-model="addPlan.special_medicine_other" ></el-input>
239
+                  </el-form-item>
240
+                </el-col>
241
+
242
+
243
+                <el-col :span="8">
244
+                  <el-form-item label="置换液:"
245
+                                v-if="current_select == 2 &&this.$store.getters.xt_user.template_info.template_id != 6">
246
+                    <el-select v-model="addPlan.displace_liqui_part" placeholder="请选择">
247
+                      <el-option :key="0" label="请选择" :value="0"></el-option>
248
+                      <el-option v-for="(option, index) in displace_liqui_part_option" :key="index"
249
+                                 :label="option.name" :value="option.id"></el-option>
250
+                    </el-select>
251
+                  </el-form-item>
252
+
253
+
254
+                  <el-form-item label="置换方式:"
255
+                                v-if="current_select == 2 &&this.$store.getters.xt_user.template_info.template_id == 6">
256
+                    <el-select v-model="addPlan.displace_liqui_part" placeholder="请选择" >
257
+                      <el-option :key="0" label="请选择" :value="0"></el-option>
258
+                      <el-option v-for="(option, index) in displace_liqui_part_option" :key="index"
259
+                                 :label="option.name" :value="option.id"></el-option>
260
+                    </el-select>
261
+                  </el-form-item>
262
+
263
+                </el-col>
264
+
265
+                <el-col :span="8" v-if="current_select == 2">
266
+                  <el-form-item label="置换液总量(L)">
267
+                    <el-input v-model="addPlan.displace_liqui_value" ></el-input>
268
+                  </el-form-item>
269
+                </el-col>
270
+
271
+
272
+                <el-col :span="8">
273
+                  <el-form-item label="血管通路:">
274
+                    <el-select v-model="addPlan.blood_access" placeholder="请选择">
275
+                      <el-option :key="0" label="请选择" :value="0"></el-option>
276
+
277
+                      <el-option v-for="(option, index) in blood_access_option" :key="index"
278
+                                 :label="option.name" :value="option.id"></el-option>
279
+                    </el-select>
280
+                  </el-form-item>
281
+                </el-col>
282
+
283
+                <!-- </el-row>
284
+                <el-row :gutter="20" > -->
285
+                <el-col :span="8">
286
+                  <el-form-item label="实际超滤量(L)">
287
+                    <el-input v-model="addPlan.ultrafiltration" ></el-input>
288
+                  </el-form-item>
289
+                </el-col>
290
+
291
+
292
+                <el-col :span="8">
293
+                  <el-form-item label="目标KT/V">
294
+                    <el-input v-model="addPlan.target_ktv" ></el-input>
295
+                  </el-form-item>
296
+                </el-col>
297
+
298
+
299
+              </el-row>
300
+            </el-form>
301
+            <el-button style="float: right" size="small" class="filter-item" type="primary"
302
+                       icon="el-icon-edit-outline"
303
+                       @click="savePrescription()">保存
304
+            </el-button>
305
+          </div>
306
+        </el-col>
307
+      </el-row>
308
+    </div>
309
+
310
+
311
+  </div>
312
+</template>
313
+
314
+<script>
315
+  import { calculateAnticoagulantZL, uParseTime } from '@/utils/tools'
316
+  import {
317
+    getAllSystemPrescription,
318
+    getSystemPrescription,
319
+    postSystemPrescription,
320
+    updateSystemPrescription
321
+  } from '@/api/config'
322
+
323
+  export default {
324
+    name: 'prescription',
325
+    components: {},
326
+
327
+    data() {
328
+      return {
329
+        dialysisTimeShow: new Date(2018, 1, 1, 3, 0),
330
+        modeOptions: null,
331
+        current_select: 0,
332
+        mode_name: 'HD',
333
+        pageLoading: false,
334
+        itemLoading: false,
335
+        treatment_mode: [// 治疗模式
336
+          {
337
+            id: 1,
338
+            name: 'HD',
339
+            dialysis_duration: 1,
340
+            replacement_way: 2,
341
+            hemodialysis_machine: 1,
342
+            blood_filter: 2,
343
+            perfusion_apparatus: 2,
344
+            blood_flow_volume: 1,
345
+            dialysate_flow: 1,
346
+            kalium: 1,
347
+            sodium: 1,
348
+            calcium: 1,
349
+            bicarbonate: 1
350
+          },
351
+          {
352
+            id: 2,
353
+            name: 'HDF',
354
+            dialysis_duration: 1,
355
+            replacement_way: 1,
356
+            hemodialysis_machine: 2,
357
+            blood_filter: 1,
358
+            perfusion_apparatus: 2,
359
+            blood_flow_volume: 1,
360
+            dialysate_flow: 1,
361
+            kalium: 1,
362
+            sodium: 1,
363
+            calcium: 1,
364
+            bicarbonate: 1
365
+          },
366
+          {
367
+            id: 3,
368
+            name: 'HD+HP',
369
+            dialysis_duration: 1,
370
+            replacement_way: 2,
371
+            hemodialysis_machine: 1,
372
+            blood_filter: 2,
373
+            perfusion_apparatus: 1,
374
+            blood_flow_volume: 1,
375
+            dialysate_flow: 1,
376
+            kalium: 1,
377
+            sodium: 1,
378
+            calcium: 1,
379
+            bicarbonate: 1
380
+          },
381
+          {
382
+            id: 4,
383
+            name: 'HP',
384
+            dialysis_duration: 1,
385
+            replacement_way: 2,
386
+            hemodialysis_machine: 2,
387
+            blood_filter: 2,
388
+            perfusion_apparatus: 1,
389
+            blood_flow_volume: 1,
390
+            dialysate_flow: 2,
391
+            kalium: 2,
392
+            sodium: 2,
393
+            calcium: 2,
394
+            bicarbonate: 2
395
+          },
396
+          {
397
+            id: 5,
398
+            name: 'HF',
399
+            dialysis_duration: 1,
400
+            replacement_way: 1,
401
+            hemodialysis_machine: 2,
402
+            blood_filter: 1,
403
+            perfusion_apparatus: 2,
404
+            blood_flow_volume: 1,
405
+            dialysate_flow: 2,
406
+            kalium: 1,
407
+            sodium: 1,
408
+            calcium: 1,
409
+            bicarbonate: 1
410
+          },
411
+          {
412
+            id: 6,
413
+            name: 'SCUF',
414
+            dialysis_duration: 1,
415
+            replacement_way: 2,
416
+            hemodialysis_machine: 1,
417
+            blood_filter: 2,
418
+            perfusion_apparatus: 2,
419
+            blood_flow_volume: 1,
420
+            dialysate_flow: 2,
421
+            kalium: 2,
422
+            sodium: 2,
423
+            calcium: 2,
424
+            bicarbonate: 2
425
+          },
426
+          {
427
+            id: 7,
428
+            name: 'IUF',
429
+            dialysis_duration: 1,
430
+            replacement_way: 2,
431
+            hemodialysis_machine: 1,
432
+            blood_filter: 2,
433
+            perfusion_apparatus: 2,
434
+            blood_flow_volume: 2,
435
+            dialysate_flow: 2,
436
+            kalium: 2,
437
+            sodium: 2,
438
+            calcium: 2,
439
+            bicarbonate: 2
440
+          },
441
+          {
442
+            id: 8,
443
+            name: 'HFHD',
444
+            dialysis_duration: 1,
445
+            replacement_way: 2,
446
+            hemodialysis_machine: 1,
447
+            blood_filter: 2,
448
+            perfusion_apparatus: 2,
449
+            blood_flow_volume: 1,
450
+            dialysate_flow: 1,
451
+            kalium: 1,
452
+            sodium: 1,
453
+            calcium: 1,
454
+            bicarbonate: 1
455
+          },
456
+          {
457
+            id: 9,
458
+            name: 'HFHD+HP',
459
+            dialysis_duration: 1,
460
+            replacement_way: 2,
461
+            hemodialysis_machine: 1,
462
+            blood_filter: 2,
463
+            perfusion_apparatus: 1,
464
+            blood_flow_volume: 1,
465
+            dialysate_flow: 1,
466
+            kalium: 1,
467
+            sodium: 1,
468
+            calcium: 1,
469
+            bicarbonate: 1
470
+          },
471
+          {
472
+            id: 10,
473
+            name: 'PHF',
474
+            dialysis_duration: 1,
475
+            replacement_way: 1,
476
+            hemodialysis_machine: 2,
477
+            blood_filter: 1,
478
+            perfusion_apparatus: 2,
479
+            blood_flow_volume: 1,
480
+            dialysate_flow: 1,
481
+            kalium: 1,
482
+            sodium: 1,
483
+            calcium: 1,
484
+            bicarbonate: 1
485
+          },
486
+          {
487
+            id: 11,
488
+            name: 'HFR',
489
+            dialysis_duration: 1,
490
+            replacement_way: 2,
491
+            hemodialysis_machine: 2,
492
+            blood_filter: 1,
493
+            perfusion_apparatus: 1,
494
+            blood_flow_volume: 1,
495
+            dialysate_flow: 1,
496
+            kalium: 1,
497
+            sodium: 1,
498
+            calcium: 1,
499
+            bicarbonate: 1
500
+          },
501
+          {
502
+            id: 12,
503
+            name: 'HDF+HP',
504
+            dialysis_duration: 1,
505
+            replacement_way: 1,
506
+            hemodialysis_machine: 2,
507
+            blood_filter: 1,
508
+            perfusion_apparatus: 1,
509
+            blood_flow_volume: 1,
510
+            dialysate_flow: 1,
511
+            kalium: 1,
512
+            sodium: 1,
513
+            calcium: 1,
514
+            bicarbonate: 1
515
+          },
516
+          {
517
+            id: 13,
518
+            name: 'CRRT',
519
+            dialysis_duration: 1,
520
+            replacement_way: 1,
521
+            hemodialysis_machine: 2,
522
+            blood_filter: 1,
523
+            perfusion_apparatus: 2,
524
+            blood_flow_volume: 1,
525
+            dialysate_flow: 2,
526
+            kalium: 1,
527
+            sodium: 1,
528
+            calcium: 1,
529
+            bicarbonate: 1
530
+          },
531
+          {
532
+            id: 14,
533
+            name: '腹水回输',
534
+            dialysis_duration: 1,
535
+            replacement_way: 2,
536
+            hemodialysis_machine: 1,
537
+            blood_filter: 2,
538
+            perfusion_apparatus: 2,
539
+            blood_flow_volume: 2,
540
+            dialysate_flow: 2,
541
+            kalium: 2,
542
+            sodium: 2,
543
+            calcium: 2,
544
+            bicarbonate: 2
545
+          },
546
+          {
547
+            id: 15,
548
+            name: 'HD前置换',
549
+            dialysis_duration: 1,
550
+            replacement_way: 2,
551
+            hemodialysis_machine: 1,
552
+            blood_filter: 2,
553
+            perfusion_apparatus: 2,
554
+            blood_flow_volume: 1,
555
+            dialysate_flow: 1,
556
+            kalium: 1,
557
+            sodium: 1,
558
+            calcium: 1,
559
+            bicarbonate: 1
560
+          },
561
+          {
562
+            id: 16,
563
+            name: 'HD后置换',
564
+            dialysis_duration: 1,
565
+            replacement_way: 2,
566
+            hemodialysis_machine: 1,
567
+            blood_filter: 2,
568
+            perfusion_apparatus: 2,
569
+            blood_flow_volume: 1,
570
+            dialysate_flow: 1,
571
+            kalium: 1,
572
+            sodium: 1,
573
+            calcium: 1,
574
+            bicarbonate: 1
575
+          },
576
+          {
577
+            id: 17,
578
+            name: 'HDF前置换',
579
+            dialysis_duration: 1,
580
+            replacement_way: 1,
581
+            hemodialysis_machine: 2,
582
+            blood_filter: 1,
583
+            perfusion_apparatus: 2,
584
+            blood_flow_volume: 1,
585
+            dialysate_flow: 1,
586
+            kalium: 1,
587
+            sodium: 1,
588
+            calcium: 1,
589
+            bicarbonate: 1
590
+          },
591
+          {
592
+            id: 18,
593
+            name: 'HDF后置换',
594
+            dialysis_duration: 1,
595
+            replacement_way: 1,
596
+            hemodialysis_machine: 2,
597
+            blood_filter: 1,
598
+            perfusion_apparatus: 2,
599
+            blood_flow_volume: 1,
600
+            dialysate_flow: 1,
601
+            kalium: 1,
602
+            sodium: 1,
603
+            calcium: 1,
604
+            bicarbonate: 1
605
+          }
606
+
607
+        ],
608
+        addPlan: {
609
+          id: 0,
610
+          mode:'',
611
+          dialyzer: '',
612
+          dialysis_duration: '',
613
+          dialysis_duration_hour: '',
614
+          dialysis_duration_minute: '',
615
+          hemodialysis_machine: '',
616
+          perfusion_apparatus: '',
617
+          dialysate_formulation:'',
618
+          blood_flow_volume: '',
619
+          dewater: '',
620
+          displace_liqui: 0,
621
+          replacement_way: '',
622
+          anticoagulant: '',
623
+          anticoagulant_shouji: '',
624
+          anticoagulant_weichi: '',
625
+          anticoagulant_zongliang: '',
626
+          anticoagulant_gaimingcheng: '',
627
+          anticoagulant_gaijiliang: '',
628
+          kalium: '',
629
+          replacement_total: '',
630
+          sodium: '',
631
+          calcium: '',
632
+          bicarbonate: '',
633
+          glucose: '',
634
+          dry_weight: '',
635
+          dialysate_flow: '',
636
+          dialysate_temperature: '',
637
+          conductivity: '',
638
+          doctor: '',
639
+          remark: '',
640
+          target_ktv: '',
641
+          target_ultrafiltration: '',
642
+          dialyzer_perfusion_apparatus: '',
643
+          body_fluid: '',
644
+          body_fluid_other: '',
645
+          special_medicine: '',
646
+          special_medicine_other: '',
647
+          displace_liqui_part: '',
648
+          displace_liqui_value: '',
649
+          ultrafiltration: '',
650
+          blood_access: ''
651
+        },
652
+        system_prescription: [],
653
+        isEdit: false,
654
+        anticoagulant: {
655
+          id: 0,
656
+          name: '',
657
+          type: 1,
658
+          shouji: 1,
659
+          weichi: 1,
660
+          zongliang: 1,
661
+          gaimingcheng: -1,
662
+          gaijiliang: -1,
663
+          shouji_unit: 'mg',
664
+          weichi_unit: 'mg/h',
665
+          zongliang_unit: 'mg',
666
+          gaimingcheng_unit: '',
667
+          gaijiliang_unit: ''
668
+        },
669
+        anticoagulantsSet: {
670
+          type: 1
671
+        },
672
+        replacementWays: null,
673
+        anticoagulantsConfit: null,
674
+        dialysate_formulation: [],
675
+        body_fluid_option: [],
676
+        special_medicine_option: [],
677
+        displace_liqui_part_option: [],
678
+        blood_access_option: []
679
+
680
+      }
681
+    },
682
+    computed: {},
683
+    methods: {
684
+      openEdit() {
685
+
686
+      },
687
+      tableRows({ row, rowIndex }) {
688
+        // 把每一行的索引放进row
689
+        row.index = rowIndex
690
+      },
691
+      onRowClicks(row, event, column) {
692
+        this.current_select = row.id
693
+        this.mode_name = row.name
694
+        this.isEdit = false
695
+        this.addPlan.mode = row.id
696
+        this.getSystemPrescription(row.id)
697
+
698
+      },getSystemPrescription(id){
699
+
700
+
701
+       var tempAddPlan = {
702
+          id: 0,
703
+            mode:'',
704
+            dialyzer: '',
705
+            dialysis_duration: '',
706
+            dialysis_duration_hour: '',
707
+            dialysis_duration_minute: '',
708
+            hemodialysis_machine: '',
709
+            dialysate_formulation:'',
710
+            perfusion_apparatus: '',
711
+            blood_flow_volume: '',
712
+            dewater: '',
713
+            displace_liqui: 0,
714
+            replacement_way: '',
715
+            anticoagulant: '',
716
+            anticoagulant_shouji: '',
717
+            anticoagulant_weichi: '',
718
+            anticoagulant_zongliang: '',
719
+            anticoagulant_gaimingcheng: '',
720
+            anticoagulant_gaijiliang: '',
721
+            kalium: '',
722
+            replacement_total: '',
723
+            sodium: '',
724
+            calcium: '',
725
+            bicarbonate: '',
726
+            glucose: '',
727
+            dry_weight: '',
728
+            dialysate_flow: '',
729
+            dialysate_temperature: '',
730
+            conductivity: '',
731
+            doctor: '',
732
+            remark: '',
733
+            target_ktv: '',
734
+            target_ultrafiltration: '',
735
+            dialyzer_perfusion_apparatus: '',
736
+            body_fluid: '',
737
+            body_fluid_other: '',
738
+            special_medicine: '',
739
+            special_medicine_other: '',
740
+            displace_liqui_part: '',
741
+            displace_liqui_value: '',
742
+            ultrafiltration: '',
743
+            blood_access: ''
744
+        }
745
+
746
+        for (const key in  tempAddPlan) {
747
+          this.addPlan[key] = tempAddPlan[key]
748
+        }
749
+        this.isEdit = false
750
+        let params ={
751
+          id:id
752
+        }
753
+
754
+        this.dialysisTimeShow = new Date(2018, 1, 1, this.addPlan.dialysis_duration_hour, this.addPlan.dialysis_duration_minute)
755
+
756
+
757
+        getSystemPrescription(params).then(response => {
758
+          if (response.data.state == 0) {
759
+            this.$message.error(response.data.msg)
760
+            return false
761
+          } else {
762
+            if(response.data.data.prescription.id > 0) {
763
+              for (const key in  response.data.data.prescription) {
764
+                this.addPlan[key] = response.data.data.prescription[key]
765
+              }
766
+
767
+              this.dialysisTimeShow = new Date(2018, 1, 1, this.addPlan.dialysis_duration_hour, this.addPlan.dialysis_duration_minute)
768
+              if (this.addPlan.id > 0) {
769
+                this.isEdit = true
770
+              }
771
+            }
772
+            this.addPlan.mode = id
773
+          }
774
+        })
775
+      },
776
+      getModeStatus: function(id) {
777
+        for (let i = 0; i < this.system_prescription.length; i++) {
778
+          if (this.system_prescription[i].mode_id == id) {
779
+            return '已保存'
780
+          }
781
+        }
782
+        return '未保存'
783
+      }, getAllSystemPrescription() {
784
+        getAllSystemPrescription().then(response => {
785
+          if (response.data.state == 0) {
786
+            this.$message.error(response.data.msg)
787
+            return false
788
+          } else {
789
+            this.system_prescription = response.data.data.prescriptions
790
+            for (let i = 0; i < this.system_prescription.length; i++) {
791
+              if (this.system_prescription[i].mode == 1) {
792
+                this.isEdit = true
793
+              }
794
+            }
795
+
796
+          }
797
+        })
798
+
799
+      }, selectnDialysisTime(val) {
800
+        var valTime = val.split(':')
801
+        this.addPlan.dialysis_duration = parseFloat(valTime[0]) + parseFloat((valTime[1] / 60).toFixed(2))
802
+        this.addPlan.dialysis_duration_hour = valTime[0]
803
+        this.addPlan.dialysis_duration_minute = valTime[1]
804
+      }, changeThisAnticoagulant() {
805
+        var thismode = parseInt(this.addPlan.anticoagulant)
806
+        if (isNaN(thismode) || thismode <= 0) {
807
+          return false
808
+        }
809
+        if (typeof (this.anticoagulantsConfit[thismode]) == 'undefined' || this.anticoagulantsConfit[thismode] == null) {
810
+          return false
811
+        }
812
+        this.anticoagulant = this.anticoagulantsConfit[thismode]
813
+      }, savePrescription:function() {
814
+        this.addPlan.anticoagulant_zongliang = this.addPlan.anticoagulant_zongliang.toString()
815
+        if (!this.isEdit){
816
+          postSystemPrescription(this.addPlan).then(response => {
817
+            if (response.data.state == 0) {
818
+              this.$message.error(response.data.msg)
819
+              return false
820
+            } else {
821
+              this.$notify({
822
+                title: '成功',
823
+                message: '创建成功',
824
+                type: 'success',
825
+                duration: 2000
826
+              })
827
+              this.isEdit = true
828
+              this.system_prescription = []
829
+              this.system_prescription = response.data.data.prescriptions
830
+              this.addPlan.id  =  response.data.data.prescription.id
831
+              return false
832
+            }
833
+          })
834
+        }else{
835
+          updateSystemPrescription(this.addPlan.id, this.addPlan).then(response => {
836
+            if (response.data.state == 0) {
837
+              this.$message.error(response.data.msg)
838
+              return false
839
+            } else {
840
+              this.isEdit = true
841
+              this.addPlan.id  =  response.data.data.prescription.id
842
+              this.$notify({
843
+                title: '成功',
844
+                message: '编辑成功',
845
+                type: 'success',
846
+                duration: 2000
847
+              })
848
+              return false
849
+            }
850
+          })
851
+        }
852
+      }
853
+
854
+    }, mounted() {
855
+      this.$refs.singleTable.setCurrentRow(this.treatment_mode[0])
856
+      this.mode_name = this.treatment_mode[0].name
857
+      this.current_select = this.treatment_mode[0].id
858
+    },
859
+    created() {
860
+      this.anticoagulantsSet = this.$store.getters.anticoagulants_set
861
+      this.replacementWays = this.$store.getters.replacement_ways
862
+      this.anticoagulantsConfit = this.$store.getters.anticoagulants_confit
863
+      this.blood_filters = this.$store.getters.blood_filters
864
+      this.dialysate_formulation = this.$store.getters.dialysate_formulation
865
+      this.body_fluid_option = this.$store.getters.body_fluid
866
+      this.special_medicine_option = this.$store.getters.special_medicine
867
+      this.displace_liqui_part_option = this.$store.getters.displace_liqui
868
+      this.blood_access_option = this.$store.getters.blood_access
869
+      this.addPlan.mode = 1
870
+      this.getAllSystemPrescription()
871
+      this.getSystemPrescription(this.addPlan.mode)
872
+
873
+    }, watch: {
874
+      'addPlan.dialysis_duration': function() {
875
+        this.addPlan.anticoagulant_zongliang = calculateAnticoagulantZL(1,
876
+          this.addPlan.anticoagulant_shouji,
877
+          this.addPlan.dialysis_duration,
878
+          this.addPlan.anticoagulant_weichi
879
+        )
880
+      },
881
+      'addPlan.anticoagulant_shouji': function() {
882
+        this.addPlan.anticoagulant_zongliang = calculateAnticoagulantZL(1,
883
+          this.addPlan.anticoagulant_shouji,
884
+          this.addPlan.dialysis_duration,
885
+          this.addPlan.anticoagulant_weichi
886
+        )
887
+      },
888
+      'addPlan.anticoagulant_weichi': function() {
889
+        this.addPlan.anticoagulant_zongliang = calculateAnticoagulantZL(1,
890
+          this.addPlan.anticoagulant_shouji,
891
+          this.addPlan.dialysis_duration,
892
+          this.addPlan.anticoagulant_weichi
893
+        )
894
+      }
895
+    }
896
+  }
897
+</script>
898
+
899
+<style rel="stylesheet/scss" lang="scss" scoped>
900
+</style>

+ 11 - 8
src/xt_pages/dialysis/details/NavIgation.vue Wyświetl plik

@@ -253,7 +253,14 @@ export default {
253 253
       default: () => {
254 254
         return { id: 0 };
255 255
       }
256
+    },  system_prescribe: {
257
+      // 系统透析方案
258
+      type: Object,
259
+      default: () => {
260
+        return { id: 0 };
261
+      }
256 262
     },
263
+
257 264
     receiver_treatment_access: {
258 265
       // 接诊评估
259 266
       type: Object,
@@ -528,14 +535,9 @@ export default {
528 535
       lastAssessmentAfterDislysis,
529 536
       lastDialysisPrescribe,
530 537
       lastDryWeightDislysis,
531
-      schedual
538
+      schedual,
539
+      system_prescribe
532 540
     ) {
533
-      console.log(lastPredialysisEvaluation);
534
-      console.log(lastMonitorRecord);
535
-      console.log(lastAssessmentAfterDislysis);
536
-      console.log(lastDialysisPrescribe);
537
-      console.log(lastDryWeightDislysis);
538
-      console.log(schedual);
539 541
 
540 542
       this.$refs.assessmentBefore.setLastRecord(
541 543
         lastPredialysisEvaluation,
@@ -546,7 +548,8 @@ export default {
546 548
         lastAssessmentAfterDislysis,
547 549
         lastPredialysisEvaluation,
548 550
         lastDialysisPrescribe,
549
-        lastDryWeightDislysis
551
+        lastDryWeightDislysis,
552
+        system_prescribe
550 553
       );
551 554
 
552 555
       // this.temp_schedual = schedual

+ 20 - 4
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue Wyświetl plik

@@ -909,7 +909,7 @@
909 909
           return true
910 910
         }
911 911
       },
912
-      setLastRecord: function(schedual, lastAssessmentAfterDislysis, lastPredialysisEvaluation, lastDialysisPrescribe, lastDryWeightDislysis) {
912
+      setLastRecord: function(schedual, lastAssessmentAfterDislysis, lastPredialysisEvaluation, lastDialysisPrescribe, lastDryWeightDislysis,system_prescribe) {
913 913
         this.treatment_mode = this.$store.getters.treatment_mode
914 914
         this.perfusion_apparatus = getDataConfig('hemodialysis', 'perfusion_apparatus')
915 915
         this.replacement_ways = getDataConfig('hemodialysis', 'replacement_ways')
@@ -931,17 +931,27 @@
931 931
           }
932 932
         } else if (this.solution != null && typeof this.solution.id !== 'undefined' && this.solution.id > 0) {
933 933
           for (const key in this.solution) {
934
-            this.dialysisPrescription[key] = this.solution[key]
934
+            if (key != 'target_ultrafiltration') {
935
+              this.dialysisPrescription[key] = this.solution[key]
936
+            }
935 937
           }
936 938
         } else if (lastDialysisPrescribe != null && typeof lastDialysisPrescribe.id !== 'undefined' && lastDialysisPrescribe.id > 0) {
937 939
           for (const key in lastDialysisPrescribe) {
938
-            this.dialysisPrescription[key] = lastDialysisPrescribe[key]
940
+            if (key != 'target_ultrafiltration') {
941
+
942
+              this.dialysisPrescription[key] = lastDialysisPrescribe[key]
943
+            }
944
+          }
945
+        } else if (system_prescribe != null && typeof system_prescribe.id !== 'undefined' && system_prescribe.id > 0) {
946
+          for (const key in system_prescribe) {
947
+            if (key != 'target_ultrafiltration') {
948
+              this.dialysisPrescription[key] = system_prescribe[key]
949
+            }
939 950
           }
940 951
         } else {
941 952
           this.dialysisPrescription.mode_id = schedual.mode_id
942 953
         }
943 954
 
944
-        console.log(this.dialysisPrescription.anticoagulant)
945 955
 
946 956
         var thismode = parseInt(this.dialysisPrescription.anticoagulant)
947 957
         if (isNaN(thismode) || thismode <= 0) {
@@ -2055,6 +2065,12 @@
2055 2065
                     this.dialysisPrescription[key] = response.data.data.prescription[key]
2056 2066
                   }
2057 2067
                 }
2068
+              } else if (response.data.data.system_prescription != null) { // 临时处方不为空
2069
+                for (const key in response.data.data.system_prescription) {
2070
+                  if (key != 'target_ultrafiltration') {
2071
+                    this.dialysisPrescription[key] = response.data.data.system_prescription[key]
2072
+                  }
2073
+                }
2058 2074
               } else {
2059 2075
                 for (const key in this.dialysisPrescription) { // 临时处方为空
2060 2076
                   if (key != 'target_ultrafiltration') {

+ 7 - 3
src/xt_pages/dialysis/details/index.vue Wyświetl plik

@@ -59,7 +59,7 @@
59 59
         :last_dryWeight_dislysis = "lastDryWeightDislysis"
60 60
         :special_premission = "headNurses"
61 61
         @assessmentAfterDislysis="assessmentAfterDislysisFunc"
62
-
62
+        :system_prescribe = "system_prescribe"
63 63
 
64 64
 
65 65
       >
@@ -314,6 +314,7 @@
314 314
         schedual: { id: 0 }, // 患者排班信息
315 315
         prescription: { id: 0 }, // 透析处方
316 316
         solution: { id: 0 }, // 透析方案
317
+        system_prescribe:{id:0},
317 318
         receiver_treatment_access: { id: 0 }, // 接诊评估
318 319
         predialysis_evaluation: { id: 0 }, // 透前评估
319 320
         doctor_advices: [], // 临时医嘱
@@ -505,7 +506,10 @@
505 506
             var lastDryWeightDislysis = resp.data.lastDryWeightDislysis
506 507
 
507 508
 
508
-            this.$refs.nav.setLastRecord(lastPredialysisEvaluation,lastMonitorRecord,lastAssessmentAfterDislysis,lastDialysisPrescribe,lastDryWeightDislysis,schedual)
509
+            var system_prescribe = resp.data.system_prescribe
510
+
511
+
512
+            this.$refs.nav.setLastRecord(lastPredialysisEvaluation,lastMonitorRecord,lastAssessmentAfterDislysis,lastDialysisPrescribe,lastDryWeightDislysis,schedual,system_prescribe)
509 513
 
510 514
 
511 515
 
@@ -520,7 +524,7 @@
520 524
             this.lastDialysisPrescribe = lastDialysisPrescribe
521 525
             this.lastDryWeightDislysis = lastDryWeightDislysis
522 526
             this.headNurses = headNurses
523
-
527
+            this.system_prescribe =  system_prescribe
524 528
 
525 529
 
526 530
 

+ 3 - 3
src/xt_pages/user/components/PatientSidebar.vue Wyświetl plik

@@ -27,9 +27,9 @@
27 27
       <el-tree
28 28
         :data="treeData"
29 29
         accordion
30
-        node-key="name" 
31
-        :key="treeKey" 
32
-        :current-node-key="treeKey" 
30
+        node-key="name"
31
+        :key="treeKey"
32
+        :current-node-key="treeKey"
33 33
         :default-expanded-keys="[defaultActive]"
34 34
         @node-click="handleNodeClick"
35 35
         >

+ 87 - 0
src/xt_pages/user/dialysisSolution.vue Wyświetl plik

@@ -453,6 +453,14 @@
453 453
     editPatientDialysisSolution,
454 454
     fetchPatientDialysisSolutions
455 455
   } from '@/api/patient'
456
+
457
+  import {
458
+    getSystemPrescription,
459
+  } from '@/api/config'
460
+
461
+
462
+
463
+
456 464
   import { calculateAnticoagulantZL, uParseTime } from '@/utils/tools'
457 465
   import store from '@/store'
458 466
 
@@ -1198,6 +1206,85 @@
1198 1206
         }
1199 1207
         // this.current_model = this.modeOptions[thismode];
1200 1208
         this.addPlan.mode_name = this.modeOptions[thismode].name
1209
+        let params = {
1210
+          id: thismode
1211
+        }
1212
+
1213
+
1214
+
1215
+        getSystemPrescription(params).then(response => {
1216
+          if (response.data.state == 1) {
1217
+            if(response.data.data.prescription.id > 0) {
1218
+              for (const key in  response.data.data.prescription) {
1219
+                //因为el-input特性整数类型或者浮点数类型需要转换成字符串,所以加上toString()
1220
+                this.$set(this.addPlan, key, response.data.data.prescription[key].toString())
1221
+              }
1222
+
1223
+              //因为el-select特性,整数类型不能转字符串,所以额外处理这些数据
1224
+              this.$set(this.addPlan, "dialysate_formulation", response.data.data.prescription['dialysate_formulation'])
1225
+              this.$set(this.addPlan, "anticoagulant", response.data.data.prescription['anticoagulant'])
1226
+              this.$set(this.addPlan, "body_fluid", response.data.data.prescription['body_fluid'])
1227
+              this.$set(this.addPlan, "special_medicine", response.data.data.prescription['special_medicine'])
1228
+              this.$set(this.addPlan, "displace_liqui_part", response.data.data.prescription['displace_liqui_part'])
1229
+              this.$set(this.addPlan, "blood_access", response.data.data.prescription['blood_access'])
1230
+
1231
+
1232
+
1233
+              this.dialysisTimeShow = new Date(2018, 1, 1, this.addPlan.dialysis_duration_hour, this.addPlan.dialysis_duration_minute)
1234
+
1235
+            }else{
1236
+              var tempAddPlan = {
1237
+                id: 0,
1238
+                dialyzer: '',
1239
+                dialysis_duration: '',
1240
+                dialysis_duration_hour: '',
1241
+                dialysis_duration_minute: '',
1242
+                hemodialysis_machine: '',
1243
+                dialysate_formulation:'',
1244
+                perfusion_apparatus: '',
1245
+                blood_flow_volume: '',
1246
+                dewater: '',
1247
+                displace_liqui: 0,
1248
+                replacement_way: '',
1249
+                anticoagulant: '',
1250
+                anticoagulant_shouji: '',
1251
+                anticoagulant_weichi: '',
1252
+                anticoagulant_zongliang: '',
1253
+                anticoagulant_gaimingcheng: '',
1254
+                anticoagulant_gaijiliang: '',
1255
+                kalium: '',
1256
+                replacement_total: '',
1257
+                sodium: '',
1258
+                calcium: '',
1259
+                bicarbonate: '',
1260
+                glucose: '',
1261
+                dry_weight: '',
1262
+                dialysate_flow: '',
1263
+                dialysate_temperature: '',
1264
+                conductivity: '',
1265
+                doctor: '',
1266
+                remark: '',
1267
+                target_ktv: '',
1268
+                target_ultrafiltration: '',
1269
+                dialyzer_perfusion_apparatus: '',
1270
+                body_fluid: '',
1271
+                body_fluid_other: '',
1272
+                special_medicine: '',
1273
+                special_medicine_other: '',
1274
+                displace_liqui_part: '',
1275
+                displace_liqui_value: '',
1276
+                ultrafiltration: '',
1277
+                blood_access: ''
1278
+              }
1279
+
1280
+              for (const key in  tempAddPlan) {
1281
+                this.addPlan[key] = tempAddPlan[key]
1282
+              }
1283
+
1284
+
1285
+            }
1286
+          }
1287
+        })
1201 1288
       },
1202 1289
       setCurrentMode(id) {
1203 1290
         if (typeof (this.modeOptions[id]) == 'undefined' || this.modeOptions[id] == null) {

+ 2 - 2
src/xt_pages/user/inspection.vue Wyświetl plik

@@ -106,8 +106,8 @@
106 106
 
107 107
       <el-form :model="form"  ref="form" label-position="top">
108 108
 
109
-        <el-row v-if="form.formItem[0].project_id == 14">
110
-          <el-col :span="24">
109
+        <el-row >
110
+          <el-col :span="24" v-if="form.formItem[0].project_id == 14">
111 111
             <el-form-item label="传染病周期提醒: " >
112 112
               <el-radio-group v-model="form.remind_cycle">
113 113
                 <el-radio :label="1">一月一次</el-radio>