Browse Source

新分支

28169 7 months ago
parent
commit
89e6ec64ed

+ 54 - 0
src/api/patient.js View File

1120
     method:"get",
1120
     method:"get",
1121
     params:params
1121
     params:params
1122
   })
1122
   })
1123
+}
1124
+
1125
+export function getPatientById(id,params){
1126
+  
1127
+  return request({
1128
+    url:"/api/patient/getpatientbypatientid?id="+id,
1129
+    method:"Get",
1130
+    params:params,
1131
+  })
1132
+}
1133
+
1134
+export function savePatientLapse(data){
1135
+
1136
+  return request({
1137
+    url:"/api/patient/savepatientlapse",
1138
+    method:"post",
1139
+    data:data,
1140
+  })
1141
+}
1142
+
1143
+export function getPatientLapseRecord(params){
1144
+
1145
+  return request({
1146
+    url:"/api/patient/getpatientlapserecord",
1147
+    method:"get",
1148
+    params:params,
1149
+  })
1150
+}
1151
+
1152
+export function getPatientLapsoSummary(id,params){
1153
+
1154
+  return request({
1155
+    url:"/api/patient/getpatientlapsorecord?id="+id,
1156
+    method:"Get",
1157
+    params:params,
1158
+  })
1159
+}
1160
+
1161
+export function updatePatientLapseRecord(params){
1162
+  
1163
+  return request({
1164
+    url:"/api/patient/updatepatientlapserecord",
1165
+    method:"Post",
1166
+    data:params,
1167
+  })
1168
+}
1169
+
1170
+export function deletePatientLapsoRrecord(id,params){
1171
+ 
1172
+  return request({
1173
+    url:"/api/patient/deletepatientlapsorecord?id="+id,
1174
+    method:"get",
1175
+    params:params,
1176
+  })
1123
 }
1177
 }

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

83
       hidden: true,
83
       hidden: true,
84
       is_menu: false,
84
       is_menu: false,
85
     },
85
     },
86
+    {
87
+      path: '/stock/selfwarehouse/selfpatientdrugflow',
88
+      component: () => import('@/xt_pages/stock/selfPreparedMedicine/selfPatientDrugFlow'),
89
+      name: 'selfdrugflow',
90
+      meta: { title: '自备药流水', noCache: true },
91
+      hidden: true,
92
+      is_menu: false,
93
+    },
86
 
94
 
87
     {
95
     {
88
       path: '/stock/selfwarehouse/selfdrugbatchnumber',
96
       path: '/stock/selfwarehouse/selfdrugbatchnumber',

+ 26 - 14
src/xt_pages/dialysis/batch_print/batch_print_order_six.vue View File

3810
       "hemodialysis",
3810
       "hemodialysis",
3811
       "vascular_access_desc"
3811
       "vascular_access_desc"
3812
     );
3812
     );
3813
+    // for (var key in bloodAccessParOpera) {
3814
+    //   this.bloodAccessParOpera[bloodAccessParOpera[key].id] = bloodAccessParOpera[key];
3815
+    // }
3813
     this.bloodAccessParOpera = bloodAccessParOpera
3816
     this.bloodAccessParOpera = bloodAccessParOpera
3814
     this.way_arr = getDataConfig("hemodialysis", "way");
3817
     this.way_arr = getDataConfig("hemodialysis", "way");
3815
     this.consciousness_arr = getDataConfig("hemodialysis", "consciousness");
3818
     this.consciousness_arr = getDataConfig("hemodialysis", "consciousness");
3837
     // }
3840
     // }
3838
     console.log(this.bloodAccessParOpera, "this.bloodAccessParOpera");
3841
     console.log(this.bloodAccessParOpera, "this.bloodAccessParOpera");
3839
 
3842
 
3840
-    for (var key in bloodAccessParOpera) {
3841
-      this.bloodAccessParOpera[bloodAccessParOpera[key].id] =
3842
-        bloodAccessParOpera[key];
3843
-    }
3843
+   
3844
 
3844
 
3845
     this.blood_access_part = getDataConfig("hemodialysis", "vascular_access");
3845
     this.blood_access_part = getDataConfig("hemodialysis", "vascular_access");
3846
 
3846
 
4271
       }
4271
       }
4272
       return "";
4272
       return "";
4273
     },
4273
     },
4274
-    bloodAccessParOperaName(id) {
4275
-      console.log(tihs.records, "hhh");
4276
-      if (id in this.bloodAccessParOpera) {
4277
-        return this.bloodAccessParOpera[id].name;
4278
-      }
4279
-      return "";
4280
-    },
4274
+    // bloodAccessParOperaName(id) {
4275
+    //   console.log("id================",id)
4276
+    //   console.log(tihs.records, "hhh",this.bloodAccessParOpera);
4277
+    //   if (id in this.bloodAccessParOpera) {
4278
+    //     return this.bloodAccessParOpera[id].name;
4279
+    //   }
4280
+    //   return "";
4281
+    // },
4281
     isBbloodAccessParOperaCheck(key, value) {
4282
     isBbloodAccessParOperaCheck(key, value) {
4282
       if (key == null || typeof key === "undefined") {
4283
       if (key == null || typeof key === "undefined") {
4283
         return false;
4284
         return false;
4437
       return displace_liqui_part_name;
4438
       return displace_liqui_part_name;
4438
     },
4439
     },
4439
     bloodAccessParOperaName(id) {
4440
     bloodAccessParOperaName(id) {
4440
-      if (id in this.bloodAccessParOpera) {
4441
-        return this.bloodAccessParOpera[id].name;
4441
+      console.log("id=----------------",id)
4442
+      console.log("bloodAccessParOpera=----------------",this.bloodAccessParOpera)
4443
+      var name = ""
4444
+      for(let i=0;i<this.bloodAccessParOpera.length;i++){
4445
+        if(id == this.bloodAccessParOpera[i].id){
4446
+           name = this.bloodAccessParOpera[i].name
4447
+        }
4442
       }
4448
       }
4443
-      return "";
4449
+      
4450
+      return name
4451
+      // if (id in this.bloodAccessParOpera) {
4452
+
4453
+      //   return this.bloodAccessParOpera[id].name;
4454
+      // }
4455
+      // return "";
4444
     },
4456
     },
4445
   },
4457
   },
4446
 };
4458
 };

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

40
         <li v-if="isShow('实际置换量')">
40
         <li v-if="isShow('实际置换量')">
41
           <label>实际置换量 : </label>
41
           <label>实际置换量 : </label>
42
           <span class="content">{{ actual_displacement }}</span>
42
           <span class="content">{{ actual_displacement }}</span>
43
-          <span class="unit" v-if="this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21 || this.$store.getters.xt_user.template_info.template_id == 78 || this.$store.getters.xt_user.template_info.org_id == 10693">ml</span>
43
+          <span class="unit" v-if="this.$store.getters.xt_user.template_info.template_id == 20 || this.$store.getters.xt_user.template_info.template_id == 21  || this.$store.getters.xt_user.template_info.org_id == 10693">ml</span>
44
           <span class="unit" v-else>L</span>
44
           <span class="unit" v-else>L</span>
45
         </li>
45
         </li>
46
         <li v-if="isShow('压迫后内瘘震颤')">
46
         <li v-if="isShow('压迫后内瘘震颤')">

+ 1 - 4
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue View File

4802
         this.xtdate = response.data.data.xtdate;
4802
         this.xtdate = response.data.data.xtdate;
4803
         this.predialysis = response.data.data.PredialysisEvaluation;
4803
         this.predialysis = response.data.data.PredialysisEvaluation;
4804
         console.log('透前评估', this.predialysis)
4804
         console.log('透前评估', this.predialysis)
4805
-        this.predialysis.blood_access_part_opera_name =
4806
-          this.bloodAccessParOperaName(
4807
-            this.predialysis.blood_access_part_opera_id
4808
-          );
4805
+        this.predialysis.blood_access_part_opera_name =this.bloodAccessParOperaName(this.predialysis.blood_access_part_opera_id);
4809
         this.afterdialysis = response.data.data.AssessmentAfterDislysis;
4806
         this.afterdialysis = response.data.data.AssessmentAfterDislysis;
4810
         // console.log('透后体重', this.afterdialysis)
4807
         // console.log('透后体重', this.afterdialysis)
4811
         this.lastafterdialysis = response.data.data.assessmentAfterDislysis;
4808
         this.lastafterdialysis = response.data.data.assessmentAfterDislysis;

+ 1 - 1
src/xt_pages/stock/selfPreparedMedicine/patientDrugQuery.vue View File

472
        }
472
        }
473
       specification_name = val.drug.specification_name + "/" + val.drug.packing_unit
473
       specification_name = val.drug.specification_name + "/" + val.drug.packing_unit
474
      
474
      
475
-      this.$router.push({path:"/stock/selfwarehouse/selfdrugflow?drug_id="+val.drug_id+"&manufacturer="+manufacturer_name+"&packing_unit="+val.drug.packing_unit+"&overCount="+val.flush_count+"&patient_id="+val.patient_id})
475
+      this.$router.push({path:"/stock/selfwarehouse/selfpatientdrugflow?drug_id="+val.drug_id+"&manufacturer="+manufacturer_name+"&packing_unit="+val.drug.packing_unit+"&overCount="+val.flush_count+"&patient_id="+val.patient_id})
476
     },
476
     },
477
     toClickOne(val){
477
     toClickOne(val){
478
       var manufacturer_name = ""
478
       var manufacturer_name = ""

+ 5 - 5
src/xt_pages/user/components/PatientSidebar.vue View File

180
               name: '1-10',
180
               name: '1-10',
181
               label: '出院小结'
181
               label: '出院小结'
182
             },
182
             },
183
-            // {
184
-            //   name: '1-12',
185
-            //   label: '转归记录'
186
-            // }
183
+            {
184
+              name: '1-12',
185
+              label: '转归记录'
186
+            }
187
 
187
 
188
           ]
188
           ]
189
         },
189
         },
288
   },
288
   },
289
   methods: {
289
   methods: {
290
     handleNodeClick(data) {
290
     handleNodeClick(data) {
291
-      console.log("Data-----------",data.name)
291
+     
292
       var name = data.name
292
       var name = data.name
293
       this.name = data.name
293
       this.name = data.name
294
       window.sessionStorage.setItem('patientKey',data.name)
294
       window.sessionStorage.setItem('patientKey',data.name)

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

1330
               
1330
               
1331
               if (item.item_id > 0) {
1331
               if (item.item_id > 0) {
1332
                 if (typeof(inspectionsMap[parseInt(items[index].item_id)])  == "undefined") {
1332
                 if (typeof(inspectionsMap[parseInt(items[index].item_id)])  == "undefined") {
1333
-                  if(this.org_id == 10121 || this.org_id ==10138 || this.org_id == 0 || this.org_id ==10278){
1333
+                  if(this.org_id == 10121 || this.org_id ==10138 || this.org_id == 0 || this.org_id ==10278 || this.org_id == 10702){
1334
                     item.value = inspectionsMap[items[index].id].inspect_value
1334
                     item.value = inspectionsMap[items[index].id].inspect_value
1335
                     item.item_name = inspectionsMap[items[index].id].item_name
1335
                     item.item_name = inspectionsMap[items[index].id].item_name
1336
                   }else{
1336
                   }else{

+ 258 - 124
src/xt_pages/user/lapsoSummary.vue View File

1
 <template>
1
 <template>
2
     <div class="patient-container">
2
     <div class="patient-container">
3
-      <patient-sidebar :id="patientID" defaultActive="1-6" v-on:tran-patient="onTranPatient"></patient-sidebar>
3
+      <patient-sidebar :id="patientID" defaultActive="1-12" v-on:tran-patient="onTranPatient"></patient-sidebar>
4
       <div class="patient-app-container advice-container app-container">
4
       <div class="patient-app-container advice-container app-container">
5
         <div style="display:flex;justify-content: space-between;align-items: center;margin-bottom: 12px;">
5
         <div style="display:flex;justify-content: space-between;align-items: center;margin-bottom: 12px;">
6
            <span style="font-weight:bold;">转归记录列表</span>
6
            <span style="font-weight:bold;">转归记录列表</span>
7
            <el-button size="medium" type="primary" @click="dialogVisible =true">新增</el-button>
7
            <el-button size="medium" type="primary" @click="dialogVisible =true">新增</el-button>
8
         </div>
8
         </div>
9
         <el-table class="oictable" :data="tableData" border style="width:100%">
9
         <el-table class="oictable" :data="tableData" border style="width:100%">
10
-        <el-table-column prop="start_time" label="建立日期" width="100" align="center">
10
+        <el-table-column prop="start_time" label="转出日期" align="center">
11
             <template slot-scope="scope">
11
             <template slot-scope="scope">
12
-              <span>{{ getTime(scope.row.start_time)}}</span>
12
+              <span>{{ getTime(scope.row.record_date)}}</span>
13
             </template>
13
             </template>
14
        </el-table-column>
14
        </el-table-column>
15
-        <el-table-column prop="blood_access_part_opera_id" label="血管通路" align="center" width="120">
15
+        <el-table-column prop="blood_access_part_opera_id" label="转归类型" align="center">
16
           <template slot-scope="scope">
16
           <template slot-scope="scope">
17
-             <router-link
18
-                :to="'/patients/patient/' + scope.row.patient_id+'/vascularAccessDetail/'+scope.row.id"
19
-                style="color:#409eff;width:100%;display:block;"
20
-              >{{ scope.row.blood_access_part_opera_id }}
21
-              </router-link
22
-              >
17
+             <span v-if="scope.row.lapse_type == 1">转出</span>
18
+             <span v-if="scope.row.lapse_type == 2">院内转诊</span>
23
           </template>
19
           </template>
24
        </el-table-column>
20
        </el-table-column>
25
-       <el-table-column prop="blood_access_part_id" label="血管通路部位" width="200" align="center">
21
+       <el-table-column prop="blood_access_part_id" label="转归分类" align="center">
26
           <template slot-scope="scope">
22
           <template slot-scope="scope">
27
-             <span>{{scope.row.blood_access_part_id}}</span>  
23
+            <span v-if="scope.row.lapse_class == 1">终止透析</span>
24
+            <span v-if="scope.row.lapse_class == 2">转出院外</span>
25
+            <span v-if="scope.row.lapse_class == 3">回居住地透析</span>
26
+            <span v-if="scope.row.lapse_class == 4">临时透析</span>
27
+            <span v-if="scope.row.lapse_class == 5">转腹膜透析</span>
28
+            <span v-if="scope.row.lapse_class == 6">其他</span>
29
+            <span v-if="scope.row.lapse_class == 7">变更透析医院</span>
28
           </template>
30
           </template>
29
        </el-table-column>
31
        </el-table-column>
30
-        <el-table-column prop="inflow_pass" label="血管通路部位(其他)" width="100" align="center">
32
+        <el-table-column prop="inflow_pass" label="转归原因"  align="center">
31
            <template slot-scope="scope">
33
            <template slot-scope="scope">
32
-              <span>{{scope.row.other_vascular}}</span>
34
+              {{ scope.row.lapse_reason }}
33
            </template>
35
            </template>
34
         </el-table-column>
36
         </el-table-column>
35
-        <el-table-column prop="date" label="首次启用日期" width="120" align="center">
36
-            <template slot-scope="scope">
37
-              <span>{{ getTime(scope.row.first_start_time)}}</span>
38
-            </template>
39
-        </el-table-column>
40
        
37
        
41
-         <el-table-column prop="date" label="停用日期" align="center" width="100">
42
-            <template slot-scope="scope">
43
-              <span v-if="scope.row.stop_time>0">{{ getTime(scope.row.stop_time)}}</span>
44
-               <span v-if="scope.row.stop_time<0"></span>
45
-            </template>
46
-        </el-table-column>
47
-         <el-table-column prop="date" label="停用原因" align="center" width="120">
48
-            <template slot-scope="scope">
49
-               <span>{{scope.row.stop_reason}}</span>
50
-            </template>
51
-        </el-table-column>
52
-         <el-table-column prop="date" label="使用寿命(天)" align="center" width="120">
53
-            <template slot-scope="scope">
54
-             <span v-if="scope.row.stop_time>0&&(scope.row.stop_time - scope.row.start_time)/86400 == 0"></span> 
55
-             <span v-if="scope.row.stop_time>0&&(scope.row.stop_time - scope.row.start_time)/86400 != 0">{{(scope.row.stop_time - scope.row.start_time)/86400}}</span>
56
-            </template>
57
-        </el-table-column>
58
-         
59
-        <el-table-column prop="date" label="导管感染转归" align="center" width="120">
60
-            <template slot-scope="scope">
61
-               <span v-if="scope.row.ci_type == 1">拔管</span>
62
-               <span v-if="scope.row.ci_type == 2">治愈</span>
63
-               <span v-if="scope.row.ci_type == 3">死亡</span>
64
-               <span v-if="scope.row.ci_type == 4">放弃</span>
65
-               <span v-if="scope.row.ci_type == 9">其它</span>
66
-            </template>
67
-        </el-table-column>
68
-         
69
-         <el-table-column prop="date" label="血培养检查结果" align="center" width="120">
38
+       
39
+         <el-table-column prop="date" label="备注" align="center">
70
             <template slot-scope="scope">
40
             <template slot-scope="scope">
71
-               <span v-if="scope.row.blood_cultupe == 0">阴性</span>
72
-               <span v-if="scope.row.blood_cultupe == 1">阳性</span>
73
-               <span v-if="scope.row.blood_cultupe == 9">未查</span>
41
+              {{ scope.row.remark }}
74
             </template>
42
             </template>
75
-        </el-table-column>
43
+         </el-table-column>
76
         
44
         
77
-       <el-table-column prop="date" label="患者导管转归类型" align="center" width="120">
78
-            <template slot-scope="scope">
79
-               <span v-if="scope.row.sequelae_type == 1">局部感染</span>
80
-               <span v-if="scope.row.sequelae_type == 2">静脉炎</span>
81
-               <span v-if="scope.row.sequelae_type == 3">导管细菌定植</span>
82
-               <span v-if="scope.row.sequelae_type == 4">导管相关血型感染</span>
83
-            </template>
84
-        </el-table-column>
85
-         <el-table-column prop="date" label="备注" align="center" width="180">
86
-            <template slot-scope="scope">
87
-               <span>{{scope.row.remark}}</span>
88
-            </template>
89
-        </el-table-column>
90
-        <el-table-column prop="date" label="创始人" align="center" width="100">
91
-            <template slot-scope="scope">
92
-              <span>{{getDoctor(scope.row.creator)}}</span>
93
-            </template>
94
-        </el-table-column>
95
-         <el-table-column prop="date" fixed="right" label="操作" width="140" align="center">
45
+         <el-table-column prop="date" label="操作" align="center">
96
             <template slot-scope="scope">
46
             <template slot-scope="scope">
97
                <el-tooltip class="item" effect="dark" content="编辑" placement="top">
47
                <el-tooltip class="item" effect="dark" content="编辑" placement="top">
98
                  <el-button
48
                  <el-button
136
             <el-row  :gutter="24">
86
             <el-row  :gutter="24">
137
               <el-col :span="24">
87
               <el-col :span="24">
138
                 <el-form-item label="透析号:" >
88
                 <el-form-item label="透析号:" >
139
-                    <el-input style="width:200px" v-model="dialysis_no"></el-input>
89
+                    <el-input style="width:200px" v-model="dialysis_no" :disabled="true"></el-input>
140
                 </el-form-item>
90
                 </el-form-item>
141
                 
91
                 
142
               </el-col>
92
               </el-col>
144
             <el-row  :gutter="24" >
94
             <el-row  :gutter="24" >
145
               <el-col :span="24">
95
               <el-col :span="24">
146
                  <el-form-item  label="姓名:">
96
                  <el-form-item  label="姓名:">
147
-                    <el-input style="width:200px" v-model="name"></el-input>
97
+                    <el-input style="width:200px" v-model="name" :disabled="true"></el-input>
148
                  </el-form-item>
98
                  </el-form-item>
149
               </el-col>
99
               </el-col>
150
             </el-row>
100
             </el-row>
151
             <el-row :gutter="24">
101
             <el-row :gutter="24">
152
                 <el-col :span="24">
102
                 <el-col :span="24">
153
-                    <el-form-item label="转归类型:"  prop="access_project"  > 
103
+                    <el-form-item label="转归类型:"> 
154
                         <el-radio-group style="padding: 10px;" v-model="lapse_type">
104
                         <el-radio-group style="padding: 10px;" v-model="lapse_type">
155
                             <el-radio  label="1">转出</el-radio>
105
                             <el-radio  label="1">转出</el-radio>
156
                             <el-radio  label="2">院内转诊</el-radio>
106
                             <el-radio  label="2">院内转诊</el-radio>
161
 
111
 
162
             <el-row :gutter="24">
112
             <el-row :gutter="24">
163
                 <el-col :span="24">
113
                 <el-col :span="24">
164
-                    <el-form-item label="转归分类:"  prop="access_project"  > 
114
+                    <el-form-item label="转归分类:"> 
165
                         <el-radio-group style="padding: 10px;" v-model="lapse_class">
115
                         <el-radio-group style="padding: 10px;" v-model="lapse_class">
166
                             <el-radio  label="1">终止透析</el-radio>
116
                             <el-radio  label="1">终止透析</el-radio>
167
                             <el-radio  label="2">转出院外</el-radio>
117
                             <el-radio  label="2">转出院外</el-radio>
177
 
127
 
178
             <el-row :gutter="24">
128
             <el-row :gutter="24">
179
                 <el-col :span="24">
129
                 <el-col :span="24">
180
-                    <el-form-item label="转出原因:"  prop="access_project"> 
130
+                    <el-form-item label="转出原因:"> 
181
                         <el-input style="width: 300px;height: 50px;"  type="textarea" v-model="lapse_reason"></el-input>
131
                         <el-input style="width: 300px;height: 50px;"  type="textarea" v-model="lapse_reason"></el-input>
182
                     </el-form-item>
132
                     </el-form-item>
183
                 </el-col>
133
                 </el-col>
185
 
135
 
186
             <el-row :gutter="24">
136
             <el-row :gutter="24">
187
                 <el-col :span="24">
137
                 <el-col :span="24">
188
-                    <el-form-item label="转出日期:"  prop="access_project"  > 
138
+                    <el-form-item label="转出日期:"> 
189
                         <el-date-picker
139
                         <el-date-picker
190
                             v-model="record_date"
140
                             v-model="record_date"
191
                             type="date"
141
                             type="date"
142
+                             value-format="yyyy-MM-dd"
192
                             placeholder="选择日期">
143
                             placeholder="选择日期">
193
                          </el-date-picker>
144
                          </el-date-picker>
194
                     </el-form-item>
145
                     </el-form-item>
197
 
148
 
198
             <el-row :gutter="24">
149
             <el-row :gutter="24">
199
                 <el-col :span="24">
150
                 <el-col :span="24">
200
-                    <el-form-item label="操作人:"  prop="access_project"  > 
151
+                    <el-form-item label="操作人:"> 
201
                         <el-select v-model="admin_user_id" placeholder="请选择">
152
                         <el-select v-model="admin_user_id" placeholder="请选择">
202
                             <el-option
153
                             <el-option
203
-                            v-for="item in options"
204
-                            :key="item.value"
205
-                            :label="item.label"
206
-                            :value="item.value">
154
+                            v-for="item in adminUserList"
155
+                            :key="item.admin_user_id"
156
+                            :label="item.user_name"
157
+                            :value="item.admin_user_id">
207
                             </el-option>
158
                             </el-option>
208
                          </el-select>
159
                          </el-select>
209
                     </el-form-item>
160
                     </el-form-item>
212
 
163
 
213
             <el-row :gutter="24">
164
             <el-row :gutter="24">
214
                 <el-col :span="24">
165
                 <el-col :span="24">
215
-                    <el-form-item label="备注:"  prop="access_project"  > 
166
+                    <el-form-item label="备注:"> 
216
                         <el-input style="width: 300px;height: 50px;" type="textarea" v-model="remark"></el-input>
167
                         <el-input style="width: 300px;height: 50px;" type="textarea" v-model="remark"></el-input>
217
                     </el-form-item>
168
                     </el-form-item>
218
                 </el-col>
169
                 </el-col>
222
   
173
   
223
         <span slot="footer" class="dialog-footer">
174
         <span slot="footer" class="dialog-footer">
224
             <el-button @click="dialogVisible = false">取 消</el-button>
175
             <el-button @click="dialogVisible = false">取 消</el-button>
225
-            <el-button type="primary" @click="saveVasularAccess('form')">保存</el-button>
176
+            <el-button type="primary" @click="savePatientLapse('form')">保存</el-button>
177
+        </span>
178
+        </el-dialog>
179
+
180
+
181
+
182
+        <el-dialog
183
+            title="编辑"
184
+            :visible.sync="editDialogVisible"
185
+            width="65%"
186
+            center>
187
+          <el-form label-width="150px" :model="form" ref="form" :rules="rules" >
188
+            <el-row  :gutter="24">
189
+              <el-col :span="24">
190
+                <el-form-item label="透析号:" >
191
+                    <el-input style="width:200px" v-model="dialysis_no" :disabled="true"></el-input>
192
+                </el-form-item>
193
+                
194
+              </el-col>
195
+            </el-row>
196
+            <el-row  :gutter="24" >
197
+              <el-col :span="24">
198
+                 <el-form-item  label="姓名:">
199
+                    <el-input style="width:200px" v-model="name" :disabled="true"></el-input>
200
+                 </el-form-item>
201
+              </el-col>
202
+            </el-row>
203
+            <el-row :gutter="24">
204
+                <el-col :span="24">
205
+                    <el-form-item label="转归类型:"> 
206
+                        <el-radio-group style="padding: 10px;" v-model="lapse_type">
207
+                            <el-radio  label="1">转出</el-radio>
208
+                            <el-radio  label="2">院内转诊</el-radio>
209
+                      </el-radio-group>
210
+                    </el-form-item>
211
+                </el-col>
212
+            </el-row>
213
+
214
+            <el-row :gutter="24">
215
+                <el-col :span="24">
216
+                    <el-form-item label="转归分类:"> 
217
+                        <el-radio-group style="padding: 10px;" v-model="lapse_class">
218
+                            <el-radio  label="1">终止透析</el-radio>
219
+                            <el-radio  label="2">转出院外</el-radio>
220
+                            <el-radio  label="3">回居住地透析</el-radio>
221
+                            <el-radio  label="4">临时透析</el-radio>
222
+                            <el-radio  label="5">转腹膜透析</el-radio>
223
+                            <el-radio  label="6">其他</el-radio>
224
+                            <el-radio  label="7">变更透析医院</el-radio>
225
+                      </el-radio-group>
226
+                    </el-form-item>
227
+                </el-col>
228
+            </el-row>
229
+
230
+            <el-row :gutter="24">
231
+                <el-col :span="24">
232
+                    <el-form-item label="转出原因:"> 
233
+                        <el-input style="width: 300px;height: 50px;"  type="textarea" v-model="lapse_reason"></el-input>
234
+                    </el-form-item>
235
+                </el-col>
236
+            </el-row>
237
+
238
+            <el-row :gutter="24">
239
+                <el-col :span="24">
240
+                    <el-form-item label="转出日期:"> 
241
+                        <el-date-picker
242
+                            v-model="record_date"
243
+                            type="date"
244
+                             value-format="yyyy-MM-dd"
245
+                            placeholder="选择日期">
246
+                         </el-date-picker>
247
+                    </el-form-item>
248
+                </el-col>
249
+            </el-row>
250
+
251
+            <el-row :gutter="24">
252
+                <el-col :span="24">
253
+                    <el-form-item label="操作人:"> 
254
+                        <el-select v-model="admin_user_id" placeholder="请选择">
255
+                            <el-option
256
+                            v-for="item in adminUserList"
257
+                            :key="item.admin_user_id"
258
+                            :label="item.user_name"
259
+                            :value="item.admin_user_id">
260
+                            </el-option>
261
+                         </el-select>
262
+                    </el-form-item>
263
+                </el-col>
264
+            </el-row>
265
+
266
+            <el-row :gutter="24">
267
+                <el-col :span="24">
268
+                    <el-form-item label="备注:"> 
269
+                        <el-input style="width: 300px;height: 50px;" type="textarea" v-model="remark"></el-input>
270
+                    </el-form-item>
271
+                </el-col>
272
+            </el-row>
273
+           
274
+          </el-form>
275
+  
276
+        <span slot="footer" class="dialog-footer">
277
+            <el-button @click="editDialogVisible = false">取 消</el-button>
278
+            <el-button type="primary" @click="updatePatientLapse('form')">保存</el-button>
226
         </span>
279
         </span>
227
         </el-dialog>
280
         </el-dialog>
228
   
281
   
229
       </div>
282
       </div>
230
-  
231
-       <!-- <multi-select-box
232
-          :propsForm="InnerDialogProps"
233
-          v-on:dialog-comfirm="innerDialogComfirm"
234
-          v-on:dialog-cancle="innerDialogCancle"
235
-        ></multi-select-box> -->
236
-        
283
+      
237
     </div>
284
     </div>
238
   </template>
285
   </template>
239
   <script>
286
   <script>
240
     const moment = require('moment')
287
     const moment = require('moment')
241
     import PatientSidebar from './components/PatientSidebar'
288
     import PatientSidebar from './components/PatientSidebar'
242
-    import { fetchAllAdminUsers, fetchAllDoctorAndNurse } from '@/api/doctor'
243
-    import { saveVasularAccess,getAllVascularAccessList,getVascularAccessByDetail,updatedVasularAccess,DeleteVascularAccess,getAccessList } from '@/api/patient'
289
+    import { savePatientLapse,getAllDoctor,deletePatientLapsoRrecord,getPatientById,getPatientLapseRecord,getPatientLapsoSummary,updatePatientLapseRecord} from '@/api/patient'
244
   
290
   
245
     import { jsGetAge, uParseTime } from '@/utils/tools'
291
     import { jsGetAge, uParseTime } from '@/utils/tools'
246
     import { getDataConfig } from '@/utils/data'
292
     import { getDataConfig } from '@/utils/data'
270
           },
316
           },
271
           dialogVisible:false,
317
           dialogVisible:false,
272
           editDialogVisible:false,
318
           editDialogVisible:false,
319
+
273
           form:{
320
           form:{
274
            id:0,
321
            id:0,
275
            access_project:"1",
322
            access_project:"1",
335
           showOne:false,
382
           showOne:false,
336
           name:"",
383
           name:"",
337
           dialysis_no:"",
384
           dialysis_no:"",
338
-          lapse_type:"",
339
-          lapse_class:"",
385
+          lapse_type:"1",
386
+          lapse_class:"1",
340
           lapse_reason:"",
387
           lapse_reason:"",
341
           record_date:"",
388
           record_date:"",
342
-          admin_user_id:"",
343
-          remark:""
389
+          remark:"",
390
+          adminUserList:[],
391
+          limit:10,
392
+          page:1,
393
+          total:0,
394
+          id:0,
395
+          admin_user_id:this.$store.getters.xt_user.user.id
344
         }
396
         }
345
       },
397
       },
346
       methods: {
398
       methods: {
352
         CreateTime(time) {
404
         CreateTime(time) {
353
           return uParseTime(time, '{y}-{m}-{d} {h}:{i}:{s}')
405
           return uParseTime(time, '{y}-{m}-{d} {h}:{i}:{s}')
354
         },
406
         },
355
-     
356
-       
357
-      
358
-       
359
         handleSizeChange(limit) {
407
         handleSizeChange(limit) {
360
           this.limit = limit
408
           this.limit = limit
361
           this.getlist()
409
           this.getlist()
393
          }
441
          }
394
          return name
442
          return name
395
        },
443
        },
396
-       handleDeleteAdviceTemplate(id,index){
397
-         this.$confirm("确认删除吗?", "删除", {
398
-          confirmButtonText: "确 定",
399
-          cancelButtonText: "取 消",
400
-          type: "warning"
444
+       getPatientById(id){
445
+        getPatientById(id).then(response=>{
446
+           if(response.data.state ==1){
447
+             var patient = response.data.data.patients
448
+            
449
+             this.dialysis_no = patient.dialysis_no
450
+             this.name = patient.name
451
+             
452
+           }
401
         })
453
         })
402
-          .then(() => {
403
-            DeleteVascularAccess(id).then(response => {
404
-              if(response.data.state == 1){
405
-                var msg = response.data.data.msg
406
-                this.tableData.splice(index, 1);
407
-                this.$message.success("删除成功!")
408
-              }
409
-               
410
-              
411
-            });
412
-          })
413
-          .catch(() => {});
414
        },
454
        },
415
-       getlist(){
416
-            
417
-       }
455
+       getAllDoctor() {
456
+        getAllDoctor().then(response => {
457
+          if (response.data.state == 1) {
458
+            var appRole = response.data.data.appRole
459
+            this.adminUserList = appRole
460
+          }
461
+        })
462
+      },
463
+      savePatientLapse(){
464
+          var params = {
465
+            patient_id:this.patientID,
466
+            lapse_type:parseInt(this.lapse_type),
467
+            lapse_class:parseInt(this.lapse_class), 
468
+            lapse_reason:this.lapse_reason,
469
+            record_date:this.record_date,
470
+            admin_user_id:this.admin_user_id,
471
+            remark:this.remark,
472
+          }
473
+          console.log("params=====",params)
474
+        savePatientLapse(params).then(response=>{
475
+          if(response.data.state==1){
476
+             var record = response.data.data.record
477
+             this.$message.success("保存成功!")
478
+             this.dialogVisible = false
479
+             this.remark = ""
480
+             this.lapse_reason = ""
481
+             this.getlist()
482
+
483
+          }
484
+        })
485
+      },
486
+      getlist(){
487
+         var params = {
488
+          patient_id:this.patientID,
489
+          limit:this.limit,
490
+          page:this.page,
491
+         }
492
+        getPatientLapseRecord(params).then(response=>{
493
+           if(response.data.state == 1){
494
+             var total = response.data.data.total
495
+             this.total = total
496
+             var record =  response.data.data.record
497
+             this.tableData = record
498
+           }
499
+        })
500
+      },
501
+      handleUpdateAdviceTemplate(id){
502
+        getPatientLapsoSummary(id).then(response=>{
503
+          if(response.data.state == 1){
504
+             var lapsorecord = response.data.data.lapsorecord
505
+             console.log("lapsorecord",lapsorecord)
506
+             this.lapse_type = lapsorecord.lapse_type.toString()
507
+             this.lapse_class = lapsorecord.lapse_class.toString()
508
+             this.lapse_reason = lapsorecord.lapse_reason
509
+             this.record_date = this.getTime(lapsorecord.record_date)
510
+             this.remark = lapsorecord.remark
511
+             this.admin_user_id = lapsorecord.admin_user_id
512
+             this.id = lapsorecord.id
513
+             this.editDialogVisible = true
514
+           
515
+          }
516
+        })
517
+
518
+      },
519
+      updatePatientLapse(){
520
+        var params = {
521
+            patient_id:this.patientID,
522
+            lapse_type:parseInt(this.lapse_type),
523
+            lapse_class:parseInt(this.lapse_class), 
524
+            lapse_reason:this.lapse_reason,
525
+            record_date:this.record_date,
526
+            admin_user_id:this.admin_user_id,
527
+            remark:this.remark,
528
+            id:this.id,
529
+          }
530
+        updatePatientLapseRecord(params).then(response=>{
531
+           if(response.data.state== 1){
532
+             var record = response.data.data.record
533
+             this.editDialogVisible = false
534
+             this.$message.success("保存成功!")
535
+             this.getlist()
536
+           }
537
+        })
538
+      },
539
+      handleDeleteAdviceTemplate(id,index){
540
+        deletePatientLapsoRrecord(id).then(response=>{
541
+            if(response.data.state==1){
542
+               var msg = response.data.data.msg
543
+               this.$message.success("保存成功")
544
+               this.tableData.splice(index,1)
545
+            }
546
+        })
547
+      }
418
      
548
      
419
   
549
   
420
      
550
      
421
       },
551
       },
422
       created() {
552
       created() {
553
+        this.record_date =  moment(new Date()).format('YYYY-MM-DD')
554
+       
423
         const id = this.$route.params && this.$route.params.id
555
         const id = this.$route.params && this.$route.params.id
424
-        this.patientID = parseInt(id)
425
-        this.getAllPatient()
426
-        this.getlist()
556
+        console.log('id是设么', id)
557
+         this.patientID = parseInt(id)
558
+         this.getPatientById(id)
559
+         this.getAllDoctor()
560
+         this.getlist()
427
       },
561
       },
428
      
562
      
429
     }
563
     }

+ 4 - 2
src/xt_pages/user/patients.vue View File

1802
           if(this.tableData[i].is_infectious == 2){
1802
           if(this.tableData[i].is_infectious == 2){
1803
              this.tableData[i].is_infectiouss = "阳性"
1803
              this.tableData[i].is_infectiouss = "阳性"
1804
           }
1804
           }
1805
+
1806
+          this.tableData[i].ctime = this.getTime(this.tableData[i].created_time)
1805
         }
1807
         }
1806
 
1808
 
1807
-        const tHeader = ['姓名', '性别', '身份证号码','年龄','透析号','首次治疗时间','本人电话','患者来源','治疗状态','传染病','家庭住址','工作单位']
1808
-        const filterVal = ['name', 'genders', 'id_card_no','age_year','dialysis_no','first_dialysis_date','phone','sources','lapesetos','is_infectiouss','home_address','work_unit']
1809
+        const tHeader = ['姓名', '性别', '身份证号码','年龄','透析号','首次治疗时间','本人电话','患者来源','治疗状态','传染病','家庭住址','工作单位',"登记时间","家属电话","上家透析医院"]
1810
+        const filterVal = ['name', 'genders', 'id_card_no','age_year','dialysis_no','first_dialysis_date','phone','sources','lapesetos','is_infectiouss','home_address','work_unit','ctime','home_telephone','first_dialysis_hospital']
1809
         console.log("table",this.tableData)
1811
         console.log("table",this.tableData)
1810
 
1812
 
1811
         const data = this.formatJson(filterVal, this.tableData)
1813
         const data = this.formatJson(filterVal, this.tableData)

+ 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
   NProgress.start()
29
   NProgress.start()
30
   // console.log(store.getters.current_role_urls.indexOf(to.path))
30
   // console.log(store.getters.current_role_urls.indexOf(to.path))