anytrek-front-public-component 1.4.15 → 1.4.17

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/README.md CHANGED
@@ -192,4 +192,305 @@ onMounted(() => {
192
192
  | `chooseItem` | `只有点击车辆后会触发` | `参数为两个(第一个为{vehicleId: xxx,deviceId: xxx},第二个为选择的车辆/设备信息)` |
193
193
  | `onlyClickChange` | `只有点击车辆后会触发` | `参数为两个(第一个为{vehicleId: xxx,deviceId: xxx},第二个为选择的车辆/设备信息)` |
194
194
  | `clickLandmarkOrTag` | `点击tag或者landmark(关闭/打开)触发` | `参数为三个(1.tag/landmark,2.是否关闭,3.选择的tag/landmark信息)` |
195
- | `eventTracking` | `触发埋点` | `参数为一个(是具体触发的埋点名称)` |
195
+ | `eventTracking` | `触发埋点` | `参数为一个(是具体触发的埋点名称)` |
196
+
197
+
198
+ ## 🧩 Component: `<addOrEditVehicle>`
199
+ add or edit vehicle
200
+
201
+ ```vue
202
+ <add-or-edit-vehicle
203
+ v-model="drawerShow"
204
+ :loginInfo="loginInfo"
205
+ :customerHabit="customerHabit"
206
+ :vehicleData="drawerForm"
207
+ :allAssetTypes="allAssetTypes"
208
+ :allVehicles="allVehicles"
209
+ :allDevices="allDevices"
210
+ :modelTypes="modelTypes"
211
+ :allVehicleToDevice="allVehicleToDevice"
212
+ :allTags="allTags"
213
+ :assetTypeFn="assetTypeFn"
214
+ :bindDeviceHis="bindDeviceHis"
215
+ :deviceBindTimeLimit="deviceBindTimeLimit"
216
+ :saveFunctionVehicle="saveFunctionVehicle"
217
+ :allLandmarks="allLandmarks"
218
+ :landmarkGroup="landmarkGroup"
219
+ :saveFunctionTag="saveFunctionTag"
220
+ :unitAllState="unitAllState"
221
+ :GOOGLE_MAP_API_KEY="GOOGLE_MAP_API_KEY"
222
+ :MAP_STYLES="MAP_STYLES"
223
+ :searhTrimblemapAddress="searhTrimblemapAddress"
224
+ :saveFunctionLandmark="saveFunctionLandmark"
225
+ ></add-or-edit-vehicle>
226
+ ```
227
+
228
+ ### 🔧 Example Setup
229
+ ```ts
230
+ const assetTypeFn = async (data: any, flag: 'add' | 'delete') => {
231
+ if (flag === 'delete') {
232
+ const res = await Api.editCustomizeVehicleType([
233
+ {
234
+ id: data.id,
235
+ isDelete: 1,
236
+ },
237
+ ]);
238
+ if (!res || (res.errorCode && res.errorCode !== 200)) return;
239
+ } else if (flag === 'add') {
240
+ const result = await Api.addCustomizeVehicleType([data]);
241
+ if (!result || result.errorCode) return;
242
+ }
243
+ await getCustomizeVehicleType();
244
+ };
245
+
246
+ const bindDeviceHis = async (params: any) => {
247
+ const res = await Api.loadBoundDevices(params);
248
+ if (!res || (res.errorCode && res.errorCode !== 200)) return;
249
+ return res;
250
+ };
251
+
252
+ const deviceBindTimeLimit = async (deviceId: any) => {
253
+ const res = await Api.getDeviceTimeLimitApi({
254
+ deviceId: deviceId,
255
+ });
256
+
257
+ if (!res || res.errorCode) return;
258
+
259
+ if (res.length) {
260
+ return [
261
+ res[0].limitStartTime,
262
+ dayjs(new Date()).utc().format('YYYY-MM-DDTHH:mm:ss[Z]'),
263
+ ];
264
+ } else {
265
+ return [null, dayjs(new Date()).utc().format('YYYY-MM-DDTHH:mm:ss[Z]')];
266
+ }
267
+ };
268
+
269
+ const saveFunctionVehicle = async (
270
+ params: any,
271
+ flag = false,
272
+ successFn: Function,
273
+ failFn: Function,
274
+ ) => {
275
+ let result;
276
+ if (params.id) {
277
+ result = await Api.editVehicleNEW([params]);
278
+ } else {
279
+ result = await Api.addVehicleNEW([params]);
280
+ }
281
+
282
+ // 设备状态为1的需要切换为2
283
+ if (flag) {
284
+ const res = await Api.editDeviceNew([
285
+ {
286
+ id: params.deviceId,
287
+ content: {
288
+ deviceStatus: 2,
289
+ modifyTime: dayjs(new Date()).utc().format(),
290
+ activateTime: dayjs(new Date()).utc().format(),
291
+ },
292
+ },
293
+ ]);
294
+
295
+ if (!res || res.errorCode) return failFn();
296
+ }
297
+
298
+ if (!result || result.errorCode) return failFn();
299
+ successFn();
300
+ refresh();
301
+ };
302
+ ```
303
+
304
+ ## 📋 Props Reference
305
+ | 参数名称 | 描述 | 数据类型 | 默认值 |
306
+ | ---------- | --------------------- | ---------------- | ------------------- |
307
+ | drawerShow | 控制drawer的显示和隐藏 | `Boolean` | false |
308
+ | loginInfo | 用户信息,包含用户的type和customerId | `Object` | {} |
309
+ | customerHabit | 用户的偏好设置,包含localTimezone、timeZone | `Object` | {} |
310
+ | vehicleData | 新增/编辑的车辆 | `Object` | {
311
+ id: row.id,
312
+ name: row.name,
313
+ deviceId: row.deviceId,
314
+ dataTime: '',
315
+ tagContent: row.tagContent,
316
+ assetType: row.assetType,
317
+ newIcon: row.newIcon,
318
+ vehicleTypeId: row.vehicleTypeId,
319
+ make: row.make,
320
+ year: row.year,
321
+ licensePlateNumber: row.licensePlateNumber,
322
+ vin: row.vin,
323
+ description: row.description,
324
+ } |
325
+ | allAssetTypes | 资产类型列表 | `Array` | [] |
326
+ | allVehicles | 车辆列表 | `Array` | [] |
327
+ | allDevices | 设备列表 | `Array` | [] |
328
+ | modelTypes | 设备类型列表 | `Array` | [] |
329
+ | allVehicleToDevice | 车辆设备绑定关系列表 | `Array` | [] |
330
+ | allTags | tag列表 | `Array` | [] |
331
+ | assetTypeFn |资产类型新增/删除方法 | `Function` | |
332
+ | bindDeviceHis |车辆绑定历史记录 | `Function` | |
333
+ | deviceBindTimeLimit | 设备绑定时间限制 | `Function` | |
334
+ | saveFunctionVehicle | 车辆保存 | `Function` | |
335
+ | allLandmarks | landmark列表 | `Array` | [] |
336
+ | landmarkGroup | landmarkGroup列表 | `Array` | [] |
337
+ | saveFunctionTag | tag保存 | `Function` | |
338
+ | unitAllState | 城市列表 | `Array` | [] |
339
+ | GOOGLE_MAP_API_KEY | 地图apikey | `String` | |
340
+ | MAP_STYLES | 地图样式 | `Array` | [] |
341
+ | searhTrimblemapAddress |查询地址api | `Function` | |
342
+ | saveFunctionLandmark | landmark保存 | `Function` | |
343
+
344
+
345
+ ## 🧩 Component: `<addOrEditTag>`
346
+ add or edit tag
347
+
348
+ ```vue
349
+ <add-or-edit-tag
350
+ v-model="drawerShow"
351
+ :loginInfo="loginInfo"
352
+ :customerHabit="customerHabit"
353
+ :itemData="drawerForm"
354
+ :allVehicles="allVehicles"
355
+ :allAssetTypes="allAssetTypes"
356
+ :allDevices="allDevices"
357
+ :modelTypes="modelTypes"
358
+ :allVehicleToDevice="allVehicleToDevice"
359
+ :allTags="allTags"
360
+ :allLandmarks="allLandmarks"
361
+ :landmarkGroup="landmarkGroup"
362
+ :saveFunctionTag="saveFunctionTag"
363
+ :assetTypeFn="assetTypeFn"
364
+ :bindDeviceHis="bindDeviceHis"
365
+ :deviceBindTimeLimit="deviceBindTimeLimit"
366
+ :saveFunctionVehicle="saveFunctionVehicle"
367
+ :unitAllState="unitAllState"
368
+ :GOOGLE_MAP_API_KEY="GOOGLE_MAP_API_KEY"
369
+ :MAP_STYLES="MAP_STYLES"
370
+ :searhTrimblemapAddress="searhTrimblemapAddress"
371
+ :saveFunctionLandmark="saveFunctionLandmark"
372
+ ></add-or-edit-tag>
373
+ ```
374
+
375
+ ### 🔧 Example Setup
376
+ ```ts
377
+ const saveFunctionTag = async (
378
+ params: any,
379
+ successFn: Function,
380
+ failFn: Function,
381
+ ) => {
382
+ let result;
383
+ if (params.id) {
384
+ result = await Api.updateTagsList([params]);
385
+ } else {
386
+ result = await Api.saveTagsList([params]);
387
+ }
388
+
389
+ if (!result || result.errorCode) return failFn();
390
+ successFn();
391
+
392
+ handleClose();
393
+ };
394
+
395
+ const handleAddBurialPoint = (type: string) => {
396
+ Api.addBurialPoint(type);
397
+ };
398
+ ```
399
+
400
+ ## 📋 Props Reference
401
+ | 参数名称 | 描述 | 数据类型 | 默认值 |
402
+ | ---------- | --------------------- | ---------------- | ------------------- |
403
+ | drawerShow | 控制drawer的显示和隐藏 | `Boolean` | false |
404
+ | loginInfo | 用户信息,包含用户的type和customerId | `Object` | {} |
405
+ | customerHabit | 用户的偏好设置,包含localTimezone、timeZone | `Object` | {} |
406
+ | itemData | 新增/编辑的tag | `Object` | {
407
+ id: eleForm.id,
408
+ name: eleForm.name,
409
+ description: eleForm.description,
410
+ content: {
411
+ vehicle: vehicle,
412
+ device: device,
413
+ tag: tag,
414
+ landmark: landmark,
415
+ },
416
+ } |
417
+ | allVehicles | 车辆列表 | `Array` | [] |
418
+ | allDevices | 设备列表 | `Array` | [] |
419
+ | modelTypes | 设备类型列表 | `Array` | [] |
420
+ | allVehicleToDevice | 车辆设备绑定关系列表 | `Array` | [] |
421
+ | allTags | tag列表 | `Array` | [] |
422
+ | allLandmarks | landmark列表 | `Array` | [] |
423
+ | landmarkGroup | landmarkGroup列表 | `Array` | [] |
424
+ | saveFunctionTag | tag保存 | `Function` | |
425
+ | assetTypeFn |资产类型新增/删除方法 | `Function` | |
426
+ | bindDeviceHis |车辆绑定历史记录 | `Function` | |
427
+ | deviceBindTimeLimit | 设备绑定时间限制 | `Function` | |
428
+ | saveFunctionVehicle | 车辆保存 | `Function` | |
429
+ | unitAllState | 城市列表 | `Array` | [] |
430
+ | GOOGLE_MAP_API_KEY | 地图apikey | `String` | |
431
+ | MAP_STYLES | 地图样式 | `Array` | [] |
432
+ | searhTrimblemapAddress |查询地址api | `Function` | |
433
+ | saveFunctionLandmark | landmark保存 | `Function` | |
434
+
435
+
436
+ ## 🧩 Component: `<addOrEditLandmark>`
437
+ add or edit landmark
438
+
439
+ ```vue
440
+ <add-or-edit-landmark
441
+ v-model="drawerShow"
442
+ :itemData="drawerForm"
443
+ :unitAllState="unitAllState"
444
+ :GOOGLE_MAP_API_KEY="GOOGLE_MAP_API_KEY"
445
+ :MAP_STYLES="MAP_STYLES"
446
+ :allLandmarkGroup="landmarkGroup"
447
+ :searhTrimblemapAddress="searhTrimblemapAddress"
448
+ :saveFunctionLandmark="saveFunctionLandmark"
449
+ @addGroup="handleAddGroup"
450
+ ></add-or-edit-landmark>
451
+ ```
452
+
453
+ ### 🔧 Example Setup
454
+ ```ts
455
+ const searhTrimblemapAddress = async (params: any) => {
456
+ const res = await Api.searhTrimblemapAddress(params);
457
+ return res;
458
+ };
459
+
460
+ const saveFunctionLandmark = async (
461
+ params: any,
462
+ successFn: Function,
463
+ failFn: Function,
464
+ ) => {
465
+ let result;
466
+
467
+ if (params.id) {
468
+ result = await Api.editLandmark([params]);
469
+ } else {
470
+ result = await Api.addLandmark([params]);
471
+ }
472
+
473
+ if (!result || result.errorCode) return failFn();
474
+ successFn();
475
+ initData();
476
+ };
477
+
478
+ const handleAddGroup = (params: any) => {
479
+ groupFormVisible.value = true;
480
+ groupForm = params;
481
+ };
482
+
483
+ ```
484
+
485
+ ## 📋 Props Reference
486
+ | 参数名称 | 描述 | 数据类型 | 默认值 |
487
+ | ---------- | --------------------- | ---------------- | ------------------- |
488
+ | drawerShow | 控制drawer的显示和隐藏 | `Boolean` | false |
489
+ | itemData | 新增/编辑的landmark | `Object` | |
490
+ | unitAllState | 城市列表 | `Array` | [] |
491
+ | GOOGLE_MAP_API_KEY | 地图apikey | `String` | |
492
+ | MAP_STYLES | 地图样式 | `Array` | [] |
493
+ | allLandmarkGroup | landmarkGroup列表 | `Array` | [] |
494
+ | searhTrimblemapAddress |查询地址api | `Function` | |
495
+ | saveFunctionLandmark | landmark保存 | `Function` | |
496
+ | @addGroup | 新增group | `Function` | |