vue2-client 1.14.29 → 1.14.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +95 -55
- package/src/base-client/components/common/XTable/XTableWrapper.vue +1 -1
- package/src/base-client/components/his/XHDescriptions/XHDescriptions.vue +9 -1
- package/src/base-client/components/his/XTitle/README.md +1 -1
- package/src/utils/request.js +2 -1
package/package.json
CHANGED
|
@@ -29,7 +29,9 @@
|
|
|
29
29
|
title="地址选择"
|
|
30
30
|
@ok="selected"
|
|
31
31
|
:zIndex="m_index"
|
|
32
|
-
:destroyOnClose="true"
|
|
32
|
+
:destroyOnClose="true"
|
|
33
|
+
width="70%"
|
|
34
|
+
>
|
|
33
35
|
<div class="certain-category-search-wrapper">
|
|
34
36
|
<a-auto-complete
|
|
35
37
|
style="right: 0px;width: 90%;z-index:2;margin-top:2%;"
|
|
@@ -189,15 +191,92 @@ export default {
|
|
|
189
191
|
radius: 500 // 范围,默认:500
|
|
190
192
|
})
|
|
191
193
|
this.map.addControl(new (aMap).ToolBar()) // 初始化工具插件
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
194
|
+
|
|
195
|
+
// 等待地图加载完成
|
|
196
|
+
this.map.on('complete', () => {
|
|
197
|
+
// 获取地图中心点
|
|
198
|
+
const center = this.map.getCenter()
|
|
199
|
+
|
|
200
|
+
// 创建标记对象 - 使用默认样式
|
|
201
|
+
this.marker = new (aMap).Marker({
|
|
202
|
+
position: [center.lng, center.lat], // 使用地图中心点作为初始位置
|
|
203
|
+
map: this.map // 直接在地图创建时添加标记
|
|
204
|
+
})
|
|
205
|
+
|
|
206
|
+
// 获取中心点地址信息
|
|
207
|
+
this.geocoder.getAddress(center, (status, result) => {
|
|
208
|
+
if (status === 'complete' && result.info === 'OK') {
|
|
209
|
+
const addressComponent = result.regeocode.addressComponent
|
|
210
|
+
this.divisions.province = addressComponent.province
|
|
211
|
+
this.divisions.city = addressComponent.city
|
|
212
|
+
this.divisions.district = addressComponent.district
|
|
213
|
+
this.divisions.township = addressComponent.township
|
|
214
|
+
this.divisions.towncode = addressComponent.towncode
|
|
215
|
+
this.divisions.street = addressComponent.street
|
|
216
|
+
|
|
217
|
+
// 获取小区信息
|
|
218
|
+
if (result.regeocode.aois && result.regeocode.aois.length) {
|
|
219
|
+
this.divisions.area = result.regeocode.aois[0].name
|
|
220
|
+
} else if (result.regeocode.pois && result.regeocode.pois.length) {
|
|
221
|
+
this.divisions.area = result.regeocode.pois[0].name
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
this.divisions.str = `${addressComponent.province}${addressComponent.city}${addressComponent.district}${addressComponent.township}`
|
|
225
|
+
|
|
226
|
+
if (this.divisions.str && result.regeocode.formattedAddress.startsWith(this.divisions.str)) {
|
|
227
|
+
this.readOnlyDivisions = true
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
this.addressObj.address = result.regeocode.formattedAddress
|
|
231
|
+
this.addressObj.lng_lat = `${center.lng},${center.lat}`
|
|
232
|
+
}
|
|
233
|
+
})
|
|
234
|
+
})
|
|
235
|
+
|
|
236
|
+
// 添加地图点击事件
|
|
237
|
+
this.map.on('click', (e) => {
|
|
238
|
+
const lnglat = e.lnglat
|
|
239
|
+
this.curPosition = lnglat
|
|
240
|
+
|
|
241
|
+
// 更新标记位置
|
|
242
|
+
this.marker.setPosition([lnglat.lng, lnglat.lat])
|
|
243
|
+
|
|
244
|
+
// 将地图中心移动到点击位置
|
|
245
|
+
this.map.setCenter([lnglat.lng, lnglat.lat])
|
|
246
|
+
|
|
247
|
+
// 获取点击位置的地址信息
|
|
248
|
+
this.geocoder.getAddress(lnglat, (status, result) => {
|
|
249
|
+
if (status === 'complete' && result.info === 'OK') {
|
|
250
|
+
const addressComponent = result.regeocode.addressComponent
|
|
251
|
+
this.divisions.province = addressComponent.province
|
|
252
|
+
this.divisions.city = addressComponent.city
|
|
253
|
+
this.divisions.district = addressComponent.district
|
|
254
|
+
this.divisions.township = addressComponent.township
|
|
255
|
+
this.divisions.towncode = addressComponent.towncode
|
|
256
|
+
this.divisions.street = addressComponent.street
|
|
257
|
+
|
|
258
|
+
// 获取小区信息
|
|
259
|
+
if (result.regeocode.aois && result.regeocode.aois.length) {
|
|
260
|
+
this.divisions.area = result.regeocode.aois[0].name
|
|
261
|
+
} else if (result.regeocode.pois && result.regeocode.pois.length) {
|
|
262
|
+
this.divisions.area = result.regeocode.pois[0].name
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
this.divisions.str = `${addressComponent.province}${addressComponent.city}${addressComponent.district}${addressComponent.township}`
|
|
266
|
+
|
|
267
|
+
if (this.divisions.str && result.regeocode.formattedAddress.startsWith(this.divisions.str)) {
|
|
268
|
+
this.readOnlyDivisions = true
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
if (!this.searchFlag) {
|
|
272
|
+
this.addressObj.address = result.regeocode.formattedAddress
|
|
273
|
+
this.addressObj.lng_lat = `${lnglat.lng},${lnglat.lat}`
|
|
274
|
+
} else {
|
|
275
|
+
this.searchFlag = false
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
})
|
|
279
|
+
})
|
|
201
280
|
},
|
|
202
281
|
onSelect (value) {
|
|
203
282
|
// 选中地址后不触发更新坐标
|
|
@@ -214,7 +293,11 @@ export default {
|
|
|
214
293
|
const label = labelMatch ? labelMatch[1].trim() : null
|
|
215
294
|
this.addressObj.address = this.mergeAddressAndLabel(this.addressObj.address, label)
|
|
216
295
|
this.addressObj.lng_lat = coordinatesMatch ? coordinatesMatch[1] : ''
|
|
217
|
-
|
|
296
|
+
|
|
297
|
+
// 更新地图中心和标记位置
|
|
298
|
+
const [lng, lat] = this.addressObj.lng_lat.split(',')
|
|
299
|
+
this.map.setCenter([lng, lat])
|
|
300
|
+
this.marker.setPosition([lng, lat])
|
|
218
301
|
},
|
|
219
302
|
mergeAddressAndLabel (address, label = '') {
|
|
220
303
|
// 从地址的末尾开始匹配标签的开头部分
|
|
@@ -337,53 +420,10 @@ export default {
|
|
|
337
420
|
GetGDMap(this.gaode_secret_key, this.gaode_key).then(aMap => {
|
|
338
421
|
this.initMap(aMap)
|
|
339
422
|
this.mapAutocomplete = new (aMap).AutoComplete({
|
|
340
|
-
// city 限定城市,默认全国
|
|
341
423
|
city: '全国',
|
|
342
424
|
dragEnable: true,
|
|
343
425
|
animateEnable: false
|
|
344
426
|
})
|
|
345
|
-
this.positionPicker = new window.AMapUI.PositionPicker({
|
|
346
|
-
mode: 'dragMap',
|
|
347
|
-
map: this.map
|
|
348
|
-
})
|
|
349
|
-
this.positionPicker.on('success', (positionResult) => {
|
|
350
|
-
console.log(positionResult)
|
|
351
|
-
console.log(positionResult.position)
|
|
352
|
-
this.curPosition = positionResult.position
|
|
353
|
-
// 设置 行政区划信息
|
|
354
|
-
if (positionResult?.regeocode?.addressComponent) {
|
|
355
|
-
const { addressComponent } = positionResult?.regeocode
|
|
356
|
-
this.divisions.province = addressComponent.province
|
|
357
|
-
this.divisions.city = addressComponent.city
|
|
358
|
-
this.divisions.district = addressComponent.district
|
|
359
|
-
this.divisions.township = addressComponent.township
|
|
360
|
-
this.divisions.towncode = addressComponent.towncode
|
|
361
|
-
this.divisions.street = addressComponent.street
|
|
362
|
-
// 试着获取小区
|
|
363
|
-
if (positionResult?.regeocode?.aois && positionResult?.regeocode?.aois.length) {
|
|
364
|
-
// 取第一个当做小区
|
|
365
|
-
this.divisions.area = positionResult?.regeocode?.aois[0]?.name
|
|
366
|
-
} else if (positionResult?.regeocode?.pois && positionResult?.regeocode?.pois.length) {
|
|
367
|
-
// 取第一个当做小区
|
|
368
|
-
this.divisions.area = positionResult?.regeocode?.pois[0]?.name
|
|
369
|
-
}
|
|
370
|
-
this.divisions.str =
|
|
371
|
-
`${addressComponent.province}${addressComponent.city}${addressComponent.district}${addressComponent.township}`
|
|
372
|
-
}
|
|
373
|
-
if (this.divisions.str && positionResult.address.startsWith(this.divisions.str)) {
|
|
374
|
-
// 如果 省市区信息和获取到的地址的前缀一致 那么省市区前缀禁止修改只能修改后面的 通过 onchange事件拦截
|
|
375
|
-
this.readOnlyDivisions = true
|
|
376
|
-
}
|
|
377
|
-
if (!this.searchFlag) {
|
|
378
|
-
this.addressObj.address = positionResult.address
|
|
379
|
-
this.addressObj.lng_lat = `${positionResult.position.lng},${positionResult.position.lat}`
|
|
380
|
-
} else {
|
|
381
|
-
this.searchFlag = false
|
|
382
|
-
}
|
|
383
|
-
})
|
|
384
|
-
this.positionPicker.on('fail', function (positionResult) {
|
|
385
|
-
})
|
|
386
|
-
this.positionPicker.start()
|
|
387
427
|
})
|
|
388
428
|
})
|
|
389
429
|
}
|
|
@@ -396,7 +436,7 @@ export default {
|
|
|
396
436
|
#addressSearchCombobox_map {
|
|
397
437
|
margin: 1% 0;
|
|
398
438
|
width: 100%;
|
|
399
|
-
height:
|
|
439
|
+
height: 600px;
|
|
400
440
|
text-align: center
|
|
401
441
|
}
|
|
402
442
|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
:rowKey="tableContext.rowKey"
|
|
11
11
|
:showSummary="tableContext.showSummary"
|
|
12
12
|
:rowSelection="tableContext.rowSelection"
|
|
13
|
-
:scroll="{ x: tableContext.scrollXWidth, y: tableContext.scrollYHeight }"
|
|
13
|
+
:scroll="{ x: tableContext.scrollXWidth, y: tableContext.scrollYHeight } "
|
|
14
14
|
:showPagination="tableContext.showPagination"
|
|
15
15
|
:hidePagination="tableContext.simpleMode"
|
|
16
16
|
:showSelected="!tableContext.simpleMode"
|
|
@@ -191,7 +191,7 @@ export default {
|
|
|
191
191
|
getConfigByName(data, 'af-his', res => {
|
|
192
192
|
this.config = res
|
|
193
193
|
console.log(this.config)
|
|
194
|
-
const parameter = { ...
|
|
194
|
+
const parameter = { ...res.parameter, ...this.parameter, ...parameterData }
|
|
195
195
|
runLogic(res.logicName, parameter, 'af-his').then(result => {
|
|
196
196
|
this.data = result
|
|
197
197
|
})
|
|
@@ -208,6 +208,14 @@ export default {
|
|
|
208
208
|
this.getData(newValue, {})
|
|
209
209
|
},
|
|
210
210
|
deep: true
|
|
211
|
+
},
|
|
212
|
+
parameter: {
|
|
213
|
+
handler (newValue, oldValue) {
|
|
214
|
+
console.log('监听事件触发:', { old: oldValue, new: newValue })
|
|
215
|
+
// 当 parameter 变化时重新获取数据
|
|
216
|
+
this.getData(this.queryParamsName, {})
|
|
217
|
+
},
|
|
218
|
+
deep: true // 深度监听对象内部变化
|
|
211
219
|
}
|
|
212
220
|
}
|
|
213
221
|
}
|
package/src/utils/request.js
CHANGED
|
@@ -160,7 +160,8 @@ function loadInterceptors () {
|
|
|
160
160
|
if (['post'].includes(config.method.toLowerCase()) && v4SessionKey &&
|
|
161
161
|
!config.url.includes('/logic/openapi/') &&
|
|
162
162
|
!config.url.includes('devApi') &&
|
|
163
|
-
!config.url.includes('auth/login')
|
|
163
|
+
!config.url.includes('auth/login') &&
|
|
164
|
+
config.url.includes('api/af-')) {
|
|
164
165
|
if (config.data && !(config.data instanceof FormData)) {
|
|
165
166
|
config.data = {
|
|
166
167
|
encrypted: EncryptUtil.AESEncryptCBC(config.data, v4SessionKey)
|