瀏覽代碼

门诊病理优化

maotao 4 月之前
父節點
當前提交
c77c5b6cc9

+ 1 - 1
src/app/share/pathology-add/pathology-add.component.html

@@ -456,7 +456,7 @@
456 456
 					 </div>
457 457
 					 <div style="width: 2%;"></div>
458 458
 					 <div style="width: 58%;">
459
-						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.patientNo}}</div>
459
+						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.residenceNo}}</div>
460 460
 						<div style="margin-top:9px;">患者: {{data.patientName}}</div>
461 461
 						<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
462 462
 					 </div>

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

@@ -280,7 +280,7 @@
280 280
 					 </div>
281 281
 					 <div style="width: 2%;"></div>
282 282
 					 <div style="width: 58%;">
283
-						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.patientNo}}</div>
283
+						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.residenceNo}}</div>
284 284
 						<div style="margin-top:9px;">患者: {{data.patientName}}</div>
285 285
 						<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
286 286
 					 </div>

+ 17 - 6
src/app/views/pathology-sample/pathology-sample.component.html

@@ -43,7 +43,10 @@
43 43
 				<div class="content" *ngFor="let item of adviceList.pathologyAdviceDTOS;let index=index;" (click)="listClick(item,index)" [ngClass]="{'activeLeftClass': index == leftIndex}">
44 44
 					<div class="list list-df">
45 45
 						<div class="code">{{item.adviceId ? item.adviceId : '无'}}</div>
46
-						<div class="form-title">{{item.adviceType ? item.adviceType.name : '无'}}</div>
46
+						<div class="form-title">{{item.adviceType ? item.adviceType.name : ''}}</div>
47
+						<div class="del-class">
48
+							<i (click)="delItem($event,item)" class="icon_transport transport-lajitong specimen-icon"></i>
49
+						</div>
47 50
 					</div>
48 51
 					<div class="list">项目:{{item.inspectType?item.inspectType.name:'无'}}</div>
49 52
 					<div class="list">部位:{{item.inspectPart ? item.inspectPart : '无'}}</div>
@@ -56,7 +59,7 @@
56 59
 				<button nz-button nzType="primary" class="btn txtC mr8" (click)="addPathology(0)">新增病理申请单</button>
57 60
 			</div>
58 61
 		</div>
59
-		<div class="center" *ngIf="detailsData && viewType!='add'">
62
+		<div class="center" *ngIf="adviceList && adviceList.pathologyAdviceDTOS.length>0 && detailsData && viewType!='add'">
60 63
 			<div class="pathology-content" *ngIf="viewType=='edit'">
61 64
 				<div class="title">病理检查申请单</div>
62 65
 				<div class="content">
@@ -100,7 +103,7 @@
100 103
 								</nz-form-control>
101 104
 							</nz-form-item>
102 105
 							
103
-							<nz-form-item class="form-item">
106
+							<nz-form-item class="form-item" *ngIf="syncFlag==0">
104 107
 								<nz-form-label nzRequired nzFor="project" [nzSm]="4" [nzXs]="24">检验项目</nz-form-label>
105 108
 								<nz-form-control nzErrorTip="请选择检验项目!" [nzSm]="20" [nzXs]="24">
106 109
 									<nz-input-group>
@@ -113,6 +116,10 @@
113 116
 								</nz-form-control>
114 117
 							</nz-form-item>
115 118
 							
119
+							<div class="form-list" *ngIf="syncFlag==1">
120
+								<div class="form-title"><span class="font-weight-500">检验项目:</span>{{project||'无'}}</div>
121
+							</div>
122
+							
116 123
 							<div class="df-sb">
117 124
 								<nz-form-item class="form-item">
118 125
 									<nz-form-label nzRequired nzFor="specimenGenre">标本类型</nz-form-label>
@@ -236,7 +243,7 @@
236 243
 				</div>
237 244
 			</div>
238 245
 		
239
-		<div class="content-item-right" *ngIf="pathologyLogs.length && (viewType=='view' || viewType=='edit')">
246
+		<div class="content-item-right" *ngIf="adviceList && adviceList.pathologyAdviceDTOS.length>0 && pathologyLogs.length && (viewType=='view' || viewType=='edit')">
240 247
 			<div class="step-title">病理闭环</div>
241 248
 			<nz-steps [nzCurrent]="stepLength" nzDirection="vertical" nzSize="small">
242 249
 				<ng-container *ngFor="let item of pathologyLogs; let index = index">
@@ -410,6 +417,10 @@
410 417
 <!-- 删除模态框 -->
411 418
 <app-dialog-delete [delModal]="delModal" (hideDelModalEvent)="hideDelModal()" [btnLoading]="btnLoading"
412 419
 	(confirmDelEvent)="confirmDel()" content="您确认要删除标本吗?"></app-dialog-delete>
420
+
421
+<!-- 删除医嘱 -->
422
+<app-dialog-delete [delModal]="delAdviceModal" (hideDelModalEvent)="hideAdviceModal()" [btnLoading]="btnLoading"
423
+	(confirmDelEvent)="confirmAdvice()" content="您确认要删除医嘱吗?"></app-dialog-delete>
413 424
 		
414 425
 <!-- 查看标本 -->
415 426
 <div class="look">
@@ -544,7 +555,7 @@
544 555
 							<div>性别: {{data.patientGender}}</div>
545 556
 						</div>
546 557
 						<div style="margin-top:10px;">
547
-							<div>住院号: {{data.patientNo}}</div>
558
+							<div>门诊号: {{data.patientNo}}</div>
548 559
 						</div>
549 560
 						<div style="margin-top:10px;">
550 561
 							<div>科室: {{data.patientDept}}</div>
@@ -590,7 +601,7 @@
590 601
 				 </div>
591 602
 				 <div style="width: 2%;"></div>
592 603
 				 <div style="width: 58%;">
593
-					<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.patientNo}}</div>
604
+					<div style="display: flex;flex-wrap: nowrap;">门诊号: {{data.patientNo}}</div>
594 605
 					<div style="margin-top:9px;">患者: {{data.patientName}}</div>
595 606
 					<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
596 607
 				 </div>

+ 6 - 0
src/app/views/pathology-sample/pathology-sample.component.less

@@ -451,6 +451,12 @@
451 451
 						overflow: hidden;
452 452
 						text-overflow: ellipsis;
453 453
 						white-space: nowrap;
454
+						position: relative;
455
+						.del-class{
456
+							position: absolute;
457
+							right: 0;
458
+							color: #49b856;
459
+						}
454 460
 						.code{
455 461
 							margin-right: 10px;
456 462
 						}

+ 66 - 10
src/app/views/pathology-sample/pathology-sample.component.ts

@@ -144,6 +144,9 @@ export class PathologySampleComponent implements OnInit {
144 144
 		.subscribe((data) => {
145 145
 			this.addLoading = false
146 146
 			this.viewType = 'edit';
147
+			if(this.leftIndex == null){
148
+				this.leftIndex = 0
149
+			}
147 150
 			this.fetchDataList(data.data.id);
148 151
 			this.searchSpecimen(this.adviceList.patientNo,'add');
149 152
 		});
@@ -194,6 +197,43 @@ export class PathologySampleComponent implements OnInit {
194 197
 	    });
195 198
 	}
196 199
 	
200
+	// 病理医嘱删除
201
+	itemData:any;
202
+	delAdviceModal:any = false;
203
+	itemDataType:any = 2;
204
+	delItem(e,data){
205
+		e.stopPropagation();
206
+		this.itemDataType = 1
207
+		this.itemData = data
208
+		this.delAdviceModal = true
209
+	}
210
+	
211
+	// 确定删除
212
+	confirmAdvice(){
213
+		this.btnLoading = true;
214
+		this.mainService
215
+		  .coopTypeConfig(
216
+		    "rmvData",
217
+		    "pathologyAdvice",
218
+		     [this.itemData.id]
219
+		  )
220
+		  .subscribe((data) => {
221
+		    this.btnLoading = false;
222
+		    this.delAdviceModal = false;
223
+				this.searchSpecimen(this.adviceList.patientNo,'load');
224
+				// this.fetchDataList(this.itemData.pathologyFormId);
225
+		    if (data.status==200) {
226
+		      this.showSpecimenModal("删除", true, "");
227
+		    } else {
228
+		      this.showSpecimenModal("删除", false, data.data[0].msg);
229
+		    }
230
+		  });
231
+	}
232
+	// 确定删除
233
+	hideAdviceModal() {
234
+	  this.delAdviceModal = false;
235
+	}
236
+	
197 237
 	// 病理点击
198 238
 	leftIndex:any = null;
199 239
 	adviceItem:any;
@@ -215,8 +255,7 @@ export class PathologySampleComponent implements OnInit {
215 255
 	// 标本条码搜索
216 256
 	adviceList:any = null;
217 257
 	searchSpecimen(e,type){
218
-		console.log(7777,this.route.snapshot.params.param)
219
-		if(type!='add'){
258
+		if(type!='add' && type!='load'){
220 259
 			if(!this.barCode){
221 260
 				return
222 261
 			}
@@ -239,21 +278,22 @@ export class PathologySampleComponent implements OnInit {
239 278
 				this.barCode = null
240 279
 				this.searchMsg = null
241 280
 				this.isShowMove = true
242
-				if(type=='search'){
281
+				if(type=='search' || type=='load'){
243 282
 					this.leftIndex = null
244 283
 					this.detailsData = null
245 284
 					this.statusValue = 1
246 285
 					this.pathologyLogs = []
286
+					this.adviceList = null
247 287
 					this.stepLength = 0
248 288
 					this.viewType = 'no';
249 289
 				}
250 290
 				if(res.list.length>0){
251 291
 					this.adviceList = res.list[0]
292
+					this.patientId = this.adviceList.patientId
252 293
 				}else{
253
-					this.adviceList = []
294
+					this.adviceList = null
254 295
 					this.viewType = 'no';
255 296
 				}
256
-				this.patientId = this.adviceList.patientId
257 297
 			}else{
258 298
 				this.barCode = null
259 299
 				this.searchMsg = res.msg
@@ -379,6 +419,7 @@ export class PathologySampleComponent implements OnInit {
379 419
 					}
380 420
 					that.printLoading = false;
381 421
 					that.printData = arr;
422
+					this.searchSpecimen(this.adviceList.patientNo,'load');
382 423
 					setTimeout(() => {
383 424
 					  const printContent = document.getElementById("report");
384 425
 					  const WindowPrt = window.open("", "", "width=100,height=1000");
@@ -412,12 +453,14 @@ export class PathologySampleComponent implements OnInit {
412 453
 	}
413 454
 	
414 455
 	medicalRecordsLength:any = 0;
456
+	syncFlag: any = 0;
415 457
 	fetchDataList(id){
416 458
 		this.isSpinning = true;
417 459
 		this.mainService.getFetchData("data", "pathologyForm", id)
418 460
 		.subscribe((data) => {
419 461
 			this.isSpinning = false;
420 462
 			this.detailsData = data.data;
463
+			this.syncFlag = data.data.syncFlag;
421 464
 			this.surgeryId = data.data.surgeryId;
422 465
 			if(this.detailsData.status && this.detailsData.status.value==5){
423 466
 				this.viewType = 'view'
@@ -454,10 +497,19 @@ export class PathologySampleComponent implements OnInit {
454 497
 			}else{
455 498
 				let str = null
456 499
 				if(this.detailsData.pathologyInspectDTOS){
457
-					str = this.detailsData.pathologyInspectDTOS[0].inspectProject.id
458
-					this.validateForm.controls.project.setValue(str);
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
+					}
459 507
 				}else{
460
-					this.validateForm.controls.project.setValue(str);
508
+					if(this.syncFlag==1){
509
+						this.project = ''
510
+					}else{
511
+						this.validateForm.controls.project.setValue(str);
512
+					}
461 513
 				}
462 514
 			}
463 515
 
@@ -491,7 +543,7 @@ export class PathologySampleComponent implements OnInit {
491 543
 	
492 544
 	// 获取检验项目
493 545
 	getProDicData(){
494
-		this.mainService.getDictionary("list", "outpatient_pathology_inspect_type").subscribe((res) => {
546
+		this.mainService.getDictionary("list", "pathology_inspect_type").subscribe((res) => {
495 547
 			this.projectData = res
496 548
 		});
497 549
 	}
@@ -631,6 +683,7 @@ export class PathologySampleComponent implements OnInit {
631 683
 	coopId:any;
632 684
 	specimenDel(e,item,index){
633 685
 		this.delModal = true
686
+		this.itemDataType = 2
634 687
 		this.coopId = item.id
635 688
 	}
636 689
 	
@@ -974,7 +1027,9 @@ export class PathologySampleComponent implements OnInit {
974 1027
 	
975 1028
 	specimenModal:any = false;
976 1029
 	hideSpecimenModal(){
977
-		this.getSampleData('')
1030
+		if(this.itemDataType==2){
1031
+			this.getSampleData('')
1032
+		}
978 1033
 		this.specimenModal = false
979 1034
 	}
980 1035
 	
@@ -1227,6 +1282,7 @@ export class PathologySampleComponent implements OnInit {
1227 1282
 					}
1228 1283
 					this.btnLoading = false;
1229 1284
 					this.printData = arr;
1285
+					this.searchSpecimen(this.adviceList.patientNo,'load');
1230 1286
 					setTimeout(() => {
1231 1287
 						const printContent = document.getElementById("report");
1232 1288
 						const WindowPrt = window.open("", "", "width=100,height=1000");