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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue2-client",
3
- "version": "1.14.29",
3
+ "version": "1.14.31",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
@@ -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
- /* this.infoWindow = new (aMap).InfoWindow({
194
- anchor: 'bottom-center',
195
- isCustom: false, // 使用自定义窗体
196
- autoMove: true,
197
- content: '',
198
- showShadow: true,
199
- offset: new (aMap).Pixel(0, -25)
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
- this.map.setCenter(this.addressObj.lng_lat.split(','))
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: 400px;
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 = { ...parameterData, ...res.parameter, ...this.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
  }
@@ -22,7 +22,7 @@ XTitle 是一个多功能的标题组件,可以显示标题文本或按钮,
22
22
 
23
23
  ### 配置参数格式
24
24
 
25
- XTitle 组件通过一个字符串参数进行配置
25
+ XTitle 组件通过一个字符串参数进行配置
26
26
 
27
27
  各部分说明:
28
28
 
@@ -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)