Sfoglia il codice sorgente

Merge branch 'master' of http://git.dashitech.com/seimin/zy-pc

maotao 10 mesi fa
parent
commit
d24fa2e5ac

+ 9 - 9
src/app/services/main.service.ts

@@ -510,7 +510,7 @@ export class MainService {
510 510
   }
511 511
   //查报修列表
512 512
   listWxIncident(data) {
513
-    return this.http.post(host.host + "/itsm/listWxIncident", data, {
513
+    return this.http.post(host.host + "/itsm/fetchDataList/incident", data, {
514 514
       headers: this.headers,
515 515
     });
516 516
   }
@@ -520,12 +520,6 @@ export class MainService {
520 520
       headers: this.headers,
521 521
     });
522 522
   }
523
-  //查报修流程时间
524
-  getProcessTime(data,processInstanceId) {
525
-    return this.http.post(host.host + "/itsm/bpm/flowTracing/"+processInstanceId, data, {
526
-      headers: this.headers,
527
-    });
528
-  }
529 523
   //查列表
530 524
   fetchListBx(type, data) {
531 525
     return this.http.post(host.host + "/itsm/fetchDataList/" + type, data, {
@@ -544,9 +538,9 @@ export class MainService {
544 538
       headers: this.headers,
545 539
     });
546 540
   }
547
-  //获取微信报修ID
541
+  //获取工单单号
548 542
   wxbx(data) {
549
-    return this.http.post(host.host + "/itsm/restful/wxbx", data, {
543
+    return this.http.post(host.host + "/itsm/restful/sj", data, {
550 544
       headers: this.headers,
551 545
     });
552 546
   }
@@ -568,6 +562,12 @@ export class MainService {
568 562
       headers: this.headers,
569 563
     });
570 564
   }
565
+  //修改用户
566
+  saveUser(data) {
567
+    return this.http.post(host.host + "/itsm/user/saveUser", data, {
568
+      headers: this.headers,
569
+    });
570
+  }
571 571
   //复制院区
572 572
   copyHosTaskType(data) {
573 573
     return this.http.post(host.host + "/api/copyHosTaskType", data, {

+ 25 - 235
src/app/share/detail-bx/detail-bx.component.html

@@ -5,258 +5,48 @@
5 5
     <div class="content">
6 6
       <div class="top" *ngIf="amplificationShow">
7 7
         <div class="num">
8
-          <span class="left">报修编号:{{orderInfo.bxcode}}</span>
9
-          <span class="right">{{orderInfo.incidentState?orderInfo.incidentState.name:''}}</span>
8
+          <span class="left">工单单号:{{orderInfo.incidentsign}}</span>
9
+          <span class="right">{{orderInfo.state?orderInfo.state.name:''}}</span>
10 10
         </div>
11 11
         <div class="info" nz-row>
12 12
           <div nz-col nzSpan="8">报修类别:{{orderInfo.category?orderInfo.category.category:''}}</div>
13
-          <div nz-col nzSpan="8">报修地址:<ng-container *ngIf="orderInfo.place">{{ orderInfo.place.area.area }} {{ orderInfo.place.place }} {{ orderInfo.address }}</ng-container></div>
14
-          <div nz-col nzSpan="24">报修内容:{{orderInfo.incidentDescription}}</div>
13
+          <div nz-col nzSpan="8">报修地址:<ng-container *ngIf="orderInfo.place">{{ orderInfo.place.area.area }} {{ orderInfo.place.place }} {{ orderInfo.houseNumber }}</ng-container></div>
14
+          <div nz-col nzSpan="24">报修内容:{{orderInfo.description}}</div>
15 15
           <div nz-col nzSpan="24">报修图片:
16 16
             <app-image-viewer [imageUrl]="imgs_wechatRequesterIncident" *ngIf="imgs_wechatRequesterIncident.length"></app-image-viewer>
17 17
           </div>
18 18
           <div nz-col nzSpan="24">处理图片:
19 19
             <app-image-viewer [imageUrl]="imgs_incident" *ngIf="imgs_incident.length"></app-image-viewer>
20 20
           </div>
21
-          <div nz-col nzSpan="8">维修人:<ng-container *ngIf="orderInfo.incident&&orderInfo.incident.handlingPersonnelUser">{{ orderInfo.incident.handlingPersonnelUser.name }}</ng-container></div>
22
-          <div nz-col nzSpan="8">维修人电话:<ng-container *ngIf="orderInfo.incident&&orderInfo.incident.handlingPersonnelUser">{{ orderInfo.incident.handlingPersonnelUser.phone }}</ng-container></div>
23
-          <div nz-col nzSpan="8" *ngIf="orderInfo.incident&&orderInfo.incident.repairSummaryDTO">维修总金额:{{ orderInfo.incident.repairSummaryDTO.totalMaintenancePrice }}元</div>
24
-          <div nz-col nzSpan="24" *ngIf="processData == '已撤回'">撤回原因:{{ orderInfo.retractReason }}</div>
25
-          <div nz-col nzSpan="24" *ngIf="processData == '不受理'">不受理原因:{{ orderInfo.rejectRemark }}</div>
21
+          <div nz-col nzSpan="8">维修人:<ng-container *ngIf="orderInfo.handlingPersonnelUser">{{ orderInfo.handlingPersonnelUser.name }}</ng-container></div>
22
+          <div nz-col nzSpan="8">维修人电话:<ng-container *ngIf="orderInfo.handlingPersonnelUser">{{ orderInfo.handlingPersonnelUser.phone }}</ng-container></div>
23
+          <div nz-col nzSpan="8">维修总金额:{{orderInfo.rsPrice === undefined ? '无' : orderInfo.rsPrice + '元'}}</div>
26 24
         </div>
27 25
       </div>
28 26
       <div class="center" *ngIf="amplificationShow">
29 27
         <div class="box">
30 28
           <!-- 流程图 start -->
31 29
           <div class="processBox">
32
-            <div
33
-              class="process"
34
-              *ngIf="
35
-                processData == '不受理' ||
36
-                  processData == '结束' ||
37
-                  processData == '已撤回' ||
38
-                  processData == '重复事件'
39
-              "
40
-            >
41
-              <div class="status">
42
-                {{ processMessage[4] ? processMessage[4].name : "" }}
43
-              </div>
44
-              <div class="ico">
45
-                <i class="icon_transport transport-icon_liucheng last"></i>
46
-              </div>
47
-              <div class="time">
48
-                <ng-container *ngIf="processTime[4]">
49
-                  {{processTime[4].startTime | date:"MM-dd HH:mm:ss"}}
50
-                </ng-container>
51
-              </div>
52
-            </div>
53
-            <div
54
-              class="processCont"
55
-              *ngIf="
56
-                processData == '不受理' ||
57
-                  processData == '结束' ||
58
-                  processData == '已撤回' ||
59
-                  processData == '重复事件'
60
-              "
61
-            >
62
-              <div class="status"></div>
63
-              <div
64
-                class="conents"
65
-                [innerHTML]="processMessage[4] ? processMessage[4].desc : ''"
66
-              ></div>
67
-            </div>
68
-            <div
69
-              class="process"
70
-              *ngIf="
71
-                processData == '评价' ||
72
-                  (processData == '结束' && processData != '重复事件')
73
-              "
74
-            >
75
-              <div class="status">
76
-                {{ processMessage[3] ? processMessage[3].name : "" }}
77
-              </div>
78
-              <div class="ico">
79
-                <i
80
-                  class="icon_transport transport-icon_liucheng green now"
81
-                  *ngIf="processData == '评价'"
82
-                ></i>
83
-                <i
84
-                  class="icon_transport transport-icon_liucheng last"
85
-                  *ngIf="processData != '评价'"
86
-                ></i>
87
-              </div>
88
-              <div class="time">
89
-                <ng-container *ngIf="processTime[3]">
90
-                  {{processTime[3].startTime | date:"MM-dd HH:mm:ss"}}
91
-                </ng-container>
92
-              </div>
93
-            </div>
94
-            <div
95
-              class="processCont"
96
-              *ngIf="
97
-                processData == '评价' ||
98
-                  (processData == '结束' && processData != '重复事件')
99
-              "
100
-            >
101
-              <div class="status"></div>
102
-              <div
103
-                class="conents"
104
-                [innerHTML]="processMessage[3] ? processMessage[3].desc : ''"
105
-              ></div>
106
-            </div>
107
-            <!-- 处理日志 start -->
108
-            <ng-container *ngIf="orderInfo.incident">
109
-              <div *ngFor="let item of orderInfo.incident.handlerLogs;let i = index;">
110
-                <div
111
-                  class="process"
112
-                  *ngIf="
113
-                    processData == '处理' ||
114
-                      processData == '评价' ||
115
-                      (processData == '结束' && processData != '重复事件')
116
-                  "
117
-                >
118
-                  <div class="status">
119
-                    {{ processMessage[2] ? processMessage[2].name : "" }}
120
-                  </div>
121
-                  <div class="ico">
122
-                    <i
123
-                      class="icon_transport transport-icon_liucheng green now"
124
-                      *ngIf="processData == '处理' && i === 0"
125
-                    ></i>
126
-                    <i
127
-                      class="icon_transport transport-icon_liucheng last"
128
-                      *ngIf="!(processData == '处理' && i === 0)"
129
-                    ></i>
130
-                  </div>
131
-                  <div class="time">
132
-                    {{ item.opTime | date:"MM-dd HH:mm:ss"}},{{ item.userName }}
133
-                  </div>
30
+            <ng-container *ngFor="let item of progressInfo;let last = last;">
31
+              <div class="process">
32
+                <div class="status">
33
+                  {{ item.logType ? item.logType.name : '' }}
134 34
                 </div>
135
-                <div
136
-                  class="processCont"
137
-                  *ngIf="
138
-                    processData == '处理' ||
139
-                      processData == '评价' ||
140
-                      (processData == '结束' && processData != '重复事件')
141
-                  "
142
-                >
143
-                  <div class="status"></div>
144
-                  <div class="conents"><span *ngIf="item.repairType && item.expectedDate">{{item.repairType.name}}{{item.expectedDate|date:'MM月dd日前完成'}}</span> {{ item.opValue }}</div>
35
+                <div class="ico">
36
+                  <i class="icon_transport transport-icon_liucheng last"></i>
37
+                </div>
38
+                <div class="time">
39
+                    {{ item.startTime | date:"MM-dd HH:mm:ss" }}
40
+                    <span *ngIf="item.appointorName">
41
+                      ,{{ item.appointorName }}
42
+                    </span>
145 43
                 </div>
146 44
               </div>
147
-            </ng-container>
148
-            <!-- 处理日志 end -->
149
-            <div
150
-              class="process"
151
-              *ngIf="
152
-                processData == '处理' ||
153
-                  processData == '评价' ||
154
-                  (processData == '结束' && processData != '重复事件')
155
-              "
156
-            >
157
-              <div class="status">
158
-                {{ processMessage[2] ? processMessage[2].name : "" }}
159
-              </div>
160
-              <div class="ico">
161
-                <i
162
-                  class="icon_transport transport-icon_liucheng green now"
163
-                  *ngIf="processData == '处理' && orderInfo.incident && !orderInfo.incident.handlerLogs"
164
-                ></i>
165
-                <i
166
-                  class="icon_transport transport-icon_liucheng last"
167
-                  v-else
168
-                ></i>
169
-              </div>
170
-              <div class="time">
171
-                <ng-container *ngIf="processTime[2]">
172
-                  {{processTime[2].startTime | date:"MM-dd HH:mm:ss"}}
173
-                </ng-container>
174
-              </div>
175
-            </div>
176
-            <div
177
-              class="processCont"
178
-              *ngIf="
179
-                processData == '处理' ||
180
-                  processData == '评价' ||
181
-                  (processData == '结束' && processData != '重复事件')
182
-              "
183
-            >
184
-              <div class="status"></div>
185
-              <div
186
-                class="conents"
187
-                [innerHTML]="processMessage[2] ? processMessage[2].desc : ''"
188
-              ></div>
189
-            </div>
190
-            <div
191
-              class="process"
192
-              *ngIf="
193
-                processData == '受理' ||
194
-                  processData == '处理' ||
195
-                  processData == '评价' ||
196
-                  (processData == '结束' && processData != '重复事件')
197
-              "
198
-            >
199
-              <div class="status">
200
-                {{ processMessage[1] ? processMessage[1].name : "" }}
201
-              </div>
202
-              <div class="ico">
203
-                <i
204
-                  class="icon_transport transport-icon_liucheng green now"
205
-                  *ngIf="processData == '受理'"
206
-                ></i>
207
-                <i
208
-                  class="icon_transport transport-icon_liucheng last"
209
-                  *ngIf="processData != '受理'"
210
-                ></i>
211
-              </div>
212
-              <div class="time">
213
-                <ng-container *ngIf="processTime[1]">
214
-                  {{processTime[1].startTime | date:'MM-dd HH:mm:ss'}}
215
-                </ng-container>
216
-              </div>
217
-            </div>
218
-            <div
219
-              class="processCont"
220
-              *ngIf="
221
-                processData == '受理' ||
222
-                  processData == '处理' ||
223
-                  processData == '评价' ||
224
-                  (processData == '结束' && processData != '重复事件')
225
-              "
226
-            >
227
-              <div class="status"></div>
228
-              <div
229
-                class="conents"
230
-                [innerHTML]="processMessage[1] ? processMessage[1].desc : ''"
231
-              ></div>
232
-            </div>
233
-            <div class="process">
234
-              <div class="status">
235
-                {{ processMessage[0] ? processMessage[0].name : "" }}
236
-              </div>
237
-              <div class="ico">
238
-                <i
239
-                  class="icon_transport transport-icon_liucheng green now"
240
-                  *ngIf="processData == '申请'"
241
-                ></i>
242
-                <i
243
-                  class="icon_transport transport-icon_liucheng last"
244
-                  *ngIf="processData != '申请'"
245
-                ></i>
246
-              </div>
247
-              <div class="time">
248
-                <ng-container *ngIf="processTime[0]">
249
-                  {{processTime[0].startTime | date:"MM-dd HH:mm:ss"}}
250
-                </ng-container>
45
+              <div class="processCont">
46
+                <div class="status"></div>
47
+                <div class="conents" [ngClass]="{lastContent: last}" [innerHTML]="item.remark"></div>
251 48
               </div>
252
-            </div>
253
-            <div class="processCont">
254
-              <div class="status"></div>
255
-              <div
256
-                class="conents lastConents"
257
-                [innerHTML]="processMessage[0] ? processMessage[0].desc : ''"
258
-              ></div>
259
-            </div>
49
+            </ng-container>
260 50
           </div>
261 51
           <!-- 流程图 end -->
262 52
         </div>
@@ -285,7 +75,7 @@
285 75
     </div>
286 76
   </overlay-scrollbars>
287 77
   <div class="btns display_flex justify-content_flex-center">
288
-    <button nz-button nzType="primary" (click)="goToSummary()" *ngIf="orderInfo.incident.duty && orderInfo.incident.duty.addSummary == 1">维修单</button>
78
+    <button nz-button nzType="primary" (click)="goToSummary()" *ngIf="orderInfo.duty && orderInfo.duty.addSummary == 1">维修单</button>
289 79
     <button class=" btn cancel" nz-button nzType="default" (click)="close()">取消</button>
290 80
   </div>
291 81
 </div>
@@ -326,6 +116,6 @@
326 116
   [info]="promptInfo" (closeModel)="close()">
327 117
   <!-- 2.父组件调用子组件时绑定到这个事件属性,并在事件发生时作出回应。(closeModel)="close()" -->
328 118
 </app-prompt-modal>
329
-<app-incident-details *ngIf="isShowIncidentDetails" (close)="closeIncidentDetails()" [incidentId]="orderInfo.incident.id"></app-incident-details>
119
+<app-incident-details *ngIf="isShowIncidentDetails" (close)="closeIncidentDetails()" [incidentId]="orderInfo.id"></app-incident-details>
330 120
 <!-- 遮罩 -->
331 121
 <app-mask *ngIf="maskFlag"></app-mask>

+ 3 - 1
src/app/share/detail-bx/detail-bx.component.less

@@ -84,9 +84,11 @@
84 84
     padding: 4px 0;
85 85
     padding-left: 5%;
86 86
     border-left: 1px #999999 solid;
87
-    line-height: 15[x];
88 87
     word-break: break-all;
89 88
   }
89
+  .processCont .conents.lastContent {
90
+    border-left: none;
91
+  }
90 92
   .processCont .lastConents {
91 93
     border-left: none;
92 94
   }

+ 17 - 62
src/app/share/detail-bx/detail-bx.component.ts

@@ -24,9 +24,8 @@ export class DetailBxComponent implements OnInit {
24 24
     private tool: ToolService,
25 25
     private mainService: MainService
26 26
   ) {}
27
-  processTime = [];
27
+  progressInfo = [];
28 28
   processData = "";
29
-  processMessage = [];
30 29
   imgs_wechatRequesterIncident = [];
31 30
   imgs_incident = [];
32 31
 
@@ -70,33 +69,9 @@ export class DetailBxComponent implements OnInit {
70 69
       this.logList = res[0]["data"];
71 70
       // getDetail
72 71
       this.orderInfo = res[1]["data"];
73
-      this.getProcessTime();
74
-      this.getProcessMessageData();
72
+      this.getProgressInfo();
75 73
       this.getImgsData('wechatRequesterIncident');
76 74
       this.getImgsData('incident');
77
-      if(this.orderInfo.incident){
78
-        if (!this.orderInfo.incident.handlerLogs) {
79
-          this.orderInfo.incident.handlerLogs = [];
80
-        } else {
81
-          this.orderInfo.incident.handlerLogs.reverse();
82
-        }
83
-      }
84
-
85
-      if (this.orderInfo.incident && this.orderInfo.incident.repeat) {
86
-        this.processData = "重复事件";
87
-      } else if (this.orderInfo.incidentState.name == "不受理") {
88
-        this.processData = "不受理";
89
-      } else if (this.orderInfo.incidentState.name == "未受理") {
90
-        this.processData = "申请";
91
-      } else if (this.orderInfo.incidentState.name == "处理中") {
92
-        this.processData = "处理";
93
-      } else if (this.orderInfo.incidentState.name == "待评价") {
94
-        this.processData = "评价";
95
-      } else if (this.orderInfo.incidentState.name == "已解决") {
96
-        this.processData = "结束";
97
-      } else if (this.orderInfo.incidentState.name == "已撤回") {
98
-        this.processData = "已撤回";
99
-      }
100 75
     });
101 76
   }
102 77
 
@@ -112,17 +87,7 @@ export class DetailBxComponent implements OnInit {
112 87
 
113 88
   // 获取图片信息
114 89
   getImgsData(type) {
115
-    let id;
116
-    if(type === 'wechatRequesterIncident'){
117
-      id = this.orderInfo.id;
118
-    } else if(type === 'incident'){
119
-      if(this.orderInfo.incident){
120
-        id = this.orderInfo.incident.processInstanceId;
121
-      } else {
122
-        this['imgs_' + type] = [];
123
-        return;
124
-      }
125
-    }
90
+    let id = this.orderInfo.id;
126 91
     this.mainService
127 92
       .listAttachment(type, id)
128 93
       .subscribe((res:any)=> {
@@ -133,29 +98,19 @@ export class DetailBxComponent implements OnInit {
133 98
       });
134 99
   }
135 100
 
136
-  //获取流程节点时间
137
-  getProcessTime() {
138
-    if (this.orderInfo.incident && this.orderInfo.incident.processInstanceId) {
139
-      this.mainService
140
-        .getProcessTime({}, this.orderInfo.incident.processInstanceId)
141
-        .subscribe((res: any) => {
142
-          this.processTime = res.data;
143
-        });
144
-    }
145
-  }
146
-
147
-  getProcessMessageData() {
148
-    this.mainService
149
-      .fetchListBx("dictionary", {
150
-        idx: 0,
151
-        sum: 10,
152
-        dictionary: {
153
-          key: "wxincident_task_default",
154
-        },
155
-      })
156
-      .subscribe((res: any) => {
157
-        this.processMessage = res.list;
158
-      });
101
+  //获取处理进度
102
+  getProgressInfo() {
103
+    this.mainService .fetchListBx("incidentLog", {
104
+      "idx": 0,
105
+      "sum": 9999,
106
+      "incidentLog": {
107
+          "incidentId": this.orderInfo.id
108
+      }
109
+    })
110
+    .subscribe((res: any) => {
111
+      console.log(res);
112
+      this.progressInfo = res.list || [];
113
+    });
159 114
   }
160 115
 
161 116
   // 放大
@@ -165,7 +120,7 @@ export class DetailBxComponent implements OnInit {
165 120
 
166 121
   // 获取工单详情
167 122
   getDetail() {
168
-    return this.mainService.fetchDataBx("wXIncident", this.id);
123
+    return this.mainService.fetchDataBx("incident", this.id);
169 124
   }
170 125
 
171 126
   // 确认加急

+ 37 - 0
src/app/share/dialog-bx/dialog-bx.component.html

@@ -0,0 +1,37 @@
1
+<div class="detail" *ngIf="delModal">
2
+  <div class="modalBody">
3
+    <div class="title">提示<i class="icon_transport transport-guanbi" (click)="hideDelModal()"></i></div>
4
+    <div class="content">
5
+      <div class="top display_flex justify-content_flex-center align-items_center">
6
+        您是否将以下信息设置为常用信息
7
+      </div>
8
+      <div nz-row class="info">
9
+        <div class="left" nz-col nzSpan="12">
10
+          <div class="item display_flex  justify-content_space-between align-items_flex-start">
11
+            <span>联系人</span>
12
+            <span>{{validateBxForm.value.contacts || ''}}</span>
13
+          </div>
14
+          <div class="item display_flex  justify-content_space-between align-items_flex-start">
15
+            <span>联系电话</span>
16
+            <span>{{validateBxForm.value.contactsInformation || ''}}</span>
17
+          </div>
18
+        </div>
19
+        <div class="right" nz-col nzSpan="12">
20
+          <div class="item display_flex  justify-content_space-between align-items_flex-start">
21
+            <span>楼栋</span>
22
+            <span>{{extraData.place?.area?.area}}</span>
23
+          </div>
24
+          <div class="item display_flex  justify-content_space-between align-items_flex-start">
25
+            <span>楼层</span>
26
+            <span>{{extraData.place?.place}}</span>
27
+          </div>
28
+        </div>
29
+      </div>
30
+    </div>
31
+    <div class="display_flex justify-content_flex-center">
32
+      <button nz-button nzType="primary" (click)="confirmDel()" [nzLoading]="btnLoading">{{confirmTxt}}</button>
33
+      <button class="btn cancel ml8" nz-button nzType="default" (click)="cancel()" [nzLoading]="cancenlLoading">{{cancelTxt}}</button>
34
+    </div>
35
+  </div>
36
+</div>
37
+

+ 155 - 0
src/app/share/dialog-bx/dialog-bx.component.less

@@ -0,0 +1,155 @@
1
+@import "../../../../src/theme.less";
2
+.detail {
3
+  position: fixed;
4
+  left: 0;
5
+  top: 0;
6
+  width: 100%;
7
+  height: 100%;
8
+  display: flex;
9
+  justify-content: center;
10
+  align-items: center;
11
+  background: rgba(0, 0, 0, .4);
12
+  z-index: 9999;
13
+
14
+  .modalBody {
15
+    width: 600px;
16
+    background: #fff;
17
+    border-radius: 5px;
18
+    padding: 10px 20px;
19
+    color: #333;
20
+
21
+    .title {
22
+      width: 100%;
23
+      text-align: center;
24
+      font-size: 18px;
25
+      position: relative;
26
+
27
+      i {
28
+        position: absolute;
29
+        right: 0;
30
+        top: 0;
31
+        font-size: 20px;
32
+        color: #666;
33
+        cursor: pointer;
34
+        padding: 0 5px;
35
+      }
36
+    }
37
+
38
+    .content {
39
+      width: 100%;
40
+      background: #f9fafb;
41
+      border: 1px solid #e5e9ed;
42
+      border-radius: 5px;
43
+      overflow: hidden;
44
+      margin-top: 12px;
45
+      padding: 9px 24px;
46
+
47
+      .top {
48
+        height: 35px;
49
+        border-bottom: 2px solid #eff2f4;
50
+        font-weight: bold;
51
+
52
+        span:nth-child(1) {
53
+          font-size: 14px;
54
+          color: @primary-color;
55
+        }
56
+
57
+        span:nth-child(2) {
58
+          font-size: 12px;
59
+          color: #999;
60
+        }
61
+      }
62
+
63
+      .info {
64
+        margin-top: 15px;
65
+        margin-bottom: 4px;
66
+
67
+        &>div {
68
+          &.left {
69
+            border-right: 2px dashed #eff2f4;
70
+            padding-right: 23px;
71
+          }
72
+
73
+          &.right {
74
+            padding-left: 23px;
75
+          }
76
+
77
+          .item {
78
+            // display: flex;
79
+            // // height: 28px;
80
+            // justify-content: space-between;
81
+            // align-items: flex-start;
82
+
83
+            span:nth-child(1) {
84
+              color: #666;
85
+              display: inline-block;
86
+              min-width: 80px;
87
+            }
88
+
89
+            span:nth-child(2) {
90
+              color: #333;
91
+            }
92
+          }
93
+
94
+        }
95
+      }
96
+
97
+    }
98
+
99
+    button {
100
+      margin-top: 10px;
101
+
102
+      &.btn {
103
+        margin-left: 8px;
104
+      }
105
+
106
+    }
107
+  }
108
+
109
+  // 新增
110
+  &.add {
111
+    .modalBody {
112
+      width: 480px;
113
+      height: auto;
114
+
115
+      .content {
116
+        width: 100%;
117
+        height: auto;
118
+        padding: 18px 14px 0 14px;
119
+
120
+        .addForm {
121
+          .ant-form-item {
122
+            margin-bottom: 14px;
123
+
124
+            .ant-form-item-label {
125
+              line-height: 0;
126
+            }
127
+          }
128
+        }
129
+
130
+        .editForm {
131
+          .ant-form-item {
132
+            margin-bottom: 14px;
133
+
134
+            .ant-form-item-label {
135
+              line-height: 0;
136
+            }
137
+          }
138
+        }
139
+
140
+      }
141
+
142
+      button {
143
+        &:nth-child(1) {
144
+          margin-right: 20px;
145
+        }
146
+      }
147
+
148
+    }
149
+  }
150
+
151
+}
152
+
153
+.txtC {
154
+  text-align: center;
155
+}

+ 43 - 0
src/app/share/dialog-bx/dialog-bx.component.ts

@@ -0,0 +1,43 @@
1
+import { Component, EventEmitter, Input, OnInit, Output } from "@angular/core";
2
+@Component({
3
+  selector: "app-dialog-bx",
4
+  templateUrl: "./dialog-bx.component.html",
5
+  styleUrls: ["./dialog-bx.component.less"],
6
+})
7
+export class DialogBxComponent implements OnInit {
8
+  @Output() hideDelModalEvent = new EventEmitter<any>();
9
+  @Output() confirmDelEvent = new EventEmitter<any>();
10
+  @Output() cancelDelEvent = new EventEmitter<any>();
11
+  @Input() btnLoading: boolean = false;
12
+  @Input() cancenlLoading: boolean = false;
13
+  @Input() delModal: boolean = false;
14
+  @Input() confirmTxt: string = "是";
15
+  @Input() cancelTxt: string = "否";
16
+  @Input() deptDto: object = {};
17
+  @Input() validateBxForm: object = {};
18
+  @Input() extraData: object = {};
19
+  constructor() {}
20
+
21
+  officeInfo:any = {}
22
+
23
+  ngOnInit() {
24
+    console.log(this.extraData);
25
+    console.log(this.deptDto);
26
+    console.log(this.validateBxForm);
27
+  }
28
+
29
+  // 隐藏
30
+  hideDelModal(e: string) {
31
+    this.hideDelModalEvent.emit(e);
32
+  }
33
+
34
+  // 确认
35
+  confirmDel() {
36
+    this.confirmDelEvent.emit();
37
+  }
38
+
39
+  // 取消|否
40
+  cancel() {
41
+    this.cancelDelEvent.emit();
42
+  }
43
+}

+ 1 - 1
src/app/share/mask/mask.component.less

@@ -5,5 +5,5 @@
5 5
   width: 100vw;
6 6
   height: 100vh;
7 7
   background-color: rgba(0, 0, 0, 0.4);
8
-  z-index: 99;
8
+  z-index: 9999;
9 9
 }

+ 3 - 0
src/app/share/share.module.ts

@@ -19,6 +19,7 @@ import { DateTransformPipe } from '../pipes/date-transform.pipe';
19 19
 import { AppraiseDetailComponent } from './appraise-detail/appraise-detail.component';
20 20
 import { OrderDetailComponent } from './order-detail/order-detail.component';
21 21
 import { DialogDeleteComponent } from './dialog-delete/dialog-delete.component';
22
+import { DialogBxComponent } from './dialog-bx/dialog-bx.component';
22 23
 import { DialogSurgeryComponent } from './dialog-surgery/dialog-surgery.component';
23 24
 import { MaskComponent } from './mask/mask.component';
24 25
 import { GenerateFloorComponent } from './generate-floor/generate-floor.component';
@@ -66,6 +67,7 @@ import { OutgoingRecordDetailComponent } from './outgoing-record-detail/outgoing
66 67
     OutgoingRecordDetailComponent,
67 68
     DateTransformPipe,
68 69
     DialogDeleteComponent,
70
+    DialogBxComponent,
69 71
     DialogSurgeryComponent,
70 72
     MaskComponent,
71 73
     GenerateFloorComponent,
@@ -123,6 +125,7 @@ import { OutgoingRecordDetailComponent } from './outgoing-record-detail/outgoing
123 125
     OverlayscrollbarsModule,
124 126
     DateTransformPipe,
125 127
     DialogDeleteComponent,
128
+    DialogBxComponent,
126 129
     DialogSurgeryComponent,
127 130
     MaskComponent,
128 131
     GenerateFloorComponent,

+ 101 - 57
src/app/views/hushijiandan/hushijiandan.component.html

@@ -250,7 +250,7 @@
250 250
                     nzTooltipPlacement="right"
251 251
                     [nzMouseEnterDelay]="1"
252 252
                     (mouseenter)="getRecentInfo(item.patientCode)"
253
-                    >{{ item.patientName }}({{ item.bedNum }})</span
253
+                    >{{ item.patientName }}({{ currentDept.typeValue == 'outpatientService' ? item.cardNo : item.bedNum }})</span
254 254
                   >
255 255
                 </div>
256 256
                 <div
@@ -279,10 +279,13 @@
279 279
                     "
280 280
                   ></span>
281 281
                   <span nz-col nzSpan="2"></span>
282
-                  <span nz-col nzSpan="12">{{ item.residenceNo }}</span>
283
-                  <span nz-col nzSpan="6" class="txtR"
284
-                    >待检 {{ item.watingCount }}</span
285
-                  >
282
+                  <ng-container *ngIf="currentDept.typeValue == 'outpatientService'">
283
+                    <span nz-col nzSpan="18">{{ item.identityCardNo }}</span>
284
+                  </ng-container>
285
+                  <ng-container *ngIf="!(currentDept.typeValue == 'outpatientService')">
286
+                    <span nz-col nzSpan="12">{{ item.residenceNo }}</span>
287
+                    <span nz-col nzSpan="6" class="txtR">待检 {{ item.watingCount }}</span>
288
+                  </ng-container>
286 289
                   <span nz-col nzSpan="2"></span>
287 290
                 </div>
288 291
                 <div
@@ -296,10 +299,13 @@
296 299
                   "
297 300
                 >
298 301
                   <span nz-col nzSpan="2"></span>
299
-                  <span nz-col nzSpan="12">{{ item.residenceNo }}</span>
300
-                  <span nz-col nzSpan="6" class="txtR"
301
-                    >待检 {{ item.watingCount }}</span
302
-                  >
302
+                  <ng-container *ngIf="currentDept.typeValue == 'outpatientService'">
303
+                    <span nz-col nzSpan="18">{{ item.identityCardNo }}</span>
304
+                  </ng-container>
305
+                  <ng-container *ngIf="!(currentDept.typeValue == 'outpatientService')">
306
+                    <span nz-col nzSpan="12">{{ item.residenceNo }}</span>
307
+                    <span nz-col nzSpan="6" class="txtR">待检 {{ item.watingCount }}</span>
308
+                  </ng-container>
303 309
                   <span nz-col nzSpan="2"></span>
304 310
                 </div>
305 311
                 <div class="btnNews">
@@ -1463,14 +1469,7 @@
1463 1469
                                       >
1464 1470
                                         <tbody>
1465 1471
                                           <tr
1466
-                                            (click)="
1467
-                                              showBxModal(
1468
-                                                data,
1469
-                                                '您的报修为“' +
1470
-                                                  data.content +
1471
-                                                  '” 是否确认报修?'
1472
-                                              )
1473
-                                            "
1472
+                                            (click)="showBxModal(data)"
1474 1473
                                             *ngFor="
1475 1474
                                               let data of quickBxlbList;
1476 1475
                                               let i = index
@@ -1478,11 +1477,11 @@
1478 1477
                                           >
1479 1478
                                             <td>{{ data.content || "无" }}</td>
1480 1479
                                           </tr>
1481
-                                          <tr (click)="checkTable('kjbx')">
1480
+                                          <!-- <tr (click)="checkTable('kjbx')">
1482 1481
                                             <td class="moreBx">
1483 1482
                                               更多报修&gt;&gt;
1484 1483
                                             </td>
1485
-                                          </tr>
1484
+                                          </tr> -->
1486 1485
                                         </tbody>
1487 1486
                                       </nz-table>
1488 1487
                                     </ng-template>
@@ -1642,13 +1641,12 @@
1642 1641
                     >
1643 1642
                       <thead>
1644 1643
                         <tr class="thead">
1645
-                          <th nzWidth="6%">序号</th>
1644
+                          <th nzWidth="5%">#</th>
1646 1645
                           <th nzWidth="12%">患者姓名<br>住院号</th>
1647 1646
                           <th nzWidth="12%">手术时间</th>
1648 1647
                           <th nzWidth="20%">申请科室</th>
1649
-                          <th>手术名称</th>
1650
-                          <th nzWidth="15%">状态</th>
1651
-                          <th nzWidth="20%" *ngIf="currentDept.typeValue == 'surgery'">操作</th>
1648
+                          <th>手术名称<br>状态</th>
1649
+                          <th nzWidth="30%" *ngIf="currentDept.typeValue == 'surgery'">操作</th>
1652 1650
                         </tr>
1653 1651
                       </thead>
1654 1652
                       <tbody>
@@ -1657,8 +1655,7 @@
1657 1655
                           <td>{{ item.patientDTO ? item.patientDTO.patientName : '' }}({{ item.patientDTO ? item.patientDTO.bedNum : '' }})<br>{{ item.patientDTO ? item.patientDTO.residenceNo : '' }}</td>
1658 1656
                           <td>{{ item.applyDate | date:'MM-dd HH:mm' }}</td>
1659 1657
                           <td>{{ item.areaDeptDTO ? (deptDisplay == 2 ? item.areaDeptDTO.deptalias : item.areaDeptDTO.dept) : '' }}</td>
1660
-                          <td>{{ item.surgeryName }}</td>
1661
-                          <td>{{ item.state?.name }}</td>
1658
+                          <td>{{ item.surgeryName }}<br>{{ item.state?.name }}</td>
1662 1659
                           <td *ngIf="currentDept.typeValue == 'surgery'">
1663 1660
                             <!-- 手术状态是【手术安排】和【接患者中】,并且【是否开启手术即将开始通知】开启 -->
1664 1661
                             <button class="btn1 mr8 mb8 mt8" (click)="surgeryBegin($event, item)" *ngIf="item.state && (item.state.value == 3 || item.state.value == 7) && surgeryConfigs.surgeryBegin == 1">即将开始</button>
@@ -1668,6 +1665,7 @@
1668 1665
                             <button class="btn1 mr8 mb8 mt8" (click)="sendWard($event, item)" *ngIf="item.patientDTO && surgeryConfigs && surgeryConfigs.remandClinical == 1 && item.state && item.state.value == 8">送回病房</button>
1669 1666
                             <!-- 手术状态是【手术中】,并且【是否开通送回苏醒室】开启 -->
1670 1667
                             <button class="btn1 mr8 mb8 mt8" (click)="sendAwakeningRoom($event, item)" *ngIf="item.patientDTO && surgeryConfigs && surgeryConfigs.remandRecovery == 1 && item.state && item.state.value == 8">送回苏醒间</button>
1668
+                            <button class="btn1 mr8 mb8 mt8" (click)="createOrder($event, item)">一键建单</button>
1671 1669
                           </td>
1672 1670
                         </tr>
1673 1671
                       </tbody>
@@ -2099,7 +2097,6 @@
2099 2097
                         class="formItem"
2100 2098
                         [nzDropdownMatchSelectWidth]="false"
2101 2099
                         [nzShowSearch]="false"
2102
-                        nzAllowClear
2103 2100
                         nzPlaceHolder="请选择状态"
2104 2101
                         [(ngModel)]="incidentStateId"
2105 2102
                       >
@@ -2113,14 +2110,12 @@
2113 2110
                   </div>
2114 2111
 
2115 2112
                   <div class="btns">
2116
-                    <button
2117
-                      nz-button
2118
-                      nzType="primary"
2119
-                      nzGhost
2120
-                      (click)="getBxlb(true)"
2121
-                    >
2113
+                    <button nz-button nzType="primary" nzGhost (click)="getBxlb(true)">
2122 2114
                       搜索
2123 2115
                     </button>
2116
+                    <button nz-button nzType="primary" nzGhost (click)="showBxModal()">
2117
+                      新增
2118
+                    </button>
2124 2119
                   </div>
2125 2120
                 </div>
2126 2121
                 <div class="table">
@@ -2134,13 +2129,12 @@
2134 2129
                     >
2135 2130
                       <thead>
2136 2131
                         <tr class="thead">
2137
-                          <th nzWidth="7%">序号</th>
2138
-                          <th nzWidth="16%">报修内容</th>
2139
-                          <th nzWidth="16%">报修时间</th>
2140
-                          <th nzWidth="16%">报修科室</th>
2141
-                          <th nzWidth="10%">状态</th>
2142
-                          <th nzWidth="20%">维修人</th>
2143
-                          <th nzWidth="15%"></th>
2132
+                          <th nzWidth="5%">序号</th>
2133
+                          <th nzWidth="19%">报修内容</th>
2134
+                          <th nzWidth="19%">报修时间</th>
2135
+                          <th nzWidth="19%">状态</th>
2136
+                          <th nzWidth="19%">维修人</th>
2137
+                          <th nzWidth="19%"></th>
2144 2138
                         </tr>
2145 2139
                       </thead>
2146 2140
                       <tbody>
@@ -2148,25 +2142,16 @@
2148 2142
                           <td>{{ i + 1 }}</td>
2149 2143
                           <td>{{ data.description || "无" }}</td>
2150 2144
                           <td>
2151
-                            {{ data.createTime | date: "MM-dd HH:mm" }}
2152
-                          </td>
2153
-                          <td>
2154
-                            {{ data.departmentDTO ? data.departmentDTO.dept : "无" }}
2145
+                            {{ data.startDate | date: "yyyy-MM-dd HH:mm" }}
2155 2146
                           </td>
2156 2147
                           <td>{{ data.state?data.state.name:'无' }}</td>
2157 2148
                           <td>
2158
-                            {{
2159
-                              data.incident
2160
-                                ? data.incident.handlingPersonnelUser
2161
-                                  ? data.incident.handlingPersonnelUser.name + (data.incident.handlingPersonnelUser.phone?'('+ data.incident.handlingPersonnelUser.phone +')':'')
2162
-                                  : "无"
2163
-                                : "无"
2164
-                            }}
2149
+                            {{ data.handlingPersonnelUser ? data.handlingPersonnelUser.name + (data.handlingPersonnelUser.phone?'('+ data.handlingPersonnelUser.phone +')':'') : "无"}}
2165 2150
                           </td>
2166 2151
                           <td>
2167 2152
                             <!-- <button (click)="viewBx(data)">查看</button> -->
2168 2153
                             <button class="btn1 mr8 mb8 mt8" (click)="detailBx(data)">查看</button>
2169
-                            <button class="btn1 mr8 mb8 mt8" (click)="showAppraiseBx(data.id)" *ngIf="data.state.name  == '待评价'">评价</button>
2154
+                            <button class="btn1 mr8 mb8 mt8" (click)="showAppraiseBx(data.id)" *ngIf="data.state && data.state.value == 'close' && !data.wxdegree">评价</button>
2170 2155
                           </td>
2171 2156
                         </tr>
2172 2157
                       </tbody>
@@ -3678,6 +3663,19 @@
3678 3663
     ></i>
3679 3664
   </div>
3680 3665
 </div>
3666
+<!-- 报修提示模态框 -->
3667
+<app-dialog-bx
3668
+  *ngIf="reqModal"
3669
+  [delModal]="reqModal"
3670
+  (hideDelModalEvent)="hideReqModal()"
3671
+  [btnLoading]="btnLoading"
3672
+  [cancenlLoading]="cancenlLoading"
3673
+  [deptDto]="deptDto"
3674
+  [extraData]="extraData"
3675
+  [validateBxForm]="validateBxForm"
3676
+  (confirmDelEvent)="confirmReq()"
3677
+  (cancelDelEvent)="cancelReq()"
3678
+></app-dialog-bx>
3681 3679
 <!-- 删除意见模态框 -->
3682 3680
 <app-dialog-delete
3683 3681
   [delModal]="delAdviceModal"
@@ -3729,21 +3727,67 @@
3729 3727
 >
3730 3728
   <div class="modalBody">
3731 3729
     <div class="title">
3732
-      提示<i
3730
+      一键报修<i
3733 3731
         class="icon_transport transport-guanbi"
3734 3732
         (click)="hideBxModal()"
3735 3733
       ></i>
3736 3734
     </div>
3737
-    <div class="content">
3738
-      <div class="icon"><i class="icon_transport transport-wenhao"></i></div>
3739
-      <div class="defeat">{{ tipsMsg2 }}</div>
3740
-    </div>
3735
+    <overlay-scrollbars #osComponentRef5 class="content">
3736
+      <form nz-form [formGroup]="validateBxForm" class="bxFormAdd" (ngSubmit)="confirmBx()">
3737
+        <nz-form-item>
3738
+          <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="description">故障描述</nz-form-label>
3739
+          <nz-form-control>
3740
+            <nz-input-group style="width:442px;">
3741
+              <textarea nz-input formControlName="description" rows="4" placeholder="请输入故障描述"></textarea>
3742
+            </nz-input-group>
3743
+          </nz-form-control>
3744
+        </nz-form-item>
3745
+        <nz-form-item>
3746
+          <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="contacts">联系人</nz-form-label>
3747
+          <nz-form-control style="display: inline-block;">
3748
+            <nz-input-group>
3749
+              <input style="width:168px;" class="mr8" nz-input formControlName="contacts" placeholder="请输入联系人" />
3750
+            </nz-input-group>
3751
+          </nz-form-control>
3752
+
3753
+          <nz-form-label nzRequired nzFor="contactsInformation">联系电话</nz-form-label>
3754
+          <nz-form-control style="display: inline-block;">
3755
+            <nz-input-group>
3756
+              <input style="width:185px;" nz-input formControlName="contactsInformation" placeholder="请输入联系电话" />
3757
+            </nz-input-group>
3758
+          </nz-form-control>
3759
+        </nz-form-item>
3760
+        <nz-form-item style="display: inline-block;vertical-align:bottom;" class="last">
3761
+          <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="building">详细地址</nz-form-label>
3762
+          <nz-form-control style="display: inline-block;">
3763
+            <nz-select [nzDropdownMatchSelectWidth]="false" style="width:120px;" class="mr8" type="building"
3764
+              nzShowSearch formControlName="building" nzPlaceHolder="请选择楼栋"
3765
+              (ngModelChange)="changeBuilding($event)">
3766
+              <nz-option [nzLabel]="data.area" [nzValue]="data.id" *ngFor="let data of buildings">
3767
+              </nz-option>
3768
+            </nz-select>
3769
+          </nz-form-control>
3770
+          <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="floor" hidden></nz-form-label>
3771
+          <nz-form-control style="display: inline-block;">
3772
+            <nz-select [nzDropdownMatchSelectWidth]="false" style="width:120px;" class="mr8" type="floor" nzShowSearch
3773
+             formControlName="floor" nzPlaceHolder="请选择楼层" [nzLoading]="floorLoading">
3774
+              <nz-option [nzLabel]="data.place" [nzValue]="data.id" *ngFor="let data of floors"></nz-option>
3775
+            </nz-select>
3776
+          </nz-form-control>
3777
+          <nz-form-label [nzSm]="4" [nzXs]="4" nzRequired nzFor="officeAddress" hidden></nz-form-label>
3778
+          <nz-form-control style="display: inline-block;">
3779
+            <nz-input-group>
3780
+              <input style="width:185px;" nz-input formControlName="officeAddress" placeholder="请输入详细位置" />
3781
+            </nz-input-group>
3782
+          </nz-form-control>
3783
+        </nz-form-item>
3784
+      </form>
3785
+    </overlay-scrollbars>
3741 3786
     <div class="display_flex justify-content_flex-center">
3742 3787
       <button
3743 3788
         nz-button
3744 3789
         nzType="primary"
3745 3790
         (click)="confirmBx()"
3746
-        [nzLoading]="loading6"
3747 3791
       >
3748 3792
         确认
3749 3793
       </button>

+ 18 - 4
src/app/views/hushijiandan/hushijiandan.component.less

@@ -1884,9 +1884,24 @@
1884 1884
   background: rgba(0, 0, 0, 0.4);
1885 1885
   z-index: 99;
1886 1886
 
1887
+  .bxFormAdd{
1888
+    padding: 8px 8px 4px;
1889
+  }
1890
+
1891
+  ::ng-deep .ant-form-item{
1892
+    margin-bottom: 8px!important;
1893
+  }
1894
+
1895
+  ::ng-deep .ant-form-item.last{
1896
+    margin-bottom: 0!important;
1897
+  }
1898
+
1899
+  ::ng-deep .ant-form-item-label{
1900
+    text-align: left!important;
1901
+  }
1902
+
1887 1903
   .modalBody {
1888
-    width: 500px;
1889
-    height: 250px;
1904
+    width: 590px;
1890 1905
     background: #fff;
1891 1906
     border-radius: 5px;
1892 1907
     padding: 10px 20px;
@@ -1910,8 +1925,7 @@
1910 1925
     }
1911 1926
 
1912 1927
     .content {
1913
-      width: 460px;
1914
-      height: 147px;
1928
+      width: 550px;
1915 1929
       background: #f9fafb;
1916 1930
       border: 1px solid @hs_border_color;
1917 1931
       border-radius: 5px;

+ 259 - 54
src/app/views/hushijiandan/hushijiandan.component.ts

@@ -74,6 +74,11 @@ export class HushijiandanComponent implements OnInit {
74 74
     static: false,
75 75
   })
76 76
   osComponentRef4: OverlayScrollbarsComponent;
77
+  @ViewChild("osComponentRef5", {
78
+    read: OverlayScrollbarsComponent,
79
+    static: false,
80
+  })
81
+  osComponentRef5: OverlayScrollbarsComponent;
77 82
   @ViewChild("osComponentRef6", {
78 83
     read: OverlayScrollbarsComponent,
79 84
     static: false,
@@ -1086,15 +1091,107 @@ export class HushijiandanComponent implements OnInit {
1086 1091
       }
1087 1092
     );
1088 1093
   }
1094
+  // 初始化新增form表单
1095
+  initBxForm(content) {
1096
+    this.validateBxForm = this.fb.group({
1097
+      description: [content || null, [Validators.required]],
1098
+      building: [null, [Validators.required]],
1099
+      floor: [null, [Validators.required]],
1100
+      officeAddress: [null, [Validators.required]],
1101
+      contacts: [this.loginUser.name, [Validators.required]],
1102
+      contactsInformation: [this.loginUser.phone, [Validators.required]],
1103
+    });
1104
+    this.getDeptByCode(this.currentDept.pcode);
1105
+  }
1106
+  // 根据科室Code获取详情
1107
+  deptDto:any = {};
1108
+  getDeptByCode(code){
1109
+    this.mainService
1110
+      .fetchListBx("department", {
1111
+        idx: 0,
1112
+        sum: 1,
1113
+        department: {
1114
+          eqCode: code,
1115
+        }
1116
+      })
1117
+      .subscribe((data:any) => {
1118
+        let list = data.list || [];
1119
+        this.deptDto = list.length > 0 ? list[0] : {};
1120
+        console.log(this.deptDto);
1121
+        this.changeHosp();
1122
+        // 回显楼栋
1123
+        if(this.deptDto.place){
1124
+          this.validateBxForm.controls.building.setValue(this.deptDto.place.area.id);
1125
+        }
1126
+
1127
+        // 回显楼层
1128
+        if(this.deptDto.place){
1129
+          this.validateBxForm.controls.floor.setValue(this.deptDto.place.id);
1130
+        }
1131
+      });
1132
+  }
1133
+  // 切换院区选项
1134
+  buildings: any = []; //楼栋
1135
+  changeHosp() {
1136
+    this.validateBxForm.controls.building.setValue(null);
1137
+    this.buildings = [];
1138
+    let data = {
1139
+      idx: 0,
1140
+      sum: 9999,
1141
+      area: {
1142
+        branch: this.deptDto.branch,
1143
+      }
1144
+    };
1145
+    this.mainService
1146
+      .fetchListBx("area", data)
1147
+      .subscribe((data:any) => {
1148
+        this.buildings = data.list || [];
1149
+        this.floors = [];
1150
+        this.message.remove(this.maskFlag);
1151
+        this.maskFlag = false;
1152
+      });
1153
+  }
1154
+
1155
+  // 切换楼栋信息
1156
+  floors: Array<any> = []; //楼层
1157
+  floorLoading: boolean = false;
1158
+  changeBuilding(buildingId) {
1159
+    if(!buildingId){
1160
+      return;
1161
+    }
1162
+    this.validateBxForm.controls.floor.setValue(null);
1163
+    this.validateBxForm.controls.officeAddress.setValue(null);
1164
+    this.floors = [];
1165
+
1166
+    let data = {
1167
+      idx: 0,
1168
+      sum: 9999,
1169
+      place: {
1170
+        area: { id: buildingId },
1171
+      }
1172
+    };
1173
+    this.floorLoading = true;
1174
+    this.mainService
1175
+      .fetchListBx("place", data)
1176
+      .subscribe((data:any) => {
1177
+        this.floorLoading = false;
1178
+        this.message.remove(this.maskFlag);
1179
+        this.maskFlag = false;
1180
+        this.floors = data.list || [];
1181
+      });
1182
+  }
1089 1183
   // 是否确定报修模态框
1090 1184
   bxModal: boolean = false; //模态框
1091 1185
   loading6 = false;
1092
-  tipsMsg2: string; //提示框信息
1093 1186
   coopBx: any; //当前操作列
1094
-  showBxModal(data: any, tipsMsg2: string) {
1187
+  validateBxForm: FormGroup; //新增/编辑表单
1188
+  showBxModal(data: any) {
1189
+    this.maskFlag = this.message.loading("正在加载中..", {
1190
+      nzDuration: 0,
1191
+    }).messageId;
1095 1192
     this.bxModal = true;
1096
-    this.coopBx = data;
1097
-    this.tipsMsg2 = tipsMsg2;
1193
+    this.coopBx = data || {};
1194
+    this.initBxForm(this.coopBx.content);
1098 1195
   }
1099 1196
   // 隐藏模态框
1100 1197
   hideBxModal() {
@@ -1102,46 +1199,114 @@ export class HushijiandanComponent implements OnInit {
1102 1199
   }
1103 1200
   // 确认
1104 1201
   confirmBx() {
1105
-    this.loading6 = true;
1106
-    this.mainService.wxbx({}).subscribe((result) => {
1107
-      if ((result as any).status == 200) {
1108
-        let bxcode = (result as any).data; //生成微信报修号
1109
-        let postData: any = {
1110
-          verification: "true",
1111
-          incident: {
1112
-            branch:this.loginUser.currentHospital.id,
1113
-            deptId:this.loginUser.dept.id,
1114
-            // contacts: this.loginUser.name,
1115
-            // contactsInformation: this.loginUser.phone,
1116
-            description: this.coopBx.content,
1117
-            requester: { account: this.loginUser.account },
1118
-            sourceType: "wechatUserIncident",
1119
-            fileUrl: "url",
1120
-            bxcode,
1121
-          },
1122
-          loginUser: {
1123
-            account: this.loginUser.account,
1124
-            id: this.loginUser.id,
1125
-          },
1126
-        };
1127
-        if (this.coopBx.category) {
1128
-          postData.incident.categoryId = this.coopBx.category.id;
1129
-        }
1130
-        this.mainService.addWxIncident(postData).subscribe((res) => {
1131
-          this.loading6 = false;
1132
-          this.bxModal = false;
1133
-          if ((res as any).state == 200) {
1134
-            this.showPromptModal("提交", true, "");
1135
-            this.checkTable("bxlb");
1136
-          } else {
1137
-            this.showPromptModal("提交", false, (res as any).msg);
1138
-          }
1139
-        });
1140
-      } else {
1141
-        this.loading6 = false;
1142
-        this.showPromptModal("提交", false, "");
1202
+    for (const i in this.validateBxForm.controls) {
1203
+      this.validateBxForm.controls[i].markAsDirty();
1204
+      this.validateBxForm.controls[i].updateValueAndValidity();
1205
+    }
1206
+    if (this.validateBxForm.invalid){
1207
+      this.message.error('请填写必填字段!');
1208
+      return;
1209
+    };
1210
+    if (!this.deptDto.id){
1211
+      this.message.error('数据异常,无法建单!');
1212
+      return;
1213
+    };
1214
+    this.showReqModal();
1215
+  }
1216
+
1217
+  // 报修
1218
+  // type, 1是,0否
1219
+  async confirmBxNext(type){
1220
+    this.maskFlag = this.message.loading("正在加载中..", {
1221
+      nzDuration: 0,
1222
+    }).messageId;
1223
+    if(type == 1){
1224
+      this.btnLoading = true;
1225
+      let loginUser:any = {
1226
+        account: this.loginUser.account,
1227
+      };
1228
+      if(this.deptDto.branch){
1229
+        loginUser.branch = { id: this.deptDto.branch };
1143 1230
       }
1144
-    });
1231
+      if(this.deptDto){
1232
+        loginUser.dept = {id: this.deptDto.id};
1233
+      }
1234
+      if(this.validateBxForm.value.contacts){
1235
+        loginUser.name = this.validateBxForm.value.contacts;
1236
+      }
1237
+      if(this.validateBxForm.value.floor){
1238
+        loginUser.place = {id: this.validateBxForm.value.floor, area: { id: this.validateBxForm.value.building }};
1239
+      }
1240
+      if(this.validateBxForm.value.officeAddress){
1241
+        loginUser.houseNumber = this.validateBxForm.value.officeAddress;
1242
+      }
1243
+      if(this.validateBxForm.value.contactsInformation){
1244
+        loginUser.phone = this.validateBxForm.value.contactsInformation;
1245
+      }
1246
+      let result:any = await this.mainService.saveUser({loginUser}).toPromise();
1247
+      console.log(result);
1248
+      if(result.state != 200){
1249
+        this.hideReqModal();
1250
+        this.btnLoading = false;
1251
+        this.message.remove(this.maskFlag);
1252
+        this.maskFlag = false;
1253
+        this.message.error(result.msg);
1254
+        return;
1255
+      }
1256
+    }else{
1257
+      this.cancenlLoading = true;
1258
+    }
1259
+    this.mainService.getDictionaryByITSM({key: "incident_source", type: "list"}).subscribe((source:any) => {
1260
+      let incidentSourceList = source.data || [];
1261
+      let im = incidentSourceList.find(v => v.value === 'im');
1262
+      this.mainService.wxbx({}).subscribe((result) => {
1263
+        if ((result as any).status == 200) {
1264
+          let bxcode = (result as any).data; //生成微信报修号
1265
+          let postData: any = {
1266
+            incident: {
1267
+              "incidentsign": bxcode,
1268
+              "deleteFlag": 0,
1269
+              "department": { id: this.deptDto.id },
1270
+              "contactsInformation": this.validateBxForm.value.contactsInformation,
1271
+              "contacts": this.validateBxForm.value.contacts,
1272
+              "branch": this.deptDto.branch,
1273
+              "area": { id: this.validateBxForm.value.building },
1274
+              "place": { id: this.validateBxForm.value.floor },
1275
+              "houseNumber": this.validateBxForm.value.officeAddress,
1276
+              "source": im,
1277
+              "description": this.validateBxForm.value.description,
1278
+              "repairType": 2,
1279
+              "requester": this.loginUser,
1280
+              "acceptUser": this.loginUser,
1281
+            },
1282
+            loginUser: {
1283
+              account: this.loginUser.account,
1284
+              id: this.loginUser.id,
1285
+            }
1286
+          };
1287
+          if (this.coopBx.category) {
1288
+            postData.incident.category = this.coopBx.category;
1289
+          }
1290
+          this.mainService.addWxIncident(postData).subscribe((res) => {
1291
+            this.btnLoading = false;
1292
+            this.cancenlLoading = false;
1293
+            this.message.remove(this.maskFlag);
1294
+            this.maskFlag = false;
1295
+            this.bxModal = false;
1296
+            this.hideReqModal();
1297
+            if ((res as any).state == 200) {
1298
+              this.showPromptModal("提交", true, "");
1299
+              this.checkTable("bxlb");
1300
+            } else {
1301
+              this.showPromptModal("提交", false, (res as any).msg);
1302
+            }
1303
+          });
1304
+        } else {
1305
+          this.btnLoading = false;
1306
+          this.showPromptModal("提交", false, "");
1307
+        }
1308
+      });
1309
+    })
1145 1310
   }
1146 1311
 
1147 1312
   // 获取星级
@@ -1448,11 +1613,11 @@ export class HushijiandanComponent implements OnInit {
1448 1613
   // 获取患者信息
1449 1614
   snum = 0;
1450 1615
   getPatient(e?) {
1451
-    if ((this.currentDept.typeValue == "checkRoom2" || this.currentDept.typeValue == "outpatientDept" || this.currentDept.typeValue == "checkRoom" || this.currentDept.typeValue == "outpatientService") && !this.tabSearchCont) {
1616
+    if ((this.currentDept.typeValue == "outpatientDept" || this.currentDept.typeValue == "checkRoom" || this.currentDept.typeValue == "outpatientService") && !this.tabSearchCont) {
1452 1617
       this.pLoading = false;
1453 1618
       this.patientList = [];
1454 1619
       this.infoLength = 0;
1455
-      return; //护士端如果登录后如果科室类型为“检查科室”、“门诊科室”、“检验科室”、“门诊服务点”,默认不显示患者信息
1620
+      return; //护士端如果登录后如果科室类型为“门诊科室”、“检验科室”、“门诊服务点”,默认不显示患者信息
1456 1621
     }
1457 1622
     this.pLoading = true;
1458 1623
     let postData = {
@@ -1481,6 +1646,19 @@ export class HushijiandanComponent implements OnInit {
1481 1646
       postData["patient"]["parentIdOnly"] = true;
1482 1647
       postData["patient"]["recoveryDept"] = this.loginUserDeptId;
1483 1648
       postData["patient"]["recoveryDeptDTO"] = {keyWord: '1'};
1649
+    }else if(this.currentDept.typeValue == "checkRoom2"){
1650
+      // 患者信息
1651
+      postData["patient"] = {
1652
+        keyWord: e ? e : this.tabSearchCont,
1653
+      };
1654
+      // 查询父级科室患者
1655
+      postData["patient"]["parentIdOnly"] = true;
1656
+      if (this.tabSearchCont) {
1657
+        delete postData["patient"]["department"]; //搜索范围为全院在院患者
1658
+        delete postData["patient"]["checkTempDept"];
1659
+      } else {
1660
+        postData["patient"]["checkTempDept"] = { id: this.loginUserDeptId };
1661
+      }
1484 1662
     }else{
1485 1663
       // 患者信息
1486 1664
       postData["patient"] = {
@@ -1950,6 +2128,12 @@ export class HushijiandanComponent implements OnInit {
1950 2128
     this.sendAwakeningRoomInfo = `您是否确定将<span style="color:red;">${item.patientDTO ? item.patientDTO.patientName : ''}</span>患者送往<span style="color:red;">${this.surgeryConfigs.recoveryDeptDTO ? (this.deptDisplay == 2 ? this.surgeryConfigs.recoveryDeptDTO.deptalias : this.surgeryConfigs.recoveryDeptDTO.dept) : ''}</span>科室吗?`
1951 2129
   }
1952 2130
 
2131
+  // 手术排程信息-一键建单
2132
+  createOrder(e, item){
2133
+    e.stopPropagation();
2134
+    this.newPatientOrder(item.patientDTO);
2135
+  }
2136
+
1953 2137
   // 患者信息一键建单
1954 2138
   patientModal: boolean = false; //患者信息一键建单模态框
1955 2139
   patientMsg; //患者信息
@@ -3628,14 +3812,16 @@ export class HushijiandanComponent implements OnInit {
3628 3812
   bxlbLoading = false;
3629 3813
   getBxlb(idx, isInitState = false) {
3630 3814
     // 获取事件状态
3631
-    let postData = { type: "list", key: "wxincident_state" };
3815
+    let postData = { type: "list", key: "incident_status" };
3632 3816
     this.iLoading = true;
3633 3817
     this.mainService.getDictionaryByITSM(postData).subscribe((data: any) => {
3634 3818
       this.iLoading = false;
3635 3819
       if (data.status == 200) {
3636
-        this.incidentStateList = data.data || [];
3820
+        let incidentStateList = data.data || [];
3821
+        incidentStateList.unshift({id: 0, name: '全部', value: 0});
3822
+        this.incidentStateList = incidentStateList;
3637 3823
         if(isInitState){
3638
-          let valueObj2 = this.incidentStateList.find(v => v.value == 2);
3824
+          let valueObj2 = this.incidentStateList.find(v => v.value == 0);
3639 3825
           this.incidentStateId = valueObj2 ? valueObj2.id : undefined;
3640 3826
         }
3641 3827
 
@@ -3647,17 +3833,19 @@ export class HushijiandanComponent implements OnInit {
3647 3833
         this.bxlbLoading = true;
3648 3834
         this.mainService
3649 3835
           .listWxIncident({
3650
-            deptId: current.user.dept.id,
3651
-            // assignee: current.user.account,
3652
-            state: this.incidentStateId ? this.incidentStateId : undefined,
3653 3836
             idx: this.bxlbPageIndex - 1,
3654 3837
             sum: this.bxlbPageSize,
3838
+            incident: {
3839
+              // assignee: current.user.account,
3840
+              statusId: this.incidentStateId || undefined,
3841
+              department: { pcode: current.user.dept.pcode },
3842
+            }
3655 3843
           })
3656 3844
           .subscribe((data: any) => {
3657 3845
             this.bxlbLoading = false;
3658
-            this.bxlbList = data.data || [];
3659
-            this.bxlbListLength = data.resultCount || 0;
3660
-            this.processing = data.resultCount || 0;
3846
+            this.bxlbList = data.list || [];
3847
+            this.bxlbListLength = data.totalNum || 0;
3848
+            this.processing = data.totalNum || 0;
3661 3849
           });
3662 3850
       }
3663 3851
     });
@@ -3821,6 +4009,23 @@ export class HushijiandanComponent implements OnInit {
3821 4009
   hideDelAdviceModal() {
3822 4010
     this.delAdviceModal = false;
3823 4011
   }
4012
+  // 报修提示框
4013
+  reqModal: boolean = false;
4014
+  extraData:any = {};
4015
+  showReqModal() {
4016
+    this.extraData.place = this.floors.find(v => v.id == this.validateBxForm.value.floor);
4017
+    // this.reqModal = true;
4018
+    this.confirmBxNext(0);
4019
+  }
4020
+  confirmReq() {
4021
+    this.confirmBxNext(1);
4022
+  }
4023
+  cancelReq() {
4024
+    this.confirmBxNext(0);
4025
+  }
4026
+  hideReqModal() {
4027
+    this.reqModal = false;
4028
+  }
3824 4029
   // 工单列表下拉筛选
3825 4030
   selectedType: null;
3826 4031
   changeOrderSel(e) {

+ 12 - 0
src/app/views/quilt-washing-trend-analysis/quilt-washing-trend-analysis.component.html

@@ -28,6 +28,18 @@
28 28
             <nz-option [nzLabel]="item.name" [nzValue]="item.value" *ngFor="let item of quarterList"></nz-option>
29 29
           </nz-select>
30 30
         </div>
31
+        <div class="searchItem">
32
+          <span class="label">被服种类</span>:
33
+          <nz-select style="width: 135px;" class="formItem" [nzDropdownMatchSelectWidth]="false" nzServerSearch nzShowSearch
34
+            (nzOnSearch)="changeClothesTypeId($event)" nzAllowClear nzPlaceHolder="请选择被服" [(ngModel)]="searchDto.clothesTypeId">
35
+            <ng-container *ngFor="let option of allClothesType">
36
+              <nz-option *ngIf="!isLoading" [nzLabel]="option.name" [nzValue]="option.id"></nz-option>
37
+            </ng-container>
38
+            <nz-option *ngIf="isLoading" nzDisabled nzCustomContent>
39
+              <i nz-icon nzType="loading" class="loading-icon"></i> 搜索中...
40
+            </nz-option>
41
+          </nz-select>
42
+        </div>
31 43
       </div>
32 44
       <div class="btns">
33 45
         <button nz-button nzType="primary" (click)='search()'>搜索</button>

+ 44 - 1
src/app/views/quilt-washing-trend-analysis/quilt-washing-trend-analysis.component.ts

@@ -6,6 +6,8 @@ import { MainService } from "../../services/main.service";
6 6
 import { DateService } from "../../services/date.service";
7 7
 import { MyServiceService } from "../../services/my-service.service";
8 8
 import { ToolService } from "../../services/tool.service";
9
+import { Subject } from 'rxjs';
10
+import { debounceTime } from 'rxjs/operators';
9 11
 
10 12
 @Component({
11 13
   selector: "app-quilt-washing-trend-analysis",
@@ -21,10 +23,16 @@ export class QuiltWashingTrendAnalysisComponent implements OnInit {
21 23
     private myService: MyServiceService,
22 24
     private tool: ToolService
23 25
   ) {}
24
-
26
+  allClothesType:any[] = [];
27
+  searchTimerSubject = new Subject();
25 28
   ngOnInit() {
29
+    this.searchTimerSubject.pipe(debounceTime(500)).subscribe((v) => {
30
+      let fun = v[0];
31
+      fun.call(this, v[1]);
32
+    });
26 33
     this.coopBtns = this.tool.initCoopBtns(this.route);
27 34
     this.getAllHos();
35
+    this.getAllClothesType();
28 36
     this.changeDateType();
29 37
   }
30 38
 
@@ -34,6 +42,7 @@ export class QuiltWashingTrendAnalysisComponent implements OnInit {
34 42
     year: +format(new Date(), "yyyy"),//季度-年
35 43
     quarter: getQuarter(new Date()),//季度
36 44
     tabType: 'YoY',//YoY/同比,MoM/环比
45
+    clothesTypeId: undefined, //选择被服
37 46
   }
38 47
 
39 48
   tabTypes = [
@@ -291,6 +300,38 @@ export class QuiltWashingTrendAnalysisComponent implements OnInit {
291 300
   search() {
292 301
     this.getData();
293 302
   }
303
+  // 用户输入搜索被服
304
+  isLoading = false;
305
+  changeClothesTypeId(e) {
306
+    this.searchTimer(this.getAllClothesType, e);
307
+  }
308
+  // 边输入边搜索节流阀
309
+  searchTimer(fun, e) {
310
+    this.isLoading = true;
311
+    this.searchTimerSubject.next([fun, e]);
312
+  }
313
+  // 获取被服
314
+  getAllClothesType(e?, those?) {
315
+    let that = those || this;
316
+    let postData: any = {
317
+      idx: 0,
318
+      sum: 10,
319
+      dictionaryTree: {
320
+        name: e || "",
321
+        hosId: that.hospital,
322
+        level: 2,
323
+        key: 'clothes_type',
324
+        deleted: 0,
325
+      },
326
+    };
327
+    that.isLoading = true;
328
+    that.mainService
329
+      .getFetchDataList("simple/data", "dictionaryTree", postData)
330
+      .subscribe((data) => {
331
+        that.allClothesType = data.list;
332
+        that.isLoading = false;
333
+      });
334
+  }
294 335
   // 重置
295 336
   reset() {
296 337
     this.searchDto = {
@@ -299,6 +340,7 @@ export class QuiltWashingTrendAnalysisComponent implements OnInit {
299 340
       year: +format(new Date(), "yyyy"),//季度-年
300 341
       quarter: getQuarter(new Date()),//季度
301 342
       tabType: 'YoY',//YoY/同比,MoM/环比
343
+      clothesTypeId: undefined, //选择被服
302 344
     }
303 345
     this.search();
304 346
   }
@@ -317,6 +359,7 @@ export class QuiltWashingTrendAnalysisComponent implements OnInit {
317 359
       tabType: this.searchDto.tabType,
318 360
       hosId: this.hospital,
319 361
       type: this.searchDto.dateType,
362
+      clothesTypeId: this.searchDto.clothesTypeId || undefined,
320 363
     };
321 364
     switch (postData.type) {
322 365
       case "day":

+ 1 - 1
src/app/views/washing-batch-view/washing-batch-view-routing.module.ts

@@ -4,7 +4,7 @@ import { WashingBatchViewComponent } from "./washing-batch-view.component";
4 4
 
5 5
 const routes: Routes = [
6 6
   {
7
-    path: ":id",
7
+    path: ":id/:createTime",
8 8
     component: WashingBatchViewComponent,
9 9
   },
10 10
 ];

+ 1 - 1
src/app/views/washing-batch-view/washing-batch-view.component.html

@@ -3,7 +3,7 @@
3 3
   <div class="head">
4 4
     <div class="head_logo">
5 5
       <div class="logo"><img [src]="tool.logoUrl" [alt]="tool.logoTitle"></div>
6
-      <div class="title">被服洗涤</div>
6
+      <div class="title">被服洗涤<span class="createTime">{{createTime|date:'yyyy-MM-dd HH:mm'}}</span></div>
7 7
     </div>
8 8
     <div class="red">请选择被服科室绑定分类和父级被服分类后进行搜索</div>
9 9
   </div>

+ 3 - 0
src/app/views/washing-batch-view/washing-batch-view.component.less

@@ -43,6 +43,9 @@
43 43
         font-weight: bold;
44 44
         color: @primary-color;
45 45
         margin-left: 30px;
46
+        .createTime{
47
+          margin-left: 24px;
48
+        }
46 49
       }
47 50
     }
48 51
 

+ 2 - 0
src/app/views/washing-batch-view/washing-batch-view.component.ts

@@ -64,6 +64,8 @@ export class WashingBatchViewComponent implements OnInit, AfterViewInit {
64 64
   rows:any[] = [['id', 'clothesState', ''], [], ['','件数', '费用/元']];
65 65
   totalData:any = {};
66 66
 
67
+  createTime = this.route.snapshot.paramMap.get("createTime");
68
+
67 69
   //搜索
68 70
   changeInpSubject = new Subject(); //防抖
69 71
   changeInp(e, type) {

+ 2 - 2
src/app/views/washing-batch/washing-batch.component.ts

@@ -131,7 +131,7 @@ export class WashingBatchComponent implements OnInit {
131 131
     if(data.batchState.value == 1){
132 132
       this.recallOrderShow = true;
133 133
     }else{
134
-      this.router.navigateByUrl("/washingBatchView/" + this.coopData.id);
134
+      this.router.navigateByUrl(`/washingBatchView/${this.coopData.id}/${this.coopData.createTime}`);
135 135
     }
136 136
   }
137 137
   // 设置为洗涤中
@@ -155,7 +155,7 @@ export class WashingBatchComponent implements OnInit {
155 155
   }
156 156
   // 立即查看
157 157
   recAndDel() {
158
-    this.router.navigateByUrl("/washingBatchView/" + this.coopData.id);
158
+    this.router.navigateByUrl(`/washingBatchView/${this.coopData.id}/${this.coopData.createTime}`);
159 159
   }
160 160
   // 取消
161 161
   closeRecallOrderModal() {

+ 7 - 7
upload/production.js

@@ -1,11 +1,11 @@
1 1
 const shell = require('shelljs')
2 2
 const path = require('path');
3 3
 const config = {
4
-  ip: "118.190.89.49", // ssh地址
4
+  ip: "47.113.226.223", // ssh地址
5 5
   username: "root", // ssh 用户名
6 6
   port: 22,      //端口
7
-  password: "dstech@123", // ssh 密码
8
-  path: '/home/itsm_v2_/web/pc', // 上传地址,删除地址
7
+  password: "DStech@123", // ssh 密码
8
+  path: '/home/itsm/project/html2/pc', // 上传地址,删除地址
9 9
   buildPath: '../dist/pc' // 本地打包后文件地址
10 10
 }
11 11
 let Client = require('ssh2-sftp-client');
@@ -38,13 +38,13 @@ function runTask() {
38 38
   const isNodeVersionLt17 = parseInt(process.version) < 17;
39 39
   const execStr = isNodeVersionLt17 ? 'npm run build' : 'npm run build:17';
40 40
   if (shell.exec(execStr).code == 0) {
41
-    if (shell.exec(`find dist -name '*.js' -print0 | xargs -0 gzip -k`).code == 0) {
42
-      if (shell.exec(`find dist -name '*.css' -print0 | xargs -0 gzip -k`).code == 0) {
41
+    // if (shell.exec(`find dist -name '*.js' -print0 | xargs -0 gzip -k`).code == 0) {
42
+      // if (shell.exec(`find dist -name '*.css' -print0 | xargs -0 gzip -k`).code == 0) {
43 43
         console.log("-----打包成功-----");
44 44
         //提交上传
45 45
         connectSSh();
46
-      }
47
-    }
46
+      // }
47
+    // }
48 48
   }
49 49
 }
50 50
 runTask()