vue2-client 1.4.48 → 1.4.49

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 (104) hide show
  1. package/.env +15 -15
  2. package/.eslintrc.js +82 -82
  3. package/CHANGELOG.md +4 -1
  4. package/index.js +30 -30
  5. package/package.json +1 -1
  6. package/src/assets/img/querySlotDemo.svg +15 -15
  7. package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +225 -225
  8. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +113 -113
  9. package/src/base-client/components/common/CitySelect/CitySelect.vue +244 -244
  10. package/src/base-client/components/common/CitySelect/index.js +3 -3
  11. package/src/base-client/components/common/CitySelect/index.md +109 -109
  12. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +777 -777
  13. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +310 -310
  14. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +165 -165
  15. package/src/base-client/components/common/JSONToTree/jsontotree.vue +275 -275
  16. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +210 -210
  17. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  18. package/src/base-client/components/common/Upload/index.js +3 -3
  19. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +327 -327
  20. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  21. package/src/base-client/components/common/XForm/XForm.vue +274 -274
  22. package/src/base-client/components/common/XForm/XFormItem.vue +469 -469
  23. package/src/base-client/components/common/XFormTable/index.md +96 -96
  24. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  25. package/src/base-client/components/ticket/TicketDetailsView/TicketDetailsView.vue +807 -807
  26. package/src/base-client/components/ticket/TicketDetailsView/index.md +29 -29
  27. package/src/base-client/components/ticket/TicketDetailsView/part/TicketDetailsFlow.vue +260 -260
  28. package/src/base-client/components/ticket/TicketSubmitSuccessView/TicketSubmitSuccessView.vue +532 -532
  29. package/src/base-client/components/ticket/TicketSubmitSuccessView/index.md +29 -29
  30. package/src/base-client/plugins/AppData.js +73 -73
  31. package/src/base-client/plugins/GetLoginInfoService.js +179 -179
  32. package/src/base-client/plugins/PagedList.js +177 -177
  33. package/src/base-client/plugins/compatible/LoginServiceOA.js +20 -20
  34. package/src/base-client/plugins/i18n-extend.js +32 -32
  35. package/src/components/Ellipsis/index.md +38 -38
  36. package/src/components/NumberInfo/index.md +43 -43
  37. package/src/components/STable/README.md +341 -341
  38. package/src/components/STable/index.js +318 -318
  39. package/src/components/Trend/index.md +45 -45
  40. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  41. package/src/components/checkbox/ImgCheckbox.vue +163 -163
  42. package/src/components/form/FormRow.vue +52 -52
  43. package/src/components/index.js +36 -36
  44. package/src/components/menu/SideMenu.vue +62 -62
  45. package/src/components/menu/menu.js +273 -273
  46. package/src/components/page/header/index.less +40 -40
  47. package/src/components/setting/Setting.vue +235 -235
  48. package/src/components/table/StandardTable.vue +141 -141
  49. package/src/components/table/advance/ActionColumns.vue +158 -158
  50. package/src/components/table/advance/SearchArea.vue +355 -355
  51. package/src/components/tool/AStepItem.vue +60 -60
  52. package/src/components/tool/AvatarList.vue +68 -68
  53. package/src/components/tool/Drawer.vue +142 -142
  54. package/src/components/tool/TagSelect.vue +83 -83
  55. package/src/components/transition/PageToggleTransition.vue +97 -97
  56. package/src/config/CreateQueryConfig.js +310 -310
  57. package/src/config/default/admin.config.js +18 -18
  58. package/src/config/replacer/resolve.config.js +67 -67
  59. package/src/layouts/AdminLayout.vue +174 -174
  60. package/src/layouts/PageLayout.vue +151 -151
  61. package/src/layouts/SinglePageView.vue +105 -105
  62. package/src/layouts/header/AdminHeader.vue +104 -104
  63. package/src/layouts/header/HeaderNotice.vue +167 -167
  64. package/src/layouts/header/HeaderSearch.vue +67 -67
  65. package/src/layouts/header/InstitutionDetail.vue +181 -181
  66. package/src/layouts/header/index.less +92 -92
  67. package/src/layouts/tabs/TabsHead.vue +190 -190
  68. package/src/layouts/tabs/TabsView.vue +379 -379
  69. package/src/mock/goods/index.js +108 -108
  70. package/src/pages/CreateQueryPage.vue +65 -65
  71. package/src/pages/login/Login.vue +345 -345
  72. package/src/pages/report/ReportTable.js +124 -124
  73. package/src/pages/report/ReportTableHome.vue +28 -28
  74. package/src/pages/resourceManage/orgListManage.vue +98 -98
  75. package/src/pages/system/dictionary/index.vue +43 -43
  76. package/src/pages/system/file/index.vue +317 -317
  77. package/src/pages/system/monitor/loginInfor/index.vue +36 -36
  78. package/src/pages/system/monitor/operLog/index.vue +36 -36
  79. package/src/pages/system/queryParams/index.vue +43 -43
  80. package/src/router/async/config.async.js +27 -27
  81. package/src/router/async/router.map.js +65 -65
  82. package/src/router/index.js +27 -27
  83. package/src/services/api/DictionaryDetailsViewApi.js +6 -6
  84. package/src/services/api/LogDetailsViewApi.js +10 -10
  85. package/src/services/api/QueryParamsDetailsViewApi.js +6 -6
  86. package/src/services/api/TicketDetailsViewApi.js +34 -34
  87. package/src/services/api/cas.js +79 -79
  88. package/src/services/api/commonTempTable.js +10 -10
  89. package/src/services/api/index.js +17 -17
  90. package/src/services/api/manage.js +8 -8
  91. package/src/services/api/restTools.js +24 -24
  92. package/src/services/apiService.js +13 -13
  93. package/src/services/user.js +53 -53
  94. package/src/store/modules/index.js +4 -4
  95. package/src/theme/default/nprogress.less +76 -76
  96. package/src/theme/default/style.less +47 -47
  97. package/src/utils/colors.js +107 -103
  98. package/src/utils/excel/Blob.js +180 -180
  99. package/src/utils/excel/Export2Excel.js +141 -141
  100. package/src/utils/formatter.js +68 -68
  101. package/src/utils/i18n.js +80 -80
  102. package/src/utils/theme-color-replacer-extend.js +91 -91
  103. package/src/utils/themeUtil.js +100 -100
  104. package/src/utils/util.js +230 -230
@@ -1,151 +1,151 @@
1
- <template>
2
- <div class="page-layout">
3
- <page-header
4
- ref="pageHeader"
5
- :style="`margin-top: ${multiPage ? 0 : -24}px`"
6
- :breadcrumb="breadcrumb"
7
- :title="pageTitle"
8
- :logo="logo"
9
- :avatar="avatar">
10
- <slot name="action" slot="action"></slot>
11
- <slot slot="content" name="headerContent"></slot>
12
- <div slot="content" v-if="!this.$slots.headerContent && desc">
13
- <p>{{ desc }}</p>
14
- <div v-if="this.linkList" class="link">
15
- <template v-for="(link, index) in linkList">
16
- <a :key="index" :href="link.href"><a-icon :type="link.icon" />{{ link.title }}</a>
17
- </template>
18
- </div>
19
- </div>
20
- <slot v-if="this.$slots.extra" slot="extra" name="extra"></slot>
21
- </page-header>
22
- <div ref="page" :class="['page-content', layout, pageWidth]" >
23
- <slot></slot>
24
- </div>
25
- </div>
26
- </template>
27
-
28
- <script>
29
- import PageHeader from '@vue2-client/components/page/header/PageHeader'
30
- import { mapState, mapMutations } from 'vuex'
31
- import { getI18nKey } from '@vue2-client/utils/routerUtil'
32
-
33
- export default {
34
- name: 'PageLayout',
35
- components: { PageHeader },
36
- // eslint-disable-next-line vue/require-prop-types
37
- props: ['desc', 'logo', 'title', 'avatar', 'linkList', 'extraImage'],
38
- data () {
39
- return {
40
- page: {},
41
- pageHeaderHeight: 0
42
- }
43
- },
44
- watch: {
45
- $route () {
46
- this.page = this.$route.meta.page
47
- }
48
- },
49
- updated () {
50
- if (!this._inactive) {
51
- this.updatePageHeight()
52
- }
53
- },
54
- activated () {
55
- this.updatePageHeight()
56
- },
57
- deactivated () {
58
- this.updatePageHeight(0)
59
- },
60
- mounted () {
61
- this.updatePageHeight()
62
- },
63
- created () {
64
- this.page = this.$route.meta.page
65
- },
66
- beforeDestroy () {
67
- this.updatePageHeight(0)
68
- },
69
- computed: {
70
- ...mapState('setting', ['layout', 'multiPage', 'pageMinHeight', 'pageWidth', 'customTitles']),
71
- pageTitle () {
72
- const pageTitle = this.page && this.page.title
73
- return this.customTitle || (pageTitle && this.$t(pageTitle)) || this.title || this.routeName
74
- },
75
- routeName () {
76
- const route = this.$route
77
- return this.$t(getI18nKey(route.matched[route.matched.length - 1].path))
78
- },
79
- breadcrumb () {
80
- const page = this.page
81
- const breadcrumb = page && page.breadcrumb
82
- if (breadcrumb) {
83
- const i18nBreadcrumb = []
84
- breadcrumb.forEach(item => {
85
- i18nBreadcrumb.push(this.$t(item))
86
- })
87
- return i18nBreadcrumb
88
- } else {
89
- return this.getRouteBreadcrumb()
90
- }
91
- },
92
- marginCorrect () {
93
- return this.multiPage ? 24 : 0
94
- }
95
- },
96
- methods: {
97
- ...mapMutations('setting', ['correctPageMinHeight']),
98
- getRouteBreadcrumb () {
99
- const routes = this.$route.matched
100
- const path = this.$route.path
101
- const breadcrumb = []
102
- routes.filter(item => path.includes(item.path))
103
- .forEach(route => {
104
- const path = route.path.length === 0 ? '/home' : route.path
105
- breadcrumb.push(this.$t(getI18nKey(path)))
106
- })
107
- const pageTitle = this.page && this.page.title
108
- if (this.customTitle || pageTitle) {
109
- breadcrumb[breadcrumb.length - 1] = this.customTitle || pageTitle
110
- }
111
- return breadcrumb
112
- },
113
- /**
114
- * 用于计算页面内容最小高度
115
- * @param newHeight
116
- */
117
- updatePageHeight (newHeight = this.$refs.pageHeader.$el.offsetHeight + this.marginCorrect) {
118
- this.correctPageMinHeight(this.pageHeaderHeight - newHeight)
119
- this.pageHeaderHeight = newHeight
120
- }
121
- }
122
- }
123
- </script>
124
-
125
- <style lang="less">
126
- .page-header{
127
- margin: 0 -24px 0;
128
- }
129
- .link{
130
- /*margin-top: 16px;*/
131
- line-height: 24px;
132
- a{
133
- font-size: 14px;
134
- margin-right: 32px;
135
- i{
136
- font-size: 22px;
137
- margin-right: 8px;
138
- }
139
- }
140
- }
141
- .page-content{
142
- position: relative;
143
- padding: 24px 0 0;
144
- &.side{
145
- }
146
- &.head.fixed{
147
- margin: 0 auto;
148
- max-width: 100%;
149
- }
150
- }
151
- </style>
1
+ <template>
2
+ <div class="page-layout">
3
+ <page-header
4
+ ref="pageHeader"
5
+ :style="`margin-top: ${multiPage ? 0 : -24}px`"
6
+ :breadcrumb="breadcrumb"
7
+ :title="pageTitle"
8
+ :logo="logo"
9
+ :avatar="avatar">
10
+ <slot name="action" slot="action"></slot>
11
+ <slot slot="content" name="headerContent"></slot>
12
+ <div slot="content" v-if="!this.$slots.headerContent && desc">
13
+ <p>{{ desc }}</p>
14
+ <div v-if="this.linkList" class="link">
15
+ <template v-for="(link, index) in linkList">
16
+ <a :key="index" :href="link.href"><a-icon :type="link.icon" />{{ link.title }}</a>
17
+ </template>
18
+ </div>
19
+ </div>
20
+ <slot v-if="this.$slots.extra" slot="extra" name="extra"></slot>
21
+ </page-header>
22
+ <div ref="page" :class="['page-content', layout, pageWidth]" >
23
+ <slot></slot>
24
+ </div>
25
+ </div>
26
+ </template>
27
+
28
+ <script>
29
+ import PageHeader from '@vue2-client/components/page/header/PageHeader'
30
+ import { mapState, mapMutations } from 'vuex'
31
+ import { getI18nKey } from '@vue2-client/utils/routerUtil'
32
+
33
+ export default {
34
+ name: 'PageLayout',
35
+ components: { PageHeader },
36
+ // eslint-disable-next-line vue/require-prop-types
37
+ props: ['desc', 'logo', 'title', 'avatar', 'linkList', 'extraImage'],
38
+ data () {
39
+ return {
40
+ page: {},
41
+ pageHeaderHeight: 0
42
+ }
43
+ },
44
+ watch: {
45
+ $route () {
46
+ this.page = this.$route.meta.page
47
+ }
48
+ },
49
+ updated () {
50
+ if (!this._inactive) {
51
+ this.updatePageHeight()
52
+ }
53
+ },
54
+ activated () {
55
+ this.updatePageHeight()
56
+ },
57
+ deactivated () {
58
+ this.updatePageHeight(0)
59
+ },
60
+ mounted () {
61
+ this.updatePageHeight()
62
+ },
63
+ created () {
64
+ this.page = this.$route.meta.page
65
+ },
66
+ beforeDestroy () {
67
+ this.updatePageHeight(0)
68
+ },
69
+ computed: {
70
+ ...mapState('setting', ['layout', 'multiPage', 'pageMinHeight', 'pageWidth', 'customTitles']),
71
+ pageTitle () {
72
+ const pageTitle = this.page && this.page.title
73
+ return this.customTitle || (pageTitle && this.$t(pageTitle)) || this.title || this.routeName
74
+ },
75
+ routeName () {
76
+ const route = this.$route
77
+ return this.$t(getI18nKey(route.matched[route.matched.length - 1].path))
78
+ },
79
+ breadcrumb () {
80
+ const page = this.page
81
+ const breadcrumb = page && page.breadcrumb
82
+ if (breadcrumb) {
83
+ const i18nBreadcrumb = []
84
+ breadcrumb.forEach(item => {
85
+ i18nBreadcrumb.push(this.$t(item))
86
+ })
87
+ return i18nBreadcrumb
88
+ } else {
89
+ return this.getRouteBreadcrumb()
90
+ }
91
+ },
92
+ marginCorrect () {
93
+ return this.multiPage ? 24 : 0
94
+ }
95
+ },
96
+ methods: {
97
+ ...mapMutations('setting', ['correctPageMinHeight']),
98
+ getRouteBreadcrumb () {
99
+ const routes = this.$route.matched
100
+ const path = this.$route.path
101
+ const breadcrumb = []
102
+ routes.filter(item => path.includes(item.path))
103
+ .forEach(route => {
104
+ const path = route.path.length === 0 ? '/home' : route.path
105
+ breadcrumb.push(this.$t(getI18nKey(path)))
106
+ })
107
+ const pageTitle = this.page && this.page.title
108
+ if (this.customTitle || pageTitle) {
109
+ breadcrumb[breadcrumb.length - 1] = this.customTitle || pageTitle
110
+ }
111
+ return breadcrumb
112
+ },
113
+ /**
114
+ * 用于计算页面内容最小高度
115
+ * @param newHeight
116
+ */
117
+ updatePageHeight (newHeight = this.$refs.pageHeader.$el.offsetHeight + this.marginCorrect) {
118
+ this.correctPageMinHeight(this.pageHeaderHeight - newHeight)
119
+ this.pageHeaderHeight = newHeight
120
+ }
121
+ }
122
+ }
123
+ </script>
124
+
125
+ <style lang="less">
126
+ .page-header{
127
+ margin: 0 -24px 0;
128
+ }
129
+ .link{
130
+ /*margin-top: 16px;*/
131
+ line-height: 24px;
132
+ a{
133
+ font-size: 14px;
134
+ margin-right: 32px;
135
+ i{
136
+ font-size: 22px;
137
+ margin-right: 8px;
138
+ }
139
+ }
140
+ }
141
+ .page-content{
142
+ position: relative;
143
+ padding: 24px 0 0;
144
+ &.side{
145
+ }
146
+ &.head.fixed{
147
+ margin: 0 auto;
148
+ max-width: 100%;
149
+ }
150
+ }
151
+ </style>
@@ -1,105 +1,105 @@
1
- <template>
2
- <page-toggle-transition :disabled="animate.disabled" :animate="animate.name" :direction="animate.direction">
3
- <template v-if="login">
4
- <div style="padding-top: 1px; background-color: #fff;">
5
- <iframe
6
- ref="singlepage"
7
- :src="url"
8
- :name="this.fullPath"
9
- class="single-page-iframe"
10
- @load="load">
11
- </iframe>
12
- </div>
13
- </template>
14
- </page-toggle-transition>
15
- </template>
16
-
17
- <script>
18
- import PageToggleTransition from '@vue2-client/components/transition/PageToggleTransition'
19
- import { ACCESS_TOKEN } from '@vue2-client/store/mutation-types'
20
- import { mapState, mapMutations } from 'vuex'
21
- import { CASLogin, doOtherValidate } from '@vue2-client/services/api/cas'
22
-
23
- export default {
24
- name: 'SinglePageView',
25
- components: { PageToggleTransition },
26
- props: {
27
- singlePageUrl: {
28
- type: String,
29
- default: ''
30
- },
31
- fullPath: {
32
- type: String,
33
- default: ''
34
- }
35
- },
36
- data () {
37
- return {
38
- iframe: null,
39
- url: ''
40
- }
41
- },
42
- computed: {
43
- ...mapState('setting', ['animate', 'iframeSrc']),
44
- ...mapState('account', ['login'])
45
- },
46
- created () {
47
- if (this.singlePageUrl.indexOf('sso:') !== -1) {
48
- const serviceKey = this.singlePageUrl.substring(4)
49
- CASLogin(serviceKey, true).then(res => {
50
- const redirectUrl = res.redirectUrl
51
- if (redirectUrl.indexOf('logic@') !== -1) {
52
- const logicName = redirectUrl.substring(6)
53
- doOtherValidate(logicName, res.st, serviceKey).then(validateRes => {
54
- this.url = validateRes.redirectUrl
55
- })
56
- } else {
57
- this.url = redirectUrl + '?ticket=' + res.st
58
- }
59
- }).catch(msg => {
60
- console.warn(msg)
61
- this.$message.error(msg)
62
- })
63
- } else {
64
- this.url = this.iframeSrc
65
- }
66
- },
67
- mounted () {
68
- if (!this.login) {
69
- this.setLogin(JSON.parse(sessionStorage.getItem(process.env.VUE_APP_LOGIN_KEY)))
70
- }
71
- this.iframe = this.$refs.singlepage.contentWindow
72
- this.path = this.$route.path
73
- },
74
- methods: {
75
- ...mapMutations('account', ['setLogin']),
76
- load () {
77
- if (this.singlePageUrl.indexOf('sso:') === -1) {
78
- const appdata = {
79
- singleValues: this.$appdata.getSingleValues(),
80
- params: this.$appdata.getParams()
81
- }
82
- const data = {
83
- token: localStorage.getItem(ACCESS_TOKEN),
84
- login: this.login,
85
- appdata: appdata,
86
- page: this.singlePageUrl
87
- }
88
- console.log('发送参数', data)
89
- if (this.iframe) {
90
- this.iframe.postMessage(data, '*')
91
- }
92
- }
93
- this.$emit('load', this.fullPath)
94
- }
95
- }
96
- }
97
- </script>
98
-
99
- <style lang="less">
100
- .single-page-iframe {
101
- width: 100%;
102
- height: calc(100vh - 117px);
103
- border: none;
104
- }
105
- </style>
1
+ <template>
2
+ <page-toggle-transition :disabled="animate.disabled" :animate="animate.name" :direction="animate.direction">
3
+ <template v-if="login">
4
+ <div style="padding-top: 1px; background-color: #fff;">
5
+ <iframe
6
+ ref="singlepage"
7
+ :src="url"
8
+ :name="this.fullPath"
9
+ class="single-page-iframe"
10
+ @load="load">
11
+ </iframe>
12
+ </div>
13
+ </template>
14
+ </page-toggle-transition>
15
+ </template>
16
+
17
+ <script>
18
+ import PageToggleTransition from '@vue2-client/components/transition/PageToggleTransition'
19
+ import { ACCESS_TOKEN } from '@vue2-client/store/mutation-types'
20
+ import { mapState, mapMutations } from 'vuex'
21
+ import { CASLogin, doOtherValidate } from '@vue2-client/services/api/cas'
22
+
23
+ export default {
24
+ name: 'SinglePageView',
25
+ components: { PageToggleTransition },
26
+ props: {
27
+ singlePageUrl: {
28
+ type: String,
29
+ default: ''
30
+ },
31
+ fullPath: {
32
+ type: String,
33
+ default: ''
34
+ }
35
+ },
36
+ data () {
37
+ return {
38
+ iframe: null,
39
+ url: ''
40
+ }
41
+ },
42
+ computed: {
43
+ ...mapState('setting', ['animate', 'iframeSrc']),
44
+ ...mapState('account', ['login'])
45
+ },
46
+ created () {
47
+ if (this.singlePageUrl.indexOf('sso:') !== -1) {
48
+ const serviceKey = this.singlePageUrl.substring(4)
49
+ CASLogin(serviceKey, true).then(res => {
50
+ const redirectUrl = res.redirectUrl
51
+ if (redirectUrl.indexOf('logic@') !== -1) {
52
+ const logicName = redirectUrl.substring(6)
53
+ doOtherValidate(logicName, res.st, serviceKey).then(validateRes => {
54
+ this.url = validateRes.redirectUrl
55
+ })
56
+ } else {
57
+ this.url = redirectUrl + '?ticket=' + res.st
58
+ }
59
+ }).catch(msg => {
60
+ console.warn(msg)
61
+ this.$message.error(msg)
62
+ })
63
+ } else {
64
+ this.url = this.iframeSrc
65
+ }
66
+ },
67
+ mounted () {
68
+ if (!this.login) {
69
+ this.setLogin(JSON.parse(sessionStorage.getItem(process.env.VUE_APP_LOGIN_KEY)))
70
+ }
71
+ this.iframe = this.$refs.singlepage.contentWindow
72
+ this.path = this.$route.path
73
+ },
74
+ methods: {
75
+ ...mapMutations('account', ['setLogin']),
76
+ load () {
77
+ if (this.singlePageUrl.indexOf('sso:') === -1) {
78
+ const appdata = {
79
+ singleValues: this.$appdata.getSingleValues(),
80
+ params: this.$appdata.getParams()
81
+ }
82
+ const data = {
83
+ token: localStorage.getItem(ACCESS_TOKEN),
84
+ login: this.login,
85
+ appdata: appdata,
86
+ page: this.singlePageUrl
87
+ }
88
+ console.log('发送参数', data)
89
+ if (this.iframe) {
90
+ this.iframe.postMessage(data, '*')
91
+ }
92
+ }
93
+ this.$emit('load', this.fullPath)
94
+ }
95
+ }
96
+ }
97
+ </script>
98
+
99
+ <style lang="less">
100
+ .single-page-iframe {
101
+ width: 100%;
102
+ height: calc(100vh - 117px);
103
+ border: none;
104
+ }
105
+ </style>