maotao 3 日 前
コミット
8ab5b26cb4

+ 29 - 12
components/bigScreen/bigScreen.vue

@@ -516,8 +516,15 @@
516 516
       },
517 517
       // 底部扫描
518 518
       Scanning(qrcodePrefix = '') {
519
-				// 标本码
520
-				// this.ScanningCommon('', '250529338897@_1');
519
+				// 起点科室-综合交接
520
+				// this.ScanningCommon('', '87bdf1c7-1514-4fa8-8fa4-07f37c06bec7');
521
+				// 起点科室-非综合交接
522
+				// this.ScanningCommon('', '5465456466546546565');
523
+				// 终点科室-综合交接
524
+				// this.ScanningCommon('', '7868686868688');
525
+				
526
+				// 发起中转配送
527
+				this.ScanningCommon('', '1de40295-c7cc-4394-a2cd-18e0e7112d99');
521 528
 				
522 529
 				// 快捷建单-轮巡工单码
523 530
 				// this.ScanningCommon('', '3330ec8e-76eb-413e-b000-995f08d2ff96');
@@ -528,15 +535,15 @@
528 535
 				// 终点科室核对码--本部住院检验科
529 536
 				// this.ScanningCommon('', '95c5de27-c05f-11ea-8cfe-000c29097622');
530 537
 				
531
-        if (!this.SMFlag) {
532
-          return;
533
-        }
534
-        this.SMFlag = false;
535
-        SM().then((content) => {
536
-          this.ScanningCommon(qrcodePrefix, content);
537
-        }).catch(err => {
538
-          this.SMFlag = true;
539
-        });
538
+        // if (!this.SMFlag) {
539
+        //   return;
540
+        // }
541
+        // this.SMFlag = false;
542
+        // SM().then((content) => {
543
+        //   this.ScanningCommon(qrcodePrefix, content);
544
+        // }).catch(err => {
545
+        //   this.SMFlag = true;
546
+        // });
540 547
       },
541 548
       //底部扫描-无须扫码
542 549
       ScanningCommon(qrcodePrefix = '', content){
@@ -763,7 +770,17 @@
763 770
                           url: `/pages/medicalWaste/medicalWasteBind/medicalWasteBind?qrcode=${res.code}`,
764 771
                         });
765 772
                       }
766
-                    }
773
+											// 扫描中转交接码/终点科室-综合交接
774
+                    } else if(res.type == 'businessHandover'){
775
+                      uni.navigateTo({
776
+                        url: `/pages/transferConnect/transferConnect?data=${JSON.stringify(res)}`,
777
+                      });
778
+											// 扫描中转配送建单
779
+                    } else if(res.type == 'quickOrderBusinessHandover'){
780
+											uni.navigateTo({
781
+											  url: `/pages/transferDistribution/transferDistribution?data=${JSON.stringify(res)}`,
782
+											});
783
+										}
767 784
                   } else {
768 785
                     if(res.bigScanSpecialMsg){
769 786
                       uni.navigateTo({

+ 2 - 2
manifest.json

@@ -123,9 +123,9 @@
123 123
             "disableHostCheck" : true,
124 124
             "proxy" : {
125 125
                 "/service" : {
126
-                    "target" : "http://192.168.3.108", //请求的目标域名
126
+                    // "target" : "http://192.168.3.108", //请求的目标域名
127 127
 
128
-                    // "target" : "http://192.168.4.163", //宋程玉本地
128
+                    "target" : "http://192.168.4.163", //宋程玉本地
129 129
                     "changeOrigin" : true, //是否跨域
130 130
                     "secure" : false
131 131
                 }

+ 55 - 1
pages.json

@@ -818,7 +818,61 @@
818 818
         },
819 819
         "enablePullDownRefresh": true
820 820
       }
821
-    }
821
+    },
822
+		{
823
+		  "path": "pages/transferConnect/transferConnect",
824
+		  "style": {
825
+		    "h5": {
826
+		      "titleNView": false
827
+		    },
828
+		    "enablePullDownRefresh": true
829
+		  }
830
+		},
831
+		{
832
+		  "path": "pages/sponsorTask/sponsorTask",
833
+		  "style": {
834
+		    "h5": {
835
+		      "titleNView": false
836
+		    },
837
+		    "enablePullDownRefresh": true
838
+		  }
839
+		},
840
+		{
841
+		  "path": "pages/sponsorTask/sponsorTask",
842
+		  "style": {
843
+		    "h5": {
844
+		      "titleNView": false
845
+		    },
846
+		    "enablePullDownRefresh": true
847
+		  }
848
+		},
849
+		{
850
+		  "path": "pages/sponsorTaskBuild/sponsorTaskBuild",
851
+		  "style": {
852
+		    "h5": {
853
+		      "titleNView": false
854
+		    },
855
+		    "enablePullDownRefresh": true
856
+		  }
857
+		},
858
+		{
859
+		  "path": "pages/taskTypeSearch/taskTypeSearch",
860
+		  "style": {
861
+		    "h5": {
862
+		      "titleNView": false
863
+		    },
864
+		    "enablePullDownRefresh": true
865
+		  }
866
+		},
867
+		{
868
+		  "path": "pages/transferDistribution/transferDistribution",
869
+		  "style": {
870
+		    "h5": {
871
+		      "titleNView": false
872
+		    },
873
+		    "enablePullDownRefresh": true
874
+		  }
875
+		}
822 876
   ],
823 877
   "globalStyle": {
824 878
     "navigationBarTextStyle": "black",

+ 36 - 3
pages/otherCompleteOrder/otherCompleteOrder.vue

@@ -24,6 +24,12 @@
24 24
           </radio-group>
25 25
         </view>
26 26
       </view>
27
+			<view class="goWorkSelect history" v-if="digitalHandoverSwitch">
28
+			  <view class="goWorkSelect-head">请填写交接数量</view>
29
+			  <view class="goWorkSelect-list">
30
+					<input class="input-num" type="text" v-model="digitalNum">
31
+			  </view>
32
+			</view>
27 33
       <view class="goWorkSelect history" v-if="actionPhotoSwitch">
28 34
         <view class="goWorkSelect-head">您需要拍摄现场照片才可{{tips}}!</view>
29 35
         <view class="goWorkSelect-list">
@@ -70,6 +76,9 @@
70 76
         currentData: {}, //当前小扫描的工单对象
71 77
         orderId: undefined,
72 78
         order: {},
79
+				digitalNum:null,
80
+				// 数字交接
81
+				digitalHandoverSwitch: false,
73 82
         // 拍照动作开关
74 83
         actionPhotoSwitch: false,
75 84
         // 确认动作开关
@@ -147,6 +156,9 @@
147 156
         }else if(this.actionPhotoSwitch){
148 157
           // 拍照
149 158
           this.isOpenTransportationProcessRemarks(this.currentData, data, 'uploadToOther');
159
+        }else if(this.digitalHandoverSwitch){
160
+          // 数字交接
161
+          this.isOpenTransportationProcessRemarks(this.currentData, data, 'nextDeptOrder_ss');
150 162
         }
151 163
       },
152 164
       // 填写交接人工号-取消
@@ -197,6 +209,15 @@
197 209
           });
198 210
           return;
199 211
         }
212
+				if(this.digitalHandoverSwitch && !this.digitalNum){
213
+				  uni.showToast({
214
+				    icon: "none",
215
+				  	title: '请填写交接数量',
216
+				  	duration: 2000
217
+				  });
218
+				  return;
219
+				}
220
+				
200 221
         uni.showLoading({
201 222
           title: "加载中",
202 223
           mask: true,
@@ -235,7 +256,10 @@
235 256
             }else if(this.actionPhotoSwitch){
236 257
               // 拍照
237 258
               this.isOpenTransportationProcessRemarks(data, accountObj, 'uploadToOther');
238
-            }
259
+            }else if(this.digitalHandoverSwitch){
260
+							// 数字交接
261
+							this.isOpenTransportationProcessRemarks(data, accountObj, 'nextDeptOrder_ss');
262
+						}
239 263
           } else if (result.state == '0000') {
240 264
             uni.hideLoading();
241 265
             this.showSelectAccount();
@@ -306,7 +330,7 @@
306 330
           value: i,
307 331
           name: v,
308 332
         }));
309
-        
333
+        this.digitalHandoverSwitch = options.taskType.carryingCourses[this.currentIndex].digitalHandover;
310 334
         this.actionPhotoSwitch = options.taskType.carryingCourses[this.currentIndex].actionPhotoSwitch;
311 335
         this.actionConfirmType = options.taskType.carryingCourses[this.currentIndex].actionConfirmType;
312 336
       }
@@ -431,7 +455,16 @@
431 455
 
432 456
         .goWorkSelect-list {
433 457
           padding: 16rpx;
434
-
458
+					
459
+					.input-num {
460
+					  height: 60rpx;
461
+					  border: 2rpx solid #E5E5E5;
462
+					  border-radius: 5rpx;
463
+					  // width: 100%;
464
+					  padding-left: 10rpx;
465
+					  // padding-right: 10rpx;
466
+					}
467
+					
435 468
           .goWorkSelect-item {
436 469
             height: 52rpx;
437 470
             display: flex;

+ 8 - 0
pages/receiptpage/receiptpage.vue

@@ -1770,6 +1770,10 @@
1770 1770
             this.content.push({
1771 1771
               text: "陪检闭环",
1772 1772
             });
1773
+          } else if (item.link === "sponsorTask") {
1774
+            this.content.push({
1775
+              text: "发起任务",
1776
+            });
1773 1777
           }
1774 1778
         });
1775 1779
       },
@@ -2242,6 +2246,10 @@
2242 2246
           uni.navigateTo({
2243 2247
             url: "/pages/patientInspectLog/patientInspectLogList",
2244 2248
           });
2249
+        } else if (e.item.text === "发起任务") {
2250
+          uni.navigateTo({
2251
+            url: "/pages/sponsorTask/sponsorTask",
2252
+          });
2245 2253
         }
2246 2254
       },
2247 2255
       //确定

+ 16 - 2
pages/scanning_all/scanning_all.vue

@@ -422,7 +422,7 @@
422 422
                 )}&model=${encodeURIComponent(JSON.stringify(res))}&accountObj=${encodeURIComponent(JSON.stringify(accountObj))}&deptId=${res.deptId}`,
423 423
                 });
424 424
               }
425
-            } else {
425
+            } else { //一键操作 走这里
426 426
               uni.navigateTo({
427 427
                 url: `../scanning_djEnd/scanning_djEnd?type=${
428 428
                 this.tabType
@@ -435,7 +435,21 @@
435 435
             }
436 436
           } else if (res.status == "0000") {
437 437
             this.showSelectAccount();
438
-          } else {
438
+          } else if (res.status == "2001") {
439
+						uni.navigateTo({
440
+						  url: `../otherCompleteOrder/otherCompleteOrder?orderId=${this.userId.ids[0]}&taskType=${res.workOrder.taskType ? encodeURIComponent(JSON.stringify(res.workOrder.taskType)) : ''}&order=${res.workOrder ? encodeURIComponent(JSON.stringify(res.workOrder)) : ''}`,
441
+						});
442
+          }else if (res.status == "2005") {
443
+            uni.showToast({
444
+              icon: "none",
445
+              title: res.info,
446
+            });
447
+						setTimeout(_=>{
448
+							uni.redirectTo({
449
+								url:'/pages/receiptpage/receiptpage'
450
+							})
451
+						},1000)
452
+          }else {
439 453
             this.flag = true;
440 454
             uni.navigateTo({
441 455
               url: `../scanning_djEnd/scanning_djEnd?type=${this.tabType}&type1=${

+ 317 - 0
pages/sponsorTask/sponsorTask.vue

@@ -0,0 +1,317 @@
1
+<template>
2
+  <view class="HomeItem">
3
+    <view class="goWorkAll">
4
+			<view class="title">请选择要建单的任务类型</view>
5
+			<view class="goWorkSelect history">
6
+			  <view class="goWorkSelect-list" v-for="(item, i) in list" @click="itemClick(item)">
7
+					{{item.taskName}}
8
+				</view>
9
+			</view>
10
+    </view>
11
+    <view class="foot_btn_spe">
12
+      <view class="btn3" @click="goBack">返回</view>
13
+    </view>
14
+  </view>
15
+</template>
16
+
17
+<script>
18
+  import {
19
+    get,
20
+    post,
21
+    webHandle
22
+  } from "../../http/http.js";
23
+  export default {
24
+    data() {
25
+      return {
26
+				list:[],
27
+				hosId: uni.getStorageSync('userData').user.currentHospital.id,
28
+      };
29
+    },
30
+    methods: {
31
+      // 返回
32
+      goBack() {
33
+        uni.navigateBack();
34
+      },
35
+			itemClick(item){
36
+				uni.navigateTo({
37
+					url:'/pages/sponsorTaskBuild/sponsorTaskBuild?data=' + JSON.stringify(item)
38
+				})
39
+			},
40
+			getTaskType(){
41
+				uni.showLoading({
42
+				  title: "加载中",
43
+				  mask: true,
44
+				});
45
+				let postData= {
46
+					idx: 0,
47
+					sum: 9999,
48
+					taskType:{
49
+						hosIds: this.hosId
50
+					}
51
+				}
52
+				post("/configuration/fetchDataList/taskType", postData).then((res) => {
53
+					uni.hideLoading();
54
+				  if(res.status == 200){
55
+						let data = res.list.filter(i=>i.deliveryUserCreate && i.deliveryUserCreate==1)
56
+						this.list = data
57
+				  } else {
58
+				    uni.showToast({
59
+				      icon: "none",
60
+				      title: res.info || "接口获取数据失败!",
61
+				    });
62
+				  }
63
+				});
64
+			}
65
+    },
66
+    onLoad(options) {
67
+      this.getTaskType();
68
+      this.options = options;
69
+      if(options.order){
70
+        options.order = JSON.parse(options.order);
71
+        this.order = options.order;
72
+        if(this.order.gdState.value == 4){
73
+          this.currentIndex = 0;
74
+          this.tips = '确认到达';
75
+        }else if(this.order.gdState.value == 5){
76
+          this.currentIndex = 1;
77
+          this.tips = '完成工单';
78
+        }
79
+      }
80
+      if(options.orderId){
81
+        this.orderId = options.orderId;
82
+      }
83
+      if(options.taskType){
84
+        options.taskType = JSON.parse(options.taskType);
85
+        this.actionConfirmSwitch = options.taskType.carryingCourses[this.currentIndex].actionConfirmSwitch;
86
+        let actions = options.taskType.carryingCourses[this.currentIndex].actionRemarks || "";
87
+        this.actions = actions.split('$').map((v, i) => ({
88
+          value: i,
89
+          name: v,
90
+        }));
91
+        this.digitalHandoverSwitch = options.taskType.carryingCourses[this.currentIndex].digitalHandover;
92
+        this.actionPhotoSwitch = options.taskType.carryingCourses[this.currentIndex].actionPhotoSwitch;
93
+        this.actionConfirmType = options.taskType.carryingCourses[this.currentIndex].actionConfirmType;
94
+      }
95
+    },
96
+  };
97
+</script>
98
+
99
+<style lang="less" scoped>
100
+  .HomeItem {
101
+    .foot_btn_spe {
102
+      width: 100%;
103
+      position: fixed;
104
+      bottom: 30rpx;
105
+      left: 0;
106
+      line-height: 88rpx;
107
+      height: 88rpx;
108
+      text-align: center;
109
+      display: flex;
110
+      justify-content: space-between;
111
+      flex-wrap: wrap;
112
+    
113
+      &::after {
114
+        content: '';
115
+        flex: 1;
116
+      }
117
+    
118
+      view {
119
+        height: 88rpx;
120
+        width: 100%;
121
+        margin: 0 1%;
122
+        background-image: linear-gradient(to right, #72c172, #3bb197);
123
+        color: #fff;
124
+        border-radius: 8rpx;
125
+        font-size: 32rpx;
126
+        margin-top: 16rpx;
127
+      }
128
+    }
129
+
130
+    .login {
131
+      height: 420rpx;
132
+      padding: 0 32rpx;
133
+      padding-top: 164rpx;
134
+      position: relative;
135
+      z-index: 999;
136
+
137
+      .savePassword {
138
+        margin-top: 32rpx;
139
+      }
140
+
141
+      /deep/ uni-checkbox:not([disabled]) .uni-checkbox-input:hover {
142
+        border-color: #42b983 !important;
143
+      }
144
+
145
+      .login_input {
146
+        margin-top: 32rpx;
147
+        background-color: #ffffff;
148
+        height: 72rpx;
149
+        box-sizing: border-box;
150
+        padding: 16rpx;
151
+      }
152
+
153
+      .title {
154
+        font-size: 36rpx;
155
+        color: #42b983;
156
+        text-align: center;
157
+      }
158
+
159
+      .tips {
160
+        font-size: 28rpx;
161
+        color: red;
162
+        margin-top: 16rpx;
163
+      }
164
+
165
+      .page_item_btn {
166
+        height: 88rpx;
167
+        background-image: linear-gradient(to right, #72c172, #3bb197);
168
+        border-radius: 8rpx;
169
+        line-height: 88rpx;
170
+        color: #fff;
171
+        font-size: 36rpx;
172
+        font-weight: 700;
173
+        margin-top: 64rpx;
174
+        text-align: center;
175
+      }
176
+    }
177
+
178
+    //上班页面
179
+    .goWorkAll {
180
+      overflow-y: auto;
181
+      display: flex;
182
+      flex-direction: column;
183
+      justify-content: space-between;
184
+
185
+      /deep/ .uni-radio-input-checked {
186
+        background-color: #42b983 !important;
187
+        border-color: #42b983 !important;
188
+      }
189
+      /deep/ .uni-checkbox-input-checked {
190
+        color: #42b983 !important;
191
+      }
192
+			
193
+			.title{
194
+				text-align: center;
195
+				color: #64BD7B;
196
+				line-height: 80rpx;
197
+				border-bottom: 1rpx solid #E5E5E5;
198
+			}
199
+			
200
+      .goWorkSelect {
201
+        &.history {
202
+          height: 356rpx;
203
+          padding-bottom: 16rpx;
204
+        }
205
+
206
+        &.combination {
207
+          .goWorkSelect-head {}
208
+
209
+          .goWorkSelect-list {}
210
+        }
211
+
212
+        .goWorkSelect-head {
213
+          font-size: 28rpx;
214
+          line-height: 80rpx;
215
+          border-bottom: 2rpx solid #E5E5E5;
216
+          text-align: center;
217
+        }
218
+
219
+        .goWorkSelect-list {
220
+          text-align: center;
221
+					line-height: 80rpx;
222
+					border-bottom: 1rpx solid #E5E5E5;
223
+					
224
+					.input-num {
225
+					  height: 60rpx;
226
+					  border: 2rpx solid #E5E5E5;
227
+					  border-radius: 5rpx;
228
+					  // width: 100%;
229
+					  padding-left: 10rpx;
230
+					  // padding-right: 10rpx;
231
+					}
232
+					
233
+          .goWorkSelect-item {
234
+            height: 52rpx;
235
+            display: flex;
236
+            align-items: center;
237
+            border-bottom: 2rpx solid #e5e9ed;
238
+            padding: 16rpx;
239
+
240
+            &.relative {
241
+              position: relative;
242
+
243
+              .picker {
244
+                position: absolute;
245
+                width: 100%;
246
+                padding-left: 64rpx;
247
+              }
248
+            }
249
+
250
+            button {
251
+              font-size: 32rpx;
252
+              height: 52rpx;
253
+              line-height: 52rpx;
254
+              margin: 0;
255
+              margin-left: 16rpx;
256
+              color: rgb(7, 134, 60);
257
+              font-weight: 700;
258
+            }
259
+          }
260
+        }
261
+      }
262
+    }
263
+
264
+    .goWork {
265
+      margin: 0 auto 48rpx;
266
+      width: 240rpx;
267
+      height: 240rpx;
268
+
269
+      .goWork_btn_E {
270
+        width: 100%;
271
+        height: 100%;
272
+        background: #bee1a7;
273
+        border-radius: 30%;
274
+
275
+        .goWork_btn_W {
276
+          width: 75%;
277
+          height: 75%;
278
+          background-image: linear-gradient(to right, #72c172, #3bb197);
279
+          border-radius: 30%;
280
+          margin: 0 auto;
281
+          position: relative;
282
+          top: 12.5%;
283
+          line-height: 180rpx;
284
+          color: #fff;
285
+          font-size: 36rpx;
286
+          text-align: center;
287
+        }
288
+      }
289
+    }
290
+
291
+    .goWork_text {
292
+      width: 100%;
293
+
294
+      view {
295
+        text-align: center;
296
+      }
297
+
298
+      .goWork_text-p {
299
+        font-size: 36rpx;
300
+        margin-bottom: 48rpx;
301
+      }
302
+    }
303
+
304
+    .botImg {
305
+      height: 600rpx;
306
+      width: 100%;
307
+      position: fixed;
308
+      bottom: 0;
309
+
310
+      .img {
311
+        height: 100%;
312
+        background: url("../../static/img/BG.png") no-repeat center center;
313
+        background-size: 100% 100%;
314
+      }
315
+    }
316
+  }
317
+</style>

+ 569 - 0
pages/sponsorTaskBuild/sponsorTaskBuild.vue

@@ -0,0 +1,569 @@
1
+<template>
2
+  <view class="HomeItem">
3
+    <view class="goWorkAll">
4
+			<view class="title">{{taskName}}</view>
5
+			<view class="goWorkSelect history">
6
+			  <view class="goWorkSelect-list">
7
+					申请科室:
8
+					<input type="text" v-model="applyDept" placeholder="请选择申请科室">
9
+					<text class="right-icon newicon newicon-weibiaoti2010104" @click="searchDept('applyDept')"></text>
10
+					<text class="toolbar-icon newicon newicon-saoma" @click="scan()"></text>
11
+				</view>
12
+				<view class="goWorkSelect-list">
13
+					起点科室:
14
+					<input type="text" :disabled="startTarget==201 || startTarget==203" v-model="startDept" placeholder="请选择起点科室">
15
+					<text v-if="startTarget==202 || startTarget==204 || startTarget==205" class="right-icon newicon newicon-weibiaoti2010104" @click="searchDept('startDept')"></text>
16
+				</view>
17
+				<view class="goWorkSelect-list">
18
+					终点科室:
19
+					<input type="text" :disabled="endTarget==201 || endTarget==203" v-model="endDept" placeholder="请选择终点科室">
20
+					<text v-if="endTarget==202 || endTarget==204 || endTarget==205" class="right-icon newicon newicon-weibiaoti2010104" @click="searchDept('endDept')"></text>
21
+				</view>
22
+				<view class="goWorkSelect-list besides" v-if="remarksSwitch==1">
23
+					备注信息:
24
+					<textarea v-model="remark" :placeholder="remarksPrompts"/>
25
+				</view>
26
+			</view>
27
+    </view>
28
+    <view class="foot_btn_spe">
29
+			<view class="btn3" @click="submit">建单</view>
30
+      <view class="btn3" @click="goBack">返回</view>
31
+    </view>
32
+		
33
+		<uni-popup ref="alertDialog" type="dialog" :mask-click="false">
34
+			<uni-popup-dialog type="warn" cancelText="取消" confirmText="确定" title="提示" :content="content" @confirm="dialogConfirm"
35
+				@close="dialogClose"></uni-popup-dialog>
36
+		</uni-popup>
37
+  </view>
38
+</template>
39
+
40
+<script>
41
+  import {
42
+    get,
43
+    post,
44
+    webHandle,
45
+		SM
46
+  } from "../../http/http.js";
47
+	
48
+  export default {
49
+    data() {
50
+      return {
51
+				list:[],
52
+				hosId: uni.getStorageSync('userData').user.currentHospital.id,
53
+				SMFlag:true,
54
+				applyDept:null,
55
+				applyDeptId:null,
56
+				startDept:null,
57
+				startDeptId:null,
58
+				endDept:null,
59
+				endDeptId:null,
60
+				remark:null,
61
+				itemTaskType:null,
62
+				remarksSwitch:null,
63
+				remarksPrompts:null,
64
+				startTarget:null,
65
+				endTarget:null,
66
+				taskTypeData:null, //点击的任务类型数据
67
+				taskTypeId: null,
68
+				content:null,
69
+				tipsCreateOder:null
70
+      };
71
+    },
72
+    methods: {
73
+			// 清空缓存
74
+			setSess(){
75
+				uni.setStorageSync('applyDept', null)
76
+				uni.setStorageSync('taskStartDept', null)
77
+				uni.setStorageSync('taskEndDept', null)
78
+				uni.setStorageSync('sponsorTaskBuildData', null)
79
+			},
80
+      // 返回
81
+      goBack() {
82
+        uni.navigateBack();
83
+      },
84
+			// 建单
85
+			submit(){
86
+				uni.showLoading({
87
+				  title: "加载中",
88
+				  mask: true,
89
+				});
90
+				let data = {
91
+					workOrder:{
92
+						tipsCreateOder: null,
93
+						worker:{
94
+							id: uni.getStorageSync('userData').user.id
95
+						},
96
+						createDept: this.applyDeptId,
97
+						startDept:{
98
+							id: this.startDeptId
99
+						},
100
+						endDepts:{
101
+							id: this.endDeptId
102
+						},
103
+						sourceId: 4,
104
+						workOrderRemark: this.remark,
105
+						taskType:{
106
+							id : this.taskTypeId
107
+						}
108
+					}
109
+				}
110
+				if(this.tipsCreateOder == 1){
111
+					data.tipsCreateOder = 1
112
+				}else{
113
+					data.tipsCreateOder = undefined
114
+				}
115
+				post("/api/startOrder", data).then((res2) => {
116
+				  uni.hideLoading();
117
+				  if (res2.status == 200) {
118
+						this.tipsCreateOder = null
119
+						uni.showToast({
120
+						  icon: 'none',
121
+						  title: '操作成功'
122
+						});
123
+						this.setSess()
124
+						setTimeout(_=>{
125
+							uni.redirectTo({
126
+								url:'/pages/receiptpage/receiptpage'
127
+							})
128
+						},1500)
129
+				  } else if(res2.status == 1000033){
130
+						this.tipsCreateOder = 1
131
+						this.content = res2.msg
132
+				    this.$refs.alertDialog.open()
133
+				  } else {
134
+						uni.showToast({
135
+						  icon: 'none',
136
+						  title: res2.msg || '请求数据失败!'
137
+						});
138
+					}
139
+				});
140
+			},
141
+			// 确定中转
142
+			dialogConfirm(){
143
+				this.submit()
144
+			},
145
+			// 取消
146
+			dialogClose(){
147
+				this.$refs.alertDialog.close()
148
+			},
149
+			// 搜索科室
150
+			searchDept(type){
151
+				let data = {
152
+					applyDept:this.applyDept,
153
+					applyDeptId:this.applyDeptId,
154
+					startDept:this.startDept,
155
+					startDeptId:this.startDeptId,
156
+					endDept:this.endDept,
157
+					endDeptId:this.endDeptId,
158
+					remark:this.remark
159
+				}
160
+				uni.setStorageSync('sponsorTaskBuildData', JSON.stringify(data))
161
+				uni.navigateTo({
162
+				  url: `../taskTypeSearch/taskTypeSearch?type=${type}&startTarget=${this.startTarget}&endTarget=${this.endTarget}&taskTypeData=${JSON.stringify(this.taskTypeData)}&taskTypeId=${this.taskTypeId}&taskName=${this.taskName}`
163
+				});
164
+			},
165
+			// 扫描科室
166
+			scan(){
167
+				if (!this.SMFlag) {
168
+				  return;
169
+				}
170
+				this.SMFlag = false;
171
+				SM().then((content) => {
172
+					uni.showLoading({
173
+					  title: "加载中",
174
+					  mask: true,
175
+					});
176
+					post("/repair/scanCode", {
177
+						code: content
178
+					}).then((res2) => {
179
+					  uni.hideLoading();
180
+					  if (res2.state == 200) {
181
+							this.applyDept = res2.data.dept
182
+							this.applyDeptId = res2.data.id
183
+							if(this.startTarget==201){
184
+								this.startDept = res2.data.dept
185
+								this.startDeptId = res2.data.id
186
+							}
187
+							if(this.endTarget==201){
188
+								this.endDept = res2.data.dept
189
+								this.endDeptId = res2.data.id
190
+							}
191
+					  } else {
192
+					    uni.showToast({
193
+					      icon: 'none',
194
+					      title: res2.msg || '请求数据失败!'
195
+					    });
196
+					  }
197
+					});
198
+				}).catch(err => {
199
+				  this.SMFlag = true;
200
+				});
201
+			},
202
+			getTaskType(id){
203
+				uni.showLoading({
204
+				  title: "加载中",
205
+				  mask: true,
206
+				});
207
+				let postData= {
208
+					taskTypeId: id
209
+				}
210
+				post("/ser/getdeptList", postData).then((res) => {
211
+					uni.hideLoading();
212
+				  this.taskTypeData = res
213
+					this.startTarget = this.taskTypeData.startStatus
214
+					this.endTarget = this.taskTypeData.endStatus
215
+					if(this.startTarget==203){
216
+						this.startDept = this.taskTypeData.startDept[0].dept
217
+						this.startDeptId = this.taskTypeData.startDept[0].id
218
+					}
219
+					if(this.endTarget==203){
220
+						this.endDept = this.taskTypeData.endDept[0].dept
221
+						this.endDeptId = this.taskTypeData.endDept[0].id
222
+					}
223
+					this.remarksSwitch = this.taskTypeData.taskType.remarksSwitch
224
+					this.remarksPrompts = this.taskTypeData.taskType.remarksPrompts
225
+				});
226
+			}
227
+    },
228
+		onShow(options){
229
+			
230
+		},
231
+    onLoad(options) {
232
+			console.log(111, options)
233
+			let sponsorTaskBuildData = uni.getStorageSync('sponsorTaskBuildData')
234
+			let applyDept = uni.getStorageSync('applyDept')
235
+			let taskStartDept = uni.getStorageSync('taskStartDept')
236
+			let taskEndDept = uni.getStorageSync('taskEndDept')
237
+			if(applyDept){
238
+				// 科室类型:201:默认发起科室
239
+				// 科室类型:202:固定科室范围
240
+				// 科室类型:203:固定科室
241
+				// 科室类型:204:自主填写
242
+				// 科室类型:205:固定科室类型
243
+				let data = JSON.parse(applyDept)
244
+				this.applyDept = data.dept
245
+				this.applyDeptId = data.id
246
+				if(options.startTarget){
247
+					this.startTarget = options.startTarget
248
+				}
249
+				if(options.endTarget){
250
+					this.endTarget = options.endTarget
251
+				}
252
+				console.log(456, this.startTarget)
253
+				if(this.startTarget==201){
254
+					this.startDept = data.dept
255
+					this.startDeptId = data.id
256
+				}
257
+				if(this.endTarget==201){
258
+					this.endDept = data.dept
259
+					this.endDeptId = data.id
260
+				}
261
+			}
262
+			 if (taskStartDept){
263
+				 let data = JSON.parse(taskStartDept)
264
+				 if(this.startTarget!=201){
265
+					 this.startDept = data.dept
266
+					 this.startDeptId = data.id
267
+				 }
268
+			}
269
+			 if (taskEndDept){
270
+				 let data = JSON.parse(taskEndDept)
271
+				 if(this.endTarget!=201){
272
+						this.endDept = data.dept
273
+						this.endDeptId = data.id
274
+				 }
275
+			}
276
+			// 之前有填写过数据-回显
277
+			if(sponsorTaskBuildData){
278
+				let data = JSON.parse(sponsorTaskBuildData)
279
+				console.log(777, data)
280
+				if(!applyDept){
281
+					if(data.applyDept){
282
+						this.applyDept = data.applyDept
283
+						this.applyDeptId = data.applyDeptId
284
+					}
285
+				}
286
+				
287
+				if(!taskStartDept){
288
+					if(data.startDept && this.startTarget!=201){
289
+						this.startDept = data.startDept
290
+						this.startDeptId = data.startDeptId
291
+					}
292
+				}
293
+				
294
+				if(!taskEndDept){
295
+					if(data.endDept && this.endTarget!=201){
296
+						this.endDept = data.endDept 
297
+						this.endDeptId = data.endDeptId 
298
+					}
299
+				}
300
+
301
+				if(data.remark){
302
+					this.remark = data.remark
303
+				}
304
+			}
305
+			
306
+      if(options.data){
307
+        options.data = JSON.parse(options.data);
308
+				this.getTaskType(options.data.id);
309
+				this.taskTypeId = options.data.id;
310
+				this.taskName = options.data.taskName;
311
+			}
312
+			
313
+			if(options.taskTypeId){
314
+				this.taskTypeId = options.taskTypeId;
315
+				this.taskName = options.taskName;
316
+				this.getTaskType(options.taskTypeId);
317
+			}
318
+    },
319
+  };
320
+</script>
321
+
322
+<style scoped>
323
+	/deep/ .uni-textarea-wrapper{
324
+	border: 1rpx solid #E5E5E5;
325
+	padding-left: 6rpx;
326
+}
327
+/deep/ .uni-textarea-placeholder{
328
+	padding: 6rpx;
329
+}
330
+</style>
331
+<style lang="less" scoped>
332
+  .HomeItem {
333
+    .foot_btn_spe {
334
+      width: 100%;
335
+      position: fixed;
336
+      bottom: 30rpx;
337
+      left: 0;
338
+      line-height: 88rpx;
339
+      height: 88rpx;
340
+      text-align: center;
341
+      display: flex;
342
+      justify-content: space-between;
343
+      flex-wrap: wrap;
344
+    
345
+      &::after {
346
+        content: '';
347
+        flex: 1;
348
+      }
349
+    
350
+      view {
351
+        height: 88rpx;
352
+        width: 48%;
353
+        margin: 0 1%;
354
+        background-image: linear-gradient(to right, #72c172, #3bb197);
355
+        color: #fff;
356
+        border-radius: 8rpx;
357
+        font-size: 32rpx;
358
+        margin-top: 16rpx;
359
+      }
360
+    }
361
+
362
+    .login {
363
+      height: 420rpx;
364
+      padding: 0 32rpx;
365
+      padding-top: 164rpx;
366
+      position: relative;
367
+      z-index: 999;
368
+
369
+      .savePassword {
370
+        margin-top: 32rpx;
371
+      }
372
+
373
+      /deep/ uni-checkbox:not([disabled]) .uni-checkbox-input:hover {
374
+        border-color: #42b983 !important;
375
+      }
376
+
377
+      .login_input {
378
+        margin-top: 32rpx;
379
+        background-color: #ffffff;
380
+        height: 72rpx;
381
+        box-sizing: border-box;
382
+        padding: 16rpx;
383
+      }
384
+
385
+      .title {
386
+        font-size: 36rpx;
387
+        color: #42b983;
388
+        text-align: center;
389
+      }
390
+
391
+      .tips {
392
+        font-size: 28rpx;
393
+        color: red;
394
+        margin-top: 16rpx;
395
+      }
396
+
397
+      .page_item_btn {
398
+        height: 88rpx;
399
+        background-image: linear-gradient(to right, #72c172, #3bb197);
400
+        border-radius: 8rpx;
401
+        line-height: 88rpx;
402
+        color: #fff;
403
+        font-size: 36rpx;
404
+        font-weight: 700;
405
+        margin-top: 64rpx;
406
+        text-align: center;
407
+      }
408
+    }
409
+
410
+    //上班页面
411
+    .goWorkAll {
412
+      overflow-y: auto;
413
+      display: flex;
414
+      flex-direction: column;
415
+      justify-content: space-between;
416
+
417
+      /deep/ .uni-radio-input-checked {
418
+        background-color: #42b983 !important;
419
+        border-color: #42b983 !important;
420
+      }
421
+      /deep/ .uni-checkbox-input-checked {
422
+        color: #42b983 !important;
423
+      }
424
+			
425
+			.title{
426
+				text-align: center;
427
+				color: #64BD7B;
428
+				line-height: 80rpx;
429
+				border-bottom: 1rpx solid #E5E5E5;
430
+			}
431
+			
432
+      .goWorkSelect {
433
+        &.history {
434
+          padding-bottom: 16rpx;
435
+        }
436
+
437
+        &.combination {
438
+          .goWorkSelect-head {}
439
+
440
+          .goWorkSelect-list {}
441
+        }
442
+
443
+        .goWorkSelect-head {
444
+          font-size: 28rpx;
445
+          line-height: 80rpx;
446
+          border-bottom: 2rpx solid #E5E5E5;
447
+          text-align: center;
448
+        }
449
+				
450
+				.besides{
451
+					align-items: start !important;
452
+				}
453
+				
454
+        .goWorkSelect-list {
455
+					display: flex;
456
+					align-items: center;
457
+					padding: 20rpx;
458
+					border-bottom: 1rpx solid #E5E5E5;
459
+					
460
+					.right-icon{
461
+						font-size: 38rpx !important;
462
+						margin-right: 20rpx;
463
+						position: relative;
464
+						top: -2rpx;
465
+					}
466
+					
467
+					.newicon{
468
+						font-size: 32rpx;
469
+						color: #b8b8b8;
470
+					}
471
+					
472
+					.input-num {
473
+					  height: 60rpx;
474
+					  border: 2rpx solid #E5E5E5;
475
+					  border-radius: 5rpx;
476
+					  // width: 100%;
477
+					  padding-left: 10rpx;
478
+					  // padding-right: 10rpx;
479
+					}
480
+					
481
+          .goWorkSelect-item {
482
+            height: 52rpx;
483
+            display: flex;
484
+            align-items: center;
485
+            border-bottom: 2rpx solid #e5e9ed;
486
+            padding: 16rpx;
487
+
488
+            &.relative {
489
+              position: relative;
490
+
491
+              .picker {
492
+                position: absolute;
493
+                width: 100%;
494
+                padding-left: 64rpx;
495
+              }
496
+            }
497
+
498
+            button {
499
+              font-size: 32rpx;
500
+              height: 52rpx;
501
+              line-height: 52rpx;
502
+              margin: 0;
503
+              margin-left: 16rpx;
504
+              color: rgb(7, 134, 60);
505
+              font-weight: 700;
506
+            }
507
+          }
508
+        }
509
+				
510
+				.goWorkSelect-list:last-child {
511
+					border-bottom: none;
512
+				}
513
+      }
514
+    }
515
+
516
+    .goWork {
517
+      margin: 0 auto 48rpx;
518
+      width: 240rpx;
519
+      height: 240rpx;
520
+
521
+      .goWork_btn_E {
522
+        width: 100%;
523
+        height: 100%;
524
+        background: #bee1a7;
525
+        border-radius: 30%;
526
+
527
+        .goWork_btn_W {
528
+          width: 75%;
529
+          height: 75%;
530
+          background-image: linear-gradient(to right, #72c172, #3bb197);
531
+          border-radius: 30%;
532
+          margin: 0 auto;
533
+          position: relative;
534
+          top: 12.5%;
535
+          line-height: 180rpx;
536
+          color: #fff;
537
+          font-size: 36rpx;
538
+          text-align: center;
539
+        }
540
+      }
541
+    }
542
+
543
+    .goWork_text {
544
+      width: 100%;
545
+
546
+      view {
547
+        text-align: center;
548
+      }
549
+
550
+      .goWork_text-p {
551
+        font-size: 36rpx;
552
+        margin-bottom: 48rpx;
553
+      }
554
+    }
555
+
556
+    .botImg {
557
+      height: 600rpx;
558
+      width: 100%;
559
+      position: fixed;
560
+      bottom: 0;
561
+
562
+      .img {
563
+        height: 100%;
564
+        background: url("../../static/img/BG.png") no-repeat center center;
565
+        background-size: 100% 100%;
566
+      }
567
+    }
568
+  }
569
+</style>

+ 412 - 0
pages/taskTypeSearch/taskTypeSearch.vue

@@ -0,0 +1,412 @@
1
+<template>
2
+	<view class="content">
3
+		<view class="search-keyword">
4
+			<view class="padding">
5
+				<uni-easyinput prefixIcon="search" v-model="key" :clearable="false" placeholder="请输入" @input="searchKey">
6
+				</uni-easyinput>
7
+			</view>
8
+			<scroll-view class="keyword-list-box" scroll-y>
9
+				<label v-for="(row, index) in dataList" :key="row.id" @click="itemClick(row)"
10
+					>
11
+					<view class="keyword-entry" :class="selectId == row.id ? 'selectStyle' : ''">
12
+						<view class="keyword-text">
13
+							{{row.dept}}
14
+						</view>
15
+					</view>
16
+				</label>
17
+			</scroll-view>
18
+		</view>
19
+		<view class="toolbar">
20
+			<view class="btn cancel" @click="determine('back')" hover-class="seimin-btn-hover">
21
+				取消
22
+			</view>
23
+			<view class="btn affirm" @click="determine('submit')" hover-class="seimin-btn-hover">
24
+				确定
25
+			</view>
26
+		</view>
27
+	</view>
28
+</template>
29
+
30
+<script>
31
+	import {
32
+		post,
33
+		webHandle
34
+	} from "../../http/http.js";
35
+	import debounce from 'lodash-es/debounce'
36
+	export default {
37
+		data() {
38
+			return {
39
+				key:null,
40
+				type: "", //进入该页面的类型
41
+				hosId: "",
42
+				dataList: [],
43
+				selectData: [],
44
+				allData:[],
45
+				gdId:null,
46
+				startTarget:null,
47
+				endTarget:null,
48
+				selectId:null,
49
+				taskTypeData:null,
50
+				taskTypeId:null,
51
+				taskName:null
52
+			};
53
+		},
54
+		onLoad(options) {
55
+			this.hosId = uni.getStorageSync("userData").user.currentHospital.id;
56
+			this.taskTypeData = JSON.parse(options.taskTypeData)
57
+			console.log(this.options, '777');
58
+			console.log(this.taskTypeData, '123');
59
+			this.taskTypeId = options.taskTypeId
60
+			this.taskName = options.taskName
61
+			this.type = options.type
62
+			// 科室类型:201:默认发起科室
63
+			// 科室类型:202:固定科室
64
+			// 科室类型:203:固定科室范围
65
+			// 科室类型:204:自主填写
66
+			// 科室类型:205:固定科室类型
67
+			this.startTarget = this.taskTypeData.startStatus
68
+			this.endTarget = this.taskTypeData.endStatus
69
+			this.gdId = options.id
70
+			if(options.type=='applyDept'){
71
+				this.getapplyDept()
72
+			}else if (options.type=='startDept'){
73
+				this.getStartDept()
74
+			}else if (options.type=='endDept'){
75
+				this.getEndDept()
76
+			}
77
+		},
78
+		methods: {
79
+			searchKey(e){
80
+				if(this.type=='startDept'){
81
+					this.handleSearch1()
82
+				}else if (this.type=='checkoutDept'){
83
+					this.handleSearch2()
84
+				}
85
+			},
86
+			handleSearch1: debounce(function() {
87
+			  this.getStartDept();
88
+			}, 500),
89
+			handleSearch2: debounce(function() {
90
+			  this.getCheckoutDept();
91
+			}, 500),
92
+			//获取申请科室
93
+			getapplyDept() {
94
+				let postData = {
95
+					idx: 0,
96
+					sum: 20,
97
+					department:{
98
+						searchType: 1,
99
+						hospital: {
100
+							id: this.hosId
101
+						},
102
+						dept: this.key
103
+					}
104
+				}
105
+				post("/simple/data/fetchDataList/department", postData).then((res) => {
106
+					this.dataList = res.list
107
+				})
108
+			},
109
+			//获取起点科室
110
+			getStartDept() {
111
+				// 科室类型:201:默认发起科室
112
+				// 科室类型:202:固定科室范围
113
+				// 科室类型:203:固定科室
114
+				// 科室类型:204:自主填写
115
+				// 科室类型:205:固定科室类型
116
+				if(this.startTarget == 204 || this.startTarget== 205){
117
+					let postData = {
118
+						idx: 0,
119
+						sum: 20,
120
+						department:{
121
+							searchType: 1,
122
+							cascadeHosId: this.hosId,
123
+							type:{
124
+								id: null
125
+							},
126
+							dept: this.key
127
+						}
128
+					}
129
+					if(this.startTarget == 204){
130
+						delete postData.department.type
131
+					}else{
132
+						postData.department.type.id = this.taskTypeData.startTypeId
133
+					}
134
+					post("/simple/data/fetchDataList/department", postData).then((res) => {
135
+						this.dataList = res.list
136
+					})
137
+				}else{
138
+					this.dataList = this.taskTypeData.startDept
139
+				}
140
+			},
141
+			// 获取终点科室
142
+			getEndDept(){
143
+				// 科室类型:201:默认发起科室
144
+				// 科室类型:202:固定科室范围
145
+				// 科室类型:203:固定科室
146
+				// 科室类型:204:自主填写
147
+				// 科室类型:205:固定科室类型
148
+				if(this.endTarget == 204 || this.endTarget== 205){
149
+					let postData = {
150
+						idx: 0,
151
+						sum: 20,
152
+						department:{
153
+							searchType: 1,
154
+							cascadeHosId: this.hosId,
155
+							type:{
156
+								id: null
157
+							},
158
+							dept: this.key
159
+						}
160
+					}
161
+					if(this.endTarget == 204){
162
+						delete postData.department.type
163
+					}else{
164
+						postData.department.type.id = this.taskTypeData.endTypeId
165
+					}
166
+					post("/simple/data/fetchDataList/department", postData).then((res) => {
167
+						this.dataList = res.list
168
+					})
169
+				}else{
170
+					this.dataList = this.taskTypeData.endDept
171
+				}
172
+			},
173
+			// 确认
174
+			determine(type) {
175
+				this.allData = this.selectData
176
+				if (type == 'back') {
177
+					uni.navigateBack({
178
+						delta: 1,
179
+					})
180
+				} else {
181
+					if(this.type=='applyDept'){
182
+						uni.setStorageSync('applyDept', JSON.stringify(this.allData))
183
+					}else if (this.type=='startDept'){
184
+						uni.setStorageSync('taskStartDept', JSON.stringify(this.allData))
185
+					}else if (this.type=='endDept'){
186
+						uni.setStorageSync('taskEndDept', JSON.stringify(this.allData))
187
+					}
188
+					uni.redirectTo ({
189
+						url: `../sponsorTaskBuild/sponsorTaskBuild?type=${this.type}&startTarget=${this.startTarget}&endTarget=${this.endTarget}&taskTypeId=${this.taskTypeId}&taskName=${this.taskName}`
190
+					});
191
+				}
192
+			},
193
+			// 选择楼栋
194
+			itemClick(item) {
195
+				this.selectData = item
196
+				this.selectId = item.id
197
+			}
198
+		},
199
+	};
200
+</script>
201
+<style scoped>
202
+	.is-input-border{
203
+		border-color: #eee !important
204
+	}
205
+</style>
206
+<style scoped lang="less">
207
+	view {
208
+		display: block;
209
+	}
210
+
211
+	.title {
212
+		padding: 30rpx;
213
+		font-size: 32rpx;
214
+		text-align: center;
215
+		font-weight: bold;
216
+	}
217
+
218
+	// 底部
219
+	.toolbar {
220
+		position: fixed;
221
+		left: 0;
222
+		right: 0;
223
+		bottom: 30rpx;
224
+		width: 96%;
225
+		margin-left: 2%;
226
+		z-index: 9999;
227
+		display: flex;
228
+		justify-content: space-between;
229
+		align-items: center;
230
+		box-sizing: border-box;
231
+
232
+		.btn {
233
+			width: 48%;
234
+			height: 88rpx;
235
+			line-height: 88rpx;
236
+			text-align: center;
237
+			border-radius: 10rpx;
238
+		}
239
+
240
+		.affirm {
241
+			background-color: #49B856;
242
+			color: #fff;
243
+		}
244
+
245
+		.cancel {
246
+			background-color: #AFAFAF;
247
+			color: #fff;
248
+		}
249
+	}
250
+
251
+	.search-box {
252
+		width: 95%;
253
+		background-color: rgb(242, 242, 242);
254
+		padding: 15upx 2.5%;
255
+		display: flex;
256
+		justify-content: space-between;
257
+		position: sticky;
258
+		top: 0;
259
+	}
260
+
261
+	.search-box .mSearch-input-box {
262
+		width: 100%;
263
+	}
264
+
265
+	.search-box .input-box {
266
+		width: 85%;
267
+		flex-shrink: 1;
268
+		display: flex;
269
+		justify-content: center;
270
+		align-items: center;
271
+	}
272
+
273
+	.search-box .search-btn {
274
+		width: 15%;
275
+		margin: 0 0 0 2%;
276
+		display: flex;
277
+		justify-content: center;
278
+		align-items: center;
279
+		flex-shrink: 0;
280
+		font-size: 28upx;
281
+		color: #fff;
282
+		background: linear-gradient(to right, #ff9801, #ff570a);
283
+		border-radius: 60upx;
284
+	}
285
+
286
+	.search-box .input-box>input {
287
+		width: 100%;
288
+		height: 60upx;
289
+		font-size: 32upx;
290
+		border: 0;
291
+		border-radius: 60upx;
292
+		-webkit-appearance: none;
293
+		-moz-appearance: none;
294
+		appearance: none;
295
+		padding: 0 3%;
296
+		margin: 0;
297
+		background-color: #ffffff;
298
+	}
299
+
300
+	.placeholder-class {
301
+		color: #9e9e9e;
302
+	}
303
+
304
+	.search-keyword {
305
+		width: 100%;
306
+		background-color: rgb(242, 242, 242);
307
+	}
308
+	
309
+	.padding{
310
+		// padding: 0 20rpx;
311
+	}
312
+	
313
+	.keyword-list-box {
314
+		height: calc(100vh - 220rpx);
315
+		padding-top: 10upx;
316
+		border-radius: 20upx 20upx 0 0;
317
+		background-color: #fff;
318
+	}
319
+
320
+	.selectStyle {
321
+		color: #49B856 !important;
322
+	}
323
+
324
+	.keyword-entry-tap {
325
+		background-color: #eee;
326
+	}
327
+
328
+	.keyword-entry {
329
+		width: 94%;
330
+		height: 80rpx;
331
+		margin: 0 3%;
332
+		font-size: 30rpx;
333
+		color: #333;
334
+		display: flex;
335
+		justify-content: center;
336
+		align-items: center;
337
+		border-bottom: solid 1rpx #DEDEDE;
338
+	}
339
+
340
+	.keyword-entry image {
341
+		width: 60upx;
342
+		height: 60upx;
343
+	}
344
+
345
+	.keyword-entry .keyword-text,
346
+	.keyword-entry .keyword-img {
347
+		height: 80upx;
348
+		display: flex;
349
+		align-items: center;
350
+	}
351
+
352
+	.keyword-entry .keyword-text {
353
+		// width: 90%;
354
+	}
355
+
356
+	.keyword-entry .keyword-img {
357
+		width: 10%;
358
+		justify-content: center;
359
+	}
360
+
361
+	.keyword-box {
362
+		height: calc(100vh - 110upx);
363
+		border-radius: 20upx 20upx 0 0;
364
+		background-color: #fff;
365
+	}
366
+
367
+	.keyword-box .keyword-block {
368
+		padding: 10upx 0;
369
+	}
370
+
371
+	.keyword-box .keyword-block .keyword-list-header {
372
+		width: 94%;
373
+		padding: 10upx 3%;
374
+		font-size: 27upx;
375
+		color: #333;
376
+		display: flex;
377
+		justify-content: space-between;
378
+	}
379
+
380
+	.keyword-box .keyword-block .keyword-list-header image {
381
+		width: 40upx;
382
+		height: 40upx;
383
+	}
384
+
385
+	.keyword-box .keyword-block .keyword {
386
+		width: 94%;
387
+		padding: 3px 3%;
388
+		display: flex;
389
+		flex-flow: wrap;
390
+		justify-content: flex-start;
391
+	}
392
+
393
+	.keyword-box .keyword-block .hide-hot-tis {
394
+		display: flex;
395
+		justify-content: center;
396
+		font-size: 28upx;
397
+		color: #6b6b6b;
398
+	}
399
+
400
+	.keyword-box .keyword-block .keyword>view {
401
+		display: flex;
402
+		justify-content: center;
403
+		align-items: center;
404
+		border-radius: 60upx;
405
+		padding: 0 20upx;
406
+		margin: 10upx 20upx 10upx 0;
407
+		height: 60upx;
408
+		font-size: 28upx;
409
+		background-color: rgb(242, 242, 242);
410
+		color: #6b6b6b;
411
+	}
412
+</style>

+ 482 - 0
pages/transferConnect/transferConnect.vue

@@ -0,0 +1,482 @@
1
+<template>
2
+  <view class="HomeItem">
3
+    <view class="goWorkAll">
4
+			<view class="title">{{optData.deptName}}-{{optData.handoverType.name}}</view>
5
+			<view class="goWorkSelect history">
6
+			  <view class="goWorkSelect-head">总数量:{{optData.totalNum}}</view>
7
+			  <view class="goWorkSelect-list" v-for="(item, i) in optData.data">
8
+					{{item.deptName}}
9
+				</view>
10
+			</view>
11
+    </view>
12
+    <view class="foot_btn_spe">
13
+      <view class="btn1" @click="submit()">{{optData.handoverType.value==1 ? '确认中转' : '确认交接'}}</view>
14
+      <view class="btn3" @click="goBack">取消</view>
15
+    </view>
16
+    <!-- 填写交接人工号弹窗 -->
17
+    <selectAccount v-if="hosModels.disjunctor" :disjunctor="hosModels.disjunctor" @ok="hosOk"
18
+      @cancel="hosCancel">
19
+    </selectAccount>
20
+		
21
+		<!-- 中转 -->
22
+		<uni-popup ref="alertDialog" type="dialog" :mask-click="false">
23
+			<uni-popup-dialog type="warn" message="提示" cancelText="取消" confirmText="确定" title="通知" content="您确认中转吗?" @confirm="dialogConfirm"
24
+				@close="dialogClose"></uni-popup-dialog>
25
+		</uni-popup>
26
+  </view>
27
+</template>
28
+
29
+<script>
30
+  import * as commonFun from '../../tools/commonFun.js';
31
+  import {
32
+    pathUrl
33
+  } from "../../tools/photograph.js";
34
+  import selectAccount from "../../components/selectAccount/selectAccount.vue";
35
+  import {
36
+    get,
37
+    post,
38
+    webHandle
39
+  } from "../../http/http.js";
40
+  export default {
41
+    components: {
42
+      selectAccount,
43
+    },
44
+    data() {
45
+      return {
46
+				list:[],
47
+				optData:null,
48
+        tips: '',
49
+        currentIndex: undefined,
50
+        // 填写交接人工号弹窗model
51
+        hosModels: {
52
+          disjunctor: false,
53
+        },
54
+        currentCode: '', //当前拍照使用的科室二维码
55
+        currentData: {}, //当前小扫描的工单对象
56
+        orderId: undefined,
57
+        order: {},
58
+				digitalNum:null,
59
+				// 数字交接
60
+				digitalHandoverSwitch: false,
61
+        // 拍照动作开关
62
+        actionPhotoSwitch: false,
63
+        // 确认动作开关
64
+        actionConfirmSwitch: false,
65
+        // 确认动作模式开关
66
+        actionConfirmType: false,
67
+        // 参数
68
+        options: {},
69
+        //动作列表
70
+        actions: [],
71
+        //图片列表
72
+        imageValue: [],
73
+      };
74
+    },
75
+    methods: {
76
+      // 其他临床服务-运输过程-终点科室是否开通备注填写
77
+      isOpenTransportationProcessRemarks(data, accountObj, funName){
78
+        const tasktype = data.taskType;
79
+        console.log(tasktype, data);
80
+        if(tasktype.associationType.value === 'other' && tasktype.carryingCourses[this.currentIndex].logSwitch && data.gdState.value == 5){
81
+          uni.navigateTo({
82
+            url: `../../pages/transportationProcessRemarks/transportationProcessRemarks?data=${data ? encodeURIComponent(JSON.stringify(data)) : ''}&accountObj=${accountObj ? encodeURIComponent(JSON.stringify(accountObj)) : ''}&currentCode=${this.currentCode}&funName=${funName}&actions=${this.actions ? encodeURIComponent(JSON.stringify(this.actions)) : ''}&imageValue=${this.imageValue ? encodeURIComponent(JSON.stringify(this.imageValue)) : ''}`
83
+          })
84
+        }else{
85
+          commonFun[funName](this, data, accountObj);
86
+        }
87
+      },
88
+      // 填写交接人工号-确认
89
+      hosOk(data) {
90
+        console.log(data);
91
+        const {
92
+          accountName,
93
+          account,
94
+          accountId
95
+        } = data;
96
+        if (!accountName && !account) {
97
+          //没有填写交接人
98
+          uni.showModal({
99
+            title: '提示',
100
+            content: "请填写交接人工号!",
101
+            showCancel: false,
102
+            success: function(res) {
103
+              if (res.confirm) {
104
+                console.log('用户点击确定');
105
+              } else if (res.cancel) {
106
+                console.log('用户点击取消');
107
+              }
108
+            }
109
+          });
110
+          return;
111
+        } else if (!accountName && account || accountName && !account) {
112
+          //没有填写交接人
113
+          uni.showModal({
114
+            title: '提示',
115
+            content: "请填写正确的交接人工号!",
116
+            showCancel: false,
117
+            success: function(res) {
118
+              if (res.confirm) {
119
+                console.log('用户点击确定');
120
+              } else if (res.cancel) {
121
+                console.log('用户点击取消');
122
+              }
123
+            }
124
+          });
125
+          return;
126
+        }
127
+				uni.showLoading({
128
+				  title: "加载中",
129
+				  mask: true,
130
+				});
131
+				let postData = {
132
+					ids: this.optData.orderIds,
133
+					handoverTypeValue: this.optData.handoverType.value,
134
+					deptId: this.optData.deptId,
135
+					handoverUserId: accountId
136
+				}
137
+        this.hosModels.disjunctor = false;
138
+        post("/business/confirmHandover", postData).then((res) => {
139
+					uni.hideLoading();
140
+          if(res.status == 200){
141
+            uni.showToast({
142
+              icon: "none",
143
+              title: "操作成功",
144
+            });
145
+            setTimeout(_=>{
146
+            	uni.redirectTo({
147
+            		url:'/pages/receiptpage/receiptpage'
148
+            	})
149
+            },1000)
150
+          } else {
151
+            uni.showToast({
152
+              icon: "none",
153
+              title: res.info || "接口获取数据失败!",
154
+            });
155
+          }
156
+        });
157
+      },
158
+      // 填写交接人工号-取消
159
+      hosCancel() {
160
+        this.hosModels.disjunctor = false;
161
+      },
162
+      // 填写交接人工号弹窗
163
+      showSelectAccount() {
164
+        this.hosModels = {
165
+          disjunctor: true,
166
+        }
167
+      },
168
+			// 确定中转
169
+			submit(){
170
+				// 1:中转 2:终点
171
+				if(this.optData.handoverType.value==1){
172
+					this.$refs.alertDialog.open()
173
+				}else{
174
+					if(this.optData.taskType.carryingCourses[1].handoverSwitch){
175
+						this.showSelectAccount();
176
+					}else{
177
+						this.$refs.alertDialog.open()
178
+					}
179
+				}
180
+			},
181
+			// 确定中转
182
+			dialogConfirm(){
183
+				uni.showLoading({
184
+				  title: "加载中",
185
+				  mask: true,
186
+				});
187
+				let url = null
188
+				let postData = {
189
+					ids: this.optData.orderIds,
190
+					handoverTypeValue: this.optData.handoverType.value,
191
+					deptId: this.optData.deptId
192
+				}
193
+				if(this.optData.handoverType.value==1){
194
+					url = post("/business/confirmHandover", postData)
195
+				}else{
196
+					url = post("/business/confirmHandover", postData)
197
+				}
198
+				url.then((res) => {
199
+				  if(res.status == 200){
200
+						uni.hideLoading();
201
+						this.$refs.alertDialog.close()
202
+				    uni.showToast({
203
+				      icon: "none",
204
+				      title: "操作成功",
205
+				    });
206
+				    setTimeout(_=>{
207
+				    	uni.redirectTo({
208
+				    		url:'/pages/receiptpage/receiptpage'
209
+				    	})
210
+				    },1000)
211
+				  } else {
212
+            uni.showToast({
213
+              icon: "none",
214
+              title: res.info || "接口获取数据失败!",
215
+            });
216
+          }
217
+				});
218
+			},
219
+			// 取消
220
+			dialogClose(){
221
+				this.$refs.alertDialog.close()
222
+			},
223
+      // 返回
224
+      goBack() {
225
+        uni.navigateBack();
226
+      },
227
+      // 选择动作
228
+      checkboxChange: function (e) {
229
+        let items = this.actions;
230
+        let values = [];
231
+        if(this.actionConfirmType == 1 || this.actionConfirmType == 2){
232
+          values = e.detail.value || [];
233
+        }else if(this.actionConfirmType == 3){
234
+          values = [e.detail.value];
235
+        }
236
+        for (let i = 0, lenI = items.length; i < lenI; ++i) {
237
+          const item = items[i]
238
+          if(values.includes(item.value)){
239
+            this.$set(item,'checked',true)
240
+          }else{
241
+            this.$set(item,'checked',false)
242
+          }
243
+        }
244
+      },
245
+      // 获取上传状态
246
+      selectFile(e) {
247
+        console.log('选择文件:', e)
248
+        this.imageValue = this.imageValue.concat(e.tempFiles);
249
+      },
250
+      
251
+      // 移除
252
+      deleteFile(e) {
253
+        console.log('移除:', e);
254
+      },
255
+    },
256
+    onLoad(options) {
257
+      this.options = options;
258
+      if(options.data){
259
+        this.optData = JSON.parse(options.data);
260
+				console.log(this.optData);
261
+      }
262
+    },
263
+  };
264
+</script>
265
+
266
+<style lang="less" scoped>
267
+  .HomeItem {
268
+    .foot_btn_spe {
269
+      width: 100%;
270
+      position: fixed;
271
+      bottom: 30rpx;
272
+      left: 0;
273
+      line-height: 88rpx;
274
+      height: 88rpx;
275
+      text-align: center;
276
+      display: flex;
277
+      justify-content: space-between;
278
+      flex-wrap: wrap;
279
+    
280
+      &::after {
281
+        content: '';
282
+        flex: 1;
283
+      }
284
+    
285
+      view {
286
+        height: 88rpx;
287
+        width: 48%;
288
+        margin: 0 1%;
289
+        background-image: linear-gradient(to right, #72c172, #3bb197);
290
+        color: #fff;
291
+        border-radius: 8rpx;
292
+        font-size: 32rpx;
293
+        margin-top: 16rpx;
294
+      }
295
+    }
296
+
297
+    .login {
298
+      height: 420rpx;
299
+      padding: 0 32rpx;
300
+      padding-top: 164rpx;
301
+      position: relative;
302
+      z-index: 999;
303
+
304
+      .savePassword {
305
+        margin-top: 32rpx;
306
+      }
307
+
308
+      /deep/ uni-checkbox:not([disabled]) .uni-checkbox-input:hover {
309
+        border-color: #42b983 !important;
310
+      }
311
+
312
+      .login_input {
313
+        margin-top: 32rpx;
314
+        background-color: #ffffff;
315
+        height: 72rpx;
316
+        box-sizing: border-box;
317
+        padding: 16rpx;
318
+      }
319
+
320
+      .title {
321
+        font-size: 36rpx;
322
+        color: #42b983;
323
+        text-align: center;
324
+      }
325
+
326
+      .tips {
327
+        font-size: 28rpx;
328
+        color: red;
329
+        margin-top: 16rpx;
330
+      }
331
+
332
+      .page_item_btn {
333
+        height: 88rpx;
334
+        background-image: linear-gradient(to right, #72c172, #3bb197);
335
+        border-radius: 8rpx;
336
+        line-height: 88rpx;
337
+        color: #fff;
338
+        font-size: 36rpx;
339
+        font-weight: 700;
340
+        margin-top: 64rpx;
341
+        text-align: center;
342
+      }
343
+    }
344
+
345
+    //上班页面
346
+    .goWorkAll {
347
+      overflow-y: auto;
348
+      display: flex;
349
+      flex-direction: column;
350
+      justify-content: space-between;
351
+
352
+      /deep/ .uni-radio-input-checked {
353
+        background-color: #42b983 !important;
354
+        border-color: #42b983 !important;
355
+      }
356
+      /deep/ .uni-checkbox-input-checked {
357
+        color: #42b983 !important;
358
+      }
359
+			
360
+			.title{
361
+				text-align: center;
362
+				color: #64BD7B;
363
+				line-height: 80rpx;
364
+				border-bottom: 1rpx solid #E5E5E5;
365
+			}
366
+			
367
+      .goWorkSelect {
368
+        &.history {
369
+          height: 356rpx;
370
+          padding-bottom: 16rpx;
371
+        }
372
+
373
+        &.combination {
374
+          .goWorkSelect-head {}
375
+
376
+          .goWorkSelect-list {}
377
+        }
378
+
379
+        .goWorkSelect-head {
380
+          font-size: 28rpx;
381
+          line-height: 80rpx;
382
+          border-bottom: 2rpx solid #E5E5E5;
383
+          text-align: center;
384
+        }
385
+
386
+        .goWorkSelect-list {
387
+          padding: 16rpx;
388
+					
389
+					.input-num {
390
+					  height: 60rpx;
391
+					  border: 2rpx solid #E5E5E5;
392
+					  border-radius: 5rpx;
393
+					  // width: 100%;
394
+					  padding-left: 10rpx;
395
+					  // padding-right: 10rpx;
396
+					}
397
+					
398
+          .goWorkSelect-item {
399
+            height: 52rpx;
400
+            display: flex;
401
+            align-items: center;
402
+            border-bottom: 2rpx solid #e5e9ed;
403
+            padding: 16rpx;
404
+
405
+            &.relative {
406
+              position: relative;
407
+
408
+              .picker {
409
+                position: absolute;
410
+                width: 100%;
411
+                padding-left: 64rpx;
412
+              }
413
+            }
414
+
415
+            button {
416
+              font-size: 32rpx;
417
+              height: 52rpx;
418
+              line-height: 52rpx;
419
+              margin: 0;
420
+              margin-left: 16rpx;
421
+              color: rgb(7, 134, 60);
422
+              font-weight: 700;
423
+            }
424
+          }
425
+        }
426
+      }
427
+    }
428
+
429
+    .goWork {
430
+      margin: 0 auto 48rpx;
431
+      width: 240rpx;
432
+      height: 240rpx;
433
+
434
+      .goWork_btn_E {
435
+        width: 100%;
436
+        height: 100%;
437
+        background: #bee1a7;
438
+        border-radius: 30%;
439
+
440
+        .goWork_btn_W {
441
+          width: 75%;
442
+          height: 75%;
443
+          background-image: linear-gradient(to right, #72c172, #3bb197);
444
+          border-radius: 30%;
445
+          margin: 0 auto;
446
+          position: relative;
447
+          top: 12.5%;
448
+          line-height: 180rpx;
449
+          color: #fff;
450
+          font-size: 36rpx;
451
+          text-align: center;
452
+        }
453
+      }
454
+    }
455
+
456
+    .goWork_text {
457
+      width: 100%;
458
+
459
+      view {
460
+        text-align: center;
461
+      }
462
+
463
+      .goWork_text-p {
464
+        font-size: 36rpx;
465
+        margin-bottom: 48rpx;
466
+      }
467
+    }
468
+
469
+    .botImg {
470
+      height: 600rpx;
471
+      width: 100%;
472
+      position: fixed;
473
+      bottom: 0;
474
+
475
+      .img {
476
+        height: 100%;
477
+        background: url("../../static/img/BG.png") no-repeat center center;
478
+        background-size: 100% 100%;
479
+      }
480
+    }
481
+  }
482
+</style>

+ 316 - 0
pages/transferDistribution/transferDistribution.vue

@@ -0,0 +1,316 @@
1
+<template>
2
+  <view class="HomeItem">
3
+    <view class="goWorkAll">
4
+			<view class="title">{{optData.quickOrderName}}-发起中转配送</view>
5
+			<view class="goWorkSelect history">
6
+			  <view class="goWorkSelect-head">总数量:{{optData.totalNum}}</view>
7
+			  <view class="goWorkSelect-list" v-for="(item, i) in optData.data">
8
+					{{item.deptName}}
9
+				</view>
10
+			</view>
11
+    </view>
12
+    <view class="foot_btn_spe" v-if="optData.totalNum>0">
13
+      <view class="btn1" @click="submit()">确认建单</view>
14
+      <view class="btn3" @click="goBack">取消</view>
15
+    </view>
16
+		<view class="foot_btn_spe" v-else>
17
+		  <view class="btn2" @click="goBack">返回</view>
18
+		</view>
19
+		
20
+		<!-- 确认建单 -->
21
+		<uni-popup ref="alertDialog" type="dialog" :mask-click="false">
22
+			<uni-popup-dialog type="warn" message="提示" cancelText="取消" confirmText="确定" title="通知" content="您确认建单吗?" @confirm="dialogConfirm"
23
+				@close="dialogClose"></uni-popup-dialog>
24
+		</uni-popup>
25
+  </view>
26
+</template>
27
+
28
+<script>
29
+  import {
30
+    get,
31
+    post,
32
+    webHandle
33
+  } from "../../http/http.js";
34
+  export default {
35
+    data() {
36
+      return {
37
+				list:[],
38
+				optData:null
39
+      };
40
+    },
41
+    methods: {
42
+			// 确定中转
43
+			submit(){
44
+				this.$refs.alertDialog.open()
45
+			},
46
+			// 确定中转
47
+			dialogConfirm(){
48
+				uni.showLoading({
49
+				  title: "加载中",
50
+				  mask: true,
51
+				});
52
+				let postData = {
53
+					businessIds: this.optData.businessIds,
54
+					quickOrderId: this.optData.quickOrderId
55
+				}
56
+				post("/business/createAndSign", postData).then((res) => {
57
+					uni.hideLoading();
58
+				  if(res.status == 200){
59
+						this.$refs.alertDialog.close()
60
+				    uni.showToast({
61
+				      icon: "none",
62
+				      title: "操作成功",
63
+				    });
64
+				    setTimeout(_=>{
65
+				    	uni.redirectTo({
66
+				    		url:'/pages/receiptpage/receiptpage'
67
+				    	})
68
+				    },1000)
69
+				  } else {
70
+            uni.showToast({
71
+              icon: "none",
72
+              title: res.info || "接口获取数据失败!",
73
+            });
74
+          }
75
+				});
76
+			},
77
+			// 取消
78
+			dialogClose(){
79
+				this.$refs.alertDialog.close()
80
+			},
81
+      // 返回
82
+      goBack() {
83
+        uni.navigateBack();
84
+      }
85
+    },
86
+    onLoad(options) {
87
+      this.options = options;
88
+      if(options.data){
89
+        this.optData = JSON.parse(options.data);
90
+				console.log(this.optData);
91
+      }
92
+    },
93
+  };
94
+</script>
95
+
96
+<style lang="less" scoped>
97
+  .HomeItem {
98
+    .foot_btn_spe {
99
+      width: 100%;
100
+      position: fixed;
101
+      bottom: 30rpx;
102
+      left: 0;
103
+      line-height: 88rpx;
104
+      height: 88rpx;
105
+      text-align: center;
106
+      display: flex;
107
+      justify-content: space-between;
108
+      flex-wrap: wrap;
109
+    
110
+      &::after {
111
+        content: '';
112
+        flex: 1;
113
+      }
114
+			
115
+			.btn2{
116
+				width: 100% !important;
117
+			}
118
+			
119
+      view {
120
+        height: 88rpx;
121
+        width: 48%;
122
+        margin: 0 1%;
123
+        background-image: linear-gradient(to right, #72c172, #3bb197);
124
+        color: #fff;
125
+        border-radius: 8rpx;
126
+        font-size: 32rpx;
127
+        margin-top: 16rpx;
128
+      }
129
+    }
130
+
131
+    .login {
132
+      height: 420rpx;
133
+      padding: 0 32rpx;
134
+      padding-top: 164rpx;
135
+      position: relative;
136
+      z-index: 999;
137
+
138
+      .savePassword {
139
+        margin-top: 32rpx;
140
+      }
141
+
142
+      /deep/ uni-checkbox:not([disabled]) .uni-checkbox-input:hover {
143
+        border-color: #42b983 !important;
144
+      }
145
+
146
+      .login_input {
147
+        margin-top: 32rpx;
148
+        background-color: #ffffff;
149
+        height: 72rpx;
150
+        box-sizing: border-box;
151
+        padding: 16rpx;
152
+      }
153
+
154
+      .title {
155
+        font-size: 36rpx;
156
+        color: #42b983;
157
+        text-align: center;
158
+      }
159
+
160
+      .tips {
161
+        font-size: 28rpx;
162
+        color: red;
163
+        margin-top: 16rpx;
164
+      }
165
+
166
+      .page_item_btn {
167
+        height: 88rpx;
168
+        background-image: linear-gradient(to right, #72c172, #3bb197);
169
+        border-radius: 8rpx;
170
+        line-height: 88rpx;
171
+        color: #fff;
172
+        font-size: 36rpx;
173
+        font-weight: 700;
174
+        margin-top: 64rpx;
175
+        text-align: center;
176
+      }
177
+    }
178
+
179
+    //上班页面
180
+    .goWorkAll {
181
+      overflow-y: auto;
182
+      display: flex;
183
+      flex-direction: column;
184
+      justify-content: space-between;
185
+
186
+      /deep/ .uni-radio-input-checked {
187
+        background-color: #42b983 !important;
188
+        border-color: #42b983 !important;
189
+      }
190
+      /deep/ .uni-checkbox-input-checked {
191
+        color: #42b983 !important;
192
+      }
193
+			
194
+			.title{
195
+				text-align: center;
196
+				color: #64BD7B;
197
+				line-height: 80rpx;
198
+				border-bottom: 1rpx solid #E5E5E5;
199
+			}
200
+			
201
+      .goWorkSelect {
202
+        &.history {
203
+          height: 356rpx;
204
+          padding-bottom: 16rpx;
205
+        }
206
+
207
+        &.combination {
208
+          .goWorkSelect-head {}
209
+
210
+          .goWorkSelect-list {}
211
+        }
212
+
213
+        .goWorkSelect-head {
214
+          font-size: 28rpx;
215
+          line-height: 80rpx;
216
+          border-bottom: 2rpx solid #E5E5E5;
217
+          text-align: center;
218
+        }
219
+
220
+        .goWorkSelect-list {
221
+          padding: 16rpx;
222
+					
223
+					.input-num {
224
+					  height: 60rpx;
225
+					  border: 2rpx solid #E5E5E5;
226
+					  border-radius: 5rpx;
227
+					  // width: 100%;
228
+					  padding-left: 10rpx;
229
+					  // padding-right: 10rpx;
230
+					}
231
+					
232
+          .goWorkSelect-item {
233
+            height: 52rpx;
234
+            display: flex;
235
+            align-items: center;
236
+            border-bottom: 2rpx solid #e5e9ed;
237
+            padding: 16rpx;
238
+
239
+            &.relative {
240
+              position: relative;
241
+
242
+              .picker {
243
+                position: absolute;
244
+                width: 100%;
245
+                padding-left: 64rpx;
246
+              }
247
+            }
248
+
249
+            button {
250
+              font-size: 32rpx;
251
+              height: 52rpx;
252
+              line-height: 52rpx;
253
+              margin: 0;
254
+              margin-left: 16rpx;
255
+              color: rgb(7, 134, 60);
256
+              font-weight: 700;
257
+            }
258
+          }
259
+        }
260
+      }
261
+    }
262
+
263
+    .goWork {
264
+      margin: 0 auto 48rpx;
265
+      width: 240rpx;
266
+      height: 240rpx;
267
+
268
+      .goWork_btn_E {
269
+        width: 100%;
270
+        height: 100%;
271
+        background: #bee1a7;
272
+        border-radius: 30%;
273
+
274
+        .goWork_btn_W {
275
+          width: 75%;
276
+          height: 75%;
277
+          background-image: linear-gradient(to right, #72c172, #3bb197);
278
+          border-radius: 30%;
279
+          margin: 0 auto;
280
+          position: relative;
281
+          top: 12.5%;
282
+          line-height: 180rpx;
283
+          color: #fff;
284
+          font-size: 36rpx;
285
+          text-align: center;
286
+        }
287
+      }
288
+    }
289
+
290
+    .goWork_text {
291
+      width: 100%;
292
+
293
+      view {
294
+        text-align: center;
295
+      }
296
+
297
+      .goWork_text-p {
298
+        font-size: 36rpx;
299
+        margin-bottom: 48rpx;
300
+      }
301
+    }
302
+
303
+    .botImg {
304
+      height: 600rpx;
305
+      width: 100%;
306
+      position: fixed;
307
+      bottom: 0;
308
+
309
+      .img {
310
+        height: 100%;
311
+        background: url("../../static/img/BG.png") no-repeat center center;
312
+        background-size: 100% 100%;
313
+      }
314
+    }
315
+  }
316
+</style>

+ 5 - 0
tools/commonFun.js

@@ -14,6 +14,8 @@ export function nextDeptOrder_ss(_this, data, accountObj) {
14 14
     // 动作
15 15
     let actions = _this.actions.filter(v => v.checked);
16 16
     let actionRemarks = actions.map(v => v.name).toString();
17
+		// 数字交接
18
+		let handoverNum = _this.digitalNum
17 19
     if(actionRemarks){
18 20
       let postData = {
19 21
         orderId: data.id,
@@ -23,6 +25,9 @@ export function nextDeptOrder_ss(_this, data, accountObj) {
23 25
       }else if(data.gdState.value == 5){
24 26
         postData.actionRemarks = actionRemarks;
25 27
       }
28
+			if(handoverNum){
29
+				postData.handoverNum = handoverNum;
30
+			}
26 31
       post("/workerOrder/addOtherRemarks", postData).then((result1) => {
27 32
         if(result1.state == 200){
28 33
           postWorkerOrder(_this, data, accountObj);