vue2-client 1.12.56 → 1.12.58-chengran

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,108 +1,108 @@
1
- {
2
- "name": "vue2-client",
3
- "version": "1.12.56",
4
- "private": false,
5
- "scripts": {
6
- "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
7
- "serve:gaslink": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode gaslink",
8
- "serve:revenue": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode revenue",
9
- "serve:liuli": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode liuli",
10
- "serve:scada": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode scada",
11
- "serve:iot": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode iot",
12
- "serve:his": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode his",
13
- "mac-serve": "vue-cli-service serve --no-eslint --mode his",
14
- "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
15
- "test:unit": "vue-cli-service test:unit",
16
- "lint": "vue-cli-service lint",
17
- "build:preview": "vue-cli-service build --mode preview",
18
- "lint:nofix": "vue-cli-service lint --no-fix",
19
- "test": "jest"
20
- },
21
- "dependencies": {
22
- "@afwenming123/vue-easy-tree": "^1.0.1",
23
- "@afwenming123/vue-plugin-hiprint": "^0.0.70",
24
- "@amap/amap-jsapi-loader": "^1.0.1",
25
- "@antv/data-set": "^0.11.8",
26
- "@antv/g2plot": "^2.4.31",
27
- "@hufe921/canvas-editor": "^0.9.49",
28
- "@microsoft/fetch-event-source": "^2.0.1",
29
- "@vue/babel-preset-jsx": "^1.4.0",
30
- "animate.css": "^4.1.1",
31
- "ant-design-vue": "^1.7.8",
32
- "axios": "^0.27.2",
33
- "clipboard": "^2.0.11",
34
- "core-js": "^3.33.0",
35
- "crypto-js": "^4.1.1",
36
- "date-fns": "^2.29.3",
37
- "default-passive-events": "^2.0.0",
38
- "dotenv": "^16.3.1",
39
- "echarts": "^5.5.0",
40
- "enquire.js": "^2.1.6",
41
- "file-saver": "^2.0.5",
42
- "highlight.js": "^11.7.0",
43
- "html2canvas": "^1.4.1",
44
- "js-base64": "^3.7.5",
45
- "js-cookie": "^2.2.1",
46
- "jsencrypt": "^3.3.2",
47
- "jspdf": "^2.5.1",
48
- "lodash.clonedeep": "^4.5.0",
49
- "lodash.debounce": "^4",
50
- "lodash.get": "^4.4.2",
51
- "marked": "^4",
52
- "mockjs": "^1.1.0",
53
- "nprogress": "^0.2.0",
54
- "qs": "^6.11.2",
55
- "regenerator-runtime": "^0.14.0",
56
- "videojs-contrib-hls": "^5.15.0",
57
- "viser-vue": "^2.4.8",
58
- "vue": "^2.7.14",
59
- "vue-codemirror": "4.0.6",
60
- "vue-draggable-resizable": "^2",
61
- "vue-i18n": "^8.28.2",
62
- "vue-json-viewer": "^2.2.22",
63
- "vue-router": "^3.6.5",
64
- "vue-video-player": "^5.0.2",
65
- "vue-virtual-scroller": "^1.1.2",
66
- "vuedraggable": "^2.24.3",
67
- "vuex": "^3.6.2",
68
- "xlsx": "0.18.5"
69
- },
70
- "devDependencies": {
71
- "@ant-design/colors": "^7.0.0",
72
- "@babel/core": "^7.22.20",
73
- "@babel/eslint-parser": "^7.22.15",
74
- "@babel/preset-env": "^7.22.20",
75
- "@vue/cli-plugin-babel": "^5.0.8",
76
- "@vue/cli-plugin-eslint": "^5.0.8",
77
- "@vue/cli-service": "^5.0.8",
78
- "@vue/eslint-config-standard": "^8.0.1",
79
- "@vue/test-utils": "^1.3.6",
80
- "@jest/globals": "^29.7.0",
81
- "babel-plugin-transform-remove-console": "^6.9.4",
82
- "compression-webpack-plugin": "^10.0.0",
83
- "css-minimizer-webpack-plugin": "^5.0.1",
84
- "deepmerge": "^4.3.1",
85
- "eslint": "^8.51.0",
86
- "eslint-plugin-vue": "^9.17.0",
87
- "fast-deep-equal": "^3.1.3",
88
- "ignore-loader": "^0.1.2",
89
- "jest": "^29.7.0",
90
- "jest-environment-jsdom": "^29.7.0",
91
- "jest-transform-stub": "^2.0.0",
92
- "less-loader": "^6.2.0",
93
- "script-loader": "^0.7.2",
94
- "style-resources-loader": "^1.5.0",
95
- "vue-cli-plugin-style-resources-loader": "^0.1.5",
96
- "vue-jest": "^4.0.1",
97
- "vue-template-compiler": "^2.7.14",
98
- "webpack": "^5.88.2",
99
- "webpack-theme-color-replacer": "^1.4.7",
100
- "whatwg-fetch": "^3.6.19"
101
- },
102
- "browserslist": [
103
- "> 1%",
104
- "last 2 versions",
105
- "not dead",
106
- "not ie 11"
107
- ]
108
- }
1
+ {
2
+ "name": "vue2-client",
3
+ "version": "1.12.58-chengran",
4
+ "private": false,
5
+ "scripts": {
6
+ "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint",
7
+ "serve:gaslink": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode gaslink",
8
+ "serve:revenue": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode revenue",
9
+ "serve:liuli": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode liuli",
10
+ "serve:scada": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode scada",
11
+ "serve:iot": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode iot",
12
+ "serve:his": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --no-eslint --mode his",
13
+ "mac-serve": "vue-cli-service serve --no-eslint --mode his",
14
+ "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
15
+ "test:unit": "vue-cli-service test:unit",
16
+ "lint": "vue-cli-service lint",
17
+ "build:preview": "vue-cli-service build --mode preview",
18
+ "lint:nofix": "vue-cli-service lint --no-fix",
19
+ "test": "jest"
20
+ },
21
+ "dependencies": {
22
+ "@afwenming123/vue-easy-tree": "^1.0.1",
23
+ "@afwenming123/vue-plugin-hiprint": "^0.0.70",
24
+ "@amap/amap-jsapi-loader": "^1.0.1",
25
+ "@antv/data-set": "^0.11.8",
26
+ "@antv/g2plot": "^2.4.31",
27
+ "@hufe921/canvas-editor": "^0.9.49",
28
+ "@microsoft/fetch-event-source": "^2.0.1",
29
+ "@vue/babel-preset-jsx": "^1.4.0",
30
+ "animate.css": "^4.1.1",
31
+ "ant-design-vue": "^1.7.8",
32
+ "axios": "^0.27.2",
33
+ "clipboard": "^2.0.11",
34
+ "core-js": "^3.33.0",
35
+ "crypto-js": "^4.1.1",
36
+ "date-fns": "^2.29.3",
37
+ "default-passive-events": "^2.0.0",
38
+ "dotenv": "^16.3.1",
39
+ "echarts": "^5.5.0",
40
+ "enquire.js": "^2.1.6",
41
+ "file-saver": "^2.0.5",
42
+ "highlight.js": "^11.7.0",
43
+ "html2canvas": "^1.4.1",
44
+ "js-base64": "^3.7.5",
45
+ "js-cookie": "^2.2.1",
46
+ "jsencrypt": "^3.3.2",
47
+ "jspdf": "^2.5.1",
48
+ "lodash.clonedeep": "^4.5.0",
49
+ "lodash.debounce": "^4",
50
+ "lodash.get": "^4.4.2",
51
+ "marked": "^4",
52
+ "mockjs": "^1.1.0",
53
+ "nprogress": "^0.2.0",
54
+ "qs": "^6.11.2",
55
+ "regenerator-runtime": "^0.14.0",
56
+ "videojs-contrib-hls": "^5.15.0",
57
+ "viser-vue": "^2.4.8",
58
+ "vue": "^2.7.14",
59
+ "vue-codemirror": "4.0.6",
60
+ "vue-draggable-resizable": "^2",
61
+ "vue-i18n": "^8.28.2",
62
+ "vue-json-viewer": "^2.2.22",
63
+ "vue-router": "^3.6.5",
64
+ "vue-video-player": "^5.0.2",
65
+ "vue-virtual-scroller": "^1.1.2",
66
+ "vuedraggable": "^2.24.3",
67
+ "vuex": "^3.6.2",
68
+ "xlsx": "0.18.5"
69
+ },
70
+ "devDependencies": {
71
+ "@ant-design/colors": "^7.0.0",
72
+ "@babel/core": "^7.22.20",
73
+ "@babel/eslint-parser": "^7.22.15",
74
+ "@babel/preset-env": "^7.22.20",
75
+ "@vue/cli-plugin-babel": "^5.0.8",
76
+ "@vue/cli-plugin-eslint": "^5.0.8",
77
+ "@vue/cli-service": "^5.0.8",
78
+ "@vue/eslint-config-standard": "^8.0.1",
79
+ "@vue/test-utils": "^1.3.6",
80
+ "@jest/globals": "^29.7.0",
81
+ "babel-plugin-transform-remove-console": "^6.9.4",
82
+ "compression-webpack-plugin": "^10.0.0",
83
+ "css-minimizer-webpack-plugin": "^5.0.1",
84
+ "deepmerge": "^4.3.1",
85
+ "eslint": "^8.51.0",
86
+ "eslint-plugin-vue": "^9.17.0",
87
+ "fast-deep-equal": "^3.1.3",
88
+ "ignore-loader": "^0.1.2",
89
+ "jest": "^29.7.0",
90
+ "jest-environment-jsdom": "^29.7.0",
91
+ "jest-transform-stub": "^2.0.0",
92
+ "less-loader": "^6.2.0",
93
+ "script-loader": "^0.7.2",
94
+ "style-resources-loader": "^1.5.0",
95
+ "vue-cli-plugin-style-resources-loader": "^0.1.5",
96
+ "vue-jest": "^4.0.1",
97
+ "vue-template-compiler": "^2.7.14",
98
+ "webpack": "^5.88.2",
99
+ "webpack-theme-color-replacer": "^1.4.7",
100
+ "whatwg-fetch": "^3.6.19"
101
+ },
102
+ "browserslist": [
103
+ "> 1%",
104
+ "last 2 versions",
105
+ "not dead",
106
+ "not ie 11"
107
+ ]
108
+ }
@@ -1,154 +1,175 @@
1
- <template>
2
- <div>
3
- <a-collapse
4
- :activeKey="activeKey"
5
- @change="handleChange"
6
- >
7
- <a-collapse-panel
8
- v-for="(panel, panelIndex) in config.showData"
9
- :key="panelIndex.toString()"
10
- :show-arrow="false"
11
- >
12
- <template #header>
13
- <div class="header-content">
14
- <span
15
- class="header-text"
16
- :style="config.titleStyle"
17
- >
18
- {{ panel.title }}
19
- </span>
20
- <span
21
- v-for="(item, headerIndex) in panel.title2 || []"
22
- :key="headerIndex"
23
- class="info-item"
24
- :style="config.title2Style"
25
- >
26
- <span>{{ item.key }}:</span>
27
- <span>{{ item.value }}</span>
28
- </span>
29
- <span
30
- class="time-item"
31
- :style="config.title3Style"
32
- >
33
- {{ panel.title3 }}
34
- </span>
35
- </div>
36
- </template>
37
- <!-- 根据类型显示不同内容 -->
38
- <template v-if="panel.type === 'picture'">
39
- <img :src="panel.configName" alt="图片" style="width: 100%; max-width: 500px;"/>
40
- </template>
41
- <template v-else-if="panel.type === 'cover'">
42
- <x-report
43
- :use-oss-for-img="false"
44
- :config-name="panel.configName"
45
- server-name="af-his"
46
- :show-img-in-cell="true"
47
- :display-only="true"
48
- :edit-mode="false"
49
- :show-save-button="false"
50
- :no-padding="true"
51
- :dont-format="true">
52
- </x-report>
53
- </template>
54
- </a-collapse-panel>
55
- </a-collapse>
56
- </div>
57
- </template>
58
-
59
- <script>
60
- import XReport from '@vue2-client/base-client/components/common/XReportGrid'
61
- import { getConfigByName, runLogic } from '@vue2-client/services/api/common'
62
-
63
- export default {
64
- name: 'XCollapse',
65
- components: {
66
- XReport
67
- },
68
- inject: ['getConfigByName'],
69
- data () {
70
- return {
71
- activeKey: [],
72
- config: {}
73
- }
74
- },
75
- props: {
76
- // json名
77
- queryParamsName: {
78
- type: Object,
79
- default: 'openPrescriptionConfig'
80
- },
81
- },
82
- created () {
83
- this.init(this.queryParamsName)
84
- },
85
- methods: {
86
- async init (config) {
87
- getConfigByName(config, 'af-his', res => {
88
- this.config = res
89
- runLogic(res.mainLogic, localStorage.getItem(config.loc_id), 'af-his').then(result => {
90
- console.log(result)
91
- this.config.showData = result
92
- this.activeKey = this.config.showData.map((_, panelIndex) => panelIndex.toString())
93
- })
94
- })
95
- },
96
- handleChange (keys) {
97
- this.activeKey = keys
98
- },
99
- },
100
- watch: {
101
- queryParamsName: {
102
- handler (newValue) {
103
- console.log(newValue)
104
- this.getData(newValue)
105
- },
106
- deep: true
107
- }
108
- }
109
- }
110
- </script>
111
-
112
- <style scoped>
113
- .header-content {
114
- display: flex;
115
- align-items: center;
116
- gap: 24px;
117
- }
118
-
119
- .header-text {
120
- margin-right: 16px;
121
- font-size: 16px;
122
- font-weight: 800; /* 默认加粗 */
123
- }
124
-
125
- .info-item {
126
- display: inline-flex;
127
- align-items: center;
128
- gap: 4px;
129
- font-size: 12px;
130
- color: #888888;
131
- }
132
-
133
- .time-item {
134
- margin-left: auto;
135
- text-align: right;
136
- }
137
-
138
- /* 覆盖 ant-design-vue 的默认样式 */
139
- :deep(.ant-collapse-header) {
140
- align-items: center !important;
141
- }
142
-
143
- :deep(.ant-collapse-header-text) {
144
- flex: 1;
145
- }
146
-
147
- :deep(.ant-collapse-content > .ant-collapse-content-box) {
148
- padding: 0;
149
- }
150
-
151
- :deep(.ant-card-body) {
152
- padding: 8px;
153
- }
154
- </style>
1
+ <template>
2
+ <div>
3
+ <a-collapse
4
+ :activeKey="activeKey"
5
+ @change="handleChange"
6
+ >
7
+ <a-collapse-panel
8
+ v-for="(panel, panelIndex) in config.showData"
9
+ :key="panelIndex.toString()"
10
+ :show-arrow="false"
11
+ >
12
+ <template #header>
13
+ <div class="header-content">
14
+ <span
15
+ class="header-text"
16
+ :style="config.titleStyle"
17
+ >
18
+ {{ panel.title }}
19
+ </span>
20
+ <span
21
+ v-for="(item, headerIndex) in panel.title2 || []"
22
+ :key="headerIndex"
23
+ class="info-item"
24
+ :style="config.title2Style"
25
+ >
26
+ <span>{{ item.key }}:</span>
27
+ <span>{{ item.value }}</span>
28
+ </span>
29
+ <span
30
+ class="time-item"
31
+ :style="config.title3Style"
32
+ >
33
+ {{ panel.title3 }}
34
+ </span>
35
+ </div>
36
+ </template>
37
+ <!-- 根据类型显示不同内容 -->
38
+ <template v-if="panel.type === 'picture'">
39
+ <img :src="panel.configName" alt="图片" style="width: 100%; max-width: 500px;"/>
40
+ </template>
41
+ <template v-else-if="panel.type === 'cover'">
42
+ <x-report
43
+ :use-oss-for-img="false"
44
+ :config-name="panel.configName"
45
+ server-name="af-his"
46
+ :show-img-in-cell="true"
47
+ :display-only="true"
48
+ :edit-mode="false"
49
+ :show-save-button="false"
50
+ :no-padding="true"
51
+ :dont-format="true">
52
+ </x-report>
53
+ </template>
54
+ <template v-else-if="panel.type === 'xlist'">
55
+ <x-list :list-data="listData" />
56
+ </template>
57
+ </a-collapse-panel>
58
+ </a-collapse>
59
+ </div>
60
+ </template>
61
+
62
+ <script>
63
+ import XList from '@vue2-client/base-client/components/his/XList/XList.vue'
64
+ import XReport from '@vue2-client/base-client/components/common/XReportGrid'
65
+ import { getConfigByName, runLogic } from '@vue2-client/services/api/common'
66
+
67
+ export default {
68
+ name: 'XCollapse',
69
+ components: {
70
+ XReport,
71
+ XList
72
+ },
73
+ inject: ['getConfigByName'],
74
+ data () {
75
+ return {
76
+ activeKey: [],
77
+ config: {},
78
+ configName: '',
79
+ listData: []
80
+ }
81
+ },
82
+ props: {
83
+ // json名
84
+ queryParamsName: {
85
+ type: Object,
86
+ default: 'openPrescriptionConfig'
87
+ },
88
+ },
89
+ created () {
90
+ this.getData(this.queryParamsName)
91
+ window.addEventListener('storage', this.handleStorageChange)
92
+ },
93
+ beforeDestroy () {
94
+ window.removeEventListener('storage', this.handleStorageChange)
95
+ },
96
+ methods: {
97
+ handleStorageChange (event) {
98
+ if (event.key === 'watchStorage') {
99
+ // 处理 watchStorage 键的变化
100
+ console.log('watchStorage changed to:', event.newValue)
101
+ // 更新组件状态或其他操作
102
+ this.getData(this.configName, event.newValue)
103
+ this.$forceUpdate()
104
+ }
105
+ },
106
+ async getData (config, parameter) {
107
+ this.configName = config
108
+ getConfigByName(config, 'af-his', res => {
109
+ this.config = res
110
+ runLogic(res.mainLogic, { data: parameter }, 'af-his').then(result => {
111
+ console.log(result)
112
+ this.config.showData = result
113
+ this.activeKey = this.config.showData.map((_, panelIndex) => panelIndex.toString())
114
+ this.listData = result.listData
115
+ })
116
+ })
117
+ },
118
+ handleChange (keys) {
119
+ this.activeKey = keys
120
+ },
121
+ },
122
+ watch: {
123
+ queryParamsName: {
124
+ handler (newValue) {
125
+ this.getData(newValue, null)
126
+ },
127
+ deep: true
128
+ }
129
+ }
130
+ }
131
+ </script>
132
+
133
+ <style scoped>
134
+ .header-content {
135
+ display: flex;
136
+ align-items: center;
137
+ gap: 24px;
138
+ }
139
+
140
+ .header-text {
141
+ margin-right: 16px;
142
+ font-size: 16px;
143
+ font-weight: 800; /* 默认加粗 */
144
+ }
145
+
146
+ .info-item {
147
+ display: inline-flex;
148
+ align-items: center;
149
+ gap: 4px;
150
+ font-size: 12px;
151
+ color: #888888;
152
+ }
153
+
154
+ .time-item {
155
+ margin-left: auto;
156
+ text-align: right;
157
+ }
158
+
159
+ /* 覆盖 ant-design-vue 的默认样式 */
160
+ :deep(.ant-collapse-header) {
161
+ align-items: center !important;
162
+ }
163
+
164
+ :deep(.ant-collapse-header-text) {
165
+ flex: 1;
166
+ }
167
+
168
+ :deep(.ant-collapse-content > .ant-collapse-content-box) {
169
+ padding: 0;
170
+ }
171
+
172
+ :deep(.ant-card-body) {
173
+ padding: 8px;
174
+ }
175
+ </style>
@@ -103,18 +103,24 @@ export default {
103
103
  this.loaded = true
104
104
  },
105
105
  getValues (option, value, values) {
106
+ const _values = []
106
107
  for (const item of option) {
107
108
  if (value.includes(item.value)) {
108
109
  values.push(item.value)
110
+ _values.push(item.value)
109
111
  // 找到匹配节点后,递归添加所有子节点的值
110
112
  if (item.children && item.children.length) {
111
113
  this.getAllChildrenValues(item.children, values)
112
114
  }
113
115
  }
114
116
  if (item.children && item.children.length) {
115
- this.getValues(item.children, value, values)
117
+ const tempV = this.getValues(item.children, value, values)
118
+ if (tempV.length === item.children.length) {
119
+ values.push(item.value)
120
+ }
116
121
  }
117
122
  }
123
+ return _values
118
124
  },
119
125
  getAllChildrenValues (children, values) {
120
126
  for (const child of children) {
@@ -123,6 +129,7 @@ export default {
123
129
  this.getAllChildrenValues(child.children, values)
124
130
  }
125
131
  }
132
+ return values
126
133
  },
127
134
  // 获取树形选择框数据
128
135
  getTreeData () {
@@ -24,7 +24,7 @@ export default {
24
24
  data () {
25
25
  return {
26
26
  // 查询配置文件名
27
- queryParamsName: 'ceshiCRUD',
27
+ queryParamsName: 'ChargeQueryCRUD',
28
28
  // 查询配置左侧tree
29
29
  // xTreeConfigName: 'addressType',
30
30
  // 新增表单固定值