af-mobile-client-vue3 1.0.90 → 1.0.92-appraise
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 +109 -108
- package/src/assets/img/banner/appraise-banner-1.png +0 -0
- package/src/assets/img/banner/appraise-banner-2.png +0 -0
- package/src/components/data/XCellList/index.vue +35 -22
- package/src/components/data/XForm/index.vue +1 -1
- package/src/components/data/XFormItem/index.vue +997 -962
- package/src/router/routes.ts +6 -0
- package/src/views/component/XCellListView/index.vue +2 -2
- package/src/views/component/XFormAppraiseView/index.vue +169 -0
- package/src/views/component/XFormGroupView/index.vue +2 -2
- package/src/views/component/index.vue +4 -0
package/package.json
CHANGED
|
@@ -1,108 +1,109 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "af-mobile-client-vue3",
|
|
3
|
-
"type": "module",
|
|
4
|
-
"version": "1.0.
|
|
5
|
-
"description": "Vue + Vite component lib",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"engines": {
|
|
8
|
-
"node": ">=18.12.0",
|
|
9
|
-
"pnpm": ">=8.15.0"
|
|
10
|
-
},
|
|
11
|
-
"scripts": {
|
|
12
|
-
"dev": "cross-env MOCK_SERVER_PORT=8086 vite",
|
|
13
|
-
"build": "vue-tsc --noEmit && vite build",
|
|
14
|
-
"build:dev": "vue-tsc --noEmit && vite build --mode=development",
|
|
15
|
-
"preview": "vite preview",
|
|
16
|
-
"lint": "eslint . && vue-tsc --noEmit",
|
|
17
|
-
"lint:fix": "eslint . --fix",
|
|
18
|
-
"test": "vitest",
|
|
19
|
-
"release": "bumpp --commit --push --tag"
|
|
20
|
-
},
|
|
21
|
-
"dependencies": {
|
|
22
|
-
"@micro-zoe/micro-app": "1.0.0-rc.4",
|
|
23
|
-
"@unhead/vue": "^1.8.11",
|
|
24
|
-
"@vant/area-data": "^1.5.1",
|
|
25
|
-
"@vant/touch-emulator": "^1.4.0",
|
|
26
|
-
"@vant/use": "^1.6.0",
|
|
27
|
-
"@vueuse/core": "^10.9.0",
|
|
28
|
-
"animate.css": "^4.1.1",
|
|
29
|
-
"axios": "^1.6.7",
|
|
30
|
-
"crypto-js": "^4.2.0",
|
|
31
|
-
"echarts": "^5.5.0",
|
|
32
|
-
"lodash-es": "^4.17.21",
|
|
33
|
-
"nprogress": "^0.2.0",
|
|
34
|
-
"pinia": "^2.1.7",
|
|
35
|
-
"pinia-plugin-persistedstate": "^3.2.1",
|
|
36
|
-
"pnpm": "^9.4.0",
|
|
37
|
-
"qs": "^6.11.2",
|
|
38
|
-
"resize-detector": "^0.3.0",
|
|
39
|
-
"store": "^2.0.12",
|
|
40
|
-
"vant": "^4.9.0",
|
|
41
|
-
"vconsole": "^3.15.1",
|
|
42
|
-
"vue": "^3.4.21",
|
|
43
|
-
"vue-router": "^4.3.0"
|
|
44
|
-
},
|
|
45
|
-
"devDependencies": {
|
|
46
|
-
"@antfu/eslint-config": "2.8.0",
|
|
47
|
-
"@types/crypto-js": "^4.2.2",
|
|
48
|
-
"@types/lodash-es": "^4.17.12",
|
|
49
|
-
"@types/node": "^20.11.25",
|
|
50
|
-
"@types/nprogress": "^0.2.3",
|
|
51
|
-
"@types/store": "^2.0.5",
|
|
52
|
-
"@unocss/eslint-plugin": "^0.58.5",
|
|
53
|
-
"@unocss/preset-rem-to-px": "^0.58.5",
|
|
54
|
-
"@vitejs/plugin-legacy": "^5.3.1",
|
|
55
|
-
"@vitejs/plugin-vue": "^5.0.4",
|
|
56
|
-
"autoprefixer": "^10.4.18",
|
|
57
|
-
"bumpp": "^9.4.0",
|
|
58
|
-
"commitizen": "^4.3.0",
|
|
59
|
-
"consola": "^3.2.3",
|
|
60
|
-
"cross-env": "^7.0.3",
|
|
61
|
-
"cz-emoji-chinese": "^0.3.1",
|
|
62
|
-
"eslint": "npm:eslint-ts-patch@8.57.0-0",
|
|
63
|
-
"eslint-ts-patch": "8.57.0-0",
|
|
64
|
-
"husky": "^9.0.11",
|
|
65
|
-
"less": "^4.2.0",
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"unplugin-
|
|
74
|
-
"unplugin-vue-
|
|
75
|
-
"
|
|
76
|
-
"vite
|
|
77
|
-
"vite-plugin-
|
|
78
|
-
"vite-plugin-
|
|
79
|
-
"vite-plugin-
|
|
80
|
-
"vite-plugin-
|
|
81
|
-
"vite-plugin-
|
|
82
|
-
"vite-plugin-
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
"
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
"
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "af-mobile-client-vue3",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "1.0.92-appraise",
|
|
5
|
+
"description": "Vue + Vite component lib",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"engines": {
|
|
8
|
+
"node": ">=18.12.0",
|
|
9
|
+
"pnpm": ">=8.15.0"
|
|
10
|
+
},
|
|
11
|
+
"scripts": {
|
|
12
|
+
"dev": "cross-env MOCK_SERVER_PORT=8086 vite",
|
|
13
|
+
"build": "vue-tsc --noEmit && vite build",
|
|
14
|
+
"build:dev": "vue-tsc --noEmit && vite build --mode=development",
|
|
15
|
+
"preview": "vite preview",
|
|
16
|
+
"lint": "eslint . && vue-tsc --noEmit",
|
|
17
|
+
"lint:fix": "eslint . --fix",
|
|
18
|
+
"test": "vitest",
|
|
19
|
+
"release": "bumpp --commit --push --tag"
|
|
20
|
+
},
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@micro-zoe/micro-app": "1.0.0-rc.4",
|
|
23
|
+
"@unhead/vue": "^1.8.11",
|
|
24
|
+
"@vant/area-data": "^1.5.1",
|
|
25
|
+
"@vant/touch-emulator": "^1.4.0",
|
|
26
|
+
"@vant/use": "^1.6.0",
|
|
27
|
+
"@vueuse/core": "^10.9.0",
|
|
28
|
+
"animate.css": "^4.1.1",
|
|
29
|
+
"axios": "^1.6.7",
|
|
30
|
+
"crypto-js": "^4.2.0",
|
|
31
|
+
"echarts": "^5.5.0",
|
|
32
|
+
"lodash-es": "^4.17.21",
|
|
33
|
+
"nprogress": "^0.2.0",
|
|
34
|
+
"pinia": "^2.1.7",
|
|
35
|
+
"pinia-plugin-persistedstate": "^3.2.1",
|
|
36
|
+
"pnpm": "^9.4.0",
|
|
37
|
+
"qs": "^6.11.2",
|
|
38
|
+
"resize-detector": "^0.3.0",
|
|
39
|
+
"store": "^2.0.12",
|
|
40
|
+
"vant": "^4.9.0",
|
|
41
|
+
"vconsole": "^3.15.1",
|
|
42
|
+
"vue": "^3.4.21",
|
|
43
|
+
"vue-router": "^4.3.0"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@antfu/eslint-config": "2.8.0",
|
|
47
|
+
"@types/crypto-js": "^4.2.2",
|
|
48
|
+
"@types/lodash-es": "^4.17.12",
|
|
49
|
+
"@types/node": "^20.11.25",
|
|
50
|
+
"@types/nprogress": "^0.2.3",
|
|
51
|
+
"@types/store": "^2.0.5",
|
|
52
|
+
"@unocss/eslint-plugin": "^0.58.5",
|
|
53
|
+
"@unocss/preset-rem-to-px": "^0.58.5",
|
|
54
|
+
"@vitejs/plugin-legacy": "^5.3.1",
|
|
55
|
+
"@vitejs/plugin-vue": "^5.0.4",
|
|
56
|
+
"autoprefixer": "^10.4.18",
|
|
57
|
+
"bumpp": "^9.4.0",
|
|
58
|
+
"commitizen": "^4.3.0",
|
|
59
|
+
"consola": "^3.2.3",
|
|
60
|
+
"cross-env": "^7.0.3",
|
|
61
|
+
"cz-emoji-chinese": "^0.3.1",
|
|
62
|
+
"eslint": "npm:eslint-ts-patch@8.57.0-0",
|
|
63
|
+
"eslint-ts-patch": "8.57.0-0",
|
|
64
|
+
"husky": "^9.0.11",
|
|
65
|
+
"less": "^4.2.0",
|
|
66
|
+
"lint-staged": "^16.2.4",
|
|
67
|
+
"mockjs": "^1.1.0",
|
|
68
|
+
"postcss-mobile-forever": "^4.1.1",
|
|
69
|
+
"rollup": "^4.12.1",
|
|
70
|
+
"terser": "^5.29.1",
|
|
71
|
+
"typescript": "^5.4.2",
|
|
72
|
+
"unocss": "^0.58.5",
|
|
73
|
+
"unplugin-auto-import": "^0.17.5",
|
|
74
|
+
"unplugin-vue-components": "^0.26.0",
|
|
75
|
+
"unplugin-vue-router": "^0.8.4",
|
|
76
|
+
"vite": "^5.1.5",
|
|
77
|
+
"vite-plugin-compression": "^0.5.1",
|
|
78
|
+
"vite-plugin-mock-dev-server": "^1.4.7",
|
|
79
|
+
"vite-plugin-pwa": "^0.19.2",
|
|
80
|
+
"vite-plugin-sitemap": "^0.5.3",
|
|
81
|
+
"vite-plugin-svg-icons": "^2.0.1",
|
|
82
|
+
"vite-plugin-vconsole": "^2.1.1",
|
|
83
|
+
"vite-plugin-vue-layouts": "^0.11.0",
|
|
84
|
+
"vitest": "^1.3.1",
|
|
85
|
+
"vue-tsc": "^2.0.6"
|
|
86
|
+
},
|
|
87
|
+
"pnpm": {
|
|
88
|
+
"peerDependencyRules": {
|
|
89
|
+
"ignoreMissing": [
|
|
90
|
+
"postcss",
|
|
91
|
+
"esbuild"
|
|
92
|
+
],
|
|
93
|
+
"allowedVersions": {
|
|
94
|
+
"rollup": "^4.x"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"config": {
|
|
99
|
+
"commitizen": {
|
|
100
|
+
"path": "./node_modules/cz-emoji-chinese"
|
|
101
|
+
},
|
|
102
|
+
"cz-emoji-chinese": {
|
|
103
|
+
"skipQuestions": [
|
|
104
|
+
"body",
|
|
105
|
+
"scope"
|
|
106
|
+
]
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
Binary file
|
|
Binary file
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
BackTop as VanBackTop,
|
|
5
5
|
Button as VanButton,
|
|
6
6
|
Col as VanCol,
|
|
7
|
+
Icon as VanIcon,
|
|
7
8
|
List as VanList,
|
|
8
9
|
Popover as VanPopover,
|
|
9
10
|
PullRefresh as VanPullRefresh,
|
|
@@ -54,6 +55,9 @@ const detailColumns = ref([])
|
|
|
54
55
|
// 标签列
|
|
55
56
|
const tagList = ref([])
|
|
56
57
|
|
|
58
|
+
// 标题按钮列
|
|
59
|
+
const btnList = ref([])
|
|
60
|
+
|
|
57
61
|
// 底部列
|
|
58
62
|
const footColumns = ref([])
|
|
59
63
|
|
|
@@ -144,6 +148,9 @@ function initComponent() {
|
|
|
144
148
|
allActions.value.push({ text: item.actionArr[j].text, func: item.actionArr[j].func })
|
|
145
149
|
}
|
|
146
150
|
|
|
151
|
+
if (item.showTitleBtn)
|
|
152
|
+
btnList.value.push(item)
|
|
153
|
+
|
|
147
154
|
if (result.showSortIcon && item.sortable) {
|
|
148
155
|
orderList.value.push({
|
|
149
156
|
title: item.title,
|
|
@@ -307,14 +314,9 @@ function addOption() {
|
|
|
307
314
|
}
|
|
308
315
|
|
|
309
316
|
// 处理拨打电话
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
// 处理查看位置
|
|
315
|
-
// function handleLocation(item: any) {
|
|
316
|
-
// emit('handleLocation', item)
|
|
317
|
-
// }
|
|
317
|
+
function handleCall(item: any) {
|
|
318
|
+
emit('handleCall', item)
|
|
319
|
+
}
|
|
318
320
|
</script>
|
|
319
321
|
|
|
320
322
|
<template>
|
|
@@ -380,27 +382,20 @@ function addOption() {
|
|
|
380
382
|
/>
|
|
381
383
|
</p>
|
|
382
384
|
</div>
|
|
383
|
-
|
|
385
|
+
<div class="action-buttons">
|
|
384
386
|
<VanButton
|
|
385
387
|
class="action-button"
|
|
386
388
|
icon="phone"
|
|
387
389
|
size="small"
|
|
388
390
|
@click.stop="handleCall(item)"
|
|
389
391
|
/>
|
|
390
|
-
|
|
391
|
-
class="action-button"
|
|
392
|
-
icon="location"
|
|
393
|
-
size="small"
|
|
394
|
-
@click.stop="handleLocation(item)"
|
|
395
|
-
/>
|
|
396
|
-
</div> -->
|
|
392
|
+
</div>
|
|
397
393
|
</div>
|
|
398
394
|
</VanCol>
|
|
399
395
|
</VanRow>
|
|
400
396
|
<VanRow gutter="20" class="card_item_details" @click="emit('toDetail', item)">
|
|
401
397
|
<VanCol v-for="column of detailColumns" :key="`details_${column.dataIndex}`" :span="column.span">
|
|
402
398
|
<p>
|
|
403
|
-
{{ column.title }}:
|
|
404
399
|
<XBadge
|
|
405
400
|
:style="handleFunctionStyle(column.styleFunctionForValue, item[column.dataIndex])"
|
|
406
401
|
:dict-name="column.dictName" :dict-value="item[column.dataIndex]"
|
|
@@ -426,11 +421,15 @@ function addOption() {
|
|
|
426
421
|
size="medium"
|
|
427
422
|
class="tag-item"
|
|
428
423
|
>
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
424
|
+
<div class="tag-content">
|
|
425
|
+
<VanIcon v-if="column.tagIcon" :name="column.tagIcon" class="tag-icon" />
|
|
426
|
+
<span class="tag-title">{{ column.title }}:</span>
|
|
427
|
+
<XBadge
|
|
428
|
+
:dict-name="column.dictName"
|
|
429
|
+
:dict-value="item[column.dataIndex]"
|
|
430
|
+
:service-name="serviceName"
|
|
431
|
+
/>
|
|
432
|
+
</div>
|
|
434
433
|
</VanTag>
|
|
435
434
|
</VanCol>
|
|
436
435
|
</div>
|
|
@@ -610,6 +609,20 @@ function addOption() {
|
|
|
610
609
|
display: inline-flex;
|
|
611
610
|
align-items: center;
|
|
612
611
|
}
|
|
612
|
+
.tag-content {
|
|
613
|
+
display: flex;
|
|
614
|
+
align-items: center;
|
|
615
|
+
white-space: nowrap;
|
|
616
|
+
}
|
|
617
|
+
.tag-icon {
|
|
618
|
+
margin-right: 4px;
|
|
619
|
+
font-size: 14px;
|
|
620
|
+
display: inline-flex;
|
|
621
|
+
align-items: center;
|
|
622
|
+
}
|
|
623
|
+
.tag-title {
|
|
624
|
+
font-weight: normal;
|
|
625
|
+
}
|
|
613
626
|
}
|
|
614
627
|
}
|
|
615
628
|
}
|
|
@@ -139,7 +139,7 @@ defineExpose({ init, form, formGroupName, validate })
|
|
|
139
139
|
:get-data-params="myGetDataParams"
|
|
140
140
|
/>
|
|
141
141
|
</VanCellGroup>
|
|
142
|
-
<div v-if="props.submitButton" style="margin: 16px;">
|
|
142
|
+
<div v-if="props.submitButton && props.mode !== '预览'" style="margin: 16px;">
|
|
143
143
|
<VanButton round block type="primary" native-type="submit">
|
|
144
144
|
{{ props.groupFormItems?.btnName ? props.groupFormItems.btnName : '提交' }}
|
|
145
145
|
</VanButton>
|