张保健 5 vuotta sitten
vanhempi
commit
788e011a97
39 muutettua tiedostoa jossa 3743 lisäystä ja 2183 poistoa
  1. 19 0
      src/api/dialysis.js
  2. 52 4
      src/api/dialysis_record.js
  3. 10 2
      src/api/manage.js
  4. 11 0
      src/api/patient.js
  5. 1 1
      src/router/modules/device.js
  6. 3 4
      src/store/modules/globalConfig.js
  7. 143 146
      src/utils/tools.js
  8. 8 5
      src/xt_pages/data/druguseTemplate.vue
  9. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_five.vue
  10. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_other.vue
  11. 1 1
      src/xt_pages/dialysis/batch_print/batch_print_order_other_two.vue
  12. 16 5
      src/xt_pages/dialysis/details/BasicInfor.vue
  13. 139 69
      src/xt_pages/dialysis/details/DialysisPrescription.vue
  14. 441 351
      src/xt_pages/dialysis/details/NavIgation.vue
  15. 59 88
      src/xt_pages/dialysis/details/assessmentAfter.vue
  16. 18 9
      src/xt_pages/dialysis/details/dialog/AssessmentAfterDislysis.vue
  17. 174 0
      src/xt_pages/dialysis/details/dialog/MsgTip.vue
  18. 548 422
      src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue
  19. 195 29
      src/xt_pages/dialysis/details/dialog/computer_dialog.vue
  20. 364 71
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  21. 282 98
      src/xt_pages/dialysis/details/dialog/doubleCheckDialog.vue
  22. 174 97
      src/xt_pages/dialysis/details/dialog/finish_dialog.vue
  23. 47 4
      src/xt_pages/dialysis/details/dialog/monitor_dialog.vue
  24. 1 1
      src/xt_pages/dialysis/details/dialysisComputer.vue
  25. 48 5
      src/xt_pages/dialysis/details/index.vue
  26. 4 1
      src/xt_pages/dialysis/dialysisPage.vue
  27. 150 138
      src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue
  28. 0 41
      src/xt_pages/home/index.vue
  29. 294 174
      src/xt_pages/management/components/ManageForm.vue
  30. 23 17
      src/xt_pages/management/components/MultipleForm.vue
  31. 12 6
      src/xt_pages/management/components/PlanForm.vue
  32. 12 8
      src/xt_pages/management/components/QualityForm.vue
  33. 1 1
      src/xt_pages/management/components/RepairForm.vue
  34. 41 5
      src/xt_pages/management/components/UserForm.vue
  35. 207 146
      src/xt_pages/management/home.vue
  36. 1 1
      src/xt_pages/management/index.vue
  37. 27 33
      src/xt_pages/user/dialysisRecord.vue
  38. 90 100
      src/xt_pages/user/doctorAdvice.vue
  39. 125 98
      src/xt_pages/workforce/components/tableData.vue

+ 19 - 0
src/api/dialysis.js Näytä tiedosto

@@ -252,3 +252,22 @@ export function CreateGroupAdvice(id, groupno, advices){
252 252
 
253 253
 
254 254
 
255
+export function GetSolution(params){
256
+  return request({
257
+    url:"/api/solution/get",
258
+    method:'get',
259
+    params:params,
260
+  })
261
+
262
+}
263
+
264
+
265
+
266
+export function CreateDryWeight(params){
267
+  return request({
268
+    url:"/api/dryweight/commit",
269
+    method:'post',
270
+    params:params,
271
+  })
272
+
273
+}

+ 52 - 4
src/api/dialysis_record.js Näytä tiedosto

@@ -43,7 +43,7 @@ export function editMonitor(patient_id, schedule_date, data) {
43 43
   })
44 44
 }
45 45
 
46
-export function startDialysis(patient_id, schedule_date, nurse_id, bed_id, lood_drawing, puncture_nurse_id, start_time) {
46
+export function startDialysis(patient_id, schedule_date, nurse_id, bed_id, lood_drawing, puncture_nurse_id, start_time,schedual_type) {
47 47
   var params = {
48 48
     patient_id: patient_id,
49 49
     date: schedule_date,
@@ -51,7 +51,8 @@ export function startDialysis(patient_id, schedule_date, nurse_id, bed_id, lood_
51 51
     bed: bed_id,
52 52
     puncture_nurse: puncture_nurse_id,
53 53
     start_time: start_time,
54
-    lood_drawing: lood_drawing
54
+    lood_drawing: lood_drawing,
55
+    schedual_type:schedual_type,
55 56
   }
56 57
   return request({
57 58
     url: '/api/dialysis/start_record',
@@ -60,11 +61,12 @@ export function startDialysis(patient_id, schedule_date, nurse_id, bed_id, lood_
60 61
   })
61 62
 }
62 63
 
63
-export function finishDialysis(patient_id, schedule_date, nurse_id) {
64
+export function finishDialysis(patient_id, schedule_date,end_time, nurse_id) {
64 65
   var params = {
65 66
     patient_id: patient_id,
66 67
     date: schedule_date,
67
-    nurse: nurse_id
68
+    nurse: nurse_id,
69
+    end_time:end_time,
68 70
   }
69 71
   return request({
70 72
     url: '/api/dialysis/finish',
@@ -94,5 +96,51 @@ export function getLongAdvice(params) {
94 96
 }
95 97
 
96 98
 
99
+export function GetSchedualNumber(params) {
100
+  return request({
101
+    url:'/api/schedule/get',
102
+    method:'Get',
103
+    params:params,
104
+  })
105
+}
106
+
107
+
108
+
109
+export function PostModifyStartDialysis(params) {
110
+  return request({
111
+    url:'/api/start_dialysis/modify',
112
+    method:'Post',
113
+    params:params,
114
+  })
115
+}
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+export function PostModifyFinishDialysis(params) {
124
+  return request({
125
+    url:'/api/finish_dialysis/modify',
126
+    method:'Post',
127
+    params:params,
128
+  })
129
+}
130
+
131
+
132
+
133
+export function getTodayMonitor(params) {
134
+  return request({
135
+    url:'/api/today_monitor/get',
136
+    method:'Get',
137
+    params:params,
138
+  })
139
+}
140
+
141
+
142
+
143
+
144
+
97 145
 
98 146
 

+ 10 - 2
src/api/manage.js Näytä tiedosto

@@ -71,6 +71,7 @@ export function getMachineDetailById(id, params) {
71 71
 }
72 72
 
73 73
 export function UpdateMachineInfo(data) {
74
+  console.log("data..", data);
74 75
   return request({
75 76
     url: "/api/management/updatemachineinfo",
76 77
     method: "Post",
@@ -153,8 +154,7 @@ export function getComprehensive(params) {
153 154
 }
154 155
 
155 156
 export function SaveInformation(id, data) {
156
-  console.log("id", id);
157
-  console.log("data", data);
157
+  console.log("data是什么东西", data);
158 158
   return request({
159 159
     url: "/api/manage/saveinformation?id=" + id,
160 160
     method: "Post",
@@ -455,3 +455,11 @@ export function queryInfo(zone, bed, startime, endtime, limit, page) {
455 455
     params: params
456 456
   });
457 457
 }
458
+
459
+export function getAutoData(id, params) {
460
+  return request({
461
+    url: "/api/manage/insertautodata?id=" + id,
462
+    method: "Get",
463
+    params: params
464
+  });
465
+}

+ 11 - 0
src/api/patient.js Näytä tiedosto

@@ -332,3 +332,14 @@ export function getAllData(id, page, limit) {
332 332
   })
333 333
 }
334 334
 
335
+
336
+
337
+
338
+
339
+
340
+
341
+
342
+
343
+
344
+
345
+

+ 1 - 1
src/router/modules/device.js Näytä tiedosto

@@ -39,7 +39,7 @@ export default {
39 39
     {
40 40
       path: "/device/main",
41 41
       component: () => import("@/xt_pages/management/index"),
42
-      // component: () => import('@/xt_pages/device/main'),
42
+      // component: () => import("@/xt_pages/device/main"),
43 43
       name: "dialysisMachineManage",
44 44
       meta: {
45 45
         title: "dialysisMachineManage"

+ 3 - 4
src/store/modules/globalConfig.js Näytä tiedosto

@@ -104,11 +104,10 @@ const global_config = {
104 104
     },
105 105
     anticoagulants_confit: {// 抗凝剂
106 106
       1: { id: 1, name: '无肝素', type: 1, shouji: 2, weichi: 2, zongliang: 2, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'mg', weichi_unit: 'mg/h', zongliang_unit: 'mg', gaimingcheng_unit: '', gaijiliang_unit: '' },
107
-      2: { id: 2, name: '普通肝素', type: 1, shouji: 1, weichi: 1, zongliang: 1, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'mg', weichi_unit: 'mg/h', zongliang_unit: 'mg', gaimingcheng_unit: '', gaijiliang_unit: '' },
108
-      3: { id: 3, name: '低分子肝素', type: 1, shouji: -1, weichi: -1, zongliang: 1, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'lu', weichi_unit: 'lu', zongliang_unit: 'lu', gaimingcheng_unit: '', gaijiliang_unit: '' },
107
+      2: { id: 2, name: '普通肝素', type: 1, shouji: 1, weichi: 1, zongliang: 1, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'iu', weichi_unit: 'iu/h', zongliang_unit: 'iu', gaimingcheng_unit: '', gaijiliang_unit: '' },
108
+      3: { id: 3, name: '低分子肝素', type: 1, shouji: 1, weichi: 1, zongliang: 1, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'iu', weichi_unit: 'iu/h', zongliang_unit: 'iu', gaimingcheng_unit: '', gaijiliang_unit: '' },
109 109
       4: { id: 4, name: '阿加曲班', type: 1, shouji: 1, weichi: 1, zongliang: 1, gaimingcheng: -1, gaijiliang: -1, shouji_unit: 'mg', weichi_unit: 'mg/h', zongliang_unit: 'mg', gaimingcheng_unit: '', gaijiliang_unit: '' },
110
-      5: { id: 5, name: '4%枸橼酸钠', type: 1, shouji: -1, weichi: 1, zongliang: -1, gaimingcheng: 1, gaijiliang: 1, shouji_unit: '', weichi_unit: 'ml/h', zongliang_unit: '', gaimingcheng_unit: 'ml/h', gaijiliang_unit: '' },
111
-      6: { id: 5, name: '3%枸橼酸钠', type: 1, shouji: -1, weichi: 1, zongliang: -1, gaimingcheng: 1, gaijiliang: 1, shouji_unit: '', weichi_unit: 'ml/h', zongliang_unit: '', gaimingcheng_unit: 'ml/h', gaijiliang_unit: '' }
110
+      5: { id: 5, name: '枸橼酸钠', type: 1, shouji: -1, weichi: 1, zongliang: -1, gaimingcheng: 1, gaijiliang: 1, shouji_unit: '', weichi_unit: 'ml/h', zongliang_unit: '', gaimingcheng_unit: 'ml', gaijiliang_unit: '' }
112 111
     },
113 112
     anticoagulants_set: {
114 113
       type: 2

+ 143 - 146
src/utils/tools.js Näytä tiedosto

@@ -1,171 +1,168 @@
1
-export function getFileExtension (filename) {
2
-    var tempArr = filename.split(".");
3
-    var ext;
4
-    if (tempArr.length === 1 || (tempArr[0] === "" && tempArr.length === 2)) {
5
-        ext = "";
6
-    } else {
7
-        ext = tempArr.pop().toLowerCase(); //get the extension and make it lower-case
8
-    }
9
-    return ext;
1
+export function getFileExtension(filename) {
2
+  var tempArr = filename.split(".");
3
+  var ext;
4
+  if (tempArr.length === 1 || (tempArr[0] === "" && tempArr.length === 2)) {
5
+    ext = "";
6
+  } else {
7
+    ext = tempArr.pop().toLowerCase(); // get the extension and make it lower-case
8
+  }
9
+  return ext;
10 10
 }
11 11
 
12
-export function isCardNo(card) 
13
-{ 
14
-    // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X 
15
-    var reg_18 = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
16
-    var reg_15 = /^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$/;
12
+export function isCardNo(card) {
13
+  // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
14
+  var reg_18 = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
15
+  var reg_15 = /^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$/;
17 16
 
18
-    return reg_18.test(card) || reg_15.test(card)
17
+  return reg_18.test(card) || reg_15.test(card);
19 18
 }
20 19
 
21 20
 export function jsGetAge(strBirthday, splitstr) {
22
-    var returnAge;
23
-    var strBirthdayArr = strBirthday.split(splitstr);
24
-    var birthYear = strBirthdayArr[0];
25
-    var birthMonth = strBirthdayArr[1];
26
-    var birthDay = strBirthdayArr[2];
27
-    var d = new Date();
28
-    var nowYear = d.getFullYear();
29
-    var nowMonth = d.getMonth() + 1;
30
-    var nowDay = d.getDate();
31
-    if (nowYear == birthYear) {
32
-        returnAge = 0;//同年 则为0岁
33
-    }
34
-    else {
35
-        var ageDiff = nowYear - birthYear; //年之差
36
-        if (ageDiff > 0) {
37
-            if (nowMonth == birthMonth) {
38
-                var dayDiff = nowDay - birthDay;//日之差
39
-                if (dayDiff < 0) {
40
-                    returnAge = ageDiff - 1;
41
-                }
42
-                else {
43
-                    returnAge = ageDiff;
44
-                }
45
-            }
46
-            else {
47
-                var monthDiff = nowMonth - birthMonth;//月之差
48
-                if (monthDiff < 0) {
49
-                    returnAge = ageDiff - 1;
50
-                }
51
-                else {
52
-                    returnAge = ageDiff;
53
-                }
54
-            }
21
+  var returnAge;
22
+  var strBirthdayArr = strBirthday.split(splitstr);
23
+  var birthYear = strBirthdayArr[0];
24
+  var birthMonth = strBirthdayArr[1];
25
+  var birthDay = strBirthdayArr[2];
26
+  var d = new Date();
27
+  var nowYear = d.getFullYear();
28
+  var nowMonth = d.getMonth() + 1;
29
+  var nowDay = d.getDate();
30
+  if (nowYear == birthYear) {
31
+    returnAge = 0; // 同年 则为0岁
32
+  } else {
33
+    var ageDiff = nowYear - birthYear; // 年之差
34
+    if (ageDiff > 0) {
35
+      if (nowMonth == birthMonth) {
36
+        var dayDiff = nowDay - birthDay; // 日之差
37
+        if (dayDiff < 0) {
38
+          returnAge = ageDiff - 1;
39
+        } else {
40
+          returnAge = ageDiff;
55 41
         }
56
-        else {
57
-            returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天
42
+      } else {
43
+        var monthDiff = nowMonth - birthMonth; // 月之差
44
+        if (monthDiff < 0) {
45
+          returnAge = ageDiff - 1;
46
+        } else {
47
+          returnAge = ageDiff;
58 48
         }
49
+      }
50
+    } else {
51
+      returnAge = -1; // 返回-1 表示出生日期输入错误 晚于今天
59 52
     }
53
+  }
60 54
 
61
-    return returnAge;//返回周岁年龄
62
-
55
+  return returnAge; // 返回周岁年龄
63 56
 }
64 57
 
65
-export function isPositiveInteger(s){//是否为正整数
66
-    var re = /^[0-9]+$/ ;
67
-    return re.test(s)
68
-} 
58
+export function isPositiveInteger(s) {
59
+  // 是否为正整数
60
+  var re = /^[0-9]+$/;
61
+  return re.test(s);
62
+}
69 63
 
70 64
 export function isPositiveNumber(s) {
71
-    var re = /^\d+(\.\d+)?$/ ;
72
-    return re.test(s)
65
+  var re = /^\d+(\.\d+)?$/;
66
+  return re.test(s);
73 67
 }
74 68
 
75 69
 export function dialysisAge(firstDialysisDate) {
76
-    var dialysisAge;
77
-    var startDate = firstDialysisDate.split('-');
78
-    var startYear = startDate[0];
79
-    var startMonth = startDate[1];
80
-    var startDay = startDate[2];
81
-    var d = new Date();
82
-    var nowYear = d.getFullYear();
83
-    var nowMonth = d.getMonth() + 1;
84
-    var nowDay = d.getDate();
70
+  var dialysisAge;
71
+  var startDate = firstDialysisDate.split("-");
72
+  var startYear = startDate[0];
73
+  var startMonth = startDate[1];
74
+  var startDay = startDate[2];
75
+  var d = new Date();
76
+  var nowYear = d.getFullYear();
77
+  var nowMonth = d.getMonth() + 1;
78
+  var nowDay = d.getDate();
85 79
 
86
-    var diffYear = nowYear-startYear;
87
-    var diffMonth = nowMonth-startMonth;
88
-    var diffDay = nowDay-startDay;
89
-    if (diffYear<0) {
90
-        dialysisAge = "";
91
-    }else if (diffYear==0) {
92
-        if (diffMonth<0){
93
-            dialysisAge = "";
94
-        }else if (diffMonth==0 && diffDay<0){
95
-            dialysisAge = "";
96
-        } else {
97
-            if (diffDay<0) {
98
-                diffMonth -=1;
99
-            }
100
-            dialysisAge = diffMonth+"个月";
101
-        }
102
-    }else {
103
-        if (diffDay<0) {
104
-            diffMonth -=1;
105
-        }
106
-        if (diffMonth<0) {
107
-            diffYear -=1;
108
-            diffMonth += 12;
109
-        }
110
-        if (diffYear>0&&diffMonth>0) {
111
-            dialysisAge = diffYear+"年零"+diffMonth+"个月";
112
-        }else if (diffYear>0) {
113
-            dialysisAge = diffYear+"年";
114
-        }else {
115
-            dialysisAge = diffMonth+"个月";
116
-        }
80
+  var diffYear = nowYear - startYear;
81
+  var diffMonth = nowMonth - startMonth;
82
+  var diffDay = nowDay - startDay;
83
+  if (diffYear < 0) {
84
+    dialysisAge = "";
85
+  } else if (diffYear == 0) {
86
+    if (diffMonth < 0) {
87
+      dialysisAge = "";
88
+    } else if (diffMonth == 0 && diffDay < 0) {
89
+      dialysisAge = "";
90
+    } else {
91
+      if (diffDay < 0) {
92
+        diffMonth -= 1;
93
+      }
94
+      dialysisAge = diffMonth + "个月";
95
+    }
96
+  } else {
97
+    if (diffDay < 0) {
98
+      diffMonth -= 1;
117 99
     }
100
+    if (diffMonth < 0) {
101
+      diffYear -= 1;
102
+      diffMonth += 12;
103
+    }
104
+    if (diffYear > 0 && diffMonth > 0) {
105
+      dialysisAge = diffYear + "年零" + diffMonth + "个月";
106
+    } else if (diffYear > 0) {
107
+      dialysisAge = diffYear + "年";
108
+    } else {
109
+      dialysisAge = diffMonth + "个月";
110
+    }
111
+  }
118 112
 
119
-    return dialysisAge;//返回周岁年龄
113
+  return dialysisAge; // 返回周岁年龄
120 114
 }
121 115
 
122
-
123 116
 export function uParseTime(time, cFormat) {
124
-    if (arguments.length === 0) {
125
-      return null
126
-    }
127
-    const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
128
-    let date
129
-    if (typeof time === 'object') {
130
-      date = time
131
-    } else {
132
-      if (('' + time).length !== 13) time = parseInt(time) * 1000
133
-      date = new Date(time)
134
-    }
135
-    const formatObj = {
136
-      y: date.getFullYear(),
137
-      m: date.getMonth() + 1,
138
-      d: date.getDate(),
139
-      h: date.getHours(),
140
-      i: date.getMinutes(),
141
-      s: date.getSeconds(),
142
-      a: date.getDay()
143
-    }
144
-    const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
145
-      let value = formatObj[key]
146
-      if (key === 'a') return ['一', '二', '三', '四', '五', '六', '日'][value - 1]
147
-      if (result.length > 0 && value < 10) {
148
-        value = '0' + value
149
-      }
150
-      return value || 0
151
-    })
152
-    return time_str
117
+  if (time === 0) {
118
+    return "";
153 119
   }
120
+  if (arguments.length === 0) {
121
+    return null;
122
+  }
123
+  const format = cFormat || "{y}-{m}-{d} {h}:{i}:{s}";
124
+  let date;
125
+  if (typeof time === "object") {
126
+    date = time;
127
+  } else {
128
+    if (("" + time).length !== 13) time = parseInt(time) * 1000;
129
+    date = new Date(time);
130
+  }
131
+  const formatObj = {
132
+    y: date.getFullYear(),
133
+    m: date.getMonth() + 1,
134
+    d: date.getDate(),
135
+    h: date.getHours(),
136
+    i: date.getMinutes(),
137
+    s: date.getSeconds(),
138
+    a: date.getDay()
139
+  };
140
+  const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
141
+    let value = formatObj[key];
142
+    if (key === "a")
143
+      return ["一", "二", "三", "四", "五", "六", "日"][value - 1];
144
+    if (result.length > 0 && value < 10) {
145
+      value = "0" + value;
146
+    }
147
+    return value || 0;
148
+  });
149
+  return time_str;
150
+}
154 151
 
155
-  export function calculateAnticoagulantZL(type, shouji, shichang, weichi) {
156
-      var t = 0.5;
157
-      if (type==1) {
158
-          t = 0.5;
159
-      }else if (type == 2){
160
-          t = 1;
161
-      }else {
162
-          return 0;
163
-      }
164
-      shouji = parseFloat(shouji);
165
-      shichang = parseFloat(shichang);
166
-      weichi = parseFloat(weichi);
167
-      if (isNaN(shouji) ||isNaN(shichang) ||isNaN(weichi)) {
168
-          return 0
169
-      }
170
-      return (shouji + (shichang-t) * weichi).toFixed(1);
171
-  }
152
+export function calculateAnticoagulantZL(type, shouji, shichang, weichi) {
153
+  var t = 0.5;
154
+  if (type == 1) {
155
+    t = 0.5;
156
+  } else if (type == 2) {
157
+    t = 1;
158
+  } else {
159
+    return 0;
160
+  }
161
+  shouji = parseFloat(shouji);
162
+  shichang = parseFloat(shichang);
163
+  weichi = parseFloat(weichi);
164
+  if (isNaN(shouji) || isNaN(shichang) || isNaN(weichi)) {
165
+    return 0;
166
+  }
167
+  return (shouji + (shichang - t) * weichi).toFixed(1);
168
+}

+ 8 - 5
src/xt_pages/data/druguseTemplate.vue Näytä tiedosto

@@ -146,27 +146,30 @@
146 146
 
147 147
                 </template>
148 148
               </el-table-column>
149
+
149 150
               <el-table-column
150 151
                 prop="amount3"
151 152
                 align="center"
152
-
153
-                label="使用频率">
153
+                label="给药途径">
154 154
                 <template slot-scope="scope" v-if="scope.row.parent_id == 0">
155
-                  <span>{{scope.row.execution_frequency}}</span>
155
+                  <span>{{scope.row.delivery_way}}</span>
156 156
                 </template>
157 157
               </el-table-column>
158 158
 
159
+
159 160
               <el-table-column
160 161
                 prop="amount3"
161 162
                 align="center"
162 163
 
163
-                label="给药途径">
164
+                label="执行频率">
164 165
                 <template slot-scope="scope" v-if="scope.row.parent_id == 0">
165
-                  <span>{{scope.row.delivery_way}}</span>
166
+                  <span>{{scope.row.execution_frequency}}</span>
166 167
                 </template>
167 168
               </el-table-column>
168 169
 
169 170
 
171
+
172
+
170 173
               <el-table-column prop="blood_flow_volume" align="center" label="提醒频率">
171 174
                 <template slot-scope="scope">
172 175
                   <span v-if="scope.row.frequency_type == 1">每次必推</span>

+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_five.vue Näytä tiedosto

@@ -916,7 +916,7 @@
916 916
                 <div class="row" style="padding: 2px 0;line-height:24px;">
917 917
                   <div class="inline_block">
918 918
                     透前体重:
919
-                    <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis">
919
+                    <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis&&record.assessment_before_dislysis.weight_before">
920 920
                       {{record.assessment_before_dislysis.weight_before}}
921 921
                     </div>
922 922
                     <div class="under_line" style="width: 60px;" v-else>

+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_other.vue Näytä tiedosto

@@ -853,7 +853,7 @@
853 853
                 <div class="row" style="padding: 2px 0;line-height:24px;">
854 854
                   <div class="inline_block">
855 855
                     透前体重:
856
-                    <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis">
856
+                    <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis&&record.assessment_before_dislysis.weight_before">
857 857
                       {{record.assessment_before_dislysis.weight_before}}
858 858
                     </div>
859 859
                     <div class="under_line" style="width: 60px;" v-else>

+ 1 - 1
src/xt_pages/dialysis/batch_print/batch_print_order_other_two.vue Näytä tiedosto

@@ -241,7 +241,7 @@
241 241
                   <div class="row" style="padding: 2px 0;line-height:24px;">
242 242
                     <div class="inline_block">
243 243
                       透前体重:
244
-                      <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis">
244
+                      <div class="under_line" style="width: 60px;text-align: left" v-if="record.assessment_before_dislysis&&record.assessment_before_dislysis.weight_before">
245 245
                         {{record.assessment_before_dislysis.weight_before}}
246 246
                       </div>
247 247
                       <div class="under_line" style="width: 60px;" v-else>

+ 16 - 5
src/xt_pages/dialysis/details/BasicInfor.vue Näytä tiedosto

@@ -10,7 +10,7 @@
10 10
         </ul>
11 11
       </div>
12 12
       <ul class="info clearfix">
13
-        <li>  
13
+        <li>
14 14
           <label>姓名 : </label>
15 15
           <span>{{ patient.id == 0 ? "" : patient.name }}</span>
16 16
         </li>
@@ -20,7 +20,7 @@
20 20
         </li>
21 21
         <li>
22 22
           <label>年龄:</label>
23
-          <span>{{ patient.age }}</span>
23
+          <span>{{ getAge(patient) }}</span>
24 24
         </li>
25 25
         <li>
26 26
           <label>透析号 : </label>
@@ -56,7 +56,7 @@ export default {
56 56
   data() {
57 57
     return {
58 58
       title: '基本信息',
59
-      dialysis_time: moment(new Date()).format('YYYY-MM-DD')
59
+      dialysis_time:0,
60 60
       // steps: [
61 61
       //   { title: "透析处方" },
62 62
       //   { title: "接诊评估" },
@@ -101,12 +101,23 @@ export default {
101 101
     }
102 102
   },
103 103
   methods: {
104
+    getAge: function(val) {
105
+      if (val.age == 0) {
106
+        if (val.birthday == 0) {
107
+          return ''
108
+        }
109
+        return jsGetAge(uParseTime(val.birthday, '{y}-{m}-{d}'), '-')
110
+      } else {
111
+        return val.age
112
+      }
113
+    },
104 114
     stepState: function() {
105 115
       return parseInt((Math.random() * 1000) + '') % 2 == 1
106 116
     }
107 117
   },
108 118
   created() {
109
-    console.log('patinents是什么ha ', this.patient)
119
+    this.dialysis_time = parseTime(this.$route.query.date, '{y}-{m}-{d}')
120
+
110 121
   }
111 122
 }
112 123
 </script>
@@ -206,7 +217,7 @@ export default {
206 217
   }
207 218
 }
208 219
 .info {
209
-    padding:20px 40px;  
220
+    padding:20px 40px;
210 221
     li {
211 222
       float: left;
212 223
       width: 28%;

+ 139 - 69
src/xt_pages/dialysis/details/DialysisPrescription.vue Näytä tiedosto

@@ -11,93 +11,149 @@
11 11
           <label>目标超滤量 : </label>
12 12
           <span class="content">{{target_ultrafiltration != '0'?target_ultrafiltration:''}}</span>
13 13
           <span class="unit">{{target_ultrafiltration != '0'?"L":''}}</span>
14
+        </li>
15
+
16
+
14 17
 
18
+
19
+        <li v-if="isShow('抗凝剂')">
20
+          <label>抗凝剂 : </label>
21
+          <span class="content">{{anticoagulant}}</span>
15 22
         </li>
16
-        <li v-if="isShow('首剂')">
17
-          <label>首剂 : </label>
18
-          <span class="content">{{anticoagulant_shouji != '0'?anticoagulant_shouji:''}}</span>
19
-          <span class="unit">{{anticoagulant_shouji != '0'?"mg":''}}</span>
23
+
24
+
25
+
26
+        <li v-if="isShow('总量')&&getValueStr('anticoagulant','anticoagulant') != 5">
27
+          <label>总量: </label>
28
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') != 1">{{anticoagulant_zongliang != '0'?anticoagulant_zongliang:""}}</span>
29
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') == 1"></span>
30
+
31
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 2">{{anticoagulant_zongliang != '0'?"iu":""}}</span>
32
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 3">{{anticoagulant_zongliang != '0'?"iu":""}}</span>
33
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 1">{{anticoagulant_zongliang != '0'?"mg":""}}</span>
34
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 4">{{anticoagulant_zongliang != '0'?"mg":""}}</span>
35
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 5">{{anticoagulant_zongliang != '0'?"ml":""}}</span>
20 36
         </li>
21
-        <li v-if="isShow('钙')">
22
-          <label>钙: </label>
23
-          <span class="content">{{calcium != '0'?calcium:""}}</span>
24
-          <span class="unit">{{calcium != '0'?"mmol/L":""}}</span>
37
+
38
+
39
+
40
+        <li v-if="isShow('钙剂量')&&getValueStr('anticoagulant','anticoagulant') == 5">
41
+          <label>钙剂量: </label>
42
+          <span class="content">{{getValueStr('anticoagulant_gaijiliang','anticoagulant_gaijiliang')}}</span>
43
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 5">{{'ml'}}</span>
44
+        </li>
45
+
46
+
47
+        <li v-if="isShow('钠')">
48
+          <label>钠 : </label>
49
+          <span class="content">{{sodium != '0'?sodium:""}}</span>
50
+          <span class="unit">{{sodium != '0'?"mmol/L":""}}</span>
25 51
         </li>
52
+
53
+        <li v-if="isShow('体液过多症状')">
54
+          <label>体液过多症状 : </label>
55
+          <span class="content">{{body_fluid}}</span>
56
+          <span class="unit"></span>
57
+        </li>
58
+
59
+
60
+
26 61
         <li v-if="isShow('置换量')">
27 62
           <label>置换量 : </label>
28 63
           <span class="content">{{replacement_total != '0'?replacement_total:""}}</span>
29 64
           <span class="unit">{{replacement_total != '0'?"L":""}}</span>
30 65
         </li>
31 66
 
67
+
68
+        <li v-if="isShow('透析前使用其他特殊药物')">
69
+          <label>透析前使用其他特殊药物: </label>
70
+          <span class="content">{{special_medicine_other}}</span>
71
+          <span class="unit"></span>
72
+        </li>
73
+
32 74
         <li v-if="isShow('葡萄糖')">
33 75
           <label>葡萄糖 : </label>
34 76
           <span class="content">{{glucose != '0'?glucose:""}}</span>
35 77
           <span class="unit">{{glucose != '0'?"mmol/l":""}}</span>
36 78
         </li>
37
-         <li v-if="isShow('透析时长')">
79
+
80
+
81
+      </ul>
82
+
83
+
84
+      <ul>
85
+        <li v-if="isShow('透析时长')">
38 86
           <label>透析时长 : </label>
39 87
           <span class="content">{{dialysis_duration != '0'?dialysis_duration:""}}</span>
40 88
         </li>
41
-         <li v-if="isShow('透析液配方')">
42
-          <label>透析液配方 : </label>
43
-          <span class="content">{{dialysate_formulation}}</span>
89
+        <li v-if="isShow('透析液温度')">
90
+          <label>透析液温度 : </label>
91
+          <span class="content">{{dialysate_temperature != '0'?dialysate_temperature:""}}</span>
92
+          <span class="unit">{{dialysate_temperature != '0'?"℃":""}}</span>
44 93
         </li>
45
-         <li v-if="isShow('维持')">
46
-          <label>维持 : </label>
47
-          <span class="content">{{anticoagulant_weichi != '0'?anticoagulant_weichi:""}}</span>
48
-          <span class="unit">{{anticoagulant_weichi != '0'?"mg/h":""}}</span>
94
+
95
+
96
+        <li v-if="isShow('首剂')&&getValueStr('anticoagulant','anticoagulant') != 5">
97
+          <label>首剂 : </label>
98
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') != 1">{{anticoagulant_shouji != '0'?anticoagulant_shouji:''}}</span>
99
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') == 1"></span>
100
+
101
+          <!--<span class="unit">{{anticoagulant_shouji != '0'?"mg":''}}</span>-->
102
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 2">{{anticoagulant_shouji != '0'?"iu":""}}</span>
103
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 3">{{anticoagulant_shouji != '0'?"iu":""}}</span>
104
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 1">{{anticoagulant_shouji != '0'?"mg":""}}</span>
105
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 4">{{anticoagulant_shouji != '0'?"mg":""}}</span>
106
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 5">{{anticoagulant_shouji != '0'?"mg":""}}</span>
107
+
49 108
         </li>
50
-      </ul>
51
-      <ul>
109
+
110
+        <li v-if="isShow('钙名称')&&getValueStr('anticoagulant','anticoagulant') == 5">
111
+          <label>钙名称: </label>
112
+          <span class="content">{{getValueStr('anticoagulant_gaimingcheng','anticoagulant_gaimingcheng')}}</span>
113
+        </li>
114
+
52 115
         <li v-if="isShow('钾')">
53 116
           <label>钾 : </label>
54 117
           <span class="content">{{kalium != '0'?kalium:""}}</span>
55 118
           <span class="unit">{{kalium != '0'?"mmol/L":""}}</span>
56 119
         </li>
120
+
121
+
122
+
57 123
         <li v-if="isShow('碳酸氢盐')">
58 124
           <label>碳酸氢盐 : </label>
59 125
           <span class="content">{{bicarbonate != '0'?bicarbonate:""}}</span>
60 126
           <span class="unit">{{bicarbonate != '0'?"mmol/L":""}}</span>
61 127
         </li>
62
-        <!-- <li>
63
-          <label>干体重 : </label>
64
-          <span class="content">{{dry_weight}}</span>
65
-          <span class="unit">kg</span>
66
-        </li> -->
67
-        <li v-if="isShow('透析液温度')">
68
-          <label>透析液温度 : </label>
69
-          <span class="content">{{dialysate_temperature != '0'?dialysate_temperature:""}}</span>
70
-          <span class="unit">{{dialysate_temperature != '0'?"℃":""}}</span>
128
+
129
+        <li v-if="isShow('体液过多其他症状')">
130
+          <label>体液过多其他症状 : </label>
131
+          <span class="content">{{body_fluid_other}}</span>
132
+          <span class="unit"></span>
71 133
         </li>
72
-         <li v-if="isShow('血流量')">
134
+
135
+
136
+
137
+
138
+
139
+        <li v-if="isShow('血流量')">
73 140
           <label>血流量 : </label>
74 141
           <span class="content">{{blood_flow_volume != '0'?blood_flow_volume:''}}</span>
75 142
           <span class="unit">{{blood_flow_volume != '0'?"ml/min":''}}</span>
76 143
         </li>
77
-        <li v-if="isShow('抗凝剂')">
78
-          <label>抗凝剂 : </label>
79
-          <span class="content">{{anticoagulant}}</span>
80
-        </li>
81
-          <li v-if="isShow('总量')">
82
-          <label>总量: </label>
83
-          <span class="content">{{anticoagulant_zongliang != '0'?anticoagulant_zongliang:""}}</span>
84
-          <span class="unit">{{anticoagulant_zongliang != '0'?"mg":""}}</span>
85
-        </li>
86
-        <li v-if="isShow('钠')">
87
-          <label>钠 : </label>
88
-          <span class="content">{{sodium != '0'?sodium:""}}</span>
89
-          <span class="unit">{{sodium != '0'?"mmol/L":""}}</span>
144
+
145
+        <li v-if="isShow('透析液配方')">
146
+          <label>透析液配方 : </label>
147
+          <span class="content">{{dialysate_formulation}}</span>
90 148
         </li>
149
+
150
+
91 151
           <li v-if="isShow('透析液流量')">
92 152
           <label>透析液流量 : </label>
93 153
           <span class="content">{{dialysate_flow != '0'?dialysate_flow:""}}</span>
94 154
           <span class="unit">{{dialysate_flow != '0'?"ml/min":""}}</span>
95 155
         </li>
96
-           <li v-if="isShow('电导度')">
97
-          <label>电导度 : </label>
98
-          <span class="content">{{conductivity != '0'?conductivity:""}}</span>
99
-          <span class="unit">{{conductivity != '0'?"mS/m":""}}</span>
100
-        </li>
156
+
101 157
       </ul>
102 158
       <ul>
103 159
 
@@ -106,44 +162,58 @@
106 162
           <span class="content">{{dialyzer_perfusion_apparatus}}</span>
107 163
           <span class="unit"></span>
108 164
         </li>
109
-
110
-        <li v-if="isShow('体液过多症状')">
111
-          <label>体液过多症状 : </label>
112
-          <span class="content">{{body_fluid}}</span>
113
-          <span class="unit"></span>
165
+        <li v-if="isShow('实际超滤量')">
166
+          <label>实际超滤量: </label>
167
+          <span class="content">{{ultrafiltration != '0'? ultrafiltration:''}}</span>
168
+          <span class="unit">{{ultrafiltration != '0'?"L":""}}</span>
114 169
         </li>
115
-        <li v-if="isShow('体液过多其他症状')">
116
-          <label>体液过多其他症状 : </label>
117
-          <span class="content">{{body_fluid_other}}</span>
118
-          <span class="unit"></span>
170
+        <li v-if="isShow('维持')&&getValueStr('anticoagulant','anticoagulant') != 5">
171
+          <label>维持 : </label>
172
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') != 1">{{anticoagulant_weichi != '0'?anticoagulant_weichi:""}}</span>
173
+          <span class="content" v-if="getValueStr('anticoagulant','anticoagulant') == 1"></span>
174
+
175
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 2">{{anticoagulant_weichi != '0'?"iu":""}}</span>
176
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 3">{{anticoagulant_weichi != '0'?"iu":""}}</span>
177
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 1">{{anticoagulant_weichi != '0'?"mg":""}}</span>
178
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 4">{{anticoagulant_weichi != '0'?"mg":""}}</span>
179
+          <span class="unit" v-if="getValueStr('anticoagulant','anticoagulant') == 5">{{anticoagulant_weichi != '0'?"ml":""}}</span>
119 180
         </li>
120
-        <li v-if="isShow('透析前使用特殊药物')">
121
-          <label>透析前使用特殊药物: </label>
122
-          <span class="content">{{special_medicine}}</span>
123
-          <span class="unit"></span>
181
+
182
+        <li v-if="isShow('钙')">
183
+          <label>钙: </label>
184
+          <span class="content">{{calcium != '0'?calcium:""}}</span>
185
+          <span class="unit">{{calcium != '0'?"mmol/L":""}}</span>
124 186
         </li>
125
-        <li v-if="isShow('透析前使用其他特殊药物')">
126
-          <label>透析前使用其他特殊药物: </label>
127
-          <span class="content">{{special_medicine_other}}</span>
128
-          <span class="unit"></span>
187
+
188
+        <li v-if="isShow('电导度')">
189
+          <label>电导度 : </label>
190
+          <span class="content">{{conductivity != '0'?conductivity:""}}</span>
191
+          <span class="unit">{{conductivity != '0'?"mS/m":""}}</span>
129 192
         </li>
193
+
194
+
130 195
         <li v-if="isShow('置换液')">
131 196
           <label v-if="this.$store.getters.xt_user.template_info.template_id != 6">置换液: </label>
132 197
           <label v-if="this.$store.getters.xt_user.template_info.template_id == 6">置换方式: </label>
133 198
 
134
-          <span class="content">{{displace_liqui}}</span>
199
+          <span class="content">{{displace_liqui != '0'?displace_liqui:''}}</span>
200
+          <span class="unit">{{displace_liqui != '0'?'L':''}}</span>
201
+        </li>
202
+
203
+
204
+        <li v-if="isShow('透析前使用特殊药物')">
205
+          <label>透析前使用特殊药物: </label>
206
+          <span class="content">{{special_medicine}}</span>
135 207
           <span class="unit"></span>
136 208
         </li>
209
+
210
+
137 211
         <li v-if="isShow('血管通路')">
138 212
           <label>血管通路: </label>
139 213
           <span class="content">{{blood_access}}</span>
140 214
           <span class="unit"></span>
141 215
         </li>
142
-        <li v-if="isShow('实际超滤量')">
143
-          <label>实际超滤量: </label>
144
-          <span class="content">{{ultrafiltration != '0'? ultrafiltration:''}}</span>
145
-          <span class="unit">{{ultrafiltration != '0'?"L":""}}</span>
146
-        </li>
216
+
147 217
         <li v-if="isShow('目标KT/V')">
148 218
           <label>目标KT/V: </label>
149 219
           <span class="content">{{target_ktv != '0'? target_ktv:''}}</span>

+ 441 - 351
src/xt_pages/dialysis/details/NavIgation.vue Näytä tiedosto

@@ -1,375 +1,465 @@
1 1
 <template>
2
-    <div>
3
-        <div class="grid">
4
-            <div class="list">
5
-                <ul>
6
-                    <li @click="showPrescription">
7
-                        <img src="@/assets/record/1.png">
8
-                        <p>透析处方</p>
9
-                    </li>
10
-                    <li @click="showAccepts">
11
-                        <img src="@/assets/record/2.png">
12
-                        <p>接诊评估</p>
13
-                    </li>
14
-                    <li @click="showAssessmentBefore">
15
-                        <img src="@/assets/record/3.png">
16
-                        <p>透前评估</p>
17
-                    </li>
18
-                    <li @click="showDoctorAdviceDialog">
19
-                        <img src="@/assets/record/4.png">
20
-                        <p>临时医嘱</p>
21
-                    </li>
22
-                    <li @click="showDoubleCheck">
23
-                        <img src="@/assets/record/5.png">
24
-                        <p>双人核对</p>
25
-                    </li>
26
-                </ul>
27
-            </div>
28
-            <div class="list">
29
-                <ul>
30
-                    <li @click="showComputerDialog">
31
-                        <img src="@/assets/record/6.png" >
32
-                        <p>透析上机</p>
33
-                    </li>
34
-                    <li @click="showMonitorDialog">
35
-                        <img src="@/assets/record/7.png" >
36
-                        <p>透析监测</p>
37
-                    </li>
38
-                    <li @click="showFinishDialog">
39
-                        <img src="@/assets/record/8.png" >
40
-                        <p>透析下机</p>
41
-                    </li>
42
-                    <li @click="showAssessmentAfterDialog">
43
-                        <img src="@/assets/record/9.png" >
44
-                        <p>透后评估</p>
45
-                    </li>
46
-                    <li @click="showrTeatmentSummary" >
47
-                        <img src="@/assets/record/10.png" >
48
-                        <p>治疗小结</p>
49
-                    </li>
50
-                </ul>
51
-            </div>
52
-        </div>
53
-
54
-        <div class="middleLine"></div>
55
-
56
-        <dialysis-prescription-dialog title="透析处方" ref="prescription" :patient="patient" :prescription="prescription" :solution="solution" @advice="adviceFunc"
57
-                                      :niprocart_info="niprocart_info" :jms_info="jms_info" :fistula_needle_set_info="fistula_needle_set_info"
58
-        :fistula_needle_set_16_info="fistula_needle_set_16_info"  :hemoperfusion_info="hemoperfusion_info" :dialyser_sterilised_info="dialyser_sterilised_info"
59
-        :filtryzer_info="filtryzer_info" :dialyzers_info="dialyzers_info" :injector_info="injector_info" :bloodlines_info="bloodlines_info"  :tubingHemodialysis_info="tubingHemodialysis_info"
60
-        :safe_package_info="safe_package_info" :aliquid_info="aliquid_info" :config="config" :admin_users="admin_users"  :targetAdvices="longAdvices"
61
-                                      :waitUploadAdvices="waitUploadAdvices" :is_open="is_open"
62
-
63
-        ></dialysis-prescription-dialog>
64
-
65
-        <double-check-dialog title="双人核对" ref="doubleCheck" :patient="patient" :double_check="double_check" :admin_users="admin_users" ></double-check-dialog>
66
-
67
-        <accepts-treatment-dialog title="接诊评估" ref="accepts" :patient="patient" :receiver_treatment_access="receiver_treatment_access"></accepts-treatment-dialog>
68
-
69
-        <assessment-before-dislysis-dialog title="透前评估" ref="assessmentBefore" :patient="patient" :predialysis_evaluation="predialysis_evaluation"></assessment-before-dislysis-dialog>
70
-
71
-        <treatment-summary-dialog title="治疗小结" ref="treatmentSummary" :patient="patient" :treatment_summary="treatment_summary"></treatment-summary-dialog>
72
-
73
-        <doctor-advice-dialog title="临时医嘱" ref="doctor_advice" :doctor_advices="doctor_advices" :patient="patient" :admin_users="admin_users" :dialysis_order="dialysis_order" ></doctor-advice-dialog>
74
-
75
-        <computer-dialog title="透析上机" ref="computer_dialog" :dialysis_order="dialysis_order" :schedule="schedual" :admins="admin_users" :device_numbers="device_numbers"></computer-dialog>
76
-
77
-        <monitor-dialog title="透析监测" ref="monitor_dialog" :monitors="monitor_records"></monitor-dialog>
78
-
79
-        <finish-dialog title="透析下机" ref="finish_dialog" :dialysis_order="dialysis_order" :schedule="schedual" :admins="admin_users"></finish-dialog>
80
-
81
-        <assessment-after-dislysis title="透后评估" ref="assessment_after_dislysis" :assessment_after_dislysis="assessment_after_dislysis" :patient="patient"  :dialysis_order="dialysis_order"></assessment-after-dislysis>
2
+  <div>
3
+    <div class="grid">
4
+      <div class="list">
5
+        <ul>
6
+          <li @click="showPrescription">
7
+            <img src="@/assets/record/1.png">
8
+            <p>透析处方</p>
9
+          </li>
10
+          <li @click="showAccepts">
11
+            <img src="@/assets/record/2.png">
12
+            <p>接诊评估</p>
13
+          </li>
14
+          <li @click="showAssessmentBefore">
15
+            <img src="@/assets/record/3.png">
16
+            <p>透前评估</p>
17
+          </li>
18
+          <li @click="showDoctorAdviceDialog">
19
+            <img src="@/assets/record/4.png">
20
+            <p>临时医嘱</p>
21
+          </li>
22
+          <li @click="showDoubleCheck">
23
+            <img src="@/assets/record/5.png">
24
+            <p>双人核对</p>
25
+          </li>
26
+        </ul>
27
+      </div>
28
+      <div class="list">
29
+        <ul>
30
+          <li @click="showComputerDialog">
31
+            <img src="@/assets/record/6.png">
32
+            <p>透析上机</p>
33
+          </li>
34
+          <li @click="showMonitorDialog">
35
+            <img src="@/assets/record/7.png">
36
+            <p>透析监测</p>
37
+          </li>
38
+          <li @click="showFinishDialog">
39
+            <img src="@/assets/record/8.png">
40
+            <p>透析下机</p>
41
+          </li>
42
+          <li @click="showAssessmentAfterDialog">
43
+            <img src="@/assets/record/9.png">
44
+            <p>透后评估</p>
45
+          </li>
46
+          <li @click="showrTeatmentSummary">
47
+            <img src="@/assets/record/10.png">
48
+            <p>治疗小结</p>
49
+          </li>
50
+        </ul>
51
+      </div>
82 52
     </div>
53
+
54
+    <div class="middleLine"></div>
55
+
56
+    <dialysis-prescription-dialog title="透析处方" ref="prescription" :patient="patient" :prescription="prescription"
57
+                                  :solution="solution" @advice="adviceFunc"
58
+                                  :niprocart_info="niprocart_info" :jms_info="jms_info"
59
+                                  :fistula_needle_set_info="fistula_needle_set_info"
60
+                                  :fistula_needle_set_16_info="fistula_needle_set_16_info"
61
+                                  :hemoperfusion_info="hemoperfusion_info"
62
+                                  :dialyser_sterilised_info="dialyser_sterilised_info"
63
+                                  :filtryzer_info="filtryzer_info" :dialyzers_info="dialyzers_info"
64
+                                  :injector_info="injector_info" :bloodlines_info="bloodlines_info"
65
+                                  :tubingHemodialysis_info="tubingHemodialysis_info"
66
+                                  :safe_package_info="safe_package_info" :aliquid_info="aliquid_info" :config="config"
67
+                                  :admin_users="admin_users" :targetAdvices="longAdvices"
68
+                                  :waitUploadAdvices="waitUploadAdvices" :is_open="is_open"
69
+
70
+                                  :predialysis="predialysis_evaluation"
71
+                                  :last_predialysis="last_predialysis_evaluation"
72
+                                  :record="assessment_after_dislysis"
73
+                                  :last_record="last_assessment_after_dislysis"
74
+                                  :last_prescription="last_dialysis_prescribe"
75
+                                  :dry_weight="last_dryWeight_dislysis"
76
+                                  :schedual="schedual"
77
+
78
+    ></dialysis-prescription-dialog>
79
+
80
+    <double-check-dialog title="双人核对" ref="doubleCheck" :patient="patient" :double_check="double_check"
81
+                         :admin_users="admin_users"></double-check-dialog>
82
+
83
+    <accepts-treatment-dialog title="接诊评估" ref="accepts" :patient="patient"
84
+                              :receiver_treatment_access="receiver_treatment_access"></accepts-treatment-dialog>
85
+
86
+    <assessment-before-dislysis-dialog title="透前评估" ref="assessmentBefore" :patient="patient" :last_predialysis="last_predialysis_evaluation"
87
+                                       :predialysis_evaluation="predialysis_evaluation" :admin_users="admin_users"  :dry_weight="last_dryWeight_dislysis"
88
+    ></assessment-before-dislysis-dialog>
89
+
90
+    <treatment-summary-dialog title="治疗小结" ref="treatmentSummary" :patient="patient"
91
+                              :treatment_summary="treatment_summary"></treatment-summary-dialog>
92
+
93
+    <doctor-advice-dialog title="临时医嘱" ref="doctor_advice" :doctor_advices="doctor_advices" :patient="patient"
94
+                          :admin_users="admin_users" :dialysis_order="dialysis_order"></doctor-advice-dialog>
95
+
96
+    <computer-dialog title="透析上机" ref="computer_dialog" :dialysis_order="dialysis_order" :schedule="schedual" @monitor="add_monitor"
97
+                     :admins="admin_users" :device_numbers="device_numbers" :special_premission="special_premission"></computer-dialog>
98
+
99
+    <monitor-dialog title="透析监测" ref="monitor_dialog" :monitors="monitor_records" ></monitor-dialog>
100
+
101
+    <finish-dialog title="透析下机" ref="finish_dialog" :dialysis_order="dialysis_order" :schedule="schedual"
102
+                   :admins="admin_users"  @assessmentAfterDislysis="assessmentAfterDislysisFunc" :special_premission="special_premission"></finish-dialog>
103
+
104
+    <assessment-after-dislysis title="透后评估" ref="assessment_after_dislysis"
105
+                               :assessment_after_dislysis="assessment_after_dislysis" :patient="patient"
106
+                               :dialysis_order="dialysis_order"></assessment-after-dislysis>
107
+  </div>
83 108
 </template>
84 109
 
85 110
 <script>
86
-import dialysisPrescriptionDialog from './dialog/dialysisPrescriptionDialog'
87
-import doubleCheckDialog from './dialog/doubleCheckDialog'
88
-import AssessmentAfterDislysis from './dialog/AssessmentAfterDislysis'
89
-import acceptsTreatmentDialog from './dialog/acceptsTreatmentDialog'
90
-import assessmentBeforeDislysisDialog from './dialog/assessmentBeforeDislysisDialog'
91
-import MonitorDialog from './dialog/monitor_dialog'
92
-import DoctorAdviceDialog from './dialog/DoctorAdviceDialog'
93
-import treatmentSummaryDialog from './dialog/treatmentSummaryDialog'
94
-import ComputerDialog from './dialog/computer_dialog'
95
-import FinishDialog from './dialog/finish_dialog'
96
-
97
-export default {
98
-  name: 'NavIgation',
99
-  components: {
100
-    dialysisPrescriptionDialog,
101
-    doubleCheckDialog,
102
-    AssessmentAfterDislysis,
103
-    acceptsTreatmentDialog,
104
-    assessmentBeforeDislysisDialog,
105
-    treatmentSummaryDialog,
106
-    MonitorDialog,
107
-    DoctorAdviceDialog,
108
-    ComputerDialog,
109
-    FinishDialog
110
-  },
111
-  data() {
112
-    return {
113
-    }
114
-  },
115
-  props: {
116
-    longAdvices: { // 临时医嘱
117
-      type: Array,
118
-      default: () => {
119
-        return []
120
-      }
121
-    },
122
-    waitUploadAdvices: { // 临时医嘱
123
-      type: Array,
124
-      default: () => {
125
-        return []
126
-      }
127
-    },
128
-    is_open: { // 临时医嘱
129
-      type: Number,
130
-      default: () => {
131
-        return 0
132
-      }
133
-    },
134
-    patient: { // 患者信息
135
-      type: Object,
136
-      default: () => {
137
-        return { id: 0 }
138
-      }
139
-    },
140
-    schedual: { // 患者排班信息
141
-      type: Object,
142
-      default: () => {
143
-        return { id: 0 }
144
-      }
145
-    },
146
-    prescription: { // 透析处方
147
-      type: Object,
148
-      default: () => {
149
-        return { id: 0 }
150
-      }
151
-    },
152
-    solution: { // 透析方案
153
-      type: Object,
154
-      default: () => {
155
-        return { id: 0 }
156
-      }
157
-    },
158
-    receiver_treatment_access: { // 接诊评估
159
-      type: Object,
160
-      default: () => {
161
-        return { id: 0 }
162
-      }
163
-    },
164
-    predialysis_evaluation: { // 透前评估
165
-      type: Object,
166
-      default: () => {
167
-        return { id: 0 }
168
-      }
169
-    },
170
-    doctor_advices: { // 临时医嘱
171
-      type: Array,
172
-      default: () => {
173
-        return []
174
-      }
175
-    },
176
-    double_check: { // 双人核对
177
-      type: Object,
178
-      default: () => {
179
-        return { id: 0 }
180
-      }
181
-    },
182
-    assessment_after_dislysis: { // 透后评估
183
-      type: Object,
184
-      default: () => {
185
-        return { id: 0 }
186
-      }
187
-    },
188
-    treatment_summary: { // 治疗小结
189
-      type: Object,
190
-      default: () => {
191
-        return { id: 0 }
192
-      }
193
-    },
194
-    monitor_records: { // 透析监测
195
-      type: Array,
196
-      default: () => {
197
-        return []
198
-      }
199
-    },
200
-    dialysis_order: { // 透析记录
201
-      type: Object,
202
-      default: () => {
203
-        return { id: 0 }
204
-      }
205
-    },
206
-    admin_users: { // 系统用户列表
207
-      type: Array,
208
-      default: () => {
209
-        return []
210
-      }
211
-    },
212
-    devices: { // 设备
213
-      type: Array,
214
-      default: () => {
215
-        return []
216
-      }
217
-    },
218
-    device_numbers: { // 床位
219
-      type: Array,
220
-      default: () => {
221
-        return []
222
-      }
223
-    },
111
+  import dialysisPrescriptionDialog from './dialog/dialysisPrescriptionDialog'
112
+  import doubleCheckDialog from './dialog/doubleCheckDialog'
113
+  import AssessmentAfterDislysis from './dialog/AssessmentAfterDislysis'
114
+  import acceptsTreatmentDialog from './dialog/acceptsTreatmentDialog'
115
+  import assessmentBeforeDislysisDialog from './dialog/assessmentBeforeDislysisDialog'
116
+  import MonitorDialog from './dialog/monitor_dialog'
117
+  import DoctorAdviceDialog from './dialog/DoctorAdviceDialog'
118
+  import treatmentSummaryDialog from './dialog/treatmentSummaryDialog'
119
+  import ComputerDialog from './dialog/computer_dialog'
120
+  import FinishDialog from './dialog/finish_dialog'
224 121
 
225
-    niprocart_info: {
226
-      type: Array,
227
-      default: () => {
228
-        return []
229
-      }
122
+  export default {
123
+    name: 'NavIgation',
124
+    components: {
125
+      dialysisPrescriptionDialog,
126
+      doubleCheckDialog,
127
+      AssessmentAfterDislysis,
128
+      acceptsTreatmentDialog,
129
+      assessmentBeforeDislysisDialog,
130
+      treatmentSummaryDialog,
131
+      MonitorDialog,
132
+      DoctorAdviceDialog,
133
+      ComputerDialog,
134
+      FinishDialog
230 135
     },
231 136
 
232
-    jms_info: {
233
-      type: Array,
234
-      default: () => {
235
-        return []
236
-      }
237
-    },
137
+    data() {
138
+      return {
238 139
 
239
-    fistula_needle_set_info: {
240
-      type: Array,
241
-      default: () => {
242
-        return []
243 140
       }
141
+    },mounted(){
244 142
     },
245 143
 
246
-    fistula_needle_set_16_info: {
247
-      type: Array,
248
-      default: () => {
249
-        return []
250
-      }
251
-    },
144
+    props: {
145
+      longAdvices: { // 临时医嘱
146
+        type: Array,
147
+        default: () => {
148
+          return []
149
+        }
150
+      },
151
+      waitUploadAdvices: { // 临时医嘱
152
+        type: Array,
153
+        default: () => {
154
+          return []
155
+        }
156
+      },
157
+      is_open: { // 临时医嘱
158
+        type: Number,
159
+        default: () => {
160
+          return 0
161
+        }
162
+      },
163
+      patient: { // 患者信息
164
+        type: Object,
165
+        default: () => {
166
+          return { id: 0 }
167
+        }
168
+      },
169
+      schedual: { // 患者排班信息
170
+        type: Object,
171
+        default: () => {
172
+          return { id: 0 }
173
+        }
174
+      },
175
+      prescription: { // 透析处方
176
+        type: Object,
177
+        default: () => {
178
+          return { id: 0 }
179
+        }
180
+      },
181
+      solution: { // 透析方案
182
+        type: Object,
183
+        default: () => {
184
+          return { id: 0 }
185
+        }
186
+      },
187
+      receiver_treatment_access: { // 接诊评估
188
+        type: Object,
189
+        default: () => {
190
+          return { id: 0 }
191
+        }
192
+      },
193
+      predialysis_evaluation: { // 透前评估
194
+        type: Object,
195
+        default: () => {
196
+          return { id: 0 }
197
+        }
198
+      },
199
+      doctor_advices: { // 临时医嘱
200
+        type: Array,
201
+        default: () => {
202
+          return []
203
+        }
204
+      },
205
+      double_check: { // 双人核对
206
+        type: Object,
207
+        default: () => {
208
+          return { id: 0 }
209
+        }
210
+      },
211
+      assessment_after_dislysis: { // 透后评估
212
+        type: Object,
213
+        default: () => {
214
+          return { id: 0 }
215
+        }
216
+      },
217
+      treatment_summary: { // 治疗小结
218
+        type: Object,
219
+        default: () => {
220
+          return { id: 0 }
221
+        }
222
+      },
223
+      monitor_records: { // 透析监测
224
+        type: Array,
225
+        default: () => {
226
+          return []
227
+        }
228
+      },
229
+      dialysis_order: { // 透析记录
230
+        type: Object,
231
+        default: () => {
232
+          return { id: 0 }
233
+        }
234
+      },
235
+      admin_users: { // 系统用户列表
236
+        type: Array,
237
+        default: () => {
238
+          return []
239
+        }
240
+      },
241
+      devices: { // 设备
242
+        type: Array,
243
+        default: () => {
244
+          return []
245
+        }
246
+      },
247
+      device_numbers: { // 床位
248
+        type: Array,
249
+        default: () => {
250
+          return []
251
+        }
252
+      },
252 253
 
253
-    hemoperfusion_info: {
254
-      type: Array,
255
-      default: () => {
256
-        return []
257
-      }
258
-    },
254
+      niprocart_info: {
255
+        type: Array,
256
+        default: () => {
257
+          return []
258
+        }
259
+      },
259 260
 
260
-    dialyser_sterilised_info: {
261
-      type: Array,
262
-      default: () => {
263
-        return []
264
-      }
265
-    },
261
+      jms_info: {
262
+        type: Array,
263
+        default: () => {
264
+          return []
265
+        }
266
+      },
266 267
 
267
-    filtryzer_info: {
268
-      type: Array,
269
-      default: () => {
270
-        return []
271
-      }
272
-    },
268
+      fistula_needle_set_info: {
269
+        type: Array,
270
+        default: () => {
271
+          return []
272
+        }
273
+      },
273 274
 
274
-    dialyzers_info: {
275
-      type: Array,
276
-      default: () => {
277
-        return []
278
-      }
279
-    },
280
-    injector_info: {
281
-      type: Array,
282
-      default: () => {
283
-        return []
284
-      }
285
-    },
286
-    bloodlines_info: {
287
-      type: Array,
288
-      default: () => {
289
-        return []
290
-      }
291
-    },
292
-    tubingHemodialysis_info: {
293
-      type: Array,
294
-      default: () => {
295
-        return []
296
-      }
297
-    },
298
-    safe_package_info: {
299
-      type: Array,
300
-      default: () => {
301
-        return []
302
-      }
303
-    },
304
-    aliquid_info: {
305
-      type: Array,
306
-      default: () => {
307
-        return []
308
-      }
309
-    },
310
-    config: {
311
-      type: Object,
312
-      default: () => {
313
-        return { id: 0 }
314
-      }
315
-    },
275
+      fistula_needle_set_16_info: {
276
+        type: Array,
277
+        default: () => {
278
+          return []
279
+        }
280
+      },
316 281
 
317
-    admin_user_map: { // {user_id: admin_user object}
318
-      type: Object,
319
-      default: () => {
320
-        return {}
321
-      }
322
-    },
323
-    device_map: { // {device_id: device object}
324
-      type: Object,
325
-      default: () => {
326
-        return {}
327
-      }
328
-    },
329
-    device_number_map: { // {device_number_id: device_number object}
330
-      type: Object,
331
-      default: () => {
332
-        return {}
333
-      }
334
-    }
335
-  },
336
-  methods: {
337
-    adviceFunc:function(){
282
+      hemoperfusion_info: {
283
+        type: Array,
284
+        default: () => {
285
+          return []
286
+        }
287
+      },
288
+
289
+      dialyser_sterilised_info: {
290
+        type: Array,
291
+        default: () => {
292
+          return []
293
+        }
294
+      },
295
+
296
+      filtryzer_info: {
297
+        type: Array,
298
+        default: () => {
299
+          return []
300
+        }
301
+      },
302
+
303
+      dialyzers_info: {
304
+        type: Array,
305
+        default: () => {
306
+          return []
307
+        }
308
+      },
309
+      injector_info: {
310
+        type: Array,
311
+        default: () => {
312
+          return []
313
+        }
314
+      },
315
+      bloodlines_info: {
316
+        type: Array,
317
+        default: () => {
318
+          return []
319
+        }
320
+      },
321
+      tubingHemodialysis_info: {
322
+        type: Array,
323
+        default: () => {
324
+          return []
325
+        }
326
+      },
327
+      safe_package_info: {
328
+        type: Array,
329
+        default: () => {
330
+          return []
331
+        }
332
+      },
333
+      aliquid_info: {
334
+        type: Array,
335
+        default: () => {
336
+          return []
337
+        }
338
+      },
339
+      headNurses: {
340
+        type: Array,
341
+        default: () => {
342
+          return []
343
+        }
344
+      },
345
+
346
+      config: {
347
+        type: Object,
348
+        default: () => {
349
+          return { id: 0 }
350
+        }
351
+      },
352
+
353
+      admin_user_map: { // {user_id: admin_user object}
354
+        type: Object,
355
+        default: () => {
356
+          return {}
357
+        }
358
+      },
359
+      device_map: { // {device_id: device object}
360
+        type: Object,
361
+        default: () => {
362
+          return {}
363
+        }
364
+      },
365
+      device_number_map: { // {device_number_id: device_number object}
366
+        type: Object,
367
+        default: () => {
368
+          return {}
369
+        }
370
+      },
371
+
372
+      last_predialysis_evaluation: { //最后一条透前
373
+        type: Object,
374
+        default: () => {
375
+          return { id: 0 }
376
+        }
377
+      },
378
+      last_monitor_record: { //最后一条监测记录
379
+        type: Object,
380
+        default: () => {
381
+          return { id: 0 }
382
+        }
383
+      },
384
+      last_assessment_after_dislysis: { //最后一条透后记录 (除了今天录的)
385
+        type: Object,
386
+        default: () => {
387
+          return { id: 0 }
388
+        }
389
+      }, last_dialysis_prescribe: { //最后一条透析处方(除了今天录的)
390
+        type: Object,
391
+        default: () => {
392
+          return { id: 0 }
393
+        }
394
+      }, last_dryWeight_dislysis: { //最后一条干体重 (除了今天录的)
395
+        type: Object,
396
+        default: () => {
397
+          return { id: 0 }
398
+        }
399
+      }, special_premission: {
400
+        type: Array,
401
+        default: () => {
402
+          return []
403
+        }
404
+      },
338 405
 
339
-      this.$emit("advice")
340
-    },
341
-    showMonitorDialog: function() {
342
-      this.$refs.monitor_dialog.show()
343
-    },
344
-    showAssessmentAfterDialog: function() {
345
-      this.$refs.assessment_after_dislysis.show()
346
-    },
347
-    showDoctorAdviceDialog: function() {
348
-      this.$refs.doctor_advice.show()
349
-    },
350
-    showComputerDialog: function() {
351
-      this.$refs.computer_dialog.show()
352
-    },
353
-    showFinishDialog: function() {
354
-      this.$refs.finish_dialog.show()
355
-    },
356
-    showPrescription: function() {
357
-      this.$refs.prescription.show()
358
-    },
359
-    showAccepts: function() {
360
-      this.$refs.accepts.show()
361
-    },
362
-    showAssessmentBefore: function() {
363
-      this.$refs.assessmentBefore.show()
364
-    },
365
-    showDoubleCheck: function() {
366
-      this.$refs.doubleCheck.show()
367 406
     },
368
-    showrTeatmentSummary: function() {
369
-      this.$refs.treatmentSummary.show()
407
+    methods: {
408
+      setLastRecord:function(lastPredialysisEvaluation,lastMonitorRecord,lastAssessmentAfterDislysis,lastDialysisPrescribe,lastDryWeightDislysis){
409
+           this.$refs.assessmentBefore.setLastRecord(lastPredialysisEvaluation,lastDryWeightDislysis)
410
+
411
+      },
412
+
413
+      add_monitor:function(monitor){
414
+
415
+
416
+        this.monitor_records.push(monitor)
417
+        this.monitor_records.sort((a, b) => b.operate_time - a.operate_time)
418
+        this.monitor_records.reverse()
419
+        this.$refs.monitor_dialog.setRecords(this.monitor_records)
420
+      },
421
+      adviceFunc: function() {
422
+
423
+        this.$emit('advice')
424
+      },
425
+      showMonitorDialog: function() {
426
+        this.$refs.monitor_dialog.show()
427
+      },
428
+      showAssessmentAfterDialog: function() {
429
+        this.$refs.assessment_after_dislysis.show()
430
+      },
431
+      showDoctorAdviceDialog: function() {
432
+        this.$refs.doctor_advice.show()
433
+      },
434
+      showComputerDialog: function() {
435
+        this.$refs.computer_dialog.show()
436
+      },
437
+      showFinishDialog: function() {
438
+        this.$refs.finish_dialog.show()
439
+      },
440
+      showPrescription: function() {
441
+        this.$refs.prescription.show()
442
+      },
443
+      showAccepts: function() {
444
+        this.$refs.accepts.show()
445
+      },
446
+      showAssessmentBefore: function() {
447
+        this.$refs.assessmentBefore.show()
448
+      },
449
+      showDoubleCheck: function() {
450
+        this.$refs.doubleCheck.show()
451
+      },
452
+      showrTeatmentSummary: function() {
453
+        this.$refs.treatmentSummary.show()
454
+      },assessmentAfterDislysisFunc:function(val) {
455
+        this.assessment_after_dislysis = val
456
+        this.$refs.assessment_after_dislysis.setRecords(this.assessment_after_dislysis)
457
+        this.$emit('assessmentAfterDislysis', this.assessment_after_dislysis)
458
+
459
+
460
+      }
370 461
     }
371 462
   }
372
-}
373 463
 </script>
374 464
 <style style="stylesheet/scss" lang="scss" scoped>
375 465
   .grid {

+ 59 - 88
src/xt_pages/dialysis/details/assessmentAfter.vue Näytä tiedosto

@@ -16,7 +16,8 @@
16 16
         <li v-if="isShow('实际超滤量')">
17 17
           <label>实际超滤量: </label>
18 18
           <span class="content" v-if="actual_ultrafiltration!='0'">{{ actual_ultrafiltration }}</span>
19
-          <span class="unit" v-if="actual_ultrafiltration!='0'">ml</span>
19
+          <span class="unit" v-if="actual_ultrafiltration!='0'&& this.$store.getters.xt_user.template_info.template_id == 6">ml</span>
20
+          <span class="unit" v-if="actual_ultrafiltration!='0'&& this.$store.getters.xt_user.template_info.template_id != 6">L</span>
20 21
         </li>
21 22
         <li v-if="isShow('凝血')">
22 23
           <label>透析器凝血 : </label>
@@ -71,11 +72,11 @@
71 72
 
72 73
         <li v-if="isShow('并发症')">
73 74
           <label>并发症: </label>
74
-          <span class="content">{{ complication }}</span>
75
+          <span class="content">{{ this.record.complication }}</span>
75 76
         </li>
76 77
         <li v-if="isShow('压迫后内瘘震颤')">
77 78
           <label>压迫后内瘘震颤: </label>
78
-          <span class="content">{{ internal_fistula_tremor_ac_name }}</span>
79
+          <span class="content">{{ getInternal() }}</span>
79 80
         </li>
80 81
 
81 82
         <li v-if="isShow('交待病房护士/患者/陪人观察内容')&&patient_gose==3">
@@ -84,24 +85,24 @@
84 85
         </li>
85 86
         <li v-if="isShow('体温')">
86 87
           <label>体温 : </label>
87
-          <span class="content" v-if="temperature!='0'">{{ temperature }}</span>
88
-          <span class="unit" v-if="temperature!='0'">℃</span>
88
+          <span class="content" v-if="this.record.temperature">{{ this.record.temperature }}</span>
89
+          <span class="unit" v-if="this.record.temperature">℃</span>
89 90
         </li>
90 91
         <li v-if="isShow('脉率')">
91 92
           <label>脉率 : </label>
92
-          <span class="content" v-if="pulse_frequency!='0'">{{ pulse_frequency }}</span>
93
-          <span class="unit" v-if="pulse_frequency!='0'">次/分</span>
93
+          <span class="content" v-if="this.record.pulse_frequency">{{ this.record.pulse_frequency }}</span>
94
+          <span class="unit" v-if="this.record.pulse_frequency">次/分</span>
94 95
         </li>
95 96
         <li v-if="isShow('呼吸频率')">
96 97
           <label>呼吸频率 : </label>
97
-          <span class="content" v-if="breathing_rate !='0'">{{ breathing_rate }}</span>
98
-          <span class="unit" v-if="breathing_rate !='0'">次/min</span>
98
+          <span class="content" v-if="this.record.breathing_rate">{{ this.record.breathing_rate }}</span>
99
+          <span class="unit" v-if="this.record.breathing_rate">次/min</span>
99 100
         </li>
100 101
 
101 102
         <li v-if="isShow('实际治疗时长')">
102 103
           <label>实际治疗时长 : </label>
103
-          <span class="content" v-if="actual_treatment_hour!='0'">{{ actual_treatment_hour }}时</span>
104
-          <span class="content" v-if="actual_treatment_minute!='0'">{{ actual_treatment_minute }}分</span>
104
+          <span class="content" v-if="this.record.actual_treatment_hour">{{ this.record.actual_treatment_hour }}时</span>
105
+          <span class="content" v-if="this.record.actual_treatment_minute">{{ this.record.actual_treatment_minute }}分</span>
105 106
         </li>
106 107
         <li v-if="isShow('透析中入量')">
107 108
           <label>透析中入量: </label>
@@ -121,28 +122,25 @@
121 122
         </li>
122 123
         <li v-if="isShow('其他观察内容')&&patient_gose==3">
123 124
           <label>其他观察内容 : </label>
124
-          <span class="content">{{ observation_content_other }}</span>
125
-        </li>
126
-        <li v-if="isShow('拔针后穿刺点渗血')">
127
-          <label for="bzh">拔针后穿刺点渗血: </label>
128
-          <span id="bzh" class="content">{{puncture_point_oozing_blood_name}}</span>
125
+          <span class="content">{{observation_content_other }}</span>
129 126
         </li>
127
+
130 128
       </ul>
131 129
       <ul>
132 130
         <li v-if="isShow('透析过程')">
133 131
           <label for="tw">透析过程 : </label>
134 132
           <span class="content" id="tw" v-if="this.record.dialysis_process == 1">完成</span>
135
-          <span class="content" id="tw" v-if="this.record.dialysis_process == 2">提前{{in_advance_minute}}min</span>
133
+          <span class="content" id="tw" v-if="this.record.dialysis_process == 2">提前{{this.record.in_advance_minute}}min</span>
136 134
         </li>
137 135
         <li v-if="this.record.dialysis_process == 2&&isShow('透析过程提前原因')">
138 136
           <label for="tw">透析过程提前原因 : </label>
139
-          <span class="content" id="tw">{{in_advance_reason}}</span>
137
+          <span class="content" id="tw">{{this.record.in_advance_reason}}</span>
140 138
         </li>
141 139
 
142 140
 
143 141
         <li v-if="isShow('内瘘管拔针后压迫止血时间')">
144 142
           <label for="ml">内瘘管拔针后压迫止血时间 : </label>
145
-          <span id="ml" class="content" v-if="hemostasis_minute">{{hemostasis_minute}}min</span>
143
+          <span id="ml" class="content" v-if="this.record.hemostasis_minute">{{this.record.hemostasis_minute}}min</span>
146 144
           <span id="ml" class="content" v-else>-min</span>
147 145
         </li>
148 146
         <li v-if="isShow('内瘘管拔针后压迫止血操作')">
@@ -180,7 +178,7 @@
180 178
       </ul>
181 179
 
182 180
     </div>
183
-    <div class="note">备注 : <span>{{ remark }}</span></div>
181
+    <div class="note">备注 : <span>{{ this.record.remark }}</span></div>
184 182
     <div class="middleLine"></div>
185 183
   </div>
186 184
 </template>
@@ -192,15 +190,7 @@
192 190
     name: 'DialysisPrescription',
193 191
     data() {
194 192
       return {
195
-        title: '透后评估 ',
196
-        complication: '',
197
-        internal_fistula_tremor_ac_name:'',
198
-        temperature: '',
199
-        breathing_rate:'',
200
-        actual_treatment_hour:'',
201
-        actual_treatment_minute: '',
202
-        hemostasis_minute:'',
203
-        remark:''
193
+        title: '透后评估 '
204 194
       }
205 195
     },
206 196
     props: {
@@ -349,6 +339,7 @@
349 339
           return '-'
350 340
         }
351 341
         const vascular_access = this.$store.getters.vascular_access_desc
342
+        console.log(vascular_access)
352 343
         let name = '-'
353 344
         for (var index in vascular_access) {
354 345
           if (vascular_access[index].id == this.record.blood_access_part_opera_id) {
@@ -368,6 +359,17 @@
368 359
         if (this.record.id == 0) {
369 360
           return
370 361
         }
362
+        switch (this.record.puncture_point_haematoma) {
363
+          case 1:
364
+            return '有'
365
+            break
366
+          case 2:
367
+            return '无'
368
+            break
369
+          default:
370
+            return '-'
371
+            break
372
+        }
371 373
       }
372 374
     }, breathing_rate: function() {
373 375
       if (this.record.id == 0) {
@@ -415,42 +417,10 @@
415 417
     complication: function() {
416 418
       if (this.record.id == 0) {
417 419
         return '-'
418
-      } 
419
-      if(this.record.complication){
420
-        return this.record.complication
421
-      } else{
422
-        return '-'
423
-      }
424
-    },
425
-    internal_fistula_tremor_ac_name: function() {
426
-      if (this.record.id == 0) {
427
-        return '-'
428
-      }
429
-      switch (this.record.internal_fistula_tremor_ac) {
430
-        case 1:
431
-          return '存在'
432
-          break
433
-        case 2:
434
-          return '减弱'
435
-          break
436
-        case 3:
437
-          return '无'
438
-          break
439
-        default:
440
-          return '-'
441
-      }
442
-      switch (this.record.puncture_point_haematoma) {
443
-        case 1:
444
-          return '有'
445
-          break
446
-        case 2:
447
-          return '无'
448
-          break
449
-        default:
450
-          return '-'
451
-          break
452 420
       }
421
+      return this.record.complication
453 422
     },
423
+
454 424
     temperature: function() {
455 425
       if (this.record.id == 0) {
456 426
         return '-'
@@ -493,31 +463,13 @@
493 463
       }
494 464
       return this.record.observation_content
495 465
     },
496
-    // complication: function() {
497
-    //   if (this.record.id == 0) {
498
-    //     return '-'
499
-    //   }
500
-    //   return this.record.complication
501
-    // },
502
-    // internal_fistula_tremor_ac_name: function() {
503
-    //   if (this.record.id == 0) {
504
-    //     return '-'
505
-    //   }
506
-    //   switch (this.record.internal_fistula_tremor_ac) {
507
-    //     case 1:
508
-    //       return '存在'
509
-    //       break
510
-    //     case 2:
511
-    //       return '减弱'
512
-    //       break
513
-    //     case 3:
514
-    //       return '无'
515
-    //       break
516
-    //     default:
517
-    //       return '-'
518
-    //       break
519
-    //   }
520
-    // },
466
+    complication: function() {
467
+      if (this.record.id == 0) {
468
+        return '-'
469
+      }
470
+      return this.record.complication
471
+    },
472
+
521 473
 
522 474
     remark: function() {
523 475
       if (this.record.id == 0) {
@@ -551,6 +503,25 @@
551 503
       return this.record.in_advance_reason_other
552 504
     },
553 505
     methods: {
506
+      getInternal: function() {
507
+        if (this.record.id == 0) {
508
+          return '-'
509
+        }
510
+        switch (this.record.internal_fistula_tremor_ac) {
511
+          case 1:
512
+            return '存在'
513
+            break
514
+          case 2:
515
+            return '减弱'
516
+            break
517
+          case 3:
518
+            return '无'
519
+            break
520
+          default:
521
+            return '-'
522
+        }
523
+
524
+      },
554 525
       getOpera: function(id) {
555 526
         var hemostasis_opera = this.$store.getters.hemostasis_opera
556 527
         var hemostasisOperaName = ''

+ 18 - 9
src/xt_pages/dialysis/details/dialog/AssessmentAfterDislysis.vue Näytä tiedosto

@@ -52,7 +52,10 @@
52 52
 
53 53
         <el-row :gutter="20"> -->
54 54
           <el-col :span="8" v-if="isShow('实际超滤量')">
55
-            <el-form-item label="实际超滤量(L): " >
55
+            <el-form-item label="实际超滤量(L): " v-if="this.template_id != 6" >
56
+              <el-input v-model="form.actual_ultrafiltration"></el-input>
57
+            </el-form-item>
58
+            <el-form-item label="实际超滤量(ml): " v-if="this.template_id == 6" >
56 59
               <el-input v-model="form.actual_ultrafiltration"></el-input>
57 60
             </el-form-item>
58 61
           </el-col>
@@ -61,14 +64,15 @@
61 64
               <el-input v-model="form.actual_displacement"></el-input>
62 65
             </el-form-item>
63 66
           </el-col>
67
+
68
+
69
+
70
+
64 71
           <el-col :span="8"  v-if="isShow('实际治疗时长')">
65 72
             <el-form-item label="实际治疗时长(时):">
66 73
               <!-- <el-input v-model="form.actual_treatment_hour"></el-input> -->
67 74
               <el-time-picker
68 75
                 v-model="actualTreatmentHourShow"
69
-                :picker-options="{
70
-                                        selectableRange: '00:01:00 - 23:59:00'
71
-                                    }"
72 76
                 placeholder="透析时长"
73 77
                 style="width:100%;"
74 78
                 value-format="H:m"
@@ -423,8 +427,7 @@ export default {
423 427
         loading: false,
424 428
         record_date: '',
425 429
         isVisibility: false,
426
-
427
-        actualTreatmentHourShow: new Date(2018, 1, 1, 3, 0),
430
+        template_id:0,
428 431
         cruorOptions: [],
429 432
         symptomsOptions: [],
430 433
         internalFistulaOptions: [],
@@ -433,6 +436,7 @@ export default {
433 436
           {id: 1, name: 'g'},
434 437
           {id: 2, name: 'ml'},
435 438
         ],
439
+        actualTreatmentHourShow:'',
436 440
         vascularAccessDescOptions: [],
437 441
         catheterOptions: [],
438 442
         complicationOptions: [],
@@ -758,6 +762,7 @@ export default {
758 762
 
759 763
       show() {
760 764
         this.isVisibility = true
765
+
761 766
       },
762 767
 
763 768
       hide() {
@@ -771,7 +776,12 @@ export default {
771 776
           }
772 777
         }
773 778
         return false
774
-      }
779
+      },  setRecords (records) {
780
+        for (var index in records) {
781
+          this.$set(this.assessment_after_dislysis, index, records[index])
782
+        }
783
+        this.actualTreatmentHourShow = new Date(2018, 1, 1, this.assessment_after_dislysis['actual_treatment_hour'], this.assessment_after_dislysis['actual_treatment_minute'])
784
+      },
775 785
     },
776 786
     created() {
777 787
       console.log('this.form', this.form)
@@ -785,8 +795,7 @@ export default {
785 795
       this.internalFistulaTremorAcOptions = this.$store.getters.internal_fistula_tremor_ac
786 796
       this.patientGoseOptions = this.$store.getters.patient_gose
787 797
       this.observationContentOptions = this.$store.getters.observation_content
788
-
789
-      console.log(this.patient)
798
+      this.template_id = this.$store.getters.xt_user.template_info.template_id;
790 799
 
791 800
       var date = this.$route.query && this.$route.query.date
792 801
       this.record_date = uParseTime(date, '{y}-{m}-{d}')

+ 174 - 0
src/xt_pages/dialysis/details/dialog/MsgTip.vue Näytä tiedosto

@@ -0,0 +1,174 @@
1
+<template>
2
+  <el-dialog
3
+    :visible.sync="visibility"
4
+    width="500px"
5
+    :modal-append-to-body="false"
6
+    :append-to-body="true"
7
+  >
8
+    <div >
9
+      <div class="DialogTit">
10
+        <div class="back" @click="cancle()">
11
+          <span class="iconfont">&#xe720; </span>返回
12
+        </div>
13
+        <h1 class="name">
14
+          {{ patient_prop.name }} [透析号 {{ patient_prop.dialysis_no }} ]
15
+        </h1>
16
+        <span @click="comfirm" class="success" style="visibility: hidden;"
17
+        >确定</span>
18
+      </div>
19
+
20
+      <div class="DialogContent">
21
+        <div class="item">
22
+          <label class="name" for="txms">本次透析日期</label>
23
+          <div class="content">
24
+            <span class="text" id="txms"> {{ dialysis_date }}</span>
25
+          </div>
26
+        </div>
27
+        <div class="item">
28
+          <label class="name" for="txms">透前体重(kg)</label>
29
+          <div class="content">
30
+            <span class="text" id="txms">{{ predialysis.weight_before }}</span>
31
+          </div>
32
+        </div>
33
+        <div class="item">
34
+          <label class="name" for="txms">干体重(kg)</label>
35
+          <div class="content">
36
+            <span class="text" id="txms">{{ last_predialysis.dry_weight }}</span>
37
+          </div>
38
+        </div>
39
+        <div class="item">
40
+          <label class="name" for="txms">衣物重(kg)</label>
41
+          <div class="content">
42
+          <span class="text" id="txms">{{
43
+            predialysis.additional_weight
44
+          }}</span>
45
+          </div>
46
+        </div>
47
+        <div class="item">
48
+          <label class="name" for="txms">体重增加(kg)</label>
49
+          <div class="content">
50
+            <span class="text" id="txms">{{ add_weight }}</span>
51
+          </div>
52
+        </div>
53
+        <div class="item">
54
+          <label class="name" for="txms">透后体重(kg)</label>
55
+          <div class="content">
56
+            <span class="text" id="txms">{{ record.weight_after }}</span>
57
+          </div>
58
+        </div>
59
+        <div class="item">
60
+          <label class="name" for="txms">体重减少(kg)</label>
61
+          <div class="content">
62
+            <span class="text" id="txms">{{ record.weight_loss }}</span>
63
+          </div>
64
+        </div>
65
+        <div class="item">
66
+          <label class="name" for="txms">上次透后体重(kg)</label>
67
+          <div class="content">
68
+          <span class="text" id="txms">{{
69
+            last_record.weight_after
70
+          }}</span>
71
+          </div>
72
+        </div>
73
+      </div>
74
+    </div>
75
+  </el-dialog>
76
+</template>
77
+
78
+
79
+<script>
80
+  import { parseTime } from '@/utils'
81
+
82
+  export default {
83
+    name: 'MsgTip',
84
+    created() {
85
+      if (
86
+        this.predialysis.weight_before > 0 &&
87
+        this.last_record.weight_after > 0
88
+      ) {
89
+        this.add_weight = parseFloat(
90
+          this.predialysis.weight_before - this.last_record.weight_after
91
+        ).toFixed(2)
92
+      }
93
+    },
94
+    data() {
95
+      return {
96
+        result: [],
97
+        id: 0,
98
+        selectName: '',
99
+        add_weight: 0
100
+      }
101
+    },
102
+    props: {
103
+      predialysis: {
104
+        type: Object
105
+      },
106
+      visibility: {
107
+        type: Boolean,
108
+        default: false
109
+      },
110
+      last_predialysis: {
111
+        type: Object
112
+      },
113
+      record: {
114
+        type: Object
115
+      },
116
+      last_record: {
117
+        type: Object
118
+      },
119
+      patient_prop: {
120
+        type: Object
121
+      },
122
+      prescription_prop: {
123
+        type: Object
124
+      }
125
+    },
126
+    computed: {
127
+      dialysis_date: function() {
128
+        return parseTime(this.$route.query.date, '{y}/{m}/{d}')
129
+      }
130
+    },
131
+    methods: {
132
+      cancle: function() {
133
+        this.$emit('menu-msg-tip')
134
+      },
135
+      comfirm: function() {
136
+        this.$emit('menu-msg-tip')
137
+      },
138
+      getValue: function() {
139
+        let form = {}
140
+
141
+        let results = []
142
+
143
+        for (let i = 0; i < this.propsForm.list.length; i++) {
144
+          for (let a = 0; a < this.propsForm.result.length; a++) {
145
+            if (this.propsForm.list[i].id == this.propsForm.result[a]) {
146
+              results.push(this.propsForm.list[i])
147
+            }
148
+          }
149
+        }
150
+
151
+        var obj5 = {}
152
+        results = results.reduce((cur, next) => {
153
+          obj5[next.id] ? '' : (obj5[next.id] = true && cur.push(next))
154
+          return cur
155
+        }, [])
156
+
157
+        results
158
+
159
+        return results
160
+      }
161
+    },
162
+    watch: {
163
+      visibility(val) {
164
+        //初始化数据操作
165
+      }
166
+    }
167
+  }
168
+</script>
169
+
170
+<style  scoped>
171
+
172
+
173
+
174
+</style>

File diff suppressed because it is too large
+ 548 - 422
src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue


+ 195 - 29
src/xt_pages/dialysis/details/dialog/computer_dialog.vue Näytä tiedosto

@@ -2,28 +2,34 @@
2 2
   <div>
3 3
     <el-dialog title="透析上机" :visible.sync="visible" width="854px" :modal-append-to-body="false">
4 4
       <el-form :model="form" label-width="100px">
5
+
6
+        <el-form-item label="班次">
7
+          <el-select v-model="schedual_type" placeholder="请选择班次" @change="changeSchedualType">
8
+            <el-option v-for="(item, index) in schedules_type" :key="index" :value="item.id" :label="item.name" ></el-option>
9
+          </el-select>
10
+        </el-form-item>
11
+
5 12
         <el-form-item label="上机床位">
6
-          <el-select v-model="form.bed_id" placeholder="" :disabled="dialysis_order.id != 0">
13
+          <el-select v-model="form.bed_id" placeholder="请选择上机床位" >
7 14
             <el-option v-for="(bed, index) in zone_beds" :key="index" :value="bed.id" :label="bed.number"></el-option>
8 15
           </el-select>
9 16
         </el-form-item>
10 17
         <el-form-item label="上机护士">
11
-          <el-select v-model="form.nurse_id" placeholder="" :disabled="dialysis_order.id != 0">
18
+          <el-select v-model="form.nurse_id" placeholder="请选择上机护士" >
12 19
             <el-option v-for="(admin, index) in admins" :key="index" :value="admin.id" :label="admin.name"></el-option>
13 20
           </el-select>
14 21
         </el-form-item>
15 22
         <el-form-item label="穿刺护士">
16
-          <el-select v-model="form.puncture_nurse_id" placeholder="" :disabled="dialysis_order.id != 0">
23
+          <el-select v-model="form.puncture_nurse_id" placeholder="请选择穿刺护士" >
17 24
             <el-option v-for="(admin, index) in admins" :key="index" :value="admin.id" :label="admin.name"></el-option>
18 25
           </el-select>
19 26
         </el-form-item>
20 27
         <el-form-item label="引血(ml/min)" v-if="template_id == 6" >
21
-          <el-input type="number" v-model="form.lood_drawing" style="width:200px;"></el-input>
28
+          <el-input type="number" v-model="form.blood_drawing" style="width:200px;"></el-input>
22 29
         </el-form-item>
23
-    
30
+
24 31
         <el-form-item label="上机时间 :" style="width:300px">
25 32
           <el-date-picker
26
-            :disabled="dialysis_order.id != 0"
27 33
             type="datetime"
28 34
             format="yyyy-MM-dd HH:mm"
29 35
             value-format="yyyy-MM-dd HH:mm"
@@ -35,6 +41,8 @@
35 41
         <el-form-item>
36 42
           <el-button v-if="dialysis_order.id == 0" @click="submit" type="primary" :loading="loading">执行上机</el-button>
37 43
           <el-button v-else type="info" :disabled="true">已上机</el-button>
44
+          <el-button v-if="dialysis_order.id > 0 && (isPremission || this.$store.getters.xt_user.user.id == this.creator)" type="primary" @click="editOrder">修改上机</el-button>
45
+
38 46
         </el-form-item>
39 47
       </el-form>
40 48
     </el-dialog>
@@ -43,26 +51,35 @@
43 51
 </template>
44 52
 
45 53
 <script>
46
-  import { startDialysis } from '@/api/dialysis_record'
54
+  import { startDialysis,GetSchedualNumber,PostModifyStartDialysis } from '@/api/dialysis_record'
47 55
   import { parseTime } from '@/utils'
48 56
 
49 57
   export default {
50 58
     name: 'ComputerDialog',
51 59
     data() {
52 60
       return {
61
+        zone_beds:[],
53 62
         visible: false,
54 63
         loading: false,
55 64
         template_id: 0,
56 65
         patient_id: 0,
57 66
         schedule_date: 0,
58 67
         start_time: 0,
68
+        creator:0,
59 69
         form: {
60 70
           bed_id: '',
61 71
           nurse_id: '',
62 72
           start_time: '',
63 73
           puncture_nurse_id: '',
64
-          lood_drawing: 100
65
-        }
74
+          blood_drawing: 100
75
+        },
76
+        schedual_type:0,
77
+        schedules_type: [
78
+          {id: 1, name:"上午"},
79
+          {id: 2, name:"下午"},
80
+          {id: 3, name:"晚上"},
81
+        ], // 该排班的区里的床位
82
+        isPremission:false,
66 83
       }
67 84
     },
68 85
     props: {
@@ -77,29 +94,41 @@
77 94
       },
78 95
       device_numbers: {
79 96
         type: Array
80
-      }
97
+      },
98
+      special_premission: {
99
+        type: Array,
100
+      },
101
+    },mounted(){
102
+
103
+
104
+
105
+
81 106
     },
82 107
     created() {
108
+
83 109
       this.template_id = this.$store.getters.xt_user.template_info.template_id
84 110
       this.patient_id = this.$route.query.patient_id
85 111
       this.schedule_date = this.$route.query.date
86
-
87
-      this.form.bed_id = this.dialysis_order.id == 0 ? this.schedule.bed_id : this.dialysis_order.bed_id
88 112
       this.form.nurse_id = this.dialysis_order.id == 0 ? this.$store.getters.xt_user.user.id : this.dialysis_order.start_nurse
89 113
       this.form.puncture_nurse_id = this.dialysis_order.id == 0 ? this.$store.getters.xt_user.user.id : this.dialysis_order.puncture_nurse
90
-      this.form.lood_drawing = 0
91
-
92 114
       if (this.form.puncture_nurse_id == 0) {
93 115
         this.form.puncture_nurse_id = this.$store.getters.xt_user.user.id
94 116
       }
117
+
118
+
119
+
120
+
121
+
122
+
123
+
95 124
     },
96 125
     watch: {
97 126
       'schedule.id': function() {
98
-        this.form.bed_id = this.dialysis_order.id == 0 ? this.schedule.bed_id : this.dialysis_order.bed_id
99 127
       },
100 128
       'dialysis_order.id': function() {
101
-        console.log(this.dialysis_order)
102
-        this.form.bed_id = this.dialysis_order.id == 0 ? this.schedule.bed_id : this.dialysis_order.bed_id
129
+
130
+
131
+
103 132
         this.form.nurse_id = this.dialysis_order.id == 0 ? this.$store.getters.xt_user.user.id : this.dialysis_order.start_nurse
104 133
         this.form.puncture_nurse_id = this.dialysis_order.id == 0 ? this.$store.getters.xt_user.user.id : this.dialysis_order.puncture_nurse
105 134
 
@@ -117,21 +146,90 @@
117 146
           '-' +
118 147
           (nowDay < 10 ? '0' + nowDay : nowDay) + ' ' + (nowHours < 10 ? '0' + nowHours : nowHours) + ':' + (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes)
119 148
         this.form.start_time = this.dialysis_order.id == 0 ? time : this.getTime(this.dialysis_order.start_time, '{y}-{m}-{d} {h}:{i}')
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
120 157
       }
121 158
     },
122 159
     computed: {
123
-      zone_beds: function() {
124
-        var beds = []
125
-        for (let index = 0; index < this.device_numbers.length; index++) {
126
-          const device_number = this.device_numbers[index]
127
-          if (device_number.zone_id == this.schedule.partition_id) {
128
-            beds.push(device_number)
129
-          }
130
-        }
131
-        return beds
132
-      }
160
+      // zone_beds: function() {
161
+      //   var beds = []
162
+      //   for (let index = 0; index < this.device_numbers.length; index++) {
163
+      //     const device_number = this.device_numbers[index]
164
+      //     beds.push(device_number)
165
+      //   }
166
+      //   console.log(this.device_numbers)
167
+      //   return beds
168
+      // }
133 169
     },
134 170
     methods: {
171
+      changeSchedualType:function(schedual_type){
172
+        let ParamsQuery = {}
173
+        ParamsQuery['schedual_type'] = schedual_type
174
+        GetSchedualNumber(ParamsQuery).then(response => {
175
+          if (response.data.state == 0) {
176
+            return false
177
+          } else {
178
+            this.temp_device_numbers = response.data.data.number
179
+            for (let index = 0; index < this.temp_device_numbers.length; index++) {
180
+              const device_number = this.temp_device_numbers[index]
181
+              this.temp_device_numbers[index]['number'] = device_number['zone_name']+'-'+device_number['number']
182
+            }
183
+            this.zone_beds = this.temp_device_numbers
184
+            this.form.bed_id = this.zone_beds[0].id
185
+
186
+          }
187
+        })
188
+
189
+      },
190
+      GetSchedualNumber:function(){
191
+        let ParamsQuery = {}
192
+        ParamsQuery['schedual_type'] = this.schedual_type
193
+        GetSchedualNumber(ParamsQuery).then(response => {
194
+          if (response.data.state == 0) {
195
+            this.$message.error(response.data.msg)
196
+            return false
197
+          } else {
198
+            this.temp_device_numbers = response.data.data.number
199
+            for (let index = 0; index < this.temp_device_numbers.length; index++) {
200
+              const device_number = this.temp_device_numbers[index]
201
+              this.temp_device_numbers[index]['number'] = device_number['zone_name']+'-'+device_number['number']
202
+            }
203
+            this.zone_beds = this.temp_device_numbers
204
+
205
+            this.form.bed_id = this.dialysis_order.id == 0 ? this.schedule.bed_id : this.dialysis_order.bed_id
206
+            if(this.dialysis_order.id == 0) {
207
+              let isFilter = true
208
+              for (let i = 0; i < this.zone_beds.length; i++) {
209
+                if(this.zone_beds[i].id == this.schedule.bed_id ){
210
+                  isFilter = false
211
+
212
+                }
213
+              }
214
+              if(isFilter){
215
+                this.form.bed_id = this.zone_beds[0].id
216
+              }
217
+            }else{
218
+              for (let i = 0; i < this.device_numbers.length; i++){
219
+                if (this.device_numbers[i].id == this.dialysis_order.bed_id){
220
+                  let obj = {}
221
+                  obj = this.device_numbers[i]
222
+                  if(obj['number'].indexOf(this.device_numbers[i]['zone_name']) == -1) {
223
+                    obj['number'] = this.device_numbers[i]['zone_name'] + "-" + this.device_numbers[i]['number']
224
+                  }
225
+                  this.zone_beds.unshift(obj)
226
+                  this.zone_beds.sort((a, b) => a.id -b.id)
227
+                }
228
+              }
229
+            }
230
+          }
231
+        })
232
+      },
135 233
       getTime(value, temp) {
136 234
         if (value != undefined) {
137 235
           return parseTime(value, temp)
@@ -159,13 +257,51 @@
159 257
             '-' +
160 258
             (nowDay < 10 ? '0' + nowDay : nowDay) + ' ' + (nowHours < 10 ? '0' + nowHours : nowHours) + ':' + (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes)
161 259
         }
260
+
261
+        if (this.dialysis_order.id == 0) {
262
+          let now = new Date()
263
+          let hour = now.getHours()
264
+          if (hour >= 6 && hour < 12){
265
+            this.schedual_type = 1
266
+
267
+          }else if(hour >= 12 && hour < 18){
268
+
269
+            this.schedual_type = 2
270
+
271
+
272
+          }else if(hour >= 18){
273
+            this.schedual_type = 3
274
+          }
275
+        } else {
276
+
277
+          this.schedual_type = this.dialysis_order.schedual_type
278
+        }
279
+
280
+
281
+        if (this.dialysis_order.id > 0) {
282
+          for (let i = 0; i < this.special_premission.length; i++) {
283
+            if (this.$store.getters.xt_user.user.id == this.special_premission[i].admin_user_id) {
284
+              this.isPremission = true
285
+            }
286
+          }
287
+        }
288
+
289
+        if (this.dialysis_order.id > 0) {
290
+          if (this.dialysis_order.creator == 0) {
291
+            this.creator = this.dialysis_order.start_nurse
292
+          } else {
293
+            this.creator = this.dialysis_order.creator
294
+          }
295
+        }
296
+
297
+        this.GetSchedualNumber()
162 298
       },
163 299
       hide: function() {
164 300
         this.visible = false
165 301
       },
166 302
       submit: function() {
167 303
         this.loading = true
168
-        startDialysis(this.patient_id, parseTime(this.schedule_date, '{y}-{m}-{d}'), this.form.nurse_id, this.form.bed_id, this.form.lood_drawing, this.form.puncture_nurse_id, this.form.start_time).then(rs => {
304
+        startDialysis(this.patient_id, parseTime(this.schedule_date, '{y}-{m}-{d}'), this.form.nurse_id, this.form.bed_id, this.form.lood_drawing, this.form.puncture_nurse_id, this.form.start_time,this.schedual_type).then(rs => {
169 305
           this.loading = false
170 306
           var resp = rs.data
171 307
           if (resp.state == 1) {
@@ -174,11 +310,41 @@
174 310
             for (const key in resp_dialysis_order) {
175 311
               this.$set(this_order, key, resp_dialysis_order[key])
176 312
             }
313
+            this.hide()
314
+            this.$emit('monitor',  resp.data.monitor)
315
+            this.$message.success("上机成功")
316
+
177 317
           } else {
178 318
             this.$message.error(resp.msg)
179 319
           }
180 320
         })
181
-      }
321
+      }, editOrder(){
322
+        let ParamsQuery = {}
323
+        ParamsQuery['schedual_type'] = this.schedual_type
324
+        ParamsQuery['id'] = this.dialysis_order.id
325
+        ParamsQuery['nurse'] = this.form.nurse_id
326
+        ParamsQuery['bed'] = this.form.bed_id
327
+        ParamsQuery['start_time'] =  this.form.start_time
328
+        ParamsQuery['puncture_nurse'] = this.form.puncture_nurse_id
329
+        PostModifyStartDialysis(ParamsQuery).then(rs => {
330
+          var resp = rs.data
331
+          if (resp.state == 1) {
332
+            this.$message.success("修改成功")
333
+
334
+            var resp_dialysis_order = resp.data.dialysis_order
335
+            var this_order = this.dialysis_order
336
+            for (const key in resp_dialysis_order) {
337
+              this.$set(this_order, key, resp_dialysis_order[key])
338
+              this.$emit('assessmentAfterDislysis', resp.data.after)
339
+
340
+            }
341
+
342
+          } else {
343
+            this.$message.error(resp.msg)
344
+          }
345
+        })
346
+      },
347
+
182 348
     }
183 349
   }
184 350
 </script>

+ 364 - 71
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue Näytä tiedosto

@@ -7,16 +7,17 @@
7 7
       :modal-append-to-body="false"
8 8
       :append-to-body="true"
9 9
     >
10
-      <el-button @click="handlePatientInfo">{{patient.name}}</el-button>
10
+      <el-button style="position: absolute;left: 12%;top: 2%" @click="handlePatientInfo">{{patient.name}}</el-button>
11 11
 
12 12
       <el-form ref="dialysisPrescription" :model="dialysisPrescription" label-width="148px">
13 13
         <el-row :gutter="24">
14 14
           <el-col :span="8" v-if="isShows('透析模式')">
15 15
             <el-form-item label="透析模式">
16
-              <el-select v-model="dialysisPrescription.mode_id" @change="changePrescription(dialysisPrescription.mode_id)" >
16
+              <el-select v-model="dialysisPrescription.mode_id"
17
+                         @change="changePrescription(dialysisPrescription.mode_id)">
17 18
                 <el-option :key="0" label="请选择" :value="0"></el-option>
18
-                <el-option v-for="item in treatment_mode" :label="item.name" :value="item.id"
19
-                           :key="item.id"></el-option>
19
+                <el-option v-for="(item,index) in treatment_mode" :label="item.name" :value="item.id"
20
+                           :key="index+1"></el-option>
20 21
               </el-select>
21 22
             </el-form-item>
22 23
           </el-col>
@@ -52,7 +53,7 @@
52 53
               <!-- <el-input type="number" v-model="dialysisPrescription.dialysate_formulation"></el-input> -->
53 54
               <el-select v-model="dialysisPrescription.dialysate_formulation" placeholder="请选择">
54 55
                 <el-option :key="0" label="请选择" :value="0"></el-option>
55
-                <el-option v-for="(option, index) in dialysate_formulation_options" :key="index" :label="option.name"
56
+                <el-option v-for="(option, index) in dialysate_formulation_options" :key="index+1" :label="option.name"
56 57
                            :value="option.id"></el-option>
57 58
               </el-select>
58 59
             </el-form-item>
@@ -69,11 +70,6 @@
69 70
           </el-col>
70 71
 
71 72
 
72
-          <el-col :span="8" v-if="isShows('置换量')" v-show="zhiShow">
73
-            <el-form-item label="置换量(L):">
74
-              <el-input type="number" v-model="dialysisPrescription.replacement_total"></el-input>
75
-            </el-form-item>
76
-          </el-col>
77 73
 
78 74
           <el-col :span="8" v-if="isShows('抗凝剂')">
79 75
             <el-form-item label="抗凝剂:">
@@ -81,7 +77,7 @@
81 77
                          @change="changeThisAnticoagulant">
82 78
                 <el-option :key="0" label="请选择" :value="0"></el-option>
83 79
 
84
-                <el-option v-for="item in anticoagulantsConfit" :label="item.name" :key="item.id"
80
+                <el-option v-for="(item,index) in anticoagulantsConfit" :label="item.name" :key="index + 1"
85 81
                            :value="item.id"></el-option>
86 82
               </el-select>
87 83
             </el-form-item>
@@ -90,22 +86,26 @@
90 86
 
91 87
           <el-col :span="8" v-if="anticoagulant.shouji != -1&&isShows('首剂')">
92 88
             <el-form-item :label="'首剂('+anticoagulant.shouji_unit+') : '">
93
-              <el-input type="number" v-model="dialysisPrescription.anticoagulant_shouji"></el-input>
94
-            </el-form-item>
95
-
89
+              <el-input type="number"  v-if="dialysisPrescription.anticoagulant != 1"  v-model="dialysisPrescription.anticoagulant_shouji"></el-input>
90
+              <el-input type="number" disabled   v-if="dialysisPrescription.anticoagulant == 1" v-model="dialysisPrescription.no_anticoagulant_shouji"></el-input>
96 91
 
92
+            </el-form-item>
97 93
           </el-col>
98 94
 
95
+
99 96
           <el-col :span="8" v-if="anticoagulant.weichi != -1&&isShows('维持')">
100 97
             <el-form-item :label="'维持('+anticoagulant.weichi_unit+') : '" v-if="anticoagulant.weichi != -1">
101
-              <el-input type="number" v-model="dialysisPrescription.anticoagulant_weichi"></el-input>
98
+              <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1"  v-model="dialysisPrescription.anticoagulant_weichi"></el-input>
99
+              <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1"  v-model="dialysisPrescription.no_anticoagulant_weichi"></el-input>
100
+
102 101
             </el-form-item>
103 102
           </el-col>
104 103
 
105
-
106 104
           <el-col :span="8" v-if="anticoagulant.zongliang != -1&&isShows('总量')">
107 105
             <el-form-item :label="'总量('+anticoagulant.zongliang_unit+') : '">
108
-              <el-input type="number" v-model="dialysisPrescription.anticoagulant_zongliang"></el-input>
106
+              <el-input type="number" v-if="dialysisPrescription.anticoagulant != 1" v-model="dialysisPrescription.anticoagulant_zongliang"></el-input>
107
+              <el-input type="number" disabled v-if="dialysisPrescription.anticoagulant == 1" v-model="dialysisPrescription.no_anticoagulant_zongliang"></el-input>
108
+
109 109
             </el-form-item>
110 110
           </el-col>
111 111
 
@@ -117,17 +117,18 @@
117 117
             </el-form-item>
118 118
           </el-col>
119 119
           <el-col :span="8" v-if="anticoagulant.gaijiliang != -1&&isShows('钙剂量')">
120
-            <el-form-item label="钙剂量(ml/h) : ">
120
+            <el-form-item label="钙剂量(ml) : ">
121 121
               <el-input type="number" v-model="dialysisPrescription.anticoagulant_gaijiliang"
122 122
                         :disabled="anticoagulant.gaijiliang==1?false:true" placeholder="钙剂量"></el-input>
123 123
             </el-form-item>
124 124
           </el-col>
125 125
 
126
+          <el-col :span="8" v-if="isShows('置换量')" v-show="zhiShow">
127
+            <el-form-item label="置换量(L):">
128
+              <el-input type="number" v-model="dialysisPrescription.replacement_total"></el-input>
129
+            </el-form-item>
130
+          </el-col>
126 131
 
127
-          <!-- </el-row>
128
-
129
-
130
-          <el-row :gutter="20"> -->
131 132
 
132 133
           <el-col :span="8" v-if="isShows('钾')">
133 134
             <el-form-item label="钾(mmol/L): ">
@@ -149,9 +150,6 @@
149 150
           </el-col>
150 151
 
151 152
 
152
-          <!-- </el-row>
153
-
154
-          <el-row :gutter="20"> -->
155 153
 
156 154
           <el-col :span="8" v-if="isShows('透析器/灌流器')">
157 155
             <el-form-item label="透析器/灌流器:">
@@ -189,7 +187,7 @@
189 187
               >
190 188
                 <el-option :key="0" label="请选择" :value="0"></el-option>
191 189
 
192
-                <el-option v-for="item in body_fluid_option" :label="item.name" :key="item.id"
190
+                <el-option v-for="(item,index) in body_fluid_option" :label="item.name" :key="index+1"
193 191
                            :value="item.id"></el-option>
194 192
               </el-select>
195 193
             </el-form-item>
@@ -214,7 +212,7 @@
214 212
               >
215 213
                 <el-option :key="0" label="请选择" :value="0"></el-option>
216 214
 
217
-                <el-option v-for="item in special_medicine_option" :label="item.name" :key="item.id"
215
+                <el-option v-for="(item,index) in special_medicine_option" :label="item.name" :key="index+1"
218 216
                            :value="item.id"></el-option>
219 217
               </el-select>
220 218
             </el-form-item>
@@ -231,19 +229,21 @@
231 229
 
232 230
           <el-row :gutter="20" > -->
233 231
           <el-col :span="8">
234
-            <el-form-item label="置换液:" v-if="isShows('置换液')&&this.$store.getters.xt_user.template_info.template_id != 6" v-show="huShow">
232
+            <el-form-item label="置换液:" v-if="isShows('置换液')&&this.$store.getters.xt_user.template_info.template_id != 6"
233
+                          v-show="huShow">
235 234
               <el-select v-model="dialysisPrescription.displace_liqui_part" placeholder="请选择">
236 235
                 <el-option :key="0" label="请选择" :value="0"></el-option>
237
-                <el-option v-for="(option, index) in displace_liqui_part_option" :key="index"
236
+                <el-option v-for="(option, index) in displace_liqui_part_option" :key="index+1"
238 237
                            :label="option.name" :value="option.id"></el-option>
239 238
               </el-select>
240 239
             </el-form-item>
241 240
 
242 241
 
243
-            <el-form-item label="置换方式:" v-if="isShows('置换液')&&this.$store.getters.xt_user.template_info.template_id == 6">
242
+            <el-form-item label="置换方式:"
243
+                          v-if="isShows('置换液')&&this.$store.getters.xt_user.template_info.template_id == 6">
244 244
               <el-select v-model="dialysisPrescription.displace_liqui_part" placeholder="请选择">
245 245
                 <el-option :key="0" label="请选择" :value="0"></el-option>
246
-                <el-option v-for="(option, index) in displace_liqui_part_option" :key="index"
246
+                <el-option v-for="(option, index) in displace_liqui_part_option" :key="index+1"
247 247
                            :label="option.name" :value="option.id"></el-option>
248 248
               </el-select>
249 249
             </el-form-item>
@@ -262,7 +262,7 @@
262 262
               <el-select v-model="dialysisPrescription.blood_access" placeholder="请选择">
263 263
                 <el-option :key="0" label="请选择" :value="0"></el-option>
264 264
 
265
-                <el-option v-for="(option, index) in blood_access_option" :key="index"
265
+                <el-option v-for="(option, index) in blood_access_option" :key="index+1"
266 266
                            :label="option.name" :value="option.id"></el-option>
267 267
               </el-select>
268 268
             </el-form-item>
@@ -289,7 +289,7 @@
289 289
             <el-form-item label="血液透析干粉:">
290 290
               <el-select v-model="dialysisPrescription.niprocart" placeholder="请选择">
291 291
                 <el-option :key="0" label="请选择" :value="0"></el-option>
292
-                <el-option v-for="(option, index) in niprocart_info" :key="index"
292
+                <el-option v-for="(option, index) in niprocart_info" :key="index+1"
293 293
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
294 294
               </el-select>
295 295
             </el-form-item>
@@ -301,7 +301,7 @@
301 301
               <el-select v-model="dialysisPrescription.jms" placeholder="请选择">
302 302
                 <el-option :key="0" label="请选择" :value="0"></el-option>
303 303
 
304
-                <el-option v-for="(option, index) in jms_info" :key="index"
304
+                <el-option v-for="(option, index) in jms_info" :key="index+1"
305 305
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
306 306
               </el-select>
307 307
             </el-form-item>
@@ -313,7 +313,7 @@
313 313
               <el-select v-model="dialysisPrescription.fistula_needle_set" placeholder="请选择">
314 314
                 <el-option :key="0" label="请选择" :value="0"></el-option>
315 315
 
316
-                <el-option v-for="(option, index) in fistula_needle_set_info" :key="index"
316
+                <el-option v-for="(option, index) in fistula_needle_set_info" :key="index+1"
317 317
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
318 318
               </el-select>
319 319
             </el-form-item>
@@ -325,7 +325,7 @@
325 325
               <el-select v-model="dialysisPrescription.fistula_needle_set_16" placeholder="请选择">
326 326
                 <el-option :key="0" label="请选择" :value="0"></el-option>
327 327
 
328
-                <el-option v-for="(option, index) in fistula_needle_set_16_info" :key="index"
328
+                <el-option v-for="(option, index) in fistula_needle_set_16_info" :key="index+1"
329 329
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
330 330
               </el-select>
331 331
             </el-form-item>
@@ -337,7 +337,7 @@
337 337
               <el-select v-model="dialysisPrescription.hemoperfusion" placeholder="请选择">
338 338
                 <el-option :key="0" label="请选择" :value="0"></el-option>
339 339
 
340
-                <el-option v-for="(option, index) in hemoperfusion_info" :key="index"
340
+                <el-option v-for="(option, index) in hemoperfusion_info" :key="index+1"
341 341
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
342 342
               </el-select>
343 343
             </el-form-item>
@@ -349,7 +349,7 @@
349 349
               <el-select v-model="dialysisPrescription.dialyser_sterilised" placeholder="请选择">
350 350
                 <el-option :key="0" label="请选择" :value="0"></el-option>
351 351
 
352
-                <el-option v-for="(option, index) in dialyser_sterilised_info" :key="index"
352
+                <el-option v-for="(option, index) in dialyser_sterilised_info" :key="index+1"
353 353
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
354 354
               </el-select>
355 355
             </el-form-item>
@@ -361,7 +361,7 @@
361 361
               <el-select v-model="dialysisPrescription.filtryzer" placeholder="请选择">
362 362
                 <el-option :key="0" label="请选择" :value="0"></el-option>
363 363
 
364
-                <el-option v-for="(option, index) in filtryzer_info" :key="index"
364
+                <el-option v-for="(option, index) in filtryzer_info" :key="index+1"
365 365
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
366 366
               </el-select>
367 367
             </el-form-item>
@@ -373,7 +373,7 @@
373 373
               <el-select v-model="dialysisPrescription.dialyzers" placeholder="请选择">
374 374
                 <el-option :key="0" label="请选择" :value="0"></el-option>
375 375
 
376
-                <el-option v-for="(option, index) in dialyzers_info" :key="index"
376
+                <el-option v-for="(option, index) in dialyzers_info" :key="index+1"
377 377
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
378 378
               </el-select>
379 379
             </el-form-item>
@@ -385,7 +385,7 @@
385 385
               <el-select v-model="dialysisPrescription.injector" placeholder="请选择">
386 386
                 <el-option :key="0" label="请选择" :value="0"></el-option>
387 387
 
388
-                <el-option v-for="(option, index) in injector_info" :key="index"
388
+                <el-option v-for="(option, index) in injector_info" :key="index+1"
389 389
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
390 390
               </el-select>
391 391
             </el-form-item>
@@ -397,7 +397,7 @@
397 397
               <el-select v-model="dialysisPrescription.bloodlines" placeholder="请选择">
398 398
                 <el-option :key="0" label="请选择" :value="0"></el-option>
399 399
 
400
-                <el-option v-for="(option, index) in bloodlines_info" :key="index"
400
+                <el-option v-for="(option, index) in bloodlines_info" :key="index+1"
401 401
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
402 402
               </el-select>
403 403
             </el-form-item>
@@ -409,7 +409,7 @@
409 409
               <el-select v-model="dialysisPrescription.tubing_hemodialysis" placeholder="请选择">
410 410
                 <el-option :key="0" label="请选择" :value="0"></el-option>
411 411
 
412
-                <el-option v-for="(option, index) in tubingHemodialysis_info" :key="index"
412
+                <el-option v-for="(option, index) in tubingHemodialysis_info" :key="index+1"
413 413
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
414 414
               </el-select>
415 415
             </el-form-item>
@@ -421,7 +421,7 @@
421 421
               <el-select v-model="dialysisPrescription.package" placeholder="请选择">
422 422
                 <el-option :key="0" label="请选择" :value="0"></el-option>
423 423
 
424
-                <el-option v-for="(option, index) in safe_package_info" :key="index"
424
+                <el-option v-for="(option, index) in safe_package_info" :key="index+1"
425 425
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
426 426
               </el-select>
427 427
             </el-form-item>
@@ -433,7 +433,7 @@
433 433
               <el-select v-model="dialysisPrescription.a_liquid" placeholder="请选择">
434 434
                 <el-option :key="0" label="请选择" :value="0"></el-option>
435 435
 
436
-                <el-option v-for="(option, index) in aliquid_info" :key="index"
436
+                <el-option v-for="(option, index) in aliquid_info" :key="index+1"
437 437
                            :label="option.GoodInfo.specification_name" :value="option.GoodInfo.id"></el-option>
438 438
               </el-select>
439 439
             </el-form-item>
@@ -469,7 +469,7 @@
469 469
     >
470 470
 
471 471
       <el-checkbox-group v-model="checkedCities">
472
-        <el-checkbox style="display:block;vertical-align: middle" v-for="(advice, index) in targetAdvices"
472
+        <el-checkbox  style="display: flex;align-items: center" v-for="(advice, index) in targetAdvices"
473 473
                      :label="advice.id"
474 474
                      :key="index"
475 475
                      :value="advice.id"
@@ -479,7 +479,7 @@
479 479
           <div style="padding-left: 10px">开嘱时间&nbsp;{{ getTime(advice.created_time) }}</div>
480 480
           <br/>
481 481
           <div style="padding-bottom: 10px;padding-left: 10px"> 医嘱内容&nbsp;{{getContent(advice)}}</div>
482
-          <div style="padding-bottom: 10px;padding-left: 10px" v-if="advice.frequency_type == 1"> 推送频率 每必推</div>
482
+          <div style="padding-bottom: 10px;padding-left: 10px" v-if="advice.frequency_type == 1"> 推送频率 每必推</div>
483 483
           <div style="padding-bottom: 10px;padding-left: 10px" v-if="advice.frequency_type == 2"> 推送频率&nbsp;{{advice.day_count}}天/次</div>
484 484
           <div style="padding-bottom: 10px;padding-left: 10px" v-if="advice.frequency_type == 3"> 推送频率&nbsp;每周{{advice.week_day}}</div>
485 485
         </el-checkbox>
@@ -493,22 +493,70 @@
493 493
     </el-dialog>
494 494
 
495 495
 
496
+    <el-dialog
497
+      :title="patient.name"
498
+      :visible.sync="msgtip_visibility"
499
+      :close-on-click-modal="false"
500
+      :close-on-press-escape="false"
501
+      :show-close="false"
502
+      width="30%"
503
+    >
504
+      <div class="newLine">
505
+        <span>本次透析日期</span>
506
+        <span>{{dialysis_date}}</span>
507
+      </div>
508
+      <div class="newLine">
509
+        <span>透前体重(kg)</span>
510
+        <span>{{ predialysis.weight_before }}</span>
511
+      </div>
512
+      <div class="newLine">
513
+        <span>干体重(kg)</span>
514
+        <span>{{ last_predialysis?last_predialysis.dry_weight:''}}</span>
515
+      </div>
516
+      <div class="newLine">
517
+        <span>衣物重(kg)</span>
518
+        <span>{{
519
+            predialysis.additional_weight
520
+          }}</span>
521
+      </div>
522
+      <div class="newLine">
523
+        <span>体重增加(kg)</span>
524
+        <span>{{ add_weight }}</span>
525
+      </div>
526
+      <div class="newLine">
527
+        <span>透后体重(kg)</span>
528
+        <span>{{ record.weight_after }}</span>
529
+      </div>
530
+      <div class="newLine">
531
+        <span>体重减少(kg)</span>
532
+        <span>{{ record.weight_loss }}</span>
533
+      </div>
534
+      <div class="newLine">
535
+        <span>上次透后体重(kg)</span>
536
+        <span>{{last_record?last_record.weight_after:''}}</span>
537
+      </div>
496 538
 
497
-
498
-
539
+      <span slot="footer" class="dialog-footer">
540
+            <el-button @click="cancleMsg()">取 消</el-button>
541
+            <el-button type="primary" @click="cancleMsg()">确 定</el-button>
542
+          </span>
543
+    </el-dialog>
499 544
 
500 545
   </div>
501 546
 
502 547
 </template>
503 548
 
504 549
 <script>
505
-  import { postPrescription, postSoulution, CreateGroupAdvice } from '@/api/dialysis'
550
+  import { CreateGroupAdvice, GetSolution, postPrescription, postSoulution } from '@/api/dialysis'
506 551
   import { getDataConfig } from '@/utils/data'
507 552
   import { uParseTime } from '@/utils/tools'
508 553
   import store from '@/store'
554
+  import MsgTip from './MsgTip'
555
+  import { calculateAnticoagulantZL} from '@/utils/tools'
509 556
 
510 557
   export default {
511 558
     name: 'dialysisPrescriptionDialog',
559
+    components: { MsgTip },
512 560
     props: {
513 561
       is_open: {
514 562
         type: Number,
@@ -627,6 +675,7 @@
627 675
         }
628 676
       },
629 677
 
678
+
630 679
       prescription: { // 透析处方
631 680
         type: Object,
632 681
         default: () => {
@@ -660,13 +709,49 @@
660 709
           return new Array()
661 710
         }
662 711
       },
663
-      zhiShow: false,
664
-      totalShow: false,
665
-      huShow: false
666 712
 
713
+      predialysis: {
714
+        type: Object,
715
+        default: () => {
716
+          return { id: 0 }
717
+        }
718
+      },
719
+      last_predialysis: {
720
+        type: Object,
721
+        default: () => {
722
+          return { id: 0 }
723
+        }
724
+      },
725
+      record: {
726
+        type: Object,
727
+        default: () => {
728
+          return { id: 0 }
729
+        }
730
+      },
731
+      last_record: {
732
+        type: Object,
733
+        default: () => {
734
+          return { id: 0 }
735
+        }
736
+      }, dry_weight: {
737
+        type: Object,
738
+        default: () => {
739
+          return { id: 0 }
740
+        }
741
+      },
742
+
743
+    },
744
+    computed: {
745
+      dialysis_date: function() {
746
+        return uParseTime(this.$route.query.date, '{y}/{m}/{d}')
747
+      }
667 748
     },
668 749
     data() {
669 750
       return {
751
+        zhiShow: false,
752
+        totalShow: false,
753
+        huShow: false,
754
+        showName:'',
670 755
         isShowRemindAdvice: false,
671 756
         checkedCities: [],
672 757
         isVisibility: false,
@@ -676,16 +761,19 @@
676 761
         record_date: '',
677 762
         time: '',
678 763
         treatment_mode: [],
764
+        timeValue: '',
679 765
         deviceList: [],
680 766
         replacement_ways: [],
681 767
         anticoagulantsConfit: {},
682 768
         dialysate_formulation_options: [],
683
-
769
+        add_weight:0,
684 770
         body_fluid_option: [],
685 771
         special_medicine_option: [],
686 772
         displace_liqui_part_option: [],
687 773
         blood_access_option: [],
688 774
         is_pre: 0,
775
+        msgtip_visibility: false,
776
+
689 777
         dialysisPrescription: {
690 778
           replacement_total: '',
691 779
           mode_id: '',
@@ -742,7 +830,15 @@
742 830
           bloodlines: '',
743 831
           tubing_hemodialysis: '',
744 832
           package: '',
745
-          a_liquid: ''
833
+          a_liquid: '',
834
+
835
+
836
+          no_anticoagulant_shouji: '0',
837
+          no_anticoagulant_weichi: '0',
838
+          no_anticoagulant_zongliang: '0',
839
+
840
+
841
+
746 842
         },
747 843
 
748 844
         anticoagulant: {
@@ -766,6 +862,10 @@
766 862
       }
767 863
     },
768 864
     methods: {
865
+      menuMsgTip: function() {
866
+        this.msgtip_visibility = false
867
+        this.isVisibility = true
868
+      },
769 869
       handleAdviceCommit() {
770 870
         let results = []
771 871
         for (let i = 0; i < this.targetAdvices.length; i++) {
@@ -1781,22 +1881,67 @@
1781 1881
               val.child[i]['single'] = ''
1782 1882
             }
1783 1883
             name = name + '▲' + val.child[i].advice_name + '' +
1784
-            val.child[i].advice_desc +
1785
-            val.child[i].drug_spec_unit +
1786
-            val.child[i].presc +
1787
-            val.child[i].single
1884
+              val.child[i].advice_desc +
1885
+              val.child[i].drug_spec_unit +
1886
+              val.child[i].presc +
1887
+              val.child[i].single
1788 1888
           }
1789 1889
           return val.advice_name + '  ' + advice_desc + ' ' +
1790
-          val.drug_spec_unit +
1791
-          prescribing_number +
1792
-          ' ' + single_dose + ' ' + ' ' + val.delivery_way + ' ' + val.execution_frequency + val.remark + name
1890
+            val.drug_spec_unit +
1891
+            prescribing_number +
1892
+            ' ' + single_dose + ' ' + ' ' + val.delivery_way + ' ' + val.execution_frequency + val.remark + name
1793 1893
         } else {
1794 1894
           return val.advice_name + '  ' + advice_desc +
1795
-          prescribing_number +
1796
-          ' ' + single_dose + ' ' + ' ' + val.delivery_way + ' ' + val.execution_frequency + val.remark
1895
+            prescribing_number +
1896
+            ' ' + single_dose + ' ' + ' ' + val.delivery_way + ' ' + val.execution_frequency + val.remark
1797 1897
         }
1798 1898
       },
1799 1899
       changePrescription(id) {
1900
+
1901
+        let ParamsQuery = {}
1902
+        ParamsQuery['patient_id'] = this.$route.query.patient_id
1903
+        ParamsQuery['mode_id'] = id
1904
+        GetSolution(ParamsQuery).then(response => {
1905
+          if (response.data.state == 0) {
1906
+            this.$message.error(response.data.msg)
1907
+            return false
1908
+          } else {
1909
+            this.$message.success('切换成功')
1910
+            if (response.data.data.solution != null) {
1911
+              for (const key in response.data.data.solution) { //长期处方不为空
1912
+                if (key != 'target_ultrafiltration') {
1913
+                  this.dialysisPrescription[key] = response.data.data.solution[key]
1914
+                }
1915
+              }
1916
+            } else {
1917
+              if (response.data.data.prescription != null) {  //临时处方不为空
1918
+                for (const key in response.data.data.prescription) {
1919
+                  if (key != 'target_ultrafiltration') {
1920
+                    this.dialysisPrescription[key] = response.data.data.prescription[key]
1921
+                  }
1922
+                }
1923
+              } else {
1924
+                for (const key in this.dialysisPrescription) { //临时处方为空
1925
+                  if (key != 'target_ultrafiltration') {
1926
+                    this.dialysisPrescription[key] = ''
1927
+                  }
1928
+                }
1929
+                this.dialysisPrescription.mode_id = id
1930
+              }
1931
+            }
1932
+          }
1933
+
1934
+          if (this.dialysisPrescription.dialysis_duration_hour === '' || this.dialysisPrescription.dialysis_duration_minute === '') {
1935
+            this.timeValue = ''
1936
+            this.time = '03:00'
1937
+
1938
+          } else {
1939
+
1940
+            this.timeValue = this.dialysisPrescription.dialysis_duration_hour + '小时' + this.dialysisPrescription.dialysis_duration_minute + '分钟'
1941
+            this.time = (this.dialysisPrescription.dialysis_duration_hour > 10 ? this.dialysisPrescription.dialysis_duration_hour : '0' + this.dialysisPrescription.dialysis_duration_hour) + ':' + (this.dialysisPrescription.dialysis_duration_minute > 10 ? this.dialysisPrescription.dialysis_duration_minute : '0' + this.dialysisPrescription.dialysis_duration_minute)
1942
+          }
1943
+        })
1944
+
1800 1945
         if (id === 1 || id === 3 || id === 4 || id === 6 || id === 7 || id === 8 || id === 9 || id === 10 || id === 11 || id === 13 || id === 14 || id === 15 || id === 16) {
1801 1946
           this.zhiShow = false
1802 1947
           this.huShow = false
@@ -1806,14 +1951,26 @@
1806 1951
           this.huShow = true
1807 1952
           this.totalShow = true
1808 1953
         }
1809
-      },handlePatientInfo(){
1810
-
1811
-
1812
-
1954
+      }, handlePatientInfo() {
1955
+        this.isVisibility = false
1956
+        this.msgtip_visibility = true
1957
+      },cancleMsg(){
1813 1958
 
1959
+        this.isVisibility = true
1960
+        this.msgtip_visibility = false
1814 1961
       }
1815 1962
     },
1816 1963
     created() {
1964
+
1965
+
1966
+      if (
1967
+        this.predialysis.weight_before > 0 &&
1968
+        this.last_record.weight_after > 0
1969
+      ) {
1970
+        this.add_weight = parseFloat(
1971
+          this.predialysis.weight_before - this.last_record.weight_after
1972
+        ).toFixed(2)
1973
+      }
1817 1974
       this.treatment_mode = this.$store.getters.treatment_mode
1818 1975
       this.perfusion_apparatus = getDataConfig('hemodialysis', 'perfusion_apparatus')
1819 1976
       this.replacement_ways = getDataConfig('hemodialysis', 'replacement_ways')
@@ -1830,10 +1987,137 @@
1830 1987
       this.record_date = uParseTime(date, '{y}-{m}-{d}')
1831 1988
     },
1832 1989
     watch: {
1833
-      isVisibility(val) {
1990
+      "dialysisPrescription.dialysis_duration_hour":function(){
1991
+        let  dialysis_duration_minute = 0
1992
+        let dialysis_duration_hour = 0
1993
+        let duration = 0
1994
+
1995
+        if (this.dialysisPrescription.dialysis_duration_minute == ''){
1996
+          dialysis_duration_minute = 0
1997
+        }else{
1998
+          dialysis_duration_minute = this.dialysisPrescription.dialysis_duration_minute
1999
+        }
2000
+
2001
+        if (this.dialysisPrescription.dialysis_duration_hour == ''){
2002
+          dialysis_duration_hour = 0
2003
+
2004
+        }else{
2005
+
2006
+          dialysis_duration_hour = this.dialysisPrescription.dialysis_duration_hour
2007
+
2008
+        }
2009
+        duration = parseFloat(dialysis_duration_hour) * 60 + parseFloat(dialysis_duration_minute)
2010
+
2011
+
2012
+
2013
+
2014
+        this.dialysisPrescription.anticoagulant_zongliang=calculateAnticoagulantZL(1,
2015
+          this.dialysisPrescription.anticoagulant_shouji,
2016
+          duration,
2017
+          this.dialysisPrescription.anticoagulant_weichi
2018
+        );
2019
+        if(isNaN(this.dialysisPrescription.anticoagulant_zongliang)){
2020
+          this.dialysisPrescription.anticoagulant_zongliang = ''
2021
+        }
2022
+      },
2023
+      "dialysisPrescription.dialysis_duration_minute":function(){
2024
+        let  dialysis_duration_minute = 0
2025
+        let dialysis_duration_hour = 0
2026
+        let duration = 0
2027
+
2028
+        if (this.dialysisPrescription.dialysis_duration_minute == ''){
2029
+          dialysis_duration_minute = 0
2030
+        }else{
2031
+          dialysis_duration_minute = this.dialysisPrescription.dialysis_duration_minute
2032
+        }
2033
+
2034
+        if (this.dialysisPrescription.dialysis_duration_hour == ''){
2035
+          dialysis_duration_hour = 0
2036
+
2037
+        }else{
2038
+
2039
+          dialysis_duration_hour = this.dialysisPrescription.dialysis_duration_hour
2040
+
2041
+        }
2042
+        duration = parseFloat(dialysis_duration_hour) * 60 + parseFloat(dialysis_duration_minute)
2043
+
2044
+
1834 2045
 
2046
+        this.dialysisPrescription.anticoagulant_zongliang=calculateAnticoagulantZL(1,
2047
+          this.dialysisPrescription.anticoagulant_shouji,
2048
+          duration,
2049
+          this.dialysisPrescription.anticoagulant_weichi
2050
+        );
2051
+        if(isNaN(this.dialysisPrescription.anticoagulant_zongliang)){
2052
+          this.dialysisPrescription.anticoagulant_zongliang = ''
2053
+        }
1835 2054
       },
1836
-      'prescription.id': function() {
2055
+      "dialysisPrescription.anticoagulant_shouji":function(){
2056
+
2057
+        let  dialysis_duration_minute = 0
2058
+        let dialysis_duration_hour = 0
2059
+        let duration = 0
2060
+
2061
+        if (this.dialysisPrescription.dialysis_duration_minute == ''){
2062
+          dialysis_duration_minute = 0
2063
+        }else{
2064
+          dialysis_duration_minute = this.dialysisPrescription.dialysis_duration_minute
2065
+        }
2066
+
2067
+        if (this.dialysisPrescription.dialysis_duration_hour == ''){
2068
+          dialysis_duration_hour = 0
2069
+
2070
+        }else{
2071
+
2072
+          dialysis_duration_hour = this.dialysisPrescription.dialysis_duration_hour
2073
+
2074
+        }
2075
+        duration = parseFloat(dialysis_duration_hour) * 60 + parseFloat(dialysis_duration_minute)
2076
+
2077
+
2078
+        console.log(duration)
2079
+
2080
+        this.dialysisPrescription.anticoagulant_zongliang=calculateAnticoagulantZL(1,
2081
+          this.dialysisPrescription.anticoagulant_shouji,
2082
+          duration,
2083
+          this.dialysisPrescription.anticoagulant_weichi
2084
+        );
2085
+        if(isNaN(this.dialysisPrescription.anticoagulant_zongliang)){
2086
+          this.dialysisPrescription.anticoagulant_zongliang = ''
2087
+        }
2088
+      },
2089
+      "dialysisPrescription.anticoagulant_weichi":function(){
2090
+        let  dialysis_duration_minute = 0
2091
+        let dialysis_duration_hour = 0
2092
+        let duration = 0
2093
+
2094
+        if (this.dialysisPrescription.dialysis_duration_minute == ''){
2095
+          dialysis_duration_minute = 0
2096
+        }else{
2097
+          dialysis_duration_minute = this.dialysisPrescription.dialysis_duration_minute
2098
+        }
2099
+
2100
+        if (this.dialysisPrescription.dialysis_duration_hour == ''){
2101
+          dialysis_duration_hour = 0
2102
+
2103
+        }else{
2104
+
2105
+          dialysis_duration_hour = this.dialysisPrescription.dialysis_duration_hour
2106
+
2107
+        }
2108
+        duration = parseFloat(dialysis_duration_hour) * 60 + parseFloat(dialysis_duration_minute)
2109
+
2110
+        console.log(duration)
2111
+
2112
+        this.dialysisPrescription.anticoagulant_zongliang=calculateAnticoagulantZL(1,
2113
+          this.dialysisPrescription.anticoagulant_shouji,
2114
+          duration,
2115
+          this.dialysisPrescription.anticoagulant_weichi
2116
+        );
2117
+        if(isNaN(this.dialysisPrescription.anticoagulant_zongliang)){
2118
+          this.dialysisPrescription.anticoagulant_zongliang = ''
2119
+        }
2120
+      }, 'prescription.id': function() {
1837 2121
         if (this.prescription.id > 0) {
1838 2122
           for (var index in this.dialysisPrescription) {
1839 2123
             this.dialysisPrescription[index] = this.prescription[index]
@@ -2073,9 +2357,18 @@
2073 2357
 
2074 2358
 </script>
2075 2359
 
2076
-<style scoped>
2360
+<style rel="stylesheet/scss" lang="scss" scoped>
2077 2361
   .el-checkbox, .el-checkbox__input {
2078 2362
     vertical-align: middle;
2079 2363
   }
2080 2364
 
2365
+
2366
+  .newLine {
2367
+    display: flex;
2368
+    justify-content: space-between;
2369
+    height: 40px;
2370
+    line-height: 40px;
2371
+    border-bottom: 1px solid #ccc;
2372
+  }
2373
+
2081 2374
 </style>

+ 282 - 98
src/xt_pages/dialysis/details/dialog/doubleCheckDialog.vue Näytä tiedosto

@@ -43,6 +43,16 @@
43 43
       </el-form-item>
44 44
     </el-form>
45 45
 
46
+    <el-form :inline="true" class="demo-form-inline" :model="doubleReview" label-width="110px">
47
+    <el-form-item label="核对时间 : ">
48
+        <el-time-picker
49
+          v-model="time"
50
+          format='HH:mm'
51
+          value-format="HH:mm"
52
+          placeholder="请输入核对时间">
53
+        </el-time-picker>
54
+      </el-form-item>
55
+    </el-form>
46 56
 
47 57
 
48 58
     <el-form :inline="true" class="demo-form-inline" :model="doubleReview" label-width="110px">
@@ -51,7 +61,6 @@
51 61
     </el-form>
52 62
 
53 63
 
54
-
55 64
     <div slot="footer" class="dialog-footer">
56 65
       <el-button @click="handleCancle">取 消</el-button>
57 66
       <el-button type="primary" @click="handleComfirm">保 存</el-button>
@@ -62,134 +71,286 @@
62 71
 </template>
63 72
 
64 73
 <script>
65
-  import {postDoubleCheck} from "@/api/dialysis";
66
-  import {uParseTime} from "@/utils/tools";
74
+  import { postDoubleCheck } from '@/api/dialysis'
75
+  import { uParseTime } from '@/utils/tools'
67 76
 
68 77
   export default {
69
-    name: "doubleCheckDialog",
78
+    name: 'doubleCheckDialog',
70 79
     data() {
71 80
       return {
72 81
         isVisibility: false,
73
-
82
+        time:'',
74 83
         isClose: false,
75 84
         doubleReview: {
76
-          dialysis_item_check: "1",
77
-          dialysis_parameter_check: "1",
78
-          vascular_access_verification: "1",
79
-          pipeline_connection_check: "1",
80
-          dialysis_item_desc: "",
81
-          dialysis_parameter_desc: "",
82
-          vascular_access_desc: "",
83
-          pipeline_connection_desc: "",
84
-          collator: "",
85
+          dialysis_item_check: '1',
86
+          dialysis_parameter_check: '1',
87
+          vascular_access_verification: '1',
88
+          pipeline_connection_check: '1',
89
+          dialysis_item_desc: '',
90
+          dialysis_parameter_desc: '',
91
+          vascular_access_desc: '',
92
+          pipeline_connection_desc: '',
93
+          collator: '',
85 94
 
86 95
           creater: 0,
87 96
           modifier: 0,
88 97
           created_time: 0,
89 98
           updated_time: 0,
99
+          check_time: 0,
100
+          first_check_time: 0
90 101
         },
91 102
 
92
-        record_date: ""
93
-      };
103
+        record_date: ''
104
+      }
94 105
     }, methods: {
95 106
       show() {
96
-        this.isVisibility = true;
107
+        this.isVisibility = true
108
+
109
+
110
+
111
+
97 112
       },
98 113
       hide() {
99
-        this.isVisibility = false;
114
+        this.isVisibility = false
100 115
       },
101
-      handleCancle: function () {
102
-        this.isVisibility = false;
116
+      handleCancle: function() {
117
+        this.isVisibility = false
103 118
 
104
-      }, handleComfirm: function () {
119
+      }, handleComfirm: function() {
105 120
 
106 121
         if (this.patient.id <= 0) {
107
-          this.$message.error("没有选择患者")
122
+          this.$message.error('没有选择患者')
108 123
           return
109 124
         }
110 125
 
111
-        let ParamsQuery = this.doubleReview;
112
-        ParamsQuery["patient"] = this.patient.id;
113
-        ParamsQuery["record_date"] = this.record_date;
126
+        let ParamsQuery = this.doubleReview
127
+        ParamsQuery['patient'] = this.patient.id
128
+        ParamsQuery['record_date'] = this.record_date
129
+        ParamsQuery['check_time'] = this.record_date +" "+ this.time
130
+
114 131
         postDoubleCheck(ParamsQuery).then(response => {
115 132
           if (response.data.state == 0) {
116
-            this.$message.error(response.data.msg);
117
-            return false;
133
+            this.$message.error(response.data.msg)
134
+            return false
118 135
           } else {
119 136
             this.$notify({
120
-              title: "成功",
121
-              message: "提交成功",
122
-              type: "success",
137
+              title: '成功',
138
+              message: '提交成功',
139
+              type: 'success',
123 140
               duration: 2000
124
-            });
125
-            this.doubleReview.created_time =   response.data.data.doubleCheck.created_time
126
-            this.doubleReview.creater =  response.data.data.doubleCheck.creater
127
-            this.doubleReview.updated_time =  response.data.data.doubleCheck.updated_time
128
-            this.doubleReview.modifier =   response.data.data.doubleCheck.modifier
141
+            })
142
+
143
+            this.doubleReview.creater = response.data.data.doubleCheck.creater;
144
+            this.doubleReview.check_time =
145
+              response.data.data.doubleCheck.check_time;
146
+            this.doubleReview.first_check_time =
147
+              response.data.data.doubleCheck.first_check_time;
148
+            this.doubleReview.modifier = response.data.data.doubleCheck.modifier;
129 149
 
130 150
 
131
-            let doublecheck_resp = response.data.data.doubleCheck;
132
-            var doubleCheck = this.double_check;
151
+            let doublecheck_resp = response.data.data.doubleCheck
152
+            var doubleCheck = this.double_check
133 153
             for (var index in doublecheck_resp) {
134 154
               // doubleCheck[index] = doublecheck_resp[index];
135 155
               this.$set(doubleCheck, index, doublecheck_resp[index])
136 156
             }
137 157
             this.hide()
138 158
           }
139
-        });
159
+        })
140 160
 
141
-      }, getFirstCheckDesc: function () {
142
-        let time = uParseTime(this.doubleReview.created_time, "{y}-{m}-{d}  {h}:{i}")
143
-        if (this.doubleReview.creater <= 0) {
144
-          return "";
145
-        }
161
+      },
162
+      getFirstCheckDesc: function() {
163
+        if (
164
+          this.doubleReview.first_check_time > 0 &&
165
+          this.doubleReview.check_time > 0
166
+        ) {
167
+          if (this.doubleReview.first_check_time < this.doubleReview.check_time) {
168
+            let time = uParseTime(
169
+              this.doubleReview.first_check_time,
170
+              "{y}-{m}-{d}  {h}:{i}"
171
+            );
172
+            if (this.doubleReview.creater <= 0) {
173
+              return "";
174
+            }
146 175
 
147
-        var desc = "";
148
-        if (this.admin_users == null || typeof this.admin_users == "undefined") {
149
-          return "";
150
-        }
176
+            var desc = "";
177
+            if (
178
+              this.admin_users == null ||
179
+              typeof this.admin_users.length == "undefined"
180
+            ) {
181
+              return "";
182
+            }
151 183
 
152
-        var leng = this.admin_users.length;
153
-        if (leng == 0) {
154
-          return "";
155
-        }
184
+            var leng = this.admin_users.length;
185
+            if (leng == 0) {
186
+              return "";
187
+            }
188
+
189
+            for (let index = 0; index < leng; index++) {
190
+              if (this.admin_users[index].id == this.doubleReview.creater) {
191
+                let name = this.admin_users[index].name;
192
+                desc = "首次核对人员:" + name + " 首次核对时间:" + time;
193
+
194
+                break;
195
+              }
196
+            }
197
+            return desc;
198
+          } else {
199
+            let time = uParseTime(
200
+              this.doubleReview.check_time,
201
+              "{y}-{m}-{d}  {h}:{i}"
202
+            );
203
+            if (this.doubleReview.modifier <= 0) {
204
+              return "";
205
+            }
206
+
207
+            var desc = "";
208
+            if (
209
+              this.admin_users == null ||
210
+              typeof this.admin_users.length == "undefined"
211
+            ) {
212
+              return "";
213
+            }
214
+
215
+            var leng = this.admin_users.length;
216
+            if (leng == 0) {
217
+              return "";
218
+            }
219
+
220
+            for (let index = 0; index < leng; index++) {
221
+              if (this.admin_users[index].id == this.doubleReview.modifier) {
222
+                let name = this.admin_users[index].name;
223
+                desc = "首次核对人员:" + name + " 首次核对时间:" + time;
156 224
 
157
-        for (let index = 0; index < leng; index++) {
158
-          if (this.admin_users[index].id == this.doubleReview.creater) {
159
-            let name = this.admin_users[index].name;
160
-            desc = "首次核对人员:"+name +"  首次核对时间:"+time
161
-            break;
225
+                break;
226
+              }
227
+            }
228
+            return desc;
229
+          }
230
+        } else {
231
+          let time = uParseTime(
232
+            this.doubleReview.first_check_time,
233
+            "{y}-{m}-{d}  {h}:{i}"
234
+          );
235
+          if (this.doubleReview.creater <= 0) {
236
+            return "";
162 237
           }
163
-        }
164
-        return desc;
165 238
 
166
-      }, getScondCheckDesc: function () {
239
+          var desc = "";
240
+          if (
241
+            this.admin_users == null ||
242
+            typeof this.admin_users.length == "undefined"
243
+          ) {
244
+            return "";
245
+          }
167 246
 
168
-        let time = uParseTime(this.doubleReview.updated_time, "{y}-{m}-{d} {h}:{i}")
169
-        if (this.doubleReview.modifier <= 0) {
170
-          return "";
171
-        }
172
-        var desc = "";
173
-        if (this.admin_users == null || typeof this.admin_users.length == "undefined") {
174
-          return desc;
175
-        }
176
-        var leng = this.admin_users.length;
177
-        if (leng == 0) {
247
+          var leng = this.admin_users.length;
248
+          if (leng == 0) {
249
+            return "";
250
+          }
251
+
252
+          for (let index = 0; index < leng; index++) {
253
+            if (this.admin_users[index].id == this.doubleReview.creater) {
254
+              let name = this.admin_users[index].name;
255
+              desc = "首次核对人员:" + name + " 首次核对时间:" + time;
256
+
257
+              break;
258
+            }
259
+          }
178 260
           return desc;
179 261
         }
180
-        for (let index = 0; index < leng; index++) {
181
-          if (this.admin_users[index].id == this.doubleReview.modifier) {
182
-            let name = this.admin_users[index].name;
183
-            desc = "第二次核对人员:"+name +"  第二次核对时间:"+time
184
-            break;
262
+      },
263
+      getScondCheckDesc: function() {
264
+        if (
265
+          this.doubleReview.first_check_time > 0 &&
266
+          this.doubleReview.check_time > 0
267
+        ) {
268
+          if (this.doubleReview.first_check_time < this.doubleReview.check_time) {
269
+            let time = uParseTime(
270
+              this.doubleReview.check_time,
271
+              "{y}-{m}-{d} {h}:{i}"
272
+            );
273
+            if (this.doubleReview.modifier <= 0) {
274
+              return "";
275
+            }
276
+            var desc = "";
277
+            if (
278
+              this.admin_users == null ||
279
+              typeof this.admin_users.length == "undefined"
280
+            ) {
281
+              return desc;
282
+            }
283
+            var leng = this.admin_users.length;
284
+            if (leng == 0) {
285
+              return desc;
286
+            }
287
+            for (let index = 0; index < leng; index++) {
288
+              if (this.admin_users[index].id == this.doubleReview.modifier) {
289
+                let name = this.admin_users[index].name;
290
+                desc = "第二次核对人员:" + name + " 第二次核对时间:" + time;
291
+                break;
292
+              }
293
+            }
294
+            return desc;
295
+          } else {
296
+            let time = uParseTime(
297
+              this.doubleReview.first_check_time,
298
+              "{y}-{m}-{d} {h}:{i}"
299
+            );
300
+            if (this.doubleReview.creater <= 0) {
301
+              return "";
302
+            }
303
+            var desc = "";
304
+            if (
305
+              this.admin_users == null ||
306
+              typeof this.admin_users.length == "undefined"
307
+            ) {
308
+              return desc;
309
+            }
310
+            var leng = this.admin_users.length;
311
+            if (leng == 0) {
312
+              return desc;
313
+            }
314
+            for (let index = 0; index < leng; index++) {
315
+              if (this.admin_users[index].id == this.doubleReview.creater) {
316
+                let name = this.admin_users[index].name;
317
+                desc = "第二次核对人员:" + name + " 第二次核对时间:" + time;
318
+                break;
319
+              }
320
+            }
321
+            return desc;
322
+          }
323
+        } else {
324
+          let time = uParseTime(
325
+            this.doubleReview.check_time,
326
+            "{y}-{m}-{d} {h}:{i}"
327
+          );
328
+          if (this.doubleReview.modifier <= 0) {
329
+            return "";
185 330
           }
331
+          var desc = "";
332
+          if (
333
+            this.admin_users == null ||
334
+            typeof this.admin_users.length == "undefined"
335
+          ) {
336
+            return desc;
337
+          }
338
+          var leng = this.admin_users.length;
339
+          if (leng == 0) {
340
+            return desc;
341
+          }
342
+          for (let index = 0; index < leng; index++) {
343
+            if (this.admin_users[index].id == this.doubleReview.modifier) {
344
+              let name = this.admin_users[index].name;
345
+              desc = "第二次核对人员:" + name + " 第二次核对时间:" + time;
346
+              break;
347
+            }
348
+          }
349
+          return desc;
186 350
         }
187
-        return desc;
188
-
189
-      }
190
-
191
-
351
+      },
192 352
     },
353
+
193 354
     props: {
194 355
       admin_users: { //系统用户列表
195 356
         type: Array,
@@ -201,49 +362,72 @@
201 362
       double_check: { // 双人核对
202 363
         type: Object,
203 364
         default: () => {
204
-          return {id: 0}
365
+          return { id: 0 }
205 366
         }
206 367
       },
207 368
       patient: { // 患者信息
208 369
         type: Object,
209 370
         default: () => {
210
-          return {id: 0}
371
+          return { id: 0 }
211 372
         }
212
-      },
373
+      }
213 374
 
214 375
     },
215 376
     watch: {
216 377
       isVisibility(val) {
217 378
 
218
-      }, "double_check.id": function () {
379
+      }, 'double_check.id': function() {
219 380
         if (this.double_check.id > 0) {
220 381
           for (var index in this.doubleReview) {
221
-            this.doubleReview[index] = this.double_check[index] + "";
382
+            this.doubleReview[index] = this.double_check[index] + ''
222 383
           }
223
-          this.doubleReview.created_time =   this.double_check['created_time']
224
-          this.doubleReview.creater =  this.double_check['creater']
225
-          this.doubleReview.updated_time =  this.double_check['updated_time']
226
-          this.doubleReview.modifier =   this.double_check['modifier']
384
+          this.doubleReview.created_time = this.double_check['created_time']
385
+          this.doubleReview.creater = this.double_check['creater']
386
+          this.doubleReview.updated_time = this.double_check['updated_time']
387
+          this.doubleReview.modifier = this.double_check['modifier']
227 388
 
228 389
 
229
-          console.log( this.doubleReview)
390
+          this.doubleReview.dialysis_item_desc = this.double_check['dialysis_item_desc'];
391
+          this.doubleReview.dialysis_parameter_desc = this.double_check['dialysis_parameter_desc'];
392
+          this.doubleReview.vascular_access_desc = this.double_check['vascular_access_desc'];
393
+          this.doubleReview.pipeline_connection_desc = this.double_check['pipeline_connection_desc'];
230 394
 
231 395
 
396
+          this.doubleReview.created_time =this.double_check['created_time']
397
+          this.doubleReview.creater =this.double_check['creater']
398
+          this.doubleReview.updated_time = this.double_check['updated_time']
399
+          this.doubleReview.modifier = this.double_check['modifier']
400
+          this.doubleReview.check_time = this.double_check['check_time']
401
+          this.doubleReview.first_check_time =  this.double_check['first_check_time']
232 402
 
233 403
         } else {
234
-          this.dialysis_item_check = "1"
235
-          this.dialysis_parameter_check = "1"
236
-          this.vascular_access_verification = "1"
237
-          this.pipeline_connection_check = "1"
238
-
404
+          this.dialysis_item_check = '1'
405
+          this.dialysis_parameter_check = '1'
406
+          this.vascular_access_verification = '1'
407
+          this.pipeline_connection_check = '1'
408
+
409
+          this.doubleReview.dialysis_item_desc = "";
410
+          this.doubleReview.dialysis_parameter_desc = "";
411
+          this.doubleReview.vascular_access_desc = "";
412
+          this.doubleReview.pipeline_connection_desc = "";
239 413
         }
240
-      },
414
+      }
241 415
 
242 416
     },
243 417
     created() {
244
-      var date = this.$route.query && this.$route.query.date;
245
-      this.record_date = uParseTime(date, '{y}-{m}-{d}');
246
-    },
418
+      var date = this.$route.query && this.$route.query.date
419
+      this.record_date = uParseTime(date, '{y}-{m}-{d}')
420
+
421
+      var nowDate = new Date()
422
+      var nowYear = nowDate.getFullYear()
423
+      var nowMonth = nowDate.getMonth() + 1
424
+      var nowDay = nowDate.getDate()
425
+      var nowHours = nowDate.getHours()
426
+      var nowMinutes = nowDate.getMinutes()
427
+      var time =  (nowHours < 10 ? '0' + nowHours : nowHours) + ':' + (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes)
428
+      this.time = time
429
+
430
+    }
247 431
 
248 432
   }
249 433
 </script>

+ 174 - 97
src/xt_pages/dialysis/details/dialog/finish_dialog.vue Näytä tiedosto

@@ -1,124 +1,201 @@
1 1
 <template>
2
-    <div>
3
-        <el-dialog title="透析下机" :visible.sync="visible" width="854px" :modal-append-to-body="false" >
4
-            <div class="txsj">
5
-            </div>
6
-            <el-form :model="form" label-width="80px">
7
-                <el-form-item label="下机护士">
8
-                    <el-select v-model="form.nurse_id" :disabled="!(dialysis_order.id != 0 && dialysis_order.stage == 1)">
9
-                        <el-option v-for="(admin, index) in admins" :key="index" :value="admin.id" :label="admin.name"></el-option>
10
-                    </el-select>
11
-                </el-form-item>
12
-
13
-              <el-form-item label="下机时间 :"  style="width:275px">
14
-                <el-date-picker
15
-                  type="datetime"
16
-                  format="yyyy-MM-dd HH"
17
-                  value-format="yyyy-MM-dd HH"
18
-                  placeholder="选择时间"
19
-                  v-model="start_time"
20
-                  style="width:100%;"
21
-                ></el-date-picker>
22
-              </el-form-item>
23
-
24
-                <el-form-item>
25
-                    <el-button v-if="(dialysis_order.id != 0 && dialysis_order.stage == 1)" @click="submit" :loading="loading" type="primary">执行下机</el-button>
26
-                    <el-button v-else-if="(dialysis_order.id != 0 && dialysis_order.stage == 2)" :disabled="true" type="info">已下机</el-button>
27
-                    <el-button v-else :disabled="true" type="info">未上机</el-button>
28
-                </el-form-item>
29
-
30
-            </el-form>
31
-        </el-dialog>
32
-    </div>
2
+  <div>
3
+    <el-dialog title="透析下机" :visible.sync="visible" width="854px" :modal-append-to-body="false">
4
+      <div class="txsj">
5
+      </div>
6
+      <el-form :model="form" label-width="80px">
7
+        <el-form-item label="下机护士">
8
+          <el-select v-model="form.nurse_id" :disabled="!(dialysis_order.id != 0)">
9
+            <el-option v-for="(admin, index) in admins" :key="index" :value="admin.id" :label="admin.name"></el-option>
10
+          </el-select>
11
+        </el-form-item>
12
+
13
+        <el-form-item label="下机时间 :" style="width:275px">
14
+          <el-date-picker
15
+            type="datetime"
16
+            format="yyyy-MM-dd HH:mm"
17
+            value-format="yyyy-MM-dd HH:mm"
18
+            placeholder="选择时间"
19
+            v-model="end_time"
20
+            style="width:100%;"
21
+          ></el-date-picker>
22
+        </el-form-item>
23
+
24
+        <el-form-item>
25
+          <el-button v-if="(dialysis_order.id != 0 && dialysis_order.stage == 1)" @click="submit" :loading="loading"
26
+                     type="primary">执行下机
27
+          </el-button>
28
+          <!--<el-button v-else-if="(dialysis_order.id != 0 && dialysis_order.stage == 2)" :disabled="true" type="info">-->
29
+            <!--已下机-->
30
+          <!--</el-button>-->
31
+          <!--<el-button v-else :disabled="true" type="info">未上机</el-button>-->
32
+          <el-button
33
+            v-if="dialysis_order.stage == 2 && (isPremission || this.$store.getters.xt_user.user.id == this.creator)"
34
+            type="primary" @click="modifyFinish">修改下机
35
+          </el-button>
36
+
37
+
38
+        </el-form-item>
39
+
40
+      </el-form>
41
+    </el-dialog>
42
+  </div>
33 43
 </template>
34 44
 
35 45
 <script>
36
-import { finishDialysis } from "@/api/dialysis_record"
37
-import { parseTime } from "@/utils"
46
+  import { finishDialysis,PostModifyFinishDialysis } from '@/api/dialysis_record'
47
+  import { parseTime } from '@/utils'
38 48
 
39
-export default {
40
-    name: "FinishDialog",
49
+  export default {
50
+    name: 'FinishDialog',
41 51
     data() {
42
-        return {
43
-            visible: false,
44
-            loading: false,
52
+      return {
53
+        visible: false,
54
+        loading: false,
55
+        creator: 0,
56
+        patient_id: 0,
57
+        schedule_date: 0,
58
+        isPremission:false,
59
+        end_time: '',
45 60
 
46
-            patient_id: 0,
47
-            schedule_date: 0,
48
-            start_time: '',
49
-
50
-            form: {
51
-                nurse_id: 0,
52
-            }
61
+        form: {
62
+          nurse_id: 0
53 63
         }
64
+      }
54 65
     },
55 66
     props: {
56
-        dialysis_order: {
57
-            type: Object,
58
-        },
59
-        schedule: {
60
-            type: Object,
61
-        },
62
-        admins: {
63
-            type: Array,
64
-        },
67
+      dialysis_order: {
68
+        type: Object
69
+      },
70
+      schedule: {
71
+        type: Object
72
+      },
73
+      admins: {
74
+        type: Array
75
+      }, special_premission: {
76
+        type: Array,
77
+      },
65 78
     },
66 79
     created() {
80
+
81
+    },
82
+    watch: {
83
+      'dialysis_order.id': function() {
84
+        if (this.dialysis_order.id == 0) {
85
+          this.form.nurse_id = 0
86
+        } else if (this.dialysis_order.stage == 1) {
87
+          this.form.nurse_id = this.$store.getters.xt_user.user.id
88
+        } else {
89
+          this.form.nurse_id = this.dialysis_order.finish_nurse
90
+        }
91
+      }
92
+    },
93
+    methods: {
94
+      show: function() {
95
+        this.visible = true
96
+        var nowDate = new Date()
97
+        var nowYear = nowDate.getFullYear()
98
+        var nowMonth = nowDate.getMonth() + 1
99
+        var nowDay = nowDate.getDate()
100
+        var nowHours = nowDate.getHours()
101
+        var nowMinutes = nowDate.getMinutes()
102
+        var time =
103
+          nowYear +
104
+          '-' +
105
+          (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
106
+          '-' +
107
+          (nowDay < 10 ? '0' + nowDay : nowDay) + ' ' + (nowHours < 10 ? '0' + nowHours : nowHours) + ':' + (nowMinutes < 10 ? '0' + nowMinutes : nowMinutes)
67 108
         this.patient_id = this.$route.query.patient_id
68 109
         this.schedule_date = this.$route.query.date
110
+        console.log(this.dialysis_order.end_time)
111
+
112
+        this.end_time = this.dialysis_order.finish_creator == 0 ? time : this.getTime(this.dialysis_order.end_time, '{y}-{m}-{d} {h}:{i}')
69 113
 
70 114
         if (this.dialysis_order.id == 0) {
71
-            this.form.nurse_id = 0
115
+          this.form.nurse_id = 0
72 116
         } else if (this.dialysis_order.stage == 1) {
73
-            this.form.nurse_id = this.$store.getters.xt_user.user.id
117
+          this.form.nurse_id = this.$store.getters.xt_user.user.id
74 118
         } else {
75
-            this.form.nurse_id = this.dialysis_order.finish_nurse
119
+          this.form.nurse_id = this.dialysis_order.finish_nurse
76 120
         }
77
-    },
78
-    watch: {
79
-        "dialysis_order.id": function() {
80
-            if (this.dialysis_order.id == 0) {
81
-                this.form.nurse_id = 0
82
-            } else if (this.dialysis_order.stage == 1) {
83
-                this.form.nurse_id = this.$store.getters.xt_user.user.id
84
-            } else {
85
-                this.form.nurse_id = this.dialysis_order.finish_nurse
121
+
122
+
123
+        if (this.dialysis_order.finish_creator > 0) {
124
+          for (let i = 0; i < this.special_premission.length; i++) {
125
+            if (this.$store.getters.xt_user.user.id == this.special_premission[i].admin_user_id) {
126
+              this.isPremission = true
86 127
             }
87
-        },
88
-    },
89
-    methods: {
90
-        show: function() {
91
-            this.visible = true
92
-        },
93
-        hide: function() {
94
-            this.visible = false
95
-        },
96
-        submit: function() {
97
-            this.loading = true
98
-            finishDialysis(this.patient_id, parseTime(this.schedule_date, "{y}-{m}-{d}"), this.form.nurse_id).then(rs => {
99
-                this.loading = false
100
-                var resp = rs.data
101
-                if (resp.state == 1) {
102
-                    var dialysis_order = resp.data.dialysis_order
103
-                    var this_order = this.dialysis_order
104
-                    for (const key in dialysis_order) {
105
-                        // this.dialysis_order[key] = dialysis_order[key]
106
-                        this.$set(this_order, key, dialysis_order[key])
107
-                    }
108
-
109
-                } else {
110
-                    this.$message.error(resp.msg)
111
-                }
112
-            })
113
-        },
114
-    },
115
-}
128
+          }
129
+        }
130
+
131
+        if (this.dialysis_order.finish_creator > 0) {
132
+            this.creator = this.dialysis_order.finish_creator
133
+        }
134
+
135
+
136
+        console.log(this.creator)
137
+        console.log(this.isPremission)
138
+
139
+
140
+
141
+      },
142
+      hide: function() {
143
+        this.visible = false
144
+      },modifyFinish:function(){
145
+        let ParamsQuery = {};
146
+        ParamsQuery["id"] = this.dialysis_order.id;
147
+        ParamsQuery["nurse"] = this.form.nurse_id;
148
+        ParamsQuery["end_time"] = this.end_time;
149
+        PostModifyFinishDialysis(ParamsQuery).then(response => {
150
+          if (response.data.state == 0) {
151
+            this.$message.error(response.data.msg)
152
+
153
+            return false;
154
+          } else {
155
+            this.$message.success("修改成功")
156
+            var record = this.dialysis_order;
157
+            for (const key in response.data.data.dialysis_order) {
158
+              this.$set(record, key, response.data.data.dialysis_order[key]);
159
+            }
160
+            console.log(response.data.data.after)
161
+            this.$emit('assessmentAfterDislysis', response.data.data.after)
162
+          }
163
+        });
164
+
165
+
166
+      },
167
+      submit: function() {
168
+        this.loading = true
169
+        finishDialysis(this.patient_id, parseTime(this.schedule_date, '{y}-{m}-{d}'), this.end_time, this.form.nurse_id).then(rs => {
170
+          this.loading = false
171
+          var resp = rs.data
172
+          if (resp.state == 1) {
173
+            var dialysis_order = resp.data.dialysis_order
174
+            var this_order = this.dialysis_order
175
+            for (const key in dialysis_order) {
176
+              this.$set(this_order, key, dialysis_order[key])
177
+            }
178
+            this.hide()
179
+            this.$emit('assessmentAfterDislysis', resp.data.assessmentAfterDislysis)
180
+
181
+          } else {
182
+            this.$message.error(resp.msg)
183
+          }
184
+        })
185
+      }, getTime(value, temp) {
186
+        if (value != undefined) {
187
+          return parseTime(value, temp)
188
+        }
189
+        return ''
190
+      }
191
+    }
192
+  }
116 193
 </script>
117 194
 
118 195
 
119 196
 <style scoped>
120
-.txsj{
197
+  .txsj {
121 198
     text-align: center;
122 199
     margin-bottom: 20px;
123
-}
200
+  }
124 201
 </style>

+ 47 - 4
src/xt_pages/dialysis/details/dialog/monitor_dialog.vue Näytä tiedosto

@@ -317,7 +317,7 @@
317 317
 <script>
318 318
   import { parseTime } from '@/utils'
319 319
   import { getDataConfig } from '@/utils/data'
320
-  import { editMonitor, postDelMonitorInfo } from '@/api/dialysis_record'
320
+  import { editMonitor, postDelMonitorInfo,getTodayMonitor } from '@/api/dialysis_record'
321 321
   import store from '@/store'
322 322
 
323 323
 export default {
@@ -331,7 +331,7 @@ export default {
331 331
         patient_id: 0,
332 332
         schedule_date: 0,
333 333
         template_id: 0,
334
-
334
+        isAdd:false,
335 335
         // monitoring_date: 0,
336 336
 
337 337
         form: {
@@ -421,7 +421,45 @@ export default {
421 421
         this.setEditMonitor(null)
422 422
         this.$refs.table.setCurrentRow(null)
423 423
         this.edit = true
424
+        this.isAdd = true
425
+        this.getLastRecordTody()
426
+
427
+      },
428
+      getLastRecordTody () {
429
+        let params = {
430
+          patient_id: this.patient_id
431
+        }
432
+
433
+        getTodayMonitor(params).then(rs => {
434
+          var resp = rs.data.data
435
+          this.form.operate_time = resp.monitor.operate_time  ? (resp.monitor.operate_time + 3600) * 1000 : Date.parse(new Date())
436
+          this.form.pulse_frequency = '' // this.last_monitor_record.pulse_frequency;
437
+          this.form.breathing_rated = resp.monitor.breathing_rate ? resp.monitor.breathing_rate : ''
438
+          this.form.systolic_bp = '' // this.last_monitor_record.systolic_blood_pressure;
439
+          this.form.diastolic_bp = '' // this.last_monitor_record.diastolic_blood_pressure;
440
+          this.form.blood_flow_volume = resp.monitor.blood_flow_volume ? resp.monitor.blood_flow_volume : ''
441
+          this.form.venous_pressure = '' // this.last_monitor_record.venous_pressure;
442
+          this.form.arterial_pressure = '' // this.last_monitor_record.arterial_pressure;
443
+          this.form.transmembrane_pressure = '' // this.last_monitor_record.transmembrane_pressure;
444
+          this.form.ultrafiltration_rate = resp.monitor.ultrafiltration_rate ? resp.monitor.ultrafiltration_rate : ''
445
+          this.form.ultrafiltration_volume = resp.monitor.ultrafiltration_volume ? resp.monitor.ultrafiltration_volume : ''
446
+          this.form.sodium_concentration = resp.monitor.sodium_concentration ? resp.monitor.sodium_concentration : ''
447
+          this.form.dialysate_temperature = resp.monitor.dialysate_temperature  ? resp.monitor.dialysate_temperature : ''
448
+          this.form.temperature = resp.monitor.temperature ? resp.monitor.temperature : ''
449
+          this.form.replacement_rate = resp.monitor.replacement_rate ? resp.monitor.replacement_rate : ''
450
+          this.form.displacement_quantity = '' // this.last_monitor_record.displacement_quantity;
451
+          this.form.conductivity = ''
452
+          this.form.displacement_flow_quantity = ''
453
+
454
+          this.form.ktv = '' // this.last_monitor_record.ktv;
455
+          this.form.symptom = '' // this.last_monitor_record.symptom;
456
+          this.form.dispose = '' // this.last_monitor_record.dispose;
457
+          this.form.result = '' // this.last_monitor_record.result;
458
+
459
+
460
+        })
424 461
       },
462
+
425 463
       modifyRecordAction: function() {
426 464
         if (this.table_current_row == null) {
427 465
           this.$message.error('请选择一条监测记录')
@@ -430,6 +468,7 @@ export default {
430 468
         this.setEditMonitor(this.table_current_row)
431 469
         this.$refs.table.setCurrentRow(null)
432 470
         this.edit = true
471
+        this.isAdd = false
433 472
       },
434 473
       cancelEditAction: function() {
435 474
         this.setEditMonitor(null)
@@ -507,7 +546,7 @@ export default {
507 546
 
508 547
       submitAction: function() {
509 548
         // TODO loading
510
-        var is_new = this.form.id == 0
549
+        var is_new = this.form.id
511 550
         this.form.operate_time = parseInt(this.form.operate_time / 1000)
512 551
         this.form.systolic_bp = parseFloat(this.form.systolic_bp) == NaN ? 0 : parseFloat(this.form.systolic_bp)
513 552
         this.form.diastolic_bp = parseFloat(this.form.diastolic_bp) == NaN ? 0 : parseFloat(this.form.diastolic_bp)
@@ -534,7 +573,8 @@ export default {
534 573
           var resp = rs.data
535 574
           if (resp.state == 1) {
536 575
             var monitor = resp.data.monitor
537
-            if (is_new) {
576
+
577
+            if (this.isAdd) {
538 578
               this.monitors.unshift(monitor)
539 579
             } else {
540 580
               for (let index = 0; index < this.monitors.length; index++) {
@@ -589,6 +629,9 @@ export default {
589 629
           this.result_selecteds = []
590 630
         }
591 631
       },
632
+      setRecords (records) {
633
+        this.monitors = records
634
+      },
592 635
       resultSelectorChange: function() {
593 636
         if (this.result_selecteds.length > 0) {
594 637
           this.form.result = this.result_selecteds.join(',') + ','

+ 1 - 1
src/xt_pages/dialysis/details/dialysisComputer.vue Näytä tiedosto

@@ -1,4 +1,4 @@
1
-<template>
1
+ <template>
2 2
   <div class="plate-box">
3 3
     <h2 class="DetailsTit"><span>{{ title }}</span></h2>
4 4
     <div class="plate " >

+ 48 - 5
src/xt_pages/dialysis/details/index.vue Näytä tiedosto

@@ -8,6 +8,7 @@
8 8
     </div>
9 9
     <div class="details-bg" v-loading.fullscreen.lock="loading">
10 10
       <nav-igation
11
+        ref="nav"
11 12
         title="弹窗导航"
12 13
         @advice="adviceFunc"
13 14
         :patient="patient"
@@ -45,6 +46,16 @@
45 46
         :longAdvices="longAdvices"
46 47
         :waitUploadAdvices="waitUploadAdvices"
47 48
         :is_open="is_open"
49
+        :last_predialysis_evaluation = "lastPredialysisEvaluation"
50
+        :last_monitor_record = "lastMonitorRecord"
51
+        :last_assessment_after_dislysis = "lastAssessmentAfterDislysis"
52
+        :last_dialysis_prescribe = "lastDialysisPrescribe"
53
+        :last_dryWeight_dislysis = "lastDryWeightDislysis"
54
+        :special_premission = "headNurses"
55
+        @assessmentAfterDislysis="assessmentAfterDislysisFunc"
56
+
57
+
58
+
48 59
       >
49 60
       </nav-igation>
50 61
 
@@ -322,7 +333,15 @@
322 333
         tubingHemodialysis_info: [],
323 334
         safe_package_info: [],
324 335
         aliquid_info: [],
325
-        config: {}
336
+        config: {},
337
+
338
+        lastPredialysisEvaluation:{id: 0},
339
+        lastMonitorRecord:{id: 0},
340
+        lastAssessmentAfterDislysis:{id: 0},
341
+        lastDryWeightDislysis:{id: 0},
342
+        headNurses:[],
343
+        lastDialysisPrescribe:{id:0}
344
+
326 345
       }
327 346
     },
328 347
     created() {
@@ -358,7 +377,7 @@
358 377
 
359 378
         steps[4].finish = this.double_check.id > 0 && this.double_check.creater > 0 && this.double_check.modifier > 0
360 379
         steps[6].finish = this.monitor_records.length > 0
361
-        steps[8].finish = this.assessment_after_dislysis.id > 0
380
+        steps[8].finish = this.assessment_after_dislysis.id > 0 && this.assessment_after_dislysis.creater > 0
362 381
         steps[9].finish = this.treatment_summary.id > 0
363 382
 
364 383
         return steps
@@ -428,6 +447,10 @@
428 447
           this.loading = false
429 448
         })
430 449
 
450
+      },assessmentAfterDislysisFunc:function(val){
451
+        for (var index in val) {
452
+          this.$set(this.assessment_after_dislysis, index, val[index])
453
+        }
431 454
       },
432 455
       didDelMonitor(record_id) {
433 456
         var mrl = this.monitor_records.length
@@ -446,14 +469,11 @@
446 469
           var resp = rs.data
447 470
           if (resp.state == 1) {
448 471
             var patient = resp.data.patient // 患者信息
449
-            console.log('patient是史森明', patient)
450 472
             var schedual = resp.data.schedual // 患者排班信息
451 473
             var prescription = resp.data.prescription // 透析处方
452
-            console.log('prescription', prescription)
453 474
             var solution = resp.data.solution // 透析方案
454 475
             var receiver_treatment_access = resp.data.receiver_treatment_access // 接诊评估
455 476
             var predialysis_evaluation = resp.data.predialysis_evaluation // 透前评估
456
-            console.log('predialysis_evaluation', predialysis_evaluation)
457 477
             var doctor_advices = resp.data.doctor_advices // 临时医嘱
458 478
             var double_check = resp.data.double_check // 双人核对
459 479
             var assessment_after_dislysis = resp.data.assessment_after_dislysis // 透后评估
@@ -475,7 +495,30 @@
475 495
             var safe_package_info = resp.data.safe_package_info
476 496
             var aliquid_info = resp.data.aliquid_info
477 497
 
498
+
499
+            var lastPredialysisEvaluation = resp.data.lastPredialysisEvaluation
500
+            var lastMonitorRecord = resp.data.lastMonitorRecord
501
+            var lastAssessmentAfterDislysis = resp.data.lastAssessmentAfterDislysis
502
+            var lastDialysisPrescribe = resp.data.lastDialysisPrescribe
503
+            var lastDryWeightDislysis = resp.data.lastDryWeightDislysis
504
+
505
+
506
+            this.$refs.nav.setLastRecord(lastPredialysisEvaluation,lastMonitorRecord,lastAssessmentAfterDislysis,lastDialysisPrescribe,lastDryWeightDislysis)
507
+
508
+
509
+
510
+
511
+            var headNurses = resp.data.headNurse
512
+
513
+
478 514
             var config = resp.data.config
515
+            this.lastPredialysisEvaluation = lastPredialysisEvaluation
516
+            this.lastMonitorRecord = lastMonitorRecord
517
+            this.lastAssessmentAfterDislysis = lastAssessmentAfterDislysis
518
+            this.lastDialysisPrescribe = lastDialysisPrescribe
519
+            this.lastDryWeightDislysis = lastDryWeightDislysis
520
+            this.headNurses = headNurses
521
+
479 522
 
480 523
             this.niprocart_info = niprocart_info
481 524
             this.jms_info = jms_info

+ 4 - 1
src/xt_pages/dialysis/dialysisPage.vue Näytä tiedosto

@@ -3446,7 +3446,10 @@ import { getDataConfig } from '@/utils/data'
3446 3446
       },
3447 3447
       // 医嘱相关
3448 3448
       getAdviceConfig() {
3449
-        getAdviceConfig().then(response => {
3449
+        let params = { //医嘱类型 0临时医嘱模版   1长期医嘱模版
3450
+          type: 0
3451
+        }
3452
+        getAdviceConfig(params.type).then(response => {
3450 3453
           if (response.data.state == 1) {
3451 3454
             this.deliveryWayOptions = response.data.data.drugways
3452 3455
             this.executionFrequencyOptions = response.data.data.efs

+ 150 - 138
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue Näytä tiedosto

@@ -21,27 +21,27 @@
21 21
         </div>
22 22
         <div class="inline_block">
23 23
           门诊:
24
-            <div class="under_line" style="width: 30px;text-align: center;">
25
-                <check-box  :checked="patientInfo_source_1 "></check-box>
26
-            </div>
24
+          <div class="under_line" style="width: 30px;text-align: center;">
25
+            <check-box  :checked="patientInfo_source_1 "></check-box>
26
+          </div>
27 27
         </div>
28 28
         <div class="inline_block">
29 29
           病区:
30
-            <div class="under_line" style="width: 50px;text-align: center;">
31
-                {{'/'}}
32
-            </div>
30
+          <div class="under_line" style="width: 50px;text-align: center;">
31
+            {{'/'}}
32
+          </div>
33 33
         </div>
34 34
         <div class="inline_block">
35 35
           床号:
36
-            <div class="under_line" style="width: 50px;text-align: center;">
37
-                {{'/'}}
38
-            </div>
36
+          <div class="under_line" style="width: 50px;text-align: center;">
37
+            {{'/'}}
38
+          </div>
39 39
         </div>
40 40
         <div class="inline_block">
41 41
           透析号:
42
-            <div class="under_line" style="width: 70px;text-align: center;">
43
-              {{patientInfo.dialysis_no}}
44
-            </div>
42
+          <div class="under_line" style="width: 70px;text-align: center;">
43
+            {{patientInfo.dialysis_no}}
44
+          </div>
45 45
         </div>
46 46
         <div class="inline_block" style="margin-left: 5px;">
47 47
           住院号/门诊号:
@@ -145,95 +145,95 @@
145 145
                     </div>
146 146
                   </div>
147 147
 
148
-                  <div class="inline_block" style="margin-left:10px;flex:1;">
149
-                    导管:
150
-                    <div class="under_line" style="width: 150px;text-align: center">
151
-                      {{predialysis.catheter?predialysis.catheter:'/'}}
152
-                    </div>
148
+                <div class="inline_block" style="margin-left:10px;flex:1;">
149
+                  导管:
150
+                  <div class="under_line" style="width: 150px;text-align: center">
151
+                    {{predialysis.catheter?predialysis.catheter:'/'}}
153 152
                   </div>
154
-                  <div class="inline_block" style="margin-left:10px;flex:1;">
155
-                    穿刺方式:
156
-                    <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 0">
157
-                      /
158
-                    </div>
159
-                    <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 1">
160
-                      绳梯
161
-                    </div>
162
-                    <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 2">
163
-                      扣眼
164
-                    </div>
165
-                    <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 3">
166
-                      区域
167
-                    </div>
153
+                </div>
154
+                <div class="inline_block" style="margin-left:10px;flex:1;">
155
+                  穿刺方式:
156
+                  <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 0">
157
+                    /
168 158
                   </div>
169
-                  <div class="inline_block" style="margin-left:10px;flex:1;">
170
-                    穿刺针:
171
-                    <div class="under_line" style="width: 100px;text-align: center">
172
-                      {{predialysis.puncture_needle?predialysis.puncture_needle:'/'}}
173
-                    </div>
159
+                  <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 1">
160
+                    绳梯
161
+                  </div>
162
+                  <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 2">
163
+                    扣眼
164
+                  </div>
165
+                  <div class="under_line" style="width: 100px;text-align: center" v-if="predialysis.puncture_way == 3">
166
+                    区域
174 167
                   </div>
175 168
                 </div>
176
-                <div class="row" style="padding: 2px 0;line-height:23px;display:flex;">
177
-                  <div class="inline_block" style="flex:1;">
178
-                    透析方式:
179
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="!prescription.mode_id">
180
-                      /
181
-                    </div>
182
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==1">
183
-                      HD
184
-                    </div>
185
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==2">
186
-                      HDF
187
-                    </div>
188
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==3">
189
-                      HD+HP
190
-                    </div>
191
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==4">
192
-                      HP
193
-                    </div>
194
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==5">
195
-                      HF
196
-                    </div>
197
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==6">
198
-                      SCUF
199
-                    </div>
200
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==7">
201
-                      IUF
202
-                    </div>
203
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==8">
204
-                      HFHD
205
-                    </div>
206
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==9">
207
-                      HFHD+HP
208
-                    </div>
209
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==10">
210
-                      PHF
211
-                    </div>
212
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==11">
213
-                      HFR
214
-                    </div>
215
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==12">
216
-                      HDF+HP
217
-                    </div>
218
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==13">
219
-                      CRRT
220
-                    </div>
221
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==14">
222
-                      腹水回输
223
-                    </div>
224
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==15">
225
-                      HD前置换
226
-                    </div>
227
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==16">
228
-                      HD后置换
229
-                    </div>
230
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==17">
231
-                      HDF前置换
232
-                    </div>
233
-                    <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==18">
234
-                      HDF后置换
235
-                    </div>
169
+                <div class="inline_block" style="margin-left:10px;flex:1;">
170
+                  穿刺针:
171
+                  <div class="under_line" style="width: 100px;text-align: center">
172
+                    {{predialysis.puncture_needle?predialysis.puncture_needle:'/'}}
236 173
                   </div>
174
+                </div>
175
+              </div>
176
+              <div class="row" style="padding: 2px 0;line-height:23px;display:flex;">
177
+                <div class="inline_block" style="flex:1;">
178
+                  透析方式:
179
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="!prescription.mode_id">
180
+                    /
181
+                  </div>
182
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==1">
183
+                    HD
184
+                  </div>
185
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==2">
186
+                    HDF
187
+                  </div>
188
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==3">
189
+                    HD+HP
190
+                  </div>
191
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==4">
192
+                    HP
193
+                  </div>
194
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==5">
195
+                    HF
196
+                  </div>
197
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==6">
198
+                    SCUF
199
+                  </div>
200
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==7">
201
+                    IUF
202
+                  </div>
203
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==8">
204
+                    HFHD
205
+                  </div>
206
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==9">
207
+                    HFHD+HP
208
+                  </div>
209
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==10">
210
+                    PHF
211
+                  </div>
212
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==11">
213
+                    HFR
214
+                  </div>
215
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==12">
216
+                    HDF+HP
217
+                  </div>
218
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==13">
219
+                    CRRT
220
+                  </div>
221
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==14">
222
+                    腹水回输
223
+                  </div>
224
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==15">
225
+                    HD前置换
226
+                  </div>
227
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==16">
228
+                    HD后置换
229
+                  </div>
230
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==17">
231
+                    HDF前置换
232
+                  </div>
233
+                  <div class="under_line" style="width: 100px;text-align: center;font-weight:600;" v-if="prescription.mode_id==18">
234
+                    HDF后置换
235
+                  </div>
236
+                </div>
237 237
 
238 238
                   <div class="inline_block" style="margin-left:10px;flex:1;">
239 239
                     置换方式:
@@ -339,58 +339,70 @@
339 339
                   </div>
340 340
                   <div class="inline_block" style="margin-left:10px;">
341 341
                   流量:
342
-                    <div class="under_line" style="width: 50px;text-align: center;">
343
-                      {{prescription.dialysate_flow?prescription.dialysate_flow:'/'}}
344
-                    </div>
345
-                    ml/min
342
+                  <div class="under_line" style="width: 50px;text-align: center;">
343
+                    {{prescription.dialysate_flow?prescription.dialysate_flow:'/'}}
346 344
                   </div>
345
+                  ml/min
347 346
                 </div>
348
-                <div class="row" style="padding: 2px 0;line-height:23px;">
349
-                  <div class="inline_block" >
350
-                    抗凝剂:
351
-                    <div class="under_line" style="width: 150px;text-align: center">
352
-                      {{prescription.anticoagulant_name?prescription.anticoagulant_name:'/'}}
353
-                    </div>
347
+              </div>
348
+              <div class="row" style="padding: 2px 0;line-height:23px;">
349
+                <div class="inline_block" >
350
+                  抗凝剂:
351
+                  <div class="under_line" style="width: 150px;text-align: center">
352
+                    {{prescription.anticoagulant_name?prescription.anticoagulant_name:'/'}}
354 353
                   </div>
355
-                  <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant != 5">
356
-                    首剂:
357
-                    <div class="under_line" style="width: 50px;text-align: center;">
358
-                      {{prescription.anticoagulant_shouji?prescription.anticoagulant_shouji:'/'}}
359
-                    </div>
360
-                    lu
354
+                </div>
355
+                <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant != 5">
356
+                  首剂:
357
+                  <div class="under_line" style="width: 50px;text-align: center;">
358
+                    {{prescription.anticoagulant_shouji?prescription.anticoagulant_shouji:'/'}}
361 359
                   </div>
362
-                  <div class="inline_block" style="margin-left:20px;">
360
+                  <span v-if="prescription.anticoagulant == 4">mg</span>
361
+                  <span v-if="prescription.anticoagulant == 3">iu</span>
362
+                  <span v-if="prescription.anticoagulant == 2">iu</span>
363
+                  <span v-if="prescription.anticoagulant == 1">mg</span>
364
+
365
+                </div>
366
+                <div class="inline_block" style="margin-left:20px;">
363 367
                   维持:
364
-                    <div v-if="prescription.anticoagulant == 1"  class="under_line" style="width: 50px;text-align: center;">
365
-                      {{prescription.anticoagulant_weichi?prescription.anticoagulant_weichi:"/"}}
366
-                    </div>
367
-                    <div v-if="prescription.anticoagulant != 1"  class="under_line" style="width: 50px;text-align: center;">
368
-                      {{prescription.anticoagulant_weichi?prescription.anticoagulant_weichi:"0"}}
369
-                    </div>
370
-                    <span v-if="prescription.anticoagulant != 5">lu</span>
371
-                    <span v-if="prescription.anticoagulant == 5">ml/h</span>
368
+                  <div v-if="prescription.anticoagulant == 1"  class="under_line" style="width: 50px;text-align: center;">
369
+                    {{prescription.anticoagulant_weichi?prescription.anticoagulant_weichi:"/"}}
372 370
                   </div>
373
-                  <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant == 5">
374
-                    钙名称:
375
-                    <div class="under_line" style="width: 150px;text-align: center;">
376
-                      {{prescription.anticoagulant_gaimingcheng?prescription.anticoagulant_gaimingcheng:'/'}}
377
-                    </div>
371
+                  <div v-if="prescription.anticoagulant != 1"  class="under_line" style="width: 50px;text-align: center;">
372
+                    {{prescription.anticoagulant_weichi?prescription.anticoagulant_weichi:"0"}}
378 373
                   </div>
379
-                  <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant == 5">
380
-                    钙剂量:
381
-                    <div class="under_line" style="width: 50px;text-align: center;">
382
-                      {{prescription.anticoagulant_gaijiliang?prescription.anticoagulant_gaijiliang:'/'}}
383
-                    </div>
384
-                    ml/h
374
+                  <span v-if="prescription.anticoagulant == 5">ml/h</span>
375
+                  <span v-if="prescription.anticoagulant == 4">mg/h</span>
376
+                  <span v-if="prescription.anticoagulant == 3">iu/h</span>
377
+                  <span v-if="prescription.anticoagulant == 2">iu/h</span>
378
+                  <span v-if="prescription.anticoagulant == 1">mg/h</span>
379
+
380
+                </div>
381
+                <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant == 5">
382
+                  钙名称:
383
+                  <div class="under_line" style="width: 150px;text-align: center;">
384
+                    {{prescription.anticoagulant_gaimingcheng?prescription.anticoagulant_gaimingcheng:'/'}}
385
+                  </div>
386
+                </div>
387
+                <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant == 5">
388
+                  钙剂量:
389
+                  <div class="under_line" style="width: 50px;text-align: center;">
390
+                    {{prescription.anticoagulant_gaijiliang?prescription.anticoagulant_gaijiliang:'/'}}
385 391
                   </div>
386
-                  <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant != 5">
392
+                  ml
393
+                </div>
394
+                <div class="inline_block" style="margin-left:20px;" v-if="prescription.anticoagulant != 5">
387 395
                   总量:
388
-                    <div class="under_line" style="width: 50px;text-align: center;">
389
-                      {{prescription.anticoagulant_zongliang?prescription.anticoagulant_zongliang:'/'}}
390
-                    </div>
391
-                    lu
396
+                  <div class="under_line" style="width: 50px;text-align: center;">
397
+                    {{prescription.anticoagulant_zongliang?prescription.anticoagulant_zongliang:'/'}}
392 398
                   </div>
393
-                  <div class="inline_block" style="margin-left:20px;">
399
+                  <span v-if="prescription.anticoagulant == 4">mg</span>
400
+                  <span v-if="prescription.anticoagulant == 3">iu</span>
401
+                  <span v-if="prescription.anticoagulant == 2">iu</span>
402
+                  <span v-if="prescription.anticoagulant == 1">mg</span>
403
+
404
+                </div>
405
+                <div class="inline_block" style="margin-left:20px;">
394 406
                   透析机号:
395 407
                   <div class="under_line" style="width: 50px;text-align: center;">
396 408
                     {{dialysisOrder&&dialysisOrder.DeviceNumber&&dialysisOrder.DeviceNumber.number.length > 0?dialysisOrder.DeviceNumber.number:patientInfo.DialysisSchedule.device_number.number}}

+ 0 - 41
src/xt_pages/home/index.vue Näytä tiedosto

@@ -113,47 +113,6 @@
113 113
           ></el-pagination>
114 114
         </div>
115 115
 
116
-        <el-button type="text" @click="dialogVisible = true">点击打开 Dialog</el-button>
117
-
118
-        <el-dialog title="病人姓名" :visible.sync="dialogVisible" width="30%">
119
-          <div class="newLine">
120
-            <span>本次透析日期</span>
121
-            <span>123</span>
122
-          </div>
123
-          <div class="newLine">
124
-            <span>透前体重(kg)</span>
125
-            <span>123</span>
126
-          </div>
127
-          <div class="newLine">
128
-            <span>干体重(kg)</span>
129
-            <span>123</span>
130
-          </div>
131
-          <div class="newLine">
132
-            <span>衣物重(kg)</span>
133
-            <span>123</span>
134
-          </div>
135
-          <div class="newLine">
136
-            <span>体重增加(kg)</span>
137
-            <span>123</span>
138
-          </div>
139
-          <div class="newLine">
140
-            <span>透后体重(kg)</span>
141
-            <span>123</span>
142
-          </div>
143
-          <div class="newLine">
144
-            <span>体重减少(kg)</span>
145
-            <span>123</span>
146
-          </div>
147
-          <div class="newLine">
148
-            <span>上次透后体重(kg)</span>
149
-            <span>123</span>
150
-          </div>
151
-
152
-          <span slot="footer" class="dialog-footer">
153
-            <el-button @click="dialogVisible = false">取 消</el-button>
154
-            <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
155
-          </span>
156
-        </el-dialog>
157 116
       </div>
158 117
     </section>
159 118
   </div>

+ 294 - 174
src/xt_pages/management/components/ManageForm.vue Näytä tiedosto

@@ -1,17 +1,29 @@
1 1
 <template>
2 2
   <div id="manage-form">
3
-    <el-dialog title="新增设备" :visible.sync="dialogVisible" width="50%" align="center">
3
+    <el-dialog
4
+      title="新增设备"
5
+      :visible.sync="dialogVisible"
6
+      width="52%"
7
+      align="center"
8
+    >
4 9
       <el-form ref="form" :model="form" :rules="rules">
5 10
         <el-row>
6 11
           <el-col :span="8">
7 12
             <el-form-item label="序列号:" required prop="serial_number">
8
-              <el-input style="width:135px" v-model="form.serial_number"></el-input>
13
+              <el-input
14
+                style="width:135px"
15
+                v-model="form.serial_number"
16
+              ></el-input>
9 17
             </el-form-item>
10 18
           </el-col>
11 19
 
12 20
           <el-col :span="8">
13 21
             <el-form-item label="设备类型:" required prop="device_type">
14
-              <el-select style="width:135px" v-model="form.device_type" @change="changeDeviceType">
22
+              <el-select
23
+                style="width:135px"
24
+                v-model="form.device_type"
25
+                @change="changeDeviceType"
26
+              >
15 27
                 <el-option
16 28
                   v-for="item in this.DeviceType"
17 29
                   :key="item.id"
@@ -23,12 +35,17 @@
23 35
           </el-col>
24 36
 
25 37
           <el-col :span="8">
26
-            <el-form-item label="机位号:" required prop="bed_number" v-show="bedShow">
38
+            <el-form-item
39
+              label="机位号:"
40
+              required
41
+              prop="bed_number"
42
+              v-show="bedShow"
43
+            >
27 44
               <el-select style="width:135px" v-model="form.bed_number">
28 45
                 <el-option
29 46
                   v-for="item in this.bedNumber"
30 47
                   :key="item.id"
31
-                  :label="item.zone_name + item.number"
48
+                  :label="item.number"
32 49
                   :value="item.id"
33 50
                 ></el-option>
34 51
               </el-select>
@@ -38,17 +55,26 @@
38 55
         <el-row>
39 56
           <el-col :span="8">
40 57
             <el-form-item label="设备名称:" required prop="device_name">
41
-              <el-input style="width:135px" v-model="form.device_name"></el-input>
58
+              <el-input
59
+                style="width:135px"
60
+                v-model="form.device_name"
61
+              ></el-input>
42 62
             </el-form-item>
43 63
           </el-col>
44 64
           <el-col :span="8">
45 65
             <el-form-item label="生产厂家:" prop="manufacture_factory">
46
-              <el-input style="width:135px" v-model="form.manufacture_factory"></el-input>
66
+              <el-input
67
+                style="width:135px"
68
+                v-model="form.manufacture_factory"
69
+              ></el-input>
47 70
             </el-form-item>
48 71
           </el-col>
49 72
           <el-col :span="8">
50 73
             <el-form-item label="维修厂家:" prop="service_manufacturer">
51
-              <el-input style="width:135px" v-model="form.service_manufacturer"></el-input>
74
+              <el-input
75
+                style="width:135px"
76
+                v-model="form.service_manufacturer"
77
+              ></el-input>
52 78
             </el-form-item>
53 79
           </el-col>
54 80
         </el-row>
@@ -60,12 +86,18 @@
60 86
           </el-col>
61 87
           <el-col :span="8">
62 88
             <el-form-item label="使用科室:" prop="use_section">
63
-              <el-input style="width:135px" v-model="form.use_section"></el-input>
89
+              <el-input
90
+                style="width:135px"
91
+                v-model="form.use_section"
92
+              ></el-input>
64 93
             </el-form-item>
65 94
           </el-col>
66 95
           <el-col :span="8">
67 96
             <el-form-item label="科室编号:" prop="section_number">
68
-              <el-input style="width:135px" v-model="form.section_number"></el-input>
97
+              <el-input
98
+                style="width:135px"
99
+                v-model="form.section_number"
100
+              ></el-input>
69 101
             </el-form-item>
70 102
           </el-col>
71 103
         </el-row>
@@ -79,7 +111,7 @@
79 111
                 placeholder="请选择"
80 112
                 format="yyyy-MM-dd"
81 113
                 value-format="yyyy-MM-dd"
82
-                style="width:135px"
114
+                style="width:140px"
83 115
               ></el-date-picker>
84 116
             </el-form-item>
85 117
           </el-col>
@@ -92,7 +124,7 @@
92 124
                 placeholder="请选择"
93 125
                 format="yyyy-MM-dd"
94 126
                 value-format="yyyy-MM-dd"
95
-                style="width:135px"
127
+                style="width:140px"
96 128
               ></el-date-picker>
97 129
             </el-form-item>
98 130
           </el-col>
@@ -105,7 +137,7 @@
105 137
                 placeholder="请选择"
106 138
                 format="yyyy-MM-dd"
107 139
                 value-format="yyyy-MM-dd"
108
-                style="width:135px"
140
+                style="width:140px"
109 141
               ></el-date-picker>
110 142
             </el-form-item>
111 143
           </el-col>
@@ -113,7 +145,10 @@
113 145
         <el-row>
114 146
           <el-col :span="8">
115 147
             <el-form-item label="维修工程师:" prop="maintenance_engineer">
116
-              <el-input style="width:135px" v-model="form.maintenance_engineer"></el-input>
148
+              <el-input
149
+                style="width:135px"
150
+                v-model="form.maintenance_engineer"
151
+              ></el-input>
117 152
             </el-form-item>
118 153
           </el-col>
119 154
           <el-col :span="8">
@@ -123,7 +158,10 @@
123 158
           </el-col>
124 159
           <el-col :span="8">
125 160
             <el-form-item label="保修期限:" prop="guarantee_date">
126
-              <el-input style="width:135px" v-model="form.guarantee_date"></el-input>
161
+              <el-input
162
+                style="width:135px"
163
+                v-model="form.guarantee_date"
164
+              ></el-input>
127 165
             </el-form-item>
128 166
           </el-col>
129 167
         </el-row>
@@ -145,8 +183,15 @@
145 183
             </el-form-item>
146 184
           </el-col>
147 185
           <el-col :span="8">
148
-            <el-form-item label="初次使用次数:" prop="user_total" v-show="totalShow">
149
-              <el-input v-model="form.user_total" style="width:135px"></el-input>
186
+            <el-form-item
187
+              label="初次使用次数:"
188
+              prop="user_total"
189
+              v-show="totalShow"
190
+            >
191
+              <el-input
192
+                v-model="form.user_total"
193
+                style="width:135px"
194
+              ></el-input>
150 195
             </el-form-item>
151 196
           </el-col>
152 197
           <el-col :span="8" v-show="DisinfectionShow">
@@ -223,8 +268,22 @@
223 268
         </el-row>
224 269
         <el-row>
225 270
           <el-col :span="24">
226
-            <el-form-item label="治疗模式:" prop="treat_mode" v-show="treatShow">
227
-              <el-checkbox-group v-model="form.treat_mode" @change="changetreatmentmode">
271
+            <el-form-item
272
+              label="治疗模式:"
273
+              prop="treat_mode"
274
+              v-show="treatShow"
275
+            >
276
+              <el-checkbox-group
277
+                v-model="form.treat_mode"
278
+                @change="changetreatmentmode"
279
+              >
280
+                <!-- <el-checkbox
281
+                  style="min-width:50px"
282
+                  v-for="item in treatmentmode"
283
+                  :key="item.id"
284
+                  :label="item.name"
285
+                  :value="item.id"
286
+                ></el-checkbox> -->
228 287
                 <el-checkbox
229 288
                   style="min-width:50px"
230 289
                   v-for="item in treatmentmode"
@@ -242,115 +301,121 @@
242 301
               :indeterminate="isIndeterminate"
243 302
               v-model="checkAll"
244 303
               @change="handleCheckAllChange"
245
-            >全选</el-checkbox>
304
+              >全选</el-checkbox
305
+            >
246 306
           </el-col>
247 307
         </el-row>
248 308
       </el-form>
249 309
       <span slot="footer" class="dialog-footer">
250 310
         <el-button @click="dialogVisible = false">取 消</el-button>
251
-        <el-button type="primary" @click="SaveManageInfo('form')">保存</el-button>
311
+        <el-button type="primary" @click="SaveManageInfo('form')"
312
+          >保存</el-button
313
+        >
252 314
       </span>
253 315
     </el-dialog>
254 316
   </div>
255 317
 </template>
256 318
 
257 319
 <script>
258
-import { getAllSubregion, SaveManageInfo } from "@/api/manage";
320
+import { getAllSubregion, SaveManageInfo } from '@/api/manage'
259 321
 const treatmentmodes = [
260
-  "HD",
261
-  "HDF",
262
-  "HD+HP",
263
-  "HP",
264
-  "HF",
265
-  "SCUF",
266
-  "IUF",
267
-  "HFHD+HP",
268
-  "HFR",
269
-  "HDF+HP",
270
-  "GRRT",
271
-  "腹水回收"
272
-];
322
+  'HD',
323
+  'HDF',
324
+  'HD+HP',
325
+  'HP',
326
+  'HF',
327
+  'SCUF',
328
+  'IUF',
329
+  'HFHD',
330
+  'HFHD+HP',
331
+  'PHF',
332
+  'HFR',
333
+  'HDF+HP',
334
+  'CRRT',
335
+  '腹水回输'
336
+]
273 337
 export default {
274
-  name: "ManageForm",
338
+  name: 'ManageForm',
275 339
   data() {
276 340
     return {
277 341
       dialogVisible: false,
278
-      // treatmentmode: [
279
-      //   { id: 1, name: 'HD' },
280
-      //   { id: 2, name: 'HDF' },
281
-      //   { id: 3, name: 'HD+HP' },
282
-      //   { id: 4, name: 'HP' },
283
-      //   { id: 5, name: 'HF' },
284
-      //   { id: 6, name: 'SCUF' },
285
-      //   { id: 7, name: 'IUF' },
286
-      //   { id: 8, name: 'HFHD+HP' },
287
-      //   { id: 9, name: 'HFR' },
288
-      //   { id: 10, name: 'HDF+HP' },
289
-      //   { id: 11, name: 'GRRT' },
290
-      //   { id: 12, name: '腹水回收' }
291
-      // ],
292
-      checked1: "",
342
+      checked1: '',
293 343
       form: {
294
-        serial_number: "", // 序列号
344
+        serial_number: '', // 序列号
295 345
         device_type: 1, // 设备类型
296
-        bed_number: "", // 床位号
297
-        device_name: "", // 设备名称
298
-        manufacture_factory: "", // 生产厂家
299
-        service_manufacturer: "", // 维修厂家
300
-        unit_type: "", // 设备型号
301
-        use_section: "", // 使用科室
302
-        section_number: "", // 科室编号
303
-        buy_date: "", // 购买日期
304
-        install_date: "", // 安装日期
305
-        start_date: "", // 启用日期
306
-        maintenance_engineer: "", // 维修工程师
307
-        telephone: "", // 联系电话
308
-        guarantee_date: "", // 保修日期
346
+        bed_number: '', // 床位号
347
+        device_name: '', // 设备名称
348
+        manufacture_factory: '', // 生产厂家
349
+        service_manufacturer: '', // 维修厂家
350
+        unit_type: '', // 设备型号
351
+        use_section: '', // 使用科室
352
+        section_number: '', // 科室编号
353
+        buy_date: '', // 购买日期
354
+        install_date: '', // 安装日期
355
+        start_date: '', // 启用日期
356
+        maintenance_engineer: '', // 维修工程师
357
+        telephone: '', // 联系电话
358
+        guarantee_date: '', // 保修日期
309 359
         machine_status: 1, // 机器状态
310
-        user_total: "", // 初次使用次数
311
-        Disinfection_mode: "", // 消毒方式
312
-        remarks: "", // 备注
313
-        rubbish_date: "", // 报废日期
314
-        rubbish_reason: "", // 报废原因
315
-        user_year: "", // 使用年限
316
-        work_time: "", // 工作时长
317
-        revers_mode: "", // 反渗模式
360
+        user_total: '', // 初次使用次数
361
+        Disinfection_mode: '', // 消毒方式
362
+        remarks: '', // 备注
363
+        rubbish_date: '', // 报废日期
364
+        rubbish_reason: '', // 报废原因
365
+        user_year: '', // 使用年限
366
+        work_time: '', // 工作时长
367
+        revers_mode: '', // 反渗模式
318 368
         treat_mode: [],
319 369
         treat_type: [] // 治疗模式
320 370
       },
371
+      fucks: [
372
+        { id: 1, name: 'zs' },
373
+        { id: 2, name: 'ls' },
374
+        { id: 3, name: 'ww' }
375
+      ],
321 376
       deviceType: [],
322 377
       bedNumber: [],
323 378
       machineStatus: [
324
-        { id: 1, name: "使用机" },
325
-        { id: 2, name: "备用机" },
326
-        { id: 3, name: "急诊机" },
327
-        { id: 4, name: "报废机" }
379
+        { id: 1, name: '使用机' },
380
+        { id: 2, name: '备用机' },
381
+        { id: 3, name: '急诊机' },
382
+        { id: 4, name: '报废机' }
328 383
       ],
329 384
       DisinfectionMode: [
330
-        { id: 1, name: "化学消毒" },
331
-        { id: 2, name: "热消毒" },
332
-        { id: 3, name: "化学消毒+热消毒" }
385
+        { id: 1, name: '化学消毒' },
386
+        { id: 2, name: '热消毒' },
387
+        { id: 3, name: '化学消毒+热消毒' }
333 388
       ],
334 389
       DisCardResion: [
335
-        { id: 1, name: "超期限报废" },
336
-        { id: 2, name: "故障报废" },
337
-        { id: 3, name: "核定报废" }
390
+        { id: 0, name: '请选择' },
391
+        { id: 1, name: '超期限报废' },
392
+        { id: 2, name: '故障报废' },
393
+        { id: 3, name: '核定报废' }
338 394
       ],
339 395
       checkAll: false,
340 396
       isIndeterminate: true,
341 397
       treatmentmode: treatmentmodes,
398
+      // treatmentmode: [
399
+      //   { id: 1, name: 'zs' },
400
+      //   { id: 2, name: 'ls' },
401
+      //   { id: 3, name: 'ww' }
402
+      // ],
342 403
       DeviceType: [
343
-        { id: 1, name: "透析机" },
344
-        { id: 2, name: "水处理机" },
345
-        { id: 3, name: "其他" }
404
+        { id: 1, name: '透析机' },
405
+        { id: 2, name: '水处理机' },
406
+        { id: 3, name: '其他' }
407
+      ],
408
+      reverseMode: [
409
+        { id: 1, name: '单级反渗' },
410
+        { id: 2, name: '双级反渗' }
346 411
       ],
347
-      reverseMode: [{ id: 1, name: "单级反渗" }, { id: 2, name: "双级反渗" }],
348 412
       rules: {
349
-        serial_number: [{ required: true, message: "请填写序列号" }],
350
-        device_name: [{ required: true, message: "请填写序列号" }],
351
-        device_type: [{ required: true, message: "请填写设备类型" }],
352
-        unit_type: [{ required: true, message: "请填写设备型号" }],
353
-        bed_number: [{ required: true, message: "请填写机位号" }]
413
+        serial_number: [{ required: true, message: '请填写序列号' }],
414
+        device_name: [{ required: true, message: '请填写设备名称' }],
415
+        device_type: [{ required: true, message: '请填写设备类型' }],
416
+        unit_type: [{ required: true, message: '请填写设备型号' }],
417
+        bed_number: [{ required: true, message: '请填写机位号' }]
418
+        // treat_mode: [{ required: true, message: "请选择至少一种治疗模式" }]
354 419
       },
355 420
       DisinfectionShow: false,
356 421
       reverseShow: false,
@@ -359,141 +424,196 @@ export default {
359 424
       totalShow: true,
360 425
       bedShow: true,
361 426
       disa: true
362
-    };
427
+    }
363 428
   },
364 429
   methods: {
365 430
     open: function() {
366
-      this.dialogVisible = true;
431
+      this.dialogVisible = true
367 432
       // this.resetForm("form");
368 433
     },
369 434
     changetreatmentmode(val) {
370
-      const checkedCount = val.length;
371
-      this.checkAll = checkedCount === this.treatmentmode.length;
372
-      this.isIndeterminate =
373
-        checkedCount > 0 && checkedCount < this.treatmentmode.length;
435
+      // console.log('val是什么-------------------', val)
436
+      const checkedCount = val.length
437
+      this.checkAll = checkedCount === 14
438
+      this.isIndeterminate = checkedCount > 0 && checkedCount < 14
374 439
     },
375 440
     handleCheckAllChange(val) {
376
-      this.form.treat_mode = val ? this.treatmentmode : [];
377
-      this.isIndeterminate = false;
441
+      console.log('val=================', val)
442
+      console.log('是什么', this.form.treat_mode)
443
+      console.log('hh', this.treatmentmode)
444
+      this.form.treat_mode = val ? this.treatmentmode : []
445
+      this.isIndeterminate = false
378 446
     },
379 447
     getAllSubregion() {
380 448
       getAllSubregion().then(response => {
381 449
         if (response.data.state === 1) {
382
-          var zones = response.data.data.zones;
383
-          this.deviceType = zones;
384
-          var numbers = response.data.data.numbers;
385
-          this.bedNumber = numbers;
450
+          var zones = response.data.data.zones
451
+          this.deviceType = zones
452
+          var numbers = response.data.data.numbers
453
+          var devicenumber = response.data.data.devicenumber
454
+          var device = [{ id: 0, number: '请选择' }]
455
+          for (let index = 0; index < devicenumber.length; index++) {
456
+            const item = devicenumber[index]
457
+            device.push({ id: item.id, number: item.number })
458
+          }
459
+          this.bedNumber = device
386 460
         }
387
-      });
461
+      })
388 462
     },
463
+
389 464
     changeDeviceType(val) {
390 465
       if (val === 1) {
391
-        this.bedShow = true;
392
-        this.totalShow = true;
393
-        this.treatShow = true;
394
-        this.allShow = true;
466
+        this.bedShow = true
467
+        this.totalShow = true
468
+        this.treatShow = true
469
+        this.allShow = true
395 470
       }
396 471
 
397 472
       if (val === 2) {
398
-        this.totalShow = false;
399
-        this.DisinfectionShow = true;
400
-        this.allShow = false;
401
-        this.treatShow = false;
402
-        this.reverseShow = true;
403
-        this.bedShow = true;
473
+        this.totalShow = false
474
+        this.DisinfectionShow = true
475
+        this.allShow = false
476
+        this.treatShow = false
477
+        this.reverseShow = true
478
+        this.bedShow = true
404 479
       }
405 480
 
406 481
       if (val === 3) {
407
-        this.bedShow = false;
408
-        this.totalShow = false;
409
-        this.reverseShow = false;
410
-        this.allShow = false;
411
-        this.treatShow = false;
412
-        this.DisinfectionShow = false;
482
+        this.bedShow = false
483
+        this.totalShow = false
484
+        this.reverseShow = false
485
+        this.allShow = false
486
+        this.treatShow = false
487
+        this.DisinfectionShow = false
413 488
       }
414 489
     },
415 490
     changeMachineStatus(val) {
416 491
       if (val === 4) {
417
-        this.disa = false;
492
+        this.disa = false
418 493
       } else {
419
-        this.disa = true;
420
-        this.form.rubbish_date = "";
421
-        this.form.rubbish_reason = "";
494
+        this.disa = true
495
+        this.form.rubbish_date = ''
496
+        this.form.rubbish_reason = ''
422 497
       }
423 498
     },
424 499
     SaveManageInfo(formName) {
425
-      const arr1 = [];
500
+      console.log('====', this.form.treat_mode)
501
+      const arr1 = []
426 502
       this.form.treat_mode.map((item, index) => {
427
-        const obj = {};
428
-        obj.id = index + 1;
429
-        // obj.name = item
430
-        arr1.push(obj.id);
431
-      });
432
-      this.form.treat_type = arr1;
433
-
434
-      var serial_number = this.form.serial_number;
435
-      var serial_numbers = parseInt(serial_number);
436
-      this.form.serial_number = serial_numbers;
503
+        const obj = {}
504
+        if (item === 'HD') {
505
+          obj.id = 1
506
+        }
507
+        if (item === 'HDF') {
508
+          obj.id = 2
509
+        }
510
+        if (item === 'HD+HP') {
511
+          obj.id = 3
512
+        }
513
+        if (item === 'HP') {
514
+          obj.id = 4
515
+        }
516
+        if (item === 'HF') {
517
+          obj.id = 5
518
+        }
519
+        if (item === 'SCUF') {
520
+          obj.id = 6
521
+        }
522
+        if (item === 'IUF') {
523
+          obj.id = 7
524
+        }
525
+        if (item === 'HFHD') {
526
+          obj.id = 8
527
+        }
528
+        if (item === 'HFHD+HP') {
529
+          obj.id = 9
530
+        }
531
+        if (item === 'PHF') {
532
+          obj.id = 10
533
+        }
534
+        if (item === 'HFR') {
535
+          obj.id = 11
536
+        }
537
+        if (item === 'HDF+HP') {
538
+          obj.id = 12
539
+        }
540
+        if (item === 'CRRT') {
541
+          obj.id = 13
542
+        }
543
+        if (item === '腹水回输') {
544
+          obj.id = 14
545
+        }
546
+        arr1.push(obj.id)
547
+      })
548
+      // this.form.treat_mode.map((item, index) => {
549
+      //   const obj = {};
550
+      //   obj.id = index + 1;
551
+      //   // obj.name = item
552
+      //   arr1.push(obj.id);
553
+      // });
554
+      console.log('arrr1', arr1)
555
+      this.form.treat_type = arr1
437 556
 
438
-      var device_type = this.form.device_type;
439
-      var device_types = parseInt(device_type);
440
-      this.form.device_type = device_types;
557
+      var device_type = this.form.device_type
558
+      var device_types = parseInt(device_type)
559
+      this.form.device_type = device_types
441 560
 
442
-      console.log("机号是什么东西", this.form.bed_number);
561
+      console.log('机号是什么东西', this.form.bed_number)
443 562
 
444
-      if (this.form.rubbish_reason === "") {
445
-        this.form.rubbish_reason = 0;
563
+      if (this.form.rubbish_reason === '') {
564
+        this.form.rubbish_reason = 0
446 565
       }
447
-      var rubbish_reason = this.form.rubbish_reason;
448
-      var rubbish_reasons = parseInt(rubbish_reason);
449
-      this.form.rubbish_reason = rubbish_reasons;
566
+      var rubbish_reason = this.form.rubbish_reason
567
+      var rubbish_reasons = parseInt(rubbish_reason)
568
+      this.form.rubbish_reason = rubbish_reasons
450 569
 
451
-      var machine_status = this.form.machine_status;
452
-      var machine_statuss = parseInt(machine_status);
453
-      this.form.machine_status = machine_statuss;
570
+      var machine_status = this.form.machine_status
571
+      var machine_statuss = parseInt(machine_status)
572
+      this.form.machine_status = machine_statuss
454 573
 
455
-      if (this.form.revers_mode === "") {
456
-        this.form.revers_mode = 0;
574
+      if (this.form.revers_mode === '') {
575
+        this.form.revers_mode = 0
457 576
       }
458
-      var revers_mode = this.form.revers_mode;
459
-      var revers_modes = parseInt(revers_mode);
460
-      this.form.revers_mode = revers_modes;
577
+      var revers_mode = this.form.revers_mode
578
+      var revers_modes = parseInt(revers_mode)
579
+      this.form.revers_mode = revers_modes
461 580
 
462
-      if (this.form.Disinfection_mode === "") {
463
-        this.form.Disinfection_mode = 0;
581
+      if (this.form.Disinfection_mode === '') {
582
+        this.form.Disinfection_mode = 0
464 583
       }
465
-      var disinfecction_modes = this.form.Disinfection_mode;
466
-      var disinfecction_modess = parseInt(disinfecction_modes);
467
-      this.form.Disinfection_mode = disinfecction_modess;
468 584
 
469
-      if (this.form.bed_number === "") {
470
-        this.form.bed_number = 0;
471
-      }
472
-      var bed_numbers = this.form.bed_number;
473
-      var bed_numberss = parseInt(bed_numbers);
474
-      this.form.bed_number = bed_numberss;
585
+      var disinfecction_modes = this.form.Disinfection_mode
586
+      var disinfecction_modess = parseInt(disinfecction_modes)
587
+      this.form.Disinfection_mode = disinfecction_modess
475 588
 
476
-      console.log("购买日期", this.form.buy_date);
589
+      if (this.form.bed_number === '') {
590
+        this.form.bed_number = 0
591
+      }
592
+      var bed_numbers = this.form.bed_number
593
+      var bed_numberss = parseInt(bed_numbers)
594
+      this.form.bed_number = bed_numberss
595
+      console.log('购买日期', this.form.buy_date)
477 596
       this.$refs[formName].validate(valid => {
478 597
         if (valid) {
479 598
           SaveManageInfo(this.form).then(response => {
480 599
             if (response.data.state === 1) {
481
-              var addmacher = response.data.data.addmacher;
482
-              console.log("addmacher", addmacher);
483
-              this.dialogVisible = false;
484
-              this.$emit("getAllMachineInfo");
600
+              var addmacher = response.data.data.addmacher
601
+              this.dialogVisible = false
602
+              this.$message.success('保存成功')
603
+              this.getAllSubregion()
604
+              this.$emit('getAllMachineInfo')
485 605
             } else {
486
-              this.$message.error("添加失败");
606
+              this.$message.error('添加失败')
487 607
             }
488
-          });
608
+          })
489 609
         }
490
-      });
610
+      })
491 611
     }
492 612
   },
493 613
   created() {
494
-    this.getAllSubregion();
614
+    this.getAllSubregion()
495 615
   }
496
-};
616
+}
497 617
 </script>
498 618
 
499 619
 <style lang="scss">

+ 23 - 17
src/xt_pages/management/components/MultipleForm.vue Näytä tiedosto

@@ -58,9 +58,9 @@
58 58
           </el-col>
59 59
         </el-row>
60 60
         <el-row>
61
-          <el-col :span="6">
61
+          <el-col :span="7">
62 62
             <el-form-item label="使用年限:">
63
-              <el-select style="width:90px" v-model="form.user_year">
63
+              <el-select style="width:120px" v-model="form.user_year">
64 64
                 <el-option
65 65
                   v-for="item in this.userYear"
66 66
                   :key="item.id"
@@ -70,7 +70,7 @@
70 70
               </el-select>
71 71
             </el-form-item>
72 72
           </el-col>
73
-          <el-col :span="10">
73
+          <el-col :span="7">
74 74
             <div class="cell clearfix">
75 75
               <label class="title"><span class="name">日期查询</span> : </label>
76 76
               <el-date-picker
@@ -79,7 +79,7 @@
79 79
                 v-model="form.start_time"
80 80
                 prefix-icon="el-icon-date"
81 81
                 :editable="false"
82
-                style="width: 196px;"
82
+                style="width: 140px;"
83 83
                 type="date"
84 84
                 placeholder="选择日期时间"
85 85
                 align="right"
@@ -94,7 +94,7 @@
94 94
                 v-model="form.end_time"
95 95
                 prefix-icon="el-icon-date"
96 96
                 :editable="false"
97
-                style="width: 196px;"
97
+                style="width: 140px;"
98 98
                 type="date"
99 99
                 placeholder="选择日期时间"
100 100
                 align="right"
@@ -104,7 +104,7 @@
104 104
               </el-date-picker>
105 105
             </div>
106 106
           </el-col>
107
-          <el-col :span="4">
107
+          <el-col :span="5">
108 108
             <el-form-item label="合计:">
109 109
               故障次数
110 110
               <span>{{ failure_times }}</span
@@ -120,12 +120,18 @@
120 120
         </el-row>
121 121
         <el-row>
122 122
           <el-table :data="tableData" border style="width: 100%">
123
-            <el-table-column prop="date" label="序号" width="80" align="center">
124
-              <template slot-scope="scope">
123
+            <el-table-column
124
+              prop="date"
125
+              label="序号"
126
+              width="60"
127
+              align="center"
128
+              type="index"
129
+            >
130
+              <!-- <template slot-scope="scope">
125 131
                 {{ scope.row.id }}
126
-              </template>
132
+              </template> -->
127 133
             </el-table-column>
128
-            <el-table-column prop="name" label="分区" width="80" align="center">
134
+            <el-table-column prop="name" label="分区" width="60" align="center">
129 135
               <template slot-scope="scope">
130 136
                 {{ scope.row.name }}
131 137
               </template>
@@ -405,12 +411,8 @@ export default {
405 411
             if (macher[index].machine_status === 4) {
406 412
               macher[index].machine_status = "报废机";
407 413
             }
408
-
409
-            if (macher[index].start_date === 0) {
410
-              macher[index].start_date = "";
411
-            }
412
-            if (macher[index].rubbish_date === 0) {
413
-              macher[index].rubbish_date = "";
414
+            if (macher[index].rubbish_reason === 0) {
415
+              macher[index].rubbish_reason = "";
414 416
             }
415 417
           }
416 418
           console.log("macher", macher);
@@ -419,7 +421,11 @@ export default {
419 421
       });
420 422
     },
421 423
     getTime(time) {
422
-      return uParseTime(time, "{y}-{m}-{d}");
424
+      if (time === 0) {
425
+        return "";
426
+      } else {
427
+        return uParseTime(time, "{y}-{m}-{d}");
428
+      }
423 429
     }
424 430
   },
425 431
   created() {

+ 12 - 6
src/xt_pages/management/components/PlanForm.vue Näytä tiedosto

@@ -3,7 +3,7 @@
3 3
     <el-dialog
4 4
       title="新增计划"
5 5
       :visible.sync="dialogVisible"
6
-      width="50%"
6
+      width="55%"
7 7
       center
8 8
     >
9 9
       <el-form ref="form" :model="form">
@@ -40,6 +40,7 @@
40 40
                 allow-create
41 41
                 default-first-option
42 42
                 placeholder="请选择时间"
43
+                style="width: 140px;"
43 44
               >
44 45
                 <el-option
45 46
                   v-for="item in this.timeType"
@@ -59,6 +60,7 @@
59 60
                 allow-create
60 61
                 default-first-option
61 62
                 placeholder="请选择时间"
63
+                style="width: 140px;"
62 64
               >
63 65
                 <el-option
64 66
                   v-for="item in this.classType"
@@ -149,10 +151,10 @@ export default {
149 151
         disinfec_time: "",
150 152
         time: [],
151 153
         class_time: [],
152
-        way: "",
153
-        machine_disinfectant: "",
154
-        disinfectant_way: "",
155
-        disinfectant: ""
154
+        way: 0,
155
+        machine_disinfectant: 0,
156
+        disinfectant_way: 0,
157
+        disinfectant: 0
156 158
       },
157 159
       value: [],
158 160
       timeType: [
@@ -169,13 +171,15 @@ export default {
169 171
         { id: 2, name: "下午" },
170 172
         { id: 3, name: "晚上" }
171 173
       ],
172
-      // 表消毒方式
174
+      // 表消毒方式
173 175
       disinfectType: [
176
+        { id: 0, name: "/" },
174 177
         { id: 1, name: "擦拭" },
175 178
         { id: 2, name: "化学消毒" }
176 179
       ],
177 180
       // 基表消毒液
178 181
       disinfectantType: [
182
+        { id: 0, name: "/" },
179 183
         { id: 1, name: "0.22%季铵盐" },
180 184
         { id: 2, name: "500mg/l含氯消毒剂" },
181 185
         { id: 3, name: "1000mg/l含氯消毒剂" },
@@ -183,6 +187,7 @@ export default {
183 187
       ],
184 188
       // 夜路消毒方式
185 189
       sterilizeType: [
190
+        { id: 0, name: "/" },
186 191
         { id: 1, name: "热化学消毒" },
187 192
         { id: 2, name: "化学消毒 + 除钙" },
188 193
         { id: 3, name: "热化学消毒 + 除钙" },
@@ -193,6 +198,7 @@ export default {
193 198
       ],
194 199
       // 夜路消毒液
195 200
       fluidPathType: [
201
+        { id: 0, name: "/" },
196 202
         { id: 1, name: "20%柠檬酸" },
197 203
         { id: 2, name: "25%柠檬酸" },
198 204
         { id: 3, name: "50%柠檬酸" },

+ 12 - 8
src/xt_pages/management/components/QualityForm.vue Näytä tiedosto

@@ -344,9 +344,9 @@
344 344
               <el-select style="width:130px" v-model="form.sampler">
345 345
                 <el-option
346 346
                   v-for="item in sampling"
347
-                  :key="item.id"
347
+                  :key="item.admin_user_id"
348 348
                   :label="item.user_name"
349
-                  :value="item.id"
349
+                  :value="item.admin_user_id"
350 350
                 ></el-option>
351 351
               </el-select>
352 352
             </el-form-item>
@@ -454,9 +454,9 @@
454 454
               <el-select style="width:130px" v-model="diaForm.samplerb">
455 455
                 <el-option
456 456
                   v-for="item in sampling"
457
-                  :key="item.id"
457
+                  :key="item.admin_user_id"
458 458
                   :label="item.user_name"
459
-                  :value="item.id"
459
+                  :value="item.admin_user_id"
460 460
                 ></el-option>
461 461
               </el-select>
462 462
             </el-form-item>
@@ -518,9 +518,9 @@
518 518
                 <el-select style="width:130px" v-model="ionForm.samplerc">
519 519
                   <el-option
520 520
                     v-for="item in sampling"
521
-                    :key="item.id"
521
+                    :key="item.admin_user_id"
522 522
                     :label="item.user_name"
523
-                    :value="item.id"
523
+                    :value="item.admin_user_id"
524 524
                   ></el-option>
525 525
                 </el-select>
526 526
               </el-form-item>
@@ -872,10 +872,14 @@ export default {
872 872
         this.diableTwo = false
873 873
       }
874 874
       if (val === 1) {
875
+        this.form.concentrate_nob = ''
876
+        this.form.concentrateb_nod = ''
877
+        this.diableTwo = true
875 878
         this.disable = false
876
-        this.diableTwo = false
877 879
       }
878 880
       if (val === 2) {
881
+        this.form.concentrate_noa = ''
882
+        this.form.concentrate_noc = ''
879 883
         this.diableTwo = true
880 884
         this.disable = false
881 885
       }
@@ -1006,7 +1010,7 @@ export default {
1006 1010
         return false
1007 1011
       }
1008 1012
       this.$confirm(
1009
-        '确认要删除所选吗? <br>删除后,人员信息将无法恢复',
1013
+        '确认要删除所选记录吗? <br>删除后,人员信息将无法恢复',
1010 1014
         '删除提示',
1011 1015
         {
1012 1016
           dangerouslyUseHTMLString: true,

+ 1 - 1
src/xt_pages/management/components/RepairForm.vue Näytä tiedosto

@@ -617,7 +617,7 @@ export default {
617 617
         return false
618 618
       }
619 619
       this.$confirm(
620
-        '确认要删除所选的吗? <br>删除后,人员信息将无法恢复',
620
+        '确认要删除所选记录吗? <br>删除后,信息将无法恢复',
621 621
         '删除提示',
622 622
         {
623 623
           dangerouslyUseHTMLString: true,

+ 41 - 5
src/xt_pages/management/components/UserForm.vue Näytä tiedosto

@@ -644,9 +644,9 @@
644 644
               <el-select v-model="userform.sign_name" placeholder="请选择">
645 645
                 <el-option
646 646
                   v-for="item in autograph"
647
-                  :key="item.id"
647
+                  :key="item.admin_user_id"
648 648
                   :label="item.user_name"
649
-                  :value="item.id"
649
+                  :value="item.admin_user_id"
650 650
                   style="width:100px"
651 651
                 ></el-option>
652 652
               </el-select>
@@ -752,6 +752,9 @@ import print from 'print-js'
752 752
 const moment = require('moment')
753 753
 export default {
754 754
   name: 'UserForm',
755
+  props: {
756
+    equimentid: Number
757
+  },
755 758
   data() {
756 759
     return {
757 760
       nowTime: moment(new Date()).format('YYYY-MM-DD HH:MM:SS'),
@@ -800,11 +803,13 @@ export default {
800 803
       ],
801 804
       // 基表消毒方式
802 805
       disinfectType: [
806
+        { id: 0, name: '请选择' },
803 807
         { id: 1, name: '擦拭' },
804 808
         { id: 2, name: '化学消毒' }
805 809
       ],
806 810
       // 基表消毒液
807 811
       disinfectantType: [
812
+        { id: 0, name: '请选择' },
808 813
         { id: 1, name: '0.22%季铵盐' },
809 814
         { id: 2, name: '500mg/l含氯消毒剂' },
810 815
         { id: 3, name: '1000mg/l含氯消毒剂' },
@@ -812,6 +817,7 @@ export default {
812 817
       ],
813 818
       // 夜路消毒方式
814 819
       sterilizeType: [
820
+        { id: 0, name: '请选择' },
815 821
         { id: 1, name: '热化学消毒' },
816 822
         { id: 2, name: '化学消毒 + 除钙' },
817 823
         { id: 3, name: '热化学消毒 + 除钙' },
@@ -822,6 +828,7 @@ export default {
822 828
       ],
823 829
       // 夜路消毒液
824 830
       fluidPathType: [
831
+        { id: 0, name: '请选择' },
825 832
         { id: 1, name: '20%柠檬酸' },
826 833
         { id: 2, name: '25%柠檬酸' },
827 834
         { id: 3, name: '50%柠檬酸' },
@@ -861,11 +868,13 @@ export default {
861 868
         { id: 3, name: '消毒未完成' }
862 869
       ],
863 870
       names: [
871
+        { id: 0, name: '请选择' },
864 872
         { id: 1, name: '20%柠檬酸' },
865 873
         { id: 2, name: '50%柠檬酸' },
866 874
         { id: 3, name: '次氯酸钠' }
867 875
       ],
868 876
       germs: [
877
+        { id: 0, name: '请选择' },
869 878
         { id: 1, name: '费森细菌过滤器' },
870 879
         { id: 2, name: '日机装细菌过滤器' },
871 880
         { id: 3, name: '贝朗机细菌过滤器' },
@@ -1016,12 +1025,22 @@ export default {
1016 1025
             if (information[index].move === 2) {
1017 1026
               information[index].move = '故障'
1018 1027
             }
1028
+
1029
+            if (information[index].disinfect_type === 0) {
1030
+              information[index].disinfect_type = '/'
1031
+            }
1032
+
1019 1033
             if (information[index].disinfect_type === 1) {
1020 1034
               information[index].disinfect_type = '擦拭'
1021 1035
             }
1022 1036
             if (information[index].disinfect_type === 2) {
1023 1037
               information[index].disinfect_type = '化学消毒'
1024 1038
             }
1039
+
1040
+            if (information[index].disinfectant_type === 0) {
1041
+              information[index].disinfectant_type = '/'
1042
+            }
1043
+
1025 1044
             if (information[index].disinfectant_type === 1) {
1026 1045
               information[index].disinfectant_type = '0.22%季铵盐'
1027 1046
             }
@@ -1034,6 +1053,7 @@ export default {
1034 1053
             if (information[index].disinfectant_type === 4) {
1035 1054
               information[index].disinfectant_type = '1500mg/l含氯消毒剂'
1036 1055
             }
1056
+
1037 1057
             if (information[index].disinfection === 1) {
1038 1058
               information[index].disinfection = '已消毒'
1039 1059
             }
@@ -1049,6 +1069,10 @@ export default {
1049 1069
             if (information[index].dialysis_concentration === 2) {
1050 1070
               information[index].dialysis_concentration = '未达标'
1051 1071
             }
1072
+
1073
+            if (information[index].fluid_path === 0) {
1074
+              information[index].fluid_path = '/'
1075
+            }
1052 1076
             if (information[index].fluid_path === 1) {
1053 1077
               information[index].fluid_path = '热化学消毒'
1054 1078
             }
@@ -1070,6 +1094,11 @@ export default {
1070 1094
             if (information[index].fluid_path === 7) {
1071 1095
               information[index].fluid_path = '清洗'
1072 1096
             }
1097
+
1098
+            if (information[index].disinfectant === 0) {
1099
+              information[index].disinfectant = '/'
1100
+            }
1101
+
1073 1102
             if (information[index].disinfectant === 1) {
1074 1103
               information[index].disinfectant = '20%柠檬酸'
1075 1104
             }
@@ -1144,7 +1173,11 @@ export default {
1144 1173
       return uParseTime(time, '{y}-{m}-{d}')
1145 1174
     },
1146 1175
     getTimes(time) {
1147
-      return uParseTime(time, '{y}-{m}-{d} {h}:{i}:{s}')
1176
+      if (time === 0) {
1177
+        return ''
1178
+      } else {
1179
+        return uParseTime(time, '{y}-{m}-{d} {h}:{i}:{s}')
1180
+      }
1148 1181
     },
1149 1182
     // 获取签名
1150 1183
     getAllOrganization() {
@@ -1227,7 +1260,7 @@ export default {
1227 1260
         return false
1228 1261
       }
1229 1262
       this.$confirm(
1230
-        '确认要删除所选吗? <br>删除后,人员信息将无法恢复',
1263
+        '确认要删除所选记录吗? <br>删除后,人员信息将无法恢复',
1231 1264
         '删除提示',
1232 1265
         {
1233 1266
           dangerouslyUseHTMLString: true,
@@ -1277,7 +1310,10 @@ export default {
1277 1310
       if (this.userform.clean === false) {
1278 1311
         this.userform.clean = 0
1279 1312
       }
1280
-
1313
+      this.userform.start_time = this.getTimes(this.userform.start_time)
1314
+      this.userform.end_time = this.getTimes(this.userform.end_time)
1315
+      this.userform.starttime = this.getTimes(this.userform.starttime)
1316
+      this.userform.endtime = this.getTimes(this.userform.endtime)
1281 1317
       this.$refs[formName].validate((valid) => {
1282 1318
         if (valid) {
1283 1319
           UpdateForm(this.userform).then(response => {

+ 207 - 146
src/xt_pages/management/home.vue Näytä tiedosto

@@ -8,8 +8,8 @@
8 8
                <div style="width:24%">
9 9
                  <el-row>
10 10
                    <el-col :span="24">
11
-                     <span class="zone">分区:</span>
12
-                      <el-select v-model="forms.zone_id" placeholder="请选择" class="a" @change="changeBedNumber">
11
+                     <span class="zone">分&nbsp;&nbsp;&nbsp;&nbsp;区:</span>
12
+                      <el-select v-model="forms.zone_id" placeholder="请选择" class="a" @change="changeBedNumber" style="width:125px">
13 13
                         <el-option
14 14
                          v-for="item in bedZone"
15 15
                          :key="item.id"
@@ -22,8 +22,8 @@
22 22
                   </el-row>
23 23
                   <el-row>
24 24
                    <el-col>
25
-                    <span class="zone">班次:</span>
26
-                      <el-select v-model="forms.class_id" placeholder="请选择" class="a" @change="changeClassId">
25
+                    <span class="zone">班&nbsp;&nbsp;&nbsp;&nbsp;次:</span>
26
+                      <el-select v-model="forms.class_id" placeholder="请选择" class="a" @change="changeClassId" style="width:125px">
27 27
                         <el-option
28 28
                          v-for="item in Classes"
29 29
                          :key="item.id"
@@ -36,7 +36,7 @@
36 36
                   <el-row>
37 37
                      <el-col>
38 38
                      <span>设备类型:</span>
39
-                      <el-select v-model="forms.device_type" placeholder="请选择" class="a" @change="changeDeviceId">
39
+                      <el-select v-model="forms.device_type" placeholder="请选择" class="a" @change="changeDeviceId" style="width:110px">
40 40
                         <el-option
41 41
                          v-for="item in DeviceTypeType"
42 42
                          :key="item.id"
@@ -116,15 +116,15 @@
116 116
                                </el-col>
117 117
                               <el-col :span="7">
118 118
                                  <el-form-item label="设备类型:" required prop="devicetype">
119
-                                   <el-select style="width:150px" v-model="form.devicetype">
119
+                                   <el-select style="width:150px" v-model="form.devicetype" :disabled="true">
120 120
                                        <el-option v-for="item in this.DeviceTypes" :key="item.id" :label="item.name" :value="item.id" ></el-option>
121 121
                                   </el-select>
122 122
                                  </el-form-item>
123 123
                               </el-col>
124 124
                               <el-col :span="7">
125 125
                                   <el-form-item label="机位号:">
126
-                                       <el-select style="width:150px" v-model="form.bed_number">
127
-                                          <el-option v-for="item in this.Number" :key="item.id" :label="item.zone_name + item.number" :value="item.id"></el-option>
126
+                                       <el-select style="width:150px" v-model="form.bed_number" :disabled="true">
127
+                                          <el-option v-for="item in this.Number" :key="item.id" :label="item.number" :value="item.id"></el-option>
128 128
                                        </el-select>
129 129
                                   </el-form-item>
130 130
                               </el-col>
@@ -287,7 +287,7 @@
287 287
                              <el-row>
288 288
                                <div class="but">
289 289
                                  <el-col :span="12">
290
-                                   <el-button size="medium" v-show="cancelShow">取消</el-button>
290
+                                   <el-button size="medium" v-show="cancelShow" @click="cleanMainchine">取消</el-button>
291 291
                                  </el-col>  
292 292
                                  <el-col :span="8">
293 293
                                   <el-button type="primary" size="medium" v-show="confirmShow" @click="UpdateMachineInfo('form')">保存</el-button>
@@ -486,7 +486,7 @@
486 486
                    <el-tab-pane label="使用登记" name="third">
487 487
                         <el-tabs v-model="activeNameThree" @tab-click="handleClick">
488 488
                           <el-tab-pane label="新增使用登记" name="first">
489
-                             <el-form :model="userform" ref="userform">
489
+                             <el-form :model="userform" ref="userform" :rules="userRules">
490 490
                                 <el-row>
491 491
                                   <el-col :span="8">
492 492
                                      <el-form-item label="日期:">
@@ -502,7 +502,7 @@
502 502
                                      </el-form-item>
503 503
                                   </el-col>
504 504
                                   <el-col :span="8">
505
-                                     <el-form-item label="班次:">
505
+                                     <el-form-item label="班次:" required prop="classtype">
506 506
                                        <el-select v-model="userform.classtype" placeholder="请选择" class="a" @change="ChangeClass">
507 507
                                            <el-option
508 508
                                             v-for="item in classType"
@@ -515,7 +515,7 @@
515 515
                                      </el-form-item>
516 516
                                   </el-col>
517 517
                                   <el-col :span="8">
518
-                                     <el-form-item label="分区:">
518
+                                     <el-form-item label="分区:" required prop="zone">
519 519
                                          <el-select v-model="userform.zone" placeholder="请选择" class="a">
520 520
                                            <el-option
521 521
                                             v-for="item in bedNumber"
@@ -529,15 +529,15 @@
529 529
                                 </el-row>
530 530
                                 <el-row>
531 531
                                     <el-col :span="8">
532
-                                        <el-form-item label="床位号:">
532
+                                        <el-form-item label="床位号:" required prop="bed_number">
533 533
                                         <el-select style="width:150px" v-model="userform.bed_number">
534 534
                                           <el-option v-for="item in this.bedNumber" :key="item.id" :label="item.number" :value="item.id"></el-option>
535 535
                                         </el-select>
536 536
                                      </el-form-item>
537 537
                                     </el-col>
538 538
                                     <el-col :span="8">
539
-                                       <el-form-item label="患者:">
540
-                                           <el-select style="width:150px" v-model="userform.patient_name">
539
+                                       <el-form-item label="患者:" required prop ="patient_name">
540
+                                           <el-select style="width:150px" v-model="userform.patient_name" >
541 541
                                              <el-option v-for="item in this.patientName" :key="item.patient_id" :label="item.name" :value="item.patient_id"></el-option>
542 542
                                            </el-select>
543 543
                                        </el-form-item>
@@ -656,7 +656,7 @@
656 656
                                       <el-form-item label="①机表"></el-form-item>
657 657
                                   </el-col>
658 658
                                   <el-col :span="8">
659
-                                     <el-form-item label="消毒方式:">
659
+                                     <el-form-item label="消毒方式:" required prop="disinfect_type">
660 660
                                          <el-select v-model="userform.disinfect_type" placeholder="请选择" >
661 661
                                            <el-option
662 662
                                             v-for="item in disinfectType"
@@ -669,7 +669,7 @@
669 669
                                      </el-form-item>    
670 670
                                   </el-col>
671 671
                                   <el-col :span="8">
672
-                                     <el-form-item label="消毒液:">
672
+                                     <el-form-item label="消毒液:" required prop="disinfectant_type">
673 673
                                         <el-select v-model="userform.disinfectant_type" placeholder="请选择" >
674 674
                                            <el-option
675 675
                                             v-for="item in disinfectantType"
@@ -684,7 +684,7 @@
684 684
                                 </el-row>
685 685
                                 <el-row>
686 686
                                   <el-col :span="8">      
687
-                                     <el-form-item label="消毒状态:">
687
+                                     <el-form-item label="消毒状态:" required prop="disinfection">
688 688
                                         <el-select v-model="userform.disinfection" placeholder="请选择" >
689 689
                                            <el-option
690 690
                                             v-for="item in disinfection"
@@ -709,7 +709,7 @@
709 709
                                        <el-form-item label="②液路"></el-form-item>
710 710
                                    </el-col>
711 711
                                    <el-col :span="8">
712
-                                       <el-form-item label="消毒方式:">
712
+                                       <el-form-item label="消毒方式:" required prop="fluid_path">
713 713
                                          <el-select v-model="userform.fluid_path" placeholder="请选择" >
714 714
                                            <el-option
715 715
                                             v-for="item in sterilizeType"
@@ -722,7 +722,7 @@
722 722
                                        </el-form-item>
723 723
                                    </el-col>
724 724
                                    <el-col :span="8">
725
-                                       <el-form-item label="消毒液:">
725
+                                       <el-form-item label="消毒液:" required prop="disinfectant">
726 726
                                         <el-select v-model="userform.disinfectant" placeholder="请选择" >
727 727
                                            <el-option
728 728
                                             v-for="item in fluidPathType"
@@ -737,7 +737,7 @@
737 737
                                 </el-row>
738 738
                                 <el-row>
739 739
                                    <el-col :span="8">      
740
-                                     <el-form-item label="消毒状态:">
740
+                                     <el-form-item label="消毒状态:" required prop="disinfection_status">
741 741
                                         <el-select v-model="userform.disinfection_status" placeholder="请选择" >
742 742
                                            <el-option
743 743
                                             v-for="item in disinfection"
@@ -771,10 +771,9 @@
771 771
                                               value-format="yyyy-MM-dd HH:mm"
772 772
                                                placeholder="选择时间"
773 773
                                                v-model="userform.starttime"
774
-                                               style="width:200px;"
775
-                                                @change="changStartTime"
774
+                                               style="width:200px;"                                          
776 775
                                           ></el-date-picker>                                                                       
777
-                                       </el-form-item>
776
+                                       </el-form-item>                 
778 777
                                     </el-col>
779 778
                                     <el-col :span="8">
780 779
                                        <el-form-item label="结束消毒时间:">                                                                          
@@ -784,8 +783,7 @@
784 783
                                               value-format="yyyy-MM-dd HH:mm"
785 784
                                                placeholder="选择时间"
786 785
                                                v-model="userform.endtime"
787
-                                               style="width:200px;"
788
-                                                @change="changeEndTime"
786
+                                               style="width:200px;"                                          
789 787
                                           ></el-date-picker>              
790 788
                                        </el-form-item>
791 789
                                     </el-col>
@@ -822,7 +820,7 @@
822 820
                                          <el-radio-group v-model="userform.dialysis_concentration">
823 821
                                                 <el-radio :label="gender.id" :value="gender.id" v-for="(gender, index) in potency" :key="index">{{gender.name}}</el-radio>
824 822
                                          </el-radio-group>
825
-                                        <span style="color:red">您已一个月未更换,请注意检测</span>
823
+                                        <!-- <span style="color:red">您已一个月未更换,请注意检测</span> -->
826 824
                                       </el-form-item>
827 825
                                    </el-col>
828 826
                                 </el-row>
@@ -858,10 +856,10 @@
858 856
                                   </el-col>
859 857
                                    <el-col :span="10">
860 858
                                       <el-checkbox v-model="userform.clean">清洁:</el-checkbox>
861
-                                      <span style="color:red">您已一个月未清洁,请检查</span>
859
+                                      <!-- <span style="color:red">您已一个月未清洁,请检查</span> -->
862 860
                                    </el-col>
863 861
                                    <el-col :span="10">
864
-                                       <el-form-item label="签名:">
862
+                                       <el-form-item label="签名:" required prop="sign_name">
865 863
                                           <el-select v-model="userform.sign_name" placeholder="请选择" >
866 864
                                            <el-option
867 865
                                             v-for="item in autograph"
@@ -947,7 +945,7 @@
947 945
                                 <el-col :span="8">
948 946
                                   <el-form-item label="取样者:" required prop="sampler">
949 947
                                      <el-select style="width:130px"  v-model="qualityForm.sampler">
950
-                                       <el-option v-for="item in sampling" :key="item.id" :label="item.user_name" :value="item.id"></el-option>
948
+                                       <el-option v-for="item in sampling" :key="item.addmin_user_id" :label="item.user_name" :value="item.admin_user_id"></el-option>
951 949
                                       </el-select>
952 950
                                   </el-form-item>
953 951
                                 </el-col>
@@ -1051,7 +1049,7 @@
1051 1049
                                 <el-col :span="8">
1052 1050
                                    <el-form-item label="取样者:" required prop="samplerb">
1053 1051
                                       <el-select style="width:130px"  v-model="qualityFormTwo.samplerb">
1054
-                                        <el-option v-for="item in sampling" :key="item.id" :label="item.user_name" :value="item.id"></el-option>
1052
+                                        <el-option v-for="item in sampling" :key="item.addmin_user_id" :label="item.user_name" :value="item.admin_user_id"></el-option>
1055 1053
                                       </el-select>
1056 1054
                                    </el-form-item>
1057 1055
                                 </el-col>
@@ -1122,7 +1120,7 @@
1122 1120
                                 <el-col :span="8">
1123 1121
                                     <el-form-item label="取样者:" required prop="samplerc">
1124 1122
                                       <el-select style="width:130px"  v-model="qualityFormThree.samplerc">
1125
-                                        <el-option v-for="item in sampling" :key="item.id" :label="item.user_name" :value="item.id"></el-option>
1123
+                                        <el-option v-for="item in sampling" :key="item.addmin_user_id" :label="item.user_name" :value="item.admin_user_id"></el-option>
1126 1124
                                       </el-select>
1127 1125
                                    </el-form-item>   
1128 1126
                                 </el-col>
@@ -1446,7 +1444,7 @@
1446 1444
         <!-- 综合查询 -->
1447 1445
         <multiple-form ref="multipleform"></multiple-form>
1448 1446
     <!-- 编辑消毒计划 -->
1449
-     <el-dialog title="编辑消毒计划" :visible.sync="dialogVisible" width="44%" center>
1447
+     <el-dialog title="编辑消毒计划" :visible.sync="dialogVisible" width="50%" center>
1450 1448
        <el-form :model="machineform" ref="machineform">
1451 1449
         <el-row>
1452 1450
           <el-col :span="10">
@@ -1474,6 +1472,7 @@
1474 1472
               <el-select
1475 1473
                 v-model="machineform.time"
1476 1474
                 placeholder="请选择时间"
1475
+                 style="width: 140px;"
1477 1476
               >
1478 1477
                 <el-option
1479 1478
                   v-for="item in this.timeType"
@@ -1489,6 +1488,7 @@
1489 1488
               <el-select
1490 1489
                 v-model="machineform.class_time"
1491 1490
                 placeholder="请选择时间"
1491
+                 style="width: 140px;"
1492 1492
               >
1493 1493
                 <el-option
1494 1494
                   v-for="item in this.classType"
@@ -1572,7 +1572,7 @@
1572 1572
   import { getAllSubregion, getAllMachine, getMachineDetailById,
1573 1573
     UpdateMachineInfo, getAllPlan, getAllPlanDetail, DeletePlans,
1574 1574
     getAllEquimentName, EditPlanDetail, UpdatePlanInfo, SaveInformation, getPatientInfo,
1575
-    ChangeClass, getAllOrganization, getUserRegister, SaveQualityControl, getOrgName, SaveRepair, SaveBacteria, SaveLincomycin } from '@/api/manage'
1575
+    ChangeClass, getAllOrganization, getUserRegister, SaveQualityControl, getOrgName, SaveRepair, SaveBacteria, SaveLincomycin,getAutoData } from '@/api/manage'
1576 1576
   import { uParseTime } from '@/utils/tools'
1577 1577
   import { getToken } from '@/api/qiniu'
1578 1578
   import PlanForm from './components/PlanForm'
@@ -1583,7 +1583,7 @@
1583 1583
   import RepairForm from './components/RepairForm'
1584 1584
   import { parseTime } from '@/utils'
1585 1585
   import { getFileExtension } from '@/utils/tools'
1586
-const cityOptions = ['HD', 'HDF', 'HD+HP', 'HP', 'HF', 'SCUF', 'IUF', 'HFHD+HP', 'HFR', 'HDF+HP', 'GRRT', '腹水回收']
1586
+const cityOptions = ['HD', 'HDF', 'HD+HP', 'HP', 'HF', 'SCUF', 'IUF','HFHD', 'HFHD+HP', 'PHF', 'HFR', 'HDF+HP', 'CRRT', '腹水回收']
1587 1587
 const moment = require('moment')
1588 1588
 export default {
1589 1589
     name: 'home',
@@ -1651,6 +1651,7 @@ export default {
1651 1651
           { id: 4, name: '报废机' }
1652 1652
         ],
1653 1653
         DisCardResion: [
1654
+          { id: 0,  name: "请选择" },
1654 1655
           { id: 1, name: '超期限报废' },
1655 1656
           { id: 2, name: '故障报废' },
1656 1657
           { id: 3, name: '核定报废' }
@@ -1661,6 +1662,7 @@ export default {
1661 1662
           { id: 3, name: '其他' }
1662 1663
         ],
1663 1664
         Classes: [
1665
+          { id: 0, name: '全部' },
1664 1666
           { id: 1, name: '上午' },
1665 1667
           { id: 2, name: '下午' },
1666 1668
           { id: 3, name: '晚上' }
@@ -1672,6 +1674,7 @@ export default {
1672 1674
           { id: 3, name: '次氯酸钠' }
1673 1675
         ],
1674 1676
         germs: [
1677
+          { id: 0, name:"请选择" },
1675 1678
           { id: 1, name: '费森细菌过滤器' },
1676 1679
           { id: 2, name: '日机装细菌过滤器' },
1677 1680
           { id: 3, name: '贝朗机细菌过滤器' },
@@ -1714,6 +1717,18 @@ export default {
1714 1717
             detection_unit: [{ required: true, message: '请填写检测单位' }],
1715 1718
             samplerc: [{ required: true, message: '请填写取样者' }]
1716 1719
         },
1720
+        userRules:{
1721
+          zone: [{required:true,message:"请填写分区"}],
1722
+          bed_number: [{required:true,message:"请填写床位号"}],
1723
+          patient_name: [{required:true,message:"请填写患者"}],
1724
+          disinfect_type: [{required:true,message:"请填写消毒方式"}],
1725
+          disinfectant_type: [{required:true,message:"请填写消毒液"}],
1726
+          disinfection:[{required:true,message:"请填写消毒状态"}],
1727
+         fluid_path:[{required:true,message:"请填写消毒方式"}],
1728
+         disinfectant:[{required:true,message:"请填写消毒液"}],
1729
+         disinfection_status:[{required:true,message:"消毒状态"}],
1730
+          sign_name:[{required:true,message:"请填写签名"}]
1731
+        },
1717 1732
         runOption: [
1718 1733
           { id: 1, name: '正常' },
1719 1734
           { id: 2, name: '故障' }
@@ -1774,9 +1789,15 @@ export default {
1774 1789
           { id: 3, name: '晚上' }
1775 1790
         ],
1776 1791
         // 基表消毒方式
1777
-        disinfectType: [{ id: 1, name: '擦拭' }, { id: 2, name: '化学消毒' }],
1792
+        disinfectType: 
1793
+        [
1794
+          { id: 0, name: '/' },
1795
+          { id: 1, name: '擦拭' }, 
1796
+          { id: 2, name: '化学消毒' }
1797
+        ],
1778 1798
         // 基表消毒液
1779 1799
         disinfectantType: [
1800
+          { id: 0, name: '/' },
1780 1801
           { id: 1, name: '0.22%季铵盐' },
1781 1802
           { id: 2, name: '500mg/l含氯消毒剂' },
1782 1803
           { id: 3, name: '1000mg/l含氯消毒剂' },
@@ -1784,6 +1805,7 @@ export default {
1784 1805
         ],
1785 1806
         // 夜路消毒方式
1786 1807
         sterilizeType: [
1808
+          { id: 0, name: '/' },
1787 1809
           { id: 1, name: '热化学消毒' },
1788 1810
           { id: 2, name: '化学消毒 + 除钙' },
1789 1811
           { id: 3, name: '热化学消毒 + 除钙' },
@@ -1794,6 +1816,7 @@ export default {
1794 1816
         ],
1795 1817
         // 夜路消毒液
1796 1818
         fluidPathType: [
1819
+          { id: 0, name: '/' },
1797 1820
           { id: 1, name: '20%柠檬酸' },
1798 1821
           { id: 2, name: '25%柠檬酸' },
1799 1822
           { id: 3, name: '50%柠檬酸' },
@@ -2007,9 +2030,15 @@ export default {
2007 2030
           this.deviceType = zones
2008 2031
           var numbers = response.data.data.numbers
2009 2032
           console.log('分区号是设么', zones)
2010
-          this.bedZone = zones
2033
+          var zone = [{ id: 0, name: "全部" }];
2034
+          for (let i = 0; i < zones.length; i++) {
2035
+            const item = zones[i];
2036
+            zone.push({ id: item.id, name: item.name });
2037
+          }
2038
+          var devicenumber = response.data.data.devicenumber;
2039
+          this.bedZone = zone
2011 2040
           this.bedNumber = numbers
2012
-          this.Number = numbers
2041
+          this.Number = devicenumber
2013 2042
         })
2014 2043
       },
2015 2044
 
@@ -2037,6 +2066,7 @@ export default {
2037 2066
         })
2038 2067
       },
2039 2068
       handleCurrentChange(val) {
2069
+      
2040 2070
         this.currentRow = val
2041 2071
         this.$forceUpdate()
2042 2072
         this.getMachineDetailById(val.id)
@@ -2045,6 +2075,16 @@ export default {
2045 2075
         this.getPatientInfo(val.id)
2046 2076
         // 获取基本信息
2047 2077
         this.getUserRegister(val.id)
2078
+        //病人下机后插入数据
2079
+        this.getAutoData(val.id)
2080
+      },
2081
+      getAutoData(id){
2082
+         getAutoData(id).then(response=>{
2083
+            if(response.data.state === 1){
2084
+              var dialysis = response.data.data.dialysis
2085
+              console.log("dialysis",dialysis)
2086
+            }
2087
+         })
2048 2088
       },
2049 2089
       getMachineDetailById(id) {
2050 2090
         getMachineDetailById(id).then(response => {
@@ -2085,23 +2125,30 @@ export default {
2085 2125
               if (mode[index].treate_mode === 7) {
2086 2126
                 mode[index] = 'IUF'
2087 2127
               }
2088
-
2128
+              
2089 2129
               if (mode[index].treate_mode === 8) {
2130
+                mode[index] = 'HFHD'
2131
+              }
2132
+             
2133
+              if (mode[index].treate_mode === 9) {
2090 2134
                 mode[index] = 'HFHD+HP'
2091 2135
               }
2136
+              if (mode[index].treate_mode === 10) {
2137
+                mode[index] = 'PHF'
2138
+              }
2092 2139
 
2093
-              if (mode[index].treate_mode === 9) {
2140
+              if (mode[index].treate_mode === 11) {
2094 2141
                 mode[index] = 'HFR'
2095 2142
               }
2096
-              if (mode[index].treate_mode === 10) {
2143
+              if (mode[index].treate_mode === 12) {
2097 2144
                 mode[index] = 'HDF+HP'
2098 2145
               }
2099 2146
   
2100
-              if (mode[index].treate_mode === 11) {
2101
-                mode[index] = 'GRRT'
2147
+              if (mode[index].treate_mode === 13) {
2148
+                mode[index] = 'CRRT'
2102 2149
               }
2103 2150
 
2104
-              if (mode[index].treate_mode === 12) {
2151
+              if (mode[index].treate_mode === 14) {
2105 2152
                 mode[index] = '腹水回收'
2106 2153
               }
2107 2154
               arr1.push(mode[index])
@@ -2110,7 +2157,7 @@ export default {
2110 2157
             this.form.id = addmacher.id
2111 2158
             this.form.serial_number = addmacher.serial_number
2112 2159
             this.form.devicetype = addmacher.device_type
2113
-            this.form.bed_number = zone.name + addmacher.bed_number
2160
+            this.form.bed_number = addmacher.bed_number
2114 2161
             this.form.device_name = addmacher.device_name
2115 2162
             this.form.manufacture_factory = addmacher.manufacture_factory
2116 2163
             this.form.service_manufacturer = addmacher.service_manufacturer
@@ -2153,15 +2200,11 @@ export default {
2153 2200
         this.form.treat_mode.map((item, index) => {
2154 2201
           const obj = {}
2155 2202
           obj.id = index + 1
2156
-          // obj.name = item
2157 2203
           arr2.push(obj.id)
2158 2204
         })
2205
+        console.log("arr2是什么",arr2)
2159 2206
         this.form.treat_type = arr2
2160 2207
 
2161
-        var serial_number = this.form.serial_number
2162
-        var serial_numbers = parseInt(serial_number)
2163
-        this.form.serial_number = serial_numbers
2164
-
2165 2208
         var device_type = this.form.devicetype
2166 2209
         var device_types = parseInt(device_type)
2167 2210
         this.form.devicetype = device_types
@@ -2197,6 +2240,22 @@ export default {
2197 2240
           })
2198 2241
         })
2199 2242
       },
2243
+      cleanMainchine(){
2244
+        this.form.manufacture_factory = ""
2245
+        this.form.service_manufacturer= ""
2246
+        this.form.use_section= ""
2247
+        this.form.buy_date= ""
2248
+        this.form.install_date= ""
2249
+        this.form.start_date= ""
2250
+        this.form.maintenance_engineer= ""
2251
+        this.form.telephone= ""
2252
+        this.form.guarantee_date= ""
2253
+        this.form.user_total= ""
2254
+        this.form.rubbish_date= ""
2255
+        this.form.user_year = ""
2256
+        this.form.work_time = ""
2257
+        this.form.treat_mode = ""
2258
+      },
2200 2259
       addPlan() {
2201 2260
         this.$refs.planForm.open()
2202 2261
       },
@@ -2261,6 +2320,10 @@ export default {
2261 2320
               if (plan[index].classtime === 3) {
2262 2321
                 plan[index].classtime = '晚上'
2263 2322
               }
2323
+                
2324
+              if(plan[index].way === 0){
2325
+                plan[index].way = "/"
2326
+              }
2264 2327
 
2265 2328
               if (plan[index].way === 1) {
2266 2329
                 plan[index].way = '擦拭'
@@ -2268,7 +2331,11 @@ export default {
2268 2331
               if (plan[index].way === 2) {
2269 2332
                 plan[index].way = '化学消毒'
2270 2333
               }
2271
-
2334
+               
2335
+                if (plan[index].machine_disinfectant === 0) {
2336
+                plan[index].machine_disinfectant = '/'
2337
+              }
2338
+ 
2272 2339
               if (plan[index].machine_disinfectant === 1) {
2273 2340
                 plan[index].machine_disinfectant = '0.22%季铵盐'
2274 2341
               }
@@ -2282,7 +2349,11 @@ export default {
2282 2349
               if (plan[index].machine_disinfectant === 4) {
2283 2350
                 plan[index].machine_disinfectant = '1500mg/l含氯消毒剂'
2284 2351
               }
2285
-
2352
+   
2353
+               if (plan[index].disinfectan_way === 0) {
2354
+                plan[index].disinfectan_way = '/'
2355
+              }
2356
+      
2286 2357
               if (plan[index].disinfectan_way === 1) {
2287 2358
                 plan[index].disinfectan_way = '热化学消毒'
2288 2359
               }
@@ -2306,6 +2377,11 @@ export default {
2306 2377
               if (plan[index].disinfectan_way === 7) {
2307 2378
                 plan[index].disinfectan_way = '清洗'
2308 2379
               }
2380
+
2381
+              if (plan[index].disinfectant === 0) {
2382
+                plan[index].disinfectant = '/'
2383
+              }
2384
+
2309 2385
               if (plan[index].disinfectant === 1) {
2310 2386
                 plan[index].disinfectant = '20%柠檬酸'
2311 2387
               }
@@ -2378,6 +2454,11 @@ export default {
2378 2454
               if (plandetail[index].classtime === 3) {
2379 2455
                 plandetail[index].classtime = '晚上'
2380 2456
               }
2457
+              
2458
+              
2459
+              if (plandetail[index].way === 0) {
2460
+                plandetail[index].way = '/'
2461
+              }
2381 2462
 
2382 2463
               if (plandetail[index].way === 1) {
2383 2464
                 plandetail[index].way = '擦拭'
@@ -2385,6 +2466,10 @@ export default {
2385 2466
               if (plandetail[index].way === 2) {
2386 2467
                 plandetail[index].way = '化学消毒'
2387 2468
               }
2469
+             
2470
+              if (plandetail[index].machine_disinfectant === 0) {
2471
+                plandetail[index].machine_disinfectant = '/'
2472
+              }
2388 2473
 
2389 2474
               if (plandetail[index].machine_disinfectant === 1) {
2390 2475
                 plandetail[index].machine_disinfectant = '0.22%季铵盐'
@@ -2399,6 +2484,10 @@ export default {
2399 2484
               if (plandetail[index].machine_disinfectant === 4) {
2400 2485
                 plandetail[index].machine_disinfectant = '1500mg/l含氯消毒剂'
2401 2486
               }
2487
+              
2488
+               if (plandetail[index].disinfectan_way === 0) {
2489
+                plandetail[index].disinfectan_way = '/'
2490
+              }
2402 2491
 
2403 2492
               if (plandetail[index].disinfectan_way === 1) {
2404 2493
                 plandetail[index].disinfectan_way = '热化学消毒'
@@ -2423,6 +2512,11 @@ export default {
2423 2512
               if (plandetail[index].disinfectan_way === 7) {
2424 2513
                 plandetail[index].disinfectan_way = '清洗'
2425 2514
               }
2515
+             
2516
+               if (plandetail[index].disinfectant === 0) {
2517
+                plandetail[index].disinfectant = '/'
2518
+              }
2519
+
2426 2520
               if (plandetail[index].disinfectant === 1) {
2427 2521
                 plandetail[index].disinfectant = '20%柠檬酸'
2428 2522
               }
@@ -2522,7 +2616,7 @@ export default {
2522 2616
           return false
2523 2617
         }
2524 2618
         this.$confirm(
2525
-          '确认要删除所选的信息吗? <br>删除后,信息将无法恢复',
2619
+          '确认要删除所选记录吗? <br>删除后,信息将无法恢复',
2526 2620
           '删除提示',
2527 2621
           {
2528 2622
             dangerouslyUseHTMLString: true,
@@ -2575,7 +2669,7 @@ export default {
2575 2669
           return false
2576 2670
         }
2577 2671
         this.$confirm(
2578
-          '确认要删除所选吗? <br>删除后,信息将无法恢复',
2672
+          '确认要删除所选记录吗? <br>删除后,信息将无法恢复',
2579 2673
           '删除提示',
2580 2674
           {
2581 2675
             dangerouslyUseHTMLString: true,
@@ -2657,10 +2751,10 @@ export default {
2657 2751
             if (patients.is_infectious === 2) {
2658 2752
               this.userform.contagion = '有'
2659 2753
             }
2660
-            this.userform.patient_name = patients.name
2754
+            this.userform.patient_name = patients.patient_id
2661 2755
             var zone = response.data.data.zone
2662
-            console.log('zone', zone)
2663
-            this.userform.zone = zone.name
2756
+            console.log('zone==========', zone)
2757
+            this.userform.zone = zone.id
2664 2758
             var number = response.data.data.number
2665 2759
             console.log('nubmer', number)
2666 2760
             this.userform.bed_number = number.number
@@ -2670,60 +2764,7 @@ export default {
2670 2764
             this.userform.end_time = uParseTime(order.end_time, '{y}-{m}-{d} {h}:{i}')
2671 2765
             var prescription = response.data.data.prescription
2672 2766
             console.log('prescription', prescription)
2673
-            if (prescription.mode_id === 1) {
2674
-              this.userform.dialysis_mode = 'HD'
2675
-            }
2676
-            if (prescription.mode_id === 2) {
2677
-              this.userform.dialysis_mode = 'HDF'
2678
-            }
2679
-            if (prescription.mode_id === 3) {
2680
-              this.userform.dialysis_mode = 'HD+HP'
2681
-            }
2682
-            if (prescription.mode_id === 4) {
2683
-              this.userform.dialysis_mode = 'HP'
2684
-            }
2685
-            if (prescription.mode_id === 5) {
2686
-              this.userform.dialysis_mode = 'HF'
2687
-            }
2688
-            if (prescription.mode_id === 6) {
2689
-              this.userform.dialysis_mode = 'SCUF'
2690
-            }
2691
-            if (prescription.mode_id === 7) {
2692
-              this.userform.dialysis_mode = 'IUF'
2693
-            }
2694
-            if (prescription.mode_id === 8) {
2695
-              this.userform.dialysis_mode = 'HFHD'
2696
-            }
2697
-            if (prescription.mode_id === 9) {
2698
-              this.userform.dialysis_mode = 'HFHD+HP'
2699
-            }
2700
-            if (prescription.mode_id === 10) {
2701
-              this.userform.dialysis_mode = 'PHF'
2702
-            }
2703
-            if (prescription.mode_id === 11) {
2704
-              this.userform.dialysis_mode = 'HFR'
2705
-            }
2706
-            if (prescription.mode_id === 12) {
2707
-              this.userform.dialysis_mode = 'HDF+HP'
2708
-            }
2709
-            if (prescription.mode_id === 13) {
2710
-              this.userform.dialysis_mode = 'CRRT'
2711
-            }
2712
-            if (prescription.mode_id === 14) {
2713
-              this.userform.dialysis_mode = '腹水回输'
2714
-            }
2715
-            if (prescription.mode_id === 15) {
2716
-              this.userform.dialysis_mode = 'HD前置换'
2717
-            }
2718
-            if (prescription.mode_id === 16) {
2719
-              this.userform.dialysis_mode = 'HD后置换'
2720
-            }
2721
-            if (prescription.mode_id === 17) {
2722
-              this.userform.dialysis_mode = 'HDF前置换'
2723
-            }
2724
-            if (prescription.mode_id === 18) {
2725
-              this.userform.dialysis_mode = 'HDF后置换'
2726
-            }
2767
+            this.userform.dialysis_mode = prescription.mode_id
2727 2768
             var dislysis = response.data.data.dislysis
2728 2769
             console.log('dislysis', dislysis)
2729 2770
             this.userform.dialysis_time = dislysis.actual_treatment_hour + 'h' + dislysis.actual_treatment_minute + 'min'
@@ -2732,10 +2773,13 @@ export default {
2732 2773
           }
2733 2774
         })
2734 2775
       },
2776
+      
2777
+     getTimes(time) {
2778
+        return uParseTime(time, '{y}-{m}-{d} {h}:{i}')
2779
+      },
2780
+
2735 2781
       SaveInformation(formName) {
2736
-        if (this.userform.classtype === '') {
2737
-          this.userform.classtype = 0
2738
-        }
2782
+      
2739 2783
         var classtypes = this.userform.classtype
2740 2784
         var classtype = parseInt(classtypes)
2741 2785
         this.userform.classtype = classtype
@@ -2752,17 +2796,20 @@ export default {
2752 2796
         var patient_name = parseInt(patientName)
2753 2797
         this.userform.patient_name = patient_name
2754 2798
   
2755
-        if (this.userform.dialysis_mode === '') {
2756
-          this.userform.dialysis_mode = 0
2757
-        }
2799
+    
2758 2800
         var dialysismode = this.userform.dialysis_mode
2759 2801
         var dialysis_mode = parseInt(dialysismode)
2760 2802
         this.userform.dialysis_mode = dialysis_mode
2803
+        
2761 2804
 
2762 2805
         if (this.userform.failure_stage === '') {
2763 2806
           this.userform.failure_stage = 0
2764 2807
         }
2765
-
2808
+         
2809
+        if(this.userform.dialysis_checked === ''){
2810
+             this.userform.dialysis_checked = 0  
2811
+        } 
2812
+        
2766 2813
         if (this.userform.dialysis_checked === true) {
2767 2814
           this.userform.dialysis_checked = 1
2768 2815
         }
@@ -2771,6 +2818,10 @@ export default {
2771 2818
           this.userform.dialysis_checked = 0
2772 2819
         }
2773 2820
 
2821
+        if(this.userform.germ_checked === ""){
2822
+           this.userform.germ_checked = 0
2823
+        }
2824
+
2774 2825
         if (this.userform.germ_checked === true) {
2775 2826
           this.userform.germ_checked = 1
2776 2827
         }
@@ -2784,15 +2835,18 @@ export default {
2784 2835
         var dialysis_name = this.userform.dialysis_name
2785 2836
         var dialysis = parseInt(dialysis_name)
2786 2837
         this.userform.dialysis_name = dialysis
2787
-  
2788
-        // var signame = this.userform.sign_name
2789
-        // var signames = parseInt(signame)
2790
-        // this.userform.sign_name = signames
2838
+        
2839
+        if (this.userform.germ_name === ''){
2840
+           this.userform.germ_name = 0
2841
+        }
2842
+        var germname =  this.userform.germ_name
2843
+        var germames =  parseInt(germname)
2844
+        this.userform.germ_name = germames
2845
+      
2846
+        if(this.userform.clean === ""){
2847
+           this.userform.clean = 0
2848
+        }
2791 2849
 
2792
-        // var germ_number = this.userform.germ_number
2793
-        // var germnumber = parseInt(germ_number)
2794
-        // this.userform.germ_number = germnumber
2795
-  
2796 2850
         if (this.userform.clean === true) {
2797 2851
           this.userform.clean = 1
2798 2852
         }
@@ -2800,6 +2854,11 @@ export default {
2800 2854
         if (this.userform.clean === false) {
2801 2855
           this.userform.clean = 0
2802 2856
         }
2857
+
2858
+        this.userform.starttime = this.getTimes(this.userform.starttime)
2859
+        this.userform.endtime = this.getTimes(this.userform.endtime)
2860
+        
2861
+          
2803 2862
         this.$refs[formName].validate((valid) => {
2804 2863
           if (valid) {
2805 2864
             SaveInformation(this.equimentid, this.userform).then(response => {
@@ -2807,30 +2866,31 @@ export default {
2807 2866
                 var information = response.data.data.information
2808 2867
                 console.log('information', information)
2809 2868
                 this.$message.success('添加成功')
2869
+                // this.$refs.child.getInformationData()
2810 2870
               }
2811 2871
             })
2812 2872
           }
2813 2873
         })
2814 2874
       },
2815
-      changStartTime(val) {
2816
-        this.userform.starttime = val
2817
-      },
2818
-      changeEndTime(val) {
2819
-        this.userform.endtime = val
2820
-        console.log('val', val)
2821
-        console.log('开始时间', this.userform.starttime)
2822
-        console.log('呵呵', this.formatDuring(val))
2823
-      },
2824
-      formatDuring(mss) {
2825
-        const days = parseInt(mss / (1000 * 60 * 60 * 24)) // 得到天数
2826
-        const hours = parseInt((mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)) // 得到小时
2827
-        const minutes = parseInt((mss % (1000 * 60 * 60)) / (1000 * 60)) // 得到分钟数
2828
-        const seconds = (mss % (1000 * 60)) / 1000 // 得到秒数
2829
-        const str1 = hours < 10 ? ('0' + hours) : hours
2830
-        console.log('str1', str1)
2831
-        const str2 = minutes < 10 ? ('0' + minutes) : minutes
2832
-        return str1 + ':' + str2
2833
-      },
2875
+      // changStartTime(val) {
2876
+      //   this.userform.starttime = val
2877
+      // },
2878
+      // changeEndTime(val) {
2879
+      //   this.userform.endtime = val
2880
+      //   console.log('val', val)
2881
+      //   console.log('开始时间', this.userform.starttime)
2882
+      //   console.log('呵呵', this.formatDuring(val))
2883
+      // },
2884
+      // formatDuring(mss) {
2885
+      //   const days = parseInt(mss / (1000 * 60 * 60 * 24)) // 得到天数
2886
+      //   const hours = parseInt((mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)) // 得到小时
2887
+      //   const minutes = parseInt((mss % (1000 * 60 * 60)) / (1000 * 60)) // 得到分钟数
2888
+      //   const seconds = (mss % (1000 * 60)) / 1000 // 得到秒数
2889
+      //   const str1 = hours < 10 ? ('0' + hours) : hours
2890
+      //   console.log('str1', str1)
2891
+      //   const str2 = minutes < 10 ? ('0' + minutes) : minutes
2892
+      //   return str1 + ':' + str2
2893
+      // },
2834 2894
       // 获取签名
2835 2895
       getAllOrganization() {
2836 2896
         getAllOrganization().then(response => {
@@ -3236,7 +3296,8 @@ export default {
3236 3296
 </script>
3237 3297
 <style lang="scss" scoped>
3238 3298
     .zone{
3239
-       margin-left: 30px
3299
+      //  margin-left: 30px;
3300
+       text-align: left;
3240 3301
     }
3241 3302
     .disinfect{
3242 3303
       position: relative;

+ 1 - 1
src/xt_pages/management/index.vue Näytä tiedosto

@@ -108,7 +108,7 @@
108 108
           <template slot-scope="scope">{{ scope.row.name }}</template>
109 109
         </el-table-column>
110 110
 
111
-        <el-table-column label="位号" align="center">
111
+        <el-table-column label="位号" align="center">
112 112
           <template slot-scope="scope">{{ scope.row.bed_number }}</template>
113 113
         </el-table-column>
114 114
 

+ 27 - 33
src/xt_pages/user/dialysisRecord.vue Näytä tiedosto

@@ -117,7 +117,7 @@
117 117
             <template slot-scope="scope"
118 118
               ><span
119 119
                 >{{ scope.row.partition_name }}-{{
120
-                  scope.row.device_number
120
+                  scope.row.device.number
121 121
                 }}</span
122 122
               ></template
123 123
             >
@@ -140,7 +140,7 @@
140 140
           >
141 141
           </el-table-column>
142 142
           <el-table-column
143
-            prop="prescription.dry_weight"
143
+            prop="predialysis_evaluation.dry_weight"
144 144
             width="96"
145 145
             align="center"
146 146
             label="干体重(kg)"
@@ -192,25 +192,19 @@
192 192
               ></template
193 193
             >
194 194
           </el-table-column>
195
-          <el-table-column
196
-            prop="predialysis_evaluation.ultrafiltration_amount"
197
-            width="110"
198
-            align="center"
199
-            label="超滤总量(L)"
200
-          >
201
-          </el-table-column>
202
-          <el-table-column
203
-            prop="access"
204
-            width="100"
205
-            align="center"
206
-            label="血管通路"
207
-          >
208
-            <template slot-scope="scope"
209
-              ><span>{{
210
-                setVascularAccess(scope.row.prescription)
211
-              }}</span></template
212
-            >
213
-          </el-table-column>
195
+
196
+          <!--<el-table-column-->
197
+            <!--prop="access"-->
198
+            <!--width="100"-->
199
+            <!--align="center"-->
200
+            <!--label="血管通路"-->
201
+          <!--&gt;-->
202
+            <!--<template slot-scope="scope"-->
203
+              <!--&gt;<span>{{-->
204
+                <!--setVascularAccess(scope.row.prescription)-->
205
+              <!--}}</span></template-->
206
+            <!--&gt;-->
207
+          <!--</el-table-column>-->
214 208
           <el-table-column
215 209
             prop="type"
216 210
             width="200"
@@ -221,18 +215,18 @@
221 215
               <span>{{ setAnticoagulantsConfit(scope.row.prescription) }}</span>
222 216
             </template>
223 217
           </el-table-column>
224
-          <el-table-column
225
-            prop="model"
226
-            width="100"
227
-            align="center"
228
-            label="透析器型号"
229
-          >
230
-            <template slot-scope="scope"
231
-              ><span>{{
232
-                setDialyzerModel(scope.row.prescription)
233
-              }}</span></template
234
-            >
235
-          </el-table-column>
218
+          <!--<el-table-column-->
219
+            <!--prop="model"-->
220
+            <!--width="100"-->
221
+            <!--align="center"-->
222
+            <!--label="透析器型号"-->
223
+          <!--&gt;-->
224
+            <!--<template slot-scope="scope"-->
225
+              <!--&gt;<span>{{-->
226
+                <!--setDialyzerModel(scope.row.prescription)-->
227
+              <!--}}</span></template-->
228
+            <!--&gt;-->
229
+          <!--</el-table-column>-->
236 230
           <el-table-column
237 231
             prop="nurse"
238 232
             width="90"

+ 90 - 100
src/xt_pages/user/doctorAdvice.vue Näytä tiedosto

@@ -1,25 +1,25 @@
1 1
 <template>
2 2
   <div class="patient-container">
3 3
 
4
-    <el-dialog title="透析处方长期医嘱医生确认推送提醒" :visible.sync="dialogConfigVisible">
5
-      <el-form>
6
-        <el-form-item label="是否开启推送:">
7
-          <el-radio-group v-model="is_open_remind" @change="changeRemind">
8
-            <el-radio :label="1">开启</el-radio>
9
-            <el-radio :label="2">不开启</el-radio>
10
-          </el-radio-group>
11
-        </el-form-item>
12
-      </el-form>
13
-
14
-    </el-dialog>
4
+    <!--<el-dialog title="透析处方长期医嘱医生确认推送提醒" :visible.sync="dialogConfigVisible">-->
5
+    <!--<el-form>-->
6
+    <!--<el-form-item label="是否开启推送:">-->
7
+    <!--<el-radio-group v-model="is_open_remind" @change="changeRemind">-->
8
+    <!--<el-radio :label="1">开启</el-radio>-->
9
+    <!--<el-radio :label="2">不开启</el-radio>-->
10
+    <!--</el-radio-group>-->
11
+    <!--</el-form-item>-->
12
+    <!--</el-form>-->
13
+
14
+    <!--</el-dialog>-->
15 15
 
16 16
     <patient-sidebar :id="patientID" defaultActive="1-4" v-on:tran-patient="onTranPatient"></patient-sidebar>
17 17
     <div class="patient-app-container advice-container app-container">
18 18
       <div class="cellButton" style="float:right;">
19
-        <el-button :disabled="$store.getters.xt_user.subscibe.state==3?true:false" size="small"
20
-                   @click="dialogConfigVisible = true"
21
-                   type="primary" icon="el-icon-circle-plus-outline">长期医嘱提醒配置
22
-        </el-button>
19
+        <!--<el-button :disabled="$store.getters.xt_user.subscibe.state==3?true:false" size="small"-->
20
+        <!--@click="dialogConfigVisible = true"-->
21
+        <!--type="primary" icon="el-icon-circle-plus-outline">长期医嘱提醒配置-->
22
+        <!--</el-button>-->
23 23
         <el-button :disabled="$store.getters.xt_user.subscibe.state==3?true:false" size="small" @click="openNew"
24 24
                    type="primary" icon="el-icon-circle-plus-outline">新增
25 25
         </el-button>
@@ -63,13 +63,13 @@
63 63
                         :editable="false" style="width: 196px;" type="date" placeholder="选择日期时间" align="right"
64 64
                         :picker-options="pickerOptions" format="yyyy-MM-dd" value-format="yyyy-MM-dd"></el-date-picker>
65 65
       </div>
66
-      <el-table id="oictable" @cell-click="clickuseradvicecell" :header-cell-style="{
67
-                  backgroundColor: 'rgb(245, 247, 250)',
68
-                  color: '#606266'
69
-                }"
70
-                :row-style="{ color: '#303133' }"  row-class-name="user-advice-table-row" :span-method="mergeSpan" ref="multipleTable" :data="adviceTableData" border fit highlight-current-row @select="selectAdvice" @selection-change="changeAdvice" style="width: 100%;margin-top: 10px;" :cell-class-name="adviceNameShow" >
66
+      <el-table id="oictable" @cell-click="clickuseradvicecell"
67
+                :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)'}" row-class-name="user-advice-table-row"
68
+                :span-method="mergeSpan" ref="multipleTable" :data="adviceTableData" border fit highlight-current-row
69
+                @select="selectAdvice" @selection-change="changeAdvice" style="width: 100%;margin-top: 10px;"
70
+                :cell-class-name="adviceNameShow">
71 71
 
72
-      <el-table-column align="center" label="全选" width="60px" type="selection" fixed></el-table-column>
72
+        <el-table-column align="center" label="全选" width="60px" type="selection" fixed></el-table-column>
73 73
         <!--<el-table-column type="index" :index="indexMethod"  label="序号" width="60px" align="center"></el-table-column>-->
74 74
         <el-table-column label="期效" width="60px" property="advice_type" align="center" fixed>
75 75
           <template slot-scope="scope">
@@ -94,7 +94,7 @@
94 94
 
95 95
               <el-dropdown-menu slot="dropdown">
96 96
                 <!--<el-dropdown-item :disabled="$store.getters.xt_user.subscibe.state==3?true:false"-->
97
-                                  <!--@click.native="openEdit(scope.$index, scope.row)">修改医嘱-->
97
+                <!--@click.native="openEdit(scope.$index, scope.row)">修改医嘱-->
98 98
                 <!--</el-dropdown-item>-->
99 99
                 <el-dropdown-item v-if="scope.row.advice_type == 1"
100 100
                                   :disabled="$store.getters.xt_user.subscibe.state==3?true:false"
@@ -396,7 +396,7 @@
396 396
         <div slot="footer" class="dialog-footer">
397 397
           <el-button
398 398
             :disabled="$store.getters.xt_user.subscibe.state==3 || groupForm.adviceNames.length == 0?true:false"
399
-            type="primary" @click="submitgroupAdvice('groupForm')">保 存
399
+            type="primary" @click="submitgroupAdvice('groupForm')" :loading="addLoading">保 存
400 400
           </el-button>
401 401
         </div>
402 402
       </el-dialog>
@@ -1415,7 +1415,6 @@
1415 1415
                   duration: 2000
1416 1416
                 })
1417 1417
 
1418
-
1419 1418
                 this.dialogFormVisible = false
1420 1419
                 this.resetForm(formName)
1421 1420
                 var advice = response.data.data.advice
@@ -1499,7 +1498,7 @@
1499 1498
                     }
1500 1499
                     if (
1501 1500
                       response.data.data.advices[index].parent_id in childMap ===
1502
-                    false
1501
+                      false
1503 1502
                     ) {
1504 1503
                       childMap[response.data.data.advices[index].parent_id] = []
1505 1504
                     }
@@ -2168,20 +2167,20 @@
2168 2167
           this.adviceForm.advice_desc = this.adviceTemplateMaps[key].advice_desc
2169 2168
           this.adviceForm.single_dose_unit = this.adviceTemplateMaps[
2170 2169
             key
2171
-          ].single_dose_unit
2170
+            ].single_dose_unit
2172 2171
           this.adviceForm.single_dose =
2173 2172
             this.adviceTemplateMaps[key].single_dose + ''
2174 2173
           this.adviceForm.prescribing_number_unit = this.adviceTemplateMaps[
2175 2174
             key
2176
-          ].prescribing_number_unit
2175
+            ].prescribing_number_unit
2177 2176
           this.adviceForm.prescribing_number =
2178 2177
             this.adviceTemplateMaps[key].prescribing_number + ''
2179 2178
           this.adviceForm.delivery_way = this.adviceTemplateMaps[
2180 2179
             key
2181
-          ].delivery_way
2180
+            ].delivery_way
2182 2181
           this.adviceForm.execution_frequency = this.adviceTemplateMaps[
2183 2182
             key
2184
-          ].execution_frequency
2183
+            ].execution_frequency
2185 2184
         }
2186 2185
       },
2187 2186
       indexMethod(index) {
@@ -2426,6 +2425,7 @@
2426 2425
         getDoctorAdviceList(this.listQuery).then(response => {
2427 2426
           if (response.data.state == 1) {
2428 2427
             this.adviceTableData = response.data.data.advices
2428
+            console.log('数据是什么', this.adviceTableData)
2429 2429
             this.operators = response.data.data.operators
2430 2430
             if (this.operators.length > 0) {
2431 2431
               var operatorsLen = this.operators.length
@@ -2532,7 +2532,7 @@
2532 2532
           }, 1)
2533 2533
         } else {
2534 2534
           this.$message.error(
2535
-            '请先将医嘱类型切换到长期或临时,勾选需要打印的医嘱!'
2535
+            '请先将医嘱类型切换到长期或临时,勾选需要打印的医嘱!'
2536 2536
           )
2537 2537
           return false
2538 2538
         }
@@ -2662,10 +2662,10 @@
2662 2662
             var item = {
2663 2663
               advice_name: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2664 2664
                 index
2665
-              ].advice_name,
2665
+                ].advice_name,
2666 2666
               advice_desc: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2667 2667
                 index
2668
-              ].advice_desc,
2668
+                ].advice_desc,
2669 2669
               single_dose:
2670 2670
                 '' +
2671 2671
                 this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
@@ -2678,7 +2678,7 @@
2678 2678
                   .drug_spec,
2679 2679
               drug_spec_unit: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2680 2680
                 index
2681
-              ].drug_spec_unit,
2681
+                ].drug_spec_unit,
2682 2682
               prescribing_number:
2683 2683
                 '' +
2684 2684
                 this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index]
@@ -2687,15 +2687,15 @@
2687 2687
                 .DoctorAdviceTemplate[index].prescribing_number_unit,
2688 2688
               delivery_way: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2689 2689
                 index
2690
-              ].delivery_way,
2690
+                ].delivery_way,
2691 2691
               execution_frequency: this.adviceTemplateMaps[mapid]
2692 2692
                 .DoctorAdviceTemplate[index].execution_frequency,
2693 2693
               advice_id: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2694 2694
                 index
2695
-              ].id,
2695
+                ].id,
2696 2696
               selection: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2697 2697
                 index
2698
-              ].selection,
2698
+                ].selection,
2699 2699
 
2700 2700
               day_count: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].day_count,
2701 2701
               week_days: this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[index].week_days,
@@ -2715,7 +2715,7 @@
2715 2715
               var parentRow = thisRowKey
2716 2716
               var children = this.adviceTemplateMaps[mapid].DoctorAdviceTemplate[
2717 2717
                 index
2718
-              ].children
2718
+                ].children
2719 2719
               for (const key in children) {
2720 2720
                 thisRowKey++
2721 2721
                 var child = {
@@ -3034,41 +3034,41 @@
3034 3034
                       if (_this.groupSelectRow.row_key == children[j].row_key) {
3035 3035
                         _this.groupForm.adviceNames[index].children[
3036 3036
                           j
3037
-                        ].advice_name =
3037
+                          ].advice_name =
3038 3038
                           _this.nameForm.advice_name
3039 3039
                         _this.groupForm.adviceNames[index].children[
3040 3040
                           j
3041
-                        ].advice_desc =
3041
+                          ].advice_desc =
3042 3042
                           _this.nameForm.advice_desc
3043 3043
                         _this.groupForm.adviceNames[index].children[
3044 3044
                           j
3045
-                        ].single_dose =
3045
+                          ].single_dose =
3046 3046
                           '' + _this.nameForm.single_dose
3047 3047
                         _this.groupForm.adviceNames[index].children[
3048 3048
                           j
3049
-                        ].single_dose_unit =
3049
+                          ].single_dose_unit =
3050 3050
                           _this.nameForm.single_dose_unit
3051 3051
                         _this.groupForm.adviceNames[index].children[j].drug_spec =
3052 3052
                           '' + _this.nameForm.drug_spec
3053 3053
                         _this.groupForm.adviceNames[index].children[
3054 3054
                           j
3055
-                        ].drug_spec_unit =
3055
+                          ].drug_spec_unit =
3056 3056
                           _this.nameForm.drug_spec_unit
3057 3057
                         _this.groupForm.adviceNames[index].children[
3058 3058
                           j
3059
-                        ].prescribing_number =
3059
+                          ].prescribing_number =
3060 3060
                           '' + _this.nameForm.prescribing_number
3061 3061
                         _this.groupForm.adviceNames[index].children[
3062 3062
                           j
3063
-                        ].prescribing_number_unit =
3063
+                          ].prescribing_number_unit =
3064 3064
                           _this.nameForm.prescribing_number_unit
3065 3065
                         _this.groupForm.adviceNames[index].children[
3066 3066
                           j
3067
-                        ].delivery_way =
3067
+                          ].delivery_way =
3068 3068
                           _this.nameForm.delivery_way
3069 3069
                         _this.groupForm.adviceNames[index].children[
3070 3070
                           j
3071
-                        ].execution_frequency =
3071
+                          ].execution_frequency =
3072 3072
                           _this.nameForm.execution_frequency
3073 3073
 
3074 3074
                         _this.$set(
@@ -3083,7 +3083,6 @@
3083 3083
                   }
3084 3084
                 }
3085 3085
               } else {
3086
-                console.log('111111')
3087 3086
                 for (let index = 0; index < ale; index++) {
3088 3087
                   if (
3089 3088
                     _this.groupSelectRow.row_key ==
@@ -3094,8 +3093,6 @@
3094 3093
                     _this.groupForm.adviceNames[index].advice_desc =
3095 3094
                       _this.nameForm.advice_desc
3096 3095
 
3097
-
3098
-
3099 3096
                     _this.groupForm.adviceNames[index].single_dose =
3100 3097
                       '' + _this.nameForm.single_dose
3101 3098
                     _this.groupForm.adviceNames[index].single_dose_unit =
@@ -3368,29 +3365,29 @@
3368 3365
       }
3369 3366
       this.listQuery.id = this.patientID
3370 3367
 
3371
-      var nowDate = new Date()
3372
-      var nowYear = nowDate.getFullYear()
3373
-      var nowMonth = nowDate.getMonth() + 1
3374
-      var nowDay = nowDate.getDate()
3375
-
3376
-      this.listQuery.end_time =
3377
-        nowYear +
3378
-        '-' +
3379
-        (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
3380
-        '-' +
3381
-        (nowDay < 10 ? '0' + nowDay : nowDay)
3382
-
3383
-      nowDate.setMonth(nowDate.getMonth() - 1)
3384
-      nowYear = nowDate.getFullYear()
3385
-      nowMonth = nowDate.getMonth() + 1
3386
-      nowDay = nowDate.getDate()
3387
-
3388
-      this.listQuery.start_time =
3389
-        nowYear +
3390
-        '-' +
3391
-        (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
3392
-        '-' +
3393
-        (nowDay < 10 ? '0' + nowDay : nowDay)
3368
+      // var nowDate = new Date()
3369
+      // var nowYear = nowDate.getFullYear()
3370
+      // var nowMonth = nowDate.getMonth() + 1
3371
+      // var nowDay = nowDate.getDate()
3372
+
3373
+      // this.listQuery.end_time =
3374
+      //   nowYear +
3375
+      //   '-' +
3376
+      //   (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
3377
+      //   '-' +
3378
+      //   (nowDay < 10 ? '0' + nowDay : nowDay)
3379
+      //
3380
+      // nowDate.setMonth(nowDate.getMonth() - 1)
3381
+      // nowYear = nowDate.getFullYear()
3382
+      // nowMonth = nowDate.getMonth() + 1
3383
+      // nowDay = nowDate.getDate()
3384
+      //
3385
+      // this.listQuery.start_time =
3386
+      //   nowYear +
3387
+      //   '-' +
3388
+      //   (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
3389
+      //   '-' +
3390
+      //   (nowDay < 10 ? '0' + nowDay : nowDay)
3394 3391
 
3395 3392
       // this.fetchAllDoctorAndNurse();
3396 3393
       this.fetchAllAdminUsers()
@@ -3601,33 +3598,26 @@
3601 3598
     transform: rotate(90deg) !important;
3602 3599
   }
3603 3600
 
3604
-.user-advice-table-row:hover > td {
3605
-  background: #fff !important;
3606
-}
3607
-.user-advice-table-row td:hover {
3608
-  background: #fff !important;
3609
-}
3610
-#user-advice-select-template-table .el-table__row {
3611
-  display: table-row !important;
3612
-}
3613
-#user-advice-select-template-table .el-table__expand-icon {
3614
-  -webkit-transform: rotate(90deg) !important;
3615
-  transform: rotate(90deg) !important;
3616
-}
3617
-.advicenamedisplay .cell {
3618
-    /* float: left; */
3619
-    text-align: center;
3620
-}
3621
-.el-table td,
3622
-.el-table th.is-leaf,
3623
-.el-table--border,
3624
-.el-table--group {
3625
-  border-color: #d0d3da;
3626
-}
3627
-.el-table--border::after,
3628
-.el-table--group::after,
3629
-.el-table::before {
3630
-  background-color: #d0d3da;
3631
-}
3601
+  .user-advice-table-row:hover > td {
3602
+    background: #fff !important;
3603
+  }
3604
+
3605
+  .user-advice-table-row td:hover {
3606
+    background: #fff !important;
3607
+  }
3608
+
3609
+  #user-advice-select-template-table .el-table__row {
3610
+    display: table-row !important;
3611
+  }
3612
+
3613
+  #user-advice-select-template-table .el-table__expand-icon {
3614
+    -webkit-transform: rotate(90deg) !important;
3615
+    transform: rotate(90deg) !important;
3616
+  }
3617
+
3618
+  .advicenamedisplay .cell {
3619
+    float: left;
3620
+    text-align: left;
3621
+  }
3632 3622
 </style>
3633 3623
 

+ 125 - 98
src/xt_pages/workforce/components/tableData.vue Näytä tiedosto

@@ -290,7 +290,7 @@
290 290
       <span slot="footer" class="dialog-footer">
291 291
           <el-button @click="msDialogVisible = false">取 消</el-button>
292 292
           <el-button :disabled="$store.getters.xt_user.subscibe.state==3?true:false" type="primary"
293
-                     @click="submitTiaoZMS('changeSchedule')">保 存</el-button>
293
+                     @click="submitMode('changeSchedule')">保 存</el-button>
294 294
         </span>
295 295
     </el-dialog>
296 296
     <el-dialog
@@ -936,6 +936,38 @@
936 936
           }
937 937
         })
938 938
       },
939
+      submitMode(formName) {
940
+            this.changing_mode = true
941
+            this.changeSchedule.change_action = 'change_mode'
942
+            ChangeSchedule(this.currentData.id, this.changeSchedule).then(response => {
943
+              if (response.data.state == 0) {
944
+                this.$message.error(response.data.msg)
945
+              } else {
946
+                this.$message({
947
+                  type: 'success',
948
+                  message: '修改成功!'
949
+                })
950
+                var that = this
951
+                var schedule = response.data.data.schedule
952
+                this.scheduleZone.forEach(function(zone, index) {
953
+                  if (zone.zone_id == schedule.partition_id && zone.jihao_id == schedule.bed_id) {
954
+                    var weekPath = that.weekPath(schedule.schedule_week, schedule.schedule_type)
955
+                    if (weekPath.length == 2) {
956
+                      var weekPathKey = weekPath[0] + '_' + weekPath[1]
957
+                      that.scheduleZone[index][weekPathKey].mode_id = schedule.mode_id
958
+                      that.scheduleZone[index][weekPathKey].mode_name = typeof (that.modeOptions[schedule.mode_id]) === 'undefined' ? '' : that.modeOptions[schedule.mode_id].name
959
+                    }
960
+                  }
961
+                })
962
+                this.msDialogVisible = false
963
+              }
964
+              this.changing_mode = false
965
+            }).catch(err => {
966
+              this.$message.error(err)
967
+              this.changing_mode = false
968
+            })
969
+      },
970
+
939 971
       submitTiaoZMS(formName) {
940 972
         this.$refs[formName].validate((valid) => {
941 973
           if (valid) {
@@ -978,51 +1010,55 @@
978 1010
         this.device_id = this.current_devices[0].id
979 1011
       }, changeScheduleType(schedule_type) {
980 1012
         const params = {
981
-          type: schedule_type
1013
+          type: schedule_type,
1014
+          date: this.currentData.schedule_date,
1015
+
982 1016
         }
983 1017
         getUrgentScheduleInitData(params).then(rs => {
984 1018
           if (rs.data.state == 1) {
985 1019
             this.origin_schedules = rs.data.data.schedules
986
-            this.patients = rs.data.data.patients
987
-            this.modes = rs.data.data.modes
988 1020
             this.origin_device_numbers = rs.data.data.device_numbers
989 1021
 
990
-            for (let i = this.origin_schedules.length - 1; i >= 0; i--) {
991
-              for (let y = this.origin_device_numbers.length - 1; y >= 0; y--) {
992
-                if (this.origin_device_numbers[y].id == this.origin_schedules[i].bed_id) {
993
-                  this.origin_device_numbers.splice(y, 1)
994
-                }
1022
+            var zone_device_map = {};
1023
+            for (
1024
+              let index = 0;
1025
+              index < this.origin_device_numbers.length;
1026
+              index++
1027
+            ) {
1028
+              const device_number = this.origin_device_numbers[index];
1029
+              if (
1030
+                zone_device_map[device_number.zone_name] == null ||
1031
+                zone_device_map[device_number.zone_name] == undefined
1032
+              ) {
1033
+                zone_device_map[device_number.zone_name] = [];
995 1034
               }
1035
+              zone_device_map[device_number.zone_name].push(device_number);
996 1036
             }
1037
+            this.zone_device_map = zone_device_map;
997 1038
 
998
-            var zone_device_map = {}
999
-            for (let index = 0; index < this.origin_device_numbers.length; index++) {
1000
-              const device_number = this.origin_device_numbers[index]
1001
-              if (zone_device_map[device_number.zone.name] == null || zone_device_map[device_number.zone.name] == undefined) {
1002
-                zone_device_map[device_number.zone.name] = []
1003
-              }
1004
-              zone_device_map[device_number.zone.name].push(device_number)
1005
-            }
1006
-            this.zone_device_map = zone_device_map
1007
-            // debugger
1039
+            this.zone_names = Object.keys(this.zone_device_map);
1040
+
1041
+            console.log(this.current_devices)
1008 1042
 
1009
-            this.zone_names = Object.keys(this.zone_device_map)
1010 1043
             if (this.zone_names.length > 0) {
1011
-              this.zone_name = this.zone_names[0]
1012
-              this.current_devices = this.zone_device_map[this.zone_name]
1013
-              this.device_id = this.current_devices[0].id
1044
+              this.zone_name = this.zone_names[0];
1045
+              this.current_devices = this.zone_device_map[this.zone_name];
1046
+              this.device_id = this.current_devices[0].id;
1014 1047
             }
1048
+            console.log(this.current_devices)
1049
+
1050
+
1015 1051
             this.zone_device_options = [
1016 1052
               { values: this.zone_names },
1017 1053
               // { values: this.getDeviceNumberNames(this.current_devices) },
1018 1054
               { values: this.current_devices }
1019
-            ]
1055
+            ];
1056
+
1057
+            console.log(this.current_devices)
1020 1058
           } else {
1021
-            Toast.fail(rs.data.msg)
1022 1059
           }
1023 1060
         }).catch(err => {
1024 1061
           this.loading = false
1025
-          Toast.fail(err)
1026 1062
         })
1027 1063
       },
1028 1064
       submitTiaoX() {
@@ -1055,50 +1091,89 @@
1055 1091
             } else {
1056 1092
               this.jihaos = []
1057 1093
             }
1094
+
1058 1095
             const params = {
1059 1096
               type: this.currentData.schedule_type,
1060
-              date: this.currentData.schedule_date
1097
+              date: this.currentData.schedule_date,
1061 1098
             }
1062 1099
             getUrgentScheduleInitData(params).then(response => {
1063 1100
               if (response.data.state == 0) {
1064 1101
                 this.$message.error(response.data.msg)
1065 1102
               } else {
1066 1103
                 if (response.data.state == 1) {
1104
+
1067 1105
                   this.origin_schedules = response.data.data.schedules
1068 1106
                   this.origin_device_numbers = response.data.data.device_numbers
1069 1107
 
1070
-                  for (let i = this.origin_schedules.length - 1; i >= 0; i--) {
1071
-                    for (let y = this.origin_device_numbers.length - 1; y >= 0; y--) {
1072
-                      if (this.origin_device_numbers[y].id == this.origin_schedules[i].bed_id) {
1073
-                        this.origin_device_numbers.splice(y, 1)
1074
-                      }
1075
-                    }
1076
-                  }
1077
-                  // debugger
1078
-                  var zone_device_map = {}
1079
-                  for (let index = 0; index < this.origin_device_numbers.length; index++) {
1080
-                    const device_number = this.origin_device_numbers[index]
1081
-                    if (zone_device_map[device_number.zone.name] == null || zone_device_map[device_number.zone.name] == undefined) {
1082
-                      zone_device_map[device_number.zone.name] = []
1108
+
1109
+                  var zone_device_map = {};
1110
+                  for (
1111
+                    let index = 0;
1112
+                    index < this.origin_device_numbers.length;
1113
+                    index++
1114
+                  ) {
1115
+                    const device_number = this.origin_device_numbers[index];
1116
+                    if (
1117
+                      zone_device_map[device_number.zone_name] == null ||
1118
+                      zone_device_map[device_number.zone_name] == undefined
1119
+                    ) {
1120
+                      zone_device_map[device_number.zone_name] = [];
1083 1121
                     }
1084
-                    zone_device_map[device_number.zone.name].push(device_number)
1122
+                    zone_device_map[device_number.zone_name].push(device_number);
1085 1123
                   }
1086
-                  this.zone_device_map = zone_device_map
1087
-
1088
-                  this.zone_names = Object.keys(this.zone_device_map)
1124
+                  this.zone_device_map = zone_device_map;
1125
+                  this.zone_names = Object.keys(this.zone_device_map);
1089 1126
                   if (this.zone_names.length > 0) {
1090
-                    this.zone_name = this.zone_names[0]
1091
-                    this.current_devices = this.zone_device_map[this.zone_name]
1092
-                    this.device_id = this.current_devices[0].id
1093
-                  }
1127
+                    this.zone_name = this.zone_names[0];
1128
+                    this.current_devices = this.zone_device_map[this.zone_name];
1129
+
1130
+                    console.log(this.zone_device_map[this.zone_name])
1094 1131
 
1132
+                    this.device_id = this.current_devices[0].id;
1133
+                  }
1095 1134
                   this.zone_device_options = [
1096 1135
                     { values: this.zone_names },
1097 1136
                     // { values: this.getDeviceNumberNames(this.current_devices) },
1098 1137
                     { values: this.current_devices }
1099
-                  ]
1138
+                  ];
1139
+
1140
+
1141
+
1142
+
1143
+
1144
+
1145
+                  //
1146
+                  // for (let i = this.origin_schedules.length - 1; i >= 0; i--) {
1147
+                  //   for (let y = this.origin_device_numbers.length - 1; y >= 0; y--) {
1148
+                  //     if (this.origin_device_numbers[y].id == this.origin_schedules[i].bed_id) {
1149
+                  //       this.origin_device_numbers.splice(y, 1)
1150
+                  //     }
1151
+                  //   }
1152
+                  // }
1153
+                  // // debugger
1154
+                  // var zone_device_map = {}
1155
+                  // for (let index = 0; index < this.origin_device_numbers.length; index++) {
1156
+                  //   const device_number = this.origin_device_numbers[index]
1157
+                  //   if (zone_device_map[device_number.zone.name] == null || zone_device_map[device_number.zone.name] == undefined) {
1158
+                  //     zone_device_map[device_number.zone.name] = []
1159
+                  //   }
1160
+                  //   zone_device_map[device_number.zone.name].push(device_number)
1161
+                  // }
1162
+                  // this.zone_device_map = zone_device_map
1163
+                  //
1164
+                  // this.zone_names = Object.keys(this.zone_device_map)
1165
+                  // if (this.zone_names.length > 0) {
1166
+                  //   this.zone_name = this.zone_names[0]
1167
+                  //   this.current_devices = this.zone_device_map[this.zone_name]
1168
+                  //   this.device_id = this.current_devices[0].id
1169
+                  // }
1170
+                  //
1171
+                  // this.zone_device_options = [
1172
+                  //   { values: this.zone_names },
1173
+                  //   // { values: this.getDeviceNumberNames(this.current_devices) },
1174
+                  //   { values: this.current_devices }
1175
+                  // ]
1100 1176
                 } else {
1101
-                  Toast.fail(rs.data.msg)
1102 1177
                 }
1103 1178
               }
1104 1179
             }).catch(err => {
@@ -1328,54 +1403,6 @@
1328 1403
         } else {
1329 1404
           this.jihaos = []
1330 1405
         }
1331
-        const params = {
1332
-          type: row.schedule_type
1333
-        }
1334
-        getUrgentScheduleInitData(params).then(response => {
1335
-          if (response.data.state == 0) {
1336
-            this.$message.error(response.data.msg)
1337
-          } else {
1338
-            if (response.data.state == 1) {
1339
-              this.origin_schedules = response.data.data.schedules
1340
-              this.origin_device_numbers = response.data.data.device_numbers
1341
-
1342
-              for (let i = this.origin_schedules.length - 1; i >= 0; i--) {
1343
-                for (let y = this.origin_device_numbers.length - 1; y >= 0; y--) {
1344
-                  if (this.origin_device_numbers[y].id == this.origin_schedules[i].bed_id) {
1345
-                    this.origin_device_numbers.splice(y, 1)
1346
-                  }
1347
-                }
1348
-              }
1349
-
1350
-              var zone_device_map = {}
1351
-              for (let index = 0; index < this.origin_device_numbers.length; index++) {
1352
-                const device_number = this.origin_device_numbers[index]
1353
-                if (zone_device_map[device_number.zone.name] == null || zone_device_map[device_number.zone.name] == undefined) {
1354
-                  zone_device_map[device_number.zone.name] = []
1355
-                }
1356
-                zone_device_map[device_number.zone.name].push(device_number)
1357
-              }
1358
-              this.zone_device_map = zone_device_map
1359
-
1360
-              this.zone_names = Object.keys(this.zone_device_map)
1361
-              if (this.zone_names.length > 0) {
1362
-                this.zone_name = this.zone_names[0]
1363
-                this.current_devices = this.zone_device_map[this.zone_name]
1364
-                this.device_id = this.current_devices[0].id
1365
-              }
1366
-
1367
-              this.zone_device_options = [
1368
-                { values: this.zone_names },
1369
-                // { values: this.getDeviceNumberNames(this.current_devices) },
1370
-                { values: this.current_devices }
1371
-              ]
1372
-            } else {
1373
-              Toast.fail(rs.data.msg)
1374
-            }
1375
-          }
1376
-        }).catch(err => {
1377
-          this.$message.error(err)
1378
-        })
1379 1406
 
1380 1407
         this.searchTableVisible = false
1381 1408
         this.jhDialogVisible = true