Browse Source

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

csx 4 years ago
parent
commit
0b4efc16c6
68 changed files with 2030 additions and 670 deletions
  1. 11 1
      src/api/drug/drug.js
  2. 2 1
      src/lang/zh.js
  3. 0 0
      src/router/index.js
  4. 0 0
      src/router/index_路由未分离前.js
  5. 0 0
      src/router/modules/createPatient.js
  6. 0 0
      src/router/modules/dataDictionary.js
  7. 0 0
      src/router/modules/dataDruguse.js
  8. 0 0
      src/router/modules/dataPrescription.js
  9. 0 0
      src/router/modules/dataPrint.js
  10. 0 0
      src/router/modules/dataShowconfig.js
  11. 0 0
      src/router/modules/dataTemplate.js
  12. 0 0
      src/router/modules/data_dict.js
  13. 0 0
      src/router/modules/data_upload.js
  14. 0 0
      src/router/modules/device.js
  15. 52 90
      src/router/modules/dialysis.js
  16. 0 0
      src/router/modules/dialysisRecord.js
  17. 0 0
      src/router/modules/drugs.js
  18. 0 0
      src/router/modules/integration.js
  19. 0 0
      src/router/modules/kuyiShopping.js
  20. 0 0
      src/router/modules/medical_scheduling.js
  21. 0 0
      src/router/modules/org.js
  22. 0 0
      src/router/modules/otherManagement.js
  23. 0 0
      src/router/modules/outpatientCharges.js
  24. 0 0
      src/router/modules/outpatientDoctorStation.js
  25. 0 0
      src/router/modules/outpatientPharmacy.js
  26. 0 0
      src/router/modules/outpatientRegistration.js
  27. 0 0
      src/router/modules/patient.js
  28. 13 13
      src/router/modules/qcd.js
  29. 0 0
      src/router/modules/role.js
  30. 0 0
      src/router/modules/roleManage.js
  31. 0 0
      src/router/modules/scrm.js
  32. 0 0
      src/router/modules/selfPreparedMedicine.js
  33. 0 0
      src/router/modules/service.js
  34. 0 0
      src/router/modules/shop.js
  35. 0 0
      src/router/modules/slow.js
  36. 0 0
      src/router/modules/specialDictionary.js
  37. 1 266
      src/router/modules/stock.js
  38. 5 69
      src/router/modules/systems.js
  39. 10 0
      src/router/modules/weight_sign.js
  40. 0 0
      src/router/modules/workforce.js
  41. 67 9
      src/views/layout/Layout.vue
  42. 6 6
      src/views/layout/components/Sidebar/index.vue
  43. 3 2
      src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue
  44. 127 57
      src/xt_pages/dialysis/details/dialog/adviceDialog/AddGroupAdvice.vue
  45. 166 10
      src/xt_pages/dialysis/details/dialog/adviceDialog/EditGroupAdvice.vue
  46. 1 1
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  47. 190 37
      src/xt_pages/outpatientRegistration/index.vue
  48. 1 2
      src/xt_pages/outpatientRegistration/registrationHistory.vue
  49. 53 0
      src/xt_pages/sign/calling.vue
  50. 90 0
      src/xt_pages/sign/components/beforeDialysisCalling.vue
  51. 93 0
      src/xt_pages/sign/components/called.vue
  52. 160 0
      src/xt_pages/sign/components/callingConfigure.vue
  53. 82 0
      src/xt_pages/sign/components/computerCalling.vue
  54. 84 0
      src/xt_pages/sign/components/treatmentConfigure.vue
  55. 61 0
      src/xt_pages/sign/components/waitingCalled.vue
  56. 201 0
      src/xt_pages/sign/lineUp.vue
  57. 154 0
      src/xt_pages/sign/signIn.vue
  58. 1 2
      src/xt_pages/stock/selfPreparedMedicine/components/addMedicine.vue
  59. 13 3
      src/xt_pages/stock/selfPreparedMedicine/components/medicineDetail.vue
  60. 9 4
      src/xt_pages/stock/selfPreparedMedicine/components/warehouseOut.vue
  61. 9 3
      src/xt_pages/stock/selfPreparedMedicine/components/warehousing.vue
  62. 50 13
      src/xt_pages/stock/selfPreparedMedicine/index.vue
  63. 30 6
      src/xt_pages/stock/selfPreparedMedicine/info.vue
  64. 3 6
      src/xt_pages/stock/selfPreparedMedicine/query.vue
  65. 165 11
      src/xt_pages/user/components/EditGroupAdvice.vue
  66. 103 44
      src/xt_pages/user/doctorAdvice.vue
  67. 1 1
      src/xt_pages/user/patients.vue
  68. 13 13
      src/xt_permission.js

+ 11 - 1
src/api/drug/drug.js View File

216
       methods:"get",
216
       methods:"get",
217
       params:params
217
       params:params
218
    })
218
    })
219
-}
219
+}
220
+
221
+export function getDrugSet(params){
222
+  
223
+   return request({
224
+      url:"/api/drug/getdrugset",
225
+      methods:"get",
226
+      params:params
227
+   })
228
+}
229
+

+ 2 - 1
src/lang/zh.js View File

224
     signIndex:'签到排队',
224
     signIndex:'签到排队',
225
     signIn:'签到窗口',
225
     signIn:'签到窗口',
226
     lineUp:'排队窗口',
226
     lineUp:'排队窗口',
227
-
227
+    otherManagement:'其他管理',
228
+    calling:'排队叫号',
228
 
229
 
229
   },
230
   },
230
   navbar: {
231
   navbar: {

+ 0 - 0
src/router/index.js View File


+ 0 - 0
src/router/index_路由未分离前.js View File


+ 0 - 0
src/router/modules/createPatient.js View File


+ 0 - 0
src/router/modules/dataDictionary.js View File


+ 0 - 0
src/router/modules/dataDruguse.js View File


+ 0 - 0
src/router/modules/dataPrescription.js View File


+ 0 - 0
src/router/modules/dataPrint.js View File


+ 0 - 0
src/router/modules/dataShowconfig.js View File


+ 0 - 0
src/router/modules/dataTemplate.js View File


+ 0 - 0
src/router/modules/data_dict.js View File


+ 0 - 0
src/router/modules/data_upload.js View File


+ 0 - 0
src/router/modules/device.js View File


+ 52 - 90
src/router/modules/dialysis.js View File

20
         noCache: true
20
         noCache: true
21
       }
21
       }
22
     },
22
     },
23
+    {
24
+      path: '/dialysis/board',
25
+      component: () => import('@/xt_pages/dialysis/bulletinBoard'),
26
+      name: '数据看板',
27
+      meta: {
28
+        title: '数据看板',
29
+        noCache: true
30
+      }
31
+    },
23
     // {
32
     // {
24
-    //   path: '/dialysis/board',
25
-    //   component: () => import('@/xt_pages/dialysis/bulletinBoard'),
26
-    //   name: '数据看板',
33
+    //   path: '/dialysis/consumableDrugs',
34
+    //   component: () => import('@/xt_pages/dialysis/consumableDrugs'),
35
+    //   name: '耗材药品',
27
     //   meta: {
36
     //   meta: {
28
-    //     title: '数据看板',
37
+    //     title: '耗材药品',
29
     //     noCache: true
38
     //     noCache: true
30
     //   }
39
     //   }
31
     // },
40
     // },
32
     // {
41
     // {
33
-    //   path: '/dialysis/calling',
34
-    //   component: () => import('@/xt_pages/dialysis/calling'),
35
-    //   name: '透析叫号',
42
+    //   path: '/dialysis/consumableDrugs_print',
43
+    //   component: () => import('@/xt_pages/dialysis/consumableDrugs_print'),
44
+    //   hidden: true,
45
+    //   is_menu: false,
46
+    //   name: 'consumableDrugs_print',
36
     //   meta: {
47
     //   meta: {
37
-    //     title: '透析叫号',
48
+    //     title: 'consumableDrugs_print',
49
+    //     noCache: true
50
+    //   }
51
+    // },
52
+    // {
53
+    //   path: '/dialysis/dialysisDrugs_print',
54
+    //   component: () => import('@/xt_pages/dialysis/dialysisDrugs_print'),
55
+    //   hidden: true,
56
+    //   is_menu: false,
57
+    //   name: 'dialysisDrugs_print',
58
+    //   meta: {
59
+    //     title: 'dialysisDrugs_print',
60
+    //     noCache: true
61
+    //   }
62
+    // },
63
+    // {
64
+    //   path: '/dialysis/dialysisParameters_print',
65
+    //   component: () => import('@/xt_pages/dialysis/dialysisParameters_print'),
66
+    //   hidden: true,
67
+    //   is_menu: false,
68
+    //   name: 'dialysisParameters_print',
69
+    //   meta: {
70
+    //     title: 'dialysisParameters_print',
71
+    //     noCache: true
72
+    //   }
73
+    // },
74
+    // {
75
+    //   path: '/dialysis/allSummary_print',
76
+    //   component: () => import('@/xt_pages/dialysis/allSummary_print'),
77
+    //   hidden: true,
78
+    //   is_menu: false,
79
+    //   name: 'allSummary_print',
80
+    //   meta: {
81
+    //     title: 'allSummary_print',
38
     //     noCache: true
82
     //     noCache: true
39
     //   }
83
     //   }
40
     // },
84
     // },
41
-
42
-    {
43
-      path: '/dialysis/consumableDrugs',
44
-      component: () => import('@/xt_pages/dialysis/consumableDrugs'),
45
-      name: '耗材药品',
46
-      meta: {
47
-        title: '耗材药品',
48
-        noCache: true
49
-      }
50
-    },
51
-    {
52
-      path: '/dialysis/consumableDrugs_print',
53
-      component: () => import('@/xt_pages/dialysis/consumableDrugs_print'),
54
-      hidden: true,
55
-      is_menu: false,
56
-      name: 'consumableDrugs_print',
57
-      meta: {
58
-        title: 'consumableDrugs_print',
59
-        noCache: true
60
-      }
61
-    },
62
-    {
63
-      path: '/dialysis/dialysisDrugs_print',
64
-      component: () => import('@/xt_pages/dialysis/dialysisDrugs_print'),
65
-      hidden: true,
66
-      is_menu: false,
67
-      name: 'dialysisDrugs_print',
68
-      meta: {
69
-        title: 'dialysisDrugs_print',
70
-        noCache: true
71
-      }
72
-    },
73
-    {
74
-      path: '/dialysis/dialysisParameters_print',
75
-      component: () => import('@/xt_pages/dialysis/dialysisParameters_print'),
76
-      hidden: true,
77
-      is_menu: false,
78
-      name: 'dialysisParameters_print',
79
-      meta: {
80
-        title: 'dialysisParameters_print',
81
-        noCache: true
82
-      }
83
-    },
84
-    {
85
-      path: '/dialysis/allSummary_print',
86
-      component: () => import('@/xt_pages/dialysis/allSummary_print'),
87
-      hidden: true,
88
-      is_menu: false,
89
-      name: 'allSummary_print',
90
-      meta: {
91
-        title: 'allSummary_print',
92
-        noCache: true
93
-      }
94
-    },
95
-    {
96
-      path: '/dialysis/consumables_print',
97
-      component: () => import('@/xt_pages/dialysis/consumables_print'),
98
-      hidden: true,
99
-      is_menu: false,
100
-      name: 'consumables_print',
101
-      meta: {
102
-        title: 'consumables_print',
103
-        noCache: true
104
-      }
105
-    },
106
-    {
107
-      path: '/dialysis/allsummarydialog_print',
108
-      component: () => import('@/xt_pages/dialysis/allSummaryDialog_print'),
109
-      hidden: true,
110
-      is_menu: false,
111
-      name: 'allsummarydialog_print',
112
-      meta: {
113
-        title: 'allsummarydialog_print',
114
-        noCache: true
115
-      }
116
-    },
117
-    {
118
-      path:'/dialysis/dialysisdrugs_print',
119
-      component:()=>import('@/xt_pages/dialysis/dialysisDrugs_print'),
120
-      hidden:true,
121
-      is_menu:false
122
-    },
123
     {
85
     {
124
       path: '/dialysis/record/:id',
86
       path: '/dialysis/record/:id',
125
       component: () => import('@/xt_pages/dialysis/dialysisPage'),
87
       component: () => import('@/xt_pages/dialysis/dialysisPage'),

+ 0 - 0
src/router/modules/dialysisRecord.js View File


+ 0 - 0
src/router/modules/drugs.js View File


+ 0 - 0
src/router/modules/integration.js View File


+ 0 - 0
src/router/modules/kuyiShopping.js View File


+ 0 - 0
src/router/modules/medical_scheduling.js View File


+ 0 - 0
src/router/modules/org.js View File


+ 0 - 0
src/router/modules/otherManagement.js View File


+ 0 - 0
src/router/modules/outpatientCharges.js View File


+ 0 - 0
src/router/modules/outpatientDoctorStation.js View File


+ 0 - 0
src/router/modules/outpatientPharmacy.js View File


+ 0 - 0
src/router/modules/outpatientRegistration.js View File


+ 0 - 0
src/router/modules/patient.js View File


+ 13 - 13
src/router/modules/qcd.js View File

240
       }
240
       }
241
     },
241
     },
242
     {
242
     {
243
-      path: '/qcd/workAnalysis/index',
244
-      component: () => import('@/xt_pages/qcd/workAnalysis/index'),
243
+      path: '/qcd/workAnalysis/doctor',
244
+      component: () => import('@/xt_pages/qcd/workAnalysis/doctor'),
245
       name: 'workAnalysisDoctor',
245
       name: 'workAnalysisDoctor',
246
       meta: {
246
       meta: {
247
         title: '工作量分析统计',
247
         title: '工作量分析统计',
248
         noCache: true
248
         noCache: true
249
       }
249
       }
250
     },
250
     },
251
-    // {
252
-    //   path: '/qcd/workAnalysis/nurse',
253
-    //   hidden: true,
254
-    //   is_menu: false,
255
-    //   component: () => import('@/xt_pages/qcd/workAnalysis/nurse'),
256
-    //   name: 'workAnalysisNurse',
257
-    //   meta: {
258
-    //     title: '工作量分析统计护士',
259
-    //     noCache: true
260
-    //   }
261
-    // },
251
+    {
252
+      path: '/qcd/workAnalysis/nurse',
253
+      hidden: true,
254
+      is_menu: false,
255
+      component: () => import('@/xt_pages/qcd/workAnalysis/nurse'),
256
+      name: 'workAnalysisNurse',
257
+      meta: {
258
+        title: '工作量分析统计护士',
259
+        noCache: true
260
+      }
261
+    },
262
     {
262
     {
263
       path: '/qcd/patientanalysis/checkStatistical',
263
       path: '/qcd/patientanalysis/checkStatistical',
264
       hidden: true,
264
       hidden: true,

+ 0 - 0
src/router/modules/role.js View File


+ 0 - 0
src/router/modules/roleManage.js View File


+ 0 - 0
src/router/modules/scrm.js View File


+ 0 - 0
src/router/modules/selfPreparedMedicine.js View File


+ 0 - 0
src/router/modules/service.js View File


+ 0 - 0
src/router/modules/shop.js View File


+ 0 - 0
src/router/modules/slow.js View File


+ 0 - 0
src/router/modules/specialDictionary.js View File


+ 1 - 266
src/router/modules/stock.js View File

12
     isChild: true
12
     isChild: true
13
   },
13
   },
14
   children: [
14
   children: [
15
-    {
16
-      path: '/stock/consumablesManagement',
17
-      component: Layout,
18
-      redirect: '/stock/in',
19
-      name: 'consumablesManagement',
20
-      parentNum: 1,
21
-      meta: {
22
-        isChild: true,
23
-        title: 'consumablesManagement',
24
-        noCache: true
25
-      }
26
-    },
27
     {
15
     {
28
       path: '/stock/in',
16
       path: '/stock/in',
29
       component: () => import('@/xt_pages/stock/stockInOrder'),
17
       component: () => import('@/xt_pages/stock/stockInOrder'),
30
       name: 'stockInOrder',
18
       name: 'stockInOrder',
31
-      hidden: true,
32
-      is_menu: false,
33
-      num: 1,
34
       meta: { title: 'stockInOrder', noCache: true }
19
       meta: { title: 'stockInOrder', noCache: true }
35
     },
20
     },
36
     {
21
     {
37
       path: '/stock/return',
22
       path: '/stock/return',
38
       component: () => import('@/xt_pages/stock/salesReturnOrder'),
23
       component: () => import('@/xt_pages/stock/salesReturnOrder'),
39
       name: 'salesReturnOrder',
24
       name: 'salesReturnOrder',
40
-      hidden: true,
41
-      is_menu: false,
42
-      num: 1,
43
       meta: { title: 'salesReturnOrder', noCache: true }
25
       meta: { title: 'salesReturnOrder', noCache: true }
44
     },
26
     },
45
     {
27
     {
46
       path: '/stock/out',
28
       path: '/stock/out',
47
       component: () => import('@/xt_pages/stock/stockOutOrder'),
29
       component: () => import('@/xt_pages/stock/stockOutOrder'),
48
       name: 'stockOutOrder',
30
       name: 'stockOutOrder',
49
-      hidden: true,
50
-      is_menu: false,
51
-      num: 1,
52
       meta: { title: 'stockOutOrder', noCache: true }
31
       meta: { title: 'stockOutOrder', noCache: true }
53
     },
32
     },
54
     {
33
     {
55
       path: '/stock/cancel',
34
       path: '/stock/cancel',
56
       component: () => import('@/xt_pages/stock/cancelStockOrder'),
35
       component: () => import('@/xt_pages/stock/cancelStockOrder'),
57
       name: 'cancelStockOrder',
36
       name: 'cancelStockOrder',
58
-      hidden: true,
59
-      is_menu: false,
60
-      num: 1,
61
       meta: { title: 'cancelStockOrder', noCache: true }
37
       meta: { title: 'cancelStockOrder', noCache: true }
62
     },
38
     },
63
-    {
64
-      path: '/stock/in/other',
65
-      component: () => import('@/xt_pages/stock/otherStockInOrder'),
66
-      name: 'otherStockInOrder',
67
-      hidden: true,
68
-      is_menu: false,
69
-      num: 1,
70
-      meta: { title: 'otherStockInOrder', noCache: true }
71
-    },
72
-    {
73
-      path: '/stock/return/other',
74
-      component: () => import('@/xt_pages/stock/otherSalesReturnOrder'),
75
-      name: 'otherSalesReturnOrder',
76
-      hidden: true,
77
-      is_menu: false,
78
-      num: 1,
79
-      meta: { title: 'otherSalesReturnOrder', noCache: true }
80
-    },
81
-    {
82
-      path: '/stock/out/other',
83
-      component: () => import('@/xt_pages/stock/otherStockOutOrder'),
84
-      name: 'otherStockOutOrder',
85
-      hidden: true,
86
-      is_menu: false,
87
-      num: 1,
88
-      meta: { title: 'otherStockOutOrder', noCache: true }
89
-    },
90
-    {
91
-      path: '/stock/cancel/other',
92
-      component: () => import('@/xt_pages/stock/otherCancelStockOrder'),
93
-      name: 'otherCancelStockOrder',
94
-      hidden: true,
95
-      is_menu: false,
96
-      num: 1,
97
-      meta: { title: 'otherCancelStockOrder', noCache: true }
98
-    },
39
+    
99
     // {
40
     // {
100
     //   path: "/stock/",
41
     //   path: "/stock/",
101
     //   component: Layout,
42
     //   component: Layout,
150
       path: '/stock/query',
91
       path: '/stock/query',
151
       component: () => import('@/xt_pages/stock/stockQuery'),
92
       component: () => import('@/xt_pages/stock/stockQuery'),
152
       name: 'stockQuery',
93
       name: 'stockQuery',
153
-      hidden: true,
154
-      is_menu: false,
155
-      num: 1,
156
       meta: { title: 'stockQuery', noCache: true }
94
       meta: { title: 'stockQuery', noCache: true }
157
     },
95
     },
158
     {
96
     {
159
       path: '/stock/detail',
97
       path: '/stock/detail',
160
       component: () => import('@/xt_pages/stock/stockDetailIndex'),
98
       component: () => import('@/xt_pages/stock/stockDetailIndex'),
161
       name: 'stockDetail',
99
       name: 'stockDetail',
162
-      hidden: true,
163
-      is_menu: false,
164
-      num: 1,
165
       meta: { title: 'stockDetail', noCache: true }
100
       meta: { title: 'stockDetail', noCache: true }
166
     },
101
     },
167
     {
102
     {
171
       hidden: true,
106
       hidden: true,
172
       is_menu: false,
107
       is_menu: false,
173
       meta: { title: 'stockInOrderAdd', noCache: true }
108
       meta: { title: 'stockInOrderAdd', noCache: true }
174
-    },  {
175
-      path: '/drugstock/in/add',
176
-      component: () => import('@/xt_pages/stock/drugs/drugStockInOrderAdd'),
177
-      name: 'drugStockInOrderAdd',
178
-      hidden: true,
179
-      is_menu: false,
180
-      meta: { title: 'drugStockInOrderAdd', noCache: true }
181
     },
109
     },
182
     {
110
     {
183
       path: '/stock/in/detail',
111
       path: '/stock/in/detail',
186
       hidden: true,
114
       hidden: true,
187
       is_menu: false,
115
       is_menu: false,
188
       meta: { title: 'stockInDetail', noCache: true }
116
       meta: { title: 'stockInDetail', noCache: true }
189
-    }, {
190
-      path: '/drugstock/in/detail',
191
-      component: () => import('@/xt_pages/stock/drugs/drugStockInDetail'),
192
-      name: 'drugStockInDetail',
193
-      hidden: true,
194
-      is_menu: false,
195
-      meta: { title: 'drugStockInDetail', noCache: true }
196
     },
117
     },
197
     {
118
     {
198
       path: '/stock/return/detail',
119
       path: '/stock/return/detail',
201
       hidden: true,
122
       hidden: true,
202
       is_menu: false,
123
       is_menu: false,
203
       meta: { title: 'salesReturnDetail', noCache: true }
124
       meta: { title: 'salesReturnDetail', noCache: true }
204
-    }, {
205
-      path: '/drugstock/return/detail',
206
-      component: () => import('@/xt_pages/stock/drugs/drugSalesReturnDetail'),
207
-      name: 'drugSalesReturnDetail',
208
-      hidden: true,
209
-      is_menu: false,
210
-      meta: { title: 'drugSalesReturnDetail', noCache: true }
211
     },
125
     },
212
     {
126
     {
213
       path: '/stock/return/add',
127
       path: '/stock/return/add',
216
       hidden: true,
130
       hidden: true,
217
       is_menu: false,
131
       is_menu: false,
218
       meta: { title: 'salesReturnOrderAdd', noCache: true }
132
       meta: { title: 'salesReturnOrderAdd', noCache: true }
219
-    }, {
220
-      path: '/drugstock/return/add',
221
-      component: () => import('@/xt_pages/stock/drugs/drugSalesReturnOrderAdd'),
222
-      name: 'drugSalesReturnOrderAdd',
223
-      hidden: true,
224
-      is_menu: false,
225
-      meta: { title: 'drugSalesReturnOrderAdd', noCache: true }
226
     },
133
     },
227
     {
134
     {
228
       path: '/stock/out/add',
135
       path: '/stock/out/add',
231
       hidden: true,
138
       hidden: true,
232
       is_menu: false,
139
       is_menu: false,
233
       meta: { title: 'stockOutOrderAdd', noCache: true }
140
       meta: { title: 'stockOutOrderAdd', noCache: true }
234
-    }, {
235
-      path: '/drugstock/out/add',
236
-      component: () => import('@/xt_pages/stock/drugs/drugStockOutOrderAdd'),
237
-      name: 'drugStockOutOrderAdd',
238
-      hidden: true,
239
-      is_menu: false,
240
-      meta: { title: 'drugStockOutOrderAdd', noCache: true }
241
     },
141
     },
242
     {
142
     {
243
       path: '/stock/out/detail',
143
       path: '/stock/out/detail',
246
       hidden: true,
146
       hidden: true,
247
       is_menu: false,
147
       is_menu: false,
248
       meta: { title: 'stockOutDetail', noCache: true }
148
       meta: { title: 'stockOutDetail', noCache: true }
249
-    }, {
250
-      path: '/drugstock/out/detail',
251
-      component: () => import('@/xt_pages/stock/drugs/drugStockOutDetail'),
252
-      name: 'drugStockOutDetail',
253
-      hidden: true,
254
-      is_menu: false,
255
-      meta: { title: 'drugStockOutDetail', noCache: true }
256
     },
149
     },
257
     {
150
     {
258
       path: '/stock/cancel/add',
151
       path: '/stock/cancel/add',
261
       hidden: true,
154
       hidden: true,
262
       is_menu: false,
155
       is_menu: false,
263
       meta: { title: 'cancelStockOrderAdd', noCache: true }
156
       meta: { title: 'cancelStockOrderAdd', noCache: true }
264
-    }, {
265
-      path: '/drugstock/cancel/add',
266
-      component: () => import('@/xt_pages/stock/drugs/cancelDrugStockOrderAdd'),
267
-      name: 'cancelDrugStockOrderAdd',
268
-      hidden: true,
269
-      is_menu: false,
270
-      meta: { title: 'cancelDrugStockOrderAdd', noCache: true }
271
     },
157
     },
272
     {
158
     {
273
       path: '/stock/cancel/detail',
159
       path: '/stock/cancel/detail',
276
       hidden: true,
162
       hidden: true,
277
       is_menu: false,
163
       is_menu: false,
278
       meta: { title: 'cancelStockDetail', noCache: true }
164
       meta: { title: 'cancelStockDetail', noCache: true }
279
-    },  {
280
-      path: '/drugstock/cancel/detail',
281
-      component: () => import('@/xt_pages/stock/drugs/cancelDrugStockDetail'),
282
-      name: 'cancelDrugStockDetail',
283
-      hidden: true,
284
-      is_menu: false,
285
-      meta: { title: 'cancelDrugStockDetail', noCache: true }
286
     },
165
     },
287
     {
166
     {
288
       path: '/stock/config',
167
       path: '/stock/config',
289
       component: () => import('@/xt_pages/stock/index'),
168
       component: () => import('@/xt_pages/stock/index'),
290
       name: 'config',
169
       name: 'config',
291
-      hidden: true,
292
-      is_menu: false,
293
-      num: 1,
294
       meta: { title: 'config', noCache: true }
170
       meta: { title: 'config', noCache: true }
295
     },
171
     },
296
     {
172
     {
312
       is_menu: false,
188
       is_menu: false,
313
       meta: { title: 'user_detail', noCache: true }
189
       meta: { title: 'user_detail', noCache: true }
314
     },
190
     },
315
-    {
316
-      path: '/stock/selfPreparedMedicine',
317
-      component: () => import('@/xt_pages/stock/selfPreparedMedicine/index'),
318
-      redirect: '/stock/selfPreparedMedicineIndex',
319
-      name: 'selfPreparedMedicine',
320
-      parentNum: 2,
321
-      meta: {
322
-        isChild: true,
323
-        title: 'selfPreparedMedicine',
324
-        noCache: true
325
-      }
326
-    },
327
-    {
328
-      path: '/stock/selfPreparedMedicineIndex',
329
-      component: () => import('@/xt_pages/stock/selfPreparedMedicine/index'),
330
-      name: 'selfPreparedMedicineIndex',
331
-      hidden: true,
332
-      is_menu: false,
333
-      num: 2,
334
-      meta: { title: 'selfPreparedMedicineIndex', noCache: true }
335
-    },
336
-    {
337
-      path: '/stock/selfPreparedMedicineQuery',
338
-      component: () => import('@/xt_pages/stock/selfPreparedMedicine/query'),
339
-      name: 'selfPreparedMedicineQuery',
340
-      hidden: true,
341
-      is_menu: false,
342
-      num: 2,
343
-      meta: { title: 'selfPreparedMedicineQuery', noCache: true }
344
-    },
345
-    {
346
-      path: '/stock/selfPreparedMedicineQueryPrint',
347
-      component: () => import('@/xt_pages/stock/selfPreparedMedicine/queryPrint'),
348
-      name: 'selfPreparedMedicineQueryPrint',
349
-      hidden: true,
350
-      is_menu: false,
351
-      meta: { title: 'selfPreparedMedicineQueryPrint', noCache: true }
352
-    },
353
-    {
354
-      path: '/stock/selfPreparedMedicineInfo',
355
-      component: () => import('@/xt_pages/stock/selfPreparedMedicine/info'),
356
-      name: 'selfPreparedMedicineInfo',
357
-      hidden: true,
358
-      is_menu: false,
359
-      num: 2,
360
-      meta: { title: 'selfPreparedMedicineInfo', noCache: true }
361
-    },
362
-    {
363
-      path: '/stock/drugs',
364
-      component: Layout,
365
-      redirect: '/stock/drugs/stock/in',
366
-      name: 'stockDrugs',
367
-      parentNum: 3,
368
-      meta: {
369
-        isChild: true,
370
-        title: 'stockDrugs',
371
-        noCache: true
372
-      }
373
-    },
374
-
375
-    {
376
-      path: '/stock/drugs/stock/in',
377
-      component: () => import('@/xt_pages/stock/drugs/drugStockInOrder'),
378
-      name: 'drugsStockIn',
379
-      hidden: true,
380
-      is_menu: false,
381
-      num: 3,
382
-      meta: { title: 'drugsStockIn', noCache: true }
383
-    },
384
-    {
385
-      path: '/stock/drugs/stock/out',
386
-      component: () => import('@/xt_pages/stock/drugs/drugStockOutOrder'),
387
-      name: 'drugsStockOut',
388
-      hidden: true,
389
-      is_menu: false,
390
-      num: 3,
391
-      meta: { title: 'drugsStockOut', noCache: true }
392
-    },
393
-    {
394
-      path: '/stock/drugs/stock/return',
395
-      component: () => import('@/xt_pages/stock/drugs/drugSalesReturnOrder'),
396
-      name: 'drugsStockReturn',
397
-      hidden: true,
398
-      is_menu: false,
399
-      num: 3,
400
-      meta: { title: 'drugsStockReturn', noCache: true }
401
-    },
402
-    {
403
-      path: '/stock/drugs/stock/cancel',
404
-      component: () => import('@/xt_pages/stock/drugs/cancelDrugStockOrder'),
405
-      name: 'drugsStockCancel',
406
-      hidden: true,
407
-      is_menu: false,
408
-      num: 3,
409
-      meta: { title: 'drugsStockCancel', noCache: true }
410
-    },
411
-    // {
412
-    //   path: '/stock/drugs/stock/adjustPrice',
413
-    //   component: () => import('@/xt_pages/stock/drugs/adjustPrice'),
414
-    //   name: 'drugsAdjustPrice',
415
-    //   hidden: true,
416
-    //   is_menu: false,
417
-    //   num: 3,
418
-    //   meta: { title: 'drugsAdjustPrice', noCache: true }
419
-    // },
420
-    // {
421
-    //   path: '/stock/drugs/stock/reportLoss',
422
-    //   component: () => import('@/xt_pages/stock/drugs/reportLoss'),
423
-    //   name: 'drugsReportLoss',
424
-    //   hidden: true,
425
-    //   is_menu: false,
426
-    //   num: 3,
427
-    //   meta: { title: 'drugsReportLoss', noCache: true }
428
-    // },
429
-    {
430
-      path: '/stock/drugs/stock/query',
431
-      component: () => import('@/xt_pages/stock/drugs/query'),
432
-      name: 'drugsQuery',
433
-      hidden: true,
434
-      is_menu: false,
435
-      num: 3,
436
-      meta: { title: 'drugsQuery', noCache: true }
437
-    },
438
-    // {
439
-    //   path: '/stock/drugs/stock/drugsSurplus',
440
-    //   component: () => import('@/xt_pages/stock/drugs/drugsSurplus'),
441
-    //   name: 'drugsSurplus',
442
-    //   hidden: true,
443
-    //   is_menu: false,
444
-    //   num: 3,
445
-    //   meta: { title: 'drugsSurplus', noCache: true }
446
-    // },
447
-    // {
448
-    //   path: '/stock/drugs/stock/drugsExpiryDate',
449
-    //   component: () => import('@/xt_pages/stock/drugs/drugsExpiryDate'),
450
-    //   name: 'drugsExpiryDate',
451
-    //   hidden: true,
452
-    //   is_menu: false,
453
-    //   num: 3,
454
-    //   meta: { title: 'drugsExpiryDate', noCache: true }
455
-    // },
456
   ]
191
   ]
457
 }
192
 }

+ 5 - 69
src/router/modules/systems.js View File

5
   component: Layout,
5
   component: Layout,
6
   redirect: '/role/admin/manage',
6
   redirect: '/role/admin/manage',
7
   name: 'system',
7
   name: 'system',
8
-  alwaysShow: true,
9
   meta: {
8
   meta: {
10
     title: 'systemManage',
9
     title: 'systemManage',
11
     icon: 'system'
10
     icon: 'system'
20
 
19
 
21
     }
20
     }
22
   },
21
   },
23
-  {
24
-    path: '/role/manage',
25
-    component: () => import('@/xt_pages/role/role'),
26
-    name: 'roleManage',
27
-    meta: {
28
-      title: 'roleManage',
29
-      noCache: true,
30
-
31
-    }
32
-  },
22
+  
33
   {
23
   {
34
     path: '/role/admin/create',
24
     path: '/role/admin/create',
35
     component: () => import('@/xt_pages/role/CreateAdmin'),
25
     component: () => import('@/xt_pages/role/CreateAdmin'),
71
   //     title: 'special_permission_manage'
61
   //     title: 'special_permission_manage'
72
   //   }
62
   //   }
73
   // },
63
   // },
74
-  {
75
-    path: '/data/dictionary',
76
-    component: () => import('@/xt_pages/data/index'),
77
-    name: 'dictionary',
78
-    meta: {
79
-      title: 'data_dictionary',
80
-      noCache: true,
81
-
82
-    }
83
-  },
84
-  {
85
-    path: '/data/specialDictionary',
86
-    component: () => import('@/xt_pages/data/specialDictionary'),
87
-    name: 'specialDictionary',
88
-    meta: {
89
-      title: 'specialDictionary',
90
-      noCache: true,
91
-
92
-    }
93
-  },
94
-  {
95
-    path: '/data/template',
96
-    component: () => import('@/xt_pages/data/template'),
97
-    name: 'template',
98
-    meta: {
99
-      title: 'template',
100
-      noCache: true,
101
-
102
-    }
103
-  },{
104
-      path: '/data/prescription',
105
-      component: () => import('@/xt_pages/data/prescription'),
106
-      name: 'prescription',
107
-      meta: {
108
-        title: 'system_prescription'
109
-      }
110
-    }, {
111
-    path: '/data/druguse',
112
-    component: () => import('@/xt_pages/data/druguseTemplate'),
113
-    name: 'druguse',
114
-    meta: {
115
-      title: 'druguse'
116
-    }
117
-  }, {
118
-    path: '/data/showconfig',
119
-    component: () => import('@/xt_pages/data/showConfig'),
120
-    name: 'showconfig',
121
-    meta: {
122
-      title: 'showconfig'
123
-    }
124
-  },{
125
-    path: '/data/print',
126
-    component: () => import('@/xt_pages/data/printTemplate'),
127
-    name: 'printTemplate',
128
-    meta: {
129
-      title: 'printTemplate'
130
-    }
131
-  }
64
+  
65
+  
66
+    
132
   ]
67
   ]
133
 }
68
 }
69
+

+ 10 - 0
src/router/modules/weight_sign.js View File

30
       noCache: true
30
       noCache: true
31
     }
31
     }
32
   },
32
   },
33
+  {
34
+    path: '/calling',
35
+    component: () => import('@/xt_pages/sign/calling'),
36
+    name: 'calling',
37
+    meta: {
38
+      title: 'calling',
39
+      icon: 'calling',
40
+      noCache: true
41
+    }
42
+  },
33
   {
43
   {
34
     path: '/sign',
44
     path: '/sign',
35
     component: () => import('@/xt_pages/sign/index'),
45
     component: () => import('@/xt_pages/sign/index'),

+ 0 - 0
src/router/modules/workforce.js View File


+ 67 - 9
src/views/layout/Layout.vue View File

4
     
4
     
5
     <div class="mainBox">
5
     <div class="mainBox">
6
       <div class="navLeft">
6
       <div class="navLeft">
7
-        <div :class="index == 0 ? 'navOne navActive' : 'navOne'" @click="clickActive(0,'门诊管理')">
7
+        <div v-if="menzhenShow" :class="index == 0 ? 'navOne navActive' : 'navOne'" @click="clickActive(0,'门诊管理')">
8
           <i class="iconfont icon--yishengmenzhen navIcon"></i>
8
           <i class="iconfont icon--yishengmenzhen navIcon"></i>
9
           <p>门诊管理</p>
9
           <p>门诊管理</p>
10
         </div>
10
         </div>
11
-        <div :class="index == 1 ? 'navOne navActive' : 'navOne'" @click="clickActive(1,'电子病历')">
11
+        <div v-if="bingliShow" :class="index == 1 ? 'navOne navActive' : 'navOne'" @click="clickActive(1,'电子病历')">
12
           <i class="iconfont icon-s_bingli navIcon"></i>
12
           <i class="iconfont icon-s_bingli navIcon"></i>
13
           <p>电子病历</p>
13
           <p>电子病历</p>
14
         </div>
14
         </div>
15
-        <div :class="index == 2 ? 'navOne navActive' : 'navOne'" @click="clickActive(2,'透析管理')">
15
+        <div v-if="touxiShow" :class="index == 2 ? 'navOne navActive' : 'navOne'" @click="clickActive(2,'透析管理')">
16
           <i class="iconfont icon-computer_fill navIcon"></i>
16
           <i class="iconfont icon-computer_fill navIcon"></i>
17
           <p>透析管理</p>
17
           <p>透析管理</p>
18
         </div>
18
         </div>
19
-        <div :class="index == 3 ? 'navOne navActive' : 'navOne'" @click="clickActive(3,'库存管理')">
19
+        <div v-if="kucunShow" :class="index == 3 ? 'navOne navActive' : 'navOne'" @click="clickActive(3,'库存管理')">
20
           <i class="iconfont icon-kccx navIcon"></i>
20
           <i class="iconfont icon-kccx navIcon"></i>
21
           <p>库存管理</p>
21
           <p>库存管理</p>
22
         </div>
22
         </div>
23
-        <div :class="index == 4 ? 'navOne navActive' : 'navOne'" @click="clickActive(4,'酷医商城')">
23
+        <div v-if="kuyishoppingShow" :class="index == 4 ? 'navOne navActive' : 'navOne'" @click="clickActive(4,'酷医商城')">
24
           <i class="iconfont icon-shangcheng-1 navIcon"></i>
24
           <i class="iconfont icon-shangcheng-1 navIcon"></i>
25
           <p>酷医商城</p>
25
           <p>酷医商城</p>
26
         </div>
26
         </div>
67
             <p>营销管理</p>
67
             <p>营销管理</p>
68
           </div>
68
           </div>
69
         </a>
69
         </a>
70
-        <div class="dialogMainOne">
70
+        <!-- <div class="dialogMainOne">
71
           <div class="dialogIcon">
71
           <div class="dialogIcon">
72
             <i class="iconfont icon-shujufenxi-jingyinggaikuang newIcon"></i>
72
             <i class="iconfont icon-shujufenxi-jingyinggaikuang newIcon"></i>
73
           </div>
73
           </div>
74
           <p>经营中心</p>
74
           <p>经营中心</p>
75
-        </div>
75
+        </div> -->
76
         <a :href="MircoMallWebsit()" target="_blank" v-if="this.$store.getters.xt_user.mall_role_exist">
76
         <a :href="MircoMallWebsit()" target="_blank" v-if="this.$store.getters.xt_user.mall_role_exist">
77
           <div class="dialogMainOne">
77
           <div class="dialogMainOne">
78
             <div class="dialogIcon">
78
             <div class="dialogIcon">
81
             <p>分销商城</p>
81
             <p>分销商城</p>
82
           </div>
82
           </div>
83
         </a>
83
         </a>
84
-        <div class="dialogMainOne" @click="clickActive(11,'配置管理')">
84
+        <div v-if="peizhiShow" class="dialogMainOne" @click="clickActive(11,'配置管理')">
85
           <div class="dialogIcon">
85
           <div class="dialogIcon">
86
             <i class="iconfont icon-setup_fill newIcon"></i>
86
             <i class="iconfont icon-setup_fill newIcon"></i>
87
           </div>
87
           </div>
93
 </template>
93
 </template>
94
 
94
 
95
 <script>
95
 <script>
96
+import { mapGetters } from "vuex";
96
 import { Navbar, Sidebar, AppMain, TagsView } from './components'
97
 import { Navbar, Sidebar, AppMain, TagsView } from './components'
97
 import ResizeMixin from './mixin/ResizeHandler'
98
 import ResizeMixin from './mixin/ResizeHandler'
98
 
99
 
110
       index:2,
111
       index:2,
111
       navTitle:'透析管理',
112
       navTitle:'透析管理',
112
       sign:false,
113
       sign:false,
113
-      navShow:true
114
+      navShow:true,
115
+      //
116
+      menzhenShow:true,
117
+      bingliShow:true,
118
+      touxiShow:true,
119
+      kucunShow:true,
120
+      peizhiShow:true,
121
+      kuyishoppingShow:true,
122
+    }
123
+  },
124
+  created(){
125
+    console.log('permission_routers',this.permission_routers)
126
+    let menzhen = ['outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy']
127
+    let bingli = ['User','createPatient']
128
+    let touxi = ['workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'quality_control']
129
+    let kucun = ['stockManage','selfPreparedMedicine','stockDrugs','otherManagement']
130
+    let peizhi = ['system','roleManage','dictionary','specialDictionary','template','prescription','druguse','showconfig','printTemplate']
131
+    let kuyishopping = ['kuyiShopping']
132
+    let menzhenArr = []
133
+    let bingliArr = []
134
+    let touxiArr = []
135
+    let kucunArr = []
136
+    let peizhiArr = []
137
+    let kuyishoppingArr = []
138
+    this.permission_routers.map(item => {
139
+      if(menzhen.indexOf(item.name) > -1){
140
+        menzhenArr.push(item)
141
+      }else if(bingli.indexOf(item.name) > -1){
142
+        bingliArr.push(item)
143
+      }else if(touxi.indexOf(item.name) > -1){
144
+        touxiArr.push(item)
145
+      }else if(kucun.indexOf(item.name) > -1){
146
+        kucunArr.push(item)
147
+      }else if(peizhi.indexOf(item.name) > -1){
148
+        peizhiArr.push(item)
149
+      }else if(kuyishopping.indexOf(item.name) > -1){
150
+        kuyishoppingArr.push(item)
151
+      }
152
+    })
153
+    // console.log('menzhenArr.length',menzhenArr.length)
154
+    // console.log('bingliArr.length',bingliArr.length)
155
+    // console.log('touxiArr.length',touxiArr.length)
156
+    // console.log('kucunArr.length',kucunArr.length)
157
+    // console.log('peizhiArr.length',peizhiArr.length)
158
+    // console.log('kuyishoppingArr.length',kuyishoppingArr.length)
159
+    if(menzhenArr.length == 0){
160
+      this.menzhenShow = false
161
+    }else if(bingliArr.length == 0){
162
+      this.bingliShow = false
163
+    }else if(touxiArr.length == 0){
164
+      this.touxiShow = false
165
+    }else if(kucunArr.length == 0){
166
+      this.kucunShow = false
167
+    }else if(peizhiArr.length == 0){
168
+      this.peizhiShow = false
169
+    }else if(kuyishoppingArr.length == 0){
170
+      this.kuyishoppingShow = false
114
     }
171
     }
115
   },
172
   },
116
   computed: {
173
   computed: {
174
+    ...mapGetters(["permission_routers"]),
117
     sidebar() {
175
     sidebar() {
118
       return this.$store.state.app.sidebar
176
       return this.$store.state.app.sidebar
119
     },
177
     },

+ 6 - 6
src/views/layout/components/Sidebar/index.vue View File

49
   created(){
49
   created(){
50
     if(this.navTitle == '透析管理'){
50
     if(this.navTitle == '透析管理'){
51
       let nameArr = ['workforce','dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'quality_control']
51
       let nameArr = ['workforce','dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'quality_control']
52
-      console.log('permission_routers',this.permission_routers)
52
+      // console.log('permission_routers',this.permission_routers)
53
       let routerArr = []
53
       let routerArr = []
54
       this.permission_routers.map(item => {
54
       this.permission_routers.map(item => {
55
         if(nameArr.indexOf(item.name) > -1){
55
         if(nameArr.indexOf(item.name) > -1){
70
       handler(newVal,oldVal){
70
       handler(newVal,oldVal){
71
         if(newVal == '门诊管理'){
71
         if(newVal == '门诊管理'){
72
           let nameArr = ['outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy']
72
           let nameArr = ['outpatientRegistration','outpatientDoctorStation','outpatientCharges','outpatientPharmacy']
73
-          console.log('permission_routers',this.permission_routers)
73
+          // console.log('permission_routers',this.permission_routers)
74
           let routerArr = []
74
           let routerArr = []
75
           this.permission_routers.map(item => {
75
           this.permission_routers.map(item => {
76
             if(nameArr.indexOf(item.name) > -1){
76
             if(nameArr.indexOf(item.name) > -1){
87
           }
87
           }
88
         }else if(newVal == '电子病历'){
88
         }else if(newVal == '电子病历'){
89
           let nameArr = ['User','createPatient']
89
           let nameArr = ['User','createPatient']
90
-          console.log('permission_routers',this.permission_routers)
90
+          // console.log('permission_routers',this.permission_routers)
91
           let routerArr = []
91
           let routerArr = []
92
           this.permission_routers.map(item => {
92
           this.permission_routers.map(item => {
93
             if(nameArr.indexOf(item.name) > -1){
93
             if(nameArr.indexOf(item.name) > -1){
104
           }
104
           }
105
         }else if(newVal == '透析管理'){
105
         }else if(newVal == '透析管理'){
106
           let nameArr = ['workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'quality_control']
106
           let nameArr = ['workforce', 'dialysisrecord', 'dialysis', 'medicalScheduling', 'signIndex', 'qcd', 'quality_control']
107
-          console.log('permission_routers',this.permission_routers)
107
+          // console.log('permission_routers',this.permission_routers)
108
           let routerArr = []
108
           let routerArr = []
109
           this.permission_routers.map(item => {
109
           this.permission_routers.map(item => {
110
             if(nameArr.indexOf(item.name) > -1){
110
             if(nameArr.indexOf(item.name) > -1){
122
           }
122
           }
123
         }else if(newVal == '库存管理'){
123
         }else if(newVal == '库存管理'){
124
           let nameArr = ['stockManage','selfPreparedMedicine','stockDrugs','otherManagement']
124
           let nameArr = ['stockManage','selfPreparedMedicine','stockDrugs','otherManagement']
125
-          console.log('permission_routers',this.permission_routers)
125
+          // console.log('permission_routers',this.permission_routers)
126
           let routerArr = []
126
           let routerArr = []
127
           this.permission_routers.map(item => {
127
           this.permission_routers.map(item => {
128
             if(nameArr.indexOf(item.name) > -1){
128
             if(nameArr.indexOf(item.name) > -1){
139
           }
139
           }
140
         }else if(newVal == '配置管理'){
140
         }else if(newVal == '配置管理'){
141
           let nameArr = ['system','roleManage','dictionary','specialDictionary','template','prescription','druguse','showconfig','printTemplate']
141
           let nameArr = ['system','roleManage','dictionary','specialDictionary','template','prescription','druguse','showconfig','printTemplate']
142
-          console.log('permission_routers',this.permission_routers)
142
+          // console.log('permission_routers',this.permission_routers)
143
           let routerArr = []
143
           let routerArr = []
144
           this.permission_routers.map(item => {
144
           this.permission_routers.map(item => {
145
             if(nameArr.indexOf(item.name) > -1){
145
             if(nameArr.indexOf(item.name) > -1){

+ 3 - 2
src/xt_pages/dialysis/details/dialog/DoctorAdviceDialog.vue View File

768
         this.form['dialysis_order_id'] = this.dialysis_order.id
768
         this.form['dialysis_order_id'] = this.dialysis_order.id
769
       },
769
       },
770
       doctor_advices: function() {
770
       doctor_advices: function() {
771
+
771
         this.handleSpanTempArr()
772
         this.handleSpanTempArr()
772
         this.hoverOrderArr = []
773
         this.hoverOrderArr = []
773
         this.handleStyle()
774
         this.handleStyle()
840
               adviceNames: this.other_doctor_advices,
841
               adviceNames: this.other_doctor_advices,
841
               remark: ''
842
               remark: ''
842
             }
843
             }
844
+
843
             let mode = '1'
845
             let mode = '1'
844
             CreateGroupAdvice(this.patientid, 0, submitForm, mode).then(
846
             CreateGroupAdvice(this.patientid, 0, submitForm, mode).then(
845
               response => {
847
               response => {
1176
         }
1178
         }
1177
         this.exceLoading = true
1179
         this.exceLoading = true
1178
         let mode = '6'
1180
         let mode = '6'
1179
-
1180
         ExecDoctorAdvice(this.patient.id, this.currentRow.id, this.execTime, mode).then(response => {
1181
         ExecDoctorAdvice(this.patient.id, this.currentRow.id, this.execTime, mode).then(response => {
1181
             if (response.data.state == 0) {
1182
             if (response.data.state == 0) {
1182
               this.$message.error(response.data.msg)
1183
               this.$message.error(response.data.msg)
1461
       }
1462
       }
1462
       ,
1463
       ,
1463
       checkAdvice() {
1464
       checkAdvice() {
1464
-        console.log(this.$store.getters.xt_user)
1465
+        // console.log(this.$store.getters.xt_user)
1465
         if (this.currentRow == null) {
1466
         if (this.currentRow == null) {
1466
           this.$message.error('请先选择要核对的医嘱!')
1467
           this.$message.error('请先选择要核对的医嘱!')
1467
           return false
1468
           return false

+ 127 - 57
src/xt_pages/dialysis/details/dialog/adviceDialog/AddGroupAdvice.vue View File

385
                   v-for="item in medicals"
385
                   v-for="item in medicals"
386
                   :key="item.id"
386
                   :key="item.id"
387
                   :label="item.drug_name"
387
                   :label="item.drug_name"
388
-                  :value="item.drug_name"
388
+                  :value="item.id"
389
                 ></el-option>
389
                 ></el-option>
390
               </el-select>
390
               </el-select>
391
             </el-form-item>
391
             </el-form-item>
392
-
392
+            <!-- <div style="margin-left:120px;margin-top:-20px;font-size:12px;color:red">
393
+               库存不足50
394
+            </div> -->
393
             
395
             
394
           </el-col>
396
           </el-col>
395
 
397
 
568
 } from "@/api/advice";
570
 } from "@/api/advice";
569
 
571
 
570
 import {getSelfMedicalList,getDrugDescByDrugName } from "@/api/drug/drug"
572
 import {getSelfMedicalList,getDrugDescByDrugName } from "@/api/drug/drug"
573
+import { duration } from 'moment';
571
 export default {
574
 export default {
572
   name: "AddGroupAdvice",
575
   name: "AddGroupAdvice",
573
   data() {
576
   data() {
611
         isEdit: 0,
614
         isEdit: 0,
612
         index: 0,
615
         index: 0,
613
         id: 0,
616
         id: 0,
614
-        children: []
617
+        children: [],
618
+        drug_id:"",
619
+        way:"",
615
       },
620
       },
616
       submitGroupForm: {
621
       submitGroupForm: {
617
         advice_type: "",
622
         advice_type: "",
629
         adviceNames: [],
634
         adviceNames: [],
630
         advice_doctor: "",
635
         advice_doctor: "",
631
         remark: "",
636
         remark: "",
632
-        parent_id: 0
637
+        parent_id: 0,
638
+        drug_id:"",
639
+        way:"",
633
       },
640
       },
634
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
641
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
635
       selectedTemplate: [],
642
       selectedTemplate: [],
636
       allSelectedTemplate: [],
643
       allSelectedTemplate: [],
637
       medicals:[],
644
       medicals:[],
638
-      drugSpec:[],
645
+      drugSpec:[]
639
     };
646
     };
640
   },
647
   },
641
   props: {
648
   props: {
686
   },
693
   },
687
   methods: {
694
   methods: {
688
     submitgroupAdvice(formName) {
695
     submitgroupAdvice(formName) {
696
+      
689
       this.$refs[formName].validate(valid => {
697
       this.$refs[formName].validate(valid => {
690
         if (valid) {
698
         if (valid) {
691
           var submitForm = {
699
           var submitForm = {
697
             remark: this.groupForm.remark,
705
             remark: this.groupForm.remark,
698
             parent_id: this.groupForm.parent_id
706
             parent_id: this.groupForm.parent_id
699
           };
707
           };
700
-
708
+          
709
+          console.log("888888",this.groupForm.adviceNames)
701
           var adviceNames = [];
710
           var adviceNames = [];
702
           for (const index in this.groupForm.adviceNames) {
711
           for (const index in this.groupForm.adviceNames) {
703
             adviceNames.unshift(this.groupForm.adviceNames[index]);
712
             adviceNames.unshift(this.groupForm.adviceNames[index]);
705
           submitForm.adviceNames = adviceNames;
714
           submitForm.adviceNames = adviceNames;
706
           let mode = "1";
715
           let mode = "1";
707
           
716
           
708
-        
717
+     
718
+          console.log("88888888",submitForm)
719
+ 
709
           CreateGroupAdvice(this.patientID, 0, submitForm, mode).then(
720
           CreateGroupAdvice(this.patientID, 0, submitForm, mode).then(
710
             response => {
721
             response => {
711
               if (response.data.state == 0) {
722
               if (response.data.state == 0) {
827
         .catch(() => {});
838
         .catch(() => {});
828
     },
839
     },
829
     submitNameForm(formName) {
840
     submitNameForm(formName) {
830
-      //截取自备药名称
831
-      var arr = this.nameForm.advice_name.split("(自备药)")
832
-      this.nameForm.advice_name = arr[0]
841
+      
842
+      if(typeof(this.nameForm.advice_name) == "string"){
843
+         
844
+          this.nameForm.advice_name == this.nameForm.advice_name
845
+      }
833
 
846
 
847
+      if(typeof(this.nameForm.advice_name) == "number"){
848
+          var drug_name = ""
849
+          var name = ""
850
+          var way = 0
851
+          this.nameForm.drug_id = this.nameForm.advice_name
852
+          for(let i=0;i<this.medicals.length;i++){
853
+            if(this.nameForm.advice_name == this.medicals[i].id){
854
+              name = this.medicals[i].drug_name
855
+              way  = this.medicals[i].way
856
+            }
857
+          }
858
+          if(way == 1){
859
+            drug_name = name
860
+          }
861
+          if(way == 2){
862
+            var arr = name.split("(自备药)")
863
+            drug_name = arr[0]
864
+          }
865
+          
866
+          this.nameForm.advice_name = drug_name
867
+          this.nameForm.way = way
868
+      }
869
+      
834
       var _this = this;
870
       var _this = this;
835
       this.$refs[formName].validate(valid => {
871
       this.$refs[formName].validate(valid => {
836
         if (valid) {
872
         if (valid) {
837
           if (_this.nameForm.isEdit) {
873
           if (_this.nameForm.isEdit) {
838
-            var ale = _this.groupForm.adviceNames.length;
839
-            console.log("进来诶呦")
874
+            var ale = _this.groupForm.adviceNames.length; 
840
             if (_this.isChild) {
875
             if (_this.isChild) {
841
               for (let index = 0; index < ale; index++) {
876
               for (let index = 0; index < ale; index++) {
842
                 if (_this.groupSelectRow.parent_row ==_this.groupForm.adviceNames[index].row_key) {
877
                 if (_this.groupSelectRow.parent_row ==_this.groupForm.adviceNames[index].row_key) {
856
                       _this.groupForm.adviceNames[index].children[j].delivery_way = _this.nameForm.delivery_way;
891
                       _this.groupForm.adviceNames[index].children[j].delivery_way = _this.nameForm.delivery_way;
857
                       _this.groupForm.adviceNames[index].children[j].execution_frequency =_this.nameForm.execution_frequency;
892
                       _this.groupForm.adviceNames[index].children[j].execution_frequency =_this.nameForm.execution_frequency;
858
                       _this.groupForm.adviceNames[index].children[j].remark =_this.nameForm.remark;
893
                       _this.groupForm.adviceNames[index].children[j].remark =_this.nameForm.remark;
894
+                      _this.groupForm.adviceNames[index].children[j].drug_id = _this.nameForm.drug_id;
895
+                      _this.groupForm.adviceNames[index].children[j].way = this.nameForm.way;
859
                       _this.$set(_this.groupForm.adviceNames[index].children,j,_this.groupForm.adviceNames[index].children[j]
896
                       _this.$set(_this.groupForm.adviceNames[index].children,j,_this.groupForm.adviceNames[index].children[j]
897
+                     
860
                       );
898
                       );
861
                       break;
899
                       break;
862
                     }
900
                     }
877
                   _this.groupForm.adviceNames[index].delivery_way =_this.nameForm.delivery_way;
915
                   _this.groupForm.adviceNames[index].delivery_way =_this.nameForm.delivery_way;
878
                   _this.groupForm.adviceNames[index].execution_frequency =_this.nameForm.execution_frequency;
916
                   _this.groupForm.adviceNames[index].execution_frequency =_this.nameForm.execution_frequency;
879
                   _this.groupForm.adviceNames[index].remark =_this.nameForm.remark;
917
                   _this.groupForm.adviceNames[index].remark =_this.nameForm.remark;
880
-
918
+                  _this.groupForm.adviceNames[index].children[j].drug_id = _this.nameForm.drug_id;
919
+                  _this.groupForm.adviceNames[index].children[j].way = this.nameForm.way;
881
                   _this.$set(
920
                   _this.$set(
882
                     _this.groupForm.adviceNames,
921
                     _this.groupForm.adviceNames,
883
                     index,
922
                     index,
1271
               }
1310
               }
1272
               this.$set(item, "children", item.children);
1311
               this.$set(item, "children", item.children);
1273
             }
1312
             }
1274
-            console.log("11122333")
1275
-            console.log(item)
1276
             this.allSelectedTemplate.unshift(item);
1313
             this.allSelectedTemplate.unshift(item);
1277
             adviceTemplate.DoctorAdviceTemplate[index].selection = false;
1314
             adviceTemplate.DoctorAdviceTemplate[index].selection = false;
1278
           }
1315
           }
1359
             for (const index in _this.adviceTemplateMaps[mapid]
1396
             for (const index in _this.adviceTemplateMaps[mapid]
1360
               .DoctorAdviceTemplate) {
1397
               .DoctorAdviceTemplate) {
1361
               this.editRowKey++;
1398
               this.editRowKey++;
1362
-              var item = {
1363
-                advice_name:
1364
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1365
-                    .advice_name,
1366
-                advice_desc:
1367
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1368
-                    .advice_desc,
1369
-                single_dose:
1370
-                  "" +
1371
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1372
-                    .single_dose,
1373
-                single_dose_unit:
1374
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1375
-                    .single_dose_unit,
1376
-                drug_spec:
1377
-                  "" +
1378
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1379
-                    .drug_spec,
1380
-                drug_spec_unit:
1381
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1382
-                    .drug_spec_unit,
1383
-                prescribing_number:
1384
-                  "" +
1385
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1386
-                    .prescribing_number,
1387
-                prescribing_number_unit:
1388
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1389
-                    .prescribing_number_unit,
1390
-                delivery_way:
1391
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1392
-                    .delivery_way,
1393
-                execution_frequency:
1394
-                  _this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
1395
-                    .execution_frequency,
1399
+              var item = {advice_name:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].advice_name,
1400
+                advice_desc:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].advice_desc,
1401
+                single_dose:"" +_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].single_dose,
1402
+                single_dose_unit:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].single_dose_unit,
1403
+                drug_spec:"" +_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].drug_spec,
1404
+                drug_spec_unit:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].drug_spec_unit,
1405
+                prescribing_number:"" +_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].prescribing_number,
1406
+                prescribing_number_unit:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].prescribing_number_unit,
1407
+                delivery_way:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].delivery_way,
1408
+                execution_frequency:_this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].execution_frequency,
1396
                 isEdit: 0,
1409
                 isEdit: 0,
1397
                 id: 0,
1410
                 id: 0,
1398
                 children: [],
1411
                 children: [],
1516
       getSelfMedicalList(params).then(response=>{
1529
       getSelfMedicalList(params).then(response=>{
1517
           if(response.data.state == 1){
1530
           if(response.data.state == 1){
1518
             var medicalList =  response.data.data.medicalList
1531
             var medicalList =  response.data.data.medicalList
1532
+            //way字段区分数据源:1代表来自基础库  2代表来自药品库
1533
+            for(let i=0;i<medicalList.length;i++){
1534
+               medicalList[i].way = 2
1535
+            }
1519
             for(let i=0;i<medicalList.length;i++){
1536
             for(let i=0;i<medicalList.length;i++){
1520
                medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
1537
                medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
1521
             }
1538
             }
1522
-            this.medicals = medicalList
1539
+            var drugname = response.data.data.drugName
1540
+            for(let i=0;i<drugname.length;i++){
1541
+               drugname[i].way = 1
1542
+            }
1543
+
1544
+            drugname.push(...medicalList)
1545
+            
1546
+            this.medicals = drugname
1523
           }
1547
           }
1524
       })
1548
       })
1525
     },
1549
     },
1526
-    changeDrugName(name){
1527
-       console.log("name",name)
1528
-      var arr = name.split("(自备药)");
1550
+    changeDrugName(id){
1551
+      var drug_name = ""
1552
+      var name = ""
1553
+      var way = 0
1554
+      for(let i=0;i<this.medicals.length;i++){
1555
+        if(id == this.medicals[i].id){
1556
+          name = this.medicals[i].drug_name
1557
+          way  = this.medicals[i].way
1558
+        }
1559
+      }
1560
+      if(way == 1){
1561
+        drug_name = name
1562
+      }
1563
+      if(way == 2){
1564
+        var arr = name.split("(自备药)")
1565
+        drug_name = arr[0]
1566
+      }
1529
         const params = {
1567
         const params = {
1530
-          drug_name:arr[0],
1531
-          patient_id:this.$route.query.patient_id
1568
+          drug_name:drug_name,
1569
+          patient_id:this.$route.query.patient_id,
1570
+          way:way,
1571
+          id:id,
1532
         }
1572
         }
1533
-        console.log("params",params)
1534
       getDrugDescByDrugName(params).then(response=>{
1573
       getDrugDescByDrugName(params).then(response=>{
1535
           if(response.data.state == 1){
1574
           if(response.data.state == 1){
1536
              var drugspec = response.data.data.drugspec
1575
              var drugspec = response.data.data.drugspec
1537
-             console.log("drugspec",drugspec)
1576
+          
1577
+             if(drugspec[0].drug_spec !=0){
1578
+                this.nameForm.advice_desc = drugspec[0].drug_spec
1579
+             }
1580
+             if(drugspec[0].min_unit!=0){
1581
+                 this.nameForm.drug_spec_unit = drugspec[0].min_unit
1582
+             }
1583
+             if(drugspec[0].delivery_way!=0){
1584
+                 this.nameForm.delivery_way = drugspec[0].delivery_way
1585
+             }
1586
+             if(drugspec[0].execution_frequency!=0){
1587
+                this.nameForm.execution_frequency = drugspec[0].execution_frequency
1588
+             }
1589
+             if(drugspec[0].single_dose !=0){
1590
+                this.nameForm.single_dose = drugspec[0].single_dose.toString()
1591
+             } 
1592
+             if(drugspec[0].min_unit !=0){
1593
+               this.nameForm.single_dose_unit = drugspec[0].min_unit
1594
+             }
1595
+             if(drugspec[0].min_unit!=0){
1596
+               this.nameForm.prescribing_number_unit = drugspec[0].min_unit
1597
+             }
1598
+              
1599
+             if( drugspec[0].prescribing_number!=0){
1600
+                this.nameForm.prescribing_number = drugspec[0].prescribing_number.toString()
1601
+             }
1602
+             var countInfo = response.data.data.countInfo
1603
+             console.log("countInfo",countInfo)
1604
+             var countOut = response.data.data.countout
1605
+             console.log("countout",countOut)
1606
+             var arr = countInfo[0].Count - countOut[0].Count
1607
+             console.log("arr222",arr)
1538
              this.drugSpec = drugspec
1608
              this.drugSpec = drugspec
1539
           }
1609
           }
1540
       })
1610
       })

+ 166 - 10
src/xt_pages/dialysis/details/dialog/adviceDialog/EditGroupAdvice.vue View File

358
     <el-dialog
358
     <el-dialog
359
       :title="nameFormTitle"
359
       :title="nameFormTitle"
360
       :visible.sync="nameFormVisible"
360
       :visible.sync="nameFormVisible"
361
-      width="700px"
361
+      width="800px"
362
     >
362
     >
363
       <el-form
363
       <el-form
364
         ref="nameForm"
364
         ref="nameForm"
365
         :rules="nameRules"
365
         :rules="nameRules"
366
         :model="nameForm"
366
         :model="nameForm"
367
-        label-width="90px"
367
+        label-width="120px"
368
       >
368
       >
369
         <el-row>
369
         <el-row>
370
-          <el-col :span="12">
370
+          <el-col :span="10">
371
             <el-form-item label="医嘱内容 :" required prop="advice_name">
371
             <el-form-item label="医嘱内容 :" required prop="advice_name">
372
-              <el-input v-model="nameForm.advice_name"></el-input>
372
+              <!-- <el-input v-model="nameForm.advice_name"></el-input> -->
373
+               <el-select
374
+                v-model="nameForm.advice_name"
375
+                filterable
376
+                clearable
377
+                allow-create
378
+                :disabled="isChild"
379
+                placeholder="请选择(输入可搜索)"
380
+                style="width:200px"
381
+                @change="changeDrugName"
382
+              >
383
+                <el-option
384
+                  v-for="item in medicals"
385
+                  :key="item.id"
386
+                  :label="item.drug_name"
387
+                  :value="item.id"
388
+                ></el-option>
389
+              </el-select>
373
             </el-form-item>
390
             </el-form-item>
374
           </el-col>
391
           </el-col>
375
-          <el-col :span="12">
392
+          <el-col :span="14">
376
             <!--<el-form-item label="规格 :" prop="advice_desc">-->
393
             <!--<el-form-item label="规格 :" prop="advice_desc">-->
377
             <!--<el-input v-model="nameForm.advice_desc"></el-input>-->
394
             <!--<el-input v-model="nameForm.advice_desc"></el-input>-->
378
             <!--</el-form-item>-->
395
             <!--</el-form-item>-->
379
             <el-form-item label="药品规格 :" prop="advice_desc">
396
             <el-form-item label="药品规格 :" prop="advice_desc">
380
-              <el-col :span="8">
381
-                <el-input v-model="nameForm.advice_desc"></el-input>
397
+              <el-col :span="10">
398
+                <!-- <el-input v-model="nameForm.advice_desc"></el-input> -->
399
+                 <el-select
400
+                  v-model="nameForm.advice_desc"
401
+                  filterable
402
+                  clearable
403
+                  allow-create
404
+                  :disabled="isChild"
405
+                  placeholder="请选择(输入可搜索)"
406
+                  style="width:150px"
407
+                >
408
+                  <el-option
409
+                    v-for="item in drugSpec"
410
+                    :key="item.id"
411
+                    :label="item.drug_spec"
412
+                    :value="item.drug_spec"
413
+                  ></el-option>
414
+                 </el-select>
382
               </el-col>
415
               </el-col>
383
               <el-col class="line" :span="2">&nbsp;</el-col>
416
               <el-col class="line" :span="2">&nbsp;</el-col>
384
-              <el-col :span="14">
417
+              <el-col :span="10">
385
                 <el-select
418
                 <el-select
386
                   v-model="nameForm.drug_spec_unit"
419
                   v-model="nameForm.drug_spec_unit"
387
                   filterable
420
                   filterable
520
   SaveEditAdvices
553
   SaveEditAdvices
521
 } from "@/api/advice";
554
 } from "@/api/advice";
522
 import { jsGetAge, uParseTime } from "@/utils/tools";
555
 import { jsGetAge, uParseTime } from "@/utils/tools";
523
-
556
+import { getSelfMedicalList,getDrugDescByDrugName } from "@/api/drug/drug"
524
 export default {
557
 export default {
525
   name: "AddGroupAdvice",
558
   name: "AddGroupAdvice",
526
   data() {
559
   data() {
585
       adminusername: "",
618
       adminusername: "",
586
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
619
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
587
       selectedTemplate: [],
620
       selectedTemplate: [],
588
-      allSelectedTemplate: []
621
+      allSelectedTemplate: [],
622
+      medicals:[],
623
+      drugSpec:[]
589
     };
624
     };
590
   },
625
   },
591
   props: {
626
   props: {
794
         .catch(() => {});
829
         .catch(() => {});
795
     },
830
     },
796
     submitNameForm(formName) {
831
     submitNameForm(formName) {
832
+       if(typeof(this.nameForm.advice_name) == "string"){
833
+         
834
+          this.nameForm.advice_name == this.nameForm.advice_name
835
+      }
836
+
837
+      if(typeof(this.nameForm.advice_name) == "number"){
838
+          var drug_name = ""
839
+          var name = ""
840
+          var way = 0
841
+          this.nameForm.drug_id = this.nameForm.advice_name
842
+          for(let i=0;i<this.medicals.length;i++){
843
+            if(this.nameForm.advice_name == this.medicals[i].id){
844
+              name = this.medicals[i].drug_name
845
+              way  = this.medicals[i].way
846
+            }
847
+          }
848
+          if(way == 1){
849
+            drug_name = name
850
+          }
851
+          if(way == 2){
852
+            var arr = name.split("(自备药)")
853
+            drug_name = arr[0]
854
+          }
855
+          
856
+          this.nameForm.advice_name = drug_name
857
+          this.nameForm.way = way
858
+      }
797
       var _this = this;
859
       var _this = this;
798
       this.$refs[formName].validate(valid => {
860
       this.$refs[formName].validate(valid => {
799
         if (valid) {
861
         if (valid) {
2161
           this.groupEditFormVisible = false;
2223
           this.groupEditFormVisible = false;
2162
         }
2224
         }
2163
       });
2225
       });
2226
+    },
2227
+   getSelfMedicalList(){
2228
+        const params = {
2229
+          patient_id:this.$route.query.patient_id
2230
+        }
2231
+      getSelfMedicalList(params).then(response=>{
2232
+          if(response.data.state == 1){
2233
+            var medicalList =  response.data.data.medicalList
2234
+            //way字段区分数据源:1代表来自基础库  2代表来自药品库
2235
+            for(let i=0;i<medicalList.length;i++){
2236
+               medicalList[i].way = 2
2237
+            }
2238
+            for(let i=0;i<medicalList.length;i++){
2239
+               medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
2240
+            }
2241
+            var drugname = response.data.data.drugName
2242
+            for(let i=0;i<drugname.length;i++){
2243
+               drugname[i].way = 1
2244
+            }
2245
+
2246
+            drugname.push(...medicalList)
2247
+            console.log("222222222我的",drugname)
2248
+            this.medicals = drugname
2249
+          }
2250
+      })
2251
+    },
2252
+  changeDrugName(id){
2253
+      var drug_name = ""
2254
+      var name = ""
2255
+      var way = 0
2256
+      for(let i=0;i<this.medicals.length;i++){
2257
+        if(id == this.medicals[i].id){
2258
+          name = this.medicals[i].drug_name
2259
+          way  = this.medicals[i].way
2260
+        }
2261
+      }
2262
+      if(way == 1){
2263
+        drug_name = name
2264
+      }
2265
+      if(way == 2){
2266
+        var arr = name.split("(自备药)")
2267
+        drug_name = arr[0]
2268
+      }
2269
+        const params = {
2270
+          drug_name:drug_name,
2271
+          patient_id:this.$route.query.patient_id,
2272
+          way:way,
2273
+        }
2274
+      getDrugDescByDrugName(params).then(response=>{
2275
+          if(response.data.state == 1){
2276
+             var drugspec = response.data.data.drugspec
2277
+             console.log("drugspec999",drugspec)
2278
+             if(drugspec[0].drug_spec !=0){
2279
+                this.nameForm.advice_desc = ""
2280
+                this.nameForm.advice_desc = drugspec[0].drug_spec
2281
+             }
2282
+             if(drugspec[0].min_unit!=0){
2283
+                 this.nameForm.drug_spec_unit = ""
2284
+                 this.nameForm.drug_spec_unit = drugspec[0].min_unit
2285
+             }
2286
+             if(drugspec[0].delivery_way!=0){
2287
+                 this.nameForm.delivery_way = ""
2288
+                 this.nameForm.delivery_way = drugspec[0].delivery_way
2289
+             }
2290
+             if(drugspec[0].execution_frequency!=0){
2291
+                this.nameForm.execution_frequency = ""
2292
+                this.nameForm.execution_frequency = drugspec[0].execution_frequency
2293
+             }
2294
+             if(drugspec[0].single_dose !=0){
2295
+                this.nameForm.single_dose = ""
2296
+                this.nameForm.single_dose = drugspec[0].single_dose.toString()
2297
+             } 
2298
+             if(drugspec[0].min_unit !=0){
2299
+              this.nameForm.single_dose_unit = ""
2300
+               this.nameForm.single_dose_unit = drugspec[0].min_unit
2301
+             }
2302
+             if(drugspec[0].min_unit!=0){
2303
+               this.nameForm.prescribing_number_unit = ""
2304
+               this.nameForm.prescribing_number_unit = drugspec[0].min_unit
2305
+             }
2306
+              
2307
+             if( drugspec[0].prescribing_number!=0){
2308
+               this.nameForm.prescribing_number = ""
2309
+                this.nameForm.prescribing_number = drugspec[0].prescribing_number.toString()
2310
+             }
2311
+          
2312
+             this.drugSpec = drugspec
2313
+          }
2314
+      })
2315
+    
2164
     }
2316
     }
2165
   },
2317
   },
2166
   watch: {
2318
   watch: {
2167
     "selectedTemp.list": function() {
2319
     "selectedTemp.list": function() {
2168
       this.calcselectedTemp();
2320
       this.calcselectedTemp();
2169
     }
2321
     }
2322
+  },
2323
+  created(){
2324
+     //获取自备药
2325
+    this.getSelfMedicalList()
2170
   }
2326
   }
2171
 };
2327
 };
2172
 </script>
2328
 </script>

+ 1 - 1
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue View File

1370
       },
1370
       },
1371
       setLastRecord: function(schedual,lastAssessmentAfterDislysis,lastPredialysisEvaluation,lastDialysisPrescribe,lastDryWeightDislysis,system_prescribe) {
1371
       setLastRecord: function(schedual,lastAssessmentAfterDislysis,lastPredialysisEvaluation,lastDialysisPrescribe,lastDryWeightDislysis,system_prescribe) {
1372
         
1372
         
1373
-        console.log("德玛西亚22222",schedual)
1373
+       
1374
         this.treatment_mode = this.$store.getters.treatment_mode
1374
         this.treatment_mode = this.$store.getters.treatment_mode
1375
         console.log("99999",this.treatment_mode)
1375
         console.log("99999",this.treatment_mode)
1376
         this.perfusion_apparatus = getDataConfig(
1376
         this.perfusion_apparatus = getDataConfig(

+ 190 - 37
src/xt_pages/outpatientRegistration/index.vue View File

8
             <div class="formMain">
8
             <div class="formMain">
9
                 <el-form class="basicForm" ref="form" :model="form" label-width="80px">
9
                 <el-form class="basicForm" ref="form" :model="form" label-width="80px">
10
                     <el-form-item label="结算类型">
10
                     <el-form-item label="结算类型">
11
-                        <el-select v-model="value" placeholder="请选择">
11
+                        <el-select v-model="form.settlementValue" placeholder="请选择">
12
                             <el-option
12
                             <el-option
13
-                            v-for="item in options"
13
+                            v-for="item in settlement"
14
                             :key="item.value"
14
                             :key="item.value"
15
                             :label="item.label"
15
                             :label="item.label"
16
                             :value="item.value">
16
                             :value="item.value">
18
                         </el-select>
18
                         </el-select>
19
                     </el-form-item>
19
                     </el-form-item>
20
                     <el-form-item class="specialFormItem" label="医保卡号">
20
                     <el-form-item class="specialFormItem" label="医保卡号">
21
-                        <el-input v-model="form.name"></el-input>
21
+                        <el-input v-model="form.medicalInsuranceCard"></el-input>
22
                         <el-button type="primary">读卡</el-button>
22
                         <el-button type="primary">读卡</el-button>
23
                     </el-form-item>
23
                     </el-form-item>
24
                     <el-form-item label="患者姓名">
24
                     <el-form-item label="患者姓名">
25
                         <el-input v-model="form.name"></el-input>
25
                         <el-input v-model="form.name"></el-input>
26
                     </el-form-item>
26
                     </el-form-item>
27
                     <el-form-item label="性别">
27
                     <el-form-item label="性别">
28
-                        <el-select v-model="value" placeholder="请选择">
28
+                        <el-select v-model="form.sex" placeholder="请选择">
29
                             <el-option
29
                             <el-option
30
-                            v-for="item in options"
30
+                            v-for="item in sex"
31
                             :key="item.value"
31
                             :key="item.value"
32
                             :label="item.label"
32
                             :label="item.label"
33
                             :value="item.value">
33
                             :value="item.value">
35
                         </el-select>
35
                         </el-select>
36
                     </el-form-item>
36
                     </el-form-item>
37
                     <el-form-item label="证件类型">
37
                     <el-form-item label="证件类型">
38
-                        <el-select v-model="value" placeholder="请选择">
38
+                        <el-select v-model="form.certificates" placeholder="请选择">
39
                             <el-option
39
                             <el-option
40
-                            v-for="item in options"
40
+                            v-for="item in certificates"
41
                             :key="item.value"
41
                             :key="item.value"
42
                             :label="item.label"
42
                             :label="item.label"
43
                             :value="item.value">
43
                             :value="item.value">
45
                         </el-select>
45
                         </el-select>
46
                     </el-form-item>
46
                     </el-form-item>
47
                     <el-form-item label="医疗类别">
47
                     <el-form-item label="医疗类别">
48
-                        <el-select v-model="value" placeholder="请选择">
48
+                        <el-select v-model="form.medicalCare" placeholder="请选择">
49
                             <el-option
49
                             <el-option
50
-                            v-for="item in options"
50
+                            v-for="item in medicalCare"
51
                             :key="item.value"
51
                             :key="item.value"
52
                             :label="item.label"
52
                             :label="item.label"
53
                             :value="item.value">
53
                             :value="item.value">
55
                         </el-select>
55
                         </el-select>
56
                     </el-form-item>
56
                     </el-form-item>
57
                     <el-form-item label="出生日期">
57
                     <el-form-item label="出生日期">
58
-                        <el-date-picker v-model="value1" type="date" placeholder="选择日期"></el-date-picker>
58
+                        <el-date-picker v-model="form.birthday" type="date" @change="getBirthday" placeholder="选择日期"></el-date-picker>
59
                     </el-form-item>
59
                     </el-form-item>
60
                     <el-form-item label="年龄">
60
                     <el-form-item label="年龄">
61
-                        <el-input v-model="form.name"></el-input>
61
+                        <el-input v-model="form.age" readonly=""></el-input>
62
                     </el-form-item>
62
                     </el-form-item>
63
                     <el-form-item label="证件号码">
63
                     <el-form-item label="证件号码">
64
-                        <el-input v-model="form.name"></el-input>
64
+                        <el-input v-model="form.idCard"></el-input>
65
                     </el-form-item>
65
                     </el-form-item>
66
                 </el-form>
66
                 </el-form>
67
             </div>
67
             </div>
69
             <div class="formMain">
69
             <div class="formMain">
70
                 <el-form class="basicForm" ref="form" :model="form" label-width="80px">
70
                 <el-form class="basicForm" ref="form" :model="form" label-width="80px">
71
                     <el-form-item label="挂号类型">
71
                     <el-form-item label="挂号类型">
72
-                        <el-select v-model="value" placeholder="请选择">
72
+                        <el-select v-model="form.register" placeholder="请选择">
73
                             <el-option
73
                             <el-option
74
-                            v-for="item in options"
74
+                            v-for="item in register"
75
                             :key="item.value"
75
                             :key="item.value"
76
                             :label="item.label"
76
                             :label="item.label"
77
                             :value="item.value">
77
                             :value="item.value">
79
                         </el-select>
79
                         </el-select>
80
                     </el-form-item>
80
                     </el-form-item>
81
                     <el-form-item label="医生">
81
                     <el-form-item label="医生">
82
-                        <el-select v-model="value" placeholder="请选择">
82
+                        <el-select v-model="form.doctor" placeholder="请选择">
83
                             <el-option
83
                             <el-option
84
-                            v-for="item in options"
84
+                            v-for="item in doctor"
85
                             :key="item.value"
85
                             :key="item.value"
86
                             :label="item.label"
86
                             :label="item.label"
87
                             :value="item.value">
87
                             :value="item.value">
89
                         </el-select>
89
                         </el-select>
90
                     </el-form-item>
90
                     </el-form-item>
91
                     <el-form-item label="科室">
91
                     <el-form-item label="科室">
92
-                        <el-select v-model="value" placeholder="请选择">
92
+                        <el-select v-model="form.department" placeholder="请选择">
93
                             <el-option
93
                             <el-option
94
-                            v-for="item in options"
94
+                            v-for="item in department"
95
                             :key="item.value"
95
                             :key="item.value"
96
                             :label="item.label"
96
                             :label="item.label"
97
                             :value="item.value">
97
                             :value="item.value">
99
                         </el-select>
99
                         </el-select>
100
                     </el-form-item>
100
                     </el-form-item>
101
                     <el-form-item>
101
                     <el-form-item>
102
-                        <el-checkbox v-model="checked">是否需要工本费</el-checkbox>
102
+                        <el-checkbox v-model="form.costChecked">是否需要工本费</el-checkbox>
103
                     </el-form-item>
103
                     </el-form-item>
104
                     <el-form-item label="挂号费">
104
                     <el-form-item label="挂号费">
105
-                        <el-input v-model="form.name"></el-input>
105
+                        <el-input v-model.number="form.registrationFee"></el-input>
106
                     </el-form-item>
106
                     </el-form-item>
107
                     <el-form-item label="诊疗费">
107
                     <el-form-item label="诊疗费">
108
-                        <el-input v-model="form.name"></el-input>
108
+                        <el-input v-model.number="form.medicalExpenses"></el-input>
109
                     </el-form-item>
109
                     </el-form-item>
110
                     <el-form-item label="工本费">
110
                     <el-form-item label="工本费">
111
-                        <el-input v-model="form.name"></el-input>
111
+                        <el-input v-model.number="form.cost" :readonly="!form.costChecked"></el-input>
112
                     </el-form-item>
112
                     </el-form-item>
113
                     <el-form-item label="合计">
113
                     <el-form-item label="合计">
114
-                        <el-input v-model="form.name"></el-input>
114
+                        <el-input v-model.number="total" readonly></el-input>
115
                     </el-form-item>
115
                     </el-form-item>
116
                     <el-form-item>
116
                     <el-form-item>
117
                         <!-- <el-input v-model="form.name"></el-input> -->
117
                         <!-- <el-input v-model="form.name"></el-input> -->
118
                     </el-form-item>
118
                     </el-form-item>
119
                 </el-form>
119
                 </el-form>
120
-                <el-button style="float:right" type="primary">挂号</el-button>
120
+                <el-button style="float:right" @click="getForm" type="primary">挂号</el-button>
121
             </div>
121
             </div>
122
             
122
             
123
         </div>
123
         </div>
126
 
126
 
127
 <script>
127
 <script>
128
 import BreadCrumb from '@/xt_pages/components/bread-crumb'
128
 import BreadCrumb from '@/xt_pages/components/bread-crumb'
129
+const moment = require('moment')
129
 export default {
130
 export default {
130
     components:{
131
     components:{
131
         BreadCrumb
132
         BreadCrumb
136
                 { path: false, name: '门诊挂号' },
137
                 { path: false, name: '门诊挂号' },
137
                 { path: false, name: '门诊挂号' }
138
                 { path: false, name: '门诊挂号' }
138
             ],
139
             ],
139
-            form:{},
140
-            options: [{
141
-                value: '选项1',
142
-                label: '黄金糕'
140
+            form:{
141
+                settlementValue: '',
142
+                medicalInsuranceCard:'',
143
+                name:'',
144
+                sex:'',
145
+                certificates:'',
146
+                medicalCare:'',
147
+                birthday:'',
148
+                age:'',
149
+                idCard:'',
150
+                register:'',
151
+                doctor:'',
152
+                department:'',
153
+                costChecked:false,
154
+                registrationFee:'',
155
+                medicalExpenses:'',
156
+                cost:'',
157
+                total: ''
158
+
159
+            
160
+            },
161
+            settlement: [{
162
+                value: 1,
163
+                label: '医保'
143
                 }, {
164
                 }, {
144
-                value: '选项2',
145
-                label: '双皮奶'
165
+                value: 2,
166
+                label: '自费'
167
+            }],
168
+            sex: [{
169
+                value: 1,
170
+                label: '男'
146
                 }, {
171
                 }, {
147
-                value: '选项3',
148
-                label: '蚵仔煎'
172
+                value: 2,
173
+                label: '女'
174
+            }],
175
+            certificates: [{
176
+                value: 1,
177
+                label: '内地身份证'
149
                 }, {
178
                 }, {
150
-                value: '选项4',
151
-                label: '龙须面'
179
+                value: 2,
180
+                label: "社保卡"
181
+                },{
182
+                value: 3,
183
+                label: "护照"
184
+                },{
185
+                value: 4,
186
+                label: "军官证"
187
+                },{
188
+                value: 5,
189
+                label: "台胞证"
190
+                },{
191
+                value: 6,
192
+                label: "港澳地区身份证"
193
+            }],
194
+            medicalCare: [{
195
+                value: 1,
196
+                label: '普通门诊'
197
+                }, {
198
+                value: 2,
199
+                label: "门诊大病"
200
+                },{
201
+                value: 3,
202
+                label: "重疾特药"
203
+                },{
204
+                value: 4,
205
+                label: "门诊特检"
206
+                },{
207
+                value: 5,
208
+                label: "健康接种"
209
+                },{
210
+                value: 6,
211
+                label: "预防接种"
212
+                },
213
+                {
214
+                value: 7,
215
+                label: "门诊输液"
216
+            }],
217
+            register: [{
218
+                value: 1,
219
+                label: '普通'
152
                 }, {
220
                 }, {
153
-                value: '选项5',
154
-                label: '北京烤鸭'
221
+                value: 2,
222
+                label: "主治"
223
+                },{
224
+                value: 3,
225
+                label: "主任"
226
+                },{
227
+                value: 4,
228
+                label: "免收诊金"
229
+                },{
230
+                value: 5,
231
+                label: "专家"
155
             }],
232
             }],
156
-            value: ''
157
         }
233
         }
234
+    },
235
+    computed:{
236
+        total(){
237
+            if(this.form.registrationFee || this.form.medicalExpenses || this.form.cost){
238
+                return parseFloat(this.form.registrationFee ? this.form.registrationFee : 0) + parseFloat(this.form.medicalExpenses ? this.form.medicalExpenses : 0) + parseFloat(this.form.cost ? this.form.cost : 0) 
239
+            }
240
+        }
241
+    },
242
+    methods:{
243
+        getBirthday(date){
244
+            console.log(date)
245
+            let curTime = moment(new Date(date)).format('YYYY-MM-DD')
246
+            console.log(this.jsGetAge(curTime))
247
+
248
+            this.form.age = this.jsGetAge(curTime)
249
+        },
250
+        jsGetAge(strBirthday) { //传入形式yyyy-MM-dd
251
+            //strBirthday = util.formatTime(strBirthday);转换成yyyy-MM-dd形式
252
+            var returnAge
253
+            var strBirthdayArr = strBirthday.split('-')
254
+            var birthYear = strBirthdayArr[0]
255
+            var birthMonth = strBirthdayArr[1]
256
+            var birthDay = strBirthdayArr[2]
257
+            var d = new Date()
258
+            var nowYear = d.getFullYear()
259
+            var nowMonth = d.getMonth() + 1
260
+            var nowDay = d.getDate()
261
+            if (nowYear == birthYear) {
262
+            returnAge = 0 //同年 则为0岁
263
+            } else {
264
+            var ageDiff = nowYear - birthYear //年之差
265
+            if (ageDiff > 0) {
266
+                if (nowMonth == birthMonth) {
267
+                var dayDiff = nowDay - birthDay //日之差
268
+                if (dayDiff < 0) {
269
+                    returnAge = ageDiff - 1
270
+                } else {
271
+                    returnAge = ageDiff
272
+                }
273
+                } else {
274
+                var monthDiff = nowMonth - birthMonth //月之差
275
+                if (monthDiff < 0) {
276
+                    returnAge = ageDiff - 1
277
+                } else {
278
+                    returnAge = ageDiff
279
+                }
280
+                }
281
+            } else {
282
+                returnAge = -1 //返回-1 表示出生日期输入错误 晚于今天
283
+            }
284
+            }
285
+            return returnAge //返回周岁年龄
286
+        },
287
+        getForm(){
288
+            this.form.total = this.total
289
+            // console.log(this.form)
290
+            // console.log(JSON.parse(localStorage.getItem("temp")))
291
+            if(localStorage.getItem("temp")){
292
+                let a = JSON.parse(localStorage.getItem("temp"))
293
+                // let arr = []
294
+                a.push(this.form)
295
+                console.log(111,a)
296
+                localStorage.setItem("temp",JSON.stringify(a));
297
+                Object.keys(this.form).forEach((key)=>{
298
+                    this.form[key] = ''
299
+                })
300
+                this.$message({message: '添加成功',type: 'success'});
301
+            }else {
302
+                let arr = []
303
+                arr.push(this.form)
304
+                localStorage.setItem("temp",JSON.stringify(arr));
305
+                Object.keys(this.form).forEach((key)=>{
306
+                    this.form[key] = ''
307
+                })
308
+                this.$message({message: '添加成功',type: 'success'});
309
+            }
310
+        }   
158
     }
311
     }
159
 }
312
 }
160
 </script>
313
 </script>

+ 1 - 2
src/xt_pages/outpatientRegistration/registrationHistory.vue View File

26
                 </el-select>
26
                 </el-select>
27
             </div>
27
             </div>
28
             <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
28
             <el-table :data="tableData" border style="width: 100%;" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
29
-                <el-table-column align="center" prop="dialysis_no" label="序号" width="60">
30
-                    <template slot-scope="scope">1</template>
29
+                <el-table-column align="center" type="index" label="序号" width="60">
31
                 </el-table-column>
30
                 </el-table-column>
32
                 <el-table-column align="center" prop="name" label="时间" width="100">
31
                 <el-table-column align="center" prop="name" label="时间" width="100">
33
                     <template slot-scope="scope">{{ scope.row.date }}</template>
32
                     <template slot-scope="scope">{{ scope.row.date }}</template>

+ 53 - 0
src/xt_pages/sign/calling.vue View File

1
+<template>
2
+    <div class="main-contain">
3
+        <div class="position">
4
+            <bread-crumb :crumbs="crumbs"></bread-crumb>
5
+        </div>
6
+        <div class="app-container">
7
+            <el-tabs v-model="activeName">
8
+                <el-tab-pane label="透前叫号" name="first">
9
+                    <before-dialysis-calling></before-dialysis-calling>
10
+                </el-tab-pane>
11
+                <el-tab-pane label="上机叫号" name="second">
12
+                    <computer-calling></computer-calling>
13
+                </el-tab-pane>
14
+                <el-tab-pane label="诊台配置" name="third">
15
+                    <treatment-configure></treatment-configure>
16
+                </el-tab-pane>
17
+                <el-tab-pane label="叫号配置" name="fourth">
18
+                    <calling-configure></calling-configure>
19
+                </el-tab-pane>
20
+            </el-tabs>
21
+        </div>
22
+    </div>
23
+</template>
24
+
25
+
26
+<script>
27
+import BreadCrumb from "../components/bread-crumb";
28
+import beforeDialysisCalling from './components/beforeDialysisCalling'
29
+import computerCalling from './components/computerCalling'
30
+import treatmentConfigure from "./components/treatmentConfigure"
31
+import callingConfigure from './components/callingConfigure'
32
+export default {
33
+    components:{
34
+       BreadCrumb,
35
+       beforeDialysisCalling,
36
+       computerCalling,
37
+       treatmentConfigure,
38
+       callingConfigure 
39
+    },
40
+    data(){
41
+        return{
42
+            crumbs: [
43
+                { path: false, name: "透析管理" },
44
+                { path: "dialysis/board", name: "透析叫号" }
45
+            ],
46
+            activeName:'first'
47
+        }
48
+    },
49
+    methods:{
50
+    }
51
+}
52
+</script>
53
+      

+ 90 - 0
src/xt_pages/sign/components/beforeDialysisCalling.vue View File

1
+<template>
2
+    <div class="page_beforeDialysisCalling">
3
+        <div class="cell clearfix">
4
+            <label class="title"><span class="name">叫号状态</span> : </label>
5
+            <div class="time ">
6
+                <ul class="">
7
+                    <li v-for="option in patient_state" :key="option.value" @click="handleStateChange(option.value)" :class="patientStateVal == option.value ? 'active' : ''" >{{option.label}}
8
+                    </li>
9
+                </ul>
10
+            </div>
11
+        </div>
12
+        <div style="display:flex;justify-content: space-between;">
13
+            <div class="callingArea">
14
+                <waiting-called v-if="patientStateVal == 0"></waiting-called>
15
+                <called v-if="patientStateVal == 1"></called>
16
+            </div>
17
+            <div class="nowCalling" v-if="patientStateVal == 0">
18
+                <p class="nowCallingTitle">当前叫号</p>
19
+                <p class="nowCallingName">李小明</p>
20
+                <p class="nowCallingTime">签到时间:07:20</p>
21
+                <p class="nowCallingTime">下一位:张三</p>
22
+                <el-button style="margin: 30px 0 20px 0;">重新叫号</el-button>
23
+                <el-button type="primary" style="margin-left:0;">&ensp;&ensp;叫号&ensp;&ensp;</el-button>
24
+            </div>
25
+        </div>
26
+    </div>
27
+</template>
28
+
29
+
30
+<script>
31
+import waitingCalled from './waitingCalled'
32
+import called from './called'
33
+export default {
34
+    components:{
35
+        waitingCalled,
36
+        called
37
+    },
38
+    data(){
39
+        return{
40
+            patient_state:[
41
+                {value: 0,label: '待叫号'},
42
+                {value: 1,label: '已叫号'},
43
+            ],
44
+            patientStateVal: 0,
45
+        }
46
+    },
47
+    methods:{
48
+        handleStateChange: function(index) {
49
+            this.patientStateVal = index
50
+        },
51
+    }
52
+}
53
+</script>
54
+
55
+<style lang="scss" scoped>
56
+.callingArea{
57
+    display: flex;
58
+    flex-wrap: wrap;
59
+    width: 88%;
60
+    // @media only screen and (max-width: 1340px) {
61
+    //     width:750px;
62
+    // }
63
+
64
+    // @media only screen and (min-width: 415px) and (max-width: 767px) {
65
+    // }
66
+}
67
+.nowCalling{
68
+    height: 313px;
69
+    border: 1px solid #e5e5ee;
70
+    // flex: 1;
71
+    width: 12%;
72
+    text-align: center;
73
+    .nowCallingTitle{
74
+        font-size: 20px;
75
+        font-weight: 600;
76
+        margin-top: 20px;
77
+        text-align: center;
78
+    }
79
+    .nowCallingName{
80
+        color: #338AFB;
81
+        font-size: 18px;
82
+        margin-top: 10px;
83
+        font-weight: 600;
84
+    }
85
+    .nowCallingTime{
86
+        font-size: 16px;
87
+        margin-top: 30px;
88
+    }
89
+}
90
+</style>

+ 93 - 0
src/xt_pages/sign/components/called.vue View File

1
+<template>
2
+    <div class="page_called">
3
+        <div class="calledOne" v-for="item in 12" :key="item">
4
+            <div class="calledOneLeft">
5
+                <img src="https://images.shengws.com/201809182128111.png?imageView2/2/w/500/h/500/q/90" alt="">
6
+                <div class="name">
7
+                    <p>吴保龄</p>
8
+                    <p>
9
+                        <span class="nameTips">签到时间:07:00:00</span>
10
+                        <span class="nameTips" v-if="index == 1">床位号:A区5号床</span>
11
+                        <span class="nameTips" v-else>叫号时间:07:30:00</span>
12
+                    </p>
13
+                    <p>
14
+                        <span class="nameTips">透前体重:59kg</span>
15
+                        <span class="nameTips lastNameTips">透前血压:120/110mmHg</span>
16
+                    </p>
17
+                </div>
18
+            </div>
19
+            <div class="calledOneRight" v-if="index == 1">
20
+                <img src="../../../assets/img/volume.png" alt="">
21
+            </div>
22
+        </div>
23
+    </div>
24
+</template>
25
+
26
+<script>
27
+export default {
28
+    props:{
29
+        index:Number
30
+    },
31
+    data(){
32
+        return{
33
+
34
+        }
35
+    },
36
+}
37
+</script>
38
+
39
+
40
+<style lang="scss" scoped>
41
+.page_called{
42
+    .calledOne{
43
+        border: 1px #e5e5ee solid;
44
+        padding: 9px 0;
45
+        margin: 0 15px 15px 0;
46
+        float: left;
47
+        width: 360px;
48
+        cursor: pointer;
49
+        display: flex;
50
+        justify-content: space-between;
51
+        align-items: center;
52
+        padding: 10px;
53
+        .calledOneLeft{
54
+            display: flex;
55
+            img{
56
+                width: 45px;
57
+                height: 45px;
58
+                border-radius: 50%;
59
+                margin-right: 15px;
60
+            }
61
+            .name{
62
+                >p:first-child{
63
+                    font-size: 16px;
64
+                    font-weight: bold;
65
+                    color:#000;
66
+                }
67
+                >p:nth-of-type(2){
68
+                    font-size: 12px;
69
+                    color:#999999;
70
+                    margin-top: 6px;
71
+                }
72
+                >p:nth-of-type(3){
73
+                    font-size: 12px;
74
+                    color:#999999;
75
+                    margin-top: 3px;
76
+                }
77
+                .nameTips{
78
+                    margin-right:10px;
79
+                    display: inline-block;
80
+                }
81
+                
82
+            }
83
+            
84
+        }
85
+        .calledOneRight{
86
+            img{
87
+                width: 30px;
88
+                margin-top: 8px;
89
+            }
90
+        }
91
+    }
92
+}
93
+</style>

+ 160 - 0
src/xt_pages/sign/components/callingConfigure.vue View File

1
+<template>
2
+    <div class="page_callingConfigure">
3
+        <div class="cell clearfix">
4
+            就诊状态显示屏幕切换屏幕时长配置(秒) : 
5
+            <div class="time ">
6
+                <el-input-number v-model="num" @change="handleChange" :min="1"></el-input-number>
7
+            </div>
8
+        </div>
9
+        <div style="display:flex;">
10
+            <div class="configureBox">
11
+                <div class="configureBoxTitle">接诊叫号</div>
12
+                <div class="configureBoxMain">
13
+                    <div style="margin-bottom:10px;">单次叫号语音播报次数:<el-input-number v-model="num" @change="handleChange" :min="1"></el-input-number></div>
14
+                    <div style="margin-bottom:10px;">叫号语音内容设置:</div>
15
+                    <div style="margin-bottom:10px;">
16
+                        <p style="width:50px;display: inline-block;">请</p>
17
+                        <el-select style="width:140px;" v-model="type" placeholder="请选择">
18
+                            <el-option
19
+                            v-for="item in typeOptions"
20
+                            :key="item.value"
21
+                            :label="item.label"
22
+                            :value="item.value">
23
+                            </el-option>
24
+                        </el-select>
25
+                    </div>
26
+                    <div style="margin-bottom:10px;">
27
+                        <p style="width:50px;display: inline-block;">到</p>
28
+                        <el-select style="width:140px;" v-model="state" placeholder="请选择">
29
+                            <el-option
30
+                            v-for="item in stateOptions"
31
+                            :key="item.value"
32
+                            :label="item.label"
33
+                            :value="item.value">
34
+                            </el-option>
35
+                        </el-select>
36
+                    </div>
37
+                    <div style="margin-bottom:10px;" v-if="state == 2">
38
+                        <p style="width:50px;display: inline-block;"></p>
39
+                        <el-input style="width:200px;" v-model="input" placeholder="请输入内容"></el-input>
40
+                    </div>
41
+                    <div>就诊</div>
42
+                </div>
43
+                
44
+            </div>
45
+            <div class="configureBox" style="border-left:none;">
46
+                <div class="configureBoxTitle">上机叫号</div>
47
+                <div class="configureBoxMain">
48
+                    <div style="margin-bottom:10px;">单次叫号语音播报次数:<el-input-number v-model="num" @change="handleChange" :min="1"></el-input-number></div>
49
+                    <div style="margin-bottom:10px;">叫号语音内容设置:</div>
50
+                    <div style="margin-bottom:10px;">
51
+                        <p style="width:50px;display: inline-block;">请</p>
52
+                        <el-select style="width:140px;" v-model="type" placeholder="请选择">
53
+                            <el-option
54
+                            v-for="item in typeOptions"
55
+                            :key="item.value"
56
+                            :label="item.label"
57
+                            :value="item.value">
58
+                            </el-option>
59
+                        </el-select>
60
+                    </div>
61
+                    <div style="margin-bottom:10px;">
62
+                        <p style="width:50px;display: inline-block;">到</p>
63
+                        <el-select style="width:140px;" v-model="state" placeholder="请选择">
64
+                            <el-option
65
+                            v-for="item in stateOptions"
66
+                            :key="item.value"
67
+                            :label="item.label"
68
+                            :value="item.value">
69
+                            </el-option>
70
+                        </el-select>
71
+                    </div>
72
+                    <div style="margin-bottom:10px;" v-if="state == 2">
73
+                        <p style="width:50px;display: inline-block;"></p>
74
+                        <el-input style="width:200px;" v-model="input" placeholder="请输入内容"></el-input>
75
+                    </div>
76
+                    <div>上机</div>
77
+                </div>
78
+                
79
+            </div>
80
+        </div>
81
+        <div style="display:flex;margin-top:10px;">
82
+            <div style="width:480px;">
83
+                语音播报声音:
84
+                <el-radio-group v-model="radio">
85
+                    <el-radio :label="1">男生</el-radio>
86
+                    <el-radio :label="2">女生</el-radio>
87
+                </el-radio-group>
88
+            </div>
89
+            <div style="width:480px;">
90
+                隐藏接诊叫号区域:
91
+                <el-radio-group v-model="radio">
92
+                    <el-radio :label="1">是</el-radio>
93
+                    <el-radio :label="2">否</el-radio>
94
+                </el-radio-group>
95
+            </div>
96
+        </div>
97
+        <div style="display:flex;margin-top:10px;">
98
+            <div style="width:480px;">
99
+                隐藏上机叫号区域:
100
+                <el-radio-group v-model="radio">
101
+                    <el-radio :label="1">是</el-radio>
102
+                    <el-radio :label="2">否</el-radio>
103
+                </el-radio-group>
104
+            </div>
105
+            <div style="width:480px;">
106
+                是否在透析管理页面显示排队叫号:
107
+                <el-radio-group v-model="radio">
108
+                    <el-radio :label="1">显示</el-radio>
109
+                    <el-radio :label="2">不显示</el-radio>
110
+                </el-radio-group>
111
+            </div>
112
+        </div>
113
+        <div style="display:flex;margin-top:10px;">
114
+            <div style="width:480px;">
115
+                是否在透析记录详情页面显示排队叫号:
116
+                <el-radio-group v-model="radio">
117
+                    <el-radio :label="1">显示</el-radio>
118
+                    <el-radio :label="2">不显示</el-radio>
119
+                </el-radio-group>
120
+            </div>
121
+        </div>
122
+    </div>
123
+</template>
124
+
125
+<script>
126
+export default {
127
+    data(){
128
+        return{
129
+            num:3,
130
+            typeOptions:[{ value: 1, label: '姓名'},{ value: 2, label: '透析号'}],
131
+            type: 1,
132
+            stateOptions:[{ value: 1, label: '智能匹配诊台'},{ value: 2, label: '自定义内容'}],
133
+            state: 1,
134
+            input:'',
135
+            radio:1
136
+        }
137
+    }
138
+}
139
+</script>
140
+
141
+
142
+<style lang="scss" scoped>
143
+.configureBox{
144
+    width:480px;
145
+    height: 300px;
146
+    border: 1px solid #e5e5e5;
147
+    .configureBoxTitle{
148
+        height: 40px;
149
+        text-align: center;
150
+        line-height: 40px;
151
+        background: rgb(245, 247, 250);
152
+        color:rgb(96, 98, 102);
153
+        font-weight: 600;
154
+        border-bottom: 1px solid #e5e5e5;
155
+    }
156
+    .configureBoxMain{
157
+        padding: 10px;
158
+    }
159
+}
160
+</style>

+ 82 - 0
src/xt_pages/sign/components/computerCalling.vue View File

1
+<template>
2
+    <div class="page_computerCalling">
3
+        <div class="cell clearfix">
4
+            <label class="title"><span class="name">叫号状态</span> : </label>
5
+            <div class="time ">
6
+                <ul class="">
7
+                    <li v-for="option in patient_state" :key="option.value" @click="handleStateChange(option.value)" :class="patientStateVal == option.value ? 'active' : ''" >{{option.label}}
8
+                    </li>
9
+                </ul>
10
+            </div>
11
+        </div>
12
+        <div style="display:flex;justify-content: space-between;">
13
+            <div class="callingArea">
14
+                <called v-if="patientStateVal == 0" :index='1'></called>
15
+                <called v-if="patientStateVal == 1"></called>
16
+            </div>
17
+            <div class="nowCalling" v-if="patientStateVal == 0">
18
+                <p class="nowCallingTitle">当前叫号</p>
19
+                <p class="nowCallingName">李小明</p>
20
+                <p class="nowCallingTime">签到时间:07:20</p>
21
+                <p class="nowCallingTime">下一位:张三</p>
22
+                <el-button style="margin: 30px 0 20px 0;">重新叫号</el-button>
23
+                <el-button type="primary" style="margin-left:0;">&ensp;&ensp;叫号&ensp;&ensp;</el-button>
24
+            </div>
25
+        </div>
26
+    </div>
27
+</template>
28
+
29
+<script>
30
+import called from './called'
31
+export default {
32
+    components:{
33
+       called 
34
+    },
35
+    data(){
36
+        return{
37
+            patient_state:[
38
+                {value: 0,label: '待叫号'},
39
+                {value: 1,label: '已叫号'},
40
+            ],
41
+            patientStateVal: 0,
42
+        }
43
+    },
44
+    methods:{
45
+        handleStateChange: function(index) {
46
+            this.patientStateVal = index
47
+        },
48
+    }
49
+}
50
+</script>
51
+
52
+
53
+<style lang="scss" scoped>
54
+.callingArea{
55
+    display: flex;
56
+    flex-wrap: wrap;
57
+    width: 86%;
58
+}
59
+.nowCalling{
60
+    height: 351px;
61
+    border: 1px solid #e5e5ee;
62
+    // flex: 1;
63
+    width: 14%;
64
+    text-align: center;
65
+    .nowCallingTitle{
66
+        font-size: 20px;
67
+        font-weight: 600;
68
+        margin-top: 20px;
69
+        text-align: center;
70
+    }
71
+    .nowCallingName{
72
+        color: #338AFB;
73
+        font-size: 18px;
74
+        margin-top: 10px;
75
+        font-weight: 600;
76
+    }
77
+    .nowCallingTime{
78
+        font-size: 16px;
79
+        margin-top: 30px;
80
+    }
81
+}
82
+</style>

+ 84 - 0
src/xt_pages/sign/components/treatmentConfigure.vue View File

1
+<template>
2
+    <div class="page_configure">
3
+        <div style="display:flex;align-items:center;margin-bottom:12px;justify-content: space-between;">
4
+            <div>接诊台列表</div>
5
+            <el-button type="primary" @click="newVisible = true">新增</el-button>
6
+        </div>
7
+        <el-table :data="tableData" border style="width: 100%">
8
+            <el-table-column prop="date" label="接诊台号" align="center"></el-table-column>
9
+            <el-table-column label="诊台负责医生" align="center">
10
+                <template slot-scope="scope">
11
+                    <el-tag size="medium">{{ scope.row.name }}</el-tag>
12
+                </template>
13
+            </el-table-column>
14
+            <el-table-column label="操作" align="center">
15
+                <template slot-scope="scope">
16
+                    <el-button size="mini" type="primary" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
17
+                    <el-button size="mini" type="danger" @click="handleDelete(scope.$index, scope.row)">删除</el-button>
18
+                </template>
19
+            </el-table-column>
20
+        </el-table>
21
+        <el-dialog title="新增诊台" width="800px" :visible.sync="newVisible" >
22
+            <el-form :model="form" :rules="rules" ref="form" label-width="140px">
23
+                <el-form-item label="诊台号 : " required prop="type">
24
+                    <el-input v-model.trim="form.type" placeholder="" ></el-input>
25
+                </el-form-item>
26
+                <el-form-item label="诊台负责医生 : " required  prop="doctor">
27
+                    <el-select style="width:100%" v-model="form.doctor" placeholder="请选择" multiple filterable allow-create default-first-option>
28
+                        <el-option
29
+                        v-for="item in typeOptions"
30
+                        :key="item.value"
31
+                        :label="item.label"
32
+                        :value="item.value">
33
+                        </el-option>
34
+                    </el-select>
35
+                </el-form-item>
36
+            </el-form>
37
+            <div slot="footer" class="dialog-footer">
38
+                <el-button @click="newVisible=false">取 消</el-button>
39
+                <el-button type="primary" @click="submitAction('form')">保 存</el-button>
40
+            </div>
41
+        </el-dialog>
42
+    </div>
43
+</template>
44
+
45
+<script>
46
+export default {
47
+    data(){
48
+        return{
49
+            tableData: [{
50
+                date: '2016-05-02',
51
+                name: '王小虎',
52
+                address: '上海市普陀区金沙江路 1518 弄'
53
+                }, {
54
+                date: '2016-05-04',
55
+                name: '王小虎',
56
+                address: '上海市普陀区金沙江路 1517 弄'
57
+                }, {
58
+                date: '2016-05-01',
59
+                name: '王小虎',
60
+                address: '上海市普陀区金沙江路 1519 弄'
61
+                }, {
62
+                date: '2016-05-03',
63
+                name: '王小虎',
64
+                address: '上海市普陀区金沙江路 1516 弄'
65
+            }],
66
+            newVisible:false,
67
+            form: {
68
+                id: 0,
69
+                type: "",
70
+                doctor:[],
71
+            },
72
+            rules: {
73
+              type: [{ required: true, message: "请输入诊台号" }],
74
+              doctor: [{ required: true, message: "请选择接诊台负责医生"}],  
75
+            },
76
+            typeOptions:[{ value: 1, label: '张三'},{ value: 2, label: '李四'}],
77
+        }
78
+    },
79
+    methods:{
80
+        handleEdit(){},
81
+        handleDelete(){},
82
+    }
83
+}
84
+</script>

+ 61 - 0
src/xt_pages/sign/components/waitingCalled.vue View File

1
+<template>
2
+    <div class="waitingCalled">
3
+        <div class="waitingOne" v-for="item in 12" :key="item">
4
+            <div class="waitingOneLeft">
5
+                <img src="https://images.shengws.com/201809182128111.png?imageView2/2/w/500/h/500/q/90" alt="">
6
+                <div class="name">
7
+                    <p>吴保龄</p>
8
+                    <p>签到时间:07:00:00</p>
9
+                </div>
10
+            </div>
11
+            <div class="waitingOneRight">
12
+                <img src="../../../assets/img/volume.png" alt="">
13
+            </div>
14
+        </div>
15
+    </div>
16
+</template>
17
+
18
+<style lang="scss" scoped>
19
+.waitingCalled{
20
+    .waitingOne{
21
+        border: 1px #e5e5ee solid;
22
+        padding: 9px 0;
23
+        margin: 0 15px 15px 0;
24
+        float: left;
25
+        width: 360px;
26
+        cursor: pointer;
27
+        display: flex;
28
+        justify-content: space-between;
29
+        align-items: center;
30
+        padding: 10px;
31
+        .waitingOneLeft{
32
+            display: flex;
33
+            img{
34
+                width: 45px;
35
+                height: 45px;
36
+                border-radius: 50%;
37
+                margin-right: 15px;
38
+            }
39
+            .name{
40
+                >p:first-child{
41
+                    font-size: 16px;
42
+                    font-weight: bold;
43
+                    color:#000;
44
+                }
45
+                >p:last-child{
46
+                    font-size: 12px;
47
+                    color:#999999;
48
+                    margin-top: 10px;
49
+                }
50
+            }
51
+            
52
+        }
53
+        .waitingOneRight{
54
+            img{
55
+                width: 30px;
56
+                margin-top: 6px;
57
+            }
58
+        }
59
+    }
60
+}
61
+</style>

+ 201 - 0
src/xt_pages/sign/lineUp.vue View File

1
+<template>
2
+    <div class="app-container">
3
+        <div class="page_lineUp">
4
+            <div class="lineUpTitle">
5
+                <div>唐山朝阳医院<span>温馨提示:请注意排队叫号,依次叫号就诊上机,谢谢配合</span></div>
6
+                <div>2020.8.18   07:22(星期四)</div>
7
+            </div>
8
+            <div class="lineUpMain">
9
+                <div class="lineUpMainLeft">
10
+                    <div class="lineUpMainLeftTitle">
11
+                        <p style="width:14%">排号</p>
12
+                        <p style="width:14%">姓名</p>
13
+                        <p style="width:14%">病例号</p>
14
+                        <p style="width:14%">床位号</p>
15
+                        <p style="width:14%">治疗状态</p>
16
+                        <p style="width:14%">上机时间</p>
17
+                        <p style="width:14%">预计下机时间</p>
18
+                    </div>
19
+                    <div class="lineUpList">
20
+                        <div class="lineUpListOne" v-for="item in 8" :key="item">
21
+                            <p style="width:14%">P01</p>
22
+                            <p style="width:14%">张*等</p>
23
+                            <p style="width:14%">001</p>
24
+                            <p style="width:14%">普通区1号床</p>
25
+                            <p style="width:14%">已下机</p>
26
+                            <p style="width:14%">09:01</p>
27
+                            <p style="width:14%">09:01</p>
28
+                        </div>
29
+                    </div>
30
+                </div> 
31
+                <div class="callingBox">
32
+                    <div class="callingBoxLeft">
33
+                        <div class="callingTitle"><span style="margin: 0 auto;">接<br />诊<br />叫<br />号</span></div>
34
+                        <div style="flex: 1;">
35
+                            <div class="callingTop" style="margin-bottom:4px;">
36
+                                <div class="callingTopTip"><span style="margin: 0 auto;">正在<br />接诊</span></div>
37
+                                <div class="callingContent">
38
+                                    <p style="margin-top:13px;">请李四宋到1号诊台就诊</p>
39
+                                    <p>请王岐岐到2号诊台就诊</p>
40
+                                </div>
41
+                            </div>
42
+                            <div class="callingTop" style="border-radius: 0 0 15px 0;">
43
+                                <div class="callingTopTip"><span style="margin: 0 auto;">等待<br />接诊</span></div>
44
+                                <div class="callingContent">
45
+                                    <p style="margin-top:13px;">欧大大、王思思、陈啦啦、吴东汉、</p>
46
+                                    <p>孔豆豆、陈米春、孔豆豆、陈米春、</p>
47
+                                </div>
48
+                            </div>
49
+                        </div>
50
+                    </div>
51
+                    <div class="callingBoxLeft">
52
+                        <div class="callingTitle newCallingTitle"><span style="margin: 0 auto;">上<br />机<br />叫<br />号</span></div>
53
+                        <div style="flex: 1;">
54
+                            <div class="callingTop" style="margin-bottom:4px;">
55
+                                <div class="callingTopTip newCallingTopTip"><span style="margin: 0 auto;">正在<br />叫号</span></div>
56
+                                <div class="callingContent">
57
+                                    <p style="margin-top:13px;">请李四宋到普通区2号床上机</p>
58
+                                    <p>请王岐岐到普通区3号床上机</p>
59
+                                </div>
60
+                            </div>
61
+                            <div class="callingTop" style="border-radius: 0 0 15px 0;">
62
+                                <div class="callingTopTip newCallingTopTip"><span style="margin: 0 auto;">等待<br />叫号</span></div>
63
+                                <div class="callingContent">
64
+                                    <p style="margin-top:13px;">欧大大、王思思、陈啦啦、吴东汉、</p>
65
+                                    <p>孔豆豆、陈米春、孔豆豆、陈米春、</p>
66
+                                </div>
67
+                            </div>
68
+                        </div>
69
+                    </div>
70
+                </div>
71
+            </div>
72
+            
73
+        </div>
74
+    </div>
75
+</template>
76
+
77
+<style lang="scss" scoped>
78
+.page_lineUp{
79
+    .lineUpTitle{
80
+        height: 50px;
81
+        background: #1A82BF;
82
+        display: flex;
83
+        justify-content: space-between;
84
+        align-items: center;
85
+        padding: 0 20px;
86
+        color:#fff;
87
+        font-size: 20px;
88
+        font-weight: 600;
89
+    }
90
+    .lineUpMain{
91
+        background: linear-gradient(0deg, #76ECEC, #479CD2);
92
+        height: 550px;
93
+        padding:10px;
94
+    }
95
+    .lineUpMainLeft{
96
+        height: 370px;
97
+        border-radius: 15px;
98
+        
99
+    }
100
+    .lineUpMainLeftTitle{
101
+        display: flex;
102
+        justify-content: space-between;
103
+        align-items: center;
104
+        color:#fff;
105
+        font-size: 18px;
106
+        font-weight: 600;
107
+        height:50px;
108
+        background: #1A82BF;
109
+        border-radius: 15px 15px 0 0;
110
+        >p{
111
+            text-align: center;
112
+        }
113
+    }
114
+    .lineUpList{
115
+        font-size: 18px;
116
+        font-weight: 600;
117
+        >div:nth-child(odd){
118
+            background: #F9FDFF;
119
+        }
120
+        >div:nth-child(even){
121
+            background: #CCEBFF;
122
+        }
123
+        >div:last-child{
124
+            border-radius: 0 0 15px 15px;
125
+        }
126
+        .lineUpListOne{
127
+            height:40px;
128
+            display: flex;
129
+            justify-content: space-between;
130
+            align-items: center;
131
+            color:#1C6895;
132
+            >p{
133
+                width:25%;
134
+                text-align: center;
135
+            }
136
+        }
137
+    }
138
+    .callingBox{
139
+        height: 150px;
140
+        margin-top: 10px;
141
+        display: flex;
142
+        justify-content: space-between;
143
+        .callingBoxLeft{
144
+            width: 49%;
145
+            height: 100%;
146
+            display: flex;
147
+            justify-content: space-between;
148
+            .callingTitle{
149
+                width: 60px;
150
+                height: 100%;
151
+                border-radius: 15px 0 0 15px;
152
+                font-size: 30px;
153
+                font-weight:600;
154
+                text-align: center;
155
+                color: #fff;
156
+                background: #1A82BF;
157
+                display: flex;
158
+                align-items: center;
159
+                margin-right: 5px;
160
+            }
161
+            .newCallingTitle{
162
+                background: linear-gradient(90deg, rgba(66, 231, 167, 1), rgba(26, 191, 84, 1), rgba(157, 254, 31, 1));
163
+            }
164
+        } 
165
+        .callingTop{
166
+            height: 73px;
167
+            border-radius: 0 15px 0 0;
168
+            background: #F9FDFF;
169
+            display: flex;
170
+            justify-content: space-between;
171
+            .callingTopTip{
172
+                width: 73px;
173
+                height: 100%;
174
+                color: #fff;
175
+                font-size: 18px;
176
+                font-weight: 600;
177
+                background: #1A82BF;
178
+                display: flex;
179
+                align-items: center;
180
+            }
181
+            .newCallingTopTip{
182
+                background: linear-gradient(90deg, rgba(66, 231, 167, 1), rgba(26, 191, 84, 1), rgba(157, 254, 31, 1));
183
+            }
184
+            .callingContent{
185
+                flex: 1;
186
+                display: flex;
187
+                flex-direction: column;
188
+                font-size: 16px;
189
+                color:#1C6895;
190
+                font-weight: 600;
191
+                padding-left: 20px;
192
+                >p{
193
+                    width:100%;
194
+                    text-align: left;
195
+                    line-height: 24px;
196
+                }
197
+            }
198
+        }
199
+    }
200
+}
201
+</style>

+ 154 - 0
src/xt_pages/sign/signIn.vue View File

1
+<template>
2
+    <div class="app-container">
3
+        <div class="page_signIn">
4
+            <div class="signInTitle">
5
+                <div>唐山朝阳医院</div>
6
+                <div>2020.8.18   07:22(星期四)</div>
7
+            </div>
8
+            <div class="signInMain">
9
+                <div style="display: flex;justify-content: space-between;padding:10px;">
10
+                    <div class="signInMainLeft">
11
+                        <div class="signInMainLeftTitle">
12
+                            <p>排号</p>
13
+                            <p>姓名</p>
14
+                            <p>病历号</p>
15
+                            <p>签到时间</p>
16
+                        </div>
17
+                        <div class="signInList">
18
+                            <div class="signInListOne" v-for="item in 12" :key="item">
19
+                                <p>P13</p>
20
+                                <p>张*等</p>
21
+                                <p>001</p>
22
+                                <p>09:01:00</p>
23
+                            </div>
24
+                        </div>
25
+                    </div>
26
+                    <div class="signInMainRight">
27
+                        <div class="signInMainRightTitle"><span style="margin:0 auto;">张三</span></div>
28
+                        <div class="signInMainRightContent">
29
+                            <p style="margin: 0 auto;display:flex;align-items: center;"><span>排号&nbsp;&nbsp;</span><span style="font-size:120px;">P06</span></p>
30
+                        </div>
31
+                        <div class="signInMianRightBottom"><span style="margin:0 auto;">签到成功</span></div>
32
+                    </div>
33
+                </div>
34
+                <div class="signInTip">
35
+                    温馨提示:请注意排队叫号,依次叫号就诊上机,谢谢配合
36
+                </div>
37
+            </div>
38
+        </div>
39
+    </div>
40
+</template>
41
+
42
+
43
+<style lang="scss" scoped>
44
+.page_signIn{
45
+    .signInTitle{
46
+        height: 50px;
47
+        background: #1A82BF;
48
+        display: flex;
49
+        justify-content: space-between;
50
+        align-items: center;
51
+        padding: 0 20px;
52
+        color:#fff;
53
+        font-size: 20px;
54
+        font-weight: 600;
55
+    }
56
+    .signInMain{
57
+        background: linear-gradient(0deg, #76ECEC, #479CD2);
58
+        height: 600px;
59
+        
60
+        
61
+    }
62
+    .signInMainLeft{
63
+        width:65%;
64
+        height: 530px;
65
+        border-radius: 15px;
66
+    }
67
+    .signInMainLeftTitle{
68
+        display: flex;
69
+        justify-content: space-between;
70
+        align-items: center;
71
+        color:#fff;
72
+        font-size: 18px;
73
+        font-weight: 600;
74
+        height:50px;
75
+        background: #1A82BF;
76
+        border-radius: 15px 15px 0 0;
77
+        >p{
78
+            width:25%;
79
+            text-align: center;
80
+        }
81
+    }
82
+    .signInList{
83
+        font-size: 18px;
84
+        font-weight: 600;
85
+        >div:nth-child(odd){
86
+            background: #F9FDFF;
87
+        }
88
+        >div:nth-child(even){
89
+            background: #CCEBFF;
90
+        }
91
+        >div:last-child{
92
+            border-radius: 0 0 15px 15px;
93
+        }
94
+        .signInListOne{
95
+            height:40px;
96
+            display: flex;
97
+            justify-content: space-between;
98
+            align-items: center;
99
+            color:#1C6895;
100
+            >p{
101
+                width:25%;
102
+                text-align: center;
103
+            }
104
+        }
105
+    }
106
+    .signInMainRight{
107
+        width: 34%;
108
+        height: 530px;
109
+    }
110
+    .signInMainRightTitle{
111
+        height: 130px;
112
+        border-radius: 15px 15px 0 0;
113
+        background: #1A82BF;
114
+        font-size: 80px;
115
+        font-weight: 600;
116
+        color:#fff;
117
+        display: flex;
118
+        align-items: center;
119
+        justify-content: space-between;
120
+    }
121
+    .signInMainRightContent{
122
+        background: #F9FDFF;
123
+        height: 300px;
124
+        text-align: center;
125
+        font-weight: 600;
126
+        color:#1C6895;
127
+        box-sizing: border-box;
128
+        font-size:70px;
129
+        display:flex;
130
+        align-items:center;
131
+    }
132
+    .signInMianRightBottom{
133
+        height: 100px;
134
+        background: #1A82BF;
135
+        border-radius: 0 0 15px 15px;
136
+        font-size: 40px;
137
+        font-weight: 600;
138
+        color:#fff;
139
+        display: flex;
140
+        justify-content: space-between;
141
+        align-items: center;
142
+    }
143
+    .signInTip{
144
+        color:#fff;
145
+        font-size: 18px;
146
+        font-weight: 600;
147
+        display: flex;
148
+        align-items: center;
149
+        height: 50px;
150
+        background: linear-gradient(0deg, #42A9E7, #3686B9, #42A9E7);
151
+        margin-top: 1px;
152
+    }
153
+}
154
+</style>

+ 1 - 2
src/xt_pages/stock/selfPreparedMedicine/components/addMedicine.vue View File

83
            }) 
83
            }) 
84
         },
84
         },
85
         handleCurrentChange(val){
85
         handleCurrentChange(val){
86
-           console.log("val===",val)
87
            this.currentRow = val
86
            this.currentRow = val
88
            this.getRullListByDrugName(val.drug_name)
87
            this.getRullListByDrugName(val.drug_name)
89
         },
88
         },
94
            getRullListByDrugName(params).then(response=>{
93
            getRullListByDrugName(params).then(response=>{
95
               if(response.data.state ==  1){
94
               if(response.data.state ==  1){
96
                 var drugName =  response.data.data.drugName
95
                 var drugName =  response.data.data.drugName
97
-                console.log("drugname",drugName)
98
                 this.tableDatatwo = drugName
96
                 this.tableDatatwo = drugName
99
               }
97
               }
100
            })
98
            })
113
                 var msg = response.data.data.msg
111
                 var msg = response.data.data.msg
114
                 this.$message.success("保存成功")
112
                 this.$message.success("保存成功")
115
                 this.visible = false
113
                 this.visible = false
114
+                this.$emit('getlist');
116
              }else {
115
              }else {
117
                 this.$message.error("药品名称规格已存在")
116
                 this.$message.error("药品名称规格已存在")
118
              }
117
              }

+ 13 - 3
src/xt_pages/stock/selfPreparedMedicine/components/medicineDetail.vue View File

24
                 placeholder="选择日期时间"
24
                 placeholder="选择日期时间"
25
                 align="right"
25
                 align="right"
26
                 format="yyyy-MM-dd"
26
                 format="yyyy-MM-dd"
27
-                value-format="yyyy-MM-dd">
27
+                value-format="yyyy-MM-dd"
28
+                @change="changeStartime">
28
             </el-date-picker>
29
             </el-date-picker>
29
                 <el-date-picker
30
                 <el-date-picker
30
                 v-model="end_time"
31
                 v-model="end_time"
35
                 placeholder="选择日期时间"
36
                 placeholder="选择日期时间"
36
                 align="right"
37
                 align="right"
37
                 format="yyyy-MM-dd"
38
                 format="yyyy-MM-dd"
38
-                value-format="yyyy-MM-dd">
39
+                value-format="yyyy-MM-dd"
40
+                @change="changeEndtime">
39
             </el-date-picker>
41
             </el-date-picker>
40
         </div>
42
         </div>
41
         <el-table :data="tableData" border style="width: 100%;" height="300" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
43
         <el-table :data="tableData" border style="width: 100%;" height="300" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
152
                 }
154
                 }
153
                 if(this.type == 1){
155
                 if(this.type == 1){
154
                    stockDetail.push(...outStockDetail)
156
                    stockDetail.push(...outStockDetail)
155
-                   this.tableData = stockDetail
157
+                   var arr = stockDetail
158
+                  var newarr  =  arr.sort((a,b)=>{ return a.storck_time-b.storck_time})
159
+                  this.tableData = newarr
156
                 }
160
                 }
157
                 
161
                 
158
                 if(this.type == 2){
162
                 if(this.type == 2){
187
        getTimes(time) {
191
        getTimes(time) {
188
         return uParseTime(time, "{y}-{m}-{d}");
192
         return uParseTime(time, "{y}-{m}-{d}");
189
       },
193
       },
194
+      changeStartime(){
195
+        this.getDrugDetail()   
196
+      },
197
+      changeEndtime(){
198
+        this.getDrugDetail()
199
+      }
190
     },
200
     },
191
 
201
 
192
     created(){
202
     created(){

+ 9 - 4
src/xt_pages/stock/selfPreparedMedicine/components/warehouseOut.vue View File

111
         // },
111
         // },
112
        
112
        
113
         saveOutStock(){
113
         saveOutStock(){
114
+           var arr=[]
115
+            for(let i=0;i<this.tableData.length;i++){
116
+              if(this.tableData[i].outstore_number){
117
+                  arr.push(this.tableData[i])
118
+              }
119
+            }
114
             const params = {
120
             const params = {
115
-               outStocks:this.tableData,
121
+               outStocks:arr,
116
             }
122
             }
117
-            console.log("outStocks",params)
118
             if(this.admin_user_id ==''){
123
             if(this.admin_user_id ==''){
119
               this.$message.error("请选择出库人")
124
               this.$message.error("请选择出库人")
120
               return
125
               return
122
           saveOutStock(params,this.start_time,this.admin_user_id,this.patient_id).then(response=>{
127
           saveOutStock(params,this.start_time,this.admin_user_id,this.patient_id).then(response=>{
123
               if(response.data.state == 1){
128
               if(response.data.state == 1){
124
                  var msg = response.data.data.msg
129
                  var msg = response.data.data.msg
125
-                 console.log("msg",msg)
130
+                 this.$message.success("保存成功")
126
                  this.visible = false
131
                  this.visible = false
132
+                 this.$emit('getlist');
127
               }
133
               }
128
           })
134
           })
129
         },
135
         },
132
            const params = {
138
            const params = {
133
               patient_id:this.patient_id
139
               patient_id:this.patient_id
134
            }
140
            }
135
-           console.log("params",params)
136
           getDrugDataByPatientId(params).then(response=>{
141
           getDrugDataByPatientId(params).then(response=>{
137
              if(response.data.state == 1){
142
              if(response.data.state == 1){
138
                var medicalList = response.data.data.medicalList
143
                var medicalList = response.data.data.medicalList

+ 9 - 3
src/xt_pages/stock/selfPreparedMedicine/components/warehousing.vue View File

27
             </el-select>
27
             </el-select>
28
         </div>
28
         </div>
29
         <el-table :data="tableData" border style="width: 100%;" height="300" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
29
         <el-table :data="tableData" border style="width: 100%;" height="300" :row-style="{ color: '#303133' }" :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
30
+           
30
             <el-table-column align="center" label="药品名称">
31
             <el-table-column align="center" label="药品名称">
31
                 <template slot-scope="scope">{{scope.row.drug_name}}</template>
32
                 <template slot-scope="scope">{{scope.row.drug_name}}</template>
32
             </el-table-column>
33
             </el-table-column>
109
         //   })
110
         //   })
110
         // },
111
         // },
111
         saveStock(){
112
         saveStock(){
113
+            var arr=[]
114
+            for(let i=0;i<this.tableData.length;i++){
115
+              if(this.tableData[i].store_number){
116
+                  arr.push(this.tableData[i])
117
+              }
118
+            }
112
             const params ={
119
             const params ={
113
-               stocks:this.tableData
120
+               stocks:arr
114
             }
121
             }
115
             if(this.admin_user_id ==''){
122
             if(this.admin_user_id ==''){
116
               this.$message.error("请选择入库人")
123
               this.$message.error("请选择入库人")
117
               return
124
               return
118
             }
125
             }
119
-           console.log("params",params)
120
-       
121
           saveStock(params,this.start_time,this.admin_user_id,this.patient_id).then(response=>{
126
           saveStock(params,this.start_time,this.admin_user_id,this.patient_id).then(response=>{
122
               if(response.data.state == 1){
127
               if(response.data.state == 1){
123
                  var msg = response.data.data.msg
128
                  var msg = response.data.data.msg
124
                  this.$message.success("保存成功")
129
                  this.$message.success("保存成功")
125
                  this.visible = false
130
                  this.visible = false
131
+                 this.$emit('getlist');
126
               }
132
               }
127
           })
133
           })
128
         },
134
         },

+ 50 - 13
src/xt_pages/stock/selfPreparedMedicine/index.vue View File

70
                             <template slot-scope="scope">{{scope.row.min_unit}}</template>
70
                             <template slot-scope="scope">{{scope.row.min_unit}}</template>
71
                         </el-table-column>
71
                         </el-table-column>
72
                         <el-table-column align="center" prop="name" label="自备数量" width="90">
72
                         <el-table-column align="center" prop="name" label="自备数量" width="90">
73
-                            <template slot-scope="scope">{{ scope.row.Total }}</template>
73
+                            <template slot-scope="scope">
74
+                              {{getTotal(scope.row.patient_id,scope.row.id)}}
75
+                            </template>
74
                         </el-table-column>
76
                         </el-table-column>
75
                         <el-table-column align="center" prop="name" label="已使用" width="90">
77
                         <el-table-column align="center" prop="name" label="已使用" width="90">
76
                             <template slot-scope="scope">{{getCount(scope.row.patient_id,scope.row.drug_name,scope.row.drug_spec)}}</template>
78
                             <template slot-scope="scope">{{getCount(scope.row.patient_id,scope.row.drug_name,scope.row.drug_spec)}}</template>
77
                         </el-table-column>
79
                         </el-table-column>
78
                         <el-table-column align="center" prop="name" label="剩余" width="90">
80
                         <el-table-column align="center" prop="name" label="剩余" width="90">
79
-                            <template slot-scope="scope">{{scope.row.Total - getCount(scope.row.patient_id,scope.row.drug_name,scope.row.drug_spec)}}</template>
81
+                            <template slot-scope="scope">{{getTotal(scope.row.patient_id,scope.row.id)- getCount(scope.row.patient_id,scope.row.drug_name,scope.row.drug_spec)}}</template>
80
                         </el-table-column>
82
                         </el-table-column>
81
                         <!-- <el-table-column align="center" prop="name" label="停用" width="90">
83
                         <!-- <el-table-column align="center" prop="name" label="停用" width="90">
82
                             <template slot-scope="scope">
84
                             <template slot-scope="scope">
85
                             </template>
87
                             </template>
86
                         </el-table-column> -->
88
                         </el-table-column> -->
87
                         <el-table-column align="center" prop="name" label="备注">
89
                         <el-table-column align="center" prop="name" label="备注">
88
-                            <template slot-scope="scope">{{ scope.row.remarks }}</template>
90
+                            <!-- <template slot-scope="scope">{{ scope.row.remarks }}</template> -->
91
+                            <template slot-scope="scope">
92
+                                {{getRemarks(scope.row.patient_id,scope.row.id)}}
93
+                            </template>
89
                         </el-table-column>
94
                         </el-table-column>
90
                         <el-table-column align="center" prop="name" label="操作" width="180">
95
                         <el-table-column align="center" prop="name" label="操作" width="180">
91
                             <template slot-scope="scope">
96
                             <template slot-scope="scope">
111
                 <el-button type="primary" @click="saveRadio">确 定</el-button>
116
                 <el-button type="primary" @click="saveRadio">确 定</el-button>
112
             </span>
117
             </span>
113
         </el-dialog>
118
         </el-dialog>
114
-        <add-medicine ref="addMedicine"></add-medicine>
119
+        <add-medicine ref="addMedicine" @getlist="getlist"></add-medicine>
115
         <medicine-detail ref="medicineDetail"></medicine-detail>
120
         <medicine-detail ref="medicineDetail"></medicine-detail>
116
-        <warehousing ref="warehousing"></warehousing>
117
-        <warehouse-out ref="warehouseOut"></warehouse-out>
121
+        <warehousing  ref="warehousing" @getlist="getlist"></warehousing>
122
+        <warehouse-out ref="warehouseOut" @getlist="getlist"></warehouse-out>
118
     </div>
123
     </div>
119
 </template>
124
 </template>
120
 
125
 
126
 import warehousing from "./components/warehousing"
131
 import warehousing from "./components/warehousing"
127
 import warehouseOut from "./components/warehouseOut"
132
 import warehouseOut from "./components/warehouseOut"
128
 const moment = require('moment')
133
 const moment = require('moment')
129
-import { getCurrentPatient,saveRadio,getStockList,DeleteDrugName } from "@/api/drug/drug"
134
+import { getCurrentPatient,saveRadio,getStockList,DeleteDrugName,getDrugSet } from "@/api/drug/drug"
130
 export default {
135
 export default {
131
     components:{
136
     components:{
132
         BreadCrumb,
137
         BreadCrumb,
164
             start_time:moment(new Date()).add('year',0).format("YYYY-MM-DD"),
169
             start_time:moment(new Date()).add('year',0).format("YYYY-MM-DD"),
165
             search_input:"",
170
             search_input:"",
166
             patient_id:0,
171
             patient_id:0,
172
+            stockList:[],
167
             outStocklist:[]
173
             outStocklist:[]
168
         }
174
         }
169
     },
175
     },
203
             
209
             
204
         },
210
         },
205
         toDetail(drugname,drugspec,patientid){
211
         toDetail(drugname,drugspec,patientid){
206
-            console.log("drugname",drugname)
207
-            console.log("drugspec",drugspec)
208
-            console.log("patientid",patientid)
209
             this.$refs.medicineDetail.show(drugname,drugspec,patientid);
212
             this.$refs.medicineDetail.show(drugname,drugspec,patientid);
210
         },
213
         },
211
 
214
 
217
           })
220
           })
218
         },
221
         },
219
         searchAction(){
222
         searchAction(){
223
+          this.patient_id = 0
220
           this.getlist()
224
           this.getlist()
221
         },
225
         },
222
         saveRadio(){
226
         saveRadio(){
226
          saveRadio(params).then(response=>{
230
          saveRadio(params).then(response=>{
227
             if(response.data.state == 1){
231
             if(response.data.state == 1){
228
               var drugset = response.data.data.drugSet
232
               var drugset = response.data.data.drugSet
229
-              console.log("drugset",drugset)
230
               this.$message.success("保存成功")
233
               this.$message.success("保存成功")
231
               this.dialogVisible = false
234
               this.dialogVisible = false
232
             } 
235
             } 
240
             }
243
             }
241
           getStockList(params).then(response=>{
244
           getStockList(params).then(response=>{
242
              if(response.data.state == 1){
245
              if(response.data.state == 1){
246
+                var medicalList = response.data.data.medicalList
247
+                console.log("medicalist",medicalList)
248
+                this.tableData = medicalList
243
                 var stocklist =  response.data.data.stocklist
249
                 var stocklist =  response.data.data.stocklist
250
+                console.log("stocklist",stocklist)
251
+                this.stockList = stocklist
244
                 var outstocklist = response.data.data.outStocklist
252
                 var outstocklist = response.data.data.outStocklist
245
                 this.outStocklist = outstocklist
253
                 this.outStocklist = outstocklist
246
-                this.tableData = stocklist
247
-
254
+                console.log("outStockList",outstocklist)
255
+              
248
               }
256
               }
249
           })  
257
           })  
250
         },
258
         },
280
               }
288
               }
281
            }
289
            }
282
            return total
290
            return total
291
+        },
292
+
293
+        getDrugSet(){
294
+         getDrugSet().then(response=>{
295
+            if(response.data.state == 1){
296
+              var drugset =  response.data.data.drugSet
297
+              this.radio  = drugset.drug_start.toString()
298
+            }
299
+         })
300
+        },
301
+
302
+        getTotal(patientid,id){
303
+          var total = 0
304
+          for(let i=0;i<this.stockList.length;i++){
305
+             if(patientid == this.stockList[i].patient_id && id == this.stockList[i].medic_id){
306
+                total = this.stockList[i].Total
307
+             }
308
+          }
309
+          return total
310
+        },
311
+        getRemarks(patientid,id){
312
+          var remarks = ""  
313
+           for(let i=0;i<this.stockList.length;i++){
314
+             if(patientid == this.stockList[i].patient_id && id == this.stockList[i].medic_id){
315
+                remarks = this.stockList[i].remarks
316
+             }
317
+          }
318
+          return remarks
283
         }
319
         }
284
     },
320
     },
285
     created(){
321
     created(){
286
       //获取当前机构下的所有患者
322
       //获取当前机构下的所有患者
287
       this.getCurrentPatient()
323
       this.getCurrentPatient()
324
+      this.getDrugSet()
288
     },
325
     },
289
     watch: {
326
     watch: {
290
      tablePatient: function() {
327
      tablePatient: function() {

+ 30 - 6
src/xt_pages/stock/selfPreparedMedicine/info.vue View File

95
             <el-radio v-model="radio" label="2">不开启</el-radio>
95
             <el-radio v-model="radio" label="2">不开启</el-radio>
96
             <span slot="footer" class="dialog-footer">
96
             <span slot="footer" class="dialog-footer">
97
                 <el-button @click="dialogVisible = false">取 消</el-button>
97
                 <el-button @click="dialogVisible = false">取 消</el-button>
98
-                <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
98
+                <el-button type="primary" @click="saveRadio">确 定</el-button>
99
             </span>
99
             </span>
100
         </el-dialog>
100
         </el-dialog>
101
        
101
        
239
 import medicineDetail from "./components/medicineDetail"
239
 import medicineDetail from "./components/medicineDetail"
240
 import warehousing from "./components/warehousing"
240
 import warehousing from "./components/warehousing"
241
 import warehouseOut from "./components/warehouseOut"
241
 import warehouseOut from "./components/warehouseOut"
242
-import { getAllDrugName,saveDrugName,getdrugNameList,getRulleName,getUnitByBaseId,saveRulleName,EditRullerName,updatedRulleName,DeleteDrugById,DeleteDrugStand }  from "@/api/drug/drug"
242
+import { getAllDrugName,saveDrugName,getdrugNameList,getRulleName,getUnitByBaseId,saveRulleName,EditRullerName,updatedRulleName,DeleteDrugById,DeleteDrugStand,saveRadio,getDrugSet }  from "@/api/drug/drug"
243
 export default {
243
 export default {
244
     components:{
244
     components:{
245
         BreadCrumb,
245
         BreadCrumb,
274
             value: '',
274
             value: '',
275
             tableData:[],
275
             tableData:[],
276
             dialogVisible:false,
276
             dialogVisible:false,
277
-            radio:'1',
277
+            radio:'2',
278
             drugDialogVisible:false,
278
             drugDialogVisible:false,
279
             options:[],
279
             options:[],
280
             drugName:[],
280
             drugName:[],
532
              drug_stock_limit:this.form.drug_stock_limit, 
532
              drug_stock_limit:this.form.drug_stock_limit, 
533
              drug_name:drug_name
533
              drug_name:drug_name
534
            }
534
            }
535
-           console.log("params999",params)
535
+         
536
          updatedRulleName(params).then(response=>{
536
          updatedRulleName(params).then(response=>{
537
             if(response.data.state == 1){
537
             if(response.data.state == 1){
538
                var rullername = response.data.data.RullerName
538
                var rullername = response.data.data.RullerName
586
           })
586
           })
587
           .catch(() => {
587
           .catch(() => {
588
           })
588
           })
589
-       }
589
+       },
590
+
591
+         saveRadio(){
592
+          const params = {
593
+            radio:this.radio
594
+          }
595
+         saveRadio(params).then(response=>{
596
+            if(response.data.state == 1){
597
+              var drugset = response.data.data.drugSet
598
+              this.$message.success("保存成功")
599
+              this.dialogVisible = false
600
+            } 
601
+          }) 
602
+        },
603
+
604
+        getDrugSet(){
605
+         getDrugSet().then(response=>{
606
+            if(response.data.state == 1){
607
+              var drugset =  response.data.data.drugSet
608
+              this.radio  = drugset.drug_start.toString()
609
+            }
610
+         })
611
+        }
590
     },
612
     },
591
     created(){
613
     created(){
592
        //获取药品库所有药品名称
614
        //获取药品库所有药品名称
593
        this.getAllDrugName()
615
        this.getAllDrugName()
594
-
595
        this.getdrugNameList()
616
        this.getdrugNameList()
617
+
618
+       //获取设置
619
+       this.getDrugSet()
596
       
620
       
597
      
621
      
598
     },
622
     },

+ 3 - 6
src/xt_pages/stock/selfPreparedMedicine/query.vue View File

87
                     <template slot-scope="scope">{{ scope.row.min_unit }}</template>
87
                     <template slot-scope="scope">{{ scope.row.min_unit }}</template>
88
                 </el-table-column>
88
                 </el-table-column>
89
                 <el-table-column align="center" prop="name" label="自备量" width="80">
89
                 <el-table-column align="center" prop="name" label="自备量" width="80">
90
-                    <template slot-scope="scope">{{ scope.row.store_number }}</template>
90
+                    <template slot-scope="scope">{{ scope.row.Total }}</template>
91
                 </el-table-column>
91
                 </el-table-column>
92
                 <el-table-column align="center" prop="name" label="已使用" width="80">
92
                 <el-table-column align="center" prop="name" label="已使用" width="80">
93
                     <template slot-scope="scope">{{ scope.row.Count }}</template>
93
                     <template slot-scope="scope">{{ scope.row.Count }}</template>
94
                 </el-table-column>
94
                 </el-table-column>
95
                 <el-table-column align="center" prop="name" label="剩余" width="80">
95
                 <el-table-column align="center" prop="name" label="剩余" width="80">
96
-                    <template slot-scope="scope">{{ scope.row.store_number - scope.row.Count }}</template>
96
+                    <template slot-scope="scope">{{ scope.row.Total - scope.row.Count }}</template>
97
                 </el-table-column>
97
                 </el-table-column>
98
             </el-table>
98
             </el-table>
99
         </div>
99
         </div>
166
         getAllDrugName().then(response=>{
166
         getAllDrugName().then(response=>{
167
           if(response.data.state == 1){
167
           if(response.data.state == 1){
168
              var drugName =  response.data.data.drugName
168
              var drugName =  response.data.data.drugName
169
-             console.log("drugName",drugName)
170
              this.drugName = drugName
169
              this.drugName = drugName
171
 
170
 
172
              this.getlist()
171
              this.getlist()
180
         getRulleName(params).then(response=>{
179
         getRulleName(params).then(response=>{
181
            if(response.data.state == 1){
180
            if(response.data.state == 1){
182
              var rulleName = response.data.data.rulleName
181
              var rulleName = response.data.data.rulleName
183
-             console.log("rulleName",rulleName)
184
              this.rulleName = rulleName
182
              this.rulleName = rulleName
185
            }
183
            }
186
         })  
184
         })  
217
             drug_spec:this.drug_spec,
215
             drug_spec:this.drug_spec,
218
             search_input:this.search_input
216
             search_input:this.search_input
219
           }
217
           }
220
-          console.log("params====",params)
221
         getAllPatientStockList(params).then(response=>{
218
         getAllPatientStockList(params).then(response=>{
222
             if(response.data.state == 1){
219
             if(response.data.state == 1){
223
               var stocklist = response.data.data.stocklist
220
               var stocklist = response.data.data.stocklist
233
                    }
230
                    }
234
                 }
231
                 }
235
               }
232
               }
236
-              console.log("stocklist3333",stocklist)
233
+
237
               this.tableData = stocklist
234
               this.tableData = stocklist
238
             }
235
             }
239
         })   
236
         })   

+ 165 - 11
src/xt_pages/user/components/EditGroupAdvice.vue View File

371
     <el-dialog
371
     <el-dialog
372
       :title="nameFormTitle"
372
       :title="nameFormTitle"
373
       :visible.sync="nameFormVisible"
373
       :visible.sync="nameFormVisible"
374
-      width="700px"
374
+      width="800px"
375
     >
375
     >
376
       <el-form
376
       <el-form
377
         ref="nameForm"
377
         ref="nameForm"
378
         :rules="nameRules"
378
         :rules="nameRules"
379
         :model="nameForm"
379
         :model="nameForm"
380
-        label-width="90px"
380
+        label-width="120px"
381
       >
381
       >
382
         <el-row>
382
         <el-row>
383
-          <el-col :span="12">
383
+          <el-col :span="10">
384
             <el-form-item label="医嘱内容 :" required prop="advice_name">
384
             <el-form-item label="医嘱内容 :" required prop="advice_name">
385
-              <el-input v-model="nameForm.advice_name"></el-input>
385
+              <!-- <el-input v-model="nameForm.advice_name"></el-input> -->
386
+
387
+              <el-select
388
+                v-model="nameForm.advice_name"
389
+                filterable
390
+                clearable
391
+                allow-create
392
+                :disabled="isChild"
393
+                placeholder="请选择(输入可搜索)"
394
+                style="width:200px"
395
+                @change="changeDrugName"
396
+              >
397
+                <el-option
398
+                  v-for="item in medicals"
399
+                  :key="item.id"
400
+                  :label="item.drug_name"
401
+                  :value="item.id"
402
+                ></el-option>
403
+              </el-select>
404
+              
386
             </el-form-item>
405
             </el-form-item>
387
           </el-col>
406
           </el-col>
388
-          <el-col :span="12">
407
+          <el-col :span="14">
389
             <!--<el-form-item label="规格 :" prop="advice_desc">-->
408
             <!--<el-form-item label="规格 :" prop="advice_desc">-->
390
             <!--<el-input v-model="nameForm.advice_desc"></el-input>-->
409
             <!--<el-input v-model="nameForm.advice_desc"></el-input>-->
391
             <!--</el-form-item>-->
410
             <!--</el-form-item>-->
392
             <el-form-item label="药品规格 :" prop="advice_desc">
411
             <el-form-item label="药品规格 :" prop="advice_desc">
393
-              <el-col :span="8">
394
-                <el-input v-model="nameForm.advice_desc"></el-input>
412
+              <el-col :span="10">
413
+                <!-- <el-input v-model="nameForm.advice_desc"></el-input> -->
414
+
415
+                <el-select
416
+                  v-model="nameForm.advice_desc"
417
+                  filterable
418
+                  clearable
419
+                  allow-create
420
+                  :disabled="isChild"
421
+                  placeholder="请选择(输入可搜索)"
422
+                  style="width:150px"
423
+                >
424
+                  <el-option
425
+                    v-for="item in drugSpec"
426
+                    :key="item.id"
427
+                    :label="item.drug_spec"
428
+                    :value="item.drug_spec"
429
+                  ></el-option>
430
+                 </el-select>
395
               </el-col>
431
               </el-col>
396
               <el-col class="line" :span="2">&nbsp;</el-col>
432
               <el-col class="line" :span="2">&nbsp;</el-col>
397
-              <el-col :span="14">
433
+              <el-col :span="10">
398
                 <el-select
434
                 <el-select
399
                   v-model="nameForm.drug_spec_unit"
435
                   v-model="nameForm.drug_spec_unit"
400
                   filterable
436
                   filterable
564
   getDoctorAdviceList,
600
   getDoctorAdviceList,
565
   StopDoctorAdvice
601
   StopDoctorAdvice
566
 } from "@/api/advice";
602
 } from "@/api/advice";
567
-
603
+import { getSelfMedicalList,getDrugDescByDrugName } from "@/api/drug/drug"
568
 export default {
604
 export default {
569
   name: "EditGroupAdvice",
605
   name: "EditGroupAdvice",
570
   data() {
606
   data() {
607
         isEdit: 0,
643
         isEdit: 0,
608
         index: 0,
644
         index: 0,
609
         id: 0,
645
         id: 0,
610
-        children: []
646
+        children: [],
647
+        way:"",
648
+        drug_id:""
611
       },
649
       },
612
 
650
 
613
       drugOptions: [],
651
       drugOptions: [],
626
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
664
       selectedTemp: { id: 0, name: "", org_id: 0, list: [], rows: [] },
627
       selectedTemplate: [],
665
       selectedTemplate: [],
628
       allSelectedTemplate: [],
666
       allSelectedTemplate: [],
629
-      adviceTemplateMaps: {}
667
+      adviceTemplateMaps: {},
668
+      medicals:[],
669
+      drugSpec:[]
630
     };
670
     };
631
   },
671
   },
632
   props: {
672
   props: {
813
         .catch(() => {});
853
         .catch(() => {});
814
     },
854
     },
815
     submitNameForm(formName) {
855
     submitNameForm(formName) {
856
+       if(typeof(this.nameForm.advice_name) == "string"){
857
+         
858
+          this.nameForm.advice_name == this.nameForm.advice_name
859
+      }
860
+
861
+      if(typeof(this.nameForm.advice_name) == "number"){
862
+          var drug_name = ""
863
+          var name = ""
864
+          var way = 0
865
+          this.nameForm.drug_id = this.nameForm.advice_name
866
+          for(let i=0;i<this.medicals.length;i++){
867
+            if(this.nameForm.advice_name == this.medicals[i].id){
868
+              name = this.medicals[i].drug_name
869
+              way  = this.medicals[i].way
870
+            }
871
+          }
872
+          if(way == 1){
873
+            drug_name = name
874
+          }
875
+          if(way == 2){
876
+            var arr = name.split("(自备药)")
877
+            drug_name = arr[0]
878
+          }
879
+          
880
+          this.nameForm.advice_name = drug_name
881
+          this.nameForm.way = way
882
+      }
816
       var _this = this;
883
       var _this = this;
817
       this.$refs[formName].validate(valid => {
884
       this.$refs[formName].validate(valid => {
818
         if (valid) {
885
         if (valid) {
2319
           }
2386
           }
2320
         }
2387
         }
2321
       });
2388
       });
2389
+    },
2390
+
2391
+     getSelfMedicalList(){
2392
+        const params = {
2393
+          patient_id:this.patientID
2394
+        }
2395
+      getSelfMedicalList(params).then(response=>{
2396
+          if(response.data.state == 1){
2397
+            var medicalList =  response.data.data.medicalList
2398
+            //way字段区分数据源:1代表来自基础库  2代表来自药品库
2399
+            for(let i=0;i<medicalList.length;i++){
2400
+               medicalList[i].way = 2
2401
+            }
2402
+            for(let i=0;i<medicalList.length;i++){
2403
+               medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
2404
+            }
2405
+            var drugname = response.data.data.drugName
2406
+            for(let i=0;i<drugname.length;i++){
2407
+               drugname[i].way = 1
2408
+            }
2409
+
2410
+            drugname.push(...medicalList)
2411
+          
2412
+            this.medicals = drugname
2413
+          }
2414
+      })
2415
+    },
2416
+    changeDrugName(id){
2417
+      var drug_name = ""
2418
+      var name = ""
2419
+      var way = 0
2420
+      for(let i=0;i<this.medicals.length;i++){
2421
+        if(id == this.medicals[i].id){
2422
+          name = this.medicals[i].drug_name
2423
+          way  = this.medicals[i].way
2424
+        }
2425
+      }
2426
+      if(way == 1){
2427
+        drug_name = name
2428
+      }
2429
+      if(way == 2){
2430
+        var arr = name.split("(自备药)")
2431
+        drug_name = arr[0]
2432
+      }
2433
+        const params = {
2434
+          drug_name:drug_name,
2435
+          patient_id:this.$route.query.patient_id,
2436
+          way:way,
2437
+        }
2438
+      getDrugDescByDrugName(params).then(response=>{
2439
+          if(response.data.state == 1){
2440
+             var drugspec = response.data.data.drugspec
2441
+          
2442
+             if(drugspec[0].drug_spec !=0){
2443
+                this.nameForm.advice_desc = drugspec[0].drug_spec
2444
+             }
2445
+             if(drugspec[0].min_unit!=0){
2446
+                 this.nameForm.drug_spec_unit = drugspec[0].min_unit
2447
+             }
2448
+             if(drugspec[0].delivery_way!=0){
2449
+                 this.nameForm.delivery_way = drugspec[0].delivery_way
2450
+             }
2451
+             if(drugspec[0].execution_frequency!=0){
2452
+                this.nameForm.execution_frequency = drugspec[0].execution_frequency
2453
+             }
2454
+             if(drugspec[0].single_dose !=0){
2455
+                this.nameForm.single_dose = drugspec[0].single_dose.toString()
2456
+             } 
2457
+             if(drugspec[0].min_unit !=0){
2458
+               this.nameForm.single_dose_unit = drugspec[0].min_unit
2459
+             }
2460
+             if(drugspec[0].min_unit!=0){
2461
+               this.nameForm.prescribing_number_unit = drugspec[0].min_unit
2462
+             }
2463
+              
2464
+             if( drugspec[0].prescribing_number!=0){
2465
+                this.nameForm.prescribing_number = drugspec[0].prescribing_number.toString()
2466
+             }
2467
+          
2468
+             this.drugSpec = drugspec
2469
+          }
2470
+      })
2471
+    
2322
     }
2472
     }
2323
   },
2473
   },
2324
   watch: {
2474
   watch: {
2328
     "selectedTemp.list": function() {
2478
     "selectedTemp.list": function() {
2329
       this.calcselectedTemp();
2479
       this.calcselectedTemp();
2330
     }
2480
     }
2481
+  },
2482
+  created(){
2483
+    //获取自备药
2484
+    this.getSelfMedicalList()
2331
   }
2485
   }
2332
 };
2486
 };
2333
 </script>
2487
 </script>

+ 103 - 44
src/xt_pages/user/doctorAdvice.vue View File

961
                   v-for="item in medicals"
961
                   v-for="item in medicals"
962
                   :key="item.id"
962
                   :key="item.id"
963
                   :label="item.drug_name"
963
                   :label="item.drug_name"
964
-                  :value="item.drug_name"
964
+                  :value="item.id"
965
                 ></el-option>
965
                 ></el-option>
966
               </el-select>
966
               </el-select>
967
+              <!-- <div style="color:red;font-size:12px;">
968
+                库存不足50
969
+              </div> -->
967
               </el-form-item>
970
               </el-form-item>
968
             </el-col>
971
             </el-col>
969
 
972
 
1057
                     >
1060
                     >
1058
                     </el-option>
1061
                     </el-option>
1059
                   </el-select>
1062
                   </el-select>
1063
+                
1060
                 </el-col>
1064
                 </el-col>
1061
               </el-form-item>
1065
               </el-form-item>
1062
             </el-col>
1066
             </el-col>
2610
           drug_spec_unit: this.groupSelectRow.drug_spec_unit,
2614
           drug_spec_unit: this.groupSelectRow.drug_spec_unit,
2611
           prescribing_number: this.groupSelectRow.prescribing_number,
2615
           prescribing_number: this.groupSelectRow.prescribing_number,
2612
           prescribing_number_unit: this.groupSelectRow.prescribing_number_unit,
2616
           prescribing_number_unit: this.groupSelectRow.prescribing_number_unit,
2617
+          way:this.groupSelectRow.way,
2618
+          drug_id:this.groupSelectRow.drug_id,
2613
           delivery_way: this.isChild ? "" : this.groupSelectRow.delivery_way,
2619
           delivery_way: this.isChild ? "" : this.groupSelectRow.delivery_way,
2614
           execution_frequency: this.isChild
2620
           execution_frequency: this.isChild
2615
             ? ""
2621
             ? ""
2650
           index: 0,
2656
           index: 0,
2651
           id: 0,
2657
           id: 0,
2652
           children: [],
2658
           children: [],
2653
-          parent_row: 0
2659
+          parent_row: 0,
2660
+          way:"",
2661
+          drug_id:''
2654
         };
2662
         };
2655
         this.nameFormTitle = "新增医嘱内容";
2663
         this.nameFormTitle = "新增医嘱内容";
2656
       }
2664
       }
3964
       });
3972
       });
3965
     },
3973
     },
3966
     submitNameForm(formName) {
3974
     submitNameForm(formName) {
3967
-      var arr = this.nameForm.advice_name.split("(自备药)")
3968
-      this.nameForm.advice_name = arr[0]
3975
+      var drug_name = ""
3976
+      var name = ""
3977
+      var way = 0
3978
+      this.nameForm.drug_id = this.nameForm.advice_name
3979
+      for(let i=0;i<this.medicals.length;i++){
3980
+        if(this.nameForm.advice_name == this.medicals[i].id){
3981
+          name = this.medicals[i].drug_name
3982
+          way  = this.medicals[i].way
3983
+        }
3984
+      }
3985
+      if(way == 1){
3986
+        drug_name = name
3987
+      }
3988
+      if(way == 2){
3989
+        var arr = name.split("(自备药)")
3990
+        drug_name = arr[0]
3991
+      }
3992
+      
3993
+      this.nameForm.advice_name = drug_name
3994
+      this.nameForm.way = way
3969
       var _this = this;
3995
       var _this = this;
3970
       this.$refs[formName].validate(valid => {
3996
       this.$refs[formName].validate(valid => {
3971
         if (valid) {
3997
         if (valid) {
3980
                   var cle = _this.groupForm.adviceNames[index].children.length;
4006
                   var cle = _this.groupForm.adviceNames[index].children.length;
3981
                   var children = _this.groupForm.adviceNames[index].children;
4007
                   var children = _this.groupForm.adviceNames[index].children;
3982
                   for (let j = 0; j < ale; j++) {
4008
                   for (let j = 0; j < ale; j++) {
3983
-                    if (_this.groupSelectRow.row_key == children[j].row_key) {
3984
-                      _this.groupForm.adviceNames[index].children[
3985
-                        j
3986
-                      ].advice_name = _this.nameForm.advice_name;
3987
-                      _this.groupForm.adviceNames[index].children[
3988
-                        j
3989
-                      ].advice_desc = _this.nameForm.advice_desc;
3990
-                      _this.groupForm.adviceNames[index].children[
3991
-                        j
3992
-                      ].single_dose = "" + _this.nameForm.single_dose;
3993
-                      _this.groupForm.adviceNames[index].children[
3994
-                        j
3995
-                      ].single_dose_unit = _this.nameForm.single_dose_unit;
3996
-                      _this.groupForm.adviceNames[index].children[j].drug_spec =
3997
-                        "" + _this.nameForm.drug_spec;
3998
-                      _this.groupForm.adviceNames[index].children[
3999
-                        j
4000
-                      ].drug_spec_unit = _this.nameForm.drug_spec_unit;
4001
-                      _this.groupForm.adviceNames[index].children[
4002
-                        j
4003
-                      ].prescribing_number =
4004
-                        "" + _this.nameForm.prescribing_number;
4005
-                      _this.groupForm.adviceNames[index].children[
4006
-                        j
4007
-                      ].prescribing_number_unit =
4008
-                        _this.nameForm.prescribing_number_unit;
4009
-                      _this.groupForm.adviceNames[index].children[
4010
-                        j
4011
-                      ].delivery_way = _this.nameForm.delivery_way;
4012
-                      _this.groupForm.adviceNames[index].children[
4013
-                        j
4014
-                      ].execution_frequency =
4015
-                        _this.nameForm.execution_frequency;
4016
-
4009
+                    if (_this.groupSelectRow.row_key == children[j].row_key) {_this.groupForm.adviceNames[index].children[j].advice_name = _this.nameForm.advice_name;
4010
+                      _this.groupForm.adviceNames[index].children[j].advice_desc = _this.nameForm.advice_desc;
4011
+                      _this.groupForm.adviceNames[index].children[j].single_dose = "" + _this.nameForm.single_dose;
4012
+                      _this.groupForm.adviceNames[index].children[j].single_dose_unit = _this.nameForm.single_dose_unit;
4013
+                      _this.groupForm.adviceNames[index].children[j].drug_spec ="" + _this.nameForm.drug_spec;
4014
+                      _this.groupForm.adviceNames[index].children[j].drug_spec_unit = _this.nameForm.drug_spec_unit;
4015
+                      _this.groupForm.adviceNames[index].children[j].prescribing_number ="" + _this.nameForm.prescribing_number;
4016
+                      _this.groupForm.adviceNames[index].children[j].prescribing_number_unit =_this.nameForm.prescribing_number_unit;
4017
+                      _this.groupForm.adviceNames[index].children[j].delivery_way = _this.nameForm.delivery_way;
4018
+                      _this.groupForm.adviceNames[index].children[j].execution_frequency =_this.nameForm.execution_frequency;
4019
+                      _this.groupForm.adviceNames[index].children[j].drug_id = _this.nameForm.drug_id;
4020
+                      _this.groupForm.adviceNames[index].children[j].way = this.nameForm.way;
4017
                       _this.$set(
4021
                       _this.$set(
4018
                         _this.groupForm.adviceNames[index].children,
4022
                         _this.groupForm.adviceNames[index].children,
4019
                         j,
4023
                         j,
4348
         const params = {
4352
         const params = {
4349
           patient_id:id
4353
           patient_id:id
4350
         }
4354
         }
4355
+      console.log("params9999999999",params)
4351
       getSelfMedicalList(params).then(response=>{
4356
       getSelfMedicalList(params).then(response=>{
4352
          if(response.data.state == 1){
4357
          if(response.data.state == 1){
4358
+
4353
             var medicalList =  response.data.data.medicalList
4359
             var medicalList =  response.data.data.medicalList
4360
+            //way字段区分数据源:1代表来自基础库  2代表来自药品库
4361
+            for(let i=0;i<medicalList.length;i++){
4362
+               medicalList[i].way = 2
4363
+            }
4354
             for(let i=0;i<medicalList.length;i++){
4364
             for(let i=0;i<medicalList.length;i++){
4355
                medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
4365
                medicalList[i].drug_name = medicalList[i].drug_name+"(自备药)"
4356
             }
4366
             }
4357
-            this.medicals = medicalList
4367
+            var drugname = response.data.data.drugName
4368
+            for(let i=0;i<drugname.length;i++){
4369
+               drugname[i].way = 1
4370
+            }
4371
+
4372
+            drugname.push(...medicalList)
4373
+            this.medicals = drugname
4358
          }
4374
          }
4359
       })
4375
       })
4360
     },
4376
     },
4361
-    changeDrugName(name){
4362
-      var arr = name.split("(自备药)");
4377
+    changeDrugName(id){
4378
+      var drug_name = ""
4379
+      var name = ""
4380
+      var way = 0
4381
+      for(let i=0;i<this.medicals.length;i++){
4382
+        if(id == this.medicals[i].id){
4383
+          name = this.medicals[i].drug_name
4384
+          way  = this.medicals[i].way
4385
+        }
4386
+      }
4387
+      if(way == 1){
4388
+        drug_name = name
4389
+      }
4390
+      if(way == 2){
4391
+        var arr = name.split("(自备药)")
4392
+        drug_name = arr[0]
4393
+      }
4363
         const params = {
4394
         const params = {
4364
-          drug_name:arr[0],
4365
-          patient_id:this.$route.params && this.$route.params.id
4395
+          drug_name:drug_name,
4396
+          patient_id:this.$route.query.patient_id,
4397
+          way:way,
4366
         }
4398
         }
4367
       getDrugDescByDrugName(params).then(response=>{
4399
       getDrugDescByDrugName(params).then(response=>{
4368
           if(response.data.state == 1){
4400
           if(response.data.state == 1){
4369
-             var drugspec = response.data.data.drugspec
4401
+            var drugspec = response.data.data.drugspec
4402
+          
4403
+             if(drugspec[0].drug_spec !=0){
4404
+                this.nameForm.advice_desc = drugspec[0].drug_spec
4405
+             }
4406
+             if(drugspec[0].min_unit!=0){
4407
+                 this.nameForm.drug_spec_unit = drugspec[0].min_unit
4408
+             }
4409
+             if(drugspec[0].delivery_way!=0){
4410
+                 this.nameForm.delivery_way = drugspec[0].delivery_way
4411
+             }
4412
+             if(drugspec[0].execution_frequency!=0){
4413
+                this.nameForm.execution_frequency = drugspec[0].execution_frequency
4414
+             }
4415
+             if(drugspec[0].single_dose !=0){
4416
+                this.nameForm.single_dose = drugspec[0].single_dose
4417
+             } 
4418
+             if(drugspec[0].min_unit !=0){
4419
+               this.nameForm.single_dose_unit = drugspec[0].min_unit
4420
+             }
4421
+             if(drugspec[0].min_unit!=0){
4422
+               this.nameForm.prescribing_number_unit = drugspec[0].min_unit
4423
+             }
4424
+              
4425
+             if( drugspec[0].prescribing_number!=0){
4426
+                this.nameForm.prescribing_number = drugspec[0].prescribing_number
4427
+             }
4428
+          
4370
              this.drugSpec = drugspec
4429
              this.drugSpec = drugspec
4371
           }
4430
           }
4372
       })
4431
       })

+ 1 - 1
src/xt_pages/user/patients.vue View File

1267
             return false
1267
             return false
1268
           } else {
1268
           } else {
1269
             this.tableData = response.data.data.patients
1269
             this.tableData = response.data.data.patients
1270
-           console.log('病人是', this.tableData)
1270
+          //  console.log('病人是', this.tableData)
1271
             this.pageTotal = this.tableData.length
1271
             this.pageTotal = this.tableData.length
1272
             this.total = response.data.data.total
1272
             this.total = response.data.data.total
1273
           }
1273
           }

+ 13 - 13
src/xt_permission.js View File

12
 
12
 
13
 router.beforeEach((to, from, next) => {
13
 router.beforeEach((to, from, next) => {
14
   // 线上注释
14
   // 线上注释
15
-  if (!store.getters.configlist || store.getters.configlist === undefined || store.getters.configlist.length <= 0) {
16
-      store.dispatch('VerifyConfigList', []).then(() => {
17
-        next()
18
-      })
19
-    }
20
-    if (store.getters.permission_routers === undefined) {
21
-      store.dispatch('xt_GenerateRoutes', []).then(() => {
22
-        next()
23
-      })
24
-    } else {
25
-      next()
26
-    }
27
-    return
15
+  // if (!store.getters.configlist || store.getters.configlist === undefined || store.getters.configlist.length <= 0) {
16
+  //     store.dispatch('VerifyConfigList', []).then(() => {
17
+  //       next()
18
+  //     })
19
+  //   }
20
+  //   if (store.getters.permission_routers === undefined) {
21
+  //     store.dispatch('xt_GenerateRoutes', []).then(() => {
22
+  //       next()
23
+  //     })
24
+  //   } else {
25
+  //     next()
26
+  //   }
27
+  //   return
28
   // 线上注释
28
   // 线上注释
29
 
29
 
30
   NProgress.start()
30
   NProgress.start()