Browse Source

Merge branch 'master' into develop

seimin 7 months ago
parent
commit
5c3631eabb

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

@@ -126,6 +126,30 @@
126
 										<label nz-radio [nzValue]="2">二维码</label>
126
 										<label nz-radio [nzValue]="2">二维码</label>
127
 									</nz-radio-group>
127
 									</nz-radio-group>
128
 								</div>
128
 								</div>
129
+								<!--是否支持门诊新增申请单 -->
130
+								<div class="display_flex align-items_center mb8">
131
+									<nz-form-label class="label">是否支持门诊新增申请单</nz-form-label>
132
+									<nz-checkbox-group [(ngModel)]="outpatientCreatePathologyForm"></nz-checkbox-group>
133
+								</div>
134
+								<!-- 门诊病理标签样式 -->
135
+								<div class="display_flex align-items_center mb8">
136
+									<nz-form-label class="label">门诊病理标签样式</nz-form-label>
137
+									<nz-select class="formItem" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch nzAllowClear nzPlaceHolder="请选择门诊病理标签样式" [(ngModel)]="outpatientPathologyLabelSize">
138
+										<ng-container *ngFor="let option of labelData">
139
+											<nz-option [nzLabel]="option.name" [nzValue]="option.id"></nz-option>
140
+										</ng-container>
141
+									</nz-select>
142
+								</div>
143
+								
144
+								<!-- 手术病理标签样式 -->
145
+								<div class="display_flex align-items_center mb8">
146
+									<nz-form-label class="label">手术病理标签样式</nz-form-label>
147
+									<nz-select class="formItem" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch nzAllowClear nzPlaceHolder="请选择手术病理标签样式" [(ngModel)]="surgeryPathologyLabelSize">
148
+										<ng-container *ngFor="let option of labelData">
149
+											<nz-option [nzLabel]="option.name" [nzValue]="option.id"></nz-option>
150
+										</ng-container>
151
+									</nz-select>
152
+								</div>
129
 							</div>
153
 							</div>
130
 							<div class="bottom">
154
 							<div class="bottom">
131
 								<button class="login-form-button" nzType="primary" [nzLoading]="btnLoading" nz-button (click)="submitPathologyForm()">保存</button>
155
 								<button class="login-form-button" nzType="primary" [nzLoading]="btnLoading" nz-button (click)="submitPathologyForm()">保存</button>

+ 5 - 1
src/app/components/configurationCenter/configuration-specimen/configuration-specimen.component.less

@@ -325,7 +325,11 @@
325
         nz-form-label {
325
         nz-form-label {
326
           margin-left: 0px !important;
326
           margin-left: 0px !important;
327
         }
327
         }
328
-
328
+				
329
+				.ant-select{
330
+					width: 200px;
331
+				}
332
+				
329
         & > div {
333
         & > div {
330
           background: #f9fafb;
334
           background: #f9fafb;
331
           border: 1px solid #e5e9ed;
335
           border: 1px solid #e5e9ed;

+ 25 - 0
src/app/components/configurationCenter/configuration-specimen/configuration-specimen.component.ts

@@ -31,6 +31,12 @@ export class ConfigurationSpecimenComponent implements OnInit {
31
 	  {label:'是否开启',value: 0}
31
 	  {label:'是否开启',value: 0}
32
 	];
32
 	];
33
 	
33
 	
34
+	// 是否是否支持门诊新增申请单
35
+	outpatientCreatePathologyForm:any[] = [
36
+	  {label:'是否开启',value: 0}
37
+	];
38
+	outpatientPathologyLabelSize:any; //门诊病理标签样式
39
+	surgeryPathologyLabelSize:any //手术病理标签样式
34
 	// 门诊支持离体并固定
40
 	// 门诊支持离体并固定
35
 	outpatientInVitroFixation:any[] = [
41
 	outpatientInVitroFixation:any[] = [
36
 	  {label:'是否开启',value: 0}
42
 	  {label:'是否开启',value: 0}
@@ -109,6 +115,7 @@ export class ConfigurationSpecimenComponent implements OnInit {
109
 			this.getDeptList();
115
 			this.getDeptList();
110
 			this.getTaskType();
116
 			this.getTaskType();
111
 		}else{
117
 		}else{
118
+			this.getLabelDic()
112
 			this.getTaskTypesId()
119
 			this.getTaskTypesId()
113
 		}
120
 		}
114
 	}
121
 	}
@@ -178,8 +185,15 @@ export class ConfigurationSpecimenComponent implements OnInit {
178
 		  taskType: this.taskTypeData.id,
185
 		  taskType: this.taskTypeData.id,
179
 		  hosId: this.hosId,
186
 		  hosId: this.hosId,
180
 		  autoCreate: this.autoCreate[0].checked ? 1 : 0,
187
 		  autoCreate: this.autoCreate[0].checked ? 1 : 0,
188
+			outpatientCreatePathologyForm: this.outpatientCreatePathologyForm[0].checked ? 1 : 0,
181
 			outpatientInVitroFixation: this.outpatientInVitroFixation[0].checked ? 1 : 0,
189
 			outpatientInVitroFixation: this.outpatientInVitroFixation[0].checked ? 1 : 0,
182
 			pathologyBarCode : this.pathologyBarCode,
190
 			pathologyBarCode : this.pathologyBarCode,
191
+			outpatientPathologyLabelSize:{
192
+				id:this.outpatientPathologyLabelSize
193
+			},
194
+			surgeryPathologyLabelSize:{
195
+				id:this.surgeryPathologyLabelSize
196
+			}, 
183
 		};
197
 		};
184
 		this.btnLoading = true;
198
 		this.btnLoading = true;
185
 		this.mainService
199
 		this.mainService
@@ -228,6 +242,14 @@ export class ConfigurationSpecimenComponent implements OnInit {
228
       });
242
       });
229
   }
243
   }
230
 	
244
 	
245
+	// 获取标本字典
246
+	labelData:any = [];
247
+	getLabelDic(){
248
+		this.mainService.getDictionary("list", "pathology_label_size").subscribe((data) => {
249
+			this.labelData = data
250
+		});
251
+	}
252
+	
231
 	// 获取任务类型(病理标本)
253
 	// 获取任务类型(病理标本)
232
 	taskTypeData:any;
254
 	taskTypeData:any;
233
 	getTaskTypesId() {
255
 	getTaskTypesId() {
@@ -301,8 +323,11 @@ export class ConfigurationSpecimenComponent implements OnInit {
301
           this.configs = result.list[0] || {};
323
           this.configs = result.list[0] || {};
302
 					// 病理标本
324
 					// 病理标本
303
 					this.autoCreate[0].checked = this.configs.autoCreate == 1;
325
 					this.autoCreate[0].checked = this.configs.autoCreate == 1;
326
+					this.outpatientCreatePathologyForm[0].checked = this.configs.outpatientCreatePathologyForm == 1;
304
 					this.outpatientInVitroFixation[0].checked = this.configs.outpatientInVitroFixation == 1;
327
 					this.outpatientInVitroFixation[0].checked = this.configs.outpatientInVitroFixation == 1;
305
 					this.pathologyBarCode = this.configs.pathologyBarCode;
328
 					this.pathologyBarCode = this.configs.pathologyBarCode;
329
+					this.outpatientPathologyLabelSize = this.configs.outpatientPathologyLabelSize.id; //门诊病理标签样式
330
+					this.surgeryPathologyLabelSize = this.configs.surgeryPathologyLabelSize.id //手术病理标签样式
306
 					// 检查标本
331
 					// 检查标本
307
           this.deptNotAlert[0].checked = this.configs.deptNotAlert == 1;
332
           this.deptNotAlert[0].checked = this.configs.deptNotAlert == 1;
308
           this.arriveScanCode[0].checked = this.configs.arriveScanCode == 1;
333
           this.arriveScanCode[0].checked = this.configs.arriveScanCode == 1;

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

@@ -391,7 +391,7 @@
391
 			</div> -->
391
 			</div> -->
392
 			
392
 			
393
 			<!-- 12.11新版打印样式 -->
393
 			<!-- 12.11新版打印样式 -->
394
-			<div style="font-size: 12px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>0">
394
+			<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==1 && printData && printData.specimenList && printData.specimenList.length>0">
395
 				<div *ngFor="let data of printData.specimenList; let index=index;">
395
 				<div *ngFor="let data of printData.specimenList; let index=index;">
396
 				 <div>
396
 				 <div>
397
 					 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 70px;padding: 0 1px;">
397
 					 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 70px;padding: 0 1px;">
@@ -440,5 +440,32 @@
440
 				 <div style="height: 26px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
440
 				 <div style="height: 26px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
441
 				</div>
441
 				</div>
442
 			</div>
442
 			</div>
443
+			
444
+			<!-- 小尺寸 20*30-->
445
+			<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==2 && printData && printData.specimenList && printData.specimenList.length>0">
446
+				<div *ngFor="let data of printData.specimenList; let index=index;">
447
+					<div style="width: 100%;display: flex;margin-top: 5px;">
448
+					 <div style="width: 40%;">
449
+						 <div style="display: flex;justify-content: center;">
450
+							 <div style="width: 50px;height: 50px;">
451
+							 		<img style="max-width: 100%;max-height: 100%;position: relative;left: -2px;" [src]="data.barCode" alt="">
452
+							 </div>
453
+							 <div style="width: 12px;">申请单</div>
454
+						 </div>
455
+						 <div style="text-align: left;">{{printData.applyCode}}</div>
456
+					 </div>
457
+					 <div style="width: 2%;"></div>
458
+					 <div style="width: 58%;">
459
+						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.residenceNo}}</div>
460
+						<div style="margin-top:9px;">患者: {{data.patientName}}</div>
461
+						<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
462
+					 </div>
463
+					</div>
464
+					<div style="margin-top:10px;">
465
+						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
466
+					</div>
467
+				 <div style="height: 15px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
468
+				</div>
469
+			</div>
443
 		</div>
470
 		</div>
444
   </div>
471
   </div>

+ 5 - 1
src/app/share/pathology-add/pathology-add.component.ts

@@ -82,6 +82,7 @@ export class PathologyAddComponent implements OnInit {
82
 	
82
 	
83
 	// 获取标本配置
83
 	// 获取标本配置
84
 	pathologyBarCode:any = 1;
84
 	pathologyBarCode:any = 1;
85
+	outpatientPathologyLabelSizeType:any = 1;
85
 	getPathologySys(){
86
 	getPathologySys(){
86
 		let postData = {
87
 		let postData = {
87
 			  idx: 0,
88
 			  idx: 0,
@@ -97,7 +98,10 @@ export class PathologyAddComponent implements OnInit {
97
 		  .subscribe((result) => {
98
 		  .subscribe((result) => {
98
 		    if (result.status == 200) {
99
 		    if (result.status == 200) {
99
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
100
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
100
-		    }
101
+					if(result.list[0].outpatientPathologyLabelSize){
102
+						this.outpatientPathologyLabelSizeType = result.list[0].outpatientPathologyLabelSize.value;
103
+					}
104
+				}
101
 		  });
105
 		  });
102
 	}
106
 	}
103
 	
107
 	

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

@@ -215,7 +215,7 @@
215
 				</div>
215
 				</div>
216
 			</div> -->
216
 			</div> -->
217
 			<!-- 12.11新版打印样式 -->
217
 			<!-- 12.11新版打印样式 -->
218
-			<div style="font-size: 12px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>0">
218
+			<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==1 && printData && printData.specimenList && printData.specimenList.length>0">
219
 				<div *ngFor="let data of printData.specimenList; let index=index;">
219
 				<div *ngFor="let data of printData.specimenList; let index=index;">
220
 				 <div>
220
 				 <div>
221
 					 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 70px;padding: 0 1px;">
221
 					 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 70px;padding: 0 1px;">
@@ -264,6 +264,33 @@
264
 				 <div style="height: 26px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
264
 				 <div style="height: 26px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
265
 				</div>
265
 				</div>
266
 			</div>
266
 			</div>
267
+			
268
+			<!-- 小尺寸 20*30-->
269
+			<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==2 && printData && printData.specimenList && printData.specimenList.length>0">
270
+				<div *ngFor="let data of printData.specimenList; let index=index;">
271
+					<div style="width: 100%;display: flex;margin-top: 5px;">
272
+					 <div style="width: 40%;">
273
+						 <div style="display: flex;justify-content: center;">
274
+							 <div style="width: 50px;height: 50px;">
275
+							 		<img style="max-width: 100%;max-height: 100%;position: relative;left: -2px;" [src]="data.barCode" alt="">
276
+							 </div>
277
+							 <div style="width: 12px;">申请单</div>
278
+						 </div>
279
+						 <div style="text-align: left;">{{printData.applyCode}}</div>
280
+					 </div>
281
+					 <div style="width: 2%;"></div>
282
+					 <div style="width: 58%;">
283
+						<div style="display: flex;flex-wrap: nowrap;">住院号: {{data.residenceNo}}</div>
284
+						<div style="margin-top:9px;">患者: {{data.patientName}}</div>
285
+						<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
286
+					 </div>
287
+					</div>
288
+					<div style="margin-top:10px;">
289
+						<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
290
+					</div>
291
+				 <div style="height: 15px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
292
+				</div>
293
+			</div>
267
 		</div>
294
 		</div>
268
   </div>
295
   </div>
269
 	
296
 	

+ 5 - 1
src/app/share/pathology-detail/pathology-detail.component.ts

@@ -151,6 +151,7 @@ export class PathologyDetailComponent implements OnInit {
151
 	
151
 	
152
 	// 获取标本配置
152
 	// 获取标本配置
153
 	pathologyBarCode:any = 1;
153
 	pathologyBarCode:any = 1;
154
+	outpatientPathologyLabelSizeType:any = 1;
154
 	getPathologySys(){
155
 	getPathologySys(){
155
 		let postData = {
156
 		let postData = {
156
 			  idx: 0,
157
 			  idx: 0,
@@ -166,7 +167,10 @@ export class PathologyDetailComponent implements OnInit {
166
 		  .subscribe((result) => {
167
 		  .subscribe((result) => {
167
 		    if (result.status == 200) {
168
 		    if (result.status == 200) {
168
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
169
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
169
-		    }
170
+					if(result.list[0].outpatientPathologyLabelSize){
171
+						this.outpatientPathologyLabelSizeType = result.list[0].outpatientPathologyLabelSize.value;
172
+					}
173
+				}
170
 		  });
174
 		  });
171
 	}
175
 	}
172
 	
176
 	

+ 96 - 103
src/app/views/pathology-sample/pathology-sample.component.html

@@ -39,19 +39,27 @@
39
 				<div>{{adviceList.patientName}} {{adviceList.patientGender?adviceList.patientGender.name:'-'}} ({{adviceList.patientAge||'-'}}岁)</div>
39
 				<div>{{adviceList.patientName}} {{adviceList.patientGender?adviceList.patientGender.name:'-'}} ({{adviceList.patientAge||'-'}}岁)</div>
40
 				<div class="border">{{adviceList.patientNo}}</div>
40
 				<div class="border">{{adviceList.patientNo}}</div>
41
 			</div>
41
 			</div>
42
-			<div class="content" *ngFor="let item of adviceList.pathologyAdviceDTOS;let index=index;" (click)="listClick(item,index)" [ngClass]="{'activeLeftClass': index == leftIndex}">
43
-				<div class="list list-df">
44
-					<div class="code">{{item.adviceId}}</div>
45
-					<div class="form-title">{{item.adviceType.name}}</div>
42
+			<div class="left-content" [ngClass]="{'noAddAppClass': !ifAddapplication, 'beAddAppClass': ifAddapplication}">
43
+				<div class="content" *ngFor="let item of adviceList.pathologyAdviceDTOS;let index=index;" (click)="listClick(item,index)" [ngClass]="{'activeLeftClass': index == leftIndex}">
44
+					<div class="list list-df">
45
+						<div class="code">{{item.adviceId ? item.adviceId : '无'}}</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>
50
+					</div>
51
+					<div class="list">项目:{{item.inspectType?item.inspectType.name:'无'}}</div>
52
+					<div class="list">部位:{{item.inspectPart ? item.inspectPart : '无'}}</div>
53
+					<div class="list">诊断:{{item.diagnosis ? item.diagnosis : '无'}}</div>
54
+					<div class="list">开单时间:{{item.orderTime | date:'yyyy-MM-dd HH:mm:ss'}}</div>
55
+					<!-- <div class="list">状态:{{item.orderStatusName}}</div> -->
46
 				</div>
56
 				</div>
47
-				<div class="list">项目:{{item.inspectType.name}}</div>
48
-				<div class="list">部位:{{item.inspectPart}}</div>
49
-				<div class="list">诊断:{{item.diagnosis}}</div>
50
-				<div class="list">开单时间:{{item.orderTime | date:'yyyy-MM-dd HH:mm:ss'}}</div>
51
-				<!-- <div class="list">状态:{{item.orderStatusName}}</div> -->
57
+			</div>
58
+			<div *ngIf="ifAddapplication && adviceList" class="center-box">
59
+				<button nz-button nzType="primary" class="btn txtC mr8" (click)="addPathology(0)">新增病理申请单</button>
52
 			</div>
60
 			</div>
53
 		</div>
61
 		</div>
54
-		<div class="center" *ngIf="detailsData && viewType!='add'">
62
+		<div class="center" *ngIf="adviceList && adviceList.pathologyAdviceDTOS.length>0 && detailsData && viewType!='add'">
55
 			<div class="pathology-content" *ngIf="viewType=='edit'">
63
 			<div class="pathology-content" *ngIf="viewType=='edit'">
56
 				<div class="title">病理检查申请单</div>
64
 				<div class="title">病理检查申请单</div>
57
 				<div class="content">
65
 				<div class="content">
@@ -95,7 +103,7 @@
95
 								</nz-form-control>
103
 								</nz-form-control>
96
 							</nz-form-item>
104
 							</nz-form-item>
97
 							
105
 							
98
-							<nz-form-item class="form-item">
106
+							<nz-form-item class="form-item" *ngIf="syncFlag==0">
99
 								<nz-form-label nzRequired nzFor="project" [nzSm]="4" [nzXs]="24">检验项目</nz-form-label>
107
 								<nz-form-label nzRequired nzFor="project" [nzSm]="4" [nzXs]="24">检验项目</nz-form-label>
100
 								<nz-form-control nzErrorTip="请选择检验项目!" [nzSm]="20" [nzXs]="24">
108
 								<nz-form-control nzErrorTip="请选择检验项目!" [nzSm]="20" [nzXs]="24">
101
 									<nz-input-group>
109
 									<nz-input-group>
@@ -108,6 +116,10 @@
108
 								</nz-form-control>
116
 								</nz-form-control>
109
 							</nz-form-item>
117
 							</nz-form-item>
110
 							
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
+							
111
 							<div class="df-sb">
123
 							<div class="df-sb">
112
 								<nz-form-item class="form-item">
124
 								<nz-form-item class="form-item">
113
 									<nz-form-label nzRequired nzFor="specimenGenre">标本类型</nz-form-label>
125
 									<nz-form-label nzRequired nzFor="specimenGenre">标本类型</nz-form-label>
@@ -231,7 +243,7 @@
231
 				</div>
243
 				</div>
232
 			</div>
244
 			</div>
233
 		
245
 		
234
-		<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')">
235
 			<div class="step-title">病理闭环</div>
247
 			<div class="step-title">病理闭环</div>
236
 			<nz-steps [nzCurrent]="stepLength" nzDirection="vertical" nzSize="small">
248
 			<nz-steps [nzCurrent]="stepLength" nzDirection="vertical" nzSize="small">
237
 				<ng-container *ngFor="let item of pathologyLogs; let index = index">
249
 				<ng-container *ngFor="let item of pathologyLogs; let index = index">
@@ -253,7 +265,7 @@
253
 			</nz-steps>
265
 			</nz-steps>
254
 		</div>
266
 		</div>
255
 		<div class="pathology-content-btn" *ngIf="viewType=='add'">
267
 		<div class="pathology-content-btn" *ngIf="viewType=='add'">
256
-			<button class="btn" nz-button nzType="primary" (click)="addPathology()" [nzLoading]="addLoading">新增病理申请单</button>
268
+			<button class="btn" nz-button nzType="primary" (click)="addPathology(1)" [nzLoading]="addLoading">新增病理申请单</button>
257
 		</div>
269
 		</div>
258
   </div>
270
   </div>
259
 </div>
271
 </div>
@@ -318,6 +330,9 @@
318
 <app-prompt-modal *ngIf="promptModalShow" [content]="promptContent" [success]="ifSuccess" [show]="promptModalShow"
330
 <app-prompt-modal *ngIf="promptModalShow" [content]="promptContent" [success]="ifSuccess" [show]="promptModalShow"
319
   [info]="promptInfo" (closeModel)="closeModel()"></app-prompt-modal>
331
   [info]="promptInfo" (closeModel)="closeModel()"></app-prompt-modal>
320
 
332
 
333
+<!-- 病理申请单 -->
334
+<!-- <app-pathology-add *ngIf="pathologyModal" [surgeryId]="surgeryDataId" [patientId]="patientId" [detailId]="detailId" [applicationType]="applicationType" (pathologyCancel)="pathologyCancel($event)"></app-pathology-add> -->
335
+
321
 <!-- 选择标本 -->
336
 <!-- 选择标本 -->
322
 <div class="save add display_flex align-items_center justify-content_flex-center" *ngIf="specimenModal">
337
 <div class="save add display_flex align-items_center justify-content_flex-center" *ngIf="specimenModal">
323
 	<div class="modalBody">
338
 	<div class="modalBody">
@@ -402,6 +417,10 @@
402
 <!-- 删除模态框 -->
417
 <!-- 删除模态框 -->
403
 <app-dialog-delete [delModal]="delModal" (hideDelModalEvent)="hideDelModal()" [btnLoading]="btnLoading"
418
 <app-dialog-delete [delModal]="delModal" (hideDelModalEvent)="hideDelModal()" [btnLoading]="btnLoading"
404
 	(confirmDelEvent)="confirmDel()" content="您确认要删除标本吗?"></app-dialog-delete>
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>
405
 		
424
 		
406
 <!-- 查看标本 -->
425
 <!-- 查看标本 -->
407
 <div class="look">
426
 <div class="look">
@@ -516,107 +535,81 @@
516
 <!-- 打印 -->
535
 <!-- 打印 -->
517
 <div id="report" style="display: none;">
536
 <div id="report" style="display: none;">
518
 	<div class="monad">
537
 	<div class="monad">
519
-		<div *ngIf="printData && printData.specimenList && printData.specimenList.length" style="border: 1px solid #AAAAAA;
520
-			border-radius: 5px;font-size: 12px;">
521
-			 <div *ngIf="pathologyBarCode==1" style="display: flex;align-items: center;flex-wrap: nowrap;height: 80px;padding: 0 1px;">
522
-				 <div style="width: 60%;height: 70px;text-align: center;">
523
-					 <img style="max-width: 90%;height: 80%;" [src]="printData.applyBarCode" alt="">
524
-					 <div>{{printData.applyCode}}</div>
525
-				 </div>
526
-				 <div style="width: 40%;height: 100%;text-align: center;display: flex;align-items: center;">
527
-					 <img style="max-width: 100%;max-height: 100%;" [src]="tool.logoUrl" alt="">
528
-				 </div>
529
-			 </div>
530
-			 <div *ngIf="pathologyBarCode==2" style="display: flex;align-items: center;flex-wrap: nowrap;height: 80px;padding: 0 1px;">
531
-				 <div style="width: 40%;height: 70px;text-align: center;">
532
-					 <img style="max-width: 90%;height: 80%;" [src]="printData.applyBarCode" alt="">
533
-					 <div>{{printData.applyCode}}</div>
534
-				 </div>
535
-				 <div style="width: 60%;height: 100%;text-align: center;display: flex;align-items: center;position: relative;top: -6px;">
536
-					 <img style="max-width: 100%;max-height: 100%;" [src]="tool.logoUrl" alt="">
537
-				 </div>
538
-			 </div>
539
-			
540
-			<div style="display: flex;border-bottom: 1px solid #AAAAAA;">
541
-				<div style="width:20%;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">患者姓名</div>
542
-				<div style="width:50%;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">{{printData.patientName}}</div>
543
-				<div style="width:14%;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">性别</div>
544
-				<div style="width:16%;padding:1px;border-top: 1px solid #aaa;">{{printData.specimenList[0].patientGender}}</div>
545
-			</div>
546
-			<div style="display: flex;border-bottom: 1px solid #AAAAAA;">
547
-				<div style="width:20%;border-right: 1px solid #AAAAAA;padding:1px;">门诊号</div>
548
-				<div style="width:50%;border-right: 1px solid #AAAAAA;padding:1px;">{{printData.residenceNo?printData.residenceNo:printData.patientNo}}</div>
549
-				<div style="width:14%;border-right: 1px solid #AAAAAA;padding:1px;">年龄</div>
550
-				<div style="width:16%;padding:1px;"> {{printData.patientAge}}岁</div>
551
-			</div>
552
-			<div style="display: flex;border-bottom: 1px solid #AAAAAA;">
553
-				<div style="width:20%;border-right: 1px solid #AAAAAA;padding:1px;">科室 </div>
554
-				<div style="width:50%;border-right: 1px solid #AAAAAA;
555
-				padding:1px;overflow: hidden;white-space: nowrap">{{printData.patientDept}}</div>
556
-				<div style="width:14%;border-right: 1px solid #AAAAAA;padding:1px;">床号</div>
557
-				<div style="width:16%;padding:1px;">{{printData.patientBedNum}}床</div>
558
-			</div>
559
-			<div style="display: flex;border-bottom: 1px solid #AAAAAA;">
560
-				<div style="width:20%;border-right: 1px solid #AAAAAA;padding:1px;">部位 </div>
561
-				<div style="width:50%;border-right: 1px solid #AAAAAA;
562
-				padding:1px;overflow: hidden;white-space: nowrap">{{printData.takePart}}</div>
563
-				<div style="width:14%;border-right: 1px solid #AAAAAA;padding:1px;">标本数</div>
564
-				<div style="width:16%;padding:1px;">{{printData.specimenNum}}</div>
565
-			</div>
566
-			<div style="display: flex;">
567
-				<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">日期</div>
568
-				<div style="width:80%;box-sizing: border-box;padding:1px;border-right: 1px solid #fff;">{{printData.specimenList[0].inVitroTime|date:'yyyy-MM-dd'}}</div>
569
-			</div>
570
-		</div>
571
-		
572
-		<div style="height: 70px;" *ngIf="printData && printData.specimenList && printData.specimenList.length==1"></div>
573
-		<div style="height: 20px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1"></div>
574
-		<div style="font-size: 12px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>0">
538
+		<!-- 大尺寸 80*60-->
539
+		<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==1 && printData && printData.specimenList && printData.specimenList.length>0">
575
 			<div *ngFor="let data of printData.specimenList; let index=index;">
540
 			<div *ngFor="let data of printData.specimenList; let index=index;">
576
-			 <div style="height: 50px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1"></div>
577
-			 <div style="border: 1px solid #AAAAAA;border-radius: 5px;">
578
-				 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 80px;padding: 0 1px;">
541
+			 <div>
542
+				 <div style="display: flex;align-items: center;flex-wrap: nowrap;height: 70px;padding: 0 1px;">
579
 					 <div style="width: 60%;height: 70px;text-align: center;">
543
 					 <div style="width: 60%;height: 70px;text-align: center;">
580
 						 <img style="max-width: 90%;height: 80%;" [src]="data.barCode" alt="">
544
 						 <img style="max-width: 90%;height: 80%;" [src]="data.barCode" alt="">
581
-						 <div>{{data.specimenCode}}</div>
545
+						 <div>标本号:{{data.specimenCode}}</div>
582
 					 </div>
546
 					 </div>
583
 					 <div style="width: 40%;height: 100%;text-align: center;display: flex;align-items: center;">
547
 					 <div style="width: 40%;height: 100%;text-align: center;display: flex;align-items: center;">
584
 						 <img style="max-width: 100%;max-height: 100%;" [src]="tool.logoUrl" alt="">
548
 						 <img style="max-width: 100%;max-height: 100%;" [src]="tool.logoUrl" alt="">
585
 					 </div>
549
 					 </div>
586
 				 </div>
550
 				 </div>
587
-				 <div style="display: flex;border-bottom: 1px solid #AAAAAA;">
588
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">患者姓名</div>
589
-					<div style="width:50%;box-sizing: border-box;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">{{data.patientName}}</div>
590
-					<div style="width:14%;box-sizing: border-box;border-right: 1px solid #AAAAAA;border-top: 1px solid #aaa;padding:1px;">性别</div>
591
-					<div style="width:16%;box-sizing: border-box;padding:1px;border-top: 1px solid #aaa;">{{data.patientGender}}</div>
592
-				 </div>
593
-				 <div style="display: flex;border-bottom: 1px solid #AAAAAA;">
594
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">门诊号</div>
595
-					<div style="width:50%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">{{data.residenceNo?data.residenceNo:data.patientNo}}</div>
596
-					<div style="width:14%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">年龄</div>
597
-					<div style="width:16%;box-sizing: border-box;padding:1px;"> {{data.patientAge}}岁</div>
598
-				 </div>
599
-				 <div style="display: flex;border-bottom: 1px solid #AAAAAA;">
600
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">科室 </div>
601
-					<div style="width:50%;box-sizing: border-box;border-right: 1px solid #AAAAAA;
602
-					padding:1px;overflow: hidden;white-space: nowrap">{{data.patientDept}}</div>
603
-					<div style="width:14%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">床号</div>
604
-					<div style="width:16%;box-sizing: border-box;padding:1px;">{{data.patientBedNum}}床</div>
605
-				 </div>
606
-				 <div style="display: flex;border-bottom: 1px solid #AAAAAA;">
607
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">标本名称</div>
608
-					<div style="width:80%;box-sizing: border-box;padding:1px;border-right: 1px solid #fff;
609
-					padding:1px;overflow: hidden;white-space: nowrap">({{index+1}}/{{printData.specimenList.length}}){{data.partSource?data.partSource:''}}{{data.organ}}{{data.specimenName}}</div>
551
+				 <div style="display: flex;justify-content: space-between;">
552
+					 <div style="width: 70%;margin-right:15px;">
553
+					 	<div style="display: flex; justify-content: space-between; margin-top:10px;">
554
+							<div>患者: {{data.patientName}}</div>
555
+							<div>性别: {{data.patientGender}}</div>
556
+						</div>
557
+						<div style="margin-top:10px;">
558
+							<div>门诊号: {{data.patientNo}}</div>
559
+						</div>
560
+						<div style="margin-top:10px;">
561
+							<div>科室: {{data.patientDept}}</div>
562
+						</div>
563
+						<div style="margin-top:10px;">
564
+							<div>日期: {{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
565
+						</div>
566
+						<div style="margin-top:10px;">
567
+							<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
568
+						</div>
569
+					 </div>
570
+					 <div style="width: 30%;">
571
+						<div style="margin-top:10px;">年龄: {{data.patientAge}}岁</div>
572
+						<div style="margin-top:10px;">床号: {{data.patientBedNum}}床</div>
573
+						<div style="margin-top:10px;" *ngIf="operation == 'addPrint'">标本数: {{index+1}}/{{printData.specimenNum}}</div>
574
+						<div style="margin-top:10px;" *ngIf="operation != 'addPrint'">标本数: {{index+1}}/{{printData.specimenList.length}}</div>
575
+						<div style="width: 100%;height: 60px;display: flex;margin-top: 5px;">
576
+						 <div style="height: 50px;width: 50px;">
577
+							 <img style="max-width: 100%;max-height: 100%;position: relative;left: -2px;" [src]="printData.applyBarCode" alt="">
578
+							 <div style="position: relative;left: -18px;">{{printData.applyCode}}</div>
579
+						 </div>
580
+						 <div style="width: 12px;position: relative; top: 2px;">申请单</div>
581
+						</div>
582
+					 </div>
610
 				 </div>
583
 				 </div>
611
-				 <div style="display: flex;border-bottom: 1px solid #AAAAAA;">
612
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">申请单号</div>
613
-					<div style="width:80%;box-sizing: border-box;padding:1px;border-right: 1px solid #fff;">{{data.applyCode }}</div>
584
+			 </div>
585
+			 <div style="height: 26px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
586
+			</div>
587
+		</div>
588
+		
589
+		<!-- 小尺寸 20*30-->
590
+		<div style="font-size: 12px;" *ngIf="outpatientPathologyLabelSizeType==2 && printData && printData.specimenList && printData.specimenList.length>0">
591
+			<div *ngFor="let data of printData.specimenList; let index=index;">
592
+				<div style="width: 100%;display: flex;margin-top: 5px;">
593
+				 <div style="width: 40%;">
594
+					 <div style="display: flex;justify-content: center;">
595
+						 <div style="width: 50px;height: 50px;">
596
+						 		<img style="max-width: 100%;max-height: 100%;position: relative;left: -2px;" [src]="data.barCode" alt="">
597
+						 </div>
598
+						 <div style="width: 12px;">申请单</div>
599
+					 </div>
600
+					 <div style="text-align: left;">{{printData.applyCode}}</div>
614
 				 </div>
601
 				 </div>
615
-				 <div style="display: flex;">
616
-					<div style="width:20%;box-sizing: border-box;border-right: 1px solid #AAAAAA;padding:1px;">日期</div>
617
-					<div style="width:80%;box-sizing: border-box;padding:1px;border-right: 1px solid #fff;">{{data.inVitroTime|date:'yyyy-MM-dd'}}</div>
602
+				 <div style="width: 2%;"></div>
603
+				 <div style="width: 58%;">
604
+					<div style="display: flex;flex-wrap: nowrap;">门诊号: {{data.patientNo}}</div>
605
+					<div style="margin-top:9px;">患者: {{data.patientName}}</div>
606
+					<div style="margin-top:9px;margin-left: 20px;">性别: {{data.patientGender}}</div>
618
 				 </div>
607
 				 </div>
619
-			 </div>
608
+				</div>
609
+				<div style="margin-top:10px;">
610
+					<div style="width: 100%;height: 32px;overflow: hidden;">部位: {{data.partSource}}{{data.organ}}{{data.specimenName}}</div>
611
+				</div>
612
+			 <div style="height: 15px;" *ngIf="printData && printData.specimenList && printData.specimenList.length>1 && index+1 < printData.specimenList.length"></div>
620
 			</div>
613
 			</div>
621
 		</div>
614
 		</div>
622
 	</div>
615
 	</div>

+ 43 - 19
src/app/views/pathology-sample/pathology-sample.component.less

@@ -413,8 +413,17 @@
413
 			width: 20%;
413
 			width: 20%;
414
 			box-shadow: 0px 3px 6px 1px rgba(0,0,0,0.16);
414
 			box-shadow: 0px 3px 6px 1px rgba(0,0,0,0.16);
415
 			z-index: 999;
415
 			z-index: 999;
416
-			overflow-y: auto;
417
 			font-weight: 500;
416
 			font-weight: 500;
417
+			position: relative;
418
+			.center-box{
419
+				text-align: center;
420
+				position: absolute;
421
+				bottom: 0;
422
+				width: 100%;
423
+				background: #fff;
424
+				padding: 10px 0;
425
+				border-top: 1px solid #ccc;
426
+			}
418
 			.top{
427
 			.top{
419
 				padding: 10px 40px;
428
 				padding: 10px 40px;
420
 				text-align: center;
429
 				text-align: center;
@@ -423,29 +432,44 @@
423
 					border-bottom: 1px solid #ccc;
432
 					border-bottom: 1px solid #ccc;
424
 				}
433
 				}
425
 			}
434
 			}
426
-			.content{
427
-				padding: 8px 8px 0 8px;
428
-				font-size: 14px;
429
-				border: 1px solid #CCCCCC;
430
-				margin-bottom: 10px;
431
-				cursor: pointer;
432
-				.list{
435
+			.noAddAppClass{
436
+				height: calc(100vh - 116px);
437
+			}
438
+			.beAddAppClass{
439
+				height: calc(100vh - 169px);
440
+			}
441
+			.left-content{
442
+				overflow-y: auto;
443
+				.content{
444
+					padding: 8px 8px 0 8px;
445
+					font-size: 14px;
446
+					border: 1px solid #CCCCCC;
433
 					margin-bottom: 10px;
447
 					margin-bottom: 10px;
434
-					overflow: hidden;
435
-					text-overflow: ellipsis;
436
-					white-space: nowrap;
437
-					.code{
438
-						margin-right: 10px;
448
+					cursor: pointer;
449
+					.list{
450
+						margin-bottom: 10px;
451
+						overflow: hidden;
452
+						text-overflow: ellipsis;
453
+						white-space: nowrap;
454
+						position: relative;
455
+						.del-class{
456
+							position: absolute;
457
+							right: 0;
458
+							color: #49b856;
459
+						}
460
+						.code{
461
+							margin-right: 10px;
462
+						}
463
+					}
464
+					.list-df{
465
+						display: flex;
439
 					}
466
 					}
440
 				}
467
 				}
441
-				.list-df{
442
-					display: flex;
468
+				.activeLeftClass{
469
+					background: #F2FAF2;
470
+					border: 1px solid #64BD7B;
443
 				}
471
 				}
444
 			}
472
 			}
445
-			.activeLeftClass{
446
-				background: #F2FAF2;
447
-				border: 1px solid #64BD7B;
448
-			}
449
 		}
473
 		}
450
 		.center {
474
 		.center {
451
 			width: 60%;
475
 			width: 60%;

+ 101 - 24
src/app/views/pathology-sample/pathology-sample.component.ts

@@ -123,22 +123,30 @@ export class PathologySampleComponent implements OnInit {
123
 	// 新增申请单
123
 	// 新增申请单
124
 	applicationType:any;
124
 	applicationType:any;
125
 	addLoading:any = false;
125
 	addLoading:any = false;
126
-	addPathology(){
126
+	addPathology(type){
127
 		let data = {
127
 		let data = {
128
 			idx: 0,
128
 			idx: 0,
129
 			sum: 9999,
129
 			sum: 9999,
130
-			pathologyAdviceId: this.adviceItem.id || "",
130
+			pathologyAdviceId: "",
131
 			patientId: this.patientId || "",
131
 			patientId: this.patientId || "",
132
 			hosId: this.hosId || "" ,
132
 			hosId: this.hosId || "" ,
133
 			operationType: 'outpatientPathologyForm',
133
 			operationType: 'outpatientPathologyForm',
134
 			pathologyFormType: 0
134
 			pathologyFormType: 0
135
 		};
135
 		};
136
+		if(type==0){
137
+			delete data.pathologyAdviceId
138
+		}else{
139
+			data.pathologyAdviceId = this.adviceItem.id
140
+		}
136
 		this.addLoading = true
141
 		this.addLoading = true
137
 		this.mainService
142
 		this.mainService
138
 		.simplePost("addData", "pathologyForm", data)
143
 		.simplePost("addData", "pathologyForm", data)
139
 		.subscribe((data) => {
144
 		.subscribe((data) => {
140
 			this.addLoading = false
145
 			this.addLoading = false
141
 			this.viewType = 'edit';
146
 			this.viewType = 'edit';
147
+			if(this.leftIndex == null){
148
+				this.leftIndex = 0
149
+			}
142
 			this.fetchDataList(data.data.id);
150
 			this.fetchDataList(data.data.id);
143
 			this.searchSpecimen(this.adviceList.patientNo,'add');
151
 			this.searchSpecimen(this.adviceList.patientNo,'add');
144
 		});
152
 		});
@@ -156,6 +164,8 @@ export class PathologySampleComponent implements OnInit {
156
 	// 获取配置
164
 	// 获取配置
157
 	pathologyBarCode:any = 1;
165
 	pathologyBarCode:any = 1;
158
 	ifImmobilization:any = false;
166
 	ifImmobilization:any = false;
167
+	ifAddapplication:any = false;
168
+	outpatientPathologyLabelSizeType:any = 1; //1:大标本打印 2:小标本打印
159
 	getConfig() {
169
 	getConfig() {
160
 		let postData = {
170
 		let postData = {
161
 			idx: 0,
171
 			idx: 0,
@@ -174,11 +184,56 @@ export class PathologySampleComponent implements OnInit {
174
 					}else{
184
 					}else{
175
 						this.ifImmobilization = false
185
 						this.ifImmobilization = false
176
 					}
186
 					}
187
+					if(result.list[0].outpatientCreatePathologyForm && result.list[0].outpatientCreatePathologyForm==1){
188
+						this.ifAddapplication = true
189
+					}else{
190
+						this.ifAddapplication = false
191
+					}
192
+					if(result.list[0].outpatientPathologyLabelSize){
193
+						this.outpatientPathologyLabelSizeType = result.list[0].outpatientPathologyLabelSize.value;
194
+					}
177
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
195
 					this.pathologyBarCode = result.list[0].pathologyBarCode?result.list[0].pathologyBarCode:1;
178
 	      }
196
 	      }
179
 	    });
197
 	    });
180
 	}
198
 	}
181
 	
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
+	
182
 	// 病理点击
237
 	// 病理点击
183
 	leftIndex:any = null;
238
 	leftIndex:any = null;
184
 	adviceItem:any;
239
 	adviceItem:any;
@@ -200,8 +255,7 @@ export class PathologySampleComponent implements OnInit {
200
 	// 标本条码搜索
255
 	// 标本条码搜索
201
 	adviceList:any = null;
256
 	adviceList:any = null;
202
 	searchSpecimen(e,type){
257
 	searchSpecimen(e,type){
203
-		console.log(7777,this.route.snapshot.params.param)
204
-		if(type!='add'){
258
+		if(type!='add' && type!='load'){
205
 			if(!this.barCode){
259
 			if(!this.barCode){
206
 				return
260
 				return
207
 			}
261
 			}
@@ -224,21 +278,22 @@ export class PathologySampleComponent implements OnInit {
224
 				this.barCode = null
278
 				this.barCode = null
225
 				this.searchMsg = null
279
 				this.searchMsg = null
226
 				this.isShowMove = true
280
 				this.isShowMove = true
227
-				if(type=='search'){
281
+				if(type=='search' || type=='load'){
228
 					this.leftIndex = null
282
 					this.leftIndex = null
229
 					this.detailsData = null
283
 					this.detailsData = null
230
 					this.statusValue = 1
284
 					this.statusValue = 1
231
 					this.pathologyLogs = []
285
 					this.pathologyLogs = []
286
+					this.adviceList = null
232
 					this.stepLength = 0
287
 					this.stepLength = 0
233
 					this.viewType = 'no';
288
 					this.viewType = 'no';
234
 				}
289
 				}
235
 				if(res.list.length>0){
290
 				if(res.list.length>0){
236
 					this.adviceList = res.list[0]
291
 					this.adviceList = res.list[0]
292
+					this.patientId = this.adviceList.patientId
237
 				}else{
293
 				}else{
238
-					this.adviceList = []
294
+					this.adviceList = null
239
 					this.viewType = 'no';
295
 					this.viewType = 'no';
240
 				}
296
 				}
241
-				this.patientId = this.adviceList.patientId
242
 			}else{
297
 			}else{
243
 				this.barCode = null
298
 				this.barCode = null
244
 				this.searchMsg = res.msg
299
 				this.searchMsg = res.msg
@@ -364,6 +419,7 @@ export class PathologySampleComponent implements OnInit {
364
 					}
419
 					}
365
 					that.printLoading = false;
420
 					that.printLoading = false;
366
 					that.printData = arr;
421
 					that.printData = arr;
422
+					this.searchSpecimen(this.adviceList.patientNo,'load');
367
 					setTimeout(() => {
423
 					setTimeout(() => {
368
 					  const printContent = document.getElementById("report");
424
 					  const printContent = document.getElementById("report");
369
 					  const WindowPrt = window.open("", "", "width=100,height=1000");
425
 					  const WindowPrt = window.open("", "", "width=100,height=1000");
@@ -397,12 +453,14 @@ export class PathologySampleComponent implements OnInit {
397
 	}
453
 	}
398
 	
454
 	
399
 	medicalRecordsLength:any = 0;
455
 	medicalRecordsLength:any = 0;
456
+	syncFlag: any = 0;
400
 	fetchDataList(id){
457
 	fetchDataList(id){
401
 		this.isSpinning = true;
458
 		this.isSpinning = true;
402
 		this.mainService.getFetchData("data", "pathologyForm", id)
459
 		this.mainService.getFetchData("data", "pathologyForm", id)
403
 		.subscribe((data) => {
460
 		.subscribe((data) => {
404
 			this.isSpinning = false;
461
 			this.isSpinning = false;
405
 			this.detailsData = data.data;
462
 			this.detailsData = data.data;
463
+			this.syncFlag = data.data.syncFlag;
406
 			this.surgeryId = data.data.surgeryId;
464
 			this.surgeryId = data.data.surgeryId;
407
 			if(this.detailsData.status && this.detailsData.status.value==5){
465
 			if(this.detailsData.status && this.detailsData.status.value==5){
408
 				this.viewType = 'view'
466
 				this.viewType = 'view'
@@ -439,10 +497,19 @@ export class PathologySampleComponent implements OnInit {
439
 			}else{
497
 			}else{
440
 				let str = null
498
 				let str = null
441
 				if(this.detailsData.pathologyInspectDTOS){
499
 				if(this.detailsData.pathologyInspectDTOS){
442
-					str = this.detailsData.pathologyInspectDTOS[0].inspectProject.id
443
-					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
+					}
444
 				}else{
507
 				}else{
445
-					this.validateForm.controls.project.setValue(str);
508
+					if(this.syncFlag==1){
509
+						this.project = ''
510
+					}else{
511
+						this.validateForm.controls.project.setValue(str);
512
+					}
446
 				}
513
 				}
447
 			}
514
 			}
448
 
515
 
@@ -476,7 +543,7 @@ export class PathologySampleComponent implements OnInit {
476
 	
543
 	
477
 	// 获取检验项目
544
 	// 获取检验项目
478
 	getProDicData(){
545
 	getProDicData(){
479
-		this.mainService.getDictionary("list", "outpatient_pathology_inspect_type").subscribe((res) => {
546
+		this.mainService.getDictionary("list", "pathology_inspect_type").subscribe((res) => {
480
 			this.projectData = res
547
 			this.projectData = res
481
 		});
548
 		});
482
 	}
549
 	}
@@ -616,6 +683,7 @@ export class PathologySampleComponent implements OnInit {
616
 	coopId:any;
683
 	coopId:any;
617
 	specimenDel(e,item,index){
684
 	specimenDel(e,item,index){
618
 		this.delModal = true
685
 		this.delModal = true
686
+		this.itemDataType = 2
619
 		this.coopId = item.id
687
 		this.coopId = item.id
620
 	}
688
 	}
621
 	
689
 	
@@ -959,7 +1027,9 @@ export class PathologySampleComponent implements OnInit {
959
 	
1027
 	
960
 	specimenModal:any = false;
1028
 	specimenModal:any = false;
961
 	hideSpecimenModal(){
1029
 	hideSpecimenModal(){
962
-		this.getSampleData('')
1030
+		if(this.itemDataType==2){
1031
+			this.getSampleData('')
1032
+		}
963
 		this.specimenModal = false
1033
 		this.specimenModal = false
964
 	}
1034
 	}
965
 	
1035
 	
@@ -1003,6 +1073,8 @@ export class PathologySampleComponent implements OnInit {
1003
 						jobNumber: [null, [Validators.required]],
1073
 						jobNumber: [null, [Validators.required]],
1004
 						name:[null, [Validators.required]],
1074
 						name:[null, [Validators.required]],
1005
 					});
1075
 					});
1076
+					let item = this.fixativeData.find(i=>i.value==1)
1077
+					this.validatePrintForm.controls.fixative.setValue(item.id);
1006
 					this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1078
 					this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1007
 					this.validatePrintForm.controls.fixationTimes.setValue(date);
1079
 					this.validatePrintForm.controls.fixationTimes.setValue(date);
1008
 					this.fixationData = inVitroDate;
1080
 					this.fixationData = inVitroDate;
@@ -1019,10 +1091,10 @@ export class PathologySampleComponent implements OnInit {
1019
 				this.validatePrintForm.controls.inVitroTimes.setValue(date);
1091
 				this.validatePrintForm.controls.inVitroTimes.setValue(date);
1020
 				this.inVitroData = inVitroDate;
1092
 				this.inVitroData = inVitroDate;
1021
 				this.inVitroTimeSelect = format(date, 'HH:mm');
1093
 				this.inVitroTimeSelect = format(date, 'HH:mm');
1022
-				if(this.detailsData.surgeryDoctorDTO){
1023
-					this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1024
-					this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1025
-				}
1094
+				// if(this.detailsData.surgeryDoctorDTO){
1095
+				// 	this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1096
+				// 	this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1097
+				// }
1026
 			}else{
1098
 			}else{
1027
 				this.message.info('无新标本需要打印')
1099
 				this.message.info('无新标本需要打印')
1028
 			}
1100
 			}
@@ -1070,6 +1142,8 @@ export class PathologySampleComponent implements OnInit {
1070
 							jobNumber: [null, [Validators.required]],
1142
 							jobNumber: [null, [Validators.required]],
1071
 							name:[null, [Validators.required]],
1143
 							name:[null, [Validators.required]],
1072
 						});
1144
 						});
1145
+						let item = this.fixativeData.find(i=>i.value==1)
1146
+						this.validatePrintForm.controls.fixative.setValue(item.id);
1073
 						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1147
 						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1074
 						this.validatePrintForm.controls.fixationTimes.setValue(date);
1148
 						this.validatePrintForm.controls.fixationTimes.setValue(date);
1075
 						this.fixationData = inVitroDate;
1149
 						this.fixationData = inVitroDate;
@@ -1086,10 +1160,10 @@ export class PathologySampleComponent implements OnInit {
1086
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1160
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1087
 					this.inVitroData = inVitroDate;
1161
 					this.inVitroData = inVitroDate;
1088
 					this.inVitroTimeSelect = format(date, 'HH:mm');
1162
 					this.inVitroTimeSelect = format(date, 'HH:mm');
1089
-					if(this.detailsData.surgeryDoctorDTO){
1090
-						this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1091
-						this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1092
-					}
1163
+					// if(this.detailsData.surgeryDoctorDTO){
1164
+					// 	this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1165
+					// 	this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1166
+					// }
1093
 				}else{
1167
 				}else{
1094
 					let data: any = {
1168
 					let data: any = {
1095
 						pathologyForm:{
1169
 						pathologyForm:{
@@ -1144,6 +1218,8 @@ export class PathologySampleComponent implements OnInit {
1144
 							jobNumber: [null, [Validators.required]],
1218
 							jobNumber: [null, [Validators.required]],
1145
 							name:[null, [Validators.required]],
1219
 							name:[null, [Validators.required]],
1146
 						});
1220
 						});
1221
+						let item = this.fixativeData.find(i=>i.value==1)
1222
+						this.validatePrintForm.controls.fixative.setValue(item.id);
1147
 						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1223
 						this.validatePrintForm.controls.fixationDate.setValue(inVitroDate);
1148
 						this.validatePrintForm.controls.fixationTimes.setValue(date);
1224
 						this.validatePrintForm.controls.fixationTimes.setValue(date);
1149
 						this.fixationData = inVitroDate;
1225
 						this.fixationData = inVitroDate;
@@ -1160,10 +1236,10 @@ export class PathologySampleComponent implements OnInit {
1160
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1236
 					this.validatePrintForm.controls.inVitroTimes.setValue(date);
1161
 					this.inVitroData = inVitroDate;
1237
 					this.inVitroData = inVitroDate;
1162
 					this.inVitroTimeSelect = format(date, 'HH:mm');
1238
 					this.inVitroTimeSelect = format(date, 'HH:mm');
1163
-					if(this.detailsData.surgeryDoctorDTO){
1164
-						this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1165
-						this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1166
-					}
1239
+					// if(this.detailsData.surgeryDoctorDTO){
1240
+					// 	this.validatePrintForm.controls.jobNumber.setValue(this.detailsData.surgeryDoctorDTO.account);
1241
+					// 	this.validatePrintForm.controls.name.setValue(this.detailsData.surgeryDoctorDTO.name);
1242
+					// }
1167
 				})
1243
 				})
1168
 				return
1244
 				return
1169
 			}
1245
 			}
@@ -1206,6 +1282,7 @@ export class PathologySampleComponent implements OnInit {
1206
 					}
1282
 					}
1207
 					this.btnLoading = false;
1283
 					this.btnLoading = false;
1208
 					this.printData = arr;
1284
 					this.printData = arr;
1285
+					this.searchSpecimen(this.adviceList.patientNo,'load');
1209
 					setTimeout(() => {
1286
 					setTimeout(() => {
1210
 						const printContent = document.getElementById("report");
1287
 						const printContent = document.getElementById("report");
1211
 						const WindowPrt = window.open("", "", "width=100,height=1000");
1288
 						const WindowPrt = window.open("", "", "width=100,height=1000");

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

@@ -477,21 +477,21 @@ export class SpecimenRoomViewComponent implements OnInit, OnDestroy {
477
 		};
477
 		};
478
 		this.mainService.changeHospital(postData).subscribe((result) => {
478
 		this.mainService.changeHospital(postData).subscribe((result) => {
479
 		  if (result.status == 200) {
479
 		  if (result.status == 200) {
480
-		    let dataObj = {
481
-		      user: {
482
-		        dept: {
483
-		          id: this.validateForm.value.specimen,
484
-		        },
485
-		        id: JSON.parse(localStorage.getItem("user")).user.id,
486
-		      },
487
-		    };
488
-		    this.mainService
489
-		      .coopData("updData", "user", dataObj)
490
-		      .subscribe((data) => {
491
-		        if (data.status == 200) {
492
-		          this.getCurrentUserNow();
493
-		        }
494
-		      });
480
+				this.getCurrentUserNow();
481
+		    // let dataObj = {
482
+		    //   user: {
483
+		    //     dept: {
484
+		    //       id: this.validateForm.value.specimen,
485
+		    //     },
486
+		    //     id: JSON.parse(localStorage.getItem("user")).user.id,
487
+		    //   },
488
+		    // };
489
+		    // this.mainService
490
+		    //   .coopData("updData", "user", dataObj)
491
+		    //   .subscribe((data) => {
492
+		    //     if (data.status == 200) {
493
+		    //     }
494
+		    //   });
495
 		  }
495
 		  }
496
 		});
496
 		});
497
 	}
497
 	}