浏览代码

首页扫描

seimin 2 年之前
父节点
当前提交
d847e764c4
共有 11 个文件被更改,包括 406 次插入23 次删除
  1. 1 1
      components/seiminSearch/seiminSearch.vue
  2. 1 1
      main.js
  3. 2 2
      manifest.json
  4. 15 1
      package-lock.json
  5. 2 1
      package.json
  6. 14 5
      pages/index/index.vue
  7. 5 3
      pages/patientBuild/patientBuild.vue
  8. 355 7
      pages/search/search.vue
  9. 8 0
      request/api.js
  10. 2 2
      request/config.js
  11. 1 0
      utils/index.js

+ 1 - 1
components/seiminSearch/seiminSearch.vue

@@ -36,7 +36,7 @@
36
       },
36
       },
37
       value: {
37
       value: {
38
         type: String,
38
         type: String,
39
-        default: false
39
+        default: ''
40
       },
40
       },
41
       button: {
41
       button: {
42
         value: String,
42
         value: String,

+ 1 - 1
main.js

@@ -12,7 +12,7 @@ import {
12
 Vue.prototype.$request = request
12
 Vue.prototype.$request = request
13
 
13
 
14
 Vue.config.productionTip = false
14
 Vue.config.productionTip = false
15
-console.info('v2.4.1')
15
+console.info('v1.0.2')
16
 
16
 
17
 App.mpType = 'app'
17
 App.mpType = 'app'
18
 
18
 

+ 2 - 2
manifest.json

@@ -2,8 +2,8 @@
2
     "name" : "医疗服务中心转运系统",
2
     "name" : "医疗服务中心转运系统",
3
     "appid" : "__UNI__FEB1B1E",
3
     "appid" : "__UNI__FEB1B1E",
4
     "description" : "医疗服务中心转运系统",
4
     "description" : "医疗服务中心转运系统",
5
-    "versionName" : "1.0.1",
6
-    "versionCode" : 101,
5
+    "versionName" : "1.0.2",
6
+    "versionCode" : 102,
7
     "transformPx" : false,
7
     "transformPx" : false,
8
     "app-plus" : {
8
     "app-plus" : {
9
         /* 5+App特有相关 */
9
         /* 5+App特有相关 */

+ 15 - 1
package-lock.json

@@ -12,7 +12,8 @@
12
         "animate.css": "^4.1.1",
12
         "animate.css": "^4.1.1",
13
         "crypto-js": "^4.1.1",
13
         "crypto-js": "^4.1.1",
14
         "date-fns": "^2.28.0",
14
         "date-fns": "^2.28.0",
15
-        "lodash": "^4.17.21"
15
+        "lodash": "^4.17.21",
16
+        "moment": "^2.29.3"
16
       }
17
       }
17
     },
18
     },
18
     "node_modules/animate.css": {
19
     "node_modules/animate.css": {
@@ -37,6 +38,14 @@
37
       "version": "4.17.21",
38
       "version": "4.17.21",
38
       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
39
       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
39
       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
40
       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
41
+    },
42
+    "node_modules/moment": {
43
+      "version": "2.29.3",
44
+      "resolved": "https://registry.npmmirror.com/moment/-/moment-2.29.3.tgz",
45
+      "integrity": "sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==",
46
+      "engines": {
47
+        "node": "*"
48
+      }
40
     }
49
     }
41
   },
50
   },
42
   "dependencies": {
51
   "dependencies": {
@@ -59,6 +68,11 @@
59
       "version": "4.17.21",
68
       "version": "4.17.21",
60
       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
69
       "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
61
       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
70
       "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
71
+    },
72
+    "moment": {
73
+      "version": "2.29.3",
74
+      "resolved": "https://registry.npmmirror.com/moment/-/moment-2.29.3.tgz",
75
+      "integrity": "sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw=="
62
     }
76
     }
63
   }
77
   }
64
 }
78
 }

+ 2 - 1
package.json

@@ -17,6 +17,7 @@
17
     "animate.css": "^4.1.1",
17
     "animate.css": "^4.1.1",
18
     "crypto-js": "^4.1.1",
18
     "crypto-js": "^4.1.1",
19
     "date-fns": "^2.28.0",
19
     "date-fns": "^2.28.0",
20
-    "lodash": "^4.17.21"
20
+    "lodash": "^4.17.21",
21
+    "moment": "^2.29.3"
21
   }
22
   }
22
 }
23
 }

+ 14 - 5
pages/index/index.vue

@@ -5,7 +5,7 @@
5
       <!-- 头部搜索 -->
5
       <!-- 头部搜索 -->
6
       <view class="search">
6
       <view class="search">
7
         <view class="search_wrap">
7
         <view class="search_wrap">
8
-          <input focus placeholder="请输入标本编码/检查单号/…" :placeholder-style="placeholderStyle" confirm-type="search"
8
+          <input focus placeholder="请输入标本编码/检查单号/…" :placeholder-style="placeholderStyle" confirm-type="search"
9
             v-model="searchText" />
9
             v-model="searchText" />
10
           <view class="searchBtn"> 搜索 </view>
10
           <view class="searchBtn"> 搜索 </view>
11
         </view>
11
         </view>
@@ -18,7 +18,7 @@
18
         color="#666">
18
         color="#666">
19
       </uni-notice-bar>
19
       </uni-notice-bar>
20
       <!-- 一键收标本 -->
20
       <!-- 一键收标本 -->
21
-      <view class="collect_specimens">
21
+      <view class="collect_specimens" v-if="openSpecimen">
22
         <view class="collect_icon"> 标 </view>
22
         <view class="collect_icon"> 标 </view>
23
         <view class="collect_specimensNum">
23
         <view class="collect_specimensNum">
24
           <view class="urgent collect_row" @click="gotoSpecimenList('urgent')">
24
           <view class="urgent collect_row" @click="gotoSpecimenList('urgent')">
@@ -114,6 +114,7 @@
114
     },
114
     },
115
     data() {
115
     data() {
116
       return {
116
       return {
117
+        openSpecimen: false, //标本的开通权限
117
         searchText: '', //首页搜索内容
118
         searchText: '', //首页搜索内容
118
         placeholderStyle: "color:#999;font-size:30rpx;line-height:66rpx;",
119
         placeholderStyle: "color:#999;font-size:30rpx;line-height:66rpx;",
119
         urgentNum: 0, //急标数量
120
         urgentNum: 0, //急标数量
@@ -195,12 +196,19 @@
195
       },
196
       },
196
       // 查询急标和普标数量
197
       // 查询急标和普标数量
197
       querySpecimenNumRequest() {
198
       querySpecimenNumRequest() {
198
-        return reqSpecimenWorkOrderMsg({
199
-          deptId: this.loginInfo.user.dept.id,
200
-        });
199
+        if (this.openSpecimen) {
200
+          return reqSpecimenWorkOrderMsg({
201
+            deptId: this.loginInfo.user.dept.id,
202
+          });
203
+        } else {
204
+          return Promise.resolve();
205
+        }
201
       },
206
       },
202
       // 查询急标和普标数量
207
       // 查询急标和普标数量
203
       querySpecimenNumResponse(res) {
208
       querySpecimenNumResponse(res) {
209
+        if (!this.openSpecimen) {
210
+          return;
211
+        }
204
         if (res.status == 200) {
212
         if (res.status == 200) {
205
           if (res.specimenCount) {
213
           if (res.specimenCount) {
206
             this.urgentNum = res.specimenCount.urgent;
214
             this.urgentNum = res.specimenCount.urgent;
@@ -271,6 +279,7 @@
271
         if (res.status == 200) {
279
         if (res.status == 200) {
272
           res.data = res.data || {};
280
           res.data = res.data || {};
273
           res.data.allTaskTypes = res.data.allTaskTypes || [];
281
           res.data.allTaskTypes = res.data.allTaskTypes || [];
282
+          this.openSpecimen = res.data.openSpecimen;
274
           this.quickOtherList = res.data.allTaskTypes.filter(
283
           this.quickOtherList = res.data.allTaskTypes.filter(
275
             (v) => v.associationType ? v.associationType.value == ASSOCIATION_TYPES["其他临床服务"] : false
284
             (v) => v.associationType ? v.associationType.value == ASSOCIATION_TYPES["其他临床服务"] : false
276
           );
285
           );

+ 5 - 3
pages/patientBuild/patientBuild.vue

@@ -85,6 +85,7 @@
85
       switchChange(e) {
85
       switchChange(e) {
86
         this.isUrgent = e.detail.value;
86
         this.isUrgent = e.detail.value;
87
         this.urgentRemark = '';
87
         this.urgentRemark = '';
88
+        this.isYYBuild = !this.isUrgent;
88
         this.showBtns(!this.isUrgent);
89
         this.showBtns(!this.isUrgent);
89
       },
90
       },
90
       // 选择设备
91
       // 选择设备
@@ -170,6 +171,7 @@
170
       },
171
       },
171
       // 是否加急
172
       // 是否加急
172
       allowUrgentChange(isUrgent) {
173
       allowUrgentChange(isUrgent) {
174
+        console.log(isUrgent,this.isYYBuild)
173
         if (this.isYYBuild) {
175
         if (this.isYYBuild) {
174
           this.isYYBuild = !isUrgent;
176
           this.isYYBuild = !isUrgent;
175
           if (!this.isYYBuild) {
177
           if (!this.isYYBuild) {
@@ -229,7 +231,7 @@
229
         console.log(this.patientBuildTrip)
231
         console.log(this.patientBuildTrip)
230
         if (
232
         if (
231
           (this.patientTaskType.associationType.value === this.ASSOCIATION_TYPES['患者陪检业务'] &&
233
           (this.patientTaskType.associationType.value === this.ASSOCIATION_TYPES['患者陪检业务'] &&
232
-            this.hasYYtimeChecks.length && this.patientTaskType.appointmentSwitch == 1) ||
234
+            checks.length && this.patientTaskType.appointmentSwitch == 1) ||
233
           (this.patientTaskType.associationType.value === this.ASSOCIATION_TYPES['患者其他服务业务'] &&
235
           (this.patientTaskType.associationType.value === this.ASSOCIATION_TYPES['患者其他服务业务'] &&
234
             this.patientTaskType.appointmentOtherSwitch == 1)
236
             this.patientTaskType.appointmentOtherSwitch == 1)
235
         ) {
237
         ) {
@@ -254,8 +256,8 @@
254
       },
256
       },
255
       // 底部按钮展示
257
       // 底部按钮展示
256
       showBtns(flag) {
258
       showBtns(flag) {
257
-        console.log(flag)
258
-        if (flag) {
259
+        console.log(flag,this.isYYBuild)
260
+        if (flag && this.isYYBuild) {
259
           //患者陪检业务或患者其他服务业务,并且预约建单开关打开的情况下
261
           //患者陪检业务或患者其他服务业务,并且预约建单开关打开的情况下
260
           this.btns = [{
262
           this.btns = [{
261
             name: "上一步",
263
             name: "上一步",

+ 355 - 7
pages/search/search.vue

@@ -1,22 +1,370 @@
1
 <template>
1
 <template>
2
-  <view>
3
-
2
+  <view class="search">
3
+    <view class="search-box">
4
+      <seiminSearch class="mSearch-input-box" :mode="2" button="inside" placeholder="请输入标本编码/检查单号/患者编码"
5
+        @input="debounceInp" v-model="keyword" ref="search"></seiminSearch>
6
+    </view>
7
+    <view class="search-keyword">
8
+      <!-- 患者 -->
9
+      <view class="head" v-if="searchList.patientList.length">患者</view>
10
+      <view class="orderList_listItem" v-for="search in searchList.patientList" :key="search.id"
11
+        @click="toDetail(search,'patient')">
12
+        <view class="orderList_listItem_header">
13
+          <view class="orderList_listItem_header_title">
14
+            <block v-if="search.illnessState">
15
+              <view class="associationType_icon red" v-if="search.illnessState.value === '2'">危</view>
16
+              <view class="associationType_icon red" v-else-if="search.illnessState.value === '3'">重</view>
17
+            </block>
18
+            <block v-if="search.careLevel">
19
+              <view class="associationType_icon red" v-if="search.careLevel.value === '0'">特</view>
20
+              <view class="associationType_icon red" v-else-if="search.careLevel.value === '1'">1</view>
21
+              <view class="associationType_icon green" v-else-if="search.careLevel.value === '2'">2</view>
22
+              <view class="associationType_icon green" v-else-if="search.careLevel.value === '3'">3</view>
23
+            </block>
24
+            <view class="taskNameAndWorkerName">
25
+              <text class="workerName">{{search.patientName || '暂无'}}</text>
26
+            </view>
27
+          </view>
28
+          <text class="orderList_listItem_header_more">{{search.bedNum }}床</text>
29
+        </view>
30
+        <view class="orderList_listItem_item">
31
+          <view class="orderList_listItem_item_content">
32
+            <text class="orderList_listItem_item_name">{{search.residenceNo || '暂无'}}</text>
33
+            <text class="orderList_listItem_item_time">待检{{search.watingCount}}</text>
34
+          </view>
35
+        </view>
36
+      </view>
37
+      <!-- 标本 -->
38
+      <view class="head" v-if="searchList.specimenList.length">标本</view>
39
+      <view class="orderList_listItem" v-for="search in searchList.specimenList" :key="search.id"
40
+        @click="toDetail(search,'specimen')">
41
+        <view class="orderList_listItem_header">
42
+          <view class="orderList_listItem_header_title">
43
+            <view class="taskNameAndWorkerName">
44
+              <text class="workerName">{{search.specimenDesc || '暂无'}}</text>
45
+            </view>
46
+          </view>
47
+          <text class="orderList_listItem_header_more">{{search.scode || '暂无' }}</text>
48
+        </view>
49
+        <view class="orderList_listItem_item">
50
+          <view class="orderList_listItem_item_content">
51
+            <text class="orderList_listItem_item_name">{{search.patientName || '暂无'}}
52
+              <block v-if="search.bedNum">({{search.bedNum}}床)</block>
53
+            </text>
54
+            <text class="orderList_listItem_item_time">{{search.speState?search.speState.name:'暂无'}}</text>
55
+          </view>
56
+        </view>
57
+      </view>
58
+      <!-- 检查 -->
59
+      <view class="head" v-if="searchList.inspectList.length">检查</view>
60
+      <view class="orderList_listItem" v-for="search in searchList.inspectList" :key="search.id"
61
+        @click="toDetail(search,'inspect')">
62
+        <view class="orderList_listItem_header">
63
+          <view class="orderList_listItem_header_title">
64
+            <view class="taskNameAndWorkerName">
65
+              <text class="workerName">{{search.inspectName || '暂无'}}</text>
66
+            </view>
67
+          </view>
68
+          <text class="orderList_listItem_header_more">{{search.bedNum }}床</text>
69
+        </view>
70
+        <view class="orderList_listItem_item">
71
+          <view class="orderList_listItem_item_content no">
72
+            <view class="no_item">
73
+              <text class="orderList_listItem_item_name">{{search.inspectCode || '暂无'}}</text>
74
+              <text class="orderList_listItem_item_time"></text>
75
+            </view>
76
+            <view class="no_item">
77
+              <text class="orderList_listItem_item_name">{{search.patientName || '暂无'}}
78
+                <block v-if="search.bedNum">({{search.bedNum}}床)</block>
79
+              </text>
80
+              <text class="orderList_listItem_item_time">{{search.yyTime||'暂无'}}</text>
81
+            </view>
82
+          </view>
83
+        </view>
84
+      </view>
85
+    </view>
86
+    <seiminModel ref="seiminModel"></seiminModel>
4
   </view>
87
   </view>
5
 </template>
88
 </template>
6
 
89
 
7
 <script>
90
 <script>
91
+  import {
92
+    debounce
93
+  } from 'lodash/function';
94
+  import {
95
+    reqSmartScan,
96
+  } from "../../request/api.js";
97
+  import {
98
+    mapState,
99
+    mapMutations,
100
+  } from "vuex";
101
+  import {
102
+    ASSOCIATION_TYPES
103
+  } from '../../utils/enum.association_types.js';
8
   export default {
104
   export default {
9
     data() {
105
     data() {
10
       return {
106
       return {
11
-
107
+        queryParams: {}, //路由参数
108
+        ASSOCIATION_TYPES,
109
+        checkedShowMsg: {}, //当前选中的任务类型的buildtrip信息
110
+        selectedPatient: {}, //当前选中的患者
111
+        taskTypeListResource: [], //任务类型列表(请求的原始数据)
112
+        taskTypeList: [], //任务类型列表
113
+        pickerTitle: "", //一键建单picker的title
114
+        debounceInp: null,
115
+        keyword: "",
116
+        searchList: {
117
+          patientList: [],
118
+          specimenList: [],
119
+          inspectList: [],
120
+        },
12
       };
121
       };
13
     },
122
     },
14
-    onLoad() {
15
-
123
+    computed: {
124
+      ...mapState("login", ["loginInfo"]),
125
+      ...mapState('other', ["deptDisplay"]),
16
     },
126
     },
17
-  }
127
+    methods: {
128
+      ...mapMutations('other', ['changeQucikCreateOrderType', 'clearPatientBuildData', 'changePatientBuildData']),
129
+      // 跳转患者详情
130
+      toDetail(search, type) {
131
+        switch (type) {
132
+          case 'patient':
133
+            uni.navigateTo({
134
+              url: `/pages/patientDetail/patientDetail?patientCode=${search.patientCode}&patientName=${search.patientName}`
135
+            })
136
+            break;
137
+          case 'specimen':
138
+            uni.navigateTo({
139
+              url: `/pages/detail/detail?id=${search.id}&associationType=specimen&scode=${search.scode}`
140
+            })
141
+            break;
142
+          case 'inspect':
143
+            uni.navigateTo({
144
+              url: `/pages/detail/detail?id=${search.id}&associationType=inspect`
145
+            })
146
+            break;
147
+        }
148
+      },
149
+      //监听输入
150
+      inputChange(event = '') {
151
+        let keyWord = event.detail ? event.detail.value : event;
152
+        // 长度小于等于0,返回首页
153
+        // 长度小于等于4,只搜索床号
154
+        // 长度大于4,搜索患者住院号,患者二维码,标本码,检查单号
155
+        if (!keyWord.length) {
156
+          uni.navigateTo({
157
+            url: '/pages/index/index'
158
+          })
159
+          return;
160
+        }
161
+        let postData = {
162
+          deptId: this.loginInfo.user.dept.id,
163
+          code: keyWord
164
+        };
165
+        uni.showLoading({
166
+          title: "加载中",
167
+          mask: true,
168
+        });
169
+        reqSmartScan(postData).then((res) => {
170
+          uni.hideLoading();
171
+          uni.stopPullDownRefresh();
172
+          if (res.state == 200) {
173
+            Object.assign(this.searchList, res.data);
174
+            console.log(this.searchList)
175
+          } else {
176
+            this.$refs.seiminModel.show({
177
+              skin: "toast",
178
+              icon: "error",
179
+              content: res.msg || "获取数据失败",
180
+            });
181
+            throw new Error(res.msg || "获取数据失败");
182
+          }
183
+        });
184
+      },
185
+    },
186
+    onReachBottom() {
187
+      this.reachBottom();
188
+    },
189
+    onPullDownRefresh() {
190
+      this.inputChange(this.keyword)
191
+    },
192
+    created() {
193
+      this.debounceInp = debounce(this.inputChange, 500);
194
+    },
195
+    beforeDestroy() {
196
+      this.debounceInp.cancel()
197
+    },
198
+    onLoad(queryParams) {
199
+      this.queryParams = queryParams;
200
+      this.keyword = queryParams.txt;
201
+      this.inputChange(queryParams.txt);
202
+    },
203
+    mounted() {
204
+      this.$refs.search.inputVal = this.queryParams.txt;
205
+    }
206
+  };
18
 </script>
207
 </script>
208
+<style lang="scss" scoped>
209
+  .search {
210
+    padding-bottom: 108rpx;
211
+
212
+    .search-box {
213
+      background-color: rgb(242, 242, 242);
214
+      padding: 15rpx 2.5%;
215
+      position: fixed;
216
+      z-index: 99;
217
+      width: 100%;
218
+      @include flex(space-between);
219
+
220
+      .mSearch-input-box {
221
+        width: 100%;
222
+      }
223
+
224
+      .input-box {
225
+        width: 85%;
226
+        flex-shrink: 1;
227
+        @include flex(center, center);
228
+
229
+        &>input {
230
+          width: 100%;
231
+          height: 60rpx;
232
+          font-size: 32rpx;
233
+          border: 0;
234
+          border-radius: 60rpx;
235
+          appearance: none;
236
+          padding: 0 3%;
237
+          margin: 0;
238
+          background-color: #ffffff;
239
+        }
240
+      }
241
+
242
+      .search-btn {
243
+        width: 15%;
244
+        margin: 0 0 0 2%;
245
+        flex-shrink: 0;
246
+        font-size: 28rpx;
247
+        color: #fff;
248
+        background: linear-gradient(to right, #ff9801, #ff570a);
249
+        border-radius: 60rpx;
250
+        @include flex(center, center);
251
+      }
252
+    }
253
+
254
+    .search-keyword {
255
+      padding: 88rpx 24rpx 0;
256
+
257
+      .head {
258
+        font-weight: bold;
259
+      }
19
 
260
 
20
-<style lang="scss">
261
+      // 列表项
262
+      .orderList_listItem {
263
+        width: 702rpx;
264
+        min-height: 232rpx;
265
+        background-color: #fff;
266
+        position: relative;
267
+        margin-top: 8rpx;
268
+        border-radius: 8rpx;
269
+        padding: 0 24rpx;
270
+        font-size: 32rpx;
271
+        @include border;
272
+        @include semicircle(#F9FAFB, 82rpx);
273
+        @include flex(flex-start, stretch, column);
21
 
274
 
275
+        .orderList_listItem_header {
276
+          height: 86rpx;
277
+          @include border($directive:bottom, $style:dashed);
278
+          @include flex(space-between, center);
279
+
280
+          .orderList_listItem_header_title {
281
+            color: #333;
282
+            flex: 1;
283
+            @include flex(flex-start, center);
284
+
285
+            .associationType_icon {
286
+              width: 48rpx;
287
+              height: 48rpx;
288
+              border-radius: 50%;
289
+              font-size: 24rpx;
290
+              margin-right: 8rpx;
291
+              @include border($color:#39b199);
292
+              @include flex(center, center);
293
+
294
+              &.green {
295
+                color: $defaultColor;
296
+                border: 1px solid $defaultColor;
297
+                background-color: rgba(73, 184, 86, 0.1);
298
+              }
299
+
300
+              &.red {
301
+                color: #FF3B53;
302
+                border: 1px solid #FF3B53;
303
+                background-color: #FFE8EB;
304
+              }
305
+            }
306
+
307
+            .taskNameAndWorkerName {
308
+              flex: 1;
309
+              @include flex;
310
+
311
+              .taskName {
312
+                max-width: 10em;
313
+                @include clamp;
314
+              }
315
+
316
+              .workerName {
317
+                flex: 1;
318
+                @include clamp;
319
+              }
320
+            }
321
+          }
322
+
323
+          .orderList_listItem_header_more {
324
+            color: #333;
325
+            font-weight: bold;
326
+            @include clamp;
327
+          }
328
+        }
329
+
330
+        .orderList_listItem_item {
331
+          height: 88rpx;
332
+          color: #333;
333
+          font-size: 30rpx;
334
+          flex: 1;
335
+          @include border(bottom);
336
+          @include flex(flex-start, stretch, column);
337
+
338
+          &:last-of-type {
339
+            border-bottom: none;
340
+          }
341
+
342
+          .orderList_listItem_item_content {
343
+            min-height: 143rpx;
344
+            flex: 1;
345
+            @include flex(space-between, center);
346
+
347
+            &.no {
348
+              @include flex($flexDirection: column);
349
+
350
+              .no_item {
351
+                height: 50%;
352
+                @include flex(space-between, center);
353
+              }
354
+            }
355
+
356
+            .orderList_listItem_item_name {
357
+              font-size: 34rpx;
358
+            }
359
+
360
+            .orderList_listItem_item_time {
361
+              color: #333;
362
+              font-size: 34rpx;
363
+              font-weight: bold;
364
+            }
365
+          }
366
+        }
367
+      }
368
+    }
369
+  }
22
 </style>
370
 </style>

+ 8 - 0
request/api.js

@@ -182,3 +182,11 @@ export const reqUppwd = (postData) =>
182
     data: postData,
182
     data: postData,
183
     method: 'POST'
183
     method: 'POST'
184
   });
184
   });
185
+
186
+// 首页搜索
187
+export const reqSmartScan = (postData) =>
188
+  request({
189
+    url: `/workerOrder/smartScan`,
190
+    data: postData,
191
+    method: 'POST'
192
+  });

+ 2 - 2
request/config.js

@@ -9,11 +9,11 @@ const host = 'http://192.168.3.108';
9
 //配置项
9
 //配置项
10
 const config = {
10
 const config = {
11
   baseUrl: "", // 后端服务地址
11
   baseUrl: "", // 后端服务地址
12
-  pdaDownloadUrl: `${host}/assets/downloads`, // PDA下载地址
12
+  pdaDownloadUrl: `${host}/apk`, // PDA下载地址
13
 };
13
 };
14
 // 后端服务地址
14
 // 后端服务地址
15
 const baseUrls = {
15
 const baseUrls = {
16
-  development: "http://192.168.3.108/service", //开发环境
16
+  development: `${host}/service`, //开发环境
17
   production: `${host}/service`, //生产环境
17
   production: `${host}/service`, //生产环境
18
 };
18
 };
19
 config.baseUrl = baseUrls[process.env.NODE_ENV];
19
 config.baseUrl = baseUrls[process.env.NODE_ENV];

+ 1 - 0
utils/index.js

@@ -4,6 +4,7 @@ import {
4
   pad,
4
   pad,
5
   enc
5
   enc
6
 } from "crypto-js";
6
 } from "crypto-js";
7
+import moment from 'moment';
7
 import {
8
 import {
8
   WORKORDER_EVALUATION
9
   WORKORDER_EVALUATION
9
 } from "./enum.workorderEvaluation.js";
10
 } from "./enum.workorderEvaluation.js";