Browse Source

Merge branch 'superman' of http://git.shengws.com/zhangbj/xt_vue into superman

XMLWAN 4 years ago
parent
commit
363a24a9fe

+ 21 - 0
src/api/inspection.js View File

38
         params:params,
38
         params:params,
39
     })
39
     })
40
 }
40
 }
41
+
42
+
43
+export function GetUploadInspections(params){
44
+  return request({
45
+    url:'/api/patient/inspection/get',
46
+    method:'get',
47
+    params:params,
48
+  })
49
+}
50
+
51
+export function GetInitInspections(params){
52
+  return request({
53
+    url:'/api/patient/inspectioninit/get',
54
+    method:'get',
55
+    params:params,
56
+  })
57
+}
58
+
59
+
60
+
61
+

+ 6 - 6
src/xt_pages/data/druguseTemplate.vue View File

180
 
180
 
181
               <el-table-column prop="blood_flow_volume" align="center" label="提醒频率">
181
               <el-table-column prop="blood_flow_volume" align="center" label="提醒频率">
182
                 <template slot-scope="scope">
182
                 <template slot-scope="scope">
183
-                  <span v-if="scope.row.frequency_type == 1">每次必推</span>
184
-                  <span v-if="scope.row.frequency_type == 2">{{scope.row.day_count}}天/1次</span>
185
-                  <span v-if="scope.row.frequency_type == 3">每周{{scope.row.week_days}}</span>
183
+                  <span v-if="scope.row.advice_type == 1 &&scope.row.frequency_type == 1">每次必推</span>
184
+                  <span v-if="scope.row.advice_type == 1&&scope.row.frequency_type == 2">{{scope.row.day_count}}天/1次</span>
185
+                  <span v-if="scope.row.advice_type == 1&&scope.row.frequency_type == 3">每周{{scope.row.week_days}}</span>
186
                 </template>
186
                 </template>
187
               </el-table-column>
187
               </el-table-column>
188
 
188
 
284
 
284
 
285
                   <el-table-column prop="blood_flow_volume" align="center" label="提醒频率" v-if="form.advice_type == 1">
285
                   <el-table-column prop="blood_flow_volume" align="center" label="提醒频率" v-if="form.advice_type == 1">
286
                     <template slot-scope="scope">
286
                     <template slot-scope="scope">
287
-                      <span v-if="scope.row.frequency_type == 1">每次必推</span>
288
-                      <span v-if="scope.row.frequency_type == 2">{{scope.row.day_count}}天/1次</span>
289
-                      <span v-if="scope.row.frequency_type == 3">每周{{scope.row.weekdays}}</span>
287
+                      <span v-if="scope.row.advice_type == 1 &&scope.row.frequency_type == 1">每次必推</span>
288
+                      <span v-if="scope.row.advice_type == 1 &&scope.row.frequency_type == 2">{{scope.row.day_count}}天/1次</span>
289
+                      <span v-if="scope.row.advice_type == 1 &&scope.row.frequency_type == 3">每周{{scope.row.weekdays}}</span>
290
                     </template>
290
                     </template>
291
                   </el-table-column>
291
                   </el-table-column>
292
 
292
 

+ 80 - 9
src/xt_pages/upload/fast/FastCountry.vue View File

6
       v-on:inspection="inspectionClick()"
6
       v-on:inspection="inspectionClick()"
7
     ></fast-patients-sidebar>
7
     ></fast-patients-sidebar>
8
     <!-- <fast-upload-detail v-if="isShow == 1"  :id="patientID"  :is-edit='true' :class='panelClass'></fast-upload-detail> -->
8
     <!-- <fast-upload-detail v-if="isShow == 1"  :id="patientID"  :is-edit='true' :class='panelClass'></fast-upload-detail> -->
9
-    <one v-if="isShow == 1" :id="patientID" :is-edit='true' :class='panelClass'></one>
10
-    <two v-if="isShow == 2"
9
+    <one ref="one" v-if="isShow == 1" :patientID="patientID" :is-edit='true' :class='panelClass' @></one>
10
+    <two ref="two" v-if="isShow == 2"
11
          :id="patientID"
11
          :id="patientID"
12
          :is-edit="true"
12
          :is-edit="true"
13
          :class="panelClass"></two>
13
          :class="panelClass"></two>
14
-    <!--<fast-upload-inspectiton-detail-->
15
-    <!--v-if="isShow == 2"-->
16
-    <!--:id="patientID"-->
17
-    <!--:is-edit="true"-->
18
-    <!--:class="panelClass"-->
19
-    <!--&gt;</fast-upload-inspectiton-detail>-->
20
   </div>
14
   </div>
21
 </template>
15
 </template>
22
 
16
 
39
     },
33
     },
40
     data() {
34
     data() {
41
       return {
35
       return {
42
-        patientID: 1,
36
+        patientID: 0,
43
         panelClass: 'patient-app-container',
37
         panelClass: 'patient-app-container',
44
         patientInfo: {
38
         patientInfo: {
45
           id: 0
39
           id: 0
64
             this.patientsList = response.data.data.patients
58
             this.patientsList = response.data.data.patients
65
             if (type == 1) {
59
             if (type == 1) {
66
               this.patientID = this.patientsList[0].id
60
               this.patientID = this.patientsList[0].id
61
+
67
             } else {
62
             } else {
68
               this.patientID = this.$route.query.id
63
               this.patientID = this.$route.query.id
69
             }
64
             }
65
+            this.$nextTick(() => {
66
+              this.$refs.one.fetchPatient(this.patientID)
67
+
68
+            })
70
           }
69
           }
71
         })
70
         })
72
       },
71
       },
73
       patientInfoClick: function() {
72
       patientInfoClick: function() {
74
         this.isShow = 1
73
         this.isShow = 1
74
+        this.$nextTick(() => {
75
+          this.$refs.one.fetchPatient(this.patientID)
76
+
77
+        })
78
+
75
       },
79
       },
76
       inspectionClick: function() {
80
       inspectionClick: function() {
77
         this.isShow = 2
81
         this.isShow = 2
82
+        this.$nextTick(() => {
83
+          var start_time = new Date(this.getQuarterStartDate().replace(/-/g, '/')).getTime() / 1000
84
+          var end_time = new Date(this.getQuarterEndDate().replace(/-/g, '/')).getTime() / 1000
85
+          this.$refs.two.GetInitInspections()
86
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,1,"1")
87
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,2,"2-4-20")
88
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,3,"21")
89
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,4,"2-4-15-24-25")
90
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,5,"15-23")
91
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,6,"14")
92
+          this.$refs.two.GetUploadInspections(this.patientID,start_time,end_time,7,"22")
93
+        })
94
+
95
+      }, getQuarterStartDate: function() {
96
+        var now = new Date() //当前日期
97
+        var nowYear = now.getFullYear() //当前年
98
+        nowYear += (nowYear < 2000) ? 1900 : 0
99
+
100
+        var quarterStartDate = new Date(nowYear, this.getQuarterStartMonth(), 1)
101
+        return this.formatDate(quarterStartDate)
102
+      }, getQuarterEndDate: function() {
103
+        var now = new Date() //当前日期
104
+        var nowYear = now.getFullYear() //当前年
105
+        nowYear += (nowYear < 2000) ? 1900 : 0
106
+        var quarterEndMonth = this.getQuarterStartMonth() + 2
107
+        var quarterStartDate = new Date(nowYear, quarterEndMonth, this.getMonthDays(quarterEndMonth))
108
+        return this.formatDate(quarterStartDate)
109
+      }, formatDate: function(date) {
110
+        var myyear = date.getFullYear()
111
+        var mymonth = date.getMonth() + 1
112
+        var myweekday = date.getDate()
113
+
114
+        if (mymonth < 10) {
115
+          mymonth = '0' + mymonth
116
+        }
117
+        if (myweekday < 10) {
118
+          myweekday = '0' + myweekday
119
+        }
120
+        return (myyear + '-' + mymonth + '-' + myweekday)
121
+      }, getQuarterStartMonth: function() {
122
+        var now = new Date() //当前日期
123
+        var nowMonth = now.getMonth() //当前月
124
+
125
+        var quarterStartMonth = 0
126
+        if (nowMonth < 3) {
127
+          quarterStartMonth = 0
128
+        }
129
+        if (2 < nowMonth && nowMonth < 6) {
130
+          quarterStartMonth = 3
131
+        }
132
+        if (5 < nowMonth && nowMonth < 9) {
133
+          quarterStartMonth = 6
134
+        }
135
+        if (nowMonth > 8) {
136
+          quarterStartMonth = 9
137
+        }
138
+        return quarterStartMonth
139
+      },  //获得某月的天数
140
+      getMonthDays(myMonth) {
141
+        var now = new Date() //当前日期
142
+        var nowYear = now.getYear() //当前年
143
+        nowYear += (nowYear < 2000) ? 1900 : 0
144
+        var monthStartDate = new Date(nowYear, myMonth, 1)
145
+        var monthEndDate = new Date(nowYear, myMonth + 1, 1)
146
+        var days = (monthEndDate - monthStartDate) / (1000 * 60 * 60 * 24)
147
+        return days
78
       }
148
       }
149
+
79
     }
150
     }
80
   }
151
   }
81
 </script>
152
 </script>

+ 3 - 3
src/xt_pages/upload/fast/FastPatientsSidebar.vue View File

87
     handleNodeClick(data) {
87
     handleNodeClick(data) {
88
       var name = data.name;
88
       var name = data.name;
89
       if (name == "1-1") {
89
       if (name == "1-1") {
90
-        this.$emit("patient");
90
+        this.$emit("patient",this.selectID);
91
       } else if (name == "1-2") {
91
       } else if (name == "1-2") {
92
-        this.$emit("inspection");
92
+        this.$emit("inspection",this.selectID);
93
       }
93
       }
94
     },
94
     },
95
 
95
 
102
             for (let index = 0; index < len; index++) {
102
             for (let index = 0; index < len; index++) {
103
               if (this.patientsList[index].id == this.id) {
103
               if (this.patientsList[index].id == this.id) {
104
                 this.currentPatient = this.patientsList[index];
104
                 this.currentPatient = this.patientsList[index];
105
-
106
                 this.selectID = this.patientsList[index].id;
105
                 this.selectID = this.patientsList[index].id;
107
                 this.$emit("tran-patient", this.currentPatient);
106
                 this.$emit("tran-patient", this.currentPatient);
108
                 break;
107
                 break;
108
+
109
               }
109
               }
110
             }
110
             }
111
           }
111
           }

+ 2 - 1
src/xt_pages/upload/fast/FastProvince.vue View File

29
               :value="item.id">
29
               :value="item.id">
30
             </el-option>
30
             </el-option>
31
           </el-select>
31
           </el-select>
32
-          <el-select v-model="form.city" disabled filterable placeholder="请选择" @change="changeCity">
32
+          <el-select v-model="form.city" disabled filterable placeholder="请选择" >
33
             <el-option
33
             <el-option
34
               v-for="item in citys"
34
               v-for="item in citys"
35
               :key="item.id"
35
               :key="item.id"
57
         dialogVisible: false,
57
         dialogVisible: false,
58
         end_time: '',
58
         end_time: '',
59
         provinces: [],
59
         provinces: [],
60
+        citys:[],
60
         form: {
61
         form: {
61
           province: '',
62
           province: '',
62
           city: ''
63
           city: ''

+ 0 - 1
src/xt_pages/upload/fast/FastUploadDetail.vue View File

384
       fetchPatient(id) {
384
       fetchPatient(id) {
385
         fetchPatient(id)
385
         fetchPatient(id)
386
           .then(response => {
386
           .then(response => {
387
-            console.log(response.data.data)
388
             if (response.data.state === 1) {
387
             if (response.data.state === 1) {
389
               this.$emit('tran-patient-info', response.data.data.patient)
388
               this.$emit('tran-patient-info', response.data.data.patient)
390
               var patietInfo = response.data.data.patient
389
               var patietInfo = response.data.data.patient

+ 373 - 54
src/xt_pages/upload/fast/One.vue View File

7
       <div class="row">
7
       <div class="row">
8
         <div class="rowOne">
8
         <div class="rowOne">
9
           <p class="rowName">首次诊治时间:</p>
9
           <p class="rowName">首次诊治时间:</p>
10
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
10
+          <el-input placeholder="请输入内容" v-model="form.first_treatment_date" :disabled="true">
11
           </el-input>
11
           </el-input>
12
-          <div class="btn">复制</div>
12
+          <div class="btn" v-clipboard:copy="form.first_treatment_date"
13
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
13
         </div>
14
         </div>
14
         <div class="rowOne">
15
         <div class="rowOne">
15
           <p class="rowName1">
16
           <p class="rowName1">
16
             首次肾脏替代治疗时间 :
17
             首次肾脏替代治疗时间 :
17
           </p>
18
           </p>
18
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
19
+          <el-input placeholder="请输入内容" v-model="form.firstDialysisDate" :disabled="true">
19
           </el-input>
20
           </el-input>
20
-          <div class="btn">复制</div>
21
+          <div class="btn" v-clipboard:copy="form.firstDialysisDate"
22
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
21
         </div>
23
         </div>
22
         <div class="rowOne">
24
         <div class="rowOne">
23
           <p class="rowName">创建者:</p>
25
           <p class="rowName">创建者:</p>
24
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
26
+          <el-input placeholder="请输入内容" v-model="form.registrars" :disabled="true">
25
           </el-input>
27
           </el-input>
26
-          <div class="btn">复制</div>
28
+          <div class="btn" v-clipboard:copy="form.registrars"
29
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
27
         </div>
30
         </div>
28
         <div class="rowOne">
31
         <div class="rowOne">
29
           <p class="rowName">创建日期:</p>
32
           <p class="rowName">创建日期:</p>
30
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
33
+          <el-input placeholder="请输入内容" v-model="form.create_time" :disabled="true">
31
           </el-input>
34
           </el-input>
32
-          <div class="btn">复制</div>
35
+          <div class="btn" v-clipboard:copy="form.create_time"
36
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
33
         </div>
37
         </div>
34
       </div>
38
       </div>
35
       <div class="row">
39
       <div class="row">
36
         <div class="rowOne">
40
         <div class="rowOne">
37
           <p class="rowName">姓名:</p>
41
           <p class="rowName">姓名:</p>
38
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
42
+          <el-input placeholder="请输入内容" v-model="form.name" :disabled="true">
39
           </el-input>
43
           </el-input>
40
-          <div class="btn">复制</div>
44
+          <div class="btn" v-clipboard:copy="form.name"
45
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
41
         </div>
46
         </div>
42
         <div class="rowOne">
47
         <div class="rowOne">
43
           <p class="rowName">性别:</p>
48
           <p class="rowName">性别:</p>
44
           <div class="radioOne">
49
           <div class="radioOne">
45
             <template>
50
             <template>
46
-              <el-radio v-model="radio" label="1">男</el-radio>
47
-              <el-radio v-model="radio" label="2">女</el-radio>
51
+              <el-radio v-model="form.gender" label="1">男</el-radio>
52
+              <el-radio v-model="form.gender" label="2">女</el-radio>
48
             </template>
53
             </template>
49
           </div>
54
           </div>
50
         </div>
55
         </div>
51
         <div class="rowOne">
56
         <div class="rowOne">
52
           <p class="rowName">证件类型:</p>
57
           <p class="rowName">证件类型:</p>
53
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
58
+          <el-input placeholder="请输入内容" :disabled="true" v-model="form.id_type">
54
           </el-input>
59
           </el-input>
55
-          <div class="btn">复制</div>
60
+          <div class="btn" v-clipboard:copy="form.id_type"
61
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
56
         </div>
62
         </div>
57
       </div>
63
       </div>
58
       <div class="row">
64
       <div class="row">
59
         <div class="rowOne">
65
         <div class="rowOne">
60
           <p class="rowName">身份证号:</p>
66
           <p class="rowName">身份证号:</p>
61
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
67
+          <el-input placeholder="请输入内容" style="width: 200px;" v-model="form.idCardNo" :disabled="true">
62
           </el-input>
68
           </el-input>
63
-          <div class="btn">复制</div>
69
+          <div class="btn" v-clipboard:copy="form.idCardNo"
70
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
64
         </div>
71
         </div>
65
       </div>
72
       </div>
66
       <div class="row">
73
       <div class="row">
67
         <div class="rowOne">
74
         <div class="rowOne">
68
-          <p class="rowName">族:</p>
69
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
75
+          <p class="rowName">族:</p>
76
+          <el-input placeholder="请输入内容" v-model="form.nation" :disabled="true">
70
           </el-input>
77
           </el-input>
71
         </div>
78
         </div>
72
         <div class="rowOne">
79
         <div class="rowOne">
73
           <p class="rowName">
80
           <p class="rowName">
74
             婚姻状况:
81
             婚姻状况:
75
           </p>
82
           </p>
76
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
83
+          <el-input placeholder="请输入内容"  :disabled="true" v-model="form.maritalStatus">
77
           </el-input>
84
           </el-input>
85
+
78
         </div>
86
         </div>
79
         <div class="rowOne">
87
         <div class="rowOne">
80
           <p class="rowName">年龄:</p>
88
           <p class="rowName">年龄:</p>
81
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
89
+          <el-input placeholder="请输入内容" v-model="form.age" :disabled="true">
82
           </el-input>
90
           </el-input>
83
-          <div class="btn">复制</div>
91
+          <div class="btn" v-clipboard:copy="form.age"
92
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
84
         </div>
93
         </div>
85
         <div class="rowOne">
94
         <div class="rowOne">
86
           <p class="rowName">出生日期:</p>
95
           <p class="rowName">出生日期:</p>
87
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
96
+          <el-input placeholder="请输入内容" v-model="form.birth" :disabled="true">
88
           </el-input>
97
           </el-input>
89
         </div>
98
         </div>
90
       </div>
99
       </div>
91
       <div class="row">
100
       <div class="row">
92
         <div class="rowOne">
101
         <div class="rowOne">
93
           <p class="rowName">教育程度:</p>
102
           <p class="rowName">教育程度:</p>
94
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
103
+          <el-input placeholder="请输入内容" style="width: 270px;" v-model="form.education" :disabled="true">
95
           </el-input>
104
           </el-input>
96
         </div>
105
         </div>
97
         <div class="rowOne">
106
         <div class="rowOne">
98
           <p class="rowName">
107
           <p class="rowName">
99
             职业:
108
             职业:
100
           </p>
109
           </p>
101
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
110
+          <el-input placeholder="请输入内容"  style="width: 270px;" v-model="form.profession" :disabled="true">
102
           </el-input>
111
           </el-input>
103
         </div>
112
         </div>
104
       </div>
113
       </div>
105
       <div class="row">
114
       <div class="row">
106
         <div class="rowOne">
115
         <div class="rowOne">
107
           <p class="rowName">门诊号:</p>
116
           <p class="rowName">门诊号:</p>
108
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
117
+          <el-input placeholder="请输入内容" v-if="form.source == 1" v-model="form.admissionNumber" :disabled="true">
118
+          </el-input>
119
+          <el-input placeholder="请输入内容" v-if="form.source == 2"  :disabled="true">
109
           </el-input>
120
           </el-input>
110
-          <div class="btn">复制</div>
121
+          <div class="btn"  v-clipboard:copy="form.admissionNumber"
122
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
111
         </div>
123
         </div>
112
         <div class="rowOne">
124
         <div class="rowOne">
113
           <p class="rowName">
125
           <p class="rowName">
114
             住院号:
126
             住院号:
115
           </p>
127
           </p>
116
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
128
+          <el-input placeholder="请输入内容" v-if="form.source == 2" v-model="form.admissionNumber" :disabled="true">
129
+          </el-input>
130
+          <el-input placeholder="请输入内容" v-if="form.source == 1"  :disabled="true">
117
           </el-input>
131
           </el-input>
132
+          <div class="btn"  v-clipboard:copy="form.admissionNumber"
133
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
118
         </div>
134
         </div>
119
         <div class="rowOne">
135
         <div class="rowOne">
120
           <p class="rowName">透析病案号:</p>
136
           <p class="rowName">透析病案号:</p>
121
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
137
+          <el-input placeholder="请输入内容" v-model="form.dialysisNo" :disabled="true">
122
           </el-input>
138
           </el-input>
123
-          <div class="btn">复制</div>
139
+          <div class="btn" v-clipboard:copy="form.dialysisNo"
140
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
124
         </div>
141
         </div>
125
         <div class="rowOne">
142
         <div class="rowOne">
126
           <p class="rowName">透析龄(月):</p>
143
           <p class="rowName">透析龄(月):</p>
127
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
144
+          <el-input placeholder="请输入内容" v-model="form.dialysis_age" :disabled="true">
128
           </el-input>
145
           </el-input>
129
-          <div class="btn">复制</div>
146
+          <div class="btn" v-clipboard:copy="form.dialysis_age"
147
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
130
         </div>
148
         </div>
131
       </div>
149
       </div>
132
       <div class="row1">
150
       <div class="row1">
134
           <p class="rowName">费别:</p>
152
           <p class="rowName">费别:</p>
135
           <div class="radioOne">
153
           <div class="radioOne">
136
             <template>
154
             <template>
137
-              <el-radio v-model="radio" label="1">基本医保</el-radio>
138
-              <el-radio v-model="radio" label="2">新农合</el-radio>
139
-              <el-radio v-model="radio" label="2">自费医疗</el-radio>
140
-              <el-radio v-model="radio" label="2">公费医疗</el-radio>
141
-              <el-radio v-model="radio" label="2">商业保险</el-radio>
142
-              <el-radio v-model="radio" label="2">军队医疗</el-radio>
143
-              <el-radio v-model="radio" label="2">其他</el-radio>
155
+              <el-radio v-model="form.expense_kind"  label="1">基本医保</el-radio>
156
+              <el-radio  v-model="form.expense_kind" label="2">新农合</el-radio>
157
+              <el-radio  v-model="form.expense_kind" label="3">自费医疗</el-radio>
158
+              <el-radio  v-model="form.expense_kind" label="4">公费医疗</el-radio>
159
+              <el-radio v-model="form.expense_kind" label="5">商业保险</el-radio>
160
+              <el-radio  v-model="form.expense_kind" label="6">军队医疗</el-radio>
161
+              <el-radio  v-model="form.expense_kind" label="7">其他</el-radio>
144
             </template>
162
             </template>
145
           </div>
163
           </div>
146
         </div>
164
         </div>
148
       <div class="row1">
166
       <div class="row1">
149
         <div class="line">
167
         <div class="line">
150
           <p class="rowName">通信地址:</p>
168
           <p class="rowName">通信地址:</p>
151
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
169
+          <el-input placeholder="请输入内容"  :disabled="true">
152
           </el-input
170
           </el-input
153
-          ><el-input placeholder="请输入内容" v-model="input" :disabled="true">
171
+          ><el-input placeholder="请输入内容" :disabled="true">
154
           </el-input
172
           </el-input
155
-          ><el-input placeholder="请输入内容" v-model="input" :disabled="true">
173
+          ><el-input placeholder="请输入内容"  :disabled="true">
156
           </el-input>
174
           </el-input>
157
         </div>
175
         </div>
158
         <div class="rowOne">
176
         <div class="rowOne">
159
-          <p class="rowName">门诊号:</p>
160
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
177
+          <p class="rowName">具体地址:</p>
178
+          <el-input placeholder="请输入内容" v-model="form.homeAddress" :disabled="true">
161
           </el-input>
179
           </el-input>
162
-          <div class="btn">复制</div>
180
+          <div class="btn" v-clipboard:copy="form.homeAddress"
181
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
163
         </div>
182
         </div>
164
       </div>
183
       </div>
165
       <div class="row">
184
       <div class="row">
166
         <div class="rowOne">
185
         <div class="rowOne">
167
           <p class="rowName">联系人姓名:</p>
186
           <p class="rowName">联系人姓名:</p>
168
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
187
+          <el-input placeholder="请输入内容" v-model="form.contact_name" :disabled="true">
169
           </el-input>
188
           </el-input>
170
-          <div class="btn">复制</div>
189
+          <div class="btn" v-clipboard:copy="form.contact_name"
190
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
171
         </div>
191
         </div>
172
         <div class="rowTwo">
192
         <div class="rowTwo">
173
           <p class="rowName1">
193
           <p class="rowName1">
174
             固定电话 &ensp;&ensp;&ensp;&ensp;(电话):
194
             固定电话 &ensp;&ensp;&ensp;&ensp;(电话):
175
           </p>
195
           </p>
176
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
177
-          </el-input>
178
-          <div class="btn">复制</div>
179
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
196
+          <el-input placeholder="请输入内容" v-model="form.tell_phone" :disabled="true">
180
           </el-input>
197
           </el-input>
181
-          <div class="btn">复制</div>
198
+          <div class="btn" v-clipboard:copy="form.tell_phone"
199
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
182
         </div>
200
         </div>
183
         <div class="rowOne">
201
         <div class="rowOne">
184
           <p class="rowName1">
202
           <p class="rowName1">
185
             联系电话 &ensp;&ensp;&ensp;&ensp;(电话):
203
             联系电话 &ensp;&ensp;&ensp;&ensp;(电话):
186
           </p>
204
           </p>
187
-          <el-input placeholder="请输入内容" v-model="input" :disabled="true">
205
+          <el-input placeholder="请输入内容" v-model="form.homeTelephone" :disabled="true">
188
           </el-input>
206
           </el-input>
189
-          <div class="btn">复制</div>
207
+          <div class="btn" v-clipboard:copy="form.homeTelephone"
208
+               v-clipboard:success="onCopy" v-clipboard:error="onError">复制</div>
190
         </div>
209
         </div>
191
       </div>
210
       </div>
192
     </div>
211
     </div>
194
   </div>
213
   </div>
195
 
214
 
196
 </template>
215
 </template>
216
+<script>
217
+  import { getDataConfig } from '@/utils/data'
218
+  import {
219
+    uParseTime
220
+  } from '@/utils/tools'
221
+  import {
222
+    fetchPatient
223
+  } from '@/api/patient'
224
+  import { fetchAllAdminUsers } from '@/api/doctor'
225
+  const defaultForm = {
226
+    avatar: '',
227
+    patientType: '',
228
+    dialysisNo: '',
229
+    admissionNumber: '',
230
+    source: '',
231
+    lapseto: '',
232
+    partition: '',
233
+    bed: '',
234
+    name: '',
235
+    gender: '',
236
+    nation: '',
237
+    native_place: '',
238
+    maritalStatus: '',
239
+    idCardNo: '',
240
+    birth: '',
241
+    age: '',
242
+    reimbursementWayID: '',
243
+    healthCareNo: '',
244
+    healthCareDueDate: '',
245
+    height: '',
246
+    blood: '',
247
+    rh: '',
248
+    healthCareDueAlertDate: '',
249
+    education: '',
250
+    profession: '',
251
+    phone: '',
252
+    homeTelephone: '',
253
+    homeAddress: '',
254
+    work: '',
255
+    receivingDate: '',
256
+    firstDialysisDate: '',
257
+    dialysisAge: '',
258
+    induction: '',
259
+    initial: '',
260
+    dialysisTotal: '',
261
+    contagions: [],
262
+    doctor: '',
263
+    nurse: '',
264
+    assessment: '',
265
+    diseases: [],
266
+    diagnose: '',
267
+    registrars: '',
268
+    patient_complains: '',
269
+    present_history: '',
270
+    past_history: '',
271
+    temperature: '',
272
+    pulse: '',
273
+    respiratory: '',
274
+    sbp: '',
275
+    dbp: '',
276
+    record_date: '',
277
+    response_result: '',
278
+    is_infectious: '',
279
+    formItem: [],
280
+    tell_phone:'',
281
+    first_treatment_date:'',
282
+    dialysis_age:'',
283
+    expense_kind:'',
284
+    contact_name:'',
285
+    create_time:'',
286
+    id_type:"身份证"
287
+  }
288
+
289
+  export default {
290
+    name: 'One',
291
+    components: { },
292
+
293
+    data() {
294
+      return {
295
+        expenseOptions:[
296
+          {id:1,name:"基本医保"},
297
+          {id:2,name:"新农合"},
298
+          {id:3,name:"自费医疗"},
299
+          {id:4,name:"公费医疗"},
300
+          {id:5,name:"商业保险"},
301
+          {id:6,name:"军队医疗"},
302
+          {id:7,name:"其他"},
303
+        ],
304
+        form: Object.assign({}, defaultForm),
305
+        adminUserOptions:[],
306
+        maritalOptions:[],
307
+        educationOptions: [],
308
+        professionOptions:[],
309
+
310
+      }
311
+    },
312
+    created() {
313
+      this.maritalOptions = getDataConfig('patient', 'marital_options')
314
+      this.educationOptions = getDataConfig('patient', 'education_types')
315
+      this.professionOptions = getDataConfig('patient', 'profession_options')
316
+      this.fetchAllAdminUsers()
317
+    },
318
+    methods: {
319
+      getTime(val){
320
+        return uParseTime(val, '{y}年{m}月{d}日')
321
+      },
322
+
323
+      getZones() {
324
+        getZones().then(response => {
325
+          if (response.data.state === 1) {
326
+            this.partitionOptions = response.data.data.zones
327
+          }
328
+        })
329
+      },
330
+      fetchPatient(id) {
331
+        fetchPatient(id)
332
+          .then(response => {
333
+            if (response.data.state === 1) {
334
+              var patietInfo = response.data.data.patient
335
+              this.form.avatar = patietInfo.avatar
336
+              this.form.name = patietInfo.name
337
+              this.form.alias = patietInfo.alias
338
+              this.form.lapseto = patietInfo.lapseto
339
+              this.form.idCardNo = patietInfo.id_card_no
340
+              this.form.dialysisNo = patietInfo.dialysis_no
341
+              this.form.gender = patietInfo.gender
342
+              this.form.is_infectious = patietInfo.is_infectious
343
+              // this.form.record_date = patietInfo.is_infectious
344
+              this.form.response_result = patietInfo.response_result
345
+              this.form.remind_cycle = patietInfo.remind_cycle
346
+              this.infections = response.data.data.infections
347
+              this.form.formItem = this.infections
348
+              if (patietInfo.gender === 1 || patietInfo.gender === 2) {
349
+                this.form.gender = patietInfo.gender.toString()
350
+              }
351
+              this.form.nation = patietInfo.nation
352
+              this.form.native_place = patietInfo.native_place
353
+              this.form.birth = uParseTime(patietInfo.birthday, '{y}-{m}-{d}')
354
+              this.form.create_time = uParseTime(patietInfo.created_time, '{y}-{m}-{d}')
355
+
356
+              this.form.firstDialysisDate = uParseTime(patietInfo.first_dialysis_date, '{y}-{m}-{d}')
357
+              this.form.height = patietInfo.height + ''
358
+              if (patietInfo.marital_status > 0) {
359
+                this.form.maritalStatus = patietInfo.marital_status
360
+              }
361
+              this.form.children = patietInfo.children
362
+              this.form.admissionNumber = patietInfo.admission_number
363
+              if (patietInfo.reimbursement_way_id > 0) {
364
+                this.form.reimbursementWayID = patietInfo.reimbursement_way_id
365
+              }
366
+              this.form.healthCareNo = patietInfo.health_care_no
367
+              this.form.phone = patietInfo.phone
368
+              this.form.homeTelephone = patietInfo.home_telephone
369
+              this.form.relative_phone = patietInfo.relative_phone
370
+              this.form.relative_relations = patietInfo.relative_relations
371
+              this.form.homeAddress = patietInfo.home_address
372
+              this.form.work = patietInfo.work_unit
373
+              this.form.unit_address = patietInfo.unit_address
374
+
375
+              if (patietInfo.age == 0) {
376
+                this.form.age = jsGetAge(this.form.birth, '-')
377
+              } else {
378
+                this.form.age = patietInfo.age
379
+              }
380
+
381
+              if (patietInfo.profession > 0) {
382
+                this.form.profession = patietInfo.profession
383
+              }
384
+              if (patietInfo.education_level > 0) {
385
+                this.form.education = patietInfo.education_level
386
+              }
387
+              if (patietInfo.source === 1 || patietInfo.source === 2) {
388
+                this.form.source = patietInfo.source
389
+              }
390
+              console.log("source:"+this.form.source)
391
+              if (patietInfo.lapseto === 1 || patietInfo.lapseto === 2) {
392
+                this.form.lapseto = patietInfo.lapseto
393
+              }
394
+              if (patietInfo.is_hospital_first_dialysis === 1 || patietInfo.is_hospital_first_dialysis === 2) {
395
+                this.form.is_hospital_first_dialysis = patietInfo.is_hospital_first_dialysis
396
+              }
397
+              if (patietInfo.first_dialysis_date !== 0) {
398
+                this.form.firstDialysisDate = uParseTime(
399
+                  patietInfo.first_dialysis_date,
400
+                  '{y}-{m}-{d}'
401
+                )
402
+              }
403
+              this.form.first_dialysis_hospital = patietInfo.first_dialysis_hospital
404
+              if (patietInfo.predialysis_condition.length > 0) {
405
+                this.form.predialysis_condition = patietInfo.predialysis_condition.split(',')
406
+              }
407
+              this.form.pre_hospital_dialysis_frequency = patietInfo.pre_hospital_dialysis_frequency
408
+              this.form.pre_hospital_dialysis_times = patietInfo.pre_hospital_dialysis_times
409
+              if (patietInfo.hospital_first_dialysis_date !== 0) {
410
+                this.form.hospital_first_dialysis_date = uParseTime(
411
+                  patietInfo.hospital_first_dialysis_date,
412
+                  '{y}-{m}-{d}'
413
+                )
414
+              }
415
+              this.form.contagions = response.data.data.contagions
416
+              this.form.diseases = response.data.data.diseases
417
+              this.form.remark = patietInfo.remark
418
+              this.form.diagnose = patietInfo.diagnose
419
+
420
+              this.form.patient_complains = patietInfo.patient_complains
421
+              this.form.present_history = patietInfo.present_history
422
+              this.form.past_history = patietInfo.past_history
423
+              this.form.temperature = patietInfo.temperature
424
+              this.form.pulse = patietInfo.pulse
425
+              this.form.respiratory = patietInfo.respiratory
426
+              this.form.sbp = patietInfo.sbp
427
+              this.form.dbp = patietInfo.dbp
428
+
429
+              this.form.contact_name = patietInfo.contact_name
430
+              this.form.tell_phone = patietInfo.tell_phone
431
+              this.form.dialysis_age = patietInfo.dialysis_age
432
+              if( patietInfo.expense_kind == 0){
433
+                this.form.expense_kind = ""
434
+              }else{
435
+                this.form.expense_kind = patietInfo.expense_kind.toString()
436
+              }
437
+
438
+
439
+
440
+              this.form.first_treatment_date =  uParseTime(
441
+                patietInfo.first_treatment_date,
442
+                '{y}-{m}-{d}'
443
+              )
444
+
445
+              if (patietInfo.registrars_id > 0) {
446
+                var eLen = this.adminUserOptions.length
447
+                for (let index = 0; index < eLen; index++) {
448
+                  if (this.adminUserOptions[index].id === patietInfo.registrars_id) {
449
+                    this.form.registrars = this.adminUserOptions[index].name
450
+                    break
451
+                  }
452
+                }
453
+              } else {
454
+                this.form.registrars = ''
455
+              }
456
+
457
+
458
+              this.form.maritalStatus = this.getMaritalType(patietInfo.marital_status)
459
+              this.form.education = this.getEducationType(patietInfo.education_level)
460
+              this.form.profession = this.getProfessionType(patietInfo.profession)
461
+
462
+
463
+
464
+
465
+
466
+
467
+            } else {
468
+              console.log('patient get err state')
469
+              this.$notify.error({
470
+                title: '错误',
471
+                message: '网络异常'
472
+              })
473
+            }
474
+          }).catch(err => {
475
+          this.$notify.error({
476
+            title: '错误',
477
+            message: '网络异常'
478
+          })
479
+        })
480
+      },
481
+      fetchAllAdminUsers() {
482
+        fetchAllAdminUsers().then(response => {
483
+          if (response.data.state === 1) {
484
+            this.adminUserOptions = response.data.data.users
485
+          }
486
+        })
487
+      },getMaritalType(id){
488
+        for(let i = 0; i < this.maritalOptions.length; i++){
489
+          if(this.maritalOptions[i].id == id){
490
+            return this.maritalOptions[i].name
491
+          }
492
+        }
493
+      },getEducationType(id){
494
+        for(let i = 0; i < this.educationOptions.length; i++){
495
+          if(this.educationOptions[i].id == id){
496
+            return this.educationOptions[i].name
497
+          }
498
+        }
499
+      },getProfessionType(id){
500
+        for(let i = 0; i < this.professionOptions.length; i++){
501
+          if(this.professionOptions[i].id == id){
502
+            return this.professionOptions[i].name
503
+          }
504
+        }
505
+      },onCopy(){
506
+        this.$message.success('复制成功')
507
+
508
+      },onError(){
509
+        this.$message.success('复制失败,请重试')
510
+      },
511
+
512
+    }
513
+  }
514
+</script>
515
+
197
 
516
 
198
 <style lang="scss">
517
 <style lang="scss">
199
 .basicInfo {
518
 .basicInfo {
216
     .rowOne {
535
     .rowOne {
217
       float: left;
536
       float: left;
218
       height: 36px;
537
       height: 36px;
219
-      width: 262px;
538
+      width: 350px;
220
       // line-height: 36px;
539
       // line-height: 36px;
221
       margin-right: 12px;
540
       margin-right: 12px;
222
       margin-bottom: 20px;
541
       margin-bottom: 20px;

File diff suppressed because it is too large
+ 638 - 207
src/xt_pages/upload/fast/Two.vue


+ 73 - 3
src/xt_pages/user/components/PatientDetail.vue View File

82
                   <el-date-picker v-model="form.birth" type="date" disabled placeholder="选择日期" :suffix-icon="'el-icon-menu'" format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
82
                   <el-date-picker v-model="form.birth" type="date" disabled placeholder="选择日期" :suffix-icon="'el-icon-menu'" format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
83
               </el-form-item>
83
               </el-form-item>
84
             </el-col>
84
             </el-col>
85
+
86
+
87
+            <el-col :span="8">
88
+              <el-form-item label="首次肾脏治疗时间 : " label-width="150px"  class="is-required" prop="birth" >
89
+                <el-date-picker v-model="form.firstDialysisDate" type="date" disabled placeholder="选择日期" :suffix-icon="'el-icon-menu'" format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
90
+              </el-form-item>
91
+            </el-col>
92
+
93
+
94
+
85
             <el-col :span="8">
95
             <el-col :span="8">
86
               <el-form-item label="本人电话: " class="is-required" prop="phone">
96
               <el-form-item label="本人电话: " class="is-required" prop="phone">
87
                 <el-input v-model="form.phone" maxlength="20" disabled></el-input>
97
                 <el-input v-model="form.phone" maxlength="20" disabled></el-input>
88
               </el-form-item>
98
               </el-form-item>
89
             </el-col>
99
             </el-col>
100
+            <el-col :span="8">
101
+              <el-form-item label="家属姓名: " >
102
+                <el-input v-model="form.contact_name" maxlength="20" disabled></el-input>
103
+              </el-form-item>
104
+            </el-col>
90
             <el-col :span="8">
105
             <el-col :span="8">
91
               <el-form-item label="家属电话: " prop="homeTelephone">
106
               <el-form-item label="家属电话: " prop="homeTelephone">
92
                 <el-input v-model="form.homeTelephone" maxlength="20" disabled></el-input>
107
                 <el-input v-model="form.homeTelephone" maxlength="20" disabled></el-input>
239
                 </el-select>
254
                 </el-select>
240
               </el-form-item>
255
               </el-form-item>
241
             </el-col>
256
             </el-col>
257
+
258
+
259
+              <el-col :span="8">
260
+                <el-form-item label="固定电话 : ">
261
+                  <el-input v-model="form.tell_phone" maxlength="20" disabled></el-input>
262
+                </el-form-item>
263
+              </el-col>
264
+
265
+              <el-col :span="8">
266
+                <el-form-item label="费别 : ">
267
+                  <el-select v-model="form.expense_kind" disabled>
268
+                    <el-option v-for="item in expenseOptions" :key="item.id" :label="item.name" :value="item.id" />
269
+                  </el-select>
270
+                </el-form-item>
271
+              </el-col>
272
+
273
+              <el-col :span="8" >
274
+                <el-form-item label="透析龄(月): ">
275
+                  <el-input v-model="form.dialysis_age"  disabled></el-input>
276
+                </el-form-item>
277
+              </el-col>
278
+
279
+
242
             <el-col :span="8" >
280
             <el-col :span="8" >
243
               <el-form-item label="亲友电话: " prop="relative_phone">
281
               <el-form-item label="亲友电话: " prop="relative_phone">
244
                 <el-input v-model="form.relative_phone" maxlength="20" disabled></el-input>
282
                 <el-input v-model="form.relative_phone" maxlength="20" disabled></el-input>
354
         </el-form-item>
392
         </el-form-item>
355
       </el-col>
393
       </el-col>
356
       <el-col :span="6">
394
       <el-col :span="6">
357
-        <el-form-item label="首次透析日期 : "  prop="firstDialysisDate">
358
-            <el-date-picker v-model="form.firstDialysisDate" type="date" disabled format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
395
+        <el-form-item label="首次诊治日期 : "  >
396
+            <el-date-picker v-model="form.first_treatment_date" type="date" disabled format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
359
         </el-form-item>
397
         </el-form-item>
360
       </el-col>
398
       </el-col>
361
       <el-col :span="6" >
399
       <el-col :span="6" >
596
   record_date: '',
634
   record_date: '',
597
   response_result: '',
635
   response_result: '',
598
   is_infectious: '',
636
   is_infectious: '',
599
-  formItem: []
637
+  formItem: [],
638
+  tell_phone:'',
639
+  first_treatment_date:'',
640
+  dialysis_age:'',
641
+  expense_kind:'',
642
+  contact_name:'',
600
 }
643
 }
601
 
644
 
602
 export default {
645
 export default {
605
 
648
 
606
   data() {
649
   data() {
607
     return {
650
     return {
651
+      expenseOptions:[
652
+        {id:1,name:"基本医保"},
653
+        {id:2,name:"新农合"},
654
+        {id:3,name:"自费医疗"},
655
+        {id:4,name:"公费医疗"},
656
+        {id:5,name:"商业保险"},
657
+        {id:6,name:"军队医疗"},
658
+        {id:7,name:"其他"},
659
+      ],
660
+
608
       generic_info_fold: true,
661
       generic_info_fold: true,
609
       treat_info_fold: true,
662
       treat_info_fold: true,
610
       dialogFormVisible: false,
663
       dialogFormVisible: false,
642
       patientPrint: {},
695
       patientPrint: {},
643
       print_time: '',
696
       print_time: '',
644
 
697
 
698
+
699
+
645
       rules: {
700
       rules: {
646
         contagions: [
701
         contagions: [
647
           { type: 'array', required: false, trigger: 'change' }
702
           { type: 'array', required: false, trigger: 'change' }
776
             this.form.nation = patietInfo.nation
831
             this.form.nation = patietInfo.nation
777
             this.form.native_place = patietInfo.native_place
832
             this.form.native_place = patietInfo.native_place
778
             this.form.birth = uParseTime(patietInfo.birthday, '{y}-{m}-{d}')
833
             this.form.birth = uParseTime(patietInfo.birthday, '{y}-{m}-{d}')
834
+            this.form.firstDialysisDate = uParseTime(patietInfo.first_dialysis_date, '{y}-{m}-{d}')
779
             this.form.height = patietInfo.height + ''
835
             this.form.height = patietInfo.height + ''
780
             // this.form.age = jsGetAge(this.form.birth, "-");
836
             // this.form.age = jsGetAge(this.form.birth, "-");
781
             if (patietInfo.marital_status > 0) {
837
             if (patietInfo.marital_status > 0) {
848
             this.form.sbp = patietInfo.sbp
904
             this.form.sbp = patietInfo.sbp
849
             this.form.dbp = patietInfo.dbp
905
             this.form.dbp = patietInfo.dbp
850
 
906
 
907
+            this.form.contact_name = patietInfo.contact_name
908
+            this.form.tell_phone = patietInfo.tell_phone
909
+            this.form.dialysis_age = patietInfo.dialysis_age
910
+            if( patietInfo.expense_kind == 0){
911
+              this.form.expense_kind = ""
912
+            }else{
913
+              this.form.expense_kind = patietInfo.expense_kind
914
+            }
915
+
916
+            this.form.first_treatment_date =  uParseTime(
917
+              patietInfo.first_treatment_date,
918
+              '{y}-{m}-{d}'
919
+            )
920
+
851
             // this.form.initial = patietInfo.initial_dialysis + "";
921
             // this.form.initial = patietInfo.initial_dialysis + "";
852
             // this.form.dialysisTotal = patietInfo.total_dialysis + "";
922
             // this.form.dialysisTotal = patietInfo.total_dialysis + "";
853
             // this.form.assessment = patietInfo.evaluate;
923
             // this.form.assessment = patietInfo.evaluate;

+ 74 - 3
src/xt_pages/user/components/PatientForm.vue View File

137
                                   value-format="yyyy-MM-dd"></el-date-picker>
137
                                   value-format="yyyy-MM-dd"></el-date-picker>
138
                 </el-form-item>
138
                 </el-form-item>
139
               </el-col>
139
               </el-col>
140
+
141
+              <el-col :span="6" :style="isEdit?'width:380px':''">
142
+                <el-form-item label="首次肾脏治疗时间:" prop="firstDialysisDate" label-width="150px">
143
+                  <el-date-picker v-model="form.firstDialysisDate" type="date" format="yyyy-MM-dd"
144
+                                  value-format="yyyy-MM-dd"></el-date-picker>
145
+                </el-form-item>
146
+              </el-col>
140
               <el-col :span="8" :style="isEdit?'width:360px':''">
147
               <el-col :span="8" :style="isEdit?'width:360px':''">
141
                 <el-form-item label="本人电话 : " class="is-required" prop="phone">
148
                 <el-form-item label="本人电话 : " class="is-required" prop="phone">
142
                   <el-input v-model="form.phone" maxlength="20"></el-input>
149
                   <el-input v-model="form.phone" maxlength="20"></el-input>
143
                 </el-form-item>
150
                 </el-form-item>
144
               </el-col>
151
               </el-col>
152
+              <el-col :span="8" :style="isEdit?'width:360px':''">
153
+                <el-form-item label="家属姓名 : ">
154
+                  <el-input v-model="form.contact_name" maxlength="20"></el-input>
155
+                </el-form-item>
156
+              </el-col>
145
               <el-col :span="8" :style="isEdit?'width:360px':''">
157
               <el-col :span="8" :style="isEdit?'width:360px':''">
146
                 <el-form-item label="家属电话 : " prop="homeTelephone">
158
                 <el-form-item label="家属电话 : " prop="homeTelephone">
147
                   <el-input v-model="form.homeTelephone" maxlength="20"></el-input>
159
                   <el-input v-model="form.homeTelephone" maxlength="20"></el-input>
148
                 </el-form-item>
160
                 </el-form-item>
149
               </el-col>
161
               </el-col>
162
+
163
+
164
+
150
               <el-col :span="8" :style="isEdit?'width:360px':''">
165
               <el-col :span="8" :style="isEdit?'width:360px':''">
151
                 <el-form-item label="患者来源 : " class="is-required" prop="source">
166
                 <el-form-item label="患者来源 : " class="is-required" prop="source">
152
                   <el-radio-group v-model="form.source">
167
                   <el-radio-group v-model="form.source">
287
                     </el-select>
302
                     </el-select>
288
                   </el-form-item>
303
                   </el-form-item>
289
                 </el-col>
304
                 </el-col>
305
+
306
+                <el-col :span="8" :style="isEdit?'width:360px':''">
307
+                  <el-form-item label="固定电话 : ">
308
+                    <el-input v-model="form.tell_phone" maxlength="20"></el-input>
309
+                  </el-form-item>
310
+                </el-col>
311
+
312
+                <el-col :span="8" :style="isEdit?'width:360px':''">
313
+                  <el-form-item label="费别 : ">
314
+                    <el-select v-model="form.expense_kind">
315
+                      <el-option v-for="item in expenseOptions" :key="item.id" :label="item.name" :value="item.id"/>
316
+                    </el-select>
317
+                  </el-form-item>
318
+                </el-col>
319
+
320
+                <el-col :span="8" :style="isEdit?'width:360px':''" style="height:59px;">
321
+                  <el-form-item label="透析龄(月): ">
322
+                    <el-input v-model="form.dialysis_age" ></el-input>
323
+                  </el-form-item>
324
+                </el-col>
325
+
290
                 <el-col :span="8" :style="isEdit?'width:360px':''">
326
                 <el-col :span="8" :style="isEdit?'width:360px':''">
291
                   <el-form-item label="亲友电话 : " prop="relative_phone">
327
                   <el-form-item label="亲友电话 : " prop="relative_phone">
292
                     <el-input v-model="form.relative_phone" maxlength="20"></el-input>
328
                     <el-input v-model="form.relative_phone" maxlength="20"></el-input>
447
                 </el-radio-group>
483
                 </el-radio-group>
448
               </el-form-item>
484
               </el-form-item>
449
             </el-col>
485
             </el-col>
486
+
450
             <el-col :span="6" :style="isEdit?'width:360px':''">
487
             <el-col :span="6" :style="isEdit?'width:360px':''">
451
-              <el-form-item label="首次透析日期 : " prop="firstDialysisDate">
452
-                <el-date-picker v-model="form.firstDialysisDate" type="date" format="yyyy-MM-dd"
453
-                                value-format="yyyy-MM-dd" @change="selectFirstDialysisDate"></el-date-picker>
488
+              <el-form-item label="首次诊治时间 : " >
489
+                <el-date-picker v-model="form.first_treatment_date" type="date" format="yyyy-MM-dd"
490
+                                value-format="yyyy-MM-dd"></el-date-picker>
454
               </el-form-item>
491
               </el-form-item>
455
             </el-col>
492
             </el-col>
456
             <el-col :span="6" :style="isEdit?'width:360px':''">
493
             <el-col :span="6" :style="isEdit?'width:360px':''">
566
     diagnose: '',
603
     diagnose: '',
567
     is_infectious:1,
604
     is_infectious:1,
568
     age: '',
605
     age: '',
606
+
569
     response_result:'',
607
     response_result:'',
570
     remind_cycle:0,
608
     remind_cycle:0,
571
     record_date:'',
609
     record_date:'',
610
+
611
+    tell_phone:'',
612
+    first_treatment_date:'',
613
+    dialysis_age:'',
614
+    expense_kind:'',
615
+    contact_name:'',
616
+
617
+
618
+
572
     formItem:[
619
     formItem:[
573
       { id: 0,
620
       { id: 0,
574
         item: "",
621
         item: "",
743
       }
790
       }
744
 
791
 
745
       return {
792
       return {
793
+
746
         crumbs: [
794
         crumbs: [
747
           { path: false, name: '病人管理' },
795
           { path: false, name: '病人管理' },
748
           { path: false, name: '新增病人' }
796
           { path: false, name: '新增病人' }
787
         submitMsg: '',
835
         submitMsg: '',
788
         patientID: 0,
836
         patientID: 0,
789
         formLoading:false,
837
         formLoading:false,
838
+        expenseOptions:[
839
+          {id:1,name:"基本医保"},
840
+          {id:2,name:"新农合"},
841
+          {id:3,name:"自费医疗"},
842
+          {id:4,name:"公费医疗"},
843
+          {id:5,name:"商业保险"},
844
+          {id:6,name:"军队医疗"},
845
+          {id:7,name:"其他"},
846
+        ],
790
 
847
 
791
 
848
 
792
         subscibe: {},
849
         subscibe: {},
804
           idCardNo: [{ required: true, message: '请填写身份证号', trigger: 'blur' }],
861
           idCardNo: [{ required: true, message: '请填写身份证号', trigger: 'blur' }],
805
           birth: [{ required: true, message: '请填写生日', trigger: 'blur' }],
862
           birth: [{ required: true, message: '请填写生日', trigger: 'blur' }],
806
           age: [{ required: true, message: '请填写年龄', trigger: 'blur' }],
863
           age: [{ required: true, message: '请填写年龄', trigger: 'blur' }],
864
+          firstDialysisDate:[{ required: true, message: '请选择日期', trigger: 'blur' }],
807
 
865
 
808
 
866
 
809
           // homeTelephone: [{ validator: checkFamilyPhone, trigger: "blur" }],
867
           // homeTelephone: [{ validator: checkFamilyPhone, trigger: "blur" }],
1207
               this.form.remind_cycle = patietInfo.remind_cycle
1265
               this.form.remind_cycle = patietInfo.remind_cycle
1208
               this.form.is_infectious = patietInfo.is_infectious
1266
               this.form.is_infectious = patietInfo.is_infectious
1209
 
1267
 
1268
+              this.form.tell_phone = patietInfo.tell_phone
1269
+              this.form.dialysis_age = patietInfo.dialysis_age
1270
+              this.form.contact_name = patietInfo.contact_name
1271
+              if( patietInfo.expense_kind == 0){
1272
+                this.form.expense_kind = ""
1273
+              }else{
1274
+                this.form.expense_kind = patietInfo.expense_kind
1275
+              }
1276
+
1277
+              this.form.first_treatment_date =  uParseTime(
1278
+                patietInfo.first_treatment_date,
1279
+                '{y}-{m}-{d}'
1280
+              )
1210
 
1281
 
1211
 
1282
 
1212
 
1283