vue2-client 1.8.119 → 1.8.120

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,94 +1,94 @@
1
- {
2
- "name": "vue2-client",
3
- "version": "1.8.119",
4
- "private": false,
5
- "scripts": {
6
- "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
7
- "mac-serve": "vue-cli-service serve --no-eslint --mode mac",
8
- "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
9
- "test:unit": "vue-cli-service test:unit",
10
- "lint": "vue-cli-service lint",
11
- "build:preview": "vue-cli-service build --mode preview",
12
- "lint:nofix": "vue-cli-service lint --no-fix",
13
- "test": "jest"
14
- },
15
- "dependencies": {
16
- "@amap/amap-jsapi-loader": "^1.0.1",
17
- "@antv/data-set": "^0.11.8",
18
- "@antv/g2plot": "^2.4.31",
19
- "@vue/babel-preset-jsx": "^1.4.0",
20
- "amis": "^3.4.3",
21
- "animate.css": "^4.1.1",
22
- "ant-design-vue": "^1.7.8",
23
- "axios": "^0.27.2",
24
- "clipboard": "^2.0.11",
25
- "core-js": "^3.33.0",
26
- "crypto-js": "^4.1.1",
27
- "date-fns": "^2.29.3",
28
- "default-passive-events": "^2.0.0",
29
- "dotenv": "^16.3.1",
30
- "echarts": "^5.5.0",
31
- "enquire.js": "^2.1.6",
32
- "file-saver": "^2.0.5",
33
- "highlight.js": "^11.7.0",
34
- "js-base64": "^3.7.5",
35
- "js-cookie": "^2.2.1",
36
- "jsencrypt": "^3.3.2",
37
- "lodash.clonedeep": "^4.5.0",
38
- "lodash.get": "^4.4.2",
39
- "mockjs": "^1.1.0",
40
- "nprogress": "^0.2.0",
41
- "qs": "^6.11.2",
42
- "regenerator-runtime": "^0.14.0",
43
- "videojs-contrib-hls": "^5.15.0",
44
- "viser-vue": "^2.4.8",
45
- "vue": "^2.7.14",
46
- "vue-codemirror": "4.0.6",
47
- "vue-i18n": "^8.28.2",
48
- "vue-json-viewer": "^2.2.22",
49
- "vue-router": "^3.6.5",
50
- "vue-video-player": "^5.0.2",
51
- "vuedraggable": "^2.24.3",
52
- "vuex": "^3.6.2",
53
- "xlsx": "0.18.5"
54
- },
55
- "devDependencies": {
56
- "@ant-design/colors": "^7.0.0",
57
- "@babel/core": "^7.22.20",
58
- "@babel/eslint-parser": "^7.22.15",
59
- "@babel/preset-env": "^7.22.20",
60
- "@vue/cli-plugin-babel": "^5.0.8",
61
- "@vue/cli-plugin-eslint": "^5.0.8",
62
- "@vue/cli-service": "^5.0.8",
63
- "@vue/eslint-config-standard": "^8.0.1",
64
- "@vue/test-utils": "^1.3.6",
65
- "babel-jest": "^26.6.3",
66
- "babel-plugin-transform-remove-console": "^6.9.4",
67
- "compression-webpack-plugin": "^10.0.0",
68
- "copy-webpack-plugin": "^11.0.0",
69
- "css-minimizer-webpack-plugin": "^5.0.1",
70
- "deepmerge": "^4.3.1",
71
- "eslint": "^8.51.0",
72
- "eslint-plugin-vue": "^9.17.0",
73
- "fast-deep-equal": "^3.1.3",
74
- "ignore-loader": "^0.1.2",
75
- "jest": "^26.6.3",
76
- "jest-environment-jsdom": "^26.6.2",
77
- "jest-transform-stub": "^2.0.0",
78
- "less-loader": "^6.2.0",
79
- "script-loader": "^0.7.2",
80
- "style-resources-loader": "^1.5.0",
81
- "vue-cli-plugin-style-resources-loader": "^0.1.5",
82
- "vue-jest": "^4.0.1",
83
- "vue-template-compiler": "^2.7.14",
84
- "webpack": "^5.88.2",
85
- "webpack-theme-color-replacer": "^1.4.7",
86
- "whatwg-fetch": "^3.6.19"
87
- },
88
- "browserslist": [
89
- "> 1%",
90
- "last 2 versions",
91
- "not dead",
92
- "not ie 11"
93
- ]
94
- }
1
+ {
2
+ "name": "vue2-client",
3
+ "version": "1.8.120",
4
+ "private": false,
5
+ "scripts": {
6
+ "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
7
+ "mac-serve": "vue-cli-service serve --no-eslint --mode mac",
8
+ "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
9
+ "test:unit": "vue-cli-service test:unit",
10
+ "lint": "vue-cli-service lint",
11
+ "build:preview": "vue-cli-service build --mode preview",
12
+ "lint:nofix": "vue-cli-service lint --no-fix",
13
+ "test": "jest"
14
+ },
15
+ "dependencies": {
16
+ "@amap/amap-jsapi-loader": "^1.0.1",
17
+ "@antv/data-set": "^0.11.8",
18
+ "@antv/g2plot": "^2.4.31",
19
+ "@vue/babel-preset-jsx": "^1.4.0",
20
+ "amis": "^3.4.3",
21
+ "animate.css": "^4.1.1",
22
+ "ant-design-vue": "^1.7.8",
23
+ "axios": "^0.27.2",
24
+ "clipboard": "^2.0.11",
25
+ "core-js": "^3.33.0",
26
+ "crypto-js": "^4.1.1",
27
+ "date-fns": "^2.29.3",
28
+ "default-passive-events": "^2.0.0",
29
+ "dotenv": "^16.3.1",
30
+ "echarts": "^5.5.0",
31
+ "enquire.js": "^2.1.6",
32
+ "file-saver": "^2.0.5",
33
+ "highlight.js": "^11.7.0",
34
+ "js-base64": "^3.7.5",
35
+ "js-cookie": "^2.2.1",
36
+ "jsencrypt": "^3.3.2",
37
+ "lodash.clonedeep": "^4.5.0",
38
+ "lodash.get": "^4.4.2",
39
+ "mockjs": "^1.1.0",
40
+ "nprogress": "^0.2.0",
41
+ "qs": "^6.11.2",
42
+ "regenerator-runtime": "^0.14.0",
43
+ "videojs-contrib-hls": "^5.15.0",
44
+ "viser-vue": "^2.4.8",
45
+ "vue": "^2.7.14",
46
+ "vue-codemirror": "4.0.6",
47
+ "vue-i18n": "^8.28.2",
48
+ "vue-json-viewer": "^2.2.22",
49
+ "vue-router": "^3.6.5",
50
+ "vue-video-player": "^5.0.2",
51
+ "vuedraggable": "^2.24.3",
52
+ "vuex": "^3.6.2",
53
+ "xlsx": "0.18.5"
54
+ },
55
+ "devDependencies": {
56
+ "@ant-design/colors": "^7.0.0",
57
+ "@babel/core": "^7.22.20",
58
+ "@babel/eslint-parser": "^7.22.15",
59
+ "@babel/preset-env": "^7.22.20",
60
+ "@vue/cli-plugin-babel": "^5.0.8",
61
+ "@vue/cli-plugin-eslint": "^5.0.8",
62
+ "@vue/cli-service": "^5.0.8",
63
+ "@vue/eslint-config-standard": "^8.0.1",
64
+ "@vue/test-utils": "^1.3.6",
65
+ "babel-jest": "^26.6.3",
66
+ "babel-plugin-transform-remove-console": "^6.9.4",
67
+ "compression-webpack-plugin": "^10.0.0",
68
+ "copy-webpack-plugin": "^11.0.0",
69
+ "css-minimizer-webpack-plugin": "^5.0.1",
70
+ "deepmerge": "^4.3.1",
71
+ "eslint": "^8.51.0",
72
+ "eslint-plugin-vue": "^9.17.0",
73
+ "fast-deep-equal": "^3.1.3",
74
+ "ignore-loader": "^0.1.2",
75
+ "jest": "^26.6.3",
76
+ "jest-environment-jsdom": "^26.6.2",
77
+ "jest-transform-stub": "^2.0.0",
78
+ "less-loader": "^6.2.0",
79
+ "script-loader": "^0.7.2",
80
+ "style-resources-loader": "^1.5.0",
81
+ "vue-cli-plugin-style-resources-loader": "^0.1.5",
82
+ "vue-jest": "^4.0.1",
83
+ "vue-template-compiler": "^2.7.14",
84
+ "webpack": "^5.88.2",
85
+ "webpack-theme-color-replacer": "^1.4.7",
86
+ "whatwg-fetch": "^3.6.19"
87
+ },
88
+ "browserslist": [
89
+ "> 1%",
90
+ "last 2 versions",
91
+ "not dead",
92
+ "not ie 11"
93
+ ]
94
+ }
@@ -0,0 +1,128 @@
1
+ <template>
2
+ <div class="reportMain">
3
+ <h2 class="reportTitle" v-html="config.title"></h2>
4
+ <table class="reportTable">
5
+ <tbody>
6
+ <template v-for="(row, rowIndex) in config.columns">
7
+ <template v-if="row[0].type !== 'inputColumns'">
8
+ <tr :key="rowIndex">
9
+ <td v-for="(cell, cellIndex) in row" :key="cellIndex" :colspan="cell.colSpan ? cell.colSpan : undefined" :rowspan="cell.rowSpan ? cell.rowSpan : undefined">
10
+ <template v-if="cell.type === 'column'">
11
+ {{ cell.text }}
12
+ </template>
13
+ <template v-else-if="cell.type === 'value'">
14
+ {{ cell.value }}
15
+ </template>
16
+ <template v-else-if="cell.type === 'input'">
17
+ <a-input v-model="data[cell.dataIndex]" />
18
+ </template>
19
+ <template v-else-if="cell.type === 'inputs'">
20
+ <a-input v-model="data[cell.dataIndex]" />
21
+ </template>
22
+ </td>
23
+ </tr>
24
+ </template>
25
+ <template v-else>
26
+ <tr v-for="(item, definitionIndex) in data[row[0].dataIndex]" :key="row[0].dataIndex + definitionIndex">
27
+ <td v-for="(cell, cellIndex) in row[0].definition" :key="cellIndex" :colspan="cell.colSpan ? cell.colSpan : undefined" :rowspan="cell.rowSpan ? cell.rowSpan : undefined">
28
+ <template v-if="cell.type === 'column'">
29
+ {{ cell.text }}
30
+ </template>
31
+ <template v-else-if="cell.type === 'value'">
32
+ {{ cell.value }}
33
+ </template>
34
+ <template v-else-if="cell.type === 'input'">
35
+ <a-input v-model="data[row[0].dataIndex][definitionIndex][cell.dataIndex]" />
36
+ </template>
37
+ <template v-else-if="cell.type === 'inputs'">
38
+ <a-input v-model="data[row[0].dataIndex][definitionIndex][cell.dataIndex]" />
39
+ </template>
40
+ </td>
41
+ </tr>
42
+ <tr :key="'dataAction' + rowIndex">
43
+ <td :colspan="maxColSpan">
44
+ <a-button-group>
45
+ <a-button @click="addData(data[row[0].dataIndex])"><a-icon type="plus"/></a-button>
46
+ <a-button @click="removeData(data[row[0].dataIndex])"><a-icon type="minus"/></a-button>
47
+ </a-button-group>
48
+ </td>
49
+ </tr>
50
+ </template>
51
+ </template>
52
+ </tbody>
53
+ </table>
54
+ </div>
55
+ </template>
56
+
57
+ <script>
58
+ export default {
59
+ name: 'XReport',
60
+ props: {
61
+ config: {
62
+ type: Object,
63
+ required: true
64
+ }
65
+ },
66
+ data () {
67
+ return {
68
+ data: this.config.data,
69
+ maxColSpan: 12
70
+ }
71
+ },
72
+ methods: {
73
+ removeData (dataItem) {
74
+ if (dataItem.length === 0) {
75
+ this.$message.warn('已经没有更多了')
76
+ return
77
+ }
78
+ dataItem.pop()
79
+ },
80
+ addData (dataItem) {
81
+ dataItem.push({
82
+ no: '',
83
+ sort: '',
84
+ content: '',
85
+ finishTime: ''
86
+ })
87
+ }
88
+ },
89
+ }
90
+ </script>
91
+
92
+ <style lang="less" scoped>
93
+ .reportMain {
94
+ width: 800px;
95
+ text-align: center;
96
+ margin: 0 auto;
97
+ font-size: 16px;
98
+ color: #000;
99
+ background-color: #fff;
100
+ padding: 15px;
101
+ border-radius: 8px;
102
+
103
+ .reportTitle {
104
+ font-weight: bold;
105
+ }
106
+
107
+ .reportTable {
108
+ width: 100%;
109
+ border-collapse: collapse;
110
+ table-layout:fixed;
111
+ word-break:break-all;
112
+ }
113
+
114
+ td {
115
+ border: 1px solid #000;
116
+ padding: 8px;
117
+ }
118
+
119
+ input {
120
+ width: 100%;
121
+ box-sizing: border-box;
122
+ }
123
+
124
+ .innerTable {
125
+ width: 784px;
126
+ }
127
+ }
128
+ </style>
@@ -0,0 +1,3 @@
1
+ import XReport from './XReport'
2
+
3
+ export default XReport
@@ -0,0 +1,38 @@
1
+ # XReport
2
+
3
+ 动态报表控件,根据JSON配置生成一个完整的报表
4
+
5
+
6
+ ## 何时使用
7
+
8
+ 当需要一个动态生成的报表时
9
+
10
+
11
+ 引用方式:
12
+
13
+ ```javascript
14
+ import XReport from '@vue2-client/base-client/components/XReport/XReport'
15
+
16
+ export default {
17
+ components: {
18
+ XReport
19
+ }
20
+ }
21
+ ```
22
+
23
+
24
+
25
+ ## 代码演示
26
+
27
+ ```html
28
+ ```
29
+
30
+ ## API
31
+
32
+ | 参数 | 说明 | 类型 | 默认值 |
33
+ |-----------------|--------------------------|--------|------|
34
+
35
+ ## 例子1
36
+ ----
37
+ ```
38
+ ```
@@ -1,67 +1,67 @@
1
- <template>
2
- <a-row class="data-content">
3
- <a-row>
4
- <DynamicTable v-if="pane.key" :title="pane.title" :table-data="pane.content"></DynamicTable>
5
- </a-row>
6
- <a-row>
7
- <ChartSelector :rawData="pane.content" v-if="pane?.content?.length"/>
8
- </a-row>
9
- <!-- <EvaluationArea :uuid="pane.key" v-if="pane.key && pane.content" @submitEvaluationLib="submitEvaluationLib"/>-->
10
- </a-row>
11
- </template>
12
-
13
- <script>
14
- import ChartSelector from './ChartSelector.vue'
15
- import EvaluationArea from './EvaluationArea.vue'
16
- import Ellipsis from '@vue2-client/components/Ellipsis/Ellipsis.vue'
17
- import DynamicTable from './DynamicTable.vue'
18
-
19
- export default {
20
- components: {
21
- DynamicTable,
22
- Ellipsis,
23
- ChartSelector,
24
- EvaluationArea
25
- },
26
- data () {
27
- return {
28
- dataTypeActiveKey: '0',
29
- pane: {}
30
- }
31
- },
32
- mounted () {
33
- this.pane = {}
34
- },
35
- methods: {
36
- submitEvaluationLib (value, uuid) {
37
- this.$emit('submitEvaluationLib', value, uuid)
38
- },
39
- show (obj) {
40
- const { uuid, question, data } = obj
41
- this.pane = { title: question, content: data, key: uuid }
42
- },
43
- }
44
- }
45
- </script>
46
- <style lang="less" scoped>
47
- .tab-title {
48
- font-size: 20px;
49
- font-weight: bold;
50
- color: #333;
51
- }
52
-
53
- .chart-card {
54
- margin-top: 20px;
55
- }
56
-
57
- .data-content {
58
- min-height: 100%;
59
- background-color: #fff;
60
- padding: 20px;
61
- border-radius: 8px;
62
- }
63
-
64
- :deep(.ant-tabs-bar) {
65
- margin-bottom: 0px;
66
- }
67
- </style>
1
+ <template>
2
+ <a-row class="data-content">
3
+ <a-row>
4
+ <DynamicTable v-if="pane.key" :title="pane.title" :table-data="pane.content"></DynamicTable>
5
+ </a-row>
6
+ <a-row>
7
+ <ChartSelector :rawData="pane.content" v-if="pane?.content?.length"/>
8
+ </a-row>
9
+ <EvaluationArea :uuid="pane.key" v-if="pane.key && pane.content" @submitEvaluationLib="submitEvaluationLib"/>
10
+ </a-row>
11
+ </template>
12
+
13
+ <script>
14
+ import ChartSelector from './ChartSelector.vue'
15
+ import EvaluationArea from './EvaluationArea.vue'
16
+ import Ellipsis from '@vue2-client/components/Ellipsis/Ellipsis.vue'
17
+ import DynamicTable from './DynamicTable.vue'
18
+
19
+ export default {
20
+ components: {
21
+ DynamicTable,
22
+ Ellipsis,
23
+ ChartSelector,
24
+ EvaluationArea
25
+ },
26
+ data () {
27
+ return {
28
+ dataTypeActiveKey: '0',
29
+ pane: {}
30
+ }
31
+ },
32
+ mounted () {
33
+ this.pane = {}
34
+ },
35
+ methods: {
36
+ submitEvaluationLib (value, uuid) {
37
+ this.$emit('submitEvaluationLib', value, uuid)
38
+ },
39
+ show (obj) {
40
+ const { uuid, question, data } = obj
41
+ this.pane = { title: question, content: data, key: uuid }
42
+ },
43
+ }
44
+ }
45
+ </script>
46
+ <style lang="less" scoped>
47
+ .tab-title {
48
+ font-size: 20px;
49
+ font-weight: bold;
50
+ color: #333;
51
+ }
52
+
53
+ .chart-card {
54
+ margin-top: 20px;
55
+ }
56
+
57
+ .data-content {
58
+ min-height: 100%;
59
+ background-color: #fff;
60
+ padding: 20px;
61
+ border-radius: 8px;
62
+ }
63
+
64
+ :deep(.ant-tabs-bar) {
65
+ margin-bottom: 0px;
66
+ }
67
+ </style>
@@ -1,69 +1,69 @@
1
- <template>
2
- <div class="evaluation-card">
3
- <div v-if="!action">
4
- <p>您对这次搜索结果满意吗?</p>
5
- <a-button-group>
6
- <a-space>
7
- <a-button type="primary" icon="like" @click="submitEvaluation(0)">满意</a-button>
8
- <a-button type="danger" icon="dislike" @click="submitEvaluation(1)">不满意</a-button>
9
- <a-button type="default" icon="frown" @click="submitEvaluation(2)">待改进</a-button>
10
- </a-space>
11
- </a-button-group>
12
- </div>
13
- </div>
14
- </template>
15
-
16
- <script>
17
- import { post } from '@vue2-client/services/api'
18
- import { indexedDB } from '@vue2-client/utils/indexedDB'
19
-
20
- export default {
21
- data () {
22
- return {
23
- action: false
24
- }
25
- },
26
- props: {
27
- uuid: {
28
- type: String,
29
- required: true
30
- }
31
- },
32
- methods: {
33
- submitEvaluation (result) {
34
- const key = 'question-' + this.uuid
35
- let flag = true
36
- indexedDB.get(key, (item) => {
37
- flag = false
38
- // 收藏状态不存储到库里
39
- delete item.isFavorite
40
- const content = Object.assign(item, {
41
- evaluation: result
42
- })
43
- // 保存到数据库中
44
- post('/api/af-system/logic/openapi/updateCommonData', {
45
- type: 'ai-question',
46
- content: this.uuid,
47
- newContent: content
48
- }).then(res => {
49
- this.action = true
50
- this.$message.success('评论成功')
51
- indexedDB.delete(key)
52
- indexedDB.add(key, content)
53
- })
54
- })
55
- // 如果 indexedDB 没有获取到说明是对话库的数据
56
- if (flag) {
57
- this.$emit('submitEvaluationLib', result, this.uuid)
58
- }
59
- }
60
- }
61
- }
62
- </script>
63
- <style lang="less" scoped>
64
- .evaluation-card {
65
- width: 50%;
66
- text-align: center;
67
- margin: 20px auto 0 auto;
68
- }
69
- </style>
1
+ <template>
2
+ <div class="evaluation-card">
3
+ <div v-if="!action">
4
+ <p>您对这次搜索结果满意吗?</p>
5
+ <a-button-group>
6
+ <a-space>
7
+ <a-button type="primary" icon="like" @click="submitEvaluation(0)">满意</a-button>
8
+ <a-button type="danger" icon="dislike" @click="submitEvaluation(1)">不满意</a-button>
9
+ <a-button type="default" icon="frown" @click="submitEvaluation(3)">问题不明确</a-button>
10
+ </a-space>
11
+ </a-button-group>
12
+ </div>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ import { post } from '@vue2-client/services/api'
18
+ import { indexedDB } from '@vue2-client/utils/indexedDB'
19
+
20
+ export default {
21
+ data () {
22
+ return {
23
+ action: false
24
+ }
25
+ },
26
+ props: {
27
+ uuid: {
28
+ type: String,
29
+ required: true
30
+ }
31
+ },
32
+ methods: {
33
+ submitEvaluation (result) {
34
+ const key = 'question-' + this.uuid
35
+ let flag = true
36
+ indexedDB.get(key, (item) => {
37
+ flag = false
38
+ // 收藏状态不存储到库里
39
+ delete item.isFavorite
40
+ const content = Object.assign(item, {
41
+ evaluation: result
42
+ })
43
+ // 保存到数据库中
44
+ post('/api/af-system/logic/openapi/updateCommonData', {
45
+ type: 'ai-question',
46
+ content: this.uuid,
47
+ newContent: content
48
+ }).then(res => {
49
+ this.action = true
50
+ this.$message.success('评论成功')
51
+ indexedDB.delete(key)
52
+ indexedDB.add(key, content)
53
+ })
54
+ })
55
+ // 如果 indexedDB 没有获取到说明是对话库的数据
56
+ if (flag) {
57
+ this.$emit('submitEvaluationLib', result, this.uuid)
58
+ }
59
+ }
60
+ }
61
+ }
62
+ </script>
63
+ <style lang="less" scoped>
64
+ .evaluation-card {
65
+ width: 50%;
66
+ text-align: center;
67
+ margin: 20px auto 0 auto;
68
+ }
69
+ </style>
@@ -0,0 +1,87 @@
1
+ <template>
2
+ <div>
3
+ <XReport :config="tableConfig" />
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ import XReport from '@vue2-client/base-client/components/common/XReport'
9
+
10
+ export default {
11
+ name: 'Example',
12
+ components: {
13
+ XReport
14
+ },
15
+ data () {
16
+ return {
17
+ tableConfig: {
18
+ title: '陕西城市燃气产业发展有限公司<br/>操作卡',
19
+ header: [
20
+ {},
21
+ {},
22
+ {}
23
+ ],
24
+ columns: [
25
+ [
26
+ { type: 'column', text: '操作任务', colSpan: 2 },
27
+ { type: 'value', colSpan: 10, value: '立管置换及顶层用户通气点火工艺流程' }
28
+ ],
29
+ [
30
+ { type: 'column', text: '操作单位', colSpan: 2 },
31
+ { type: 'input', colSpan: 4, dataIndex: 'unitName' },
32
+ { type: 'column', text: '操作地点', colSpan: 2 },
33
+ { type: 'input', colSpan: 4, dataIndex: 'addressName' }
34
+ ],
35
+ [
36
+ { type: 'column', text: '开 始', colSpan: 2 },
37
+ { type: 'inputs', colSpan: 4, dataIndex: 'startDateArr', format: '{}月{}日{}时{}分' },
38
+ { type: 'column', text: '完 毕', colSpan: 2 },
39
+ { type: 'inputs', colSpan: 4, dataIndex: 'endDateArr', format: '{}月{}日{}时{}分' }
40
+ ],
41
+ [
42
+ { type: 'column', text: '记号' },
43
+ { type: 'column', text: '顺序' },
44
+ { type: 'column', text: '操 作 内 容', colSpan: 8 },
45
+ { type: 'column', text: '操作完成时间', colSpan: 2 },
46
+ ],
47
+ [
48
+ {
49
+ type: 'inputColumns',
50
+ dataIndex: 'actionArr',
51
+ definition: [
52
+ { type: 'input', dataIndex: 'no' },
53
+ { type: 'input', dataIndex: 'sort' },
54
+ { type: 'input', dataIndex: 'content', colSpan: 8 },
55
+ { type: 'input', dataIndex: 'finishTime', colSpan: 2 },
56
+ ]
57
+ },
58
+ ],
59
+ [
60
+ { type: 'column', text: '备注', colSpan: 2 },
61
+ { type: 'input', colSpan: 10, dataIndex: 'remark' }
62
+ ],
63
+ [
64
+ { type: 'column', text: '操作人', colSpan: 2, rowSpan: 2 },
65
+ { type: 'input', colSpan: 4, rowSpan: 2, dataIndex: 'actionPerson' },
66
+ { type: 'column', text: '监护人', colSpan: 2, rowSpan: 2 },
67
+ { type: 'input', colSpan: 4, rowSpan: 2, dataIndex: 'guardian' }
68
+ ],
69
+ ],
70
+ data: {
71
+ taskName: '',
72
+ unitName: '',
73
+ addressName: '',
74
+ startDateArr: [],
75
+ endDateArr: [],
76
+ actionArr: [],
77
+ remark: '',
78
+ actionPerson: '',
79
+ guardian: ''
80
+ }
81
+ }
82
+ }
83
+ },
84
+ methods: {
85
+ }
86
+ }
87
+ </script>
@@ -1,72 +1,74 @@
1
- const { homePage } = require('../../config')
2
- // 视图组件
3
- const view = {
4
- tabs: () => import('@vue2-client/layouts/tabs'),
5
- blank: () => import('@vue2-client/layouts/BlankView'),
6
- page: () => import('@vue2-client/layouts/PageView')
7
- }
8
- // 动态路由对象定义
9
- const routerResource = {}
10
- // --------------------------------------基本视图组件--------------------------------------
11
- // 空白视图
12
- routerResource.blank = view.blank
13
- // 单页面视图
14
- routerResource.singlePage = view.blank
15
-
16
- // --------------------------------------仪表盘--------------------------------------
17
- routerResource.dashboard = view.blank
18
- // 工作台
19
- routerResource.workplace = () => import('@vue2-client/pages/dashboard/workplace')
20
- // --------------------------------------系统配置--------------------------------------
21
- routerResource.system = view.blank
22
- // 字典管理
23
- routerResource.dictionaryManage = () => import('@vue2-client/pages/system/dictionary')
24
- // 文件管理
25
- routerResource.fileManager = () => import('@vue2-client/pages/system/file')
26
- // 登录日志
27
- routerResource.loginInfor = () => import('@vue2-client/pages/system/monitor/loginInfor')
28
- // 操作日志
29
- routerResource.operLog = () => import('@vue2-client/pages/system/monitor/operLog')
30
- // 系统问题反馈工单
31
- routerResource.submitTicket = () => import('@vue2-client/pages/system/ticket')
32
- // 通用服务评价
33
- routerResource.ServiceReview = () => import('@vue2-client/pages/ServiceReview')
34
- // 系统设置
35
- routerResource.settings = () => import('@vue2-client/pages/system/settings')
36
- // AMIS示例页面
37
- routerResource.amisDemo = () => import('@vue2-client/pages/AMisDemo/AMisDemo')
38
- // 数据检索
39
- routerResource.dynamicStatistics = () => import('@vue2-client/pages/DynamicStatistics')
40
-
41
- // 基础路由组件注册
42
- const routerMap = {
43
- login: {
44
- authority: '*',
45
- path: '/login',
46
- component: () => import('@vue2-client/pages/login')
47
- },
48
- root: {
49
- path: '/',
50
- name: '首页',
51
- redirect: homePage,
52
- component: process.env.VUE_APP_SINGLE_PAPER === 'TRUE' ? view.blank : view.tabs,
53
- },
54
- exp403: {
55
- authority: '*',
56
- name: 'exp403',
57
- path: '403',
58
- component: () => import('@vue2-client/pages/exception/403')
59
- },
60
- exp404: {
61
- name: 'exp404',
62
- path: '404',
63
- component: () => import('@vue2-client/pages/exception/404')
64
- },
65
- exp500: {
66
- name: 'exp500',
67
- path: '500',
68
- component: () => import('@vue2-client/pages/exception/500')
69
- }
70
- }
71
- Object.assign(routerMap, routerResource)
72
- export default routerMap
1
+ const { homePage } = require('../../config')
2
+ // 视图组件
3
+ const view = {
4
+ tabs: () => import('@vue2-client/layouts/tabs'),
5
+ blank: () => import('@vue2-client/layouts/BlankView'),
6
+ page: () => import('@vue2-client/layouts/PageView')
7
+ }
8
+ // 动态路由对象定义
9
+ const routerResource = {}
10
+ // --------------------------------------基本视图组件--------------------------------------
11
+ // 空白视图
12
+ routerResource.blank = view.blank
13
+ // 单页面视图
14
+ routerResource.singlePage = view.blank
15
+
16
+ // --------------------------------------仪表盘--------------------------------------
17
+ routerResource.dashboard = view.blank
18
+ // 工作台
19
+ routerResource.workplace = () => import('@vue2-client/pages/dashboard/workplace')
20
+ // --------------------------------------系统配置--------------------------------------
21
+ routerResource.system = view.blank
22
+ // 字典管理
23
+ routerResource.dictionaryManage = () => import('@vue2-client/pages/system/dictionary')
24
+ // 文件管理
25
+ routerResource.fileManager = () => import('@vue2-client/pages/system/file')
26
+ // 登录日志
27
+ routerResource.loginInfor = () => import('@vue2-client/pages/system/monitor/loginInfor')
28
+ // 操作日志
29
+ routerResource.operLog = () => import('@vue2-client/pages/system/monitor/operLog')
30
+ // 系统问题反馈工单
31
+ routerResource.submitTicket = () => import('@vue2-client/pages/system/ticket')
32
+ // 通用服务评价
33
+ routerResource.ServiceReview = () => import('@vue2-client/pages/ServiceReview')
34
+ // 系统设置
35
+ routerResource.settings = () => import('@vue2-client/pages/system/settings')
36
+ // AMIS示例页面
37
+ routerResource.amisDemo = () => import('@vue2-client/pages/AMisDemo/AMisDemo')
38
+ // 数据检索
39
+ routerResource.dynamicStatistics = () => import('@vue2-client/pages/DynamicStatistics')
40
+ // 示例页面
41
+ routerResource.example = () => import('@vue2-client/pages/Example')
42
+
43
+ // 基础路由组件注册
44
+ const routerMap = {
45
+ login: {
46
+ authority: '*',
47
+ path: '/login',
48
+ component: () => import('@vue2-client/pages/login')
49
+ },
50
+ root: {
51
+ path: '/',
52
+ name: '首页',
53
+ redirect: homePage,
54
+ component: process.env.VUE_APP_SINGLE_PAPER === 'TRUE' ? view.blank : view.tabs,
55
+ },
56
+ exp403: {
57
+ authority: '*',
58
+ name: 'exp403',
59
+ path: '403',
60
+ component: () => import('@vue2-client/pages/exception/403')
61
+ },
62
+ exp404: {
63
+ name: 'exp404',
64
+ path: '404',
65
+ component: () => import('@vue2-client/pages/exception/404')
66
+ },
67
+ exp500: {
68
+ name: 'exp500',
69
+ path: '500',
70
+ component: () => import('@vue2-client/pages/exception/500')
71
+ }
72
+ }
73
+ Object.assign(routerMap, routerResource)
74
+ export default routerMap