seimin před 2 dny
rodič
revize
c7dce1984d

+ 5 - 0
App.vue

@@ -219,4 +219,9 @@
219 219
     overflow: hidden;
220 220
     text-overflow: ellipsis;
221 221
   }
222
+  .ellipsis-oneline{
223
+    white-space: nowrap;
224
+    overflow: hidden;
225
+    text-overflow: ellipsis;
226
+  }
222 227
 </style>

+ 89 - 24
components/fjj-condition/fjj-condition.vue

@@ -106,10 +106,7 @@
106 106
           <!-- 关键词 -->
107 107
           <view v-if="item.type == 'keyWord'">
108 108
             <view class="drawer-list-title flex justify-between">
109
-              <view>
110
-                {{item.title}}
111
-                <view style="color:red;font-size:28rpx;">(注:搜索住院号或检查项目名称)</view>
112
-              </view>
109
+              <view>{{item.title}}</view>
113 110
             </view>
114 111
             <view class="dateContent text-content flex">
115 112
               <view class="text-input">
@@ -127,7 +124,7 @@
127 124
             </view>
128 125
             <view class="dateContent sort-content flex">
129 126
               <checkbox-group @change="bedNumSortInputBlur">
130
-                <checkbox value="bedNumSort" :checked="bedNumSort" color="#49b856" />按床号排序
127
+                <checkbox value="bedNumSort" :checked="bedNumSort" color="#49b856" id="bedNumSort" /><label for="bedNumSort">按床号排序</label>
131 128
               </checkbox-group>
132 129
             </view>
133 130
           </view>
@@ -141,17 +138,33 @@
141 138
             <view class="dateContent inspectState-content flex">
142 139
               <!-- https://ext.dcloud.net.cn/plugin?id=1873#detail -->
143 140
               <ld-select :multiple="true" :list="inspectStateList" label-key="label" value-key="value" placeholder="请选择"
144
-                v-model="result.inspectState" @change="inspectStateChange" @parentCancel="parentCancel"></ld-select>
141
+                v-model="result.inspectState" @change="inspectStateChange"></ld-select>
145 142
             </view>
146 143
           </view>
147
-        </block>
148
-        <view class="filter-content-footer flex justify-center">
149
-          <view class="filter-content-footer-item" @tap="resetClick">
150
-            <text>重置</text>
151
-          </view>
152
-          <view class="filter-content-footer-item" :style="{color}" @tap="sureClick">
153
-            <text>确认</text>
144
+          <!-- 异常数据筛选 -->
145
+          <view v-if="item.type == 'abnormal'">
146
+            <view class="drawer-list-title flex justify-between">
147
+              <view>
148
+                {{item.title}}
149
+              </view>
150
+            </view>
151
+            <view class="checkContent">
152
+              <view class="">
153
+                <checkbox-group @change="noneEndDeptInputBlur">
154
+                  <checkbox value="noneEndDept" :checked="noneEndDept" color="#49b856" id="noneEndDept" /><label for="noneEndDept">未标记检查科室</label>
155
+                </checkbox-group>
156
+              </view>
157
+              <view class="">
158
+                <checkbox-group @change="noneYytimeInputBlur">
159
+                  <checkbox value="noneYytime" :checked="noneYytime" color="#49b856" id="noneYytime" /><label for="noneYytime">无预约时间检查</label>
160
+                </checkbox-group>
161
+              </view>
162
+            </view>
154 163
           </view>
164
+        </block>
165
+        <view class="foot_btn_spe">
166
+          <view class="btn3" style="background-image: none;background-color: #AFAFAF;" @tap="closeDrawer">取消</view>
167
+          <view class="btn1" @tap="sureClick">保存</view>
155 168
         </view>
156 169
       </scroll-view>
157 170
     </uni-drawer>
@@ -189,6 +202,12 @@
189 202
       bedNumSortGvie: {
190 203
         type: Boolean,
191 204
       },
205
+      noneEndDeptGvie: {
206
+        type: Boolean,
207
+      },
208
+      noneYytimeGvie: {
209
+        type: Boolean,
210
+      },
192 211
       list: {
193 212
         required: true,
194 213
         type: Array,
@@ -214,6 +233,8 @@
214 233
     created() {
215 234
       this.keyWord = this.keyWordGvie || '';
216 235
       this.bedNumSort = this.bedNumSortGvie;
236
+      this.noneEndDept = this.noneEndDeptGvie;
237
+      this.noneYytime = this.noneYytimeGvie;
217 238
       this.resetResult();
218 239
       uni.getSystemInfo({
219 240
         success: (res) => {
@@ -268,18 +289,11 @@
268 289
         maxNumber: "",
269 290
         keyWord: "",
270 291
         bedNumSort: false,
292
+        noneEndDept: false,
293
+        noneYytime: false,
271 294
       };
272 295
     },
273 296
     methods: {
274
-      parentCancel(flag) {
275
-        if (flag == 1) {
276
-          document.querySelector('.uni-drawer__content').style.width = '100vw';
277
-          document.querySelector('.drawer-list').style.padding = '0';
278
-        } else {
279
-          document.querySelector('.uni-drawer__content').style.width = '200px';
280
-          document.querySelector('.drawer-list').style.padding = '0 ' + uni.upx2px(20) + "px";
281
-        }
282
-      },
283 297
       getSelectedObj() {
284 298
         return this.commonResultObj();
285 299
       },
@@ -296,6 +310,8 @@
296 310
             (obj[item.key] = []) :
297 311
             item.type === "bedNumSort" ?
298 312
             (obj[item.key] = false) :
313
+            item.type === "abnormal" ?
314
+            (obj['noneEndDept'] = obj['noneYytime'] = false) :
299 315
             item.type === "inspectState" ?
300 316
             (obj[item.key] = ['1', '30']) :
301 317
             item.type === "single" ?
@@ -364,6 +380,8 @@
364 380
         this.maxNumber = "";
365 381
         this.keyWord = this.keyWordOld || '';
366 382
         this.bedNumSort = false;
383
+        this.noneEndDept = false;
384
+        this.noneYytime = false;
367 385
         this.single = [new Date().Format("yyyy/MM/dd")];
368 386
         for (let key in this.result) {
369 387
           if ((typeof this.result[key] == "object") && key != "inspectState") {
@@ -377,6 +395,9 @@
377 395
           } else {
378 396
             if (key == "bedNumSort") {
379 397
               this.result[key] = false;
398
+            } else if (key == "abnormal") {
399
+              this.result['noneEndDept'] = false;
400
+              this.result['noneYytime'] = false;
380 401
             } else if (key == "inspectState") {
381 402
               this.result[key] = ['1', '30'];
382 403
             } else {
@@ -453,6 +474,14 @@
453 474
         this.result.bedNumSort = e.detail.value.length > 0;
454 475
         this.bedNumSort = e.detail.value.length > 0;
455 476
       },
477
+      noneEndDeptInputBlur(e) {
478
+        this.result.noneEndDept = e.detail.value.length > 0;
479
+        this.noneEndDept = e.detail.value.length > 0;
480
+      },
481
+      noneYytimeInputBlur(e) {
482
+        this.result.noneYytime = e.detail.value.length > 0;
483
+        this.noneYytime = e.detail.value.length > 0;
484
+      },
456 485
       inspectStateChange(val) {
457 486
         this.result.inspectState = val;
458 487
       },
@@ -461,6 +490,31 @@
461 490
 </script>
462 491
 
463 492
 <style lang="scss" scoped>
493
+  .foot_btn_spe {
494
+    line-height: 88rpx;
495
+    height: 100rpx;
496
+    margin-top: 40rpx;
497
+    text-align: center;
498
+    display: flex;
499
+    justify-content: space-between;
500
+    flex-wrap: wrap;
501
+  
502
+    &::after {
503
+      content: '';
504
+      flex: 1;
505
+    }
506
+  
507
+    view {
508
+      height: 88rpx;
509
+      width: 48%;
510
+      margin: 0 1%;
511
+      background-image: linear-gradient(to right, #72c172, #3bb197);
512
+      color: #fff;
513
+      border-radius: 8rpx;
514
+      font-size: 32rpx;
515
+      margin-top: 16rpx;
516
+    }
517
+  }
464 518
   .flex {
465 519
     display: flex;
466 520
   }
@@ -495,7 +549,7 @@
495 549
     font-size: 34rpx;
496 550
     font-weight: 400;
497 551
     line-height: 48rpx;
498
-    margin: 38rpx 0 18rpx;
552
+    padding: 38rpx 0 18rpx;
499 553
     color: rgba(34, 34, 34, 1);
500 554
   }
501 555
 
@@ -534,7 +588,18 @@
534 588
 
535 589
   .dateContent {
536 590
     &>view {
537
-      background: rgba(244, 244, 244, 1);
591
+      border: 2rpx solid #ECECEC;
592
+      border-radius: 8rpx;
593
+      width: 100%;
594
+      height: 64rpx;
595
+      line-height: 64rpx;
596
+      margin-bottom: 12rpx;
597
+    }
598
+  }
599
+  
600
+  .checkContent {
601
+    &>view {
602
+      font-size: 15px !important;
538 603
       border-radius: 8rpx;
539 604
       width: 100%;
540 605
       height: 64rpx;

+ 308 - 0
components/inspectExecDeptModel/inspectExecDeptModel.vue

@@ -0,0 +1,308 @@
1
+<template>
2
+	<view class="changeHospital" v-show="disjunctor">
3
+		<view class="changeHospital__wrap">
4
+			<view class="changeHospital__header" v-if="title">
5
+				<text v-if="icon" class="changeHospital__icon newicon" :class="[
6
+				    'changeHospital__icon--' + icon,
7
+				    { 'newicon-duigou': icon === 'success' },
8
+				    { 'newicon-shibai': icon === 'error' },
9
+				    { 'newicon-wenhao': icon === 'warn' },
10
+				  ]"></text>{{ title }}
11
+			</view>
12
+			<view class="changeHospital__article">
13
+				<view v-if="content" class="changeHospital__content" v-html="content"></view>
14
+				<view class="uni-list-cell">
15
+					<view class="uni-list-cell-left">
16
+						检查科室:
17
+					</view>
18
+					<view class="uni-list-cell-db-text">
19
+            <picker style="height: 100%;" @change="bindPickerChange" :value="index" :range="execDeptList" range-key="dept">
20
+              <view class="uni-input ellipsis-oneline" :style="{ color: execDeptList[index] ? '' : '#CFCFCF'}">{{execDeptList[index]?execDeptList[index].dept:'请选择检查科室'}}</view>
21
+            </picker>
22
+					</view>
23
+				</view>
24
+			</view>
25
+			<view class="changeHospital__footer">
26
+				<view v-if="operate.ok" class="changeHospital__ok" @click="ok" hover-class="seimin-btn-hover">
27
+					{{ operate.ok || "" }}
28
+				</view>
29
+				<view v-if="operate.cancel" class="changeHospital__cancel" @click="cancel"
30
+					hover-class="seimin-btn-hover">
31
+					{{ operate.cancel || "" }}
32
+				</view>
33
+			</view>
34
+		</view>
35
+	</view>
36
+</template>
37
+
38
+<script>
39
+	import {
40
+		post
41
+	} from "../../http/http.js";
42
+	export default {
43
+		data() {
44
+			return {
45
+				userData: null,
46
+				hosId: null,
47
+				timer: null,
48
+        index: -1,
49
+			};
50
+		},
51
+		watch: {
52
+			disjunctor(newValue) {
53
+				console.log(newValue)
54
+				if(newValue){
55
+          this.index = this.execDeptList.findIndex(v => v.id == this.execDeptId)
56
+				}
57
+				if (newValue && this.operate.know == "返回") {
58
+					this.time = 5;
59
+					this.timer = setInterval(() => {
60
+						this.time--;
61
+						if (this.time <= 0) {
62
+							clearInterval(this.timer);
63
+							this.know();
64
+						}
65
+					}, 1000);
66
+				}
67
+			},
68
+		},
69
+		props: {
70
+			// 显示隐藏
71
+			disjunctor: {
72
+				type: Boolean,
73
+				default: false,
74
+			},
75
+      // 检查科室列表
76
+			execDeptList: {
77
+				type: Array,
78
+				default: () => [],
79
+			},
80
+			// 检查科室
81
+			execDeptId: {
82
+				type: Number,
83
+			},
84
+      // 标题
85
+			title: {
86
+				type: String,
87
+				default: "提示",
88
+			},
89
+			// 图标
90
+			icon: {
91
+				type: String,
92
+				default: "success",
93
+			},
94
+			// 内容
95
+			content: {
96
+				type: String,
97
+				default: "",
98
+			},
99
+			// 操作按钮文字
100
+			operate: {
101
+				type: Object,
102
+				default: () => {
103
+					return {
104
+						ok: "确认",
105
+						cancel: "取消",
106
+					};
107
+				},
108
+			},
109
+			name: {
110
+				type: String,
111
+				default: '交接人'
112
+			}
113
+		},
114
+		methods: {
115
+      bindPickerChange: function(e) {
116
+        this.index = e.detail.value
117
+      },
118
+			// 确定
119
+			ok() {
120
+        if (this.index < 0) {
121
+          uni.showToast({
122
+            icon: 'none',
123
+            title: '请选择检查科室!'
124
+          })
125
+          return;
126
+        }
127
+				let e = {};
128
+				if (this.index > -1) {
129
+					e.execDeptId = this.execDeptList[this.index].id;
130
+				}
131
+				this.$emit("ok", e);
132
+			},
133
+			// 取消
134
+			cancel() {
135
+				this.$emit("cancel");
136
+			},
137
+		},
138
+		created() {
139
+			this.hosId = uni.getStorageSync('userData').user.currentHospital.id;
140
+		}
141
+	};
142
+</script>
143
+
144
+<style lang="less" scoped>
145
+  .changeHospital__icon {
146
+  	font-size: 40rpx;
147
+    margin-right: 8rpx;
148
+  	&.changeHospital__icon--success {
149
+  		color: rgb(52, 179, 73);
150
+  	}
151
+  
152
+  	&.changeHospital__icon--warn {
153
+  		color: rgb(245, 165, 35);
154
+  	}
155
+  
156
+  	&.changeHospital__icon--error {
157
+  		color: rgb(255, 58, 82);
158
+  	}
159
+  }
160
+	.changeHospital {
161
+		position: fixed;
162
+		left: 0;
163
+		right: 0;
164
+		top: 0;
165
+		bottom: 0;
166
+		background-color: rgba(0, 0, 0, 0.2);
167
+		z-index: 999;
168
+
169
+		.uni-list-cell {
170
+			width: 95%;
171
+			display: flex;
172
+			flex-direction: row;
173
+			// justify-content: space-evenly;
174
+			align-items: center;
175
+			text-align: center;
176
+			margin-top: 32rpx;
177
+
178
+			.uni-list-cell-left {
179
+				font-size: 32rpx;
180
+				color: #666;
181
+        flex-shrink: 0;
182
+			}
183
+
184
+			.uni-list-cell-db {
185
+				border: 1px solid #e5e9ed;
186
+				background-color: #fff;
187
+				padding: 16rpx 0;
188
+				flex: 5;
189
+			}
190
+
191
+			.uni-list-cell-db-text {
192
+				flex: 1;
193
+				text-align: left;
194
+        border: 1px solid #DBDBDB;
195
+        padding: 0 8rpx;
196
+        height: 56rpx;
197
+        line-height: 56rpx;
198
+        border-radius: 4rpx;
199
+			}
200
+		}
201
+
202
+		.changeHospital__wrap {
203
+			width: 90vw;
204
+			position: absolute;
205
+			left: 50%;
206
+			top: 50%;
207
+			transform: translate(-50%, -50%);
208
+			background-color: #fff;
209
+			border-radius: 12rpx;
210
+			color: #666;
211
+
212
+			.changeHospital__header {
213
+				font-size: 36rpx;
214
+				color: #000;
215
+				height: 84rpx;
216
+				display: flex;
217
+				justify-content: center;
218
+				align-items: center;
219
+			}
220
+
221
+			.changeHospital__article {
222
+				width: 90%;
223
+				margin: 0 auto 25rpx;
224
+				padding: 48rpx 0;
225
+				background-color: rgb(249, 250, 251);
226
+				border: 2rpx solid rgb(229, 233, 237);
227
+				border-radius: 12rpx;
228
+				box-sizing: border-box;
229
+				display: flex;
230
+				flex-direction: column;
231
+				justify-content: center;
232
+				align-items: center;
233
+
234
+				&.p0 {
235
+					padding: 0;
236
+				}
237
+
238
+				.changeHospital__content {
239
+					font-size: 32rpx;
240
+				}
241
+
242
+				.changeHospital__info {
243
+					font-size: 32rpx;
244
+					color: rgb(102, 102, 102);
245
+				}
246
+
247
+				.specialCloseFlag {
248
+					width: 90%;
249
+					height: 100%;
250
+					padding: 16rpx;
251
+				}
252
+
253
+				.radio-wrap {
254
+					.radio-item {
255
+						margin-top: 16rpx;
256
+
257
+						/deep/ .uni-radio-input-checked {
258
+							background-color: #49b856 !important;
259
+							border-color: #49b856 !important;
260
+						}
261
+					}
262
+				}
263
+			}
264
+
265
+			.changeHospital__footer {
266
+				box-sizing: border-box;
267
+				height: 100rpx;
268
+				border-top: 2rpx solid rgb(229, 233, 237);
269
+				display: flex;
270
+				align-items: center;
271
+
272
+				view {
273
+					height: 100%;
274
+					display: flex;
275
+					align-items: center;
276
+					justify-content: center;
277
+					font-size: 36rpx;
278
+					color: rgb(102, 102, 102);
279
+					position: relative;
280
+
281
+					&:nth-of-type(2)::before {
282
+						content: "";
283
+						position: absolute;
284
+						left: 0;
285
+						bottom: 0;
286
+						width: 2rpx;
287
+						height: 87rpx;
288
+						background-color: rgb(229, 233, 237);
289
+					}
290
+				}
291
+
292
+				.changeHospital__ok {
293
+					flex: 1;
294
+					color: rgb(73, 184, 86);
295
+				}
296
+
297
+				.changeHospital__cancel {
298
+					flex: 1;
299
+				}
300
+
301
+				.changeHospital__know {
302
+					flex: 1;
303
+					color: rgb(73, 184, 86);
304
+				}
305
+			}
306
+		}
307
+	}
308
+</style>

+ 25 - 23
components/inspectRemoveModel/inspectRemoveModel.vue

@@ -2,15 +2,14 @@
2 2
 	<view class="changeHospital" v-show="disjunctor">
3 3
 		<view class="changeHospital__wrap">
4 4
 			<view class="changeHospital__header" v-if="title">
5
-				{{ title }}
6
-			</view>
7
-			<view class="changeHospital__article">
8 5
 				<text v-if="icon" class="changeHospital__icon newicon" :class="[
9 6
 				    'changeHospital__icon--' + icon,
10 7
 				    { 'newicon-duigou': icon === 'success' },
11 8
 				    { 'newicon-shibai': icon === 'error' },
12 9
 				    { 'newicon-wenhao': icon === 'warn' },
13
-				  ]"></text>
10
+				  ]"></text>{{ title }}
11
+			</view>
12
+			<view class="changeHospital__article">
14 13
 				<view v-if="content" class="changeHospital__content" v-html="content"></view>
15 14
 				<view class="uni-list-cell" v-show="remove">
16 15
 					<view class="uni-list-cell-left">
@@ -84,7 +83,7 @@
84 83
 				if(newValue){
85 84
 					this.startTimestamp = Date.now();
86 85
 					this.current = -1;
87
-					this.yyTime = '';
86
+					this.yyTime = this.yy ? new Date(this.yy) : '';
88 87
 				}
89 88
 				if (newValue && this.operate.know == "返回") {
90 89
 					this.time = 5;
@@ -99,6 +98,11 @@
99 98
 			},
100 99
 		},
101 100
 		props: {
101
+      // 预约时间
102
+      yy: {
103
+      	type: String,
104
+      	default: '',
105
+      },
102 106
 			// 是否移除检查
103 107
 			remove: {
104 108
 				type: Boolean,
@@ -173,6 +177,21 @@
173 177
 </script>
174 178
 
175 179
 <style lang="less" scoped>
180
+  .changeHospital__icon {
181
+  	font-size: 40rpx;
182
+    margin-right: 8rpx;
183
+  	&.changeHospital__icon--success {
184
+  		color: rgb(52, 179, 73);
185
+  	}
186
+  
187
+  	&.changeHospital__icon--warn {
188
+  		color: rgb(245, 165, 35);
189
+  	}
190
+  
191
+  	&.changeHospital__icon--error {
192
+  		color: rgb(255, 58, 82);
193
+  	}
194
+  }
176 195
 	.changeHospital {
177 196
 		position: fixed;
178 197
 		left: 0;
@@ -246,25 +265,8 @@
246 265
 					padding: 0;
247 266
 				}
248 267
 
249
-				.changeHospital__icon {
250
-					font-size: 138rpx;
251
-					margin-bottom: 32rpx;
252
-
253
-					&.changeHospital__icon--success {
254
-						color: rgb(52, 179, 73);
255
-					}
256
-
257
-					&.changeHospital__icon--warn {
258
-						color: rgb(245, 165, 35);
259
-					}
260
-
261
-					&.changeHospital__icon--error {
262
-						color: rgb(255, 58, 82);
263
-					}
264
-				}
265
-
266 268
 				.changeHospital__content {
267
-					font-size: 36rpx;
269
+					font-size: 32rpx;
268 270
 				}
269 271
 
270 272
 				.changeHospital__info {

+ 20 - 22
components/showModel/showModel.vue

@@ -2,10 +2,6 @@
2 2
   <view class="showModel" v-show="disjunctor">
3 3
     <view class="showModel__wrap">
4 4
       <view class="showModel__header" v-if="title">
5
-        {{ title }}
6
-        <text v-if="operate.know == '返回' && timerFlag">({{ time }})</text>
7
-      </view>
8
-      <view class="showModel__article" :class="{ p0: textareaFlag, p1: radioInspectionDistanceItem.length, p2: childrenDeptList.length || busyContentList.length }">
9 5
         <text
10 6
           v-if="icon"
11 7
           class="showModel__icon newicon"
@@ -15,7 +11,10 @@
15 11
             // { 'newicon-shibai': icon === 'error' },
16 12
             { 'newicon-wenhao': icon === 'warn' },
17 13
           ]"
18
-        ></text>
14
+        ></text>{{ title }}
15
+        <text v-if="operate.know == '返回'">({{ time }})</text>
16
+      </view>
17
+      <view class="showModel__article" :class="{ p0: textareaFlag, p1: radioInspectionDistanceItem.length, p2: childrenDeptList.length || busyContentList.length }">
19 18
         <view v-if="content" class="showModel__content" @click="tel()" v-html="content"></view>
20 19
         <view v-if="info" class="showModel__info">{{ info }}</view>
21 20
         <view class="specialCloseFlag" v-if="textareaFlag">
@@ -239,6 +238,22 @@ export default {
239 238
 </script>
240 239
 
241 240
 <style lang="less" scoped>
241
+.showModel__icon {
242
+  font-size: 40rpx;
243
+  margin-right: 8rpx;
244
+
245
+  &.showModel__icon--success {
246
+    color: rgb(52, 179, 73);
247
+  }
248
+
249
+  &.showModel__icon--warn {
250
+    color: rgb(245, 165, 35);
251
+  }
252
+
253
+  &.showModel__icon--error {
254
+    color: rgb(255, 58, 82);
255
+  }
256
+}
242 257
 .showModel {
243 258
   position: fixed;
244 259
   left: 0;
@@ -309,23 +324,6 @@ export default {
309 324
         }
310 325
       }
311 326
 
312
-      .showModel__icon {
313
-        font-size: 138rpx;
314
-        margin-bottom: 32rpx;
315
-
316
-        &.showModel__icon--success {
317
-          color: rgb(52, 179, 73);
318
-        }
319
-
320
-        &.showModel__icon--warn {
321
-          color: rgb(245, 165, 35);
322
-        }
323
-
324
-        &.showModel__icon--error {
325
-          color: rgb(255, 58, 82);
326
-        }
327
-      }
328
-
329 327
       .showModel__content {
330 328
         font-size: 36rpx;
331 329
         word-break: break-all;

+ 1 - 1
components/uni-drawer/uni-drawer.vue

@@ -87,7 +87,7 @@
87 87
 
88 88
 <style lang="scss" scoped>
89 89
 	// 抽屉宽度
90
-	$drawer-width: 220px;
90
+	$drawer-width: 615rpx;
91 91
 	.uni-drawer {
92 92
 		/* #ifndef APP-NVUE */
93 93
 		display: block;

+ 227 - 130
pages/inspectList/inspectList.vue

@@ -4,10 +4,9 @@
4 4
       <view class="page_tab_bar active">
5 5
         <view class="tab_dept">
6 6
           <text @click="changeDept">{{ currenDept.dept}}</text>
7
-          <button class="changeDept" type="default" size="mini" @click="moreFilter()">
8
-            更多筛选
9
-          </button>
7
+          <text class="newicon newicon-weibiaoti2010104" @click="changeDept"></text>
10 8
         </view>
9
+        <text class="moreFilter newicon newicon-shaixuan" @click="moreFilter"></text>
11 10
       </view>
12 11
     </view>
13 12
     <view v-if="zxzData.length == 0" class="zwsj">
@@ -21,78 +20,85 @@
21 20
         refresher-background="transport">
22 21
         <view class="page_item_wrap" v-for="(item, index) of zxzData" :key="index">
23 22
           <view class="page_item">
24
-            <view class="L"></view>
25
-            <view class="R"></view>
26 23
             <view class="page_item_top">
27 24
               <view class="page_item_top_L">
28
-                <template v-if="item.illnessState">
29
-                  <text v-if="item.illnessState.value === '2'"
30
-                    class="colorRed newicon newicon-tubiao_wei"></text>
31
-                  <text v-if="item.illnessState.value === '3'" class="colorRed newicon newicon-zhong"></text>
32
-                </template>
33
-                <template v-if="item.careLevel">
34
-                  <text v-if="item.careLevel.value === '0'" class="newicon newicon-te1"></text>
35
-                  <text v-if="item.careLevel.value === '1'" class="newicon newicon-1_round_solid"></text>
36
-                  <text v-if="item.careLevel.value === '2'" class="newicon newicon-2_round_solid"></text>
37
-                  <text v-if="item.careLevel.value === '3'" class="newicon newicon-3_round_solid"></text>
38
-                </template>
39
-                <text class="L_time"
40
-                  :style="{ color: item.focusPatient == 1 ? 'red' : '' }">{{ item.patientName }}({{ item.bedNum }})</text>
25
+                <view class="L_time" @click="toPatientDetail(item)">
26
+                  <template v-if="!item.execDept">
27
+                    <!-- 没有标记出行方式 -->
28
+                    <view class="circle"></view>
29
+                    <view class="circle"></view>
30
+                    <view class="circle"></view>
31
+                  </template>
32
+                  <template v-else-if="!item.yyTime">
33
+                    <!-- 没有预约时间 -->
34
+                    <view class="circle"></view>
35
+                    <view class="circle"></view>
36
+                  </template>
37
+                  <template v-else-if="!(item.patientDTO && item.patientDTO.tripTypeDTO)">
38
+                    <!-- 没有检查科室 -->
39
+                    <view class="circle"></view>
40
+                  </template>
41
+                  {{ item.patientName }}({{ item.bedNum }})
42
+                </view>
41 43
               </view>
42 44
               <view class="page_item_top_R">
43 45
                 <text>{{item.inspectState?item.inspectState.name:''}}</text>
44
-                <button @click="build(item)"
45
-                  v-if="!item.gdId&&(item.inspectState.value==1||item.inspectState.value==30)">建单</button>
46
+                <button @click="build(item)" v-if="!item.gdId&&(item.inspectState.value==1||item.inspectState.value==30)&&item.execDept">建单</button>
46 47
                 <button @click="viewWorkOrder(item)" v-if="item.gdId">查看工单</button>
47 48
               </view>
48 49
             </view>
49 50
             <view class="page_item_cont">
50 51
               <view class="page_item_conts">
51
-                <view>
52
-                  <text class="p_title">住院号:</text>
53
-                  <text class="p_info">{{ item.residenceNo || "-" }}</text>
52
+                <view class="page_item_conts_item">
53
+                  <view class="column">
54
+                    <text class="p_title">住院号:</text>
55
+                    <text class="p_info">{{ item.residenceNo }}</text>
56
+                  </view>
57
+                  <view class="column">
58
+                    <text class="p_title">出行方式:</text>
59
+                    <text class="p_info">{{ (item.patientDTO && item.patientDTO.tripTypeDTO) ? item.patientDTO.tripTypeDTO.inspectMode : '' }}</text>
60
+                  </view>
54 61
                 </view>
55
-                <view>
62
+                <view class="page_item_conts_item">
56 63
                   <text class="p_title">检查科室:</text>
57
-                  <text class="p_info">{{
58
-                    item.execDept ? item.execDept.dept : "-"
59
-                  }}</text>
64
+                  <text class="p_info">{{ item.execDept ? item.execDept.dept : "" }}<text class="newicon newicon-weibiaoti2010104 fz28" @click="changeExecDept(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30"></text></text>
60 65
                 </view>
61
-                <view>
66
+                <view class="page_item_conts_item">
62 67
                   <text class="p_title">检查项目:</text>
63
-                  <text class="p_info">{{ item.inspectName || "-" }}</text>
68
+                  <text class="p_info">{{ item.inspectName }}</text>
64 69
                 </view>
65
-                <view class="btn">
70
+                <view class="page_item_conts_item btn">
66 71
                   <text class="p_title">预约时间:</text>
67
-                  <text class="p_info">{{ item.yyTime || "-" }}</text>
68
-									<button @click="changeYyTime(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30">修改</button>
69
-                </view>
70
-                <view>
71
-                  <text class="p_title">预约叫号:</text>
72
-                  <text class="p_info">{{
73
-                    item.reservationNumber || "-"
74
-                  }}</text>
72
+                  <text class="p_info">{{ item.yyTime }}<text class="newicon newicon-weibiaoti2010104 fz28" @click="changeYyTime(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30"></text></text>
75 73
                 </view>
76
-                <view>
77
-                  <text class="p_title">是否紧急:</text>
78
-                  <text class="p_info"
79
-                    :class="{red:item.priority==='1'||item.priority===1}">{{(item.priority==='1'||item.priority===1)?'是':'否'}}</text>
74
+                <view class="page_item_conts_item">
75
+                  <view class="column">
76
+                    <text class="p_title">预约叫号:</text>
77
+                    <text class="p_info">{{ item.reservationNumber }}</text>
78
+                  </view>
79
+                  <view class="column">
80
+                    <text class="p_title">是否紧急:</text>
81
+                    <text class="p_info" :class="{red:item.priority==='1'||item.priority===1}">{{(item.priority==='1'||item.priority===1)?'是':'否'}}</text>
82
+                  </view>
80 83
                 </view>
81
-                <view>
82
-                  <text class="p_title">护理等级:</text>
83
-                  <text class="p_info"
84
-                    :class="{red:item.careLevel&&(item.careLevel.value==0||item.careLevel.value==1)}">{{item.careLevel?item.careLevel.name:'-'}}</text>
84
+                <view class="page_item_conts_item">
85
+                  <view class="column">
86
+                    <text class="p_title">护理等级:</text>
87
+                    <text class="p_info" :class="{red:item.careLevel&&(item.careLevel.value==0||item.careLevel.value==1)}">{{item.careLevel?item.careLevel.name:''}}</text>
88
+                  </view>
89
+                  <view class="column">
90
+                    <text class="p_title">病情级别:</text>
91
+                    <text class="p_info"
92
+                      :class="{red:item.illnessState&&(item.illnessState.value==2||item.illnessState.value==3)}">{{item.illnessState?item.illnessState.name:''}}</text>
93
+                  </view>
85 94
                 </view>
86
-                <view>
87
-                  <text class="p_title">病情级别:</text>
88
-                  <text class="p_info"
89
-                    :class="{red:item.illnessState&&(item.illnessState.value==2||item.illnessState.value==3)}">{{item.illnessState?item.illnessState.name:'-'}}</text>
95
+                <view class="page_item_conts_item">
96
+                  <text class="p_title">注意事项:</text>
97
+                  <text class="p_info">{{ item.patientDTO ? item.patientDTO.remark : '' }}</text>
90 98
                 </view>
91 99
               </view>
92 100
             </view>
93 101
           </view>
94
-          <view class="L-l"></view>
95
-          <view class="R-l"></view>
96 102
         </view>
97 103
       </scroll-view>
98 104
     </view>
@@ -100,12 +106,14 @@
100 106
     <bigScreen></bigScreen>
101 107
     <!-- 筛选 -->
102 108
     <fjj-condition @touchmove.stop :list="list" :visibleDrawer="visibleDrawer" @result="resultConditon"
103
-      :keyWordGvie="searchlist.keyWord" :keyWordOld="keyWordOld" :bedNumSortGvie="searchlist.bedNumSort" :inspectStateList="inspectStateList" />
109
+      :keyWordGvie="searchlist.keyWord" :keyWordOld="keyWordOld" :bedNumSortGvie="searchlist.bedNumSort" :noneEndDeptGvie="searchlist.noneEndDept" :noneYytimeGvie="searchlist.noneYytime" :inspectStateList="inspectStateList" />
104 110
     <!-- 弹窗 -->
105 111
     <showModel :title="models.title" :icon="models.icon" :disjunctor="models.disjunctor" :content="models.content"
106 112
       @ok="ok" @cancel="cancel" @know="know" :operate="models.operate"></showModel>
107 113
 		<!-- 弹窗 -->
108
-		<inspectRemoveModel :title="models1.title" :icon="models1.icon" :disjunctor="models1.disjunctor" :content="models1.content" @know="know1" :operate="models1.operate" @ok="ok1" @cancel="cancel1"></inspectRemoveModel>
114
+		<inspectRemoveModel :title="models1.title" :icon="models1.icon" :disjunctor="models1.disjunctor" :content="models1.content" @know="know1" :operate="models1.operate" @ok="ok1" @cancel="cancel1" :yy="currentInspect.yyTime"></inspectRemoveModel>
115
+    <!-- 弹窗 -->
116
+    <inspectExecDeptModel :title="models2.title" :icon="models2.icon" :disjunctor="models2.disjunctor" :content="models2.content" @know="know2" :operate="models2.operate" @ok="ok2" @cancel="cancel2" :execDeptList="currentInspect.inspectCheckType && currentInspect.inspectCheckType.deptList" :execDeptId="currentInspect.execDeptId"></inspectExecDeptModel>
109 117
   </view>
110 118
 </template>
111 119
 <script>
@@ -123,11 +131,15 @@
123 131
     data() {
124 132
       return {
125 133
 				keyWordOld: '',
126
-				currentInspect: null,
134
+				currentInspect: {},
127 135
 				// 弹窗model1
128 136
 				models1: {
129 137
 				  disjunctor: false,
130 138
 				},
139
+        // 弹窗model1
140
+        models2: {
141
+          disjunctor: false,
142
+        },
131 143
         // 记录当前滚动条的位置
132 144
         scrollYY: 0,
133 145
         // 建单的对象
@@ -159,6 +171,11 @@
159 171
             type: "inspectState", //检查信息状态
160 172
             key: "inspectState",
161 173
           },
174
+          {
175
+            title: "异常数据筛选",
176
+            type: "abnormal", //异常数据筛选
177
+            key: "abnormal",
178
+          },
162 179
         ],
163 180
         // 面板搜索数据
164 181
         searchlist: {
@@ -166,6 +183,8 @@
166 183
           keyWord: "",
167 184
           bedNumSort: false,
168 185
           inspectState: "1,30",
186
+          noneEndDept: false,
187
+          noneYytime: false,
169 188
         },
170 189
         // 检查信息状态列表
171 190
         inspectStateList: [],
@@ -190,6 +209,11 @@
190 209
       fjjCondition,
191 210
     },
192 211
     methods: {
212
+      toPatientDetail(data){
213
+        uni.navigateTo({
214
+          url: `/pages/patientInformationInfo/patientInformationInfo?patientCode=${data.patientCode}`,
215
+        });
216
+      },
193 217
 			// 修改预约时间->返回
194 218
 			know1() {
195 219
 			  this.models1.disjunctor = false;
@@ -254,6 +278,58 @@
254 278
 			    },
255 279
 			  };
256 280
 			},
281
+      // 修改检查科室
282
+			changeExecDept(item) {
283
+			  this.currentInspect = item;
284
+        if(this.currentInspect.inspectCheckType){
285
+          this.currentInspect.inspectCheckType.deptList = this.currentInspect.inspectCheckType.deptList || [];
286
+        }
287
+			  this.models2 = {
288
+			    disjunctor: true,
289
+			    content: `请选择[${item.patientName||''}]检查项目的检查科室`,
290
+			    icon: "warn",
291
+			    operate: {
292
+			      ok: "确定",
293
+			      cancel: "取消",
294
+			    },
295
+			  };
296
+			},
297
+      // 修改检查科室->返回
298
+      know2() {
299
+        this.models2.disjunctor = false;
300
+      },
301
+      // 修改检查科室->确定
302
+      ok2(data) {
303
+      	console.log(data);
304
+      	const { execDeptId } = data;
305
+        this.models2.disjunctor = false;
306
+        let postData = {
307
+          "id": this.currentInspect.id,
308
+          "execDeptId": execDeptId
309
+        };
310
+        
311
+        uni.showLoading({
312
+          title: '加载中',
313
+          mask: true,
314
+        })
315
+        post('/simple/data/updData/inspect', postData).then(res => {
316
+          uni.hideLoading();
317
+          if (res.status == 200) {
318
+            this.idx = 0;
319
+            this.totalNum = -1;
320
+            this.waitingOrders(0);
321
+          } else {
322
+            uni.showToast({
323
+              icon: "none",
324
+              title: "修改失败",
325
+            });
326
+          }
327
+        })
328
+      },
329
+      // 修改检查科室->取消
330
+      cancel2() {
331
+        this.models2.disjunctor = false;
332
+      },
257 333
       // 更多筛选
258 334
       moreFilter() {
259 335
         uni.showLoading({
@@ -413,6 +489,8 @@
413 489
             yyTime: obj.str_result.yyTime,
414 490
             keyWord: obj.str_result.keyWord,
415 491
             bedNumSort: obj.str_result.bedNumSort,
492
+            noneEndDept: obj.str_result.noneEndDept,
493
+            noneYytime: obj.str_result.noneYytime,
416 494
             inspectState: obj.str_result.inspectState,
417 495
           };
418 496
           this.idx = 0;
@@ -441,6 +519,7 @@
441 519
           idx,
442 520
           sum: 99999,
443 521
           inspect: {
522
+            queryInspect: 1,
444 523
             hosId: uni.getStorageSync("userData").user.currentHospital.id,
445 524
             platForm: 2,
446 525
             searchDays: 10000,
@@ -448,6 +527,8 @@
448 527
               id: this.currenDept.id,
449 528
             },
450 529
             clickSort: this.searchlist.bedNumSort,
530
+            noneEndDept: this.searchlist.noneEndDept ? 1 : undefined,
531
+            noneYytime: this.searchlist.noneYytime ? 1 : undefined,
451 532
             yyTime: this.searchlist.yyTime.split("/").join("-") + " 00:00:00",
452 533
           },
453 534
         };
@@ -585,25 +666,56 @@
585 666
     },
586 667
   };
587 668
 </script>
588
-<style lang="less">
669
+<style lang="less" scoped>
670
+  .toolbar {
671
+    position: fixed;
672
+    left: 0;
673
+    bottom: var(--window-bottom);
674
+    z-index: 99;
675
+    width: 100%;
676
+    display: flex;
677
+    justify-content: center;
678
+    align-items: center;
679
+    box-sizing: border-box;
680
+    border-radius: 4rpx;
681
+    background-color: #E5E8ED;
682
+  
683
+    .toolbar-icon {
684
+      font-size: 52rpx;
685
+      margin-right: 16rpx;
686
+      color: #49B856;
687
+    }
688
+  
689
+    .toolbar-sao {
690
+      font-size: 36rpx;
691
+      color: #333;
692
+    }
693
+  }
694
+  .newicon-weibiaoti2010104 {
695
+    font-size: 32rpx;
696
+    padding-left: 5rpx;
697
+    color: #8A8A8A;
698
+    &.fz28{
699
+      font-size: 28rpx;
700
+    }
701
+  }
702
+  button {
703
+    font-size: 24rpx;
704
+    color: #49b856;
705
+    height: 48rpx;
706
+    margin: 0;
707
+    display: flex;
708
+    align-items: center;
709
+    justify-content: center;
710
+  }
589 711
   .inspectList {
590 712
     width: 100%;
591 713
     height: 100%;
592 714
     position: relative;
593 715
 
594
-    .newicon {
595
-      color: #49b856;
596
-      font-size: 36rpx;
597
-
598
-      &.colorRed {
599
-        color: red;
600
-        font-size: 32rpx;
601
-      }
602
-    }
603
-
604 716
     .page_tab {
605 717
       width: 100%;
606
-      height: 96rpx;
718
+      height: 90rpx;
607 719
       display: flex;
608 720
       position: fixed;
609 721
       left: 0;
@@ -612,42 +724,25 @@
612 724
 
613 725
       .page_tab_bar {
614 726
         flex: 1;
615
-        font-size: 36rpx;
727
+        font-size: 30rpx;
616 728
         background: #fff;
617 729
         display: flex;
618 730
         justify-content: center;
619 731
         align-items: center;
620 732
         position: relative;
621
-
622
-        &:after {
623
-          content: "";
624
-          position: absolute;
625
-          left: 0;
626
-          bottom: 0;
627
-          height: 2rpx;
628
-          width: 100%;
629
-          background-color: transparent;
630
-        }
733
+        border-bottom: 8rpx solid #49B856;
631 734
 
632 735
         .tab_dept {
633 736
           position: relative;
634
-
635
-          .changeDept {
636
-            width: 140rpx;
637
-            white-space: nowrap;
638
-            margin: 0;
639
-            position: absolute;
640
-            right: 0;
641
-            top: 50%;
642
-            transform: translate(105%, -50%);
643
-            padding: 0 0.5em;
644
-            line-height: 2;
645
-          }
646
-
647
-          .moreFilter {
648
-            left: 0;
649
-            transform: translate(-105%, -50%);
650
-          }
737
+        }
738
+        
739
+        .moreFilter {
740
+          width: 48rpx;
741
+          position: absolute;
742
+          right: 16rpx;
743
+          top: 50%;
744
+          transform: translateY(-50%);
745
+          color: #8A8A8A;
651 746
         }
652 747
 
653 748
         &.active {
@@ -679,19 +774,20 @@
679 774
     }
680 775
 
681 776
     .page_items {
682
-      height: calc(100vh - 184rpx);
683
-      padding: 0 20rpx;
684
-      padding-top: 96rpx;
777
+      height: calc(100vh - 164rpx);
778
+      padding-top: 90rpx;
685 779
 
686 780
       .page_items_scroll {
687 781
         height: 100%;
688 782
 
689 783
         .page_item_wrap {
690 784
           position: relative;
691
-          margin-bottom: 32rpx;
785
+          margin-top: 8rpx;
786
+          &:last-of-type{
787
+            padding-bottom: 24rpx;
788
+          }
692 789
 
693 790
           .page_item {
694
-            margin-bottom: 16rpx;
695 791
             background: #fff;
696 792
             border-radius: 8rpx;
697 793
             overflow: hidden;
@@ -736,14 +832,33 @@
736 832
                 float: left;
737 833
                 display: flex;
738 834
                 align-items: center;
739
-                line-height: 88rpx;
740 835
                 text-overflow: ellipsis;
741 836
                 overflow: hidden;
742 837
                 white-space: nowrap;
743
-                color: #6cc076;
744 838
 
745 839
                 .L_time {
746
-                  font-size: 28rpx;
840
+                  font-size: 30rpx;
841
+                  font-weight: bold;
842
+                  position: relative;
843
+                  display: flex;
844
+                  align-items: center;
845
+                  &:after{
846
+                    content: '';
847
+                    position: absolute;
848
+                    left: 0;
849
+                    bottom: 0;
850
+                    height: 1px;
851
+                    width: 100%;
852
+                    background: #000;
853
+                  }
854
+                  .circle{
855
+                    display: inline-block;
856
+                    width: 12rpx;
857
+                    height: 12rpx;
858
+                    background-color: red;
859
+                    border-radius: 50%;
860
+                    margin-right: 8rpx;
861
+                  }
747 862
                 }
748 863
               }
749 864
 
@@ -754,47 +869,29 @@
754 869
                 justify-content: space-between;
755 870
 
756 871
                 text {
757
-                  font-size: 28rpx;
872
+                  font-size: 30rpx;
758 873
                   color: #49b856;
759 874
                   margin-right: 16rpx;
760 875
                 }
761
-
762
-                button {
763
-                  font-size: 28rpx;
764
-                  color: #49b856;
765
-                  height: 50rpx;
766
-                  line-height: 50rpx;
767
-                  margin: 0;
768
-                }
769 876
               }
770 877
             }
771 878
 
772 879
             .page_item_cont {
773
-              padding: 16rpx;
880
+              padding: 0 32rpx;
774 881
               text-align: left;
775 882
               position: relative;
776 883
 
777 884
               .page_item_conts {
778 885
                 color: rgb(102, 102, 102);
779
-                font-size: 28rpx;
886
+                font-size: 26rpx;
780 887
 
781
-                view {
782
-                  margin-bottom: 10rpx;
783
-                  margin-left: 40rpx;
888
+                .page_item_conts_item {
889
+                  margin-bottom: 16rpx;
784 890
                   display: flex;
785
-                }
786
-								.btn{
787
-									button {
788
-									  font-size: 28rpx;
789
-									  color: #49b856;
790
-									  height: 50rpx;
791
-									  line-height: 50rpx;
792
-									  margin: 0;
793
-									}
794
-								}
795
-
796
-                .p_title {
797
-                  width: 160rpx;
891
+                  justify-content: space-between;
892
+                  &:first-of-type{
893
+                    margin-top: 16rpx;
894
+                  }
798 895
                 }
799 896
 
800 897
                 .p_info {

+ 228 - 59
pages/patientInformationInfo/patientInformationInfo.vue

@@ -1,16 +1,16 @@
1 1
 <template>
2 2
 	<view class="patientInformationInfo" v-if="Object.keys(infoDATA).length > 0">
3 3
 		<view class="page_head">
4
-			<view class="title">{{ infoDATA.patientName }}<text class="patientCode">{{ infoDATA.residenceNo }}</text></view>
4
+			<view class="title">{{ infoDATA.patientName }}<text class="patientCode">{{ infoDATA.residenceNo }}({{ infoDATA.bedNum }})</text></view>
5 5
 			<view class="info">
6
+        <view class="bedNum" v-if="infoDATA.tripTypeDTO">
7
+        	<text class="info_h">陪检方式</text>
8
+        	<text class="info_b">{{ infoDATA.tripTypeDTO ? infoDATA.tripTypeDTO.inspectMode : '' }}</text>
9
+        </view>
6 10
 				<view :class="(infoDATA.careLevel || infoDATA.illnessState)?'bedNum':'waitingCount'">
7
-					<text class="info_h">床号</text>
8
-					<text class="info_b">{{ infoDATA.bedNum }}</text>
9
-				</view>
10
-				<!-- <view :class="(infoDATA.careLevel || infoDATA.illnessState)?'bedNum':'waitingCount'">
11 11
 					<text class="info_h">待检查数</text>
12 12
 					<text class="info_b">{{ infoDATA.watingCount }}</text>
13
-				</view> -->
13
+				</view>
14 14
 				<view class="bedNum" v-if="infoDATA.careLevel">
15 15
 					<text class="info_h">护理等级</text>
16 16
 					<text class="info_b">{{ infoDATA.careLevel.name }}</text>
@@ -20,6 +20,9 @@
20 20
 					<text class="info_b">{{ infoDATA.illnessState.name }}</text>
21 21
 				</view>
22 22
 			</view>
23
+      <view class="remark">
24
+        <text class="remarkTitle">注意事项:</text><text class="remarkInfo">{{infoDATA.remark}}</text>
25
+      </view>
23 26
 		</view>
24 27
     <scroll-view v-if="!isEmpty" scroll-y class="scrollContent">
25 28
       <view class="page_item" v-for="(inspects, key, index) in infoDATA.inspectListMap" :key="key">
@@ -32,34 +35,42 @@
32 35
             <view class="splitLineBox"></view>
33 36
           </view>
34 37
         </view>
35
-        <view class="page_item_info" :class="{mt0: i === 0}" v-for="(item, i) in inspects" :key="item.id">
36
-          <view class="page_item_info_title">检查项目:<text class="bold">{{ item.inspectName }}</text></view>
37
-          <view class="page_item_info_title">检查科室:<text>{{ item.execDept ? item.execDept.dept : "" }}</text></view>
38
-          <view class="page_item_info_title btn row">
39
-            <view>预约时间:<text>{{ item.yyTime | filterSecondDate }}</text><text v-if="item.reservationNumber">({{ item.reservationNumber }})</text></view>
40
-            <button @click="changeYyTime(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30">修改</button>
38
+        <checkbox-group @change="checkboxChange($event, key)">
39
+          <view class="page_item_info" :class="{mt0: i === 0}" v-for="(item, i) in inspects" :key="item.id">
40
+            <label class="page_item_info_title" style="display: inline-block;width: 100%;">
41
+              <checkbox color="#49B856" :value="item.id + ''" :checked="item.checked" />
42
+              检查项目:<text class="bold">{{ item.inspectName }}</text></label>
43
+            <view class="page_item_info_title"><text :class="{red: !item.execDept}">检查科室:</text><text>{{ item.execDept ? item.execDept.dept : "" }}<text class="newicon newicon-weibiaoti2010104 fz28" @click="changeExecDept(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30"></text></text></view>
44
+            <view class="page_item_info_title btn row">
45
+              <view><text :class="{red: !item.yyTime}">预约时间:</text><text>{{ item.yyTime | filterSecondDate }}</text><text v-if="item.reservationNumber">({{ item.reservationNumber }})</text><text class="newicon newicon-weibiaoti2010104" @click="changeYyTime(item)" v-if="item.inspectState.value == 1 || item.inspectState.value == 30"></text></view>
46
+            </view>
47
+            <view class="page_item_info_title row">
48
+              <view>是否紧急:<text :class="{red:item.priority===1||item.priority==='1'}">{{ (item.priority===1||item.priority==='1')?'是':'否' }}</text></view>
49
+              <view>状态:<text v-if="item.inspectState">{{ item.inspectState.name }}</text></view>
50
+            </view>
51
+            <view class="buildOrder" @click="build(item)" v-if="!item.gdId&&(item.inspectState.value==1||item.inspectState.value==30)">建单</view>
41 52
           </view>
42
-          <view class="page_item_info_title row">
43
-            <view>是否紧急:<text :class="{red:item.priority===1||item.priority==='1'}">{{ (item.priority===1||item.priority==='1')?'是':'否' }}</text></view>
44
-            <view>状态:<text v-if="item.inspectState">{{ item.inspectState.name }}</text></view>
45
-          </view>
46
-          <view class="buildOrder" @click="build(item)" v-if="!item.gdId&&(item.inspectState.value==1||item.inspectState.value==30)">建单</view>
47
-        </view>
53
+        </checkbox-group>
48 54
       </view>
49 55
     </scroll-view>
50 56
 		<view v-if="isEmpty" class="zwsj">
51 57
 			<image class="zwsj-img" mode="widthFix" src="../../static/img/zanwushuju.png"></image>
52 58
 			<view class="zwsj-txt">暂无检查信息</view>
53 59
 		</view>
54
-    <view class="toolbar" @click="Scanning()">
55
-      <text class="toolbar-icon newicon newicon-saoma"></text>
56
-      <text class="toolbar-sao">扫一扫</text>
60
+    <view class="page_item_btns">
61
+      <view class="page_item_btn" hover-class="seimin-btn-hover" @click="buildOrders()">批量陪检</view>
62
+      <view class="toolbar" @click="Scanning()">
63
+        <text class="toolbar-icon newicon newicon-saoma"></text>
64
+        <text class="toolbar-sao">扫一扫</text>
65
+      </view>
57 66
     </view>
58
-		<!-- 弹窗 -->
59
-		<inspectRemoveModel :title="models1.title" :icon="models1.icon" :disjunctor="models1.disjunctor" :content="models1.content" @know="know1" :operate="models1.operate" @ok="ok1" @cancel="cancel1"></inspectRemoveModel>
60 67
     <!-- 弹窗 -->
61 68
     <showModel :title="models.title" :icon="models.icon" :disjunctor="models.disjunctor" :content="models.content"
62 69
       @ok="ok" @cancel="cancel" @know="know" :operate="models.operate"></showModel>
70
+    <!-- 弹窗 -->
71
+    <inspectRemoveModel :title="models1.title" :icon="models1.icon" :disjunctor="models1.disjunctor" :content="models1.content" @know="know1" :operate="models1.operate" @ok="ok1" @cancel="cancel1" :yy="currentInspect.yyTime"></inspectRemoveModel>
72
+    <!-- 弹窗 -->
73
+    <inspectExecDeptModel :title="models2.title" :icon="models2.icon" :disjunctor="models2.disjunctor" :content="models2.content" @know="know2" :operate="models2.operate" @ok="ok2" @cancel="cancel2" :execDeptList="currentInspect.inspectCheckType && currentInspect.inspectCheckType.deptList" :execDeptId="currentInspect.execDeptId"></inspectExecDeptModel>
63 74
 	</view>
64 75
 </template>
65 76
 <script>
@@ -72,6 +83,7 @@
72 83
 	export default {
73 84
 		data() {
74 85
 			return {
86
+        currentInspect: {},
75 87
         SMFlag: true,
76 88
         isEmpty: true,
77 89
 				options: {},
@@ -80,8 +92,12 @@
80 92
 				models1: {
81 93
 				  disjunctor: false,
82 94
 				},
95
+        // 弹窗model1
96
+        models2: {
97
+          disjunctor: false,
98
+        },
83 99
         // 建单的对象
84
-        jdItem: {},
100
+        jdItem: [],
85 101
         // 弹窗model
86 102
         models: {
87 103
           disjunctor: false,
@@ -89,16 +105,76 @@
89 105
 			};
90 106
 		},
91 107
 		methods: {
108
+      // 选择楼栋
109
+      checkboxChange: function(e, key) {
110
+        var dataList = this.infoDATA.inspectListMap[key],
111
+            values = e.detail.value;
112
+        for (var i = 0, lenI = dataList.length; i < lenI; ++i) {
113
+          const item = dataList[i]
114
+          if (values.includes(item.id + '')) {
115
+            this.$set(item, 'checked', true)
116
+          } else {
117
+            this.$set(item, 'checked', false)
118
+          }
119
+        }
120
+      },
121
+      // 批量陪检
122
+      buildOrders(){
123
+        let list = Object.values(this.infoDATA.inspectListMap).flat().filter(v => v.checked);
124
+        console.log(list);
125
+        if(list.length){
126
+          // 只要有一个没有检查科室
127
+          let inspectDTO = list.find(v => !v.execDept);
128
+          if(inspectDTO){
129
+            this.models = {
130
+              disjunctor: true,
131
+              title: "提示",
132
+              content: `<span class="red">${inspectDTO.inspectName || ''}</span>没有检查科室,不能建单`,
133
+              icon: "warn",
134
+              operate: {
135
+                know: "返回",
136
+              },
137
+            };
138
+            return;
139
+          }
140
+          this.jdItem = list;
141
+          this.models = {
142
+            disjunctor: true,
143
+            title: "提示",
144
+            content: `您选择<span class="red">${this.infoDATA.patientName || ""}</span>患者<span class="red">${list.length}</span>项检查,是否确认建单?`,
145
+            icon: "warn",
146
+            operate: {
147
+              ok: "确定",
148
+              cancel: "取消",
149
+            },
150
+          };
151
+        }else{
152
+          uni.showToast({
153
+            icon: "none",
154
+            title: "至少选择一个检查!",
155
+          });
156
+        }
157
+      },
92 158
       // 建单
93 159
       build(data) {
94 160
         console.log(data);
95
-        this.jdItem = data;
161
+        if(!data.execDept){
162
+          this.models = {
163
+            disjunctor: true,
164
+            title: "提示",
165
+            content: `<span class="red">${data.inspectName || ''}</span>没有检查科室,不能建单`,
166
+            icon: "warn",
167
+            operate: {
168
+              know: "返回",
169
+            },
170
+          };
171
+          return;
172
+        }
173
+        this.jdItem = [data];
96 174
         this.models = {
97 175
           disjunctor: true,
98 176
           title: "提示",
99
-          content: `您即将创建【${data.patientName || ""}】患者前往【${
100
-          data.execDept ? data.execDept.dept : ""
101
-        }】进行【${data.inspectName || ""}】检查,您确认吗?`,
177
+          content: `您即将创建<span class="red">${data.patientName || ""}</span>患者前往<span class="red">${ data.execDept ? data.execDept.dept : "" }</span>进行<span class="red">${data.inspectName || ""}</span>检查,您确认吗?`,
102 178
           icon: "warn",
103 179
           operate: {
104 180
             ok: "确定",
@@ -109,7 +185,7 @@
109 185
       //建单后返回
110 186
       know() {
111 187
         this.models.disjunctor = false;
112
-        this.getInfo(this.jdItem.patientCode);
188
+        this.getInfo(this.infoDATA.patientCode);
113 189
       },
114 190
       //建单确定
115 191
       ok() {
@@ -141,11 +217,9 @@
141 217
                     id: this.infoDATA.department.id
142 218
                   },
143 219
                   patient: {
144
-                    patientCode: this.jdItem.patientCode
220
+                    patientCode: this.infoDATA.patientCode
145 221
                   },
146
-                  checkList: [{
147
-                    id: this.jdItem.id
148
-                  }],
222
+                  checkList: this.jdItem,
149 223
                   goods: "",
150 224
                   worker: {
151 225
                     id: uni.getStorageSync("userData").user.id
@@ -154,14 +228,17 @@
154 228
                 },
155 229
               };
156 230
               //根据检查的紧急度加急
157
-              if (this.jdItem.priority === 1 || this.jdItem.priority === '1') {
158
-                postData.workOrder["urgentDetails"] = {
159
-                  checkStatus: {
160
-                    id: 329
161
-                  },
162
-                  urgentReason: '系统根据检查信息,自动进行加急',
163
-                };
164
-              }
231
+              this.jdItem.forEach(v => {
232
+                if (v.priority === 1 || v.priority === '1') {
233
+                  postData.workOrder["urgentDetails"] = {
234
+                    checkStatus: {
235
+                      id: 329
236
+                    },
237
+                    urgentReason: '系统根据检查信息,自动进行加急',
238
+                  };
239
+                }
240
+              })
241
+
165 242
               post("/api/startOrder", postData).then((res) => {
166 243
                 uni.hideLoading();
167 244
                 let msg = res.msg;
@@ -278,6 +355,56 @@
278 355
 			    },
279 356
 			  };
280 357
 			},
358
+      // 修改检查科室
359
+      changeExecDept(item) {
360
+        this.currentInspect = item;
361
+        if(this.currentInspect.inspectCheckType){
362
+          this.currentInspect.inspectCheckType.deptList = this.currentInspect.inspectCheckType.deptList || [];
363
+        }
364
+        this.models2 = {
365
+          disjunctor: true,
366
+          content: `请选择[${item.patientName||''}]检查项目的检查科室`,
367
+          icon: "warn",
368
+          operate: {
369
+            ok: "确定",
370
+            cancel: "取消",
371
+          },
372
+        };
373
+      },
374
+      // 修改检查科室->返回
375
+      know2() {
376
+        this.models2.disjunctor = false;
377
+      },
378
+      // 修改检查科室->确定
379
+      ok2(data) {
380
+      	console.log(data);
381
+      	const { execDeptId } = data;
382
+        this.models2.disjunctor = false;
383
+        let postData = {
384
+          "id": this.currentInspect.id,
385
+          "execDeptId": execDeptId
386
+        };
387
+        
388
+        uni.showLoading({
389
+          title: '加载中',
390
+          mask: true,
391
+        })
392
+        post('/simple/data/updData/inspect', postData).then(res => {
393
+          uni.hideLoading();
394
+          if (res.status == 200) {
395
+            this.getInfo(this.options.patientCode);
396
+          } else {
397
+            uni.showToast({
398
+              icon: "none",
399
+              title: "修改失败",
400
+            });
401
+          }
402
+        })
403
+      },
404
+      // 修改检查科室->取消
405
+      cancel2() {
406
+        this.models2.disjunctor = false;
407
+      },
281 408
 			// 请求详细页面的数据
282 409
 			getInfo(patientCode) {
283 410
 				uni.showLoading({
@@ -286,6 +413,7 @@
286 413
 				});
287 414
 				post("/nurse/workOrder/getPatientInspectInfo", {
288 415
 					patientCode,
416
+          queryInspect: 1,
289 417
 				}).then((res) => {
290 418
 					uni.hideLoading();
291 419
 					if (res.status == 200) {
@@ -317,28 +445,58 @@
317 445
 	};
318 446
 </script>
319 447
 <style lang="less" scoped>
320
-  .toolbar {
321
-    margin-bottom: 16rpx;
322
-    z-index: 999;
323
-    height: 88rpx;
448
+  /deep/ uni-checkbox:not([disabled]) .uni-checkbox-input:hover{
449
+    border-color: #49B856!important;
450
+  }
451
+  .page_item_btns{
324 452
     display: flex;
325
-    justify-content: center;
453
+    justify-content: space-between;
326 454
     align-items: center;
327
-    box-sizing: border-box;
328
-    border-radius: 4rpx;
329
-    background-color: #E5E8ED;
330
-
331
-    .toolbar-icon {
332
-      font-size: 52rpx;
333
-      margin-right: 16rpx;
334
-      color: #07863c;
335
-    }
336
-
337
-    .toolbar-sao {
455
+    margin-top: 16rpx;
456
+    margin-bottom: 16rpx;
457
+    .page_item_btn {
458
+      flex: 1;
459
+      height: 88rpx;
460
+      background-image: linear-gradient(to right, #72c172, #3bb197);
461
+      border-radius: 8rpx;
462
+      line-height: 88rpx;
463
+      color: #fff;
338 464
       font-size: 36rpx;
339
-      color: #333;
465
+      font-weight: 700;
466
+      text-align: center;
467
+      margin-right: 24rpx;
468
+      &:first-of-type{
469
+        margin-left: 24rpx;
470
+      }
340 471
     }
472
+    .toolbar {
473
+      flex: 1;
474
+      z-index: 999;
475
+      height: 88rpx;
476
+      display: flex;
477
+      justify-content: center;
478
+      align-items: center;
479
+      box-sizing: border-box;
480
+      border-radius: 4rpx;
481
+      background-color: #E5E8ED;
482
+      margin-right: 24rpx;
483
+    
484
+      .toolbar-icon {
485
+        font-size: 52rpx;
486
+        margin-right: 16rpx;
487
+        color: #07863c;
488
+      }
489
+    
490
+      .toolbar-sao {
491
+        font-size: 36rpx;
492
+        color: #333;
493
+      }
494
+    }
495
+  }
496
+  .newicon-weibiaoti2010104{
497
+    margin-left: 8rpx;
341 498
   }
499
+  
342 500
 	.patientInformationInfo {
343 501
     background-color: #F7F7F7;
344 502
     display: flex;
@@ -371,13 +529,23 @@
371 529
 				text-align: center;
372 530
 			}
373 531
 
532
+      .remark{
533
+        display: flex;
534
+        margin: 16rpx 27rpx;
535
+        .remarkTitle{
536
+          flex-shrink: 0;
537
+        }
538
+        .remarkInfo{
539
+          flex-shrink: 1;
540
+        }
541
+      }
542
+
374 543
 			.patientCode {
375 544
 				margin-left: 12rpx;
376 545
 				font-size: 28rpx;
377 546
 			}
378 547
 
379 548
 			.info {
380
-				padding-bottom: 24rpx;
381 549
 				margin: 8rpx 0;
382 550
 				height: 80rpx;
383 551
 				display: flex;
@@ -399,6 +567,7 @@
399 567
 
400 568
 					.info_b {
401 569
 						font-size: 26rpx;
570
+            margin-top: 8rpx;
402 571
 					}
403 572
 				}
404 573
 

+ 126 - 105
pages/patientInformationList/patientInformationList.vue

@@ -2,10 +2,10 @@
2 2
   <view class="patientInformationList">
3 3
     <view class="page_tab">
4 4
       <view class="page_tab_bar active">
5
-        <view class="tab_dept">{{ currenDept.dept
6
-          }}<button type="default" size="mini" class="changeDept" @click="changeDept">
7
-            切换科室
8
-          </button></view>
5
+        <view class="tab_dept">
6
+          {{ currenDept.dept}}
7
+          <text class="newicon newicon-weibiaoti2010104" @click="changeDept"></text>
8
+        </view>
9 9
       </view>
10 10
     </view>
11 11
     <view v-if="zxzData.length == 0" class="zwsj">
@@ -19,46 +19,52 @@
19 19
         refresher-background="transport">
20 20
         <view class="page_item_wrap" v-for="(item, index) of zxzData" :key="index">
21 21
           <view class="page_item">
22
-            <view class="L"></view>
23
-            <view class="R"></view>
24 22
             <view class="page_item_top">
25 23
               <view class="page_item_top_L">
26
-                <template v-if="item.illnessState">
27
-                  <text v-if="item.illnessState.value === '2'"
28
-                    class="colorRed newicon newicon-tubiao_wei"></text>
29
-                  <text v-if="item.illnessState.value === '3'" class="colorRed newicon newicon-zhong"></text>
30
-                </template>
31
-                <template v-if="item.careLevel">
32
-                  <text v-if="item.careLevel.value === '0'" class="newicon newicon-te1"></text>
33
-                  <text v-if="item.careLevel.value === '1'" class="newicon newicon-1_round_solid"></text>
34
-                  <text v-if="item.careLevel.value === '2'" class="newicon newicon-2_round_solid"></text>
35
-                  <text v-if="item.careLevel.value === '3'" class="newicon newicon-3_round_solid"></text>
36
-                </template>
37
-                <!-- <view class="page_item_top_R" v-show="wechatFocusSwitch == 1 && item.focusPatient == 1">
38
-                  需要帮助
39
-                </view>
40
-                <view class="page_item_top_R" style="background-color: #49b856"
41
-                  v-show="wechatFocusSwitch == 1 && !item.focusPatient">
42
-                  无需帮助
43
-                </view> -->
24
+                {{ item.patientName }}({{ item.residenceNo }})({{ item.bedNum }})
44 25
               </view>
45 26
               <view class="send_wrap">
46
-                <view class="sendBack">
47
-                  <button @click="scanDept(item)">送回病房</button>
48
-                </view>
27
+                <template v-if="item.gender || item.age !== undefined">
28
+                  {{item.gender ? item.gender.name: ''}} {{item.age !== undefined ? item.age + '岁': ''}}
29
+                </template>
30
+                <template v-else>--</template>
49 31
               </view>
50 32
             </view>
51 33
             <view class="page_item_cont">
52 34
               <view class="page_item_conts">
53
-                <view>{{ item.patientName }}({{ item.residenceNo }})</view>
54
-                <view> 床号:{{ item.bedNum || "-" }} </view>
55
-                <view> 待检:{{ item.watingCount }} </view>
35
+                <view class="page_item_conts_item">
36
+                  <view class="column">
37
+                    <text class="p_title">护理信息:</text>
38
+                    <text class="p_info">
39
+                      <text :class="{red:item.careLevel&&(item.careLevel.value==0||item.careLevel.value==1)}">{{item.careLevel ? item.careLevel.name : '' }}</text>(<text :class="{red:item.illnessState&&(item.illnessState.value==2||item.illnessState.value==3)}">{{item.illnessState ? item.illnessState.name : ''}}</text>)
40
+                    </text>
41
+                  </view>
42
+                  <view class="column">
43
+                    <text class="p_title">待检:</text>
44
+                    <text class="p_info">{{ item.watingCount }}</text>
45
+                  </view>
46
+                </view>
47
+                
48
+                <view class="page_item_conts_item">
49
+                  <view class="column">
50
+                    <text class="p_title">陪检方式:</text>
51
+                    <text class="p_info">{{ item.tripTypeDTO ? item.tripTypeDTO.inspectMode : '' }}</text>
52
+                  </view>
53
+                </view>
54
+                
55
+                <view class="page_item_conts_item">
56
+                  <view class="column">
57
+                    <text class="p_title">注意事项:</text>
58
+                    <text class="p_info">{{ item.remark }}</text>
59
+                  </view>
60
+                </view>
56 61
               </view>
57 62
             </view>
58
-            <view class="page_item_btn" hover-class="seimin-btn-hover" @click="itemInfo(item.patientCode)">患者详情</view>
63
+            <view class="page_item_btns">
64
+              <view class="page_item_btn" hover-class="seimin-btn-hover" @click="itemInfo(item.patientCode)">患者详情</view>
65
+              <view class="page_item_btn" hover-class="seimin-btn-hover" @click="scanDept(item)">送回病房</view>
66
+            </view>
59 67
           </view>
60
-          <view class="L-l"></view>
61
-          <view class="R-l"></view>
62 68
         </view>
63 69
       </scroll-view>
64 70
     </view>
@@ -496,29 +502,6 @@
496 502
       stop(e) {
497 503
         e.preventDefault();
498 504
       },
499
-      // 获取需要帮助权限
500
-      // getWechatFocusSwitch() {
501
-      //   let postData = {
502
-      //     idx: 0,
503
-      //     sum: 1,
504
-      //     taskType: {
505
-      //       hosIds: this.hosId,
506
-      //       associationType: {
507
-      //         id: 260,
508
-      //       },
509
-      //     },
510
-      //   };
511
-      //   post("/configuration/fetchDataList/taskType", postData).then((res) => {
512
-      //     if (res.status == 200) {
513
-      //       this.wechatFocusSwitch = res.list[0].wechatFocusSwitch;
514
-      //     } else {
515
-      //       uni.showToast({
516
-      //         icon: "none",
517
-      //         title: res.msg || "接口获取数据失败!",
518
-      //       });
519
-      //     }
520
-      //   });
521
-      // },
522 505
     },
523 506
     onLoad(options) {
524 507
       console.log(options);
@@ -570,22 +553,47 @@
570 553
     },
571 554
   };
572 555
 </script>
573
-<style lang="less">
556
+<style lang="less" scoped>
557
+  .toolbar {
558
+    position: fixed;
559
+    left: 0;
560
+    bottom: var(--window-bottom);
561
+    z-index: 99;
562
+    width: 100%;
563
+    display: flex;
564
+    justify-content: center;
565
+    align-items: center;
566
+    box-sizing: border-box;
567
+    border-radius: 4rpx;
568
+    background-color: #E5E8ED;
569
+  
570
+    .toolbar-icon {
571
+      font-size: 52rpx;
572
+      margin-right: 16rpx;
573
+      color: #49B856;
574
+    }
575
+  
576
+    .toolbar-sao {
577
+      font-size: 36rpx;
578
+      color: #333;
579
+    }
580
+  }
581
+  .column{
582
+    display: flex!important;
583
+  }
584
+  .newicon-weibiaoti2010104 {
585
+    font-size: 32rpx;
586
+    padding-left: 5rpx;
587
+    color: #8A8A8A;
588
+    &.fz28{
589
+      font-size: 28rpx;
590
+    }
591
+  }
574 592
   .patientInformationList {
575 593
     width: 100%;
576 594
     height: 100%;
577 595
     position: relative;
578 596
 
579
-    .newicon {
580
-      color: #49b856;
581
-      font-size: 50rpx;
582
-
583
-      &.colorRed {
584
-        color: red;
585
-        font-size: 40rpx;
586
-      }
587
-    }
588
-
589 597
     .page_tab {
590 598
       width: 100%;
591 599
       height: 96rpx;
@@ -597,7 +605,7 @@
597 605
 
598 606
       .page_tab_bar {
599 607
         flex: 1;
600
-        font-size: 36rpx;
608
+        font-size: 30rpx;
601 609
         background: #fff;
602 610
         display: flex;
603 611
         justify-content: center;
@@ -609,7 +617,7 @@
609 617
           position: absolute;
610 618
           left: 0;
611 619
           bottom: 0;
612
-          height: 2rpx;
620
+          height: 8rpx;
613 621
           width: 100%;
614 622
           background-color: transparent;
615 623
         }
@@ -658,27 +666,27 @@
658 666
     }
659 667
 
660 668
     .page_items {
661
-      height: calc(100vh - 184rpx);
662
-      padding: 0 20rpx;
663
-      padding-top: 96rpx;
669
+      height: calc(100vh - 164rpx);
670
+      padding-top: 90rpx;
664 671
 
665 672
       .page_items_scroll {
666 673
         height: 100%;
667 674
 
668 675
         .page_item_wrap {
669 676
           position: relative;
670
-          margin-bottom: 32rpx;
677
+          margin-top: 8rpx;
678
+          &:last-of-type{
679
+            padding-bottom: 24rpx;
680
+          }
671 681
 
672 682
           .page_item {
673
-            margin-bottom: 16rpx;
674
-            height: 276rpx;
675 683
             background: #fff;
676 684
             border-radius: 8rpx;
677 685
             overflow: hidden;
678 686
             border: 2rpx solid #e5e9ed;
679 687
             display: flex;
680 688
             flex-direction: column;
681
-            justify-content: space-between;
689
+            padding-bottom: 16rpx;
682 690
 
683 691
             .L {
684 692
               width: 40rpx;
@@ -715,6 +723,8 @@
715 723
                 display: flex;
716 724
                 justify-content: space-between;
717 725
                 align-items: center;
726
+                font-size: 26rpx;
727
+                color: #6A6A6A;
718 728
               }
719 729
 
720 730
               .sendBack {
@@ -733,6 +743,8 @@
733 743
                 display: flex;
734 744
                 align-items: center;
735 745
                 line-height: 88rpx;
746
+                font-size: 30rpx;
747
+                font-weight: bold;
736 748
 
737 749
                 .L_time {
738 750
                   color: #6cc076;
@@ -752,48 +764,57 @@
752 764
             }
753 765
 
754 766
             .page_item_cont {
755
-              min-height: 100rpx;
756
-              max-height: 344rpx;
757
-              padding: 0 16rpx;
767
+              padding: 0 32rpx;
758 768
               text-align: left;
759 769
               position: relative;
760 770
 
761 771
               .page_item_conts {
762 772
                 color: rgb(102, 102, 102);
763
-                font-size: 28rpx;
764
-                display: flex;
765
-                align-items: center;
766
-                min-height: 100rpx;
767
-                max-height: 344rpx;
768
-
769
-                view {
770
-                  margin-bottom: 10rpx;
771
-                  margin-left: 40rpx;
772
-
773
-                  &:first-of-type {
774
-                    margin-left: 0;
773
+                font-size: 26rpx;
774
+
775
+                .page_item_conts_item {
776
+                  margin-bottom: 16rpx;
777
+                  display: flex;
778
+                  justify-content: space-between;
779
+                  &:first-of-type{
780
+                    margin-top: 16rpx;
775 781
                   }
776 782
                 }
777
-
778
-                text {
779
-                  color: #49b856;
783
+                
784
+                .p_info {
785
+                  flex: 1;
786
+                
787
+                  &.red {
788
+                    color: red;
789
+                  }
790
+                
780 791
                 }
781
-
792
+                
782 793
                 .num {
783 794
                   float: right;
784 795
                 }
785 796
               }
786 797
             }
787
-
788
-            .page_item_btn {
789
-              height: 88rpx;
790
-              background-image: linear-gradient(to right, #72c172, #3bb197);
791
-              border-radius: 8rpx;
792
-              line-height: 88rpx;
793
-              color: #fff;
794
-              font-size: 36rpx;
795
-              font-weight: 700;
796
-              text-align: center;
798
+            
799
+            .page_item_btns{
800
+              display: flex;
801
+              justify-content: space-between;
802
+              align-items: center;
803
+              .page_item_btn {
804
+                flex: 1;
805
+                height: 72rpx;
806
+                background-image: linear-gradient(to right, #72c172, #3bb197);
807
+                border-radius: 8rpx;
808
+                line-height: 72rpx;
809
+                color: #fff;
810
+                font-size: 36rpx;
811
+                font-weight: 700;
812
+                text-align: center;
813
+                margin-right: 24rpx;
814
+                &:first-of-type{
815
+                  margin-left: 24rpx;
816
+                }
817
+              }
797 818
             }
798 819
           }
799 820