vue2-client 1.2.49 → 1.2.50

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.
Files changed (48) hide show
  1. package/CHANGELOG.md +130 -130
  2. package/package.json +1 -1
  3. package/src/base-client/all.js +61 -61
  4. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +105 -104
  5. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  6. package/src/base-client/components/common/ScrollList/SrcollList.vue +113 -113
  7. package/src/base-client/components/common/ScrollList/index.js +3 -3
  8. package/src/base-client/components/common/XAddForm/XAddForm.vue +339 -339
  9. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +316 -316
  10. package/src/base-client/components/common/XForm/XFormItem.vue +6 -1
  11. package/src/base-client/components/common/XFormTable/XFormTable.vue +0 -2
  12. package/src/base-client/components/iot/CustomerDetailsView/index.md +1 -2
  13. package/src/base-client/components/iot/DeviceBrandDetailsView/DeviceBrandDetailsView.vue +1 -1
  14. package/src/base-client/components/iot/DeviceDetailsView/DeviceDetailsView.vue +2 -7
  15. package/src/base-client/components/iot/DeviceDetailsView/index.md +0 -2
  16. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsException.vue +57 -57
  17. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsMain.vue +240 -196
  18. package/src/base-client/components/iot/DeviceDetailsView/part/DeviceDetailsRead.vue +131 -131
  19. package/src/base-client/components/iot/DeviceTypeDetailsView/DeviceTypeDetailsView.vue +1 -5
  20. package/src/base-client/components/iot/InstructDetailsView/InstructDetailsView.vue +6 -14
  21. package/src/base-client/components/iot/InstructDetailsView/index.md +0 -2
  22. package/src/base-client/components/iot/LogDetailsView/LogDetailsView.vue +6 -13
  23. package/src/base-client/components/iot/LogDetailsView/index.md +0 -2
  24. package/src/base-client/components/iot/MeterDetailsView/MeterDetailsView.vue +17 -24
  25. package/src/base-client/components/iot/MeterDetailsView/index.md +0 -2
  26. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsCount.vue +0 -5
  27. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsException.vue +0 -5
  28. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsHandPlan.vue +0 -6
  29. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsInstruct.vue +0 -6
  30. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsMain.vue +1 -6
  31. package/src/base-client/components/iot/MeterDetailsView/part/MeterDetailsSellGas.vue +1 -6
  32. package/src/base-client/components/iot/WebmeterAnalysisView/WebmeterAnalysisView.vue +8 -83
  33. package/src/base-client/components/iot/WebmeterAnalysisView/index.md +0 -6
  34. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +853 -853
  35. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  36. package/src/base-client/plugins/AppData.js +57 -57
  37. package/src/base-client/plugins/compatible/LoginServiceOA.js +19 -0
  38. package/src/config/default/setting.config.js +2 -2
  39. package/src/layouts/header/HeaderNotice.vue +96 -96
  40. package/src/layouts/tabs/TabsView.vue +0 -3
  41. package/src/pages/login/Login.vue +53 -22
  42. package/src/pages/system/ticket/submitTicketSuccess.vue +268 -268
  43. package/src/router/async/config.async.js +26 -26
  44. package/src/router/index.js +27 -27
  45. package/src/theme/default/style.less +47 -47
  46. package/src/utils/map-utils.js +28 -17
  47. package/src/utils/routerUtil.js +1 -10
  48. package/vue.config.js +143 -143
@@ -1,47 +1,47 @@
1
- .week-mode{
2
- overflow: hidden;
3
- filter: invert(80%);
4
- }
5
- .beauty-scroll{
6
- scrollbar-color: @primary-color @primary-2;
7
- scrollbar-width: thin;
8
- -ms-overflow-style:none;
9
- position: relative;
10
- &::-webkit-scrollbar{
11
- width: 3px;
12
- height: 1px;
13
- }
14
- &::-webkit-scrollbar-thumb {
15
- border-radius: 3px;
16
- background: @primary-color;
17
- }
18
- &::-webkit-scrollbar-track {
19
- -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
20
- border-radius: 3px;
21
- background: @primary-3;
22
- }
23
- }
24
- .split-right{
25
- &:not(:last-child) {
26
- border-right: 1px solid rgba(98, 98, 98, 0.2);
27
- }
28
- }
29
- .disabled{
30
- cursor: not-allowed;
31
- color: @disabled-color;
32
- pointer-events: none;
33
- }
34
-
35
- ::-webkit-scrollbar{
36
- width: 5px;
37
- height: 5px;
38
- }
39
- ::-webkit-scrollbar-thumb {
40
- border-radius: 3px;
41
- background: @primary-3;
42
- }
43
- ::-webkit-scrollbar-track {
44
- -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
45
- border-radius: 3px;
46
- background: @primary-1;
47
- }
1
+ .week-mode{
2
+ overflow: hidden;
3
+ filter: invert(80%);
4
+ }
5
+ .beauty-scroll{
6
+ scrollbar-color: @primary-color @primary-2;
7
+ scrollbar-width: thin;
8
+ -ms-overflow-style:none;
9
+ position: relative;
10
+ &::-webkit-scrollbar{
11
+ width: 3px;
12
+ height: 1px;
13
+ }
14
+ &::-webkit-scrollbar-thumb {
15
+ border-radius: 3px;
16
+ background: @primary-color;
17
+ }
18
+ &::-webkit-scrollbar-track {
19
+ -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
20
+ border-radius: 3px;
21
+ background: @primary-3;
22
+ }
23
+ }
24
+ .split-right{
25
+ &:not(:last-child) {
26
+ border-right: 1px solid rgba(98, 98, 98, 0.2);
27
+ }
28
+ }
29
+ .disabled{
30
+ cursor: not-allowed;
31
+ color: @disabled-color;
32
+ pointer-events: none;
33
+ }
34
+
35
+ ::-webkit-scrollbar{
36
+ width: 5px;
37
+ height: 5px;
38
+ }
39
+ ::-webkit-scrollbar-thumb {
40
+ border-radius: 3px;
41
+ background: @primary-3;
42
+ }
43
+ ::-webkit-scrollbar-track {
44
+ -webkit-box-shadow: inset 0 0 1px rgba(0,0,0,0);
45
+ border-radius: 3px;
46
+ background: @primary-1;
47
+ }
@@ -1,17 +1,28 @@
1
- //地图相关插件
2
-
3
- // vuecomp:传入vue组件实例即可
4
- export function getLocation(vuecomp,address) {
5
- return new Promise((resolve,reject)=>{
6
- new vuecomp.$AMap.Geocoder({
7
- radius: 500 //范围,默认:500
8
- }).getLocation(address, function(status, result) {
9
- console.log(result)
10
- if (status === 'complete'&&result.geocodes.length) {
11
- resolve({lng:result.geocodes[0].location.lng,lat:result.geocodes[0].location.lat})
12
- }else{
13
- reject('根据经纬度查询地址失败')
14
- }
15
- })
16
- })
17
- }
1
+ import AMapLoader from '@amap/amap-jsapi-loader'
2
+ let Amap
3
+ async function GetGDMap () {
4
+ if (!Amap) {
5
+ Amap = await AMapLoader.load({
6
+ key: '4889f1e58df01cb40415536c8907bf64', // 申请好的Web端开发者Key,首次调用 load 时必填
7
+ version: '1.4.2', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
8
+ plugins: ['AMap.ToolBar', 'AMap.Geolocation', 'AMap.Geocoder', 'AMap.MarkerClusterer', 'AMap.Autocomplete'] // 需要使用的的插件列表,如比例尺'AMap.Scale'等
9
+ })
10
+ }
11
+ return Amap
12
+ }
13
+ async function GetLocation (address) {
14
+ return new Promise(async (resolve, reject) => {
15
+ new (await GetGDMap()).Geocoder({
16
+ radius: 500 // 范围,默认:500
17
+ }).getLocation(address, function (status, result) {
18
+ console.log(result)
19
+ if (status === 'complete' && result.geocodes.length) {
20
+ resolve({ lng: result.geocodes[0].location.lng, lat: result.geocodes[0].location.lat })
21
+ } else {
22
+ // eslint-disable-next-line prefer-promise-reject-errors
23
+ reject('根据经纬度查询地址失败')
24
+ }
25
+ })
26
+ })
27
+ }
28
+ export { GetGDMap, GetLocation }
@@ -309,19 +309,10 @@ function loadGuards (guards, options) {
309
309
  * @param func
310
310
  */
311
311
  function funcToRouter (func) {
312
- const router = [{
312
+ return [{
313
313
  router: 'root',
314
314
  children: positionRouter(parsefunc(func))
315
315
  }]
316
- // 任何情况首位加入资源管理
317
- const resourceManageMain = {
318
- router: 'resourceManageMain',
319
- position: 0,
320
- icon: 'api',
321
- name: '资源管理'
322
- }
323
- router[0].children.unshift(resourceManageMain)
324
- return router
325
316
  }
326
317
 
327
318
  function parsefunc (func) {
package/vue.config.js CHANGED
@@ -1,143 +1,143 @@
1
- const path = require('path')
2
- const webpack = require('webpack')
3
- const ThemeColorReplacer = require('webpack-theme-color-replacer')
4
- const { getThemeColors, modifyVars } = require('./src/utils/themeUtil')
5
- const { resolveCss } = require('./src/utils/theme-color-replacer-extend')
6
- const CompressionWebpackPlugin = require('compression-webpack-plugin')
7
-
8
- const productionGzipExtensions = ['js', 'css']
9
- const isProd = process.env.NODE_ENV === 'production'
10
-
11
- // const assetsCDN = {
12
- // // webpack build externals
13
- // externals: {
14
- // vue: 'Vue',
15
- // 'vue-router': 'VueRouter',
16
- // vuex: 'Vuex',
17
- // axios: 'axios',
18
- // nprogress: 'NProgress',
19
- // clipboard: 'ClipboardJS',
20
- // '@antv/data-set': 'DataSet',
21
- // 'js-cookie': 'Cookies'
22
- // },
23
- // css: [
24
- // ],
25
- // js: [
26
- // '//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js',
27
- // '//cdn.jsdelivr.net/npm/vue-router@3.3.4/dist/vue-router.min.js',
28
- // '//cdn.jsdelivr.net/npm/vuex@3.4.0/dist/vuex.min.js',
29
- // '//cdn.jsdelivr.net/npm/axios@0.19.2/dist/axios.min.js',
30
- // '//cdn.jsdelivr.net/npm/nprogress@0.2.0/nprogress.min.js',
31
- // '//cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js',
32
- // '//cdn.jsdelivr.net/npm/@antv/data-set@0.11.4/build/data-set.min.js',
33
- // '//cdn.jsdelivr.net/npm/js-cookie@2.2.1/src/js.cookie.min.js'
34
- // ]
35
- // }
36
-
37
- const server = 'http://121.36.106.17:8400'
38
- // const local = 'http://localhost:8445/webmeter'
39
- const local = 'http://123.60.214.109:8405/webmeter'
40
-
41
- module.exports = {
42
- devServer: {
43
- // development server port 8000
44
- port: 8001,
45
- // If you want to turn on the proxy, please remove the mockjs /src/main.jsL11
46
- proxy: {
47
- '/rs': {
48
- target: server,
49
- ws: false,
50
- changeOrigin: true
51
- },
52
- '/image': {
53
- target: server,
54
- ws: false,
55
- changeOrigin: true
56
- },
57
- '/webapps': {
58
- target: server,
59
- ws: false,
60
- changeOrigin: true
61
- },
62
- '/webmeterapi': {
63
- pathRewrite: { '^/webmeterapi': '/rs/logic' },
64
- target: local,
65
- changeOrigin: true
66
- },
67
- '/webmeteruploadapi': {
68
- pathRewrite: { '^/webmeteruploadapi': '/rs/file' },
69
- target: local,
70
- changeOrigin: true
71
- }
72
- }
73
- },
74
- pluginOptions: {
75
- 'style-resources-loader': {
76
- preProcessor: 'less',
77
- patterns: [path.resolve(__dirname, './src/theme/theme.less')]
78
- }
79
- },
80
- configureWebpack: config => {
81
- config.entry.app = ['babel-polyfill', 'whatwg-fetch', './src/main.js']
82
- config.performance = {
83
- hints: false
84
- }
85
- config.plugins.push(
86
- new ThemeColorReplacer({
87
- fileName: 'css/theme-colors-[contenthash:8].css',
88
- matchColors: getThemeColors(),
89
- injectCss: true,
90
- resolveCss
91
- })
92
- )
93
- // Ignore all locale files of moment.js
94
- config.plugins.push(new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/))
95
- // 生产环境下将资源压缩成gzip格式
96
- if (isProd) {
97
- // add `CompressionWebpack` plugin to webpack plugins
98
- config.plugins.push(new CompressionWebpackPlugin({
99
- algorithm: 'gzip',
100
- test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
101
- threshold: 10240,
102
- minRatio: 0.8
103
- }))
104
- }
105
- // if prod, add externals
106
- // if (isProd) {
107
- // config.externals = assetsCDN.externals
108
- // }
109
- },
110
- chainWebpack: config => {
111
- // 生产环境下关闭css压缩的 colormin 项,因为此项优化与主题色替换功能冲突
112
- if (isProd) {
113
- config.plugin('optimize-css')
114
- .tap(args => {
115
- args[0].cssnanoOptions.preset[1].colormin = false
116
- return args
117
- })
118
- }
119
- // 生产环境下使用CDN
120
- // if (isProd) {
121
- // config.plugin('html')
122
- // .tap(args => {
123
- // args[0].cdn = assetsCDN
124
- // return args
125
- // })
126
- // }
127
- config.resolve.alias.set('@vue2-client', path.resolve(__dirname, 'src'))
128
- },
129
- css: {
130
- loaderOptions: {
131
- less: {
132
- lessOptions: {
133
- modifyVars: modifyVars(),
134
- javascriptEnabled: true
135
- }
136
- }
137
- }
138
- },
139
- publicPath: process.env.VUE_APP_PUBLIC_PATH,
140
- outputDir: 'dist',
141
- assetsDir: 'static',
142
- productionSourceMap: false
143
- }
1
+ const path = require('path')
2
+ const webpack = require('webpack')
3
+ const ThemeColorReplacer = require('webpack-theme-color-replacer')
4
+ const { getThemeColors, modifyVars } = require('./src/utils/themeUtil')
5
+ const { resolveCss } = require('./src/utils/theme-color-replacer-extend')
6
+ const CompressionWebpackPlugin = require('compression-webpack-plugin')
7
+
8
+ const productionGzipExtensions = ['js', 'css']
9
+ const isProd = process.env.NODE_ENV === 'production'
10
+
11
+ // const assetsCDN = {
12
+ // // webpack build externals
13
+ // externals: {
14
+ // vue: 'Vue',
15
+ // 'vue-router': 'VueRouter',
16
+ // vuex: 'Vuex',
17
+ // axios: 'axios',
18
+ // nprogress: 'NProgress',
19
+ // clipboard: 'ClipboardJS',
20
+ // '@antv/data-set': 'DataSet',
21
+ // 'js-cookie': 'Cookies'
22
+ // },
23
+ // css: [
24
+ // ],
25
+ // js: [
26
+ // '//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js',
27
+ // '//cdn.jsdelivr.net/npm/vue-router@3.3.4/dist/vue-router.min.js',
28
+ // '//cdn.jsdelivr.net/npm/vuex@3.4.0/dist/vuex.min.js',
29
+ // '//cdn.jsdelivr.net/npm/axios@0.19.2/dist/axios.min.js',
30
+ // '//cdn.jsdelivr.net/npm/nprogress@0.2.0/nprogress.min.js',
31
+ // '//cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js',
32
+ // '//cdn.jsdelivr.net/npm/@antv/data-set@0.11.4/build/data-set.min.js',
33
+ // '//cdn.jsdelivr.net/npm/js-cookie@2.2.1/src/js.cookie.min.js'
34
+ // ]
35
+ // }
36
+
37
+ const server = 'http://121.36.106.17:8400'
38
+ // const local = 'http://localhost:8445/webmeter'
39
+ const local = 'http://123.60.214.109:8405/webmeter'
40
+
41
+ module.exports = {
42
+ devServer: {
43
+ // development server port 8000
44
+ port: 8001,
45
+ // If you want to turn on the proxy, please remove the mockjs /src/main.jsL11
46
+ proxy: {
47
+ '/rs': {
48
+ target: server,
49
+ ws: false,
50
+ changeOrigin: true
51
+ },
52
+ '/image': {
53
+ target: server,
54
+ ws: false,
55
+ changeOrigin: true
56
+ },
57
+ '/webapps': {
58
+ target: server,
59
+ ws: false,
60
+ changeOrigin: true
61
+ },
62
+ '/webmeterapi': {
63
+ pathRewrite: { '^/webmeterapi': '/rs/logic' },
64
+ target: local,
65
+ changeOrigin: true
66
+ },
67
+ '/webmeteruploadapi': {
68
+ pathRewrite: { '^/webmeteruploadapi': '/rs/file' },
69
+ target: local,
70
+ changeOrigin: true
71
+ }
72
+ }
73
+ },
74
+ pluginOptions: {
75
+ 'style-resources-loader': {
76
+ preProcessor: 'less',
77
+ patterns: [path.resolve(__dirname, './src/theme/theme.less')]
78
+ }
79
+ },
80
+ configureWebpack: config => {
81
+ config.entry.app = ['babel-polyfill', 'whatwg-fetch', './src/main.js']
82
+ config.performance = {
83
+ hints: false
84
+ }
85
+ config.plugins.push(
86
+ new ThemeColorReplacer({
87
+ fileName: 'css/theme-colors-[contenthash:8].css',
88
+ matchColors: getThemeColors(),
89
+ injectCss: true,
90
+ resolveCss
91
+ })
92
+ )
93
+ // Ignore all locale files of moment.js
94
+ config.plugins.push(new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/))
95
+ // 生产环境下将资源压缩成gzip格式
96
+ if (isProd) {
97
+ // add `CompressionWebpack` plugin to webpack plugins
98
+ config.plugins.push(new CompressionWebpackPlugin({
99
+ algorithm: 'gzip',
100
+ test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
101
+ threshold: 10240,
102
+ minRatio: 0.8
103
+ }))
104
+ }
105
+ // if prod, add externals
106
+ // if (isProd) {
107
+ // config.externals = assetsCDN.externals
108
+ // }
109
+ },
110
+ chainWebpack: config => {
111
+ // 生产环境下关闭css压缩的 colormin 项,因为此项优化与主题色替换功能冲突
112
+ if (isProd) {
113
+ config.plugin('optimize-css')
114
+ .tap(args => {
115
+ args[0].cssnanoOptions.preset[1].colormin = false
116
+ return args
117
+ })
118
+ }
119
+ // 生产环境下使用CDN
120
+ // if (isProd) {
121
+ // config.plugin('html')
122
+ // .tap(args => {
123
+ // args[0].cdn = assetsCDN
124
+ // return args
125
+ // })
126
+ // }
127
+ config.resolve.alias.set('@vue2-client', path.resolve(__dirname, 'src'))
128
+ },
129
+ css: {
130
+ loaderOptions: {
131
+ less: {
132
+ lessOptions: {
133
+ modifyVars: modifyVars(),
134
+ javascriptEnabled: true
135
+ }
136
+ }
137
+ }
138
+ },
139
+ publicPath: process.env.VUE_APP_PUBLIC_PATH,
140
+ outputDir: 'dist',
141
+ assetsDir: 'static',
142
+ productionSourceMap: false
143
+ }