maotao 1 miesiąc temu
rodzic
commit
6f2f6555f0

+ 4 - 4
src/app/components/build-quick-confirm/build-quick-confirm.component.html

@@ -37,7 +37,7 @@
37 37
                       <nz-form-item nz-row>
38 38
                         <nz-form-label [nzSpan]="6" nzRequired nzFor="originOffice">起点科室</nz-form-label>
39 39
                         <nz-form-control [nzSpan]="14" nzErrorTip="请选择起点科室!">
40
-                          <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('start', buildMsg, $event)" nzPlaceHolder="请选择起点科室">
40
+                          <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzPlaceHolder="请选择起点科室">
41 41
                             <ng-container *ngFor="let option of buildMsg.start.start.list">
42 42
                               <nz-option *ngIf="!isLoading" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
43 43
                               </nz-option>
@@ -71,7 +71,7 @@
71 71
                       <nz-form-item nz-row>
72 72
                         <nz-form-label [nzSpan]="6" nzRequired nzFor="targetOffice">目标科室</nz-form-label>
73 73
                         <nz-form-control [nzSpan]="14" nzErrorTip="请选择目标科室!">
74
-                          <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('target', buildMsg, $event)" nzAllowClear nzPlaceHolder="请选择目标科室">
74
+                          <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType" nzAllowClear nzPlaceHolder="请选择目标科室">
75 75
                             <ng-container *ngFor="let option of buildMsg.end.end.list">
76 76
                               <nz-option *ngIf="!isLoading" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
77 77
                               </nz-option>
@@ -93,7 +93,7 @@
93 93
                       <nz-form-item nz-row>
94 94
                         <nz-form-label [nzSpan]="6" nzRequired nzFor="originOffice">起点科室</nz-form-label>
95 95
                         <nz-form-control [nzSpan]="14" nzErrorTip="请选择起点科室!">
96
-                          <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('start', buildMsg, $event)" nzPlaceHolder="请选择起点科室">
96
+                          <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzPlaceHolder="请选择起点科室">
97 97
                             <ng-container *ngFor="let option of buildMsg.start.start.list">
98 98
                               <nz-option *ngIf="!isLoading" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
99 99
                               </nz-option>
@@ -108,7 +108,7 @@
108 108
                       <nz-form-item nz-row>
109 109
                         <nz-form-label [nzSpan]="6" nzRequired nzFor="targetOffice">目标科室</nz-form-label>
110 110
                         <nz-form-control [nzSpan]="14" nzErrorTip="请选择目标科室!">
111
-                          <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('target', buildMsg, $event)" nzPlaceHolder="请选择目标科室">
111
+                          <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType" nzPlaceHolder="请选择目标科室">
112 112
                             <ng-container *ngFor="let option of buildMsg.end.end.list">
113 113
                               <nz-option *ngIf="!isLoading" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
114 114
                               </nz-option>

+ 16 - 0
src/app/components/build-quick-confirm/build-quick-confirm.component.ts

@@ -56,6 +56,8 @@ export class BuildQuickConfirmComponent implements OnInit {
56 56
   historyCustomRemarks = []; //历史快捷输入
57 57
   workOrderRemarkTips = ""; //备注提示
58 58
   nLoading = false;
59
+	isEndFixedType: boolean = false;
60
+	isStartFixedType: boolean = false;
59 61
   newShortcutOrder(data, type) {
60 62
     this.workOrderRemark = "";
61 63
     this.customRemarks = [];
@@ -76,6 +78,20 @@ export class BuildQuickConfirmComponent implements OnInit {
76 78
       .postCustom("nurse", "workOrder/buildTrip", postData)
77 79
       .subscribe((result) => {
78 80
         this.buildMsg = result;
81
+				if(result.end){
82
+					if(result.end.end.departmentStrategy==202){
83
+						this.isEndFixedType = true
84
+					}else{
85
+						this.isEndFixedType = false
86
+					}
87
+				}
88
+				if(result.start){
89
+					if(result.start.start.departmentStrategy==202){
90
+						this.isStartFixedType = true
91
+					}else{
92
+						this.isStartFixedType = false
93
+					}
94
+				}
79 95
         if (result.remarksSwitch == 1) {
80 96
           if (result.customRemarks === null || result.customRemarks === "") {
81 97
             this.customRemarks = [];

+ 4 - 2
src/app/share/order-detail/order-detail.component.html

@@ -1219,12 +1219,14 @@
1219 1219
                 <td>{{ item.username || "-" }}</td>
1220 1220
                 <td>{{ item.handoverUserid ? item.handoverUserid.name : "-" }}</td>
1221 1221
                 <td>
1222
-                  <button
1222
+               <!--   <button
1223 1223
                     *ngIf="item.attachments"
1224 1224
                     (click)="previewImageHandler(item.attachments[0])"
1225 1225
                   >
1226 1226
                     查看图片</button
1227
-                  ><span *ngIf="!item.attachments">无</span>
1227
+                  > -->
1228
+									<img *ngIf="item.attachments" (click)="previewImageHandler(item.attachments[0])" width="50" height="50" [src]="imgUrl + item.attachments[0].relativeFilePath" alt="">
1229
+									<span *ngIf="!item.attachments">无</span>
1228 1230
                 </td>
1229 1231
                 <td>
1230 1232
                   {{

+ 5 - 0
src/app/share/order-detail/order-detail.component.less

@@ -1,4 +1,9 @@
1 1
 @import "../../../../src/theme.less";
2
+
3
+img{
4
+	cursor: pointer;
5
+}
6
+
2 7
 :host {
3 8
   width: 100%;
4 9
   height: 100%;

+ 1 - 1
src/app/share/order-detail/order-detail.component.ts

@@ -72,7 +72,7 @@ export class OrderDetailComponent implements OnInit {
72 72
   orderInfo: any; //工单详情信息
73 73
   endDepts = ""; //工单详情目标科室
74 74
   showCoop: boolean = true; //是否展示详情页操作按钮
75
-
75
+	imgUrl:any = location.origin + '/file'; //图片路径前缀
76 76
   promptContent: string; //操作提示框提示信息
77 77
   ifSuccess: boolean; //操作成功/失败
78 78
   promptInfo: string; //操作结果提示信息

+ 4 - 4
src/app/views/fuwutai/fuwutai.component.html

@@ -1136,7 +1136,7 @@
1136 1136
                           <nz-form-item>
1137 1137
                             <nz-form-label class="label" [nzSm]="24" [nzXs]="24" nzRequired nzFor="startDept">起点科室</nz-form-label>
1138 1138
                             <nz-form-control class="control" [nzSm]="24" [nzXs]="24" nzErrorTip="请选择起点科室!">
1139
-                              <nz-select formControlName="startDept" [nzDisabled]="deptZyList.startStatus == 201 || deptZyList.startStatus == 203 || deptZyList.startStatus == 206" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchHosDepartment(checkedHos, 'start', $event)" nzAllowClear nzPlaceHolder="请选择起点科室" [(ngModel)]="startDeptZy">
1139
+                              <nz-select formControlName="startDept" [nzDisabled]="deptZyList.startStatus == 201 || deptZyList.startStatus == 203 || deptZyList.startStatus == 206" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzAllowClear nzPlaceHolder="请选择起点科室" [(ngModel)]="startDeptZy">
1140 1140
                                 <ng-container *ngFor="let option of deptZyList.startDept">
1141 1141
                                   <nz-option *ngIf="!isLoading" [nzLabel]="option.dept" [nzValue]="option.id"></nz-option>
1142 1142
                                 </ng-container>
@@ -1152,7 +1152,7 @@
1152 1152
                           <nz-form-item>
1153 1153
                             <nz-form-label class="label" [nzSm]="24" [nzXs]="24" nzRequired nzFor="endDepts">终点科室</nz-form-label>
1154 1154
                             <nz-form-control class="control" [nzSm]="24" [nzXs]="24" nzErrorTip="请选择终点科室!">
1155
-                              <nz-select formControlName="endDepts" [nzDisabled]="deptZyList.endStatus == 201 || deptZyList.endStatus == 203 || deptZyList.endStatus == 206" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchHosDepartment(checkedHos, 'end', $event)" nzAllowClear nzPlaceHolder="请选择终点科室" [(ngModel)]="endDeptZy" (ngModelChange)="endDeptZyChange()">
1155
+                              <nz-select formControlName="endDepts" [nzDisabled]="deptZyList.endStatus == 201 || deptZyList.endStatus == 203 || deptZyList.endStatus == 206" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType" nzAllowClear nzPlaceHolder="请选择终点科室" [(ngModel)]="endDeptZy" (ngModelChange)="endDeptZyChange()">
1156 1156
                                 <ng-container *ngFor="let option of deptZyList.endDept">
1157 1157
                                   <nz-option *ngIf="!isLoading" [nzLabel]="option.dept" [nzValue]="option.id"></nz-option>
1158 1158
                                 </ng-container>
@@ -1247,7 +1247,7 @@
1247 1247
                           <nz-form-item>
1248 1248
                             <nz-form-label class="label" [nzSm]="24" [nzXs]="24" nzRequired nzFor="startDeptQt">起点科室</nz-form-label>
1249 1249
                             <nz-form-control class="control" [nzSm]="24" [nzXs]="24" nzErrorTip="请选择起点科室!">
1250
-                              <nz-select formControlName="startDeptQt" [nzDisabled]="deptQtList.startStatus == 201 || deptQtList.startStatus == 203" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchHosDepartmentQt(checkedHos, 'start', $event)" nzAllowClear nzPlaceHolder="请选择起点科室" [(ngModel)]="startDeptQt">
1250
+                              <nz-select formControlName="startDeptQt" [nzDisabled]="deptQtList.startStatus == 201 || deptQtList.startStatus == 203" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzAllowClear nzPlaceHolder="请选择起点科室" [(ngModel)]="startDeptQt">
1251 1251
                                 <ng-container *ngFor="let option of deptQtList.startDept">
1252 1252
                                   <nz-option *ngIf="!isLoading" [nzLabel]="option.dept" [nzValue]="option.id"></nz-option>
1253 1253
                                 </ng-container>
@@ -1263,7 +1263,7 @@
1263 1263
                           <nz-form-item>
1264 1264
                             <nz-form-label class="label" [nzSm]="24" [nzXs]="24" nzRequired nzFor="endDeptsQt">终点科室</nz-form-label>
1265 1265
                             <nz-form-control class="control" [nzSm]="24" [nzXs]="24" nzErrorTip="请选择终点科室!">
1266
-                              <nz-select formControlName="endDeptsQt" [nzDisabled]="deptQtList.endStatus == 201 || deptQtList.endStatus == 203" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchHosDepartmentQt(checkedHos, 'end', $event)"
1266
+                              <nz-select formControlName="endDeptsQt" [nzDisabled]="deptQtList.endStatus == 201 || deptQtList.endStatus == 203" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType"
1267 1267
                                 nzAllowClear nzPlaceHolder="请选择终点科室" [(ngModel)]="endDeptQt">
1268 1268
                                 <ng-container *ngFor="let option of deptQtList.endDept">
1269 1269
                                   <nz-option *ngIf="!isLoading" [nzLabel]="option.dept" [nzValue]="option.id"></nz-option>

+ 23 - 0
src/app/views/fuwutai/fuwutai.component.ts

@@ -4535,6 +4535,8 @@ export class FuwutaiComponent implements OnInit {
4535 4535
   isTaskTypeInspect:boolean = false;//是否是患者陪检
4536 4536
   linkCheckLis:any[] = [];//检查列表
4537 4537
   tabIndex;
4538
+	isStartFixedType:boolean = false;
4539
+	isEndFixedType:boolean = false;
4538 4540
   radioChangeZy(value, index) {
4539 4541
     this.radioValueZyPre = this.radioValueZy;
4540 4542
     this.radioValueZy = value;
@@ -4570,6 +4572,17 @@ export class FuwutaiComponent implements OnInit {
4570 4572
     // 返回值的status是206 则是默认患者所在科室,把患者所在科室作为值
4571 4573
     this.mainService.getdeptList(value, patientCode, (taskType.associationTypeValue === 'inspect' ? format(startOfDay(this.inspectToday), 'yyyy-MM-dd HH:mm:ss') : undefined), (taskType.associationTypeValue === 'inspect' ? format(endOfDay(this.inspectToday), 'yyyy-MM-dd HH:mm:ss') : undefined)).subscribe((data:any) => {
4572 4574
       this.deptZyList = data;
4575
+			if(data.startStatus==202){
4576
+				this.isStartFixedType = true
4577
+			}else{
4578
+				this.isStartFixedType = false
4579
+			}
4580
+			if(data.endStatus==202){
4581
+				this.isEndFixedType = true
4582
+			}else{
4583
+				this.isEndFixedType = false
4584
+			}
4585
+			
4573 4586
       // 预约start
4574 4587
       this.currentTasktype = data.taskType;
4575 4588
       this.isYyInspect = false;
@@ -4672,6 +4685,16 @@ export class FuwutaiComponent implements OnInit {
4672 4685
     // 返回值的status是205 则是固定科室类型,会返回科室列表
4673 4686
     this.mainService.getdeptList(value).subscribe((data:any) => {
4674 4687
       this.deptQtList = data;
4688
+			if(data.startStatus==202){
4689
+				this.isStartFixedType = true
4690
+			}else{
4691
+				this.isStartFixedType = false
4692
+			}
4693
+			if(data.endStatus==202){
4694
+				this.isEndFixedType = true
4695
+			}else{
4696
+				this.isEndFixedType = false
4697
+			}
4675 4698
       // 预约start
4676 4699
       this.currentTasktype = data.taskType;
4677 4700
       this.isYyInspect = false;

+ 33 - 10
src/app/views/hushijiandan/hushijiandan.component.html

@@ -585,7 +585,7 @@
585 585
                                             <nz-form-item>
586 586
                                               <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="originOffice">起点科室</nz-form-label>
587 587
                                               <nz-form-control nzErrorTip="请选择起点科室!">
588
-                                                <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('start', buildMsg, $event)" nzPlaceHolder="请选择起点科室">
588
+                                                <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzPlaceHolder="请选择起点科室">
589 589
                                                   <ng-container *ngFor="let option of buildMsg.start.start.list">
590 590
                                                     <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
591 591
                                                     </nz-option>
@@ -607,7 +607,7 @@
607 607
                                             <nz-form-item>
608 608
                                               <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="targetOffice">目标科室</nz-form-label>
609 609
                                               <nz-form-control nzErrorTip="请选择目标科室!">
610
-                                                <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('target', buildMsg, $event)" nzAllowClear nzPlaceHolder="请选择目标科室">
610
+                                                <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType" nzAllowClear nzPlaceHolder="请选择目标科室">
611 611
                                                   <ng-container *ngFor="let option of buildMsg.end.end.list">
612 612
                                                     <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
613 613
                                                     </nz-option>
@@ -629,7 +629,7 @@
629 629
                                             <nz-form-item>
630 630
                                               <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="originOffice">起点科室</nz-form-label>
631 631
                                               <nz-form-control nzErrorTip="请选择起点科室!">
632
-                                                <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('start', buildMsg, $event)" nzPlaceHolder="请选择起点科室">
632
+                                                <nz-select class="w100" formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzPlaceHolder="请选择起点科室">
633 633
                                                   <ng-container *ngFor="let option of buildMsg.start.start.list">
634 634
                                                     <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
635 635
                                                     </nz-option>
@@ -644,7 +644,7 @@
644 644
                                             <nz-form-item>
645 645
                                               <nz-form-label [nzSm]="6" [nzXs]="24" nzRequired nzFor="targetOffice">目标科室</nz-form-label>
646 646
                                               <nz-form-control nzErrorTip="请选择目标科室!">
647
-                                                <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('target', buildMsg, $event)" nzPlaceHolder="请选择目标科室">
647
+                                                <nz-select class="w100" formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType" nzPlaceHolder="请选择目标科室">
648 648
                                                   <ng-container *ngFor="let option of buildMsg.end.end.list">
649 649
                                                     <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id">
650 650
                                                     </nz-option>
@@ -1499,7 +1499,7 @@
1499 1499
               <!-- 需要预约检查 -->
1500 1500
               <nz-form-item class="pos-item">
1501 1501
                 <nz-form-control>
1502
-                  <label class="mt13" nz-checkbox [nzDisabled]="(!linkCheckLisTrue && currentTasktype.associationType.value === 'inspect') || (linkCheckLisTrue && allowUrgent == 1 && currentTasktype.associationType.value === 'inspect') || (allowUrgent == 1 && currentTasktype.associationType.value === 'patientTransport')" [(ngModel)]="isYyInspect" (ngModelChange)="yyInspectChange($event)" [ngModelOptions]="{ standalone: true }" style="font-weight: bold">需要预约检</label>
1502
+                  <label class="mt13" nz-checkbox [nzDisabled]="(!linkCheckLisTrue && currentTasktype.associationType.value === 'inspect') || (linkCheckLisTrue && allowUrgent == 1 && currentTasktype.associationType.value === 'inspect') || (allowUrgent == 1 && currentTasktype.associationType.value === 'patientTransport')" [(ngModel)]="isYyInspect" (ngModelChange)="yyInspectChange($event)" [ngModelOptions]="{ standalone: true }" style="font-weight: bold">预约检</label>
1503 1503
                   <span class="red pos-red">请您填写实际预约检查时间,系统会根据时间安排人员进行陪检!</span>
1504 1504
                 </nz-form-control>
1505 1505
               </nz-form-item>
@@ -1543,7 +1543,7 @@
1543 1543
             <nz-form-item class="top16bottom0" nz-row *ngIf="checkedShowMsg.status == 100015 || checkedShowMsg.status == 100013">
1544 1544
               <nz-form-label [nzSpan]="3" nzRequired nzFor="originOffice">起点科室</nz-form-label>
1545 1545
               <nz-form-control [nzSpan]="21" nzErrorTip="请选择起点科室!">
1546
-                <nz-select formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('start', checkedShowMsg, $event)" nzPlaceHolder="请选择起点科室">
1546
+                <nz-select formControlName="originOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isStartFixedType" nzPlaceHolder="请选择起点科室">
1547 1547
                   <ng-container *ngFor="let option of checkedShowMsg.start.start.list">
1548 1548
                     <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id"></nz-option>
1549 1549
                   </ng-container>
@@ -1571,14 +1571,14 @@
1571 1571
             <nz-form-item class="top16bottom0" nz-row *ngIf="checkedShowMsg.status == 100014 || checkedShowMsg.status == 100015">
1572 1572
               <nz-form-label [nzSpan]="3" nzRequired nzFor="targetOffice">目标科室</nz-form-label>
1573 1573
               <nz-form-control [nzSpan]="21" nzErrorTip="请选择目标科室!">
1574
-                <nz-select formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch (nzOnSearch)="searchDept('target', checkedShowMsg, $event)" nzPlaceHolder="请选择目标科室">
1574
+                <nz-select formControlName="targetOffice" [nzDropdownMatchSelectWidth]="false" [nzShowSearch]="isEndFixedType"  nzPlaceHolder="请选择目标科室">
1575 1575
                   <ng-container *ngFor="let option of checkedShowMsg.end.end.list">
1576
-                    <nz-option *ngIf="true" [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id"></nz-option>
1576
+                    <nz-option [nzLabel]="deptDisplay == 2 ? option.deptalias : option.dept" [nzValue]="option.id"></nz-option>
1577 1577
                   </ng-container>
1578
-                  <nz-option *ngIf="false" nzDisabled nzCustomContent>
1578
+                <!--  <nz-option *ngIf="false" nzDisabled nzCustomContent>
1579 1579
                     <i nz-icon nzType="loading" class="loading-icon"></i>
1580 1580
                     搜索中...
1581
-                  </nz-option>
1581
+                  </nz-option> -->
1582 1582
                 </nz-select>
1583 1583
               </nz-form-control>
1584 1584
             </nz-form-item>
@@ -2384,6 +2384,29 @@
2384 2384
             </nz-input-group>
2385 2385
           </nz-form-control>
2386 2386
         </nz-form-item>
2387
+				<nz-form-item>
2388
+					<nz-form-label [nzSm]="4" [nzXs]="4" nzFor="description">图片上传</nz-form-label>
2389
+					<nz-form-control style="display: inline-block;" *ngIf="repairImgs.length === 0">
2390
+					  <nz-upload nzListType="picture-card" [(nzFileList)]="fileList" 
2391
+						[nzShowUploadList]="showUploadList" [nzPreview]="handlePreview" 
2392
+						nzFileType="image/jpeg,image/png" nzAccept="image/jpeg,image/png" 
2393
+						[nzShowButton]="fileList.length < 3" 
2394
+						[nzBeforeUpload]="beforeUpload" [nzAction]="temporarilyUrl" 
2395
+						[nzSize]="10240">
2396
+					    <i nz-icon nzType="plus"></i>
2397
+					    <div class="ant-upload-text">上传照片</div>
2398
+					  </nz-upload>
2399
+					  <nz-modal [nzVisible]="previewVisible" [nzContent]="modalContent" [nzFooter]="null" (nzOnCancel)="previewVisible = false">
2400
+					    <ng-template #modalContent>
2401
+					      <img [src]="previewImage" [ngStyle]="{ width: '100%' }" />
2402
+					    </ng-template>
2403
+					  </nz-modal>
2404
+					  <div class="tips">只支持.jpg.png.jpg 格式,最多上传3 张图片。</div>
2405
+					</nz-form-control>
2406
+					<div class="thumbList" *ngIf="repairImgs.length > 0">
2407
+					  <div class="thumb" *ngFor="let item of repairImgs;let index = index;" (click)="previewImageHandler(repairImgs, index)"><img [src]="item.thumbFilePath" alt=""></div>
2408
+					</div>
2409
+				</nz-form-item>
2387 2410
         <nz-form-item>
2388 2411
           <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="contacts">联系人</nz-form-label>
2389 2412
           <nz-form-control style="display: inline-block;">

+ 2 - 2
src/app/views/hushijiandan/hushijiandan.component.less

@@ -2641,7 +2641,7 @@
2641 2641
   font-size: 18px;
2642 2642
   margin-top: 8px;
2643 2643
   &.col6{
2644
-    width: 16.666%;
2644
+    width: 20%;
2645 2645
   }
2646 2646
   &.mt13{
2647 2647
     margin-top: 13px;
@@ -2695,7 +2695,7 @@
2695 2695
         }
2696 2696
       }
2697 2697
       .patientForm{
2698
-        padding: 16px 24px;
2698
+        padding: 16px 15px;
2699 2699
         .noInspect{
2700 2700
           font-size: 18px;
2701 2701
         }

+ 119 - 6
src/app/views/hushijiandan/hushijiandan.component.ts

@@ -17,12 +17,13 @@ import http from "../../../assets/js/http";
17 17
 import { MainService } from "../../services/main.service";
18 18
 import { WebsocketNurseService } from "../../services/websocket-nurse.service";
19 19
 
20
-import { NzMessageService } from "ng-zorro-antd";
20
+import { NzMessageService, UploadFile } from "ng-zorro-antd";
21 21
 import { NzNotificationService } from "ng-zorro-antd/notification";
22 22
 import { OverlayScrollbarsComponent } from "overlayscrollbars-ngx";
23 23
 import { ToolService } from "../../services/tool.service";
24 24
 import { Subject } from "rxjs";
25
-import { debounceTime } from "rxjs/operators";
25
+import { debounceTime, filter } from "rxjs/operators";
26
+import { HttpRequest, HttpResponse, HttpClient } from '@angular/common/http';
26 27
 import {
27 28
   format,
28 29
   getMinutes,
@@ -127,7 +128,9 @@ export class HushijiandanComponent implements OnInit {
127 128
     private mainService: MainService,
128 129
     private notification: NzNotificationService,
129 130
     private webs: WebsocketNurseService,
130
-    public tool: ToolService
131
+    public tool: ToolService,
132
+		public http: HttpClient
133
+		
131 134
   ) {
132 135
     this.othersListOptions = {
133 136
       onUpdate: (event: any) => {
@@ -310,7 +313,78 @@ export class HushijiandanComponent implements OnInit {
310 313
     this.coopBtns = coopBtns;
311 314
     console.log(this.coopBtns);
312 315
   }
313
-
316
+	
317
+	// 预览图片
318
+	imgs = [];
319
+	isPreview = false;
320
+	initialViewIndex:number = 0;
321
+	previewImageHandler(data = [], index = 0) {
322
+	  this.initialViewIndex = index;
323
+	  console.log(index)
324
+	  this.isPreview = false;
325
+	  data = data || [];
326
+	  this.imgs = data.map((v) => location.origin + '/file' + v.relativeFilePath);
327
+	  setTimeout(() => {
328
+	    this.isPreview = true;
329
+	  }, 0)
330
+	}
331
+	
332
+	// 图片相关
333
+	showUploadList = {
334
+	  showPreviewIcon: true,
335
+	  showRemoveIcon: true,
336
+	  hidePreviewIconInNonImage: true
337
+	};
338
+	fileList = [
339
+	  // {
340
+	  //   uid: -1,
341
+	  //   name: 'xxx.png',
342
+	  //   status: '1',
343
+	  //   url: 'https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png'
344
+	  // }
345
+	];
346
+	previewImage: string | undefined = '';
347
+	previewVisible = false;
348
+	repairImgs:any[] = [];//报修图片
349
+	handlePreview = (file: UploadFile) => {
350
+		console.log('file1:', file)
351
+	  this.previewImage = file.url || file.thumbUrl;
352
+	  this.previewVisible = true;
353
+	};
354
+	
355
+	beforeUpload = (file: UploadFile): boolean => {
356
+		console.log('file2:', file)
357
+	  this.fileList = [...this.fileList, file];
358
+	  setTimeout(async () => {
359
+	    file.url = await this.getBase64(file);
360
+	  }, 0);
361
+	  console.log('this.fileList:', this.fileList)
362
+	  return true;
363
+	};
364
+	
365
+	getBase64(file: any): Promise<any> {
366
+	  return new Promise((resolve, reject) => {
367
+	    const reader = new FileReader();
368
+	    reader.readAsDataURL(file);
369
+	    reader.onload = () => resolve(reader.result);
370
+	    reader.onerror = error => reject(error);
371
+	  });
372
+	}
373
+	
374
+	// 临时上传图片
375
+	temporarilyUrl = this.mainService.returnUploadUrl('wechatRequesterIncident', 0);
376
+	
377
+	// 图片上传
378
+	uploadImages(file, id){
379
+	  const formData = new FormData();
380
+	  formData.append('file', file);
381
+	  formData.append('fileName', file.name);
382
+	  const req = new HttpRequest('Post', this.mainService.returnUploadUrl('wechatRequesterIncident', id), formData, {
383
+	    reportProgress: true
384
+	  });
385
+	  return this.http.request(req).pipe(filter(e => e instanceof HttpResponse)).toPromise();
386
+	}
387
+	
314 388
 	// 获取任务类型(病理标本)
315 389
 	taskTypeData:any;
316 390
 	getTaskTypesId() {
@@ -1489,11 +1563,13 @@ export class HushijiandanComponent implements OnInit {
1489 1563
     }).messageId;
1490 1564
     this.bxModal = true;
1491 1565
     this.coopBx = data || {};
1566
+		this.fileList = [];
1492 1567
     this.initBxForm(this.coopBx.content);
1493 1568
   }
1494 1569
   // 隐藏模态框
1495 1570
   hideBxModal() {
1496 1571
     this.bxModal = false;
1572
+		this.fileList = [];
1497 1573
   }
1498 1574
   // 确认
1499 1575
   confirmBx() {
@@ -1554,7 +1630,7 @@ export class HushijiandanComponent implements OnInit {
1554 1630
     }
1555 1631
     this.mainService.getDictionary("list", "incident_source").subscribe((source:any) => {
1556 1632
       let incidentSourceList = source || [];
1557
-      let im = incidentSourceList.find(v => v.value === 'im');
1633
+      let pc = incidentSourceList.find(v => v.value === 'pc');
1558 1634
       this.mainService.getDictionary("list", "repair_incident_type").subscribe((result) => {
1559 1635
         let repairIncidentTypeList = result || [];
1560 1636
         let repairIncidentType = repairIncidentTypeList.find(v => v.value === 'dept');
@@ -1569,7 +1645,7 @@ export class HushijiandanComponent implements OnInit {
1569 1645
               contacts: this.validateBxForm.value.contacts,
1570 1646
               contactsInformation: this.validateBxForm.value.contactsInformation,
1571 1647
               hosId: this.deptDto.hospital.id,
1572
-              source: im,
1648
+              source: pc,
1573 1649
               fromWx: true,
1574 1650
               requester: this.loginUser,
1575 1651
               acceptUser: this.loginUser,
@@ -1587,6 +1663,13 @@ export class HushijiandanComponent implements OnInit {
1587 1663
             this.bxModal = false;
1588 1664
             this.hideReqModal();
1589 1665
             if ((res as any).state == 200) {
1666
+							// 图片上传
1667
+							if(this.fileList.length){
1668
+								console.log(this.fileList.map(v => v.originFileObj));
1669
+								this.fileList.map(v => v.originFileObj).forEach(async file => {
1670
+									await this.uploadImages(file, res.data.id);
1671
+								})
1672
+							}
1590 1673
               this.showPromptModal("提交", true, "");
1591 1674
               this.checkTable("bxlb");
1592 1675
             } else {
@@ -2975,6 +3058,8 @@ export class HushijiandanComponent implements OnInit {
2975 3058
   currentTasktype; //当前选中的任务类型对象
2976 3059
   cLoading = false;
2977 3060
   historyCustomRemarks2 = [];
3061
+	isStartFixedType:boolean = false;
3062
+	isEndFixedType:boolean = false;
2978 3063
   changeCheckedType(isInit = false) {
2979 3064
     isInit && (this.inspectToday = new Date());
2980 3065
     this.customRemarks2 = [];
@@ -3038,6 +3123,20 @@ export class HushijiandanComponent implements OnInit {
3038 3123
         this.maskFlag = false;
3039 3124
         this.patientModal = true;
3040 3125
         that.checkedShowMsg = data;
3126
+				if(data.end){
3127
+					if(data.end.end.departmentStrategy==202){
3128
+						this.isEndFixedType = true
3129
+					}else{
3130
+						this.isEndFixedType = false
3131
+					}
3132
+				}
3133
+				if(data.start){
3134
+					if(data.start.start.departmentStrategy==202){
3135
+						this.isStartFixedType = true
3136
+					}else{
3137
+						this.isStartFixedType = false
3138
+					}
3139
+				}
3041 3140
         if (that.checkedShowMsg.status != 200) {
3042 3141
           that.isRemand = data.isRemand == 1 ? true : false;
3043 3142
         }
@@ -3305,6 +3404,20 @@ export class HushijiandanComponent implements OnInit {
3305 3404
       .subscribe((result) => {
3306 3405
         this.buildMsg = result;
3307 3406
         if (result.remarksSwitch == 1) {
3407
+					if(result.end){
3408
+						if(result.end.end.departmentStrategy==202){
3409
+							this.isEndFixedType = true
3410
+						}else{
3411
+							this.isEndFixedType = false
3412
+						}
3413
+					}
3414
+					if(result.start){
3415
+						if(result.start.start.departmentStrategy==202){
3416
+							this.isStartFixedType = true
3417
+						}else{
3418
+							this.isStartFixedType = false
3419
+						}
3420
+					}
3308 3421
           if (result.customRemarks === null || result.customRemarks === "") {
3309 3422
             this.customRemarks = [];
3310 3423
           } else {