maotao 3 months ago
parent
commit
2631c39062

+ 2 - 2
src/app/components/configurationCenter/configuration-specimen/configuration-specimen.component.html

@@ -113,9 +113,9 @@
113
 									<nz-form-label class="label">是否支持根据手术新建申请单</nz-form-label>
113
 									<nz-form-label class="label">是否支持根据手术新建申请单</nz-form-label>
114
 									<nz-checkbox-group [(ngModel)]="autoCreate"></nz-checkbox-group>
114
 									<nz-checkbox-group [(ngModel)]="autoCreate"></nz-checkbox-group>
115
 								</div>
115
 								</div>
116
-								<!--门诊支持离体并固定 -->
116
+								<!--支持离体并固定 -->
117
 								<div class="display_flex align-items_center mb8">
117
 								<div class="display_flex align-items_center mb8">
118
-									<nz-form-label class="label">门诊支持离体并固定</nz-form-label>
118
+									<nz-form-label class="label">支持离体并固定</nz-form-label>
119
 									<nz-checkbox-group [(ngModel)]="outpatientInVitroFixation"></nz-checkbox-group>
119
 									<nz-checkbox-group [(ngModel)]="outpatientInVitroFixation"></nz-checkbox-group>
120
 								</div>
120
 								</div>
121
 								<!--申请单条码设置 -->
121
 								<!--申请单条码设置 -->

+ 41 - 5
src/app/share/pathology-add/pathology-add.component.html

@@ -122,7 +122,7 @@
122
 					<div class="specimen-list">
122
 					<div class="specimen-list">
123
 						<div *ngFor="let item of specimenList;let index=index;" class="specimen-item">
123
 						<div *ngFor="let item of specimenList;let index=index;" class="specimen-item">
124
 							<div class="specimen-name" (click)="specimenEdit($event,item,index)">
124
 							<div class="specimen-name" (click)="specimenEdit($event,item,index)">
125
-								<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
125
+								<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
126
 							</div>
126
 							</div>
127
 							<span class="icon_transport transport-lajitong specimen-icon" (click)="specimenDel($event,item,index)"></span>
127
 							<span class="icon_transport transport-lajitong specimen-icon" (click)="specimenDel($event,item,index)"></span>
128
 						</div>
128
 						</div>
@@ -196,11 +196,22 @@
196
 				</nz-form-item>
196
 				</nz-form-item>
197
 				
197
 				
198
 				<nz-form-item class="form-item">
198
 				<nz-form-item class="form-item">
199
+					<nz-form-label [nzSm]="4" [nzXs]="24">快捷键入</nz-form-label>
200
+					<div class="specimen-list">
201
+						<div *ngFor="let item of fastList;let index=index;" class="select-item"
202
+							[ngClass]="{'activeClass': index == fastIndex}" (click)="fastClick($event,item,index)">
203
+							{{item.name}}
204
+						</div>
205
+					</div>
206
+				</nz-form-item>
207
+				
208
+				<nz-form-item class="form-item">
199
 					<nz-form-label nzRequired nzFor="specimenName" [nzSm]="3" [nzXs]="24">标本名称</nz-form-label>
209
 					<nz-form-label nzRequired nzFor="specimenName" [nzSm]="3" [nzXs]="24">标本名称</nz-form-label>
200
-					<nz-form-control nzErrorTip="请输入标本名称" [nzSm]="21" [nzXs]="24">
210
+					<div class="specimen-tip" [ngClass]="{'isSpecumen':placeName}">{{placeName?placeName:''}}</div>
211
+					<nz-form-control nzErrorTip="请输入标本名称" [(nzSm)]="nzSmNum" [nzXs]="24">
201
 						<input nz-input maxlength="15" (ngModelChange)="specimenInput($event)" formControlName="specimenName" placeholder="请输入标本名称"/>
212
 						<input nz-input maxlength="15" (ngModelChange)="specimenInput($event)" formControlName="specimenName" placeholder="请输入标本名称"/>
202
 					</nz-form-control>
213
 					</nz-form-control>
203
-					<div class="empty-box">
214
+					<div class="empty-box" [ngClass]="{'beSpecumenEmpty':placeName, 'noSpecumenEmpty':placeName==''}">
204
 						<span class="name">{{specimenNameLength}}/15</span>
215
 						<span class="name">{{specimenNameLength}}/15</span>
205
 						<span class="empty" (click)="emptData($event)">清空</span>
216
 						<span class="empty" (click)="emptData($event)">清空</span>
206
 					</div>
217
 					</div>
@@ -262,6 +273,31 @@
262
 						</nz-input-group>
273
 						</nz-input-group>
263
 					</nz-form-control>
274
 					</nz-form-control>
264
 				</nz-form-item>
275
 				</nz-form-item>
276
+				<nz-form-item *ngIf="ifImmobilization">
277
+				  <nz-form-label nzRequired [nzSpan]="6" nzFor="fixationTime">固定时间</nz-form-label>
278
+				  <nz-form-control style="display: flex;align-items: center;" [nzSpan]="18" nzErrorTip="请选择固定时间!">
279
+				    <nz-input-group style="display: flex;gap: 10px">
280
+							<!-- <nz-date-picker formControlName="fixationTime" 
281
+							[nzShowTime]="{ nzFormat: 'yyyy-MM-dd HH:mm:ss' }" nzFormat="yyyy-MM-dd HH:mm:ss"
282
+							(ngModelChange)="formChangeDate($event)"></nz-date-picker> -->
283
+							<nz-date-picker formControlName="fixationDate" (ngModelChange)="fixationDateChange($event)"></nz-date-picker>
284
+							
285
+							<nz-time-picker formControlName="fixationTimes" nzFormat="HH:mm" (ngModelChange)="fixationTimeChange($event)"></nz-time-picker>
286
+						</nz-input-group>
287
+				  </nz-form-control>
288
+				</nz-form-item>
289
+				<nz-form-item *ngIf="ifImmobilization">
290
+				  <nz-form-label nzRequired [nzSpan]="8" nzFor="fixative">固定液类型</nz-form-label>
291
+				  <nz-form-control [nzSpan]="16" nzErrorTip="请选择固定液类型!">
292
+				    <nz-input-group>
293
+							<nz-select class="formItem" [nzDropdownMatchSelectWidth]="false" nzShowSearch nzPlaceHolder="请选择固定液类型" formControlName="fixative">
294
+							  <ng-container *ngFor="let option of fixativeData">
295
+							    <nz-option [nzLabel]="option.name" [nzValue]="option.id"></nz-option>
296
+							  </ng-container>
297
+							</nz-select>
298
+						</nz-input-group>
299
+				  </nz-form-control>
300
+				</nz-form-item>
265
 				<nz-form-item>
301
 				<nz-form-item>
266
 				  <nz-form-label nzRequired [nzSpan]="5" nzFor="jobNumber">工号</nz-form-label>
302
 				  <nz-form-label nzRequired [nzSpan]="5" nzFor="jobNumber">工号</nz-form-label>
267
 					<nz-form-control [nzSpan]="19" nzErrorTip="请输入工号!">
303
 					<nz-form-control [nzSpan]="19" nzErrorTip="请输入工号!">
@@ -419,7 +455,7 @@
419
 								<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
455
 								<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
420
 							</div>
456
 							</div>
421
 							<div style="margin-top:10px;">
457
 							<div style="margin-top:10px;">
422
-								<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
458
+								<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
423
 							</div>
459
 							</div>
424
 						 </div>
460
 						 </div>
425
 						 <div style="width: 30%;">
461
 						 <div style="width: 30%;">
@@ -462,7 +498,7 @@
462
 					 </div>
498
 					 </div>
463
 					</div>
499
 					</div>
464
 					<div style="margin-top:10px;padding-left: 7px;">
500
 					<div style="margin-top:10px;padding-left: 7px;">
465
-						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
501
+						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
466
 					</div>
502
 					</div>
467
 				 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
503
 				 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
468
 				</div>
504
 				</div>

+ 17 - 3
src/app/share/pathology-add/pathology-add.component.less

@@ -225,7 +225,7 @@
225
 	    .content {
225
 	    .content {
226
 	      width: 100%;
226
 	      width: 100%;
227
 	      height: auto;
227
 	      height: auto;
228
-	      padding: 19px 14px 0 14px;
228
+	      padding: 15px 0px 0 0px;
229
 	      max-height: 500px;
229
 	      max-height: 500px;
230
 	      overflow-y: auto;
230
 	      overflow-y: auto;
231
 				.content-title{
231
 				.content-title{
@@ -241,6 +241,14 @@
241
 					display: flex;
241
 					display: flex;
242
 					// flex-wrap: wrap;
242
 					// flex-wrap: wrap;
243
 					position: relative;
243
 					position: relative;
244
+					.specimen-tip{
245
+						display: flex;
246
+						align-items: center;
247
+						font-weight: 600;
248
+					}
249
+					.isSpecumen{
250
+						margin-right: 15px;
251
+					}
244
 				  .ant-form-item-label {
252
 				  .ant-form-item-label {
245
 				    text-align: left;
253
 				    text-align: left;
246
 						font-weight: 500;
254
 						font-weight: 500;
@@ -252,8 +260,6 @@
252
 					}
260
 					}
253
 					.empty-box{
261
 					.empty-box{
254
 						position: absolute;
262
 						position: absolute;
255
-						right: 6px;
256
-						top: 8px;
257
 						.name{
263
 						.name{
258
 							color: #ccc;
264
 							color: #ccc;
259
 						}
265
 						}
@@ -262,6 +268,14 @@
262
 							cursor: pointer;
268
 							cursor: pointer;
263
 						}
269
 						}
264
 					}
270
 					}
271
+					.beSpecumenEmpty{
272
+						right: 6px;
273
+						top: 8px;
274
+					}
275
+					.noSpecumenEmpty{
276
+						right: 6px;
277
+						top: 8px;
278
+					}
265
 				}
279
 				}
266
 				.specimen-list{
280
 				.specimen-list{
267
 					flex: 1;
281
 					flex: 1;

+ 156 - 18
src/app/share/pathology-add/pathology-add.component.ts

@@ -69,6 +69,7 @@ export class PathologyAddComponent implements OnInit {
69
 		this.initForm()
69
 		this.initForm()
70
 		this.getTaskTypesId()
70
 		this.getTaskTypesId()
71
 		this.fetchDataList()
71
 		this.fetchDataList()
72
+		this.getStationaryLiquid()
72
   }
73
   }
73
 	
74
 	
74
 	// 获取任务类型(病理标本)
75
 	// 获取任务类型(病理标本)
@@ -82,6 +83,7 @@ export class PathologyAddComponent implements OnInit {
82
 	
83
 	
83
 	// 获取标本配置
84
 	// 获取标本配置
84
 	pathologyBarCode:any = 1;
85
 	pathologyBarCode:any = 1;
86
+	ifImmobilization:any = false;
85
 	outpatientPathologyLabelSizeType:any = 1;
87
 	outpatientPathologyLabelSizeType:any = 1;
86
 	getPathologySys(){
88
 	getPathologySys(){
87
 		let postData = {
89
 		let postData = {
@@ -101,6 +103,11 @@ export class PathologyAddComponent implements OnInit {
101
 					if(result.list[0].outpatientPathologyLabelSize){
103
 					if(result.list[0].outpatientPathologyLabelSize){
102
 						this.outpatientPathologyLabelSizeType = result.list[0].outpatientPathologyLabelSize.value;
104
 						this.outpatientPathologyLabelSizeType = result.list[0].outpatientPathologyLabelSize.value;
103
 					}
105
 					}
106
+					if(result.list[0].outpatientInVitroFixation && result.list[0].outpatientInVitroFixation==1){
107
+						this.ifImmobilization = true
108
+					}else{
109
+						this.ifImmobilization = false
110
+					}
104
 				}
111
 				}
105
 		  });
112
 		  });
106
 	}
113
 	}
@@ -171,6 +178,14 @@ export class PathologyAddComponent implements OnInit {
171
 		  });
178
 		  });
172
 	}
179
 	}
173
 	
180
 	
181
+	// 固定液类型
182
+	fixativeData:any = [];
183
+	getStationaryLiquid(){
184
+		this.mainService.getDictionary("list", "fixing_liquid_type").subscribe((res) => {
185
+			this.fixativeData = res
186
+		});
187
+	}
188
+	
174
 	// 获取标本类型
189
 	// 获取标本类型
175
 	getDicData(){
190
 	getDicData(){
176
 		this.mainService.getDictionary("list", "specimen_type").subscribe((res) => {
191
 		this.mainService.getDictionary("list", "specimen_type").subscribe((res) => {
@@ -287,12 +302,14 @@ export class PathologyAddComponent implements OnInit {
287
 					  remark: [null, []],
302
 					  remark: [null, []],
288
 						specimenName: [null, [Validators.required]]
303
 						specimenName: [null, [Validators.required]]
289
 					});
304
 					});
305
+					this.fastIndex = null
290
 					if(item.sample){
306
 					if(item.sample){
291
 						setTimeout(_=>{
307
 						setTimeout(_=>{
292
 							let index4 = this.specimenNameList.findIndex(i=>i.id==item.sample.id)
308
 							let index4 = this.specimenNameList.findIndex(i=>i.id==item.sample.id)
293
 							this.specimenNameIndex = index4
309
 							this.specimenNameIndex = index4
294
 							this.specimenNameName = item.sample.name
310
 							this.specimenNameName = item.sample.name
295
 							this.specimenNameId = Number(item.sample.id);
311
 							this.specimenNameId = Number(item.sample.id);
312
+							this.specimenNameLength = item.specimenName.length;
296
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
313
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
297
 							this.validateSpecimenForm.controls.remark.setValue(item.remark);
314
 							this.validateSpecimenForm.controls.remark.setValue(item.remark);
298
 							this.specimenModal = true
315
 							this.specimenModal = true
@@ -302,6 +319,7 @@ export class PathologyAddComponent implements OnInit {
302
 							this.specimenNameIndex = null
319
 							this.specimenNameIndex = null
303
 							this.specimenNameName = ''
320
 							this.specimenNameName = ''
304
 							this.specimenNameId = null
321
 							this.specimenNameId = null
322
+							this.specimenNameLength = item.specimenName.length;
305
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
323
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
306
 							this.validateSpecimenForm.controls.remark.setValue(item.remark);
324
 							this.validateSpecimenForm.controls.remark.setValue(item.remark);
307
 							this.specimenModal = true
325
 							this.specimenModal = true
@@ -328,6 +346,7 @@ export class PathologyAddComponent implements OnInit {
328
 								this.specimenNameIndex = index4
346
 								this.specimenNameIndex = index4
329
 								this.specimenNameName = item.sample.name
347
 								this.specimenNameName = item.sample.name
330
 								this.specimenNameId = Number(item.sample.id);
348
 								this.specimenNameId = Number(item.sample.id);
349
+								this.specimenNameLength = item.specimenName.length;
331
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
350
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
332
 								this.validateSpecimenForm.controls.remark.setValue(item.remark);
351
 								this.validateSpecimenForm.controls.remark.setValue(item.remark);
333
 								this.specimenModal = true
352
 								this.specimenModal = true
@@ -337,6 +356,7 @@ export class PathologyAddComponent implements OnInit {
337
 								this.specimenNameIndex = null
356
 								this.specimenNameIndex = null
338
 								this.specimenNameName = ''
357
 								this.specimenNameName = ''
339
 								this.specimenNameId = null
358
 								this.specimenNameId = null
359
+								this.specimenNameLength = item.specimenName.length;
340
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
360
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
341
 								this.validateSpecimenForm.controls.remark.setValue(item.remark);
361
 								this.validateSpecimenForm.controls.remark.setValue(item.remark);
342
 								this.specimenModal = true
362
 								this.specimenModal = true
@@ -383,11 +403,14 @@ export class PathologyAddComponent implements OnInit {
383
 	specimenDetailId:any = null;
403
 	specimenDetailId:any = null;
384
 	specimenEdit(e,item,index){
404
 	specimenEdit(e,item,index){
385
 		this.specimenDetailId = item.id
405
 		this.specimenDetailId = item.id
406
+		this.fastIndex = null
386
 		if(item.system && item.organ){
407
 		if(item.system && item.organ){
387
 			this.selectType = false
408
 			this.selectType = false
388
 			let index1 = this.placeList.findIndex(i=>i.id==item.partSource.id)
409
 			let index1 = this.placeList.findIndex(i=>i.id==item.partSource.id)
389
 			this.placeIndex = index1
410
 			this.placeIndex = index1
390
 			this.placeId = Number(item.partSource.id)
411
 			this.placeId = Number(item.partSource.id)
412
+			this.placeName = item.partSource.value==1?'':item.partSource.name
413
+			this.nzSmNum = item.partSource.value==1 ? 21 : 20
391
 			let index2 = this.systemList.findIndex(i=>i.id==item.system.id)
414
 			let index2 = this.systemList.findIndex(i=>i.id==item.system.id)
392
 			this.systemIndex = index2
415
 			this.systemIndex = index2
393
 			this.systemId = Number(item.system.id)
416
 			this.systemId = Number(item.system.id)
@@ -409,6 +432,7 @@ export class PathologyAddComponent implements OnInit {
409
 		  remark: [null, []],
432
 		  remark: [null, []],
410
 			specimenName:[null, [Validators.required]],
433
 			specimenName:[null, [Validators.required]],
411
 		});
434
 		});
435
+		this.fastIndex = null
412
 		this.specimenDetailId = null;
436
 		this.specimenDetailId = null;
413
 		this.placeIndex = null;
437
 		this.placeIndex = null;
414
 		this.systemIndex = null;
438
 		this.systemIndex = null;
@@ -439,8 +463,12 @@ export class PathologyAddComponent implements OnInit {
439
 	
463
 	
440
 	// 选择位置来源
464
 	// 选择位置来源
441
 	placeId:any = null;
465
 	placeId:any = null;
466
+	placeName:any = null;
467
+	nzSmNum:any = 21;
442
 	placeClick(e,item,index){
468
 	placeClick(e,item,index){
443
 		this.placeId = item.id
469
 		this.placeId = item.id
470
+		this.placeName = item.value==1?'':item.name
471
+		this.nzSmNum = item.value==1 ? 21 : 20
444
 		this.placeIndex = index
472
 		this.placeIndex = index
445
 	}
473
 	}
446
 	
474
 	
@@ -457,6 +485,7 @@ export class PathologyAddComponent implements OnInit {
457
 		this.specimenNameId = null;
485
 		this.specimenNameId = null;
458
 		this.specimenNameIndex = null;
486
 		this.specimenNameIndex = null;
459
 		this.specimenNameName = null;
487
 		this.specimenNameName = null;
488
+		this.fastIndex = null;
460
 		if(this.validateSpecimenForm.value.specimenName){
489
 		if(this.validateSpecimenForm.value.specimenName){
461
 			this.validateSpecimenForm.controls.specimenName.setValue('')
490
 			this.validateSpecimenForm.controls.specimenName.setValue('')
462
 		}
491
 		}
@@ -472,6 +501,7 @@ export class PathologyAddComponent implements OnInit {
472
 		this.specimenNameId = null;
501
 		this.specimenNameId = null;
473
 		this.specimenNameIndex = null;
502
 		this.specimenNameIndex = null;
474
 		this.specimenNameName = null;
503
 		this.specimenNameName = null;
504
+		this.fastIndex = null;
475
 		if(this.validateSpecimenForm.value.specimenName){
505
 		if(this.validateSpecimenForm.value.specimenName){
476
 			this.validateSpecimenForm.controls.specimenName.setValue('')
506
 			this.validateSpecimenForm.controls.specimenName.setValue('')
477
 		}
507
 		}
@@ -502,6 +532,31 @@ export class PathologyAddComponent implements OnInit {
502
 			this.validateSpecimenForm.controls.specimenName.setValue(namn);
532
 			this.validateSpecimenForm.controls.specimenName.setValue(namn);
503
 	}
533
 	}
504
 	
534
 	
535
+	// 选择标本名称
536
+	fastList:any = [
537
+		{name:'活检'},
538
+		{name:'切除'},
539
+		{name:'穿刺'}
540
+	];
541
+	fastIndex:any = null;
542
+	fastClick(e,item,index){
543
+		this.fastIndex = index
544
+			if(this.validateSpecimenForm.value.specimenName && this.validateSpecimenForm.value.specimenName.length){
545
+				if(item.name.length+this.validateSpecimenForm.value.specimenName.length>14){
546
+					this.message.error('字符长度不能超过15个')
547
+					return
548
+				}
549
+			}
550
+			
551
+			let namn = null
552
+			if(this.validateSpecimenForm.value.specimenName){
553
+				namn = this.validateSpecimenForm.value.specimenName + item.name
554
+			}else{
555
+				namn = item.name
556
+			}
557
+			this.validateSpecimenForm.controls.specimenName.setValue(namn);
558
+	}
559
+	
505
 	// 保存标本
560
 	// 保存标本
506
 	btnSpLoading:boolean = false;
561
 	btnSpLoading:boolean = false;
507
 	addSpLoading:boolean = false;
562
 	addSpLoading:boolean = false;
@@ -704,6 +759,19 @@ export class PathologyAddComponent implements OnInit {
704
 		this.notModal = false
759
 		this.notModal = false
705
 	}
760
 	}
706
 	
761
 	
762
+	// 选择固定时间
763
+	fixationTime:any;
764
+	fixationData:any;
765
+	fixationDateChange(result){
766
+		this.fixationData = format(result, 'yyyy-MM-dd');
767
+		console.log(this.fixationData)
768
+	}
769
+	fixationTimeSelect:any;
770
+	fixationTimeChange(result){
771
+		this.fixationTimeSelect = format(result, 'HH:mm');
772
+		console.log(this.fixationData + ' ' + this.fixationTimeSelect)
773
+	}
774
+	
707
 	// 选择离体时间
775
 	// 选择离体时间
708
 	inVitroTime:any;
776
 	inVitroTime:any;
709
 	inVitroData:any;
777
 	inVitroData:any;
@@ -732,6 +800,10 @@ export class PathologyAddComponent implements OnInit {
732
 				...this.detailsData,
800
 				...this.detailsData,
733
 				...this.validateForm.value,
801
 				...this.validateForm.value,
734
 				inVitroTime:this.inVitroData + ' ' + this.inVitroTimeSelect+':00',
802
 				inVitroTime:this.inVitroData + ' ' + this.inVitroTimeSelect+':00',
803
+				fixationTime:this.fixationData + ' ' + this.fixationTimeSelect+':00',
804
+				specimenFixingLiquid:{
805
+					id:this.validatePrintForm.value.fixative
806
+				},
735
 				surgeryId: this.surgeryId || "",
807
 				surgeryId: this.surgeryId || "",
736
 				patientId: this.patientId || "",
808
 				patientId: this.patientId || "",
737
 				hosId: this.hosId || "" ,
809
 				hosId: this.hosId || "" ,
@@ -756,6 +828,13 @@ export class PathologyAddComponent implements OnInit {
756
 			delete data.operation
828
 			delete data.operation
757
 			delete data.pathologySpecimenIds
829
 			delete data.pathologySpecimenIds
758
 		}
830
 		}
831
+		if(this.ifImmobilization){
832
+			data.pathologyForm.fixationTime = this.fixationData + ' ' + this.fixationTimeSelect +':00'
833
+			data.pathologyForm.specimenFixingLiquid.id = this.validatePrintForm.value.fixative
834
+		}else{
835
+			delete data.pathologyForm.fixationTime
836
+			delete data.pathologyForm.specimenFixingLiquid
837
+		}
759
 		this.printLoading = true;
838
 		this.printLoading = true;
760
 		this.mainService
839
 		this.mainService
761
 		  .pathologyPrint(data)
840
 		  .pathologyPrint(data)
@@ -886,14 +965,35 @@ export class PathologyAddComponent implements OnInit {
886
 				this.totalNum = res.totalNum
965
 				this.totalNum = res.totalNum
887
 				this.specimenNum = res.specimenNum
966
 				this.specimenNum = res.specimenNum
888
 				this.pathologySpecimenIds = res.ids
967
 				this.pathologySpecimenIds = res.ids
889
-				this.validatePrintForm = this.fb.group({
890
-				  inVitroTimes: [null, [Validators.required]],
891
-				  inVitroDate: [null, [Validators.required]],
892
-					jobNumber: [null, [Validators.required]],
893
-					name:[null, [Validators.required]],
894
-				});
968
+				
895
 				let date = new Date();
969
 				let date = new Date();
970
+				
896
 				let inVitroDate = format(date, "yyyy-MM-dd")
971
 				let inVitroDate = format(date, "yyyy-MM-dd")
972
+				if(this.ifImmobilization){
973
+					this.validatePrintForm = this.fb.group({
974
+						inVitroTimes: [null, [Validators.required]],
975
+						inVitroDate: [null, [Validators.required]],
976
+						fixationTimes: [null, [Validators.required]],
977
+						fixationDate: [null, [Validators.required]],
978
+						fixative:[null, [Validators.required]],
979
+						jobNumber: [null, [Validators.required]],
980
+						name:[null, [Validators.required]],
981
+						
982
+					});
983
+					let item = this.fixativeData.find(i=>i.value==1)
984
+					this.validatePrintForm.controls.fixative.setValue(item.id);
985
+					this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
986
+					// this.validatePrintForm.controls.fixationTimes.setValue(date);
987
+					this.fixationData = inVitroDate;
988
+					this.fixationTimeSelect = format(date, 'HH:mm');
989
+				}else{
990
+					this.validatePrintForm = this.fb.group({
991
+						inVitroTimes: [null, [Validators.required]],
992
+						inVitroDate: [null, [Validators.required]],
993
+						jobNumber: [null, [Validators.required]],
994
+						name:[null, [Validators.required]],
995
+					});
996
+				}
897
 				this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
997
 				this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
898
 				this.validatePrintForm.controls.inVitroTimes.setValue(date);
998
 				this.validatePrintForm.controls.inVitroTimes.setValue(date);
899
 				this.inVitroData = inVitroDate;
999
 				this.inVitroData = inVitroDate;
@@ -927,14 +1027,33 @@ export class PathologyAddComponent implements OnInit {
927
 					this.totalNum = res.totalNum
1027
 					this.totalNum = res.totalNum
928
 					this.specimenNum = res.specimenNum
1028
 					this.specimenNum = res.specimenNum
929
 					this.pathologySpecimenIds = res.ids
1029
 					this.pathologySpecimenIds = res.ids
930
-					this.validatePrintForm = this.fb.group({
931
-					  inVitroTimes: [null, [Validators.required]],
932
-					  inVitroDate: [null, [Validators.required]],
933
-						jobNumber: [null, [Validators.required]],
934
-						name:[null, [Validators.required]],
935
-					});
936
 					let date = new Date();
1030
 					let date = new Date();
1031
+					
937
 					let inVitroDate = format(date, "yyyy-MM-dd")
1032
 					let inVitroDate = format(date, "yyyy-MM-dd")
1033
+					if(this.ifImmobilization){
1034
+						this.validatePrintForm = this.fb.group({
1035
+							inVitroTimes: [null, [Validators.required]],
1036
+							inVitroDate: [null, [Validators.required]],
1037
+							fixationTimes: [null, [Validators.required]],
1038
+							fixationDate: [null, [Validators.required]],
1039
+							fixative:[null, [Validators.required]],
1040
+							jobNumber: [null, [Validators.required]],
1041
+							name:[null, [Validators.required]],
1042
+						});
1043
+						let item = this.fixativeData.find(i=>i.value==1)
1044
+						this.validatePrintForm.controls.fixative.setValue(item.id);
1045
+						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1046
+						// this.validatePrintForm.controls.fixationTimes.setValue(date);
1047
+						this.fixationData = inVitroDate;
1048
+						this.fixationTimeSelect = format(date, 'HH:mm');
1049
+					}else{
1050
+						this.validatePrintForm = this.fb.group({
1051
+							inVitroTimes: [null, [Validators.required]],
1052
+							inVitroDate: [null, [Validators.required]],
1053
+							jobNumber: [null, [Validators.required]],
1054
+							name:[null, [Validators.required]],
1055
+						});
1056
+					}
938
 					this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
1057
 					this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
939
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1058
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
940
 					this.inVitroData = inVitroDate;
1059
 					this.inVitroData = inVitroDate;
@@ -979,14 +1098,33 @@ export class PathologyAddComponent implements OnInit {
979
 					this.notModal = true
1098
 					this.notModal = true
980
 					this.totalNum = res.totalNum
1099
 					this.totalNum = res.totalNum
981
 					this.specimenNum = res.specimenNum
1100
 					this.specimenNum = res.specimenNum
982
-					this.validatePrintForm = this.fb.group({
983
-					  inVitroTimes: [null, [Validators.required]],
984
-					  inVitroDate: [null, [Validators.required]],
985
-						jobNumber: [null, [Validators.required]],
986
-						name:[null, [Validators.required]],
987
-					});
988
 					let date = new Date();
1101
 					let date = new Date();
1102
+					
989
 					let inVitroDate = format(date, "yyyy-MM-dd")
1103
 					let inVitroDate = format(date, "yyyy-MM-dd")
1104
+					if(this.ifImmobilization){
1105
+						this.validatePrintForm = this.fb.group({
1106
+							inVitroTimes: [null, [Validators.required]],
1107
+							inVitroDate: [null, [Validators.required]],
1108
+							fixationTimes: [null, [Validators.required]],
1109
+							fixationDate: [null, [Validators.required]],
1110
+							fixative:[null, [Validators.required]],
1111
+							jobNumber: [null, [Validators.required]],
1112
+							name:[null, [Validators.required]],
1113
+						});
1114
+						let item = this.fixativeData.find(i=>i.value==1)
1115
+						this.validatePrintForm.controls.fixative.setValue(item.id);
1116
+						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1117
+						// this.validatePrintForm.controls.fixationTimes.setValue(date);
1118
+						this.fixationData = inVitroDate;
1119
+						this.fixationTimeSelect = format(date, 'HH:mm');
1120
+					}else{
1121
+						this.validatePrintForm = this.fb.group({
1122
+							inVitroTimes: [null, [Validators.required]],
1123
+							inVitroDate: [null, [Validators.required]],
1124
+							jobNumber: [null, [Validators.required]],
1125
+							name:[null, [Validators.required]],
1126
+						});
1127
+					}
990
 					this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
1128
 					this.validatePrintForm.controls.inVitroDate.setValue(inVitroDate);
991
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1129
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
992
 					this.inVitroData = inVitroDate;
1130
 					this.inVitroData = inVitroDate;

+ 3 - 3
src/app/share/pathology-detail/pathology-detail.component.html

@@ -62,7 +62,7 @@
62
 						<div class="form-title font-weight-500">标本:</div>
62
 						<div class="form-title font-weight-500">标本:</div>
63
 						<div class="form-title-box">
63
 						<div class="form-title-box">
64
 							<div class="form-title cursor" *ngFor="let item of specimenList" (click)="specimenView(item)">
64
 							<div class="form-title cursor" *ngFor="let item of specimenList" (click)="specimenView(item)">
65
-								<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
65
+								<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
66
 							</div>
66
 							</div>
67
 						</div>
67
 						</div>
68
 					</div>
68
 					</div>
@@ -243,7 +243,7 @@
243
 								<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
243
 								<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
244
 							</div>
244
 							</div>
245
 							<div style="margin-top:10px;">
245
 							<div style="margin-top:10px;">
246
-								<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
246
+								<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
247
 							</div>
247
 							</div>
248
 						 </div>
248
 						 </div>
249
 						 <div style="width: 30%;">
249
 						 <div style="width: 30%;">
@@ -286,7 +286,7 @@
286
 					 </div>
286
 					 </div>
287
 					</div>
287
 					</div>
288
 					<div style="margin-top:10px;padding-left: 7px;">
288
 					<div style="margin-top:10px;padding-left: 7px;">
289
-						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
289
+						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
290
 					</div>
290
 					</div>
291
 				 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
291
 				 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
292
 				</div>
292
 				</div>

+ 62 - 1
src/app/views/login/login.component.ts

@@ -223,17 +223,34 @@ export class LoginComponent implements OnInit {
223
     let successLoginMsg = true; //登录成功提示,true是提示,false不提示
223
     let successLoginMsg = true; //登录成功提示,true是提示,false不提示
224
     let fwt = false;
224
     let fwt = false;
225
     let ddt = false;
225
     let ddt = false;
226
+		let bbj = false;
227
+		let mzbl = false;
228
+		let bljjb = false;
229
+		let blk = false;
226
     let yfang = false;
230
     let yfang = false;
227
     roleMenus.forEach((e) => {
231
     roleMenus.forEach((e) => {
228
       if (e.link == "pharmacy") {
232
       if (e.link == "pharmacy") {
229
         yfang = true;
233
         yfang = true;
230
         console.log("药房端");
234
         console.log("药房端");
231
       } else if (e.link == "nurse") {
235
       } else if (e.link == "nurse") {
236
+				console.log(44,e.link)
232
         fwt = true;
237
         fwt = true;
233
         console.log("护士端");
238
         console.log("护士端");
234
       } else if (e.link == "dispatchingDesk") {
239
       } else if (e.link == "dispatchingDesk") {
235
         ddt = true;
240
         ddt = true;
236
         console.log("调度台");
241
         console.log("调度台");
242
+      } else if (e.link == "specimenRoomView") {
243
+        bbj = true;
244
+        console.log("标本间端");
245
+      } else if (e.link == "pathologySample") {
246
+        mzbl = true;
247
+        console.log("门诊病理采样端");
248
+      } else if (e.link == "pathologyCommunicationBook") {
249
+        bljjb = true;
250
+        console.log("病理交接本");
251
+      } else if (e.link == "pathology") {
252
+        blk = true;
253
+        console.log("病理科端");
237
       }
254
       }
238
       canLogin = true;
255
       canLogin = true;
239
     });
256
     });
@@ -271,7 +288,51 @@ export class LoginComponent implements OnInit {
271
       localStorage.setItem("user", JSON.stringify(data.user));
288
       localStorage.setItem("user", JSON.stringify(data.user));
272
       this.router.navigateByUrl("/dispatchingDesk");
289
       this.router.navigateByUrl("/dispatchingDesk");
273
       return;
290
       return;
274
-    } else if (yfang) {
291
+    } else if (bbj) {
292
+      // 标本间端
293
+      if (successLoginMsg) {
294
+        this.msg.success("登录成功!", {
295
+          nzDuration: 1000,
296
+        });
297
+      }
298
+      successLoginMsg = false;
299
+      localStorage.setItem("user", JSON.stringify(data.user));
300
+      this.router.navigateByUrl("/specimenRoomView");
301
+      return;
302
+    }else if (mzbl) {
303
+      // 门诊病理采样端
304
+      if (successLoginMsg) {
305
+        this.msg.success("登录成功!", {
306
+          nzDuration: 1000,
307
+        });
308
+      }
309
+      successLoginMsg = false;
310
+      localStorage.setItem("user", JSON.stringify(data.user));
311
+      this.router.navigateByUrl("/pathologySample");
312
+      return;
313
+    }else if (bljjb) {
314
+      // 病理交接本
315
+      if (successLoginMsg) {
316
+        this.msg.success("登录成功!", {
317
+          nzDuration: 1000,
318
+        });
319
+      }
320
+      successLoginMsg = false;
321
+      localStorage.setItem("user", JSON.stringify(data.user));
322
+      this.router.navigateByUrl("/pathologyCommunicationBook");
323
+      return;
324
+    }else if (blk) {
325
+      // 病理科端
326
+      if (successLoginMsg) {
327
+        this.msg.success("登录成功!", {
328
+          nzDuration: 1000,
329
+        });
330
+      }
331
+      successLoginMsg = false;
332
+      localStorage.setItem("user", JSON.stringify(data.user));
333
+      this.router.navigateByUrl("/pathology");
334
+      return;
335
+    }else if (yfang) {
275
       // 药房端2
336
       // 药房端2
276
       if (successLoginMsg) {
337
       if (successLoginMsg) {
277
         this.msg.success("登录成功!", {
338
         this.msg.success("登录成功!", {

+ 1 - 1
src/app/views/pathology-check/pathology-check.component.html

@@ -115,7 +115,7 @@
115
 										<td>{{index+1}}</td>
115
 										<td>{{index+1}}</td>
116
 										<td>{{ data.specimenCode}}</td>
116
 										<td>{{ data.specimenCode}}</td>
117
 										<td>
117
 										<td>
118
-											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.organ?data.organ.name:''}}{{data.specimenName}}
118
+											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.specimenName}}
119
 										</td>
119
 										</td>
120
 										<td>
120
 										<td>
121
 											<div *ngIf="data.isScan==1">已扫描</div>
121
 											<div *ngIf="data.isScan==1">已扫描</div>

+ 1 - 1
src/app/views/pathology-communication-book/pathology-communication-book.component.html

@@ -369,7 +369,7 @@
369
 					<div class="form-title font-weight-500">标本:</div>
369
 					<div class="form-title font-weight-500">标本:</div>
370
 					<div class="form-title specimen-list">
370
 					<div class="form-title specimen-list">
371
 						<div *ngFor="let item of specimenList" class="specimen-item-class form-title cursors" (click)="specimenView(item)">
371
 						<div *ngFor="let item of specimenList" class="specimen-item-class form-title cursors" (click)="specimenView(item)">
372
-							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
372
+							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
373
 						</div>
373
 						</div>
374
 					</div>
374
 					</div>
375
 				</div>
375
 				</div>

+ 18 - 7
src/app/views/pathology-sample/pathology-sample.component.html

@@ -140,7 +140,7 @@
140
 								<nz-form-item class="form-item-right">
140
 								<nz-form-item class="form-item-right">
141
 									<nz-form-label nzRequired nzFor="specimenNum">标本数量</nz-form-label>
141
 									<nz-form-label nzRequired nzFor="specimenNum">标本数量</nz-form-label>
142
 									<nz-form-control nzErrorTip="请输入标本数量!">
142
 									<nz-form-control nzErrorTip="请输入标本数量!">
143
-										<input nz-input formControlName="specimenNum" disabled placeholder="请输入标本数量" nzSize="default" />
143
+										<input nz-input formControlName="specimenNum" placeholder="请输入标本数量" nzSize="default" />
144
 									</nz-form-control>
144
 									</nz-form-control>
145
 								</nz-form-item>
145
 								</nz-form-item>
146
 							</div>
146
 							</div>
@@ -163,7 +163,7 @@
163
 							<div class="specimen-list">
163
 							<div class="specimen-list">
164
 								<div *ngFor="let item of specimenList;let index=index;" class="specimen-item">
164
 								<div *ngFor="let item of specimenList;let index=index;" class="specimen-item">
165
 									<div class="specimen-name" (click)="specimenEdit($event,item,index)">
165
 									<div class="specimen-name" (click)="specimenEdit($event,item,index)">
166
-										<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
166
+										<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
167
 									</div>
167
 									</div>
168
 									<span class="icon_transport transport-lajitong specimen-icon" (click)="specimenDel($event,item,index)"></span>
168
 									<span class="icon_transport transport-lajitong specimen-icon" (click)="specimenDel($event,item,index)"></span>
169
 								</div>
169
 								</div>
@@ -233,7 +233,7 @@
233
 									<div class="form-title font-weight-500">标本:</div>
233
 									<div class="form-title font-weight-500">标本:</div>
234
 									<div class="form-title-box-detail">
234
 									<div class="form-title-box-detail">
235
 										<div class="form-title cursors" *ngFor="let item of specimenList" (click)="specimenView(item)">
235
 										<div class="form-title cursors" *ngFor="let item of specimenList" (click)="specimenView(item)">
236
-											<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
236
+											<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
237
 										</div>
237
 										</div>
238
 									</div>
238
 									</div>
239
 								</div>
239
 								</div>
@@ -381,11 +381,22 @@
381
 				</nz-form-item>
381
 				</nz-form-item>
382
 				
382
 				
383
 				<nz-form-item class="form-item">
383
 				<nz-form-item class="form-item">
384
+					<nz-form-label [nzSm]="4" [nzXs]="24">快捷键入</nz-form-label>
385
+					<div class="specimen-list">
386
+						<div *ngFor="let item of fastList;let index=index;" class="select-item"
387
+							[ngClass]="{'activeClass': index == fastIndex}" (click)="fastClick($event,item,index)">
388
+							{{item.name}}
389
+						</div>
390
+					</div>
391
+				</nz-form-item>
392
+				
393
+				<nz-form-item class="form-item">
384
 					<nz-form-label nzRequired nzFor="specimenName" [nzSm]="3" [nzXs]="24">标本名称</nz-form-label>
394
 					<nz-form-label nzRequired nzFor="specimenName" [nzSm]="3" [nzXs]="24">标本名称</nz-form-label>
385
-					<nz-form-control nzErrorTip="请输入标本名称" [nzSm]="21" [nzXs]="24">
395
+					<div class="specimen-tip" [ngClass]="{'isSpecumen':placeName}">{{placeName?placeName:''}}</div>
396
+					<nz-form-control nzErrorTip="请输入标本名称" [(nzSm)]="nzSmNum" [nzXs]="24">
386
 						<input nz-input maxlength="15" (ngModelChange)="specimenInput($event)" formControlName="specimenName" placeholder="请输入标本名称"/>
397
 						<input nz-input maxlength="15" (ngModelChange)="specimenInput($event)" formControlName="specimenName" placeholder="请输入标本名称"/>
387
 					</nz-form-control>
398
 					</nz-form-control>
388
-					<div class="empty-box">
399
+					<div class="empty-box" [ngClass]="{'beSpecumenEmpty':placeName, 'noSpecumenEmpty':placeName==''}">
389
 						<span class="name">{{specimenNameLength}}/15</span>
400
 						<span class="name">{{specimenNameLength}}/15</span>
390
 						<span class="empty" (click)="emptData($event)">清空</span>
401
 						<span class="empty" (click)="emptData($event)">清空</span>
391
 					</div>
402
 					</div>
@@ -564,7 +575,7 @@
564
 							<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
575
 							<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
565
 						</div>
576
 						</div>
566
 						<div style="margin-top:10px;">
577
 						<div style="margin-top:10px;">
567
-							<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
578
+							<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
568
 						</div>
579
 						</div>
569
 					 </div>
580
 					 </div>
570
 					 <div style="width: 30%;">
581
 					 <div style="width: 30%;">
@@ -607,7 +618,7 @@
607
 				 </div>
618
 				 </div>
608
 				</div>
619
 				</div>
609
 				<div style="margin-top:10px;padding-left: 7px;">
620
 				<div style="margin-top:10px;padding-left: 7px;">
610
-					<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
621
+					<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.specimenName}}</div>
611
 				</div>
622
 				</div>
612
 			 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
623
 			 <div style="height: 11px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
613
 			</div>
624
 			</div>

+ 17 - 3
src/app/views/pathology-sample/pathology-sample.component.less

@@ -885,8 +885,16 @@
885
 				.ant-form-item {
885
 				.ant-form-item {
886
 				  margin-bottom: 14px;
886
 				  margin-bottom: 14px;
887
 					display: flex;
887
 					display: flex;
888
-					flex-wrap: wrap;
888
+					// flex-wrap: wrap;
889
 					position: relative;
889
 					position: relative;
890
+					.specimen-tip{
891
+						display: flex;
892
+						align-items: center;
893
+						font-weight: 600;
894
+					}
895
+					.isSpecumen{
896
+						margin-right: 15px;
897
+					}
890
 				  .ant-form-item-label {
898
 				  .ant-form-item-label {
891
 				    text-align: left;
899
 				    text-align: left;
892
 						font-weight: 500;
900
 						font-weight: 500;
@@ -898,8 +906,6 @@
898
 					}
906
 					}
899
 					.empty-box{
907
 					.empty-box{
900
 						position: absolute;
908
 						position: absolute;
901
-						right: 6px;
902
-						top: 8px;
903
 						.name{
909
 						.name{
904
 							color: #ccc;
910
 							color: #ccc;
905
 						}
911
 						}
@@ -908,6 +914,14 @@
908
 							cursor: pointer;
914
 							cursor: pointer;
909
 						}
915
 						}
910
 					}
916
 					}
917
+					.beSpecumenEmpty{
918
+						right: 6px;
919
+						top: 8px;
920
+					}
921
+					.noSpecumenEmpty{
922
+						right: 6px;
923
+						top: 8px;
924
+					}
911
 				}
925
 				}
912
 				.specimen-list{
926
 				.specimen-list{
913
 					flex: 1;
927
 					flex: 1;

+ 152 - 84
src/app/views/pathology-sample/pathology-sample.component.ts

@@ -92,13 +92,20 @@ export class PathologySampleComponent implements OnInit {
92
 		});
92
 		});
93
 		this.hosId = this.tool.getCurrentHospital().id;
93
 		this.hosId = this.tool.getCurrentHospital().id;
94
 		this.userId = this.tool.getCurrentUserId()
94
 		this.userId = this.tool.getCurrentUserId()
95
-		this.initForm();
96
 		this.getProDicData()
95
 		this.getProDicData()
97
 		this.getDicData()
96
 		this.getDicData()
98
 		this.getSourceData()
97
 		this.getSourceData()
99
 		this.getSysData()
98
 		this.getSysData()
100
 		this.getTaskTypesId();
99
 		this.getTaskTypesId();
101
 		this.getStationaryLiquid();
100
 		this.getStationaryLiquid();
101
+		this.validateForm = this.fb.group({
102
+			specimenGenre: [null, [Validators.required]],
103
+			intraoperativeFindings: [null, []],
104
+			project: [null, [Validators.required]],
105
+			surgicalPlan: [null, []],
106
+			specimenNum: [{value: null, disabled: true},[Validators.required]],
107
+			takePart: [null, [Validators.required]]
108
+		});
102
 		if(this.route.snapshot.params && this.route.snapshot.params.param){
109
 		if(this.route.snapshot.params && this.route.snapshot.params.param){
103
 			this.barCode = this.route.snapshot.params.param
110
 			this.barCode = this.route.snapshot.params.param
104
 			this.searchSpecimen(this.barCode,'search')
111
 			this.searchSpecimen(this.barCode,'search')
@@ -109,15 +116,89 @@ export class PathologySampleComponent implements OnInit {
109
   }
116
   }
110
 	
117
 	
111
 	// 初始化新增form表单
118
 	// 初始化新增form表单
112
-	initForm() {
113
-		this.validateForm = this.fb.group({
114
-			specimenGenre: [null, [Validators.required]],
115
-			intraoperativeFindings: [null, []],
116
-			project: [null, [Validators.required]],
117
-			surgicalPlan: [null, []],
118
-			specimenNum: [null,[Validators.required]],
119
-			takePart: [null, [Validators.required]]
120
-		});
119
+	initForm(data) {
120
+		this.syncFlag = data.syncFlag;
121
+		if(data.syncFlag==1){
122
+			this.validateForm.removeControl('project')
123
+		}else{
124
+			this.validateForm.addControl(
125
+				'project',
126
+				new FormControl(null, Validators.required)
127
+			);
128
+		}
129
+		setTimeout(_=>{
130
+			this.detailsData = data
131
+			this.surgeryId = data.surgeryId;
132
+			if(this.detailsData.status && this.detailsData.status.value>=5){
133
+				this.viewType = 'view'
134
+			}else{
135
+				this.viewType = 'edit'
136
+			}
137
+			this.statusValue = this.detailsData.status.value
138
+			this.pathologyLogs = data.formLogDTOS
139
+			this.stepLength = this.pathologyLogs.length
140
+			
141
+			if(this.detailsData.medicalRecords){
142
+				this.medicalRecordsLength = this.detailsData.medicalRecords.length
143
+			}else{
144
+				this.medicalRecordsLength = 0
145
+			}
146
+			
147
+			if(this.detailsData.intraoperativeFindings){
148
+				this.validateForm.controls.intraoperativeFindings.setValue(this.detailsData.intraoperativeFindings);
149
+			}else{
150
+				this.validateForm.controls.intraoperativeFindings.setValue('');
151
+			}
152
+			
153
+			if(this.detailsData.surgicalPlan){
154
+				this.validateForm.controls.surgicalPlan.setValue(this.detailsData.surgicalPlan);
155
+			}else{
156
+				this.validateForm.controls.surgicalPlan.setValue('');
157
+			}
158
+			
159
+			// 检验项目
160
+			if(this.detailsData.status && this.detailsData.status.value==5){
161
+				if(this.detailsData.pathologyInspectDTOS&&this.detailsData.pathologyInspectDTOS.length>0){
162
+					this.project = this.detailsData.pathologyInspectDTOS[0].inspectProject.name
163
+				}
164
+			}else{
165
+				let str = null
166
+				if(this.detailsData.pathologyInspectDTOS){
167
+					if(data.syncFlag==1){
168
+						str = this.detailsData.pathologyInspectDTOS[0].inspectProject.name
169
+						this.project = str
170
+					}else{
171
+						str = this.detailsData.pathologyInspectDTOS[0].inspectProject.id
172
+						this.validateForm.controls.project.setValue(str);
173
+					}
174
+				}else{
175
+					if(data.syncFlag==1){
176
+						this.project = ''
177
+					}else{
178
+						this.validateForm.controls.project.setValue(str);
179
+					}
180
+				}
181
+			}
182
+			
183
+			// 标本类型
184
+			if(this.detailsData.specimenType){
185
+				this.validateForm.controls.specimenGenre.setValue(this.detailsData.specimenType.id);
186
+			}else{
187
+				let item = this.specimenData.find(i=>i.value==10)
188
+				this.validateForm.controls.specimenGenre.setValue(item.id);
189
+			}
190
+			if(this.detailsData.specimenNum){
191
+				this.validateForm.controls.specimenNum.setValue(this.detailsData.specimenNum);
192
+			}else{
193
+				this.validateForm.controls.specimenNum.setValue('');
194
+			}
195
+			if(this.detailsData.takePart){
196
+				this.validateForm.controls.takePart.setValue(this.detailsData.takePart);
197
+			}else{
198
+				this.validateForm.controls.takePart.setValue('');
199
+			}
200
+			this.getSampleData('load')
201
+		},0)
121
 	}
202
 	}
122
 	
203
 	
123
 	// 新增申请单
204
 	// 新增申请单
@@ -335,7 +416,11 @@ export class PathologySampleComponent implements OnInit {
335
 	}
416
 	}
336
 	fixationTimeSelect:any;
417
 	fixationTimeSelect:any;
337
 	fixationTimeChange(result){
418
 	fixationTimeChange(result){
338
-		this.fixationTimeSelect = format(result, 'HH:mm');
419
+		if(result){
420
+			this.fixationTimeSelect = format(result, 'HH:mm');
421
+		}else{
422
+			this.fixationTimeSelect = null;
423
+		}
339
 		console.log(this.fixationData + ' ' + this.fixationTimeSelect)
424
 		console.log(this.fixationData + ' ' + this.fixationTimeSelect)
340
 	}
425
 	}
341
 	
426
 	
@@ -358,6 +443,10 @@ export class PathologySampleComponent implements OnInit {
358
 	printLoading:any = false;
443
 	printLoading:any = false;
359
 	submitVerificationForm(){
444
 	submitVerificationForm(){
360
 		let that = this
445
 		let that = this
446
+		if(!this.fixationTimeSelect && this.fixationTimeSelect == null){
447
+			this.message.error('请选择固定时间')
448
+			return
449
+		}
361
 		for (const i in this.validatePrintForm.controls) {
450
 		for (const i in this.validatePrintForm.controls) {
362
 		  this.validatePrintForm.controls[i].markAsDirty();
451
 		  this.validatePrintForm.controls[i].markAsDirty();
363
 		  this.validatePrintForm.controls[i].updateValueAndValidity();
452
 		  this.validatePrintForm.controls[i].updateValueAndValidity();
@@ -459,78 +548,8 @@ export class PathologySampleComponent implements OnInit {
459
 		this.mainService.getFetchData("data", "pathologyForm", id)
548
 		this.mainService.getFetchData("data", "pathologyForm", id)
460
 		.subscribe((data) => {
549
 		.subscribe((data) => {
461
 			this.isSpinning = false;
550
 			this.isSpinning = false;
462
-			this.detailsData = data.data;
463
-			this.syncFlag = data.data.syncFlag;
464
-			this.surgeryId = data.data.surgeryId;
465
-			if(this.detailsData.status && this.detailsData.status.value==5){
466
-				this.viewType = 'view'
467
-			}else{
468
-				this.viewType = 'edit'
469
-			}
470
-			this.statusValue = this.detailsData.status.value
471
-			this.pathologyLogs = data.data.formLogDTOS
472
-			this.stepLength = this.pathologyLogs.length
473
-			
474
-			if(this.detailsData.medicalRecords){
475
-				this.medicalRecordsLength = this.detailsData.medicalRecords.length
476
-			}else{
477
-				this.medicalRecordsLength = 0
478
-			}
479
-
480
-			if(this.detailsData.intraoperativeFindings){
481
-				this.validateForm.controls.intraoperativeFindings.setValue(this.detailsData.intraoperativeFindings);
482
-			}else{
483
-				this.validateForm.controls.intraoperativeFindings.setValue('');
484
-			}
485
-			
486
-			if(this.detailsData.surgicalPlan){
487
-				this.validateForm.controls.surgicalPlan.setValue(this.detailsData.surgicalPlan);
488
-			}else{
489
-				this.validateForm.controls.surgicalPlan.setValue('');
490
-			}
491
-			
492
-			// 检验项目
493
-			if(this.detailsData.status && this.detailsData.status.value==5){
494
-				if(this.detailsData.pathologyInspectDTOS&&this.detailsData.pathologyInspectDTOS.length>0){
495
-					this.project = this.detailsData.pathologyInspectDTOS[0].inspectProject.name
496
-				}
497
-			}else{
498
-				let str = null
499
-				if(this.detailsData.pathologyInspectDTOS){
500
-					if(this.syncFlag==1){
501
-						str = this.detailsData.pathologyInspectDTOS[0].inspectProject.name
502
-						this.project = str
503
-					}else{
504
-						str = this.detailsData.pathologyInspectDTOS[0].inspectProject.id
505
-						this.validateForm.controls.project.setValue(str);
506
-					}
507
-				}else{
508
-					if(this.syncFlag==1){
509
-						this.project = ''
510
-					}else{
511
-						this.validateForm.controls.project.setValue(str);
512
-					}
513
-				}
514
-			}
515
-
516
-			// 标本类型
517
-			if(this.detailsData.specimenType){
518
-				this.validateForm.controls.specimenGenre.setValue(this.detailsData.specimenType.id);
519
-			}else{
520
-				let item = this.specimenData.find(i=>i.value==10)
521
-				this.validateForm.controls.specimenGenre.setValue(item.id);
522
-			}
523
-			if(this.detailsData.specimenNum){
524
-				this.validateForm.controls.specimenNum.setValue(this.detailsData.specimenNum);
525
-			}else{
526
-				this.validateForm.controls.specimenNum.setValue('');
527
-			}
528
-			if(this.detailsData.takePart){
529
-				this.validateForm.controls.takePart.setValue(this.detailsData.takePart);
530
-			}else{
531
-				this.validateForm.controls.takePart.setValue('');
532
-			}
533
-			this.getSampleData('load')
551
+			this.initForm(data.data);
552
+			// this.detailsData = data.data;
534
 		});
553
 		});
535
 	}
554
 	}
536
 	
555
 	
@@ -637,6 +656,7 @@ export class PathologySampleComponent implements OnInit {
637
 							this.specimenNameIndex = index4
656
 							this.specimenNameIndex = index4
638
 							this.specimenNameName = item.sample.name
657
 							this.specimenNameName = item.sample.name
639
 							this.specimenNameId = Number(item.sample.id);
658
 							this.specimenNameId = Number(item.sample.id);
659
+							this.specimenNameLength = item.specimenName.length;
640
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
660
 							this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
641
 						},100)
661
 						},100)
642
 					}
662
 					}
@@ -665,6 +685,7 @@ export class PathologySampleComponent implements OnInit {
665
 								this.specimenNameIndex = index4
685
 								this.specimenNameIndex = index4
666
 								this.specimenNameName = item.sample.name
686
 								this.specimenNameName = item.sample.name
667
 								this.specimenNameId = Number(item.sample.id);
687
 								this.specimenNameId = Number(item.sample.id);
688
+								this.specimenNameLength = item.specimenName.length;
668
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
689
 								this.validateSpecimenForm.controls.specimenName.setValue(item.specimenName);
669
 							},100)
690
 							},100)
670
 						}
691
 						}
@@ -714,12 +735,15 @@ export class PathologySampleComponent implements OnInit {
714
 	// 编辑标本
735
 	// 编辑标本
715
 	specimenDetailId:any = null;
736
 	specimenDetailId:any = null;
716
 	specimenEdit(e,item,index){
737
 	specimenEdit(e,item,index){
738
+		this.fastIndex = null
717
 		this.specimenDetailId = item.id
739
 		this.specimenDetailId = item.id
718
 		if(item.system && item.organ){
740
 		if(item.system && item.organ){
719
 			this.selectType = false
741
 			this.selectType = false
720
 			let index1 = this.placeList.findIndex(i=>i.id==item.partSource.id)
742
 			let index1 = this.placeList.findIndex(i=>i.id==item.partSource.id)
721
 			this.placeIndex = index1
743
 			this.placeIndex = index1
722
 			this.placeId = Number(item.partSource.id)
744
 			this.placeId = Number(item.partSource.id)
745
+			this.placeName = item.partSource.value==1?'':item.partSource.name
746
+			this.nzSmNum = item.partSource.value==1 ? 21 : 20
723
 			let index2 = this.systemList.findIndex(i=>i.id==item.system.id)
747
 			let index2 = this.systemList.findIndex(i=>i.id==item.system.id)
724
 			this.systemIndex = index2
748
 			this.systemIndex = index2
725
 			this.systemId = Number(item.system.id)
749
 			this.systemId = Number(item.system.id)
@@ -741,6 +765,7 @@ export class PathologySampleComponent implements OnInit {
741
 		  remark: [null, []],
765
 		  remark: [null, []],
742
 			specimenName:[null, [Validators.required]],
766
 			specimenName:[null, [Validators.required]],
743
 		});
767
 		});
768
+		this.fastIndex = null;
744
 		this.specimenDetailId = null;
769
 		this.specimenDetailId = null;
745
 		this.placeIndex = null;
770
 		this.placeIndex = null;
746
 		this.systemIndex = null;
771
 		this.systemIndex = null;
@@ -771,8 +796,12 @@ export class PathologySampleComponent implements OnInit {
771
 	
796
 	
772
 	// 选择位置来源
797
 	// 选择位置来源
773
 	placeId:any = null;
798
 	placeId:any = null;
799
+	placeName:any = null;
800
+	nzSmNum:any = 21;
774
 	placeClick(e,item,index){
801
 	placeClick(e,item,index){
775
 		this.placeId = item.id
802
 		this.placeId = item.id
803
+		this.placeName = item.value==1?'':item.name
804
+		this.nzSmNum = item.value==1 ? 21 : 20
776
 		this.placeIndex = index
805
 		this.placeIndex = index
777
 	}
806
 	}
778
 	
807
 	
@@ -789,6 +818,7 @@ export class PathologySampleComponent implements OnInit {
789
 		this.specimenNameId = null;
818
 		this.specimenNameId = null;
790
 		this.specimenNameIndex = null;
819
 		this.specimenNameIndex = null;
791
 		this.specimenNameName = null;
820
 		this.specimenNameName = null;
821
+		this.fastIndex = null;
792
 		if(this.validateSpecimenForm.value.specimenName){
822
 		if(this.validateSpecimenForm.value.specimenName){
793
 			this.validateSpecimenForm.controls.specimenName.setValue('')
823
 			this.validateSpecimenForm.controls.specimenName.setValue('')
794
 		}
824
 		}
@@ -804,6 +834,7 @@ export class PathologySampleComponent implements OnInit {
804
 		this.specimenNameId = null;
834
 		this.specimenNameId = null;
805
 		this.specimenNameIndex = null;
835
 		this.specimenNameIndex = null;
806
 		this.specimenNameName = null;
836
 		this.specimenNameName = null;
837
+		this.fastIndex = null;
807
 		if(this.validateSpecimenForm.value.specimenName){
838
 		if(this.validateSpecimenForm.value.specimenName){
808
 			this.validateSpecimenForm.controls.specimenName.setValue('')
839
 			this.validateSpecimenForm.controls.specimenName.setValue('')
809
 		}
840
 		}
@@ -834,6 +865,31 @@ export class PathologySampleComponent implements OnInit {
834
 			this.validateSpecimenForm.controls.specimenName.setValue(namn);
865
 			this.validateSpecimenForm.controls.specimenName.setValue(namn);
835
 	}
866
 	}
836
 	
867
 	
868
+	// 选择标本名称
869
+	fastList:any = [
870
+		{name:'活检'},
871
+		{name:'切除'},
872
+		{name:'穿刺'}
873
+	];
874
+	fastIndex:any = null;
875
+	fastClick(e,item,index){
876
+		this.fastIndex = index
877
+			if(this.validateSpecimenForm.value.specimenName && this.validateSpecimenForm.value.specimenName.length){
878
+				if(item.name.length+this.validateSpecimenForm.value.specimenName.length>14){
879
+					this.message.error('字符长度不能超过15个')
880
+					return
881
+				}
882
+			}
883
+			
884
+			let namn = null
885
+			if(this.validateSpecimenForm.value.specimenName){
886
+				namn = this.validateSpecimenForm.value.specimenName + item.name
887
+			}else{
888
+				namn = item.name
889
+			}
890
+			this.validateSpecimenForm.controls.specimenName.setValue(namn);
891
+	}
892
+	
837
 	// 保存标本
893
 	// 保存标本
838
 	btnSpLoading:boolean = false;
894
 	btnSpLoading:boolean = false;
839
 	addSpLoading:boolean = false;
895
 	addSpLoading:boolean = false;
@@ -1117,6 +1173,10 @@ export class PathologySampleComponent implements OnInit {
1117
 			that.validateForm.controls[i].updateValueAndValidity();
1173
 			that.validateForm.controls[i].updateValueAndValidity();
1118
 		}
1174
 		}
1119
 		if (that.validateForm.invalid) return;
1175
 		if (that.validateForm.invalid) return;
1176
+		// if(this.validateForm.controls.takePart.value==''){
1177
+		// 	this.message.error('请输入采取部位')
1178
+		// 	return
1179
+		// }
1120
 		if(this.specimenList.length==0){
1180
 		if(this.specimenList.length==0){
1121
 			this.message.error('标本不能为空')
1181
 			this.message.error('标本不能为空')
1122
 			return
1182
 			return
@@ -1434,7 +1494,15 @@ export class PathologySampleComponent implements OnInit {
1434
 			this.tableLoading = false
1494
 			this.tableLoading = false
1435
 			this.specimenCode = null
1495
 			this.specimenCode = null
1436
 			if(res.status==200){
1496
 			if(res.status==200){
1437
-				let item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
1497
+				let item = null
1498
+				let str = null
1499
+				if(e.indexOf(':')!=-1){
1500
+					str = e.split(':')
1501
+					item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == str[1])
1502
+				}else{
1503
+					item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
1504
+				}
1505
+				// let item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
1438
 				if(item.fixationTime){
1506
 				if(item.fixationTime){
1439
 					this.fixationError = '该标本已经固定过'
1507
 					this.fixationError = '该标本已经固定过'
1440
 				}else{
1508
 				}else{

+ 1 - 1
src/app/views/pathology/pathology.component.html

@@ -371,7 +371,7 @@
371
 					<div class="form-title font-weight-500">标本:</div>
371
 					<div class="form-title font-weight-500">标本:</div>
372
 					<div class="form-title specimen-list">
372
 					<div class="form-title specimen-list">
373
 						<div *ngFor="let item of specimenList" class="specimen-item-class form-title cursors" (click)="specimenView(item)">
373
 						<div *ngFor="let item of specimenList" class="specimen-item-class form-title cursors" (click)="specimenView(item)">
374
-							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
374
+							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
375
 						</div>
375
 						</div>
376
 					</div>
376
 					</div>
377
 				</div>
377
 				</div>

+ 2 - 2
src/app/views/pathologyScan/pathologyScan.component.html

@@ -53,7 +53,7 @@
53
 										<td>{{ data.takePart}}</td>
53
 										<td>{{ data.takePart}}</td>
54
 										<td>
54
 										<td>
55
 											<div *ngFor="let item of data.pathologySpecimenDTOList">
55
 											<div *ngFor="let item of data.pathologySpecimenDTOList">
56
-												<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}
56
+												<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}
57
 											</div>
57
 											</div>
58
 										</td>
58
 										</td>
59
 									</tr>
59
 									</tr>
@@ -114,7 +114,7 @@
114
 										<td>{{index+1}}</td>
114
 										<td>{{index+1}}</td>
115
 										<td>{{ data.specimenCode}}</td>
115
 										<td>{{ data.specimenCode}}</td>
116
 										<td>
116
 										<td>
117
-											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.organ?data.organ.name:''}}{{data.specimenName}}
117
+											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.specimenName}}
118
 										</td>
118
 										</td>
119
 										<td *ngIf="dataType=='receive'">
119
 										<td *ngIf="dataType=='receive'">
120
 											<div *ngIf="data.isScan==1">已接收</div>
120
 											<div *ngIf="data.isScan==1">已接收</div>

+ 20 - 17
src/app/views/specimen-room-view/specimen-room-view.component.html

@@ -471,7 +471,7 @@
471
 <!-- 标本接收 -->
471
 <!-- 标本接收 -->
472
 <div class="pathology-box display_flex align-items_center justify-content_flex-center" *ngIf="fixationModal">
472
 <div class="pathology-box display_flex align-items_center justify-content_flex-center" *ngIf="fixationModal">
473
 	<div class="pathology-content width-80">
473
 	<div class="pathology-content width-80">
474
-		<div class="title">标本接收固定
474
+		<div class="title">标本接收固定
475
 		<i class="icon_transport transport-guanbi" (click)="hideSpecimenModal()"></i></div>
475
 		<i class="icon_transport transport-guanbi" (click)="hideSpecimenModal()"></i></div>
476
 		<div class="content">
476
 		<div class="content">
477
 			<div class="content-item boder-right">
477
 			<div class="content-item boder-right">
@@ -525,7 +525,8 @@
525
 			</div>
525
 			</div>
526
 			
526
 			
527
 			<div class="content-item">
527
 			<div class="content-item">
528
-				<div class="center">提示:本申请单内共有<span class="red">{{totalNum}}</span>只标本固定,已固定<span class="red">{{fixationNum}}</span>份还需固定<span class="red">{{specimenNum}}</span>份</div>
528
+				<!-- <div class="center">提示:本申请单内共有<span class="red">{{totalNum}}</span>只标本固定,已固定<span class="red">{{fixationNum}}</span>份还需固定<span class="red">{{specimenNum}}</span>份</div> -->
529
+				<div class="center">提示:本申请单内共有<span class="red">{{codeData.specimenNum}}</span>只标本</div>
529
 				<div class="disp-fl">
530
 				<div class="disp-fl">
530
 					<div class="width-120">标本条码:</div>
531
 					<div class="width-120">标本条码:</div>
531
 					<input nz-input id="specimen" [(ngModel)]="specimenCode" (ngModelChange)="codeChange($event)"/>
532
 					<input nz-input id="specimen" [(ngModel)]="specimenCode" (ngModelChange)="codeChange($event)"/>
@@ -548,7 +549,7 @@
548
 										<td>{{index+1}}</td>
549
 										<td>{{index+1}}</td>
549
 										<td>{{ data.specimenCode}}</td>
550
 										<td>{{ data.specimenCode}}</td>
550
 										<td>
551
 										<td>
551
-											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.organ?data.organ.name:''}}{{data.specimenName}}
552
+											<span *ngIf="data.partSource && data.partSource.value!=1">{{data.partSource?data.partSource.name:''}}</span>{{data.specimenName}}
552
 										</td>
553
 										</td>
553
 									</tr>
554
 									</tr>
554
 								</tbody>
555
 								</tbody>
@@ -573,11 +574,11 @@
573
 <!-- 标本固定信息 -->
574
 <!-- 标本固定信息 -->
574
 <div class="save add display_flex align-items_center justify-content_flex-center" *ngIf="verificationMoadl">
575
 <div class="save add display_flex align-items_center justify-content_flex-center" *ngIf="verificationMoadl">
575
 	<div class="modalBody no-width">
576
 	<div class="modalBody no-width">
576
-		<div class="title">标本固定信息<i class="icon_transport transport-guanbi" (click)="hideVerificationModal()"></i>
577
+		<div class="title">{{!ifFixType?'标本固定信息':'标本接受收信息'}}<i class="icon_transport transport-guanbi" (click)="hideVerificationModal()"></i>
577
 		</div>
578
 		</div>
578
 		<div class="content">
579
 		<div class="content">
579
 			<form nz-form [formGroup]="validateVerificationForm" class="addForm" (ngSubmit)="submitVerificationForm()">
580
 			<form nz-form [formGroup]="validateVerificationForm" class="addForm" (ngSubmit)="submitVerificationForm()">
580
-				<nz-form-item>
581
+				<nz-form-item *ngIf="!ifFixType">
581
 				  <nz-form-label nzRequired [nzSpan]="6" nzFor="fixationTime">固定时间</nz-form-label>
582
 				  <nz-form-label nzRequired [nzSpan]="6" nzFor="fixationTime">固定时间</nz-form-label>
582
 				<!--  <nz-form-control [nzSpan]="18" nzErrorTip="请选择固定时间!">
583
 				<!--  <nz-form-control [nzSpan]="18" nzErrorTip="请选择固定时间!">
583
 				    <nz-input-group>
584
 				    <nz-input-group>
@@ -595,18 +596,18 @@
595
 					</nz-form-control>
596
 					</nz-form-control>
596
 				</nz-form-item>
597
 				</nz-form-item>
597
 				<nz-form-item>
598
 				<nz-form-item>
598
-				  <nz-form-label nzRequired [nzSpan]="6" nzFor="jobNumber">工号</nz-form-label>
599
-					<nz-form-control [nzSpan]="18" nzErrorTip="请输入工号!">
600
-						<input nz-input (ngModelChange)="numberChange($event,1)" formControlName="jobNumber" placeholder="请输入工号" nzSize="default" />
599
+				  <nz-form-label nzRequired [nzSpan]="6" nzFor="jobNumber">医生工号</nz-form-label>
600
+					<nz-form-control [nzSpan]="18" nzErrorTip="请输入医生工号!">
601
+						<input nz-input (ngModelChange)="numberChange($event,1)" formControlName="jobNumber" placeholder="请输入医生工号" nzSize="default" />
601
 					</nz-form-control>
602
 					</nz-form-control>
602
 				</nz-form-item>
603
 				</nz-form-item>
603
 				<nz-form-item>
604
 				<nz-form-item>
604
-				  <nz-form-label nzRequired [nzSpan]="6" nzFor="name">姓名</nz-form-label>
605
-					<nz-form-control [nzSpan]="18" nzErrorTip="请输入姓名!">
606
-						<input nz-input disabled formControlName="name" placeholder="请输入姓名" nzSize="default" />
605
+				  <nz-form-label nzRequired [nzSpan]="6" nzFor="name">医生姓名</nz-form-label>
606
+					<nz-form-control [nzSpan]="18" nzErrorTip="请输入医生姓名!">
607
+						<input nz-input disabled formControlName="name" placeholder="请输入医生姓名" nzSize="default" />
607
 					</nz-form-control>
608
 					</nz-form-control>
608
 				</nz-form-item>
609
 				</nz-form-item>
609
-<!-- 				<nz-form-item>
610
+				<nz-form-item>
610
 				  <nz-form-label nzRequired [nzSpan]="6" nzFor="nurseJobNumber">护士工号</nz-form-label>
611
 				  <nz-form-label nzRequired [nzSpan]="6" nzFor="nurseJobNumber">护士工号</nz-form-label>
611
 					<nz-form-control [nzSpan]="18" nzErrorTip="请输入护士工号!">
612
 					<nz-form-control [nzSpan]="18" nzErrorTip="请输入护士工号!">
612
 						<input nz-input (ngModelChange)="numberChange($event,2)" formControlName="nurseJobNumber" placeholder="请输入护士工号" nzSize="default" />
613
 						<input nz-input (ngModelChange)="numberChange($event,2)" formControlName="nurseJobNumber" placeholder="请输入护士工号" nzSize="default" />
@@ -617,8 +618,8 @@
617
 					<nz-form-control [nzSpan]="18" nzErrorTip="请输入护士姓名!">
618
 					<nz-form-control [nzSpan]="18" nzErrorTip="请输入护士姓名!">
618
 						<input nz-input disabled formControlName="nurseName" placeholder="请输入护士姓名" nzSize="default" />
619
 						<input nz-input disabled formControlName="nurseName" placeholder="请输入护士姓名" nzSize="default" />
619
 					</nz-form-control>
620
 					</nz-form-control>
620
-				</nz-form-item> -->
621
-				<nz-form-item>
621
+				</nz-form-item>
622
+				<nz-form-item *ngIf="!ifFixType">
622
 				  <nz-form-label nzRequired [nzSpan]="8" nzFor="fixative">固定液类型</nz-form-label>
623
 				  <nz-form-label nzRequired [nzSpan]="8" nzFor="fixative">固定液类型</nz-form-label>
623
 				  <nz-form-control [nzSpan]="16" nzErrorTip="请选择固定液类型!">
624
 				  <nz-form-control [nzSpan]="16" nzErrorTip="请选择固定液类型!">
624
 				    <nz-input-group>
625
 				    <nz-input-group>
@@ -704,7 +705,7 @@
704
 					<div class="form-title font-weight-500">标本:</div>
705
 					<div class="form-title font-weight-500">标本:</div>
705
 					<div class="form-title specimen-list">
706
 					<div class="form-title specimen-list">
706
 						<div *ngFor="let item of specimenList" class="specimen-item-class" (click)="specimenView(item)">
707
 						<div *ngFor="let item of specimenList" class="specimen-item-class" (click)="specimenView(item)">
707
-							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.organ?item.organ.name:''}}{{item.specimenName}}({{item.specimenCode}})
708
+							<span *ngIf="item.partSource && item.partSource.value!=1">{{item.partSource?item.partSource.name:''}}</span>{{item.specimenName}}({{item.specimenCode}})
708
 						</div>
709
 						</div>
709
 					</div>
710
 					</div>
710
 				</div>
711
 				</div>
@@ -721,11 +722,13 @@
721
 							</nz-step>
722
 							</nz-step>
722
 							<ng-template #tpl>
723
 							<ng-template #tpl>
723
 								<div *ngIf="index==pathologyLogs.length-1" class="step-size">
724
 								<div *ngIf="index==pathologyLogs.length-1" class="step-size">
724
-									<div style="color: #49B856;">{{item.operationType?item.operationType.name:''}}  {{item.handoverUserDto?item.handoverUserDto.name:''}}</div>
725
+									<div style="color: #49B856;" *ngIf="item.doctorDTO"> {{item.operationType?item.operationType.name:''}} {{item.doctorDTO?item.doctorDTO.name:''}} {{item.nurseDTO?item.nurseDTO.name:''}} </div>
726
+									<div style="color: #49B856;" *ngIf="!item.doctorDTO">{{item.operationType?item.operationType.name:''}}  {{item.handoverUserDto?item.handoverUserDto.name:''}}</div>
725
 									<div style="color:#333;">{{item.createTime|date:'yyyy-MM-dd HH:mm:ss'}} {{item.operationUserDto?item.operationUserDto.name:''}}</div>
727
 									<div style="color:#333;">{{item.createTime|date:'yyyy-MM-dd HH:mm:ss'}} {{item.operationUserDto?item.operationUserDto.name:''}}</div>
726
 								</div>
728
 								</div>
727
 								<div *ngIf="index!=pathologyLogs.length-1" class="step-size">
729
 								<div *ngIf="index!=pathologyLogs.length-1" class="step-size">
728
-									<div>{{item.operationType?item.operationType.name:''}}  {{item.handoverUserDto?item.handoverUserDto.name:''}}</div>
730
+									<div *ngIf="item.doctorDTO">{{item.operationType?item.operationType.name:''}}  {{item.doctorDTO?item.doctorDTO.name:''}} {{item.nurseDTO?item.nurseDTO.name:''}}</div>
731
+									<div *ngIf="!item.doctorDTO">{{item.operationType?item.operationType.name:''}}  {{item.handoverUserDto?item.handoverUserDto.name:''}}</div>
729
 									<div>{{item.createTime|date:'yyyy-MM-dd HH:mm:ss'}} {{item.operationUserDto?item.operationUserDto.name:''}}</div>
732
 									<div>{{item.createTime|date:'yyyy-MM-dd HH:mm:ss'}} {{item.operationUserDto?item.operationUserDto.name:''}}</div>
730
 								</div>
733
 								</div>
731
 							</ng-template>
734
 							</ng-template>

+ 1 - 1
src/app/views/specimen-room-view/specimen-room-view.component.less

@@ -603,7 +603,7 @@
603
 	    .content {
603
 	    .content {
604
 	      width: 100%;
604
 	      width: 100%;
605
 	      // height: auto;
605
 	      // height: auto;
606
-	      padding: 19px 14px 0 14px;
606
+	      padding: 15px 0px 0 0px;
607
 	      // max-height: 500px;
607
 	      // max-height: 500px;
608
 	      // overflow-y: auto;
608
 	      // overflow-y: auto;
609
 				.ant-select{
609
 				.ant-select{

+ 113 - 32
src/app/views/specimen-room-view/specimen-room-view.component.ts

@@ -181,6 +181,7 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
181
 	
181
 	
182
 	// 标本条码搜索
182
 	// 标本条码搜索
183
 	codeDataSpecimenList:any = null;
183
 	codeDataSpecimenList:any = null;
184
+	fixType:any = false
184
 	searchSpecimen(e){
185
 	searchSpecimen(e){
185
 		if(!this.barCode){
186
 		if(!this.barCode){
186
 			return
187
 			return
@@ -198,11 +199,20 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
198
 			this.isSpinning = false
199
 			this.isSpinning = false
199
 			if(res.status==200){
200
 			if(res.status==200){
200
 				this.codeData = res.data[0]
201
 				this.codeData = res.data[0]
201
-				let item = this.codeData.pathologySpecimenDTOList.find(i=>i.specimenCode == e)
202
+				this.codeDataSpecimenList = this.codeData.pathologySpecimenDTOList
203
+				// this.codeDataSpecimenList = this.codeData.pathologySpecimenDTOList.filter(i=>!i.fixationTime)
204
+				let item = null
205
+				let str = null
206
+				if(e.indexOf(':')!=-1){
207
+					str = e.split(':')
208
+					item = this.codeData.pathologySpecimenDTOList.find(i=>i.specimenCode == str[1])
209
+				}else{
210
+					item = this.codeData.pathologySpecimenDTOList.find(i=>i.specimenCode == e)
211
+				}
202
 				if(!item.fixationTime && this.codeData.pathologyFormType==0){
212
 				if(!item.fixationTime && this.codeData.pathologyFormType==0){
203
 					if(this.codeData.status.value==2 || this.codeData.status.value==3 ||
213
 					if(this.codeData.status.value==2 || this.codeData.status.value==3 ||
204
 						this.codeData.status.value==4){
214
 						this.codeData.status.value==4){
205
-							this.codeDataSpecimenList = this.codeData.pathologySpecimenDTOList.filter(i=>!i.fixationTime)
215
+							// this.fixType = false
206
 							if(this.codeData.pathologyInspectDTOS){
216
 							if(this.codeData.pathologyInspectDTOS){
207
 								this.project = this.codeData.pathologyInspectDTOS.map(i=>{
217
 								this.project = this.codeData.pathologyInspectDTOS.map(i=>{
208
 									return i.inspectProject.name
218
 									return i.inspectProject.name
@@ -216,7 +226,28 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
216
 					this.fixationError = null
226
 					this.fixationError = null
217
 					this.searchMsg = null
227
 					this.searchMsg = null
218
 				}else if(item.fixationTime && this.codeData.pathologyFormType==0){
228
 				}else if(item.fixationTime && this.codeData.pathologyFormType==0){
219
-					this.viewDetail(this.codeData,'4')
229
+					if(item.storageTime){
230
+						this.viewDetail(this.codeData,'4')
231
+					}else{
232
+						if(this.codeData.pathologyInspectDTOS){
233
+							this.project = this.codeData.pathologyInspectDTOS.map(i=>{
234
+								return i.inspectProject.name
235
+							})
236
+							this.project = this.project.join('、')
237
+						}
238
+						this.getFixationNum(this.codeData.id)
239
+					}
240
+					// if(this.codeData.status.value==2 || this.codeData.status.value==3 || this.codeData.status.value==4){
241
+					// 	if(this.codeData.pathologyInspectDTOS){
242
+					// 		this.project = this.codeData.pathologyInspectDTOS.map(i=>{
243
+					// 			return i.inspectProject.name
244
+					// 		})
245
+					// 		this.project = this.project.join('、')
246
+					// 	}
247
+					// 	this.getFixationNum(this.codeData.id)
248
+					// }else{
249
+					// 	this.viewDetail(this.codeData,'4')
250
+					// }
220
 					this.barCode = null
251
 					this.barCode = null
221
 					this.fixationError = null
252
 					this.fixationError = null
222
 					this.searchMsg = null
253
 					this.searchMsg = null
@@ -260,33 +291,63 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
260
 	}
291
 	}
261
 	fixationTimeSelect:any;
292
 	fixationTimeSelect:any;
262
 	fixationTimeChange(result){
293
 	fixationTimeChange(result){
263
-		this.fixationTimeSelect = format(result, 'HH:mm');
294
+		if(result){
295
+			this.fixationTimeSelect = format(result, 'HH:mm');
296
+		}else{
297
+			this.fixationTimeSelect = null
298
+		}
264
 		console.log(this.fixationData + ' ' + this.fixationTimeSelect)
299
 		console.log(this.fixationData + ' ' + this.fixationTimeSelect)
265
 	}
300
 	}
266
 
301
 
267
 	// 确定接受固定标本
302
 	// 确定接受固定标本
268
 	startDate:any;
303
 	startDate:any;
304
+	ifFixType:any = false;
269
 	submitFixationForm(){
305
 	submitFixationForm(){
306
+		let item = this.codeDataSpecimenList.filter(i=>!i.fixationTime)
307
+		console.log(1111,item)
270
 		this.validateVerificationForm = this.fb.group({
308
 		this.validateVerificationForm = this.fb.group({
271
 		  fixationTimes: [null, [Validators.required]],
309
 		  fixationTimes: [null, [Validators.required]],
272
 		  fixationDate: [null, [Validators.required]],
310
 		  fixationDate: [null, [Validators.required]],
273
 			jobNumber: [null, [Validators.required]],
311
 			jobNumber: [null, [Validators.required]],
274
 			name:[null, [Validators.required]],
312
 			name:[null, [Validators.required]],
275
-			// nurseJobNumber: [null, [Validators.required]],
276
-			// nurseName:[null, [Validators.required]],
313
+			nurseJobNumber: [null, [Validators.required]],
314
+			nurseName:[null, [Validators.required]],
277
 			fixative:[null, [Validators.required]],
315
 			fixative:[null, [Validators.required]],
278
 		});
316
 		});
279
 		let date = new Date();
317
 		let date = new Date();
280
 		let inVitroDate = format(date, "yyyy-MM-dd")
318
 		let inVitroDate = format(date, "yyyy-MM-dd")
281
-		this.validateVerificationForm.controls.fixationDate.setValue(inVitroDate);
282
-		this.validateVerificationForm.controls.fixationTimes.setValue(date);
283
-		this.fixationData = inVitroDate;
284
-		this.fixationTimeSelect = format(date, 'HH:mm');
319
+		if(item.length==0){
320
+			this.ifFixType = true
321
+			this.validateVerificationForm.removeControl('fixationTimes')
322
+			this.validateVerificationForm.removeControl('fixationDate')
323
+			this.validateVerificationForm.removeControl('fixative')
324
+		}else{
325
+			this.ifFixType = false
326
+			this.validateVerificationForm.addControl(
327
+				'fixationTimes',
328
+				new FormControl(null, Validators.required)
329
+			);
330
+			this.validateVerificationForm.addControl(
331
+				'fixationDate',
332
+				new FormControl(null, Validators.required)
333
+			);
334
+			this.validateVerificationForm.addControl(
335
+				'fixative',
336
+				new FormControl(null, Validators.required)
337
+			);
338
+			this.validateVerificationForm.controls.fixationDate.setValue(inVitroDate);
339
+			// this.validateVerificationForm.controls.fixationTimes.setValue(date);
340
+			this.fixationData = inVitroDate;
341
+			// this.fixationTimeSelect = format(date, 'HH:mm');
342
+		}
343
+
285
 		this.btnLoading = true
344
 		this.btnLoading = true
286
 		this.mainService.getDictionary("list", "fixing_liquid_type").subscribe((res) => {
345
 		this.mainService.getDictionary("list", "fixing_liquid_type").subscribe((res) => {
287
 			this.fixativeData = res
346
 			this.fixativeData = res
288
-			let item = this.fixativeData.find(i=>i.value==1)
289
-			this.validateVerificationForm.controls.fixative.setValue(item.id);
347
+			if(!this.ifFixType){
348
+				let item = this.fixativeData.find(i=>i.value==1)
349
+				this.validateVerificationForm.controls.fixative.setValue(item.id);
350
+			}
290
 			this.btnLoading = false
351
 			this.btnLoading = false
291
 			this.verificationMoadl = true
352
 			this.verificationMoadl = true
292
 		});
353
 		});
@@ -515,12 +576,12 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
515
 
576
 
516
 	// 输入工号查询姓名
577
 	// 输入工号查询姓名
517
 	handoverUserId:any = null; //医生工号
578
 	handoverUserId:any = null; //医生工号
518
-	handoverNurseUserId:any = null; //护士工号
579
+	nurseId:any = null; //护士工号
519
 	numberChange(e,type){
580
 	numberChange(e,type){
520
-		if(e.length < 3) {
521
-			this.validateVerificationForm.controls.name.setValue('');
522
-			return
523
-		}
581
+		// if(e.length < 3) {
582
+		// 	this.validateVerificationForm.controls.name.setValue('');
583
+		// 	return
584
+		// }
524
 		let query = {
585
 		let query = {
525
 		  account: e
586
 		  account: e
526
 		};
587
 		};
@@ -533,15 +594,7 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
533
 						this.handoverUserId = data.userId
594
 						this.handoverUserId = data.userId
534
 					}else{
595
 					}else{
535
 						this.validateVerificationForm.controls.nurseName.setValue(data.userName);
596
 						this.validateVerificationForm.controls.nurseName.setValue(data.userName);
536
-						this.handoverNurseUserId = data.userId
537
-					}
538
-				}else{
539
-					if(type==1){
540
-						this.validateVerificationForm.controls.name.setValue('');
541
-						this.handoverUserId = null
542
-					}else{
543
-						this.validateVerificationForm.controls.nurseName.setValue('');
544
-						this.handoverNurseUserId = null
597
+						this.nurseId = data.userId
545
 					}
598
 					}
546
 				}
599
 				}
547
 		  });
600
 		  });
@@ -549,11 +602,21 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
549
 
602
 
550
 	// 提交固定标本接收
603
 	// 提交固定标本接收
551
 	submitVerificationForm(){
604
 	submitVerificationForm(){
605
+		if(!this.ifFixType && !this.fixationTimeSelect && this.fixationTimeSelect == null){
606
+			this.message.error('请选择固定时间')
607
+			return
608
+		}
552
 		for (const i in this.validateVerificationForm.controls) {
609
 		for (const i in this.validateVerificationForm.controls) {
553
 		  this.validateVerificationForm.controls[i].markAsDirty();
610
 		  this.validateVerificationForm.controls[i].markAsDirty();
554
 		  this.validateVerificationForm.controls[i].updateValueAndValidity();
611
 		  this.validateVerificationForm.controls[i].updateValueAndValidity();
555
 		}
612
 		}
556
 		if (this.validateVerificationForm.invalid) return;
613
 		if (this.validateVerificationForm.invalid) return;
614
+		let arr = []
615
+		// if(!this.ifFixType){
616
+		// 	arr = this.codeDataSpecimenList.filter(i=>!i.fixationTime)
617
+		// }else{
618
+		// 	arr = this.codeDataSpecimenList.filter(i=>i.fixationTime)
619
+		// }
557
 		let str = this.codeDataSpecimenList.map(i=>{
620
 		let str = this.codeDataSpecimenList.map(i=>{
558
 			return i.specimenCode
621
 			return i.specimenCode
559
 		})
622
 		})
@@ -561,13 +624,21 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
561
 			id:this.codeData.id,
624
 			id:this.codeData.id,
562
 			specimenDeptId:this.validateForm.value.specimen,
625
 			specimenDeptId:this.validateForm.value.specimen,
563
 			specimenFixingLiquid:{
626
 			specimenFixingLiquid:{
564
-				id:this.validateVerificationForm.value.fixative
627
+				id:''
565
 			},
628
 			},
566
 			specimenCodes:str.join(','),
629
 			specimenCodes:str.join(','),
567
-			fixationTime:this.fixationData + ' ' + this.fixationTimeSelect+':00',
630
+			fixationTime:'',
568
 			hosId: this.hosId || "" ,
631
 			hosId: this.hosId || "" ,
569
-			handoverUserId:this.handoverUserId
632
+			doctor:this.handoverUserId,
633
+			nurse:this.nurseId
570
 		};
634
 		};
635
+		if(!this.ifFixType){
636
+			data.specimenFixingLiquid.id = this.validateVerificationForm.value.fixative
637
+			data.fixationTime = this.fixationData + ' ' + this.fixationTimeSelect+':00'
638
+		}else{
639
+			delete data.specimenFixingLiquid.id
640
+			delete data.fixationTime
641
+		}
571
 		this.btnInfoLoading = true;
642
 		this.btnInfoLoading = true;
572
 		this.mainService
643
 		this.mainService
573
 		.simplePost("addData", "pathologyForm", data)
644
 		.simplePost("addData", "pathologyForm", data)
@@ -635,12 +706,22 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
635
 			this.tableLoading = false
706
 			this.tableLoading = false
636
 			this.specimenCode = null
707
 			this.specimenCode = null
637
 			if(res.status==200){
708
 			if(res.status==200){
638
-				let item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
639
-				if(item.fixationTime){
640
-					this.fixationError = '该标本已经固定过'
709
+				let item = null
710
+				let str = null
711
+				if(e.indexOf(':')!=-1){
712
+					str = e.split(':')
713
+					item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == str[1])
714
+				}else{
715
+					item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
716
+				}
717
+				// let item = res.data[0].pathologySpecimenDTOList.find(i=>i.specimenCode == e)
718
+				if(item.fixationTime && item.storageTime){
719
+					this.fixationError = '该标本已存放标本间'
641
 				}else{
720
 				}else{
642
 					this.getFixationNum(res.data[0].id)
721
 					this.getFixationNum(res.data[0].id)
643
 					this.codeData = res.data[0]
722
 					this.codeData = res.data[0]
723
+					// this.codeDataSpecimenList = this.codeData.pathologySpecimenDTOList.filter(i=>!i.fixationTime)
724
+					this.codeDataSpecimenList = this.codeData.pathologySpecimenDTOList
644
 					this.fixationError = null
725
 					this.fixationError = null
645
 				}
726
 				}
646
 			}else{
727
 			}else{