Procházet zdrojové kódy

Merge branch '20201109_pc_vue_new_branch' of http://git.shengws.com/csx/Vue_New into 20201109_pc_vue_new_branch

see999 před 3 roky
rodič
revize
9c7befbad1

+ 1 - 1
index.html Zobrazit soubor

@@ -4,7 +4,7 @@
4 4
     <meta charset="utf-8" />
5 5
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
6 6
     <meta name="renderer" content="webkit" />
7
-    <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
7
+    <!--<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">-->
8 8
     <meta
9 9
       name="viewport"
10 10
       content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"

+ 373 - 343
src/xt_pages/hospitalStation/components/registerDialog.vue Zobrazit soubor

@@ -1,192 +1,215 @@
1 1
 <template>
2
-  <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility"
3
-             :close-on-click-modal="isClose"
4
-             :close-on-press-escape="isClose">
5
-
6
-    <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
7
-      <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
8
-        <el-autocomplete
9
-          class="checkSearch"
10
-          popper-class="my-autocomplete"
11
-          v-model="form.name"
12
-          :fetch-suggestions="querySearchAsync"
13
-          :trigger-on-focus="false"
14
-          placeholder="请输入病人名字"
15
-          @select="handleSelect"
16
-          style="width:160px;"
17
-        >
18
-          <i class="el-icon-search el-input__icon" slot="suffix"></i>
19
-          <template slot-scope="{ item }">
20
-            <div class="name">{{ item.name }}</div>
21
-          </template>
22
-        </el-autocomplete>
23
-      </el-form-item>
24
-
25
-      <el-form-item label="性别:" prop="gender" :validate-event="is_Name">
26
-        <el-select v-model="form.gender" placeholder="请选择" style="width:100%;">
27
-          <el-option
28
-            v-for="item in sex"
29
-            :key="item.value"
30
-            :label="item.label"
31
-            :value="item.value">
32
-          </el-option>
33
-        </el-select>
34
-
35
-
36
-      </el-form-item>
37
-
38
-      <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
39
-        <el-input v-model="form.age"></el-input>
40
-      </el-form-item>
41
-
42
-
43
-      <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
44
-        <el-date-picker v-model="form.birthday" type="date" format="yyyy-MM-dd"
45
-                        value-format="yyyy-MM-dd" placeholder="选择日期" style="width:100%;"></el-date-picker>
46
-      </el-form-item>
47
-
48
-      <el-form-item label="手机号码:" prop="phone">
49
-        <el-input v-model="form.phone"></el-input>
50
-      </el-form-item>
51
-
52
-
53
-      <el-form-item label="医疗类别:">
54
-        <el-select v-model="form.medical_care" placeholder="请选择" style="width:100%;">
55
-          <el-option
56
-            v-for="(item,index) in medical_care"
57
-            :key="index"
58
-            :label="item.label"
59
-            :value="item.value">
60
-          </el-option>
61
-        </el-select>
62
-      </el-form-item>
63
-
64
-
65
-      <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
66
-        <el-select v-model="form.certificates" placeholder="请选择" style="width:100%;">
67
-          <el-option
68
-            v-for="item in certificates"
69
-            :key="item.value"
70
-            :label="item.label"
71
-            :value="item.value">
72
-          </el-option>
73
-        </el-select>
74
-      </el-form-item>
75
-
76
-      <el-form-item label="证件号码:" prop="id_card" :validate-event="is_Name">
77
-        <el-input v-model="form.id_card"></el-input>
78
-      </el-form-item>
79
-
80
-      <el-form-item label="处方类型:" prop="p_type" :validate-event="is_Name">
81
-        <el-select style="margin-right:5px;width:100px;" v-model="form.p_type" placeholder=""
82
-                   >
83
-          <el-option
84
-            v-for="(item,index) in registers"
85
-            :key="index"
86
-            :label="item.label"
87
-            :value="item.value">
88
-          </el-option>
89
-        </el-select>
90
-      </el-form-item>
91
-      <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
92
-        <el-select style="margin-right:5px;width:100px;" v-model="form.sick_type" placeholder="">
93
-          <el-option
94
-            v-for="(item,index) in sick"
95
-            :key="index"
96
-            :label="item.class_name"
97
-            :value="item.id">
98
-          </el-option>
99
-        </el-select>
100
-      </el-form-item>
101
-
102
-      <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
103
-        <el-select style="margin-right:5px;width:100px;" v-model="form.diagnosis" placeholder="">
104
-          <el-option
105
-            v-for="(item,index) in diagnoses"
106
-            :key="index"
107
-            :label="item.class_name"
108
-            :value="item.id">
109
-          </el-option>
110
-        </el-select>
111
-      </el-form-item>
112
-
113
-
114
-      <el-form-item label="结算类型:">
115
-        <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
116
-          <el-option
117
-            v-for="item in settlement"
118
-            :key="item.value"
119
-            :label="item.label"
120
-            :value="item.value">
121
-          </el-option>
122
-        </el-select>
123
-      </el-form-item>
124
-
125
-
126
-      <el-form-item label="社保类型:">
127
-        <el-select v-model="form.social_type" placeholder="请选择" style="width:100%;">
128
-          <el-option
129
-            v-for="item in medicalCare"
130
-            :key="item.value"
131
-            :label="item.label"
132
-            :value="item.value">
133
-          </el-option>
134
-        </el-select>
135
-      </el-form-item>
136
-
137
-
138
-      <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
139
-        <el-select v-model="form.id_card_type" placeholder="请选择">
140
-          <el-option
141
-            v-for="item in IDCardTypes"
142
-            :key="item.value"
143
-            :label="item.label"
144
-            :value="item.value">
145
-          </el-option>
146
-        </el-select>
147
-      </el-form-item>
148
-
149
-
150
-      <el-form-item class="specialFormItem" label="医保卡号:">
151
-        <div style="display:flex;">
152
-          <el-input v-model="form.medical_insurance_card"></el-input>
153
-          <el-button style="margin-left:10px;" type="primary" @click="reading">读卡</el-button>
154
-
155
-        </div>
156
-      </el-form-item>
157
-
158
-      <el-form-item label="挂号类型:" :validate-event="is_Name">
159
-        <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
160
-          <el-option
161
-            v-for="item in register"
162
-            :key="item.value"
163
-            :label="item.label"
164
-            :value="item.value">
165
-          </el-option>
166
-        </el-select>
167
-      </el-form-item>
168
-      <el-form-item label="挂号费:">
169
-        <el-input  v-model="form.registration_fee"></el-input>
170
-      </el-form-item>
171
-      <el-form-item label="诊疗费:">
172
-        <el-input v-model="form.medical_expenses"></el-input>
173
-      </el-form-item>
174
-    </el-form>
175
-
176
-    <span slot="footer" class="dialog-footer">
2
+    <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility"
3
+               :close-on-click-modal="isClose"
4
+               :close-on-press-escape="isClose">
5
+
6
+        <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
7
+            <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
8
+                <el-autocomplete
9
+                        class="checkSearch"
10
+                        popper-class="my-autocomplete"
11
+                        v-model="form.name"
12
+                        :fetch-suggestions="querySearchAsync"
13
+                        :trigger-on-focus="false"
14
+                        placeholder="请输入病人名字"
15
+                        @select="handleSelect"
16
+                        style="width:160px;"
17
+                >
18
+                    <i class="el-icon-search el-input__icon" slot="suffix"></i>
19
+                    <template slot-scope="{ item }">
20
+                        <div class="name">{{ item.name }}</div>
21
+                    </template>
22
+                </el-autocomplete>
23
+            </el-form-item>
24
+
25
+            <el-form-item label="性别:" prop="gender" :validate-event="is_Name">
26
+                <el-select v-model="form.gender" placeholder="请选择" style="width:100%;">
27
+                    <el-option
28
+                            v-for="item in sex"
29
+                            :key="item.value"
30
+                            :label="item.label"
31
+                            :value="item.value">
32
+                    </el-option>
33
+                </el-select>
34
+
35
+
36
+            </el-form-item>
37
+
38
+            <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
39
+                <el-input v-model="form.age"></el-input>
40
+            </el-form-item>
41
+
42
+
43
+            <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
44
+                <el-date-picker v-model="form.birthday" type="date" format="yyyy-MM-dd"
45
+                                value-format="yyyy-MM-dd" placeholder="选择日期" style="width:100%;"></el-date-picker>
46
+            </el-form-item>
47
+
48
+            <el-form-item label="手机号码:" prop="phone">
49
+                <el-input v-model="form.phone"></el-input>
50
+            </el-form-item>
51
+
52
+
53
+            <el-form-item label="医疗类别:">
54
+                <el-select v-model="form.medical_care" placeholder="请选择" style="width:100%;">
55
+                    <el-option
56
+                            v-for="(item,index) in medical_care"
57
+                            :key="index"
58
+                            :label="item.label"
59
+                            :value="item.value">
60
+                    </el-option>
61
+                </el-select>
62
+            </el-form-item>
63
+
64
+
65
+            <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
66
+                <el-select v-model="form.certificates" placeholder="请选择" style="width:100%;">
67
+                    <el-option
68
+                            v-for="item in certificates"
69
+                            :key="item.value"
70
+                            :label="item.label"
71
+                            :value="item.value">
72
+                    </el-option>
73
+                </el-select>
74
+            </el-form-item>
75
+
76
+            <el-form-item label="证件号码:" prop="id_card" :validate-event="is_Name">
77
+                <el-input v-model="form.id_card"></el-input>
78
+            </el-form-item>
79
+
80
+            <el-form-item label="处方类型:" prop="p_type" :validate-event="is_Name">
81
+                <el-select style="margin-right:5px;width:100px;" v-model="form.p_type" placeholder=""
82
+                >
83
+                    <el-option
84
+                            v-for="(item,index) in registers"
85
+                            :key="index"
86
+                            :label="item.label"
87
+                            :value="item.value">
88
+                    </el-option>
89
+                </el-select>
90
+            </el-form-item>
91
+            <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
92
+                <el-select style="margin-right:5px;width:100px;" v-model="form.sick_type" placeholder="">
93
+                    <el-option
94
+                            v-for="(item,index) in sick"
95
+                            :key="index"
96
+                            :label="item.class_name"
97
+                            :value="item.id">
98
+                    </el-option>
99
+                </el-select>
100
+            </el-form-item>
101
+
102
+            <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
103
+                <el-select style="margin-right:5px;width:100px;" v-model="form.diagnosis" placeholder="">
104
+                    <el-option
105
+                            v-for="(item,index) in diagnoses"
106
+                            :key="index"
107
+                            :label="item.class_name"
108
+                            :value="item.id">
109
+                    </el-option>
110
+                </el-select>
111
+            </el-form-item>
112
+
113
+
114
+            <el-form-item label="结算类型:">
115
+                <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
116
+                    <el-option
117
+                            v-for="item in settlement"
118
+                            :key="item.value"
119
+                            :label="item.label"
120
+                            :value="item.value">
121
+                    </el-option>
122
+                </el-select>
123
+            </el-form-item>
124
+
125
+
126
+            <el-form-item label="社保类型:">
127
+                <el-select v-model="form.social_type" placeholder="请选择" style="width:100%;">
128
+                    <el-option
129
+                            v-for="item in medicalCare"
130
+                            :key="item.value"
131
+                            :label="item.label"
132
+                            :value="item.value">
133
+                    </el-option>
134
+                </el-select>
135
+            </el-form-item>
136
+
137
+
138
+            <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
139
+                <el-select v-model="form.id_card_type" placeholder="请选择">
140
+                    <el-option
141
+                            v-for="item in IDCardTypes"
142
+                            :key="item.value"
143
+                            :label="item.label"
144
+                            :value="item.value">
145
+                    </el-option>
146
+                </el-select>
147
+            </el-form-item>
148
+
149
+
150
+            <el-form-item class="specialFormItem" label="医保卡号:">
151
+                <div style="display:flex;">
152
+                    <el-input v-model="form.medical_insurance_card"></el-input>
153
+                    <el-button style="margin-left:10px;" type="primary" @click="reading">读卡</el-button>
154
+
155
+                </div>
156
+            </el-form-item>
157
+
158
+            <el-form-item label="挂号类型:" :validate-event="is_Name">
159
+                <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
160
+                    <el-option
161
+                            v-for="item in register"
162
+                            :key="item.value"
163
+                            :label="item.label"
164
+                            :value="item.value">
165
+                    </el-option>
166
+                </el-select>
167
+            </el-form-item>
168
+            <el-form-item label="挂号费:">
169
+                <el-input v-model="form.registration_fee"></el-input>
170
+            </el-form-item>
171
+            <el-form-item label="诊疗费:">
172
+                <el-input v-model="form.medical_expenses"></el-input>
173
+            </el-form-item>
174
+
175
+            <el-form-item label="医生:" prop="doctor">
176
+                <el-select v-model="form.doctor" placeholder="请选择">
177
+                    <el-option
178
+                            v-for="(item,index) in doctors"
179
+                            :key="index"
180
+                            :label="item.user_name"
181
+                            :value="item.admin_user_id">
182
+                    </el-option>
183
+                </el-select>
184
+            </el-form-item>
185
+
186
+            <el-form-item label="科室:" prop="department">
187
+                <el-select v-model="form.department" placeholder="请选择">
188
+                    <el-option
189
+                            v-for="(item,index) in departments"
190
+                            :key="index"
191
+                            :label="item.name"
192
+                            :value="item.id">
193
+                    </el-option>
194
+                </el-select>
195
+            </el-form-item>
196
+        </el-form>
197
+
198
+
199
+        <span slot="footer" class="dialog-footer">
177 200
     <el-button @click="cancel('formValue')">取 消</el-button>
178 201
     <el-button type="primary" @click="confirm('formValue')">挂 号</el-button>
179 202
   </span>
180
-  </el-dialog>
203
+    </el-dialog>
181 204
 
182 205
 </template>
183 206
 
184 207
 <script>
185
-  import {uParseTime,jsGetAge} from "@/utils/tools";
208
+  import { jsGetAge, uParseTime } from '@/utils/tools'
186 209
   import axios from 'axios'
187
-  import {PostSearch} from '@/api/patient'
210
+  import { PostSearch } from '@/api/patient'
188 211
 
189
-  import {getDictionaryDataConfig} from '@/utils/data'
212
+  import { getDictionaryDataConfig } from '@/utils/data'
190 213
 
191 214
   export default {
192 215
 
@@ -196,30 +219,27 @@
196 219
 
197 220
       return {
198 221
         registers: [
199
-          {value: 11, label: "普通门诊"},
222
+          { value: 11, label: '普通门诊' },
200 223
           // {value: 12, label: '门诊挂号'},
201 224
           // {value: 13, label: "急诊"},
202
-          {value: 14, label: "门诊特殊病"},
225
+          { value: 14, label: '门诊特殊病' }
203 226
           // {value: 15, label: "门诊统筹"},
204 227
           // {value: 16, label: "门诊慢性病"},
205 228
           // {value: 21, label: "普通住院"},
206 229
         ],
207
-        medical_care:[
208
-          {value: 11, label: "普通门诊"},
209
-          {value: 12, label: '家庭通道'},
210
-          {value: 13, label: "门诊大病"},
211
-          {value: 14, label: "重疾特药"},
212
-          {value: 15, label: "门诊慢病"},
213
-          {value: 16, label: "门诊特检"},
214
-          {value: 17, label: "健康体检"},
215
-          {value: 18, label: "预防接种"},
216
-          {value: 19, label: "门诊输血"},
217
-          {value: 91, label: "新冠肺炎门诊"},
230
+        medical_care: [
231
+          { value: 11, label: '普通门诊' },
232
+          { value: 12, label: '家庭通道' },
233
+          { value: 13, label: '门诊大病' },
234
+          { value: 14, label: '重疾特药' },
235
+          { value: 15, label: '门诊慢病' },
236
+          { value: 16, label: '门诊特检' },
237
+          { value: 17, label: '健康体检' },
238
+          { value: 18, label: '预防接种' },
239
+          { value: 19, label: '门诊输血' },
240
+          { value: 91, label: '新冠肺炎门诊' }
218 241
         ],
219 242
 
220
-
221
-
222
-
223 243
         form: {
224 244
           id: '',
225 245
           settlement_value: '',
@@ -227,9 +247,9 @@
227 247
           name: '',
228 248
           gender: '',
229 249
           certificates: 1,
230
-          p_type:'',
231
-          sick_type:'',
232
-          diagnosis:'',
250
+          p_type: '',
251
+          sick_type: '',
252
+          diagnosis: '',
233 253
           medical_care: '',
234 254
           birthday: '',
235 255
           age: '',
@@ -242,27 +262,26 @@
242 262
           medical_expenses: '',
243 263
           cost: '',
244 264
           phone: '',
245
-          social_type: '',
265
+          social_type: ''
246 266
         }, IDCardTypes: [{
247 267
           value: 1,
248 268
           label: '社保卡'
249 269
         }, {
250 270
           value: 2,
251
-          label: "身份证"
271
+          label: '身份证'
252 272
         }, {
253 273
           value: 3,
254
-          label: "电子凭证"
255
-        },],
274
+          label: '电子凭证'
275
+        }],
256 276
         settlement: [
257
-          {value: 1, label: '医保'},
258
-          {value: 2, label: '自费'},
259
-          {value: 3, label: '公费'},
260
-          {value: 4, label: '农保'},
261
-          {value: 5, label: '会员'},
262
-          {value: 6, label: '职工'},
263
-          {value: 7, label: '合同'},
264
-          {value: 8, label: '医保自费'},
265
-
277
+          { value: 1, label: '医保' },
278
+          { value: 2, label: '自费' },
279
+          { value: 3, label: '公费' },
280
+          { value: 4, label: '农保' },
281
+          { value: 5, label: '会员' },
282
+          { value: 6, label: '职工' },
283
+          { value: 7, label: '合同' },
284
+          { value: 8, label: '医保自费' }
266 285
 
267 286
         ],
268 287
         sex: [{
@@ -277,72 +296,72 @@
277 296
           label: '内地身份证'
278 297
         }, {
279 298
           value: 2,
280
-          label: "社保卡"
299
+          label: '社保卡'
281 300
         }, {
282 301
           value: 3,
283
-          label: "护照"
302
+          label: '护照'
284 303
         }, {
285 304
           value: 4,
286
-          label: "军官证"
305
+          label: '军官证'
287 306
         }, {
288 307
           value: 5,
289
-          label: "台胞证"
308
+          label: '台胞证'
290 309
         }, {
291 310
           value: 6,
292
-          label: "港澳地区身份证"
311
+          label: '港澳地区身份证'
293 312
         }],
294 313
         medicalCare: [{
295 314
           value: 1,
296 315
           label: '职工基本医疗保险'
297 316
         }, {
298 317
           value: 2,
299
-          label: "公务员医疗补助"
318
+          label: '公务员医疗补助'
300 319
         }, {
301 320
           value: 3,
302
-          label: "大额医疗费用补助"
321
+          label: '大额医疗费用补助'
303 322
         }, {
304 323
           value: 4,
305
-          label: "离休人员医疗"
324
+          label: '离休人员医疗'
306 325
         }, {
307 326
           value: 5,
308
-          label: "城乡居民基本医疗保险"
327
+          label: '城乡居民基本医疗保险'
309 328
         }, {
310 329
           value: 6,
311
-          label: "城乡居民大病医疗保险"
330
+          label: '城乡居民大病医疗保险'
312 331
         }, {
313
-            value: 7,
314
-            label: "生育保险"
315
-          }],
332
+          value: 7,
333
+          label: '生育保险'
334
+        }],
316 335
         register: [{
317 336
           value: 1,
318 337
           label: '普通'
319 338
         }, {
320 339
           value: 2,
321
-          label: "主治"
340
+          label: '主治'
322 341
         }, {
323 342
           value: 3,
324
-          label: "主任"
343
+          label: '主任'
325 344
         }, {
326 345
           value: 4,
327
-          label: "免收诊金"
346
+          label: '免收诊金'
328 347
         }, {
329 348
           value: 5,
330
-          label: "专家"
349
+          label: '专家'
331 350
         }],
332 351
         rules: {
333
-          name: [{required: true, message: "患者姓名不能为空", trigger: 'blur'}],
334
-          gender: [{required: true, message: "患者性别不能为空", trigger: 'blur'}],
335
-          id_card: [{required: true, message: '证件号码不能为空', trigger: 'blur'}],
352
+          name: [{ required: true, message: '患者姓名不能为空', trigger: 'blur' }],
353
+          gender: [{ required: true, message: '患者性别不能为空', trigger: 'blur' }],
354
+          id_card: [{ required: true, message: '证件号码不能为空', trigger: 'blur' }],
336 355
           // register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
337
-          doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
338
-          department: [{required: true, message: '请填写科室', trigger: 'blur'}],
339
-          age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],
340
-          birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
341
-          certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
342
-          id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
343
-          p_type: [{required: true, message: "处方类型不能为空", trigger: 'change'}],
344
-          sick_type: [{required: true, message: "大病类别不能为空", trigger: 'change'}],
345
-          diagnosis: [{required: true, message: "诊断不能为空", trigger: 'change'}],
356
+          doctor: [{ required: true, message: '请选择医生', trigger: 'blur' }],
357
+          department: [{ required: true, message: '请填写科室', trigger: 'blur' }],
358
+          age: [{ required: true, message: '患者年龄不能为空', trigger: 'blur' }],
359
+          birthday: [{ required: true, message: '患者出生日期不能为空', trigger: 'blur' }],
360
+          certificates: [{ required: true, message: '证件类型不能为空', trigger: 'change' }],
361
+          id_card_type: [{ required: true, message: '读卡类型不能为空', trigger: 'change' }],
362
+          p_type: [{ required: true, message: '处方类型不能为空', trigger: 'change' }],
363
+          sick_type: [{ required: true, message: '大病类别不能为空', trigger: 'change' }],
364
+          diagnosis: [{ required: true, message: '诊断不能为空', trigger: 'change' }]
346 365
         },
347 366
         visibility: false,
348 367
         labelPosition: 'right',
@@ -365,13 +384,18 @@
365 384
           medical_expenses: '',
366 385
           cost: '',
367 386
           phone: '',
368
-          social_type: '',
369
-        },
387
+          social_type: ''
388
+        }
370 389
 
371 390
       }
372 391
     },
373 392
     props: {
374
-
393
+      departments: {
394
+        type: Array
395
+      },
396
+      doctors: {
397
+        type: Array
398
+      },
375 399
       titles: {
376 400
         type: String,
377 401
         default: ''
@@ -390,40 +414,53 @@
390 414
 
391 415
       },
392 416
       sick: Array,
393
-      diagnoses: Array,
417
+      diagnoses: Array
394 418
     },
395 419
     methods: {
420
+      changeDoctor() {
421
+        for (let i = 0; i < this.doctors.length; i++) {
422
+          if (this.doctors[i].admin_user_id == this.form.doctor) {
423
+            console.log(this.doctors[i].department_id)
424
+            this.form.department = this.doctors[i].department_id
425
+            if (this.form.department == 0) {
426
+
427
+              this.form.department = ''
428
+            }
429
+          }
430
+        }
431
+      },
396 432
       handleSelect(val) {
397
-        this.form.id = val.id;
398
-        this.form.name = val.name;
399
-        this.form.gender = val.gender;
400
-        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}');
401
-        this.form.phone = val.phone;
402
-        this.form.id_card = val.id_card_no;
403
-        var thisLen =  this.form.id_card.length;
404
-        var birth = "";
433
+        this.form.id = val.id
434
+        this.form.name = val.name
435
+        this.form.gender = val.gender
436
+        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}')
437
+        this.form.phone = val.phone
438
+        this.form.id_card = val.id_card_no
439
+        var thisLen = this.form.id_card.length
440
+        var birth = ''
405 441
         if (thisLen == 15) {
406
-          birth = "19" + this.form.id_card.substr(6, 6);
442
+          birth = '19' + this.form.id_card.substr(6, 6)
407 443
         } else {
408
-          birth = this.form.id_card.substr(6, 8);
444
+          birth = this.form.id_card.substr(6, 8)
409 445
         }
410 446
         var births =
411
-                birth.substr(0, 4) +
412
-                "-" +
413
-                birth.substr(4, 2) +
414
-                "-" +
415
-                birth.substr(6, 2);
416
-        this.form.age = jsGetAge(births, "-");
447
+          birth.substr(0, 4) +
448
+          '-' +
449
+          birth.substr(4, 2) +
450
+          '-' +
451
+          birth.substr(6, 2)
452
+        this.form.age = jsGetAge(births, '-')
417 453
       },
418 454
       querySearchAsync(keyword, cb) {
419
-        let key = '';
455
+        let key = ''
420 456
         if (keyword != undefined) {
421 457
           key = keyword
422 458
         }
423
-        let searchArray = [];
459
+        let searchArray = []
424 460
         PostSearch(key).then(response => {
425
-          if (response.data.state == 1) {balance_accounts_type
426
-            searchArray = response.data.data.patient;
461
+          if (response.data.state == 1) {
462
+            balance_accounts_type
463
+            searchArray = response.data.data.patient
427 464
             cb(searchArray)
428 465
           } else {
429 466
             cb([])
@@ -431,117 +468,110 @@
431 468
         })
432 469
       },
433 470
       reading(medicalInsuranceCard) {
434
-        var that = this;
471
+        var that = this
435 472
         if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
436
-          this.$message.error("请先选择读卡类型");
473
+          this.$message.error('请先选择读卡类型')
437 474
           return
438 475
         }
439 476
         let params = {
440 477
           'id_card_type': this.form.id_card_type,
441
-          'admin_user_id':this.$store.getters.xt_user.user.id,
478
+          'admin_user_id': this.$store.getters.xt_user.user.id
442 479
 
443
-        };
480
+        }
444 481
         axios.get('http://127.0.0.1:9532/api/sscard', {
445 482
           params: params
446 483
         })
447
-          .then(function (response) {
484
+          .then(function(response) {
448 485
             if (response.data.state == 0) {
449
-              that.$message.error(response.data.msg);
486
+              that.$message.error(response.data.msg)
450 487
               return false
451 488
             } else {
452
-              var patient = response.data.data.patient;
489
+              var patient = response.data.data.patient
453 490
 
454 491
               if (that.form.id_card_type == 1) {
455
-                this.form.id = patient.id;
456
-                that.form.name = patient.name;
457
-                that.form.sex = patient.gender;
458
-                that.form.age = patient.age;
459
-                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}');
460
-                that.form.phone = patient.phone;
461
-                that.form.idCard = patient.id_card_no;
492
+                this.form.id = patient.id
493
+                that.form.name = patient.name
494
+                that.form.sex = patient.gender
495
+                that.form.age = patient.age
496
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
497
+                that.form.phone = patient.phone
498
+                that.form.idCard = patient.id_card_no
462 499
                 that.form.medicalInsuranceCard = response.data.data.number
463 500
 
464 501
               } else if (that.form.id_card_type == 2) {
465
-                this.form.id = patient.id;
466
-                that.form.name = patient.name;
467
-                that.form.sex = patient.gender;
468
-                that.form.age = patient.age;
469
-                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}');
470
-                that.form.phone = patient.phone;
502
+                this.form.id = patient.id
503
+                that.form.name = patient.name
504
+                that.form.sex = patient.gender
505
+                that.form.age = patient.age
506
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
507
+                that.form.phone = patient.phone
471 508
                 that.form.idCard = patient.id_card_no
472 509
               }
473
-              that.$message({message: '读卡成功', type: 'success'})
510
+              that.$message({ message: '读卡成功', type: 'success' })
474 511
             }
475 512
           })
476
-          .catch(function (error) {
477
-
478
-          });
513
+          .catch(function(error) {
479 514
 
515
+          })
480 516
 
481 517
       },
482 518
       getDictionaryDataConfig(module, filed_name) {
483 519
         return getDictionaryDataConfig(module, filed_name)
484 520
       },
485
-    show: function() {
486
-        this.visibility = true;
521
+      show: function() {
522
+        this.visibility = true
487 523
         // this.form = Object.assign({}, this.resetForm)
488
-        this.form.id = 0;
489
-        this.form.settlement_value = '';
490
-        this.form.medical_insurance_card = '';
491
-        this.form.name = '';
492
-        this.form.gender = '';
493
-        this.form.medical_care = '';
494
-        this.form.birthda = '';
495
-        this.form.age = '';
496
-        this.form.id_card = '';
497
-        this.form.register = '';
498
-        this.form.doctor = '';
499
-        this.form.department = '';
500
-        this.form.registration_fee = '';
501
-        this.form.medical_expenses = '';
502
-        this.form.cost = '';
503
-        this.form.phone = '';
504
-        this.form.social_type = '';
505
-
506
-        this.form.p_type = 14;
507
-        this.form.sick_type = this.sick[0].id;
508
-        this.form.diagnosis = this.diagnoses[0].id;
509
-        this.form.id_card_type = 2;
524
+        this.form.id = 0
525
+        this.form.settlement_value = ''
526
+        this.form.medical_insurance_card = ''
527
+        this.form.name = ''
528
+        this.form.gender = ''
529
+        this.form.medical_care = ''
530
+        this.form.birthda = ''
531
+        this.form.age = ''
532
+        this.form.id_card = ''
533
+        this.form.register = ''
534
+        this.form.doctor = ''
535
+        this.form.department = ''
536
+        this.form.registration_fee = ''
537
+        this.form.medical_expenses = ''
538
+        this.form.cost = ''
539
+        this.form.phone = ''
540
+        this.form.social_type = ''
541
+
542
+        this.form.p_type = 14
543
+        this.form.sick_type = this.sick[0].id
544
+        this.form.diagnosis = this.diagnoses[0].id
545
+        this.form.id_card_type = 2
510 546
         this.form.certificates = 1
511
-
512
-        // this.form.name = patientInfo.name
513
-        // this.form.gender = patientInfo.gender
514
-        // this.form.age = patientInfo.age
515
-        // this.form.birthday = patientInfo.birthday
516
-        // this.form.phone = patientInfo.phone
517
-        // this.form.birthday = patientInfo.birthday
518
-        // this.form.id_card = patientInfo.id_card_no
519
-        // this.form.social_type = patientInfo.health_care_type
520
-        // if( this.form.social_type == 0){
521
-        //   this.form.social_type = ""
522
-        // }
547
+        if (this.departments.length > 0) {
548
+          this.form.department = this.department[0].id
549
+        }
550
+        if (this.doctors.length > 0) {
551
+          this.form.doctor = this.doctors[0].id
552
+        }
523 553
 
524 554
       },
525 555
 
526
-      hide: function () {
527
-        this.visibility = false;
556
+      hide: function() {
557
+        this.visibility = false
528 558
         this.$refs['formValue'].resetFields()
529
-      }, cancel: function (formName) {
530
-        this.$emit('cancel', this.getValue());
559
+      }, cancel: function(formName) {
560
+        this.$emit('cancel', this.getValue())
531 561
         this.$refs['formValue'].resetFields()
532 562
       },
533
-      confirm: function (formName) {
563
+      confirm: function(formName) {
534 564
         this.$refs['formValue'].validate((valid) => {
535 565
           if (valid) {
536
-            let value = {};
537
-            value = this.getValue();
566
+            let value = {}
567
+            value = this.getValue()
538 568
             this.$emit('confirm', value)
539 569
           }
540 570
         })
541 571
       },
542
-      getValue: function () {
543
-        let form = {};
544
-        form = this.form;
572
+      getValue: function() {
573
+        let form = {}
574
+        form = this.form
545 575
         return form
546 576
       }
547 577
     }
@@ -550,16 +580,16 @@
550 580
 </script>
551 581
 
552 582
 <style lang="scss" scoped>
553
-  .registerDialog {
583
+    .registerDialog {
554 584
 
555
-  .el-form {
556
-    display: flex;
557
-    flex-wrap: wrap;
558
-  }
585
+    .el-form {
586
+        display: flex;
587
+        flex-wrap: wrap;
588
+    }
559 589
 
560
-  .el-form-item {
561
-    width: 50%;
562
-  }
590
+    .el-form-item {
591
+        width: 50%;
592
+    }
563 593
 
564
-  }
594
+    }
565 595
 </style>

+ 47 - 2
src/xt_pages/outpatientCharges/components/registerDialog.vue Zobrazit soubor

@@ -171,6 +171,27 @@
171 171
             <el-form-item label="诊疗费:">
172 172
                 <el-input v-model="form.medical_expenses"></el-input>
173 173
             </el-form-item>
174
+
175
+            <el-form-item label="医生:" prop="doctor">
176
+                <el-select v-model="form.doctor" placeholder="请选择">
177
+                    <el-option
178
+                            v-for="(item,index) in doctors"
179
+                            :key="index"
180
+                            :label="item.user_name"
181
+                            :value="item.admin_user_id">
182
+                    </el-option>
183
+                </el-select>
184
+            </el-form-item>
185
+            <el-form-item label="科室:" prop="department">
186
+                <el-select v-model="form.department" placeholder="请选择">
187
+                    <el-option
188
+                            v-for="(item,index) in departments"
189
+                            :key="index"
190
+                            :label="item.name"
191
+                            :value="item.id">
192
+                    </el-option>
193
+                </el-select>
194
+            </el-form-item>
174 195
         </el-form>
175 196
 
176 197
         <span slot="footer" class="dialog-footer">
@@ -366,7 +387,12 @@
366 387
       }
367 388
     },
368 389
     props: {
369
-
390
+      departments: {
391
+        type: Array
392
+      },
393
+      doctors: {
394
+        type: Array
395
+      },
370 396
       titles: {
371 397
         type: String,
372 398
         default: ''
@@ -388,6 +414,18 @@
388 414
       diagnoses: Array
389 415
     },
390 416
     methods: {
417
+      changeDoctor() {
418
+        for (let i = 0; i < this.doctors.length; i++) {
419
+          if (this.doctors[i].admin_user_id == this.form.doctor) {
420
+            console.log(this.doctors[i].department_id)
421
+            this.form.department = this.doctors[i].department_id
422
+            if (this.form.department == 0) {
423
+
424
+              this.form.department = ''
425
+            }
426
+          }
427
+        }
428
+      },
391 429
       handleSelect(val) {
392 430
         this.form.id = val.id
393 431
         this.form.name = val.name
@@ -476,7 +514,7 @@
476 514
       getDictionaryDataConfig(module, filed_name) {
477 515
         return getDictionaryDataConfig(module, filed_name)
478 516
       },
479
-      show: function() {
517
+      show: function(doctors,departments) {
480 518
         this.visibility = true
481 519
         // this.form = Object.assign({}, this.resetForm)
482 520
         this.form.id = 0
@@ -503,6 +541,13 @@
503 541
         this.form.id_card_type = 2
504 542
         this.form.certificates = 1
505 543
 
544
+        if (departments.length > 0) {
545
+          this.form.department = departments[0].id
546
+        }
547
+        if (doctors.length > 0) {
548
+          this.form.doctor = doctors[0].admin_user_id
549
+        }
550
+
506 551
         // this.form.name = patientInfo.name
507 552
         // this.form.gender = patientInfo.gender
508 553
         // this.form.age = patientInfo.age

+ 2 - 2
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue Zobrazit soubor

@@ -442,7 +442,7 @@
442 442
         <additionalCharges ref='additionalCharges' @click="addCharges"
443 443
                            :addtions_charge="addtions_charge"></additionalCharges>
444 444
 
445
-        <register-dialog ref='register' :doctors="doctors" :department="department" :sick="sick" :diagnoses="diagnoses"
445
+        <register-dialog ref='register' :doctors="doctors" :departments="department" :sick="sick" :diagnoses="diagnoses"
446 446
                          v-on:confirm="confirm" v-on:cancel="cancel"></register-dialog>
447 447
 
448 448
         <register-dialog9504 ref='register9504' :doctors="doctors" :departments="department" :sick="sick"
@@ -2099,7 +2099,7 @@
2099 2099
           if (this.$store.getters.xt_user.org_id == 9504 || this.$store.getters.xt_user.org_id == 10138 || this.$store.getters.xt_user.org_id == 10028 || this.$store.getters.xt_user.org_id == 10088) {
2100 2100
             this.$refs.register9504.show()
2101 2101
           } else {
2102
-            this.$refs.register.show()
2102
+            this.$refs.register.show(this.doctors, this.department)
2103 2103
           }
2104 2104
 
2105 2105
         } else if (index == 8) {

+ 2 - 2
src/xt_pages/stock/drugs/drugPrint.vue Zobrazit soubor

@@ -208,7 +208,7 @@
208 208
               }
209 209
             }
210 210
           }
211
-          console.log("list666666666",list)
211
+          // console.log("list666666666",list)
212 212
           this.cancelStockDate = list
213 213
           var total = response.data.data.total
214 214
           this.total = total
@@ -219,7 +219,7 @@
219 219
       getTotal(){
220 220
         var total = 0
221 221
         for(let i=0;i<this.cancelStockDate.length;i++){
222
-           total += this.cancelStockDate[i].price*getCount(this.cancelStockDate[i].drug_id)
222
+           total += this.cancelStockDate[i].price*this.getCount(this.cancelStockDate[i].drug_id)
223 223
         }
224 224
         return total
225 225
       },