--no commit message
Showing
34 changed files
with
149 additions
and
799 deletions
... | @@ -10,13 +10,13 @@ | ... | @@ -10,13 +10,13 @@ |
10 | 10 | ||
11 | <template> | 11 | <template> |
12 | <div :class="['lb-table', customClass]"> | 12 | <div :class="['lb-table', customClass]"> |
13 | <el-table v-if="!heightNumSetting" class="table-fixed" :row-style="{ height: '50px' }" ref="elTable" | 13 | <el-table v-if="!heightNumSetting" class="table-fixed" :row-style="{ height: '50px' }" ref="elTable" :border='border' |
14 | :border='border' :row-class-name="tableRowClassName" :show-header='showHeader' @row-click="singleElection" | 14 | :row-class-name="tableRowClassName" :show-header='showHeader' @row-click="singleElection" v-bind="$attrs" |
15 | :header-cell-style="{ background: 'rgb(236, 245, 255)' }" v-bind="$attrs" :height="tableHeight" v-on="$listeners" | 15 | :height="tableHeight" v-on="$listeners" :data="data" style="width: 100%" |
16 | :data="data" style="width: 100%" :span-method="this.merge ? this.mergeMethod : this.spanMethod"> | 16 | :span-method="this.merge ? this.mergeMethod : this.spanMethod"> |
17 | <el-table-column width="45" align="center" v-if="isRadio"> | 17 | <el-table-column width="45" align="center" v-if="isRadio"> |
18 | <template slot-scope="scope"> | 18 | <template slot-scope="scope"> |
19 | <el-radio v-model="selected" :label="scope.$index" class="table-radio"></el-radio> | 19 | <el-radio v-model="selected" :label="scope.$index"></el-radio> |
20 | </template> | 20 | </template> |
21 | </el-table-column> | 21 | </el-table-column> |
22 | 22 | ||
... | @@ -24,14 +24,14 @@ | ... | @@ -24,14 +24,14 @@ |
24 | </lb-column> | 24 | </lb-column> |
25 | </el-table> | 25 | </el-table> |
26 | 26 | ||
27 | <el-table v-else ref="elTable" class="table-fixed" :row-style="{ height: '50px' }" :border='border' | 27 | <el-table v-else ref="elTable" id="heightNumSetting" class="table-fixed" :row-style="{ height: '50px' }" |
28 | :row-class-name="tableRowClassName" :show-header='showHeader' | 28 | :border='border' :row-class-name="tableRowClassName" :show-header='showHeader' v-bind="$attrs" |
29 | :header-cell-style="{ background: 'rgb(236, 245, 255)' }" v-bind="$attrs" :max-height="maxHeight" | 29 | :max-height="maxHeight" :height="tableHeight" v-on="$listeners" :data="data" style="width: 100%" |
30 | v-on="$listeners" :data="data" style="width: 100%" :span-method="this.merge ? this.mergeMethod : this.spanMethod"> | 30 | :span-method="this.merge ? this.mergeMethod : this.spanMethod"> |
31 | 31 | ||
32 | <el-table-column width="45" align="center" v-if="isRadio"> | 32 | <el-table-column width="45" align="center" v-if="isRadio"> |
33 | <template slot-scope="scope"> | 33 | <template slot-scope="scope"> |
34 | <el-radio v-model="selected" :label="scope.$index" class="table-radio"></el-radio> | 34 | <el-radio v-model="selected" :label="scope.$index"></el-radio> |
35 | </template> | 35 | </template> |
36 | </el-table-column> | 36 | </el-table-column> |
37 | <lb-column v-bind="$attrs" v-for="(item, index) in column" :key="index" :column="item"> | 37 | <lb-column v-bind="$attrs" v-for="(item, index) in column" :key="index" :column="item"> |
... | @@ -40,7 +40,7 @@ | ... | @@ -40,7 +40,7 @@ |
40 | 40 | ||
41 | <br> | 41 | <br> |
42 | <el-pagination class="lb-table-pagination" v-if="pagination" v-bind="$attrs" v-on="$listeners" background | 42 | <el-pagination class="lb-table-pagination" v-if="pagination" v-bind="$attrs" v-on="$listeners" background |
43 | :page-sizes="[10, 20, 50, 100]" layout="total, sizes, prev, pager, next" @current-change="paginationCurrentChange" | 43 | layout="total, prev, pager, next" @current-change="paginationCurrentChange" |
44 | :style="{ 'margin-top': paginationTop, 'text-align': paginationAlign }"> | 44 | :style="{ 'margin-top': paginationTop, 'text-align': paginationAlign }"> |
45 | </el-pagination> | 45 | </el-pagination> |
46 | </div> | 46 | </div> |
... | @@ -75,12 +75,16 @@ export default { | ... | @@ -75,12 +75,16 @@ export default { |
75 | }, | 75 | }, |
76 | heightNum: { | 76 | heightNum: { |
77 | type: Number, | 77 | type: Number, |
78 | default: 265, | 78 | default: 355, |
79 | }, | 79 | }, |
80 | maxHeight: { | 80 | maxHeight: { |
81 | type: Number, | 81 | type: Number, |
82 | default: 500 | 82 | default: 500 |
83 | }, | 83 | }, |
84 | minHeight: { | ||
85 | type: Number, | ||
86 | default: undefined | ||
87 | }, | ||
84 | heightNumSetting: { | 88 | heightNumSetting: { |
85 | type: Boolean, | 89 | type: Boolean, |
86 | default: false, | 90 | default: false, |
... | @@ -93,6 +97,10 @@ export default { | ... | @@ -93,6 +97,10 @@ export default { |
93 | type: String, | 97 | type: String, |
94 | default: 'left', | 98 | default: 'left', |
95 | }, | 99 | }, |
100 | calcHeight: { | ||
101 | type: Number, | ||
102 | default: 170 | ||
103 | }, | ||
96 | merge: Array, | 104 | merge: Array, |
97 | }, | 105 | }, |
98 | components: { | 106 | components: { |
... | @@ -100,7 +108,7 @@ export default { | ... | @@ -100,7 +108,7 @@ export default { |
100 | }, | 108 | }, |
101 | data () { | 109 | data () { |
102 | return { | 110 | return { |
103 | tableHeight: '', | 111 | tableHeight: 'auto', |
104 | mergeLine: {}, | 112 | mergeLine: {}, |
105 | mergeIndex: {}, | 113 | mergeIndex: {}, |
106 | selected: '' | 114 | selected: '' |
... | @@ -128,9 +136,64 @@ export default { | ... | @@ -128,9 +136,64 @@ export default { |
128 | }, | 136 | }, |
129 | getHeight () { | 137 | getHeight () { |
130 | if (!this.heightNumSetting) { | 138 | if (!this.heightNumSetting) { |
131 | this.tableHeight = window.innerHeight - this.heightNum | 139 | let _this = this |
140 | if (this.heightNum) { | ||
141 | _this.$nextTick(() => { | ||
142 | if (document.querySelector(".tags-view-container")) { | ||
143 | window.addEventListener('resize', () => { | ||
144 | if (_this.calcHeight == 170) { | ||
145 | _this.tableHeight = _this.calcHeightx(170) | ||
146 | } else { | ||
147 | _this.tableHeight = _this.calcHeightx(_this.calcHeight) | ||
148 | } | ||
149 | }); | ||
150 | if (_this.calcHeight == 170) { | ||
151 | _this.tableHeight = _this.calcHeightx(170) | ||
152 | } else { | ||
153 | _this.tableHeight = _this.calcHeightx(_this.calcHeight) | ||
154 | } | ||
155 | } else { | ||
156 | window.addEventListener('resize', () => { | ||
157 | _this.tableHeight = _this.calcHeightx(_this.calcHeight) | ||
158 | }); | ||
159 | _this.tableHeight = _this.calcHeightx(_this.calcHeight) | ||
160 | } | ||
161 | }) | ||
162 | } else { | ||
163 | _this.tableHeight = window.innerHeight - _this.heightNum | ||
164 | } | ||
165 | } else { | ||
166 | this.tableHeight = this.heightNum | ||
167 | this.$nextTick(() => { | ||
168 | this.minHeight && (document.getElementById('heightNumSetting').style.minHeight = this.minHeight + 'px') | ||
169 | }) | ||
132 | } | 170 | } |
133 | }, | 171 | }, |
172 | calcHeightx (value, wappered = true) { | ||
173 | //项目自定义的公共header部分的高度,可忽略 | ||
174 | let header = document.querySelector(".from-clues-header").offsetHeight; | ||
175 | |||
176 | //value为动态计算table界面高度时,减去的其他空白部分,需自行在调试找到临界值,剩下的就是table表格的高度(包含header+body部分) | ||
177 | value = value == undefined ? 100 : value; | ||
178 | if (document.querySelector(".tags-view-container")) { | ||
179 | let tagsView = document.querySelector(".tags-view-container").offsetHeight; | ||
180 | var res = window.innerHeight - parseInt(header) - value - parseInt(tagsView); | ||
181 | } else { | ||
182 | var res = window.innerHeight - parseInt(header) - value; | ||
183 | } | ||
184 | if (wappered) { | ||
185 | //通过原生方法,获取dom节点的高度------获取element-ui table表格body的元素 | ||
186 | let wapper = window.document.getElementsByClassName('el-table__body-wrapper'); | ||
187 | //通过原生方法,获取dom节点的高度------获取element-ui table表格header的元素 | ||
188 | let header = window.document.getElementsByClassName('el-table__header-wrapper'); | ||
189 | //必须加延时,要不然赋不上去值 | ||
190 | setTimeout(() => { | ||
191 | //通过上边计算得到的table高度的value值,减去table表格的header高度,剩下的通过dom节点直接强行赋给table表格的body | ||
192 | wapper[0].style.height = (value - header[0].clientHeight) | ||
193 | }, 100) | ||
194 | } | ||
195 | return res; | ||
196 | }, | ||
134 | clearSelection () { | 197 | clearSelection () { |
135 | this.$refs.elTable.clearSelection() | 198 | this.$refs.elTable.clearSelection() |
136 | }, | 199 | }, |
... | @@ -220,13 +283,7 @@ export default { | ... | @@ -220,13 +283,7 @@ export default { |
220 | padding-right: 3px; | 283 | padding-right: 3px; |
221 | } | 284 | } |
222 | 285 | ||
223 | .table-radio { | 286 | /deep/.el-radio__label { |
224 | /deep/.el-radio__label { | ||
225 | display: none; | 287 | display: none; |
226 | } | ||
227 | } | ||
228 | |||
229 | /deep/.el-radio { | ||
230 | margin-right: 5px !important; | ||
231 | } | 288 | } |
232 | </style> | 289 | </style> | ... | ... |
1 | <template> | ||
2 | <el-dialog :visible.sync="dialogVisible" v-if="dialogVisible" :width="width" :fullscreen="fullscreen" top="0" | ||
3 | :append-to-body="appendToBody" :lock-scroll="true" :close-on-click-modal="false" @close="closeDialog" :key="key" | ||
4 | :custom-class="isMain ? 'mainCenter dialogBox' : 'contentCenter dialogBox'" :destroy-on-close="true" ref="dialogBox" | ||
5 | id="dialogBox"> | ||
6 | <div slot="title"> | ||
7 | <div class="dialog_title"> | ||
8 | <b>{{ title }}</b> | ||
9 | <div v-if="isFullscreen" class="dialog_full"> | ||
10 | <i class="el-icon-rank" v-if="fullscreen" @click="handleFullscreen"></i> | ||
11 | <i class="el-icon-full-screen" v-else @click="handleFullscreen" /> | ||
12 | </div> | ||
13 | </div> | ||
14 | </div> | ||
15 | <div class="dialogBox-content" :style="{ height: scrollerHeight }"> | ||
16 | <slot></slot> | ||
17 | </div> | ||
18 | <div slot="footer" class="dialog_footer" v-if="isButton"> | ||
19 | <el-button @click="closeDialog" v-if="isReset">取消</el-button> | ||
20 | <el-button type="primary" plain @click="submitForm" v-if="isSave" :disabled="btnDisabled" :loading="saveloding"> | ||
21 | {{ saveButton }}</el-button> | ||
22 | </div> | ||
23 | </el-dialog> | ||
24 | </template> | ||
25 | <script> | ||
26 | export default { | ||
27 | props: { | ||
28 | value: { type: Boolean, default: false }, | ||
29 | isMain: { | ||
30 | type: Boolean, | ||
31 | default: false | ||
32 | }, | ||
33 | appendToBody: { | ||
34 | type: Boolean, | ||
35 | default: true | ||
36 | }, | ||
37 | isButton: { | ||
38 | type: Boolean, | ||
39 | default: true, | ||
40 | }, | ||
41 | width: { | ||
42 | type: String, | ||
43 | default: '70%', | ||
44 | }, | ||
45 | title: { | ||
46 | type: String, | ||
47 | default: '', | ||
48 | }, | ||
49 | isFullscreen: { | ||
50 | type: Boolean, | ||
51 | default: true, | ||
52 | }, | ||
53 | isSave: { | ||
54 | type: Boolean, | ||
55 | default: true, | ||
56 | }, | ||
57 | saveButton: { | ||
58 | type: String, | ||
59 | default: '提交', | ||
60 | }, | ||
61 | isReset: { | ||
62 | type: Boolean, | ||
63 | default: true, | ||
64 | }, | ||
65 | saveloding: { | ||
66 | type: Boolean, | ||
67 | default: false, | ||
68 | }, | ||
69 | btnDisabled: { | ||
70 | type: Boolean, | ||
71 | default: false | ||
72 | }, | ||
73 | height: { | ||
74 | type: String, | ||
75 | default: '' | ||
76 | } | ||
77 | }, | ||
78 | data () { | ||
79 | return { | ||
80 | key: 0, | ||
81 | dialogVisible: false, | ||
82 | fullscreen: false, | ||
83 | scrollerHeight: '' | ||
84 | } | ||
85 | }, | ||
86 | watch: { | ||
87 | value (val) { | ||
88 | this.$nextTick(() => { | ||
89 | this.dialogVisible = val | ||
90 | }) | ||
91 | this.height && (this.scrollerHeight = this.height + 'px') | ||
92 | } | ||
93 | }, | ||
94 | methods: { | ||
95 | handleFullscreen () { | ||
96 | this.fullscreen = !this.fullscreen | ||
97 | if (!this.fullscreen) { | ||
98 | this.scrollerHeight = '' | ||
99 | } else { | ||
100 | this.scrollerHeight = (window.innerHeight - 120) + 'px' | ||
101 | } | ||
102 | }, | ||
103 | submitForm () { | ||
104 | if (this.isButton) { | ||
105 | this.$emit('submitForm'); | ||
106 | } | ||
107 | }, | ||
108 | closeDialog () { | ||
109 | this.key++ | ||
110 | this.$emit('input', false) | ||
111 | this.$emit('closeDialog') | ||
112 | } | ||
113 | }, | ||
114 | } | ||
115 | </script> | ||
116 | <style rel="stylesheet/scss" lang="scss" > | ||
117 | @import "~@/styles/mixin.scss"; | ||
118 | @import "~@/styles/dialogBox.scss"; | ||
119 | </style> | ||
120 | <style rel="stylesheet/scss" scoped lang="scss" > | ||
121 | /deep/.is-fullscreen { | ||
122 | position: absolute; | ||
123 | top: 50% !important; | ||
124 | left: 50% !important; | ||
125 | transform: translate(-50%, -50%) !important; | ||
126 | } | ||
127 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/components/dialogBox/redeme.md
deleted
100644 → 0
src/components/lbTable/forced.js
deleted
100644 → 0
1 | export default { | ||
2 | selection: { | ||
3 | renderHeader: (h, { store }) => { | ||
4 | return ( | ||
5 | <el-checkbox | ||
6 | disabled={store.states.data && store.states.data.length === 0} | ||
7 | indeterminate={ | ||
8 | store.states.selection.length > 0 && !store.states.isAllSelected | ||
9 | } | ||
10 | nativeOn-click={store.toggleAllSelection} | ||
11 | value={store.states.isAllSelected} | ||
12 | /> | ||
13 | ) | ||
14 | }, | ||
15 | renderCell: (h, { row, column, store, $index }) => { | ||
16 | return ( | ||
17 | <el-checkbox | ||
18 | nativeOn-click={event => event.stopPropagation()} | ||
19 | value={store.isSelected(row)} | ||
20 | disabled={ | ||
21 | column.selectable | ||
22 | ? !column.selectable.call(null, row, $index) | ||
23 | : false | ||
24 | } | ||
25 | on-input={() => { | ||
26 | store.commit('rowSelectedChanged', row) | ||
27 | }} | ||
28 | /> | ||
29 | ) | ||
30 | }, | ||
31 | sortable: false, | ||
32 | resizable: false | ||
33 | }, | ||
34 | index: { | ||
35 | renderHeader: (h, scope) => { | ||
36 | return <span>{scope.column.label || '#'}</span> | ||
37 | }, | ||
38 | renderCell: (h, { $index, column }) => { | ||
39 | let i = $index + 1 | ||
40 | const index = column.index | ||
41 | |||
42 | if (typeof index === 'number') { | ||
43 | i = $index + index | ||
44 | } else if (typeof index === 'function') { | ||
45 | i = index($index) | ||
46 | } | ||
47 | |||
48 | return <div>{i}</div> | ||
49 | }, | ||
50 | sortable: false | ||
51 | }, | ||
52 | expand: { | ||
53 | renderHeader: (h, scope) => { | ||
54 | return <span>{scope.column.label || ''}</span> | ||
55 | }, | ||
56 | renderCell: (h, { row, store }, proxy) => { | ||
57 | const expanded = store.states.expandRows.indexOf(row) > -1 | ||
58 | return ( | ||
59 | <div | ||
60 | class={ | ||
61 | 'el-table__expand-icon ' + | ||
62 | (expanded ? 'el-table__expand-icon--expanded' : '') | ||
63 | } | ||
64 | on-click={e => proxy.handleExpandClick(row, e)} | ||
65 | > | ||
66 | <i class='el-icon el-icon-arrow-right' /> | ||
67 | </div> | ||
68 | ) | ||
69 | }, | ||
70 | sortable: false, | ||
71 | resizable: false, | ||
72 | className: 'el-table__expand-column' | ||
73 | } | ||
74 | } |
src/components/lbTable/lb-column.vue
deleted
100644 → 0
1 | /* | ||
2 | * FileName: lb-column.vue | ||
3 | * Remark: element-column | ||
4 | * Project: lb-element-table | ||
5 | * Author: 任超 | ||
6 | * File Created: Tuesday, 19th March 2019 9:58:23 am | ||
7 | * Last Modified: Tuesday, 19th March 2019 10:14:42 am | ||
8 | * Modified By: 任超 | ||
9 | */ | ||
10 | |||
11 | <template> | ||
12 | <el-table-column v-bind="$attrs" v-on="$listeners" :prop="column.prop" :label="column.label" :type="column.type" | ||
13 | :index="column.index" :column-key="column.columnKey" :width="column.width" :min-width="column.minWidth" | ||
14 | :fixed="column.fixed" :scoped-slot="column.renderHeader" :sortable="column.sortable || false" | ||
15 | :sort-method="column.sortMethod" :sort-by="column.sortBy" :sort-orders="column.sortOrders" | ||
16 | :resizable="column.resizable || true" :formatter="column.formatter" | ||
17 | :show-overflow-tooltip="column.showOverflowTooltip || false" :align="column.align || align || 'center'" | ||
18 | :header-align="column.headerAlign || headerAlign || column.align || align || 'center'" | ||
19 | :class-name="column.className" :label-class-name="column.labelClassName" :selectable="column.selectable" | ||
20 | :reserve-selection="column.reserveSelection || false" :filters="column.filters" | ||
21 | :filter-placement="column.filterPlacement" :filter-multiple="column.filterMultiple" | ||
22 | :filter-method="column.filterMethod" :filtered-value="column.filteredValue"> | ||
23 | <template slot="header" slot-scope="scope"> | ||
24 | <lb-render v-if="column.renderHeader" :scope="scope" :render="column.renderHeader"> | ||
25 | </lb-render> | ||
26 | <span v-else>{{ scope.column.label }}</span> | ||
27 | </template> | ||
28 | |||
29 | <template slot-scope="scope"> | ||
30 | <lb-render :scope="scope" :render="column.render"> | ||
31 | </lb-render> | ||
32 | </template> | ||
33 | |||
34 | <template v-if="column.children"> | ||
35 | <lb-column v-for="(col, index) in column.children" :key="index" :column="col"> | ||
36 | </lb-column> | ||
37 | </template> | ||
38 | </el-table-column> | ||
39 | </template> | ||
40 | |||
41 | <script> | ||
42 | import LbRender from './lb-render' | ||
43 | import forced from './forced.js' | ||
44 | export default { | ||
45 | name: 'LbColumn', | ||
46 | props: { | ||
47 | column: Object, | ||
48 | headerAlign: String, | ||
49 | align: String | ||
50 | }, | ||
51 | components: { | ||
52 | LbRender | ||
53 | }, | ||
54 | methods: { | ||
55 | setColumn () { | ||
56 | if (this.column.type) { | ||
57 | this.column.renderHeader = forced[this.column.type].renderHeader | ||
58 | this.column.render = this.column.render || forced[this.column.type].renderCell | ||
59 | } | ||
60 | if (this.column.formatter) { | ||
61 | this.column.render = (h, scope) => { | ||
62 | return <span>{scope.column.formatter(scope.row, scope.column, scope.row, scope.$index)}</span> | ||
63 | } | ||
64 | } | ||
65 | if (!this.column.render) { | ||
66 | this.column.render = (h, scope) => { | ||
67 | return <span>{scope.row[scope.column.property]}</span> | ||
68 | } | ||
69 | } | ||
70 | } | ||
71 | }, | ||
72 | watch: { | ||
73 | column: { | ||
74 | handler () { | ||
75 | this.setColumn() | ||
76 | }, | ||
77 | immediate: true | ||
78 | } | ||
79 | } | ||
80 | } | ||
81 | </script> |
src/components/lbTable/lb-render.vue
deleted
100644 → 0
1 | /* | ||
2 | * FileName: lb-render.vue | ||
3 | * Remark: 自定义render | ||
4 | * Project: lb-element-table | ||
5 | * Author: 任超 | ||
6 | * File Created: Tuesday, 19th March 2019 10:15:30 am | ||
7 | * Last Modified: Tuesday, 19th March 2019 10:15:32 am | ||
8 | * Modified By: 任超 | ||
9 | */ | ||
10 | <script> | ||
11 | export default { | ||
12 | name: 'LbRender', | ||
13 | functional: true, | ||
14 | props: { | ||
15 | scope: Object, | ||
16 | render: Function | ||
17 | }, | ||
18 | render: (h, ctx) => { | ||
19 | return ctx.props.render ? ctx.props.render(h, ctx.props.scope) : '' | ||
20 | } | ||
21 | } | ||
22 | </script> |
src/components/lbTable/lb-table.vue
deleted
100644 → 0
1 | /* | ||
2 | * FileName: lb-table.vue | ||
3 | * Remark: element table | ||
4 | * Project: lb-element-table | ||
5 | * Author: 任超 | ||
6 | * File Created: Tuesday, 19th March 2019 9:55:27 am | ||
7 | * Last Modified: Tuesday, 19th March 2019 9:55:34 am | ||
8 | * Modified By: 任超 | ||
9 | */ | ||
10 | |||
11 | <template> | ||
12 | <div :class="['lb-table', customClass]"> | ||
13 | <el-table v-if="!heightNumSetting" class="table-fixed" :row-style="{ height: '50px' }" ref="elTable" | ||
14 | :border='border' :row-class-name="tableRowClassName" :show-header='showHeader' @row-click="singleElection" | ||
15 | :header-cell-style="{ background: 'rgb(236, 245, 255)' }" v-bind="$attrs" :height="tableHeight" v-on="$listeners" | ||
16 | :data="data" style="width: 100%" :span-method="this.merge ? this.mergeMethod : this.spanMethod"> | ||
17 | <el-table-column width="45" align="center" v-if="isRadio"> | ||
18 | <template slot-scope="scope"> | ||
19 | <el-radio v-model="selected" :label="scope.$index" class="table-radio"></el-radio> | ||
20 | </template> | ||
21 | </el-table-column> | ||
22 | |||
23 | <lb-column v-bind="$attrs" v-for="(item, index) in column" :key="index" :column="item"> | ||
24 | </lb-column> | ||
25 | </el-table> | ||
26 | |||
27 | <el-table v-else ref="elTable" class="table-fixed" :row-style="{ height: '50px' }" :border='border' | ||
28 | :row-class-name="tableRowClassName" :show-header='showHeader' | ||
29 | :header-cell-style="{ background: 'rgb(236, 245, 255)' }" v-bind="$attrs" :max-height="maxHeight" | ||
30 | v-on="$listeners" :data="data" style="width: 100%" :span-method="this.merge ? this.mergeMethod : this.spanMethod"> | ||
31 | |||
32 | <el-table-column width="45" align="center" v-if="isRadio"> | ||
33 | <template slot-scope="scope"> | ||
34 | <el-radio v-model="selected" :label="scope.$index" class="table-radio"></el-radio> | ||
35 | </template> | ||
36 | </el-table-column> | ||
37 | <lb-column v-bind="$attrs" v-for="(item, index) in column" :key="index" :column="item"> | ||
38 | </lb-column> | ||
39 | </el-table> | ||
40 | |||
41 | <br> | ||
42 | <el-pagination class="lb-table-pagination" v-if="pagination" v-bind="$attrs" v-on="$listeners" background | ||
43 | :page-sizes="[10, 20, 50, 100]" layout="total, sizes, prev, pager, next" @current-change="paginationCurrentChange" | ||
44 | :style="{ 'margin-top': paginationTop, 'text-align': paginationAlign }"> | ||
45 | </el-pagination> | ||
46 | </div> | ||
47 | </template> | ||
48 | |||
49 | <script> | ||
50 | import LbColumn from './lb-column' | ||
51 | export default { | ||
52 | props: { | ||
53 | column: Array, | ||
54 | data: Array, | ||
55 | spanMethod: Function, | ||
56 | pagination: { | ||
57 | type: Boolean, | ||
58 | default: true, | ||
59 | }, | ||
60 | isRadio: { | ||
61 | type: Boolean, | ||
62 | default: false, | ||
63 | }, | ||
64 | border: { | ||
65 | type: Boolean, | ||
66 | default: true, | ||
67 | }, | ||
68 | showHeader: { | ||
69 | type: Boolean, | ||
70 | default: true, | ||
71 | }, | ||
72 | paginationTop: { | ||
73 | type: String, | ||
74 | default: '0', | ||
75 | }, | ||
76 | heightNum: { | ||
77 | type: Number, | ||
78 | default: 265, | ||
79 | }, | ||
80 | maxHeight: { | ||
81 | type: Number, | ||
82 | default: 500 | ||
83 | }, | ||
84 | heightNumSetting: { | ||
85 | type: Boolean, | ||
86 | default: false, | ||
87 | }, | ||
88 | customClass: { | ||
89 | type: String, | ||
90 | default: '', | ||
91 | }, | ||
92 | paginationAlign: { | ||
93 | type: String, | ||
94 | default: 'left', | ||
95 | }, | ||
96 | merge: Array, | ||
97 | }, | ||
98 | components: { | ||
99 | LbColumn, | ||
100 | }, | ||
101 | data () { | ||
102 | return { | ||
103 | tableHeight: '', | ||
104 | mergeLine: {}, | ||
105 | mergeIndex: {}, | ||
106 | selected: '' | ||
107 | } | ||
108 | }, | ||
109 | created () { | ||
110 | this.getMergeArr(this.data, this.merge) | ||
111 | this.getHeight() | ||
112 | }, | ||
113 | computed: { | ||
114 | dataLength () { | ||
115 | return [] || this.data.length | ||
116 | }, | ||
117 | }, | ||
118 | methods: { | ||
119 | // 单选 | ||
120 | singleElection (row) { | ||
121 | this.selected = this.data.indexOf(row); | ||
122 | }, | ||
123 | |||
124 | tableRowClassName ({ row, rowIndex }) { | ||
125 | if (rowIndex % 2 === 1) { | ||
126 | return 'interlaced'; | ||
127 | } | ||
128 | }, | ||
129 | getHeight () { | ||
130 | if (!this.heightNumSetting) { | ||
131 | this.tableHeight = window.innerHeight - this.heightNum | ||
132 | } | ||
133 | }, | ||
134 | clearSelection () { | ||
135 | this.$refs.elTable.clearSelection() | ||
136 | }, | ||
137 | toggleRowSelection (row, selected) { | ||
138 | this.$refs.elTable.toggleRowSelection(row, selected) | ||
139 | }, | ||
140 | toggleAllSelection () { | ||
141 | this.$refs.elTable.toggleAllSelection() | ||
142 | }, | ||
143 | toggleRowExpansion (row, expanded) { | ||
144 | this.$refs.elTable.toggleRowExpansion(row, expanded) | ||
145 | }, | ||
146 | setCurrentRow (row) { | ||
147 | this.$refs.elTable.setCurrentRow(row) | ||
148 | }, | ||
149 | clearSort () { | ||
150 | this.$refs.elTable.clearSort() | ||
151 | }, | ||
152 | clearFilter (columnKey) { | ||
153 | this.$refs.elTable.clearFilter(columnKey) | ||
154 | }, | ||
155 | doLayout () { | ||
156 | this.$refs.elTable.doLayout() | ||
157 | }, | ||
158 | sort (prop, order) { | ||
159 | this.$refs.elTable.sort(prop, order) | ||
160 | }, | ||
161 | paginationCurrentChange (val) { | ||
162 | this.$emit('p-current-change', val) | ||
163 | }, | ||
164 | getMergeArr (tableData, merge) { | ||
165 | if (!merge) return | ||
166 | this.mergeLine = {} | ||
167 | this.mergeIndex = {} | ||
168 | merge.forEach((item, k) => { | ||
169 | tableData.forEach((data, i) => { | ||
170 | if (i === 0) { | ||
171 | this.mergeIndex[item] = this.mergeIndex[item] || [] | ||
172 | this.mergeIndex[item].push(1) | ||
173 | this.mergeLine[item] = 0 | ||
174 | } else { | ||
175 | if (data[item] === tableData[i - 1][item]) { | ||
176 | this.mergeIndex[item][this.mergeLine[item]] += 1 | ||
177 | this.mergeIndex[item].push(0) | ||
178 | } else { | ||
179 | this.mergeIndex[item].push(1) | ||
180 | this.mergeLine[item] = i | ||
181 | } | ||
182 | } | ||
183 | }) | ||
184 | }) | ||
185 | }, | ||
186 | mergeMethod ({ row, column, rowIndex, columnIndex }) { | ||
187 | const index = this.merge.indexOf(column.property) | ||
188 | if (index > -1) { | ||
189 | const _row = this.mergeIndex[this.merge[index]][rowIndex] | ||
190 | const _col = _row > 0 ? 1 : 0 | ||
191 | return { | ||
192 | rowspan: _row, | ||
193 | colspan: _col, | ||
194 | } | ||
195 | } | ||
196 | }, | ||
197 | }, | ||
198 | watch: { | ||
199 | merge () { | ||
200 | this.getMergeArr(this.data, this.merge) | ||
201 | }, | ||
202 | dataLength () { | ||
203 | this.getMergeArr(this.data, this.merge) | ||
204 | } | ||
205 | }, | ||
206 | } | ||
207 | </script> | ||
208 | <style rel="stylesheet/scss" scoped lang="scss"> | ||
209 | .lb-table { | ||
210 | margin-top: 1px; | ||
211 | |||
212 | .interlaced { | ||
213 | background: #fafcff; | ||
214 | border: 1px solid #ebf2fa; | ||
215 | } | ||
216 | } | ||
217 | |||
218 | /deep/.el-table .cell { | ||
219 | padding-left: 3px; | ||
220 | padding-right: 3px; | ||
221 | } | ||
222 | |||
223 | .table-radio { | ||
224 | /deep/.el-radio__label { | ||
225 | display: none; | ||
226 | } | ||
227 | } | ||
228 | |||
229 | /deep/.el-radio { | ||
230 | margin-right: 5px !important; | ||
231 | } | ||
232 | </style> |
src/components/lbTable/redeme.md
deleted
100644 → 0
src/components/loading/index.js
deleted
100644 → 0
src/components/loading/src/index.js
deleted
100644 → 0
1 | import Vue from 'vue'; | ||
2 | import loadingVue from './loading.vue'; | ||
3 | import { addClass, removeClass, getStyle } from 'element-ui/src/utils/dom'; | ||
4 | import { PopupManager } from 'element-ui/src/utils/popup'; | ||
5 | import afterLeave from 'element-ui/src/utils/after-leave'; | ||
6 | import merge from 'element-ui/src/utils/merge'; | ||
7 | |||
8 | const LoadingConstructor = Vue.extend(loadingVue); | ||
9 | |||
10 | const defaults = { | ||
11 | text: null, | ||
12 | fullscreen: true, | ||
13 | body: false, | ||
14 | lock: false, | ||
15 | customClass: '' | ||
16 | }; | ||
17 | |||
18 | let fullscreenLoading; | ||
19 | |||
20 | LoadingConstructor.prototype.originalPosition = ''; | ||
21 | LoadingConstructor.prototype.originalOverflow = ''; | ||
22 | |||
23 | LoadingConstructor.prototype.close = function() { | ||
24 | if (this.fullscreen) { | ||
25 | fullscreenLoading = undefined; | ||
26 | } | ||
27 | afterLeave(this, _ => { | ||
28 | const target = this.fullscreen || this.body | ||
29 | ? document.body | ||
30 | : this.target; | ||
31 | removeClass(target, 'el-loading-parent--relative'); | ||
32 | removeClass(target, 'el-loading-parent--hidden'); | ||
33 | if (this.$el && this.$el.parentNode) { | ||
34 | this.$el.parentNode.removeChild(this.$el); | ||
35 | } | ||
36 | this.$destroy(); | ||
37 | }, 300); | ||
38 | this.visible = false; | ||
39 | }; | ||
40 | |||
41 | const addStyle = (options, parent, instance) => { | ||
42 | let maskStyle = {}; | ||
43 | if (options.fullscreen) { | ||
44 | instance.originalPosition = getStyle(document.body, 'position'); | ||
45 | instance.originalOverflow = getStyle(document.body, 'overflow'); | ||
46 | maskStyle.zIndex = PopupManager.nextZIndex(); | ||
47 | } else if (options.body) { | ||
48 | instance.originalPosition = getStyle(document.body, 'position'); | ||
49 | ['top', 'left'].forEach(property => { | ||
50 | let scroll = property === 'top' ? 'scrollTop' : 'scrollLeft'; | ||
51 | maskStyle[property] = options.target.getBoundingClientRect()[property] + | ||
52 | document.body[scroll] + | ||
53 | document.documentElement[scroll] + | ||
54 | 'px'; | ||
55 | }); | ||
56 | ['height', 'width'].forEach(property => { | ||
57 | maskStyle[property] = options.target.getBoundingClientRect()[property] + 'px'; | ||
58 | }); | ||
59 | } else { | ||
60 | instance.originalPosition = getStyle(parent, 'position'); | ||
61 | } | ||
62 | Object.keys(maskStyle).forEach(property => { | ||
63 | instance.$el.style[property] = maskStyle[property]; | ||
64 | }); | ||
65 | }; | ||
66 | |||
67 | const Loading = (options = {}) => { | ||
68 | if (Vue.prototype.$isServer) return; | ||
69 | options = merge({}, defaults, options); | ||
70 | if (typeof options.target === 'string') { | ||
71 | options.target = document.querySelector(options.target); | ||
72 | } | ||
73 | options.target = options.target || document.body; | ||
74 | if (options.target !== document.body) { | ||
75 | options.fullscreen = false; | ||
76 | } else { | ||
77 | options.body = true; | ||
78 | } | ||
79 | if (options.fullscreen && fullscreenLoading) { | ||
80 | return fullscreenLoading; | ||
81 | } | ||
82 | |||
83 | let parent = options.body ? document.body : options.target; | ||
84 | let instance = new LoadingConstructor({ | ||
85 | el: document.createElement('div'), | ||
86 | data: options | ||
87 | }); | ||
88 | |||
89 | addStyle(options, parent, instance); | ||
90 | if (instance.originalPosition !== 'absolute' && instance.originalPosition !== 'fixed' && instance.originalPosition !== 'sticky') { | ||
91 | addClass(parent, 'el-loading-parent--relative'); | ||
92 | } | ||
93 | if (options.fullscreen && options.lock) { | ||
94 | addClass(parent, 'el-loading-parent--hidden'); | ||
95 | } | ||
96 | parent.appendChild(instance.$el); | ||
97 | Vue.nextTick(() => { | ||
98 | instance.visible = true; | ||
99 | }); | ||
100 | if (options.fullscreen) { | ||
101 | fullscreenLoading = instance; | ||
102 | } | ||
103 | return instance; | ||
104 | }; | ||
105 | |||
106 | export default Loading; |
1 | <template> | ||
2 | <transition name="el-loading-fade" @after-leave="handleAfterLeave"> | ||
3 | <div v-show="visible" class="el-loading-mask" :style="{ backgroundColor: background || '' }" | ||
4 | :class="[customClass, { 'is-fullscreen': fullscreen }]"> | ||
5 | <div class="el-loading-spinner"> | ||
6 | <img class="img" src="../../../image/progress.gif" alt=""> | ||
7 | <p v-if="text" class="el-loading-text">{{ text }}</p> | ||
8 | </div> | ||
9 | </div> | ||
10 | </transition> | ||
11 | </template> | ||
12 | |||
13 | <script> | ||
14 | export default { | ||
15 | data () { | ||
16 | return { | ||
17 | text: null, | ||
18 | spinner: null, | ||
19 | background: null, | ||
20 | fullscreen: true, | ||
21 | visible: false, | ||
22 | customClass: '' | ||
23 | }; | ||
24 | }, | ||
25 | |||
26 | methods: { | ||
27 | handleAfterLeave () { | ||
28 | this.$emit('after-leave'); | ||
29 | }, | ||
30 | setText (text) { | ||
31 | this.text = text; | ||
32 | } | ||
33 | } | ||
34 | }; | ||
35 | </script> | ||
36 | <style scoped lang="scss"> | ||
37 | .el-loading-spinner { | ||
38 | margin-top: -100px !important; | ||
39 | |||
40 | .img { | ||
41 | width: 80px; | ||
42 | height: 80px; | ||
43 | } | ||
44 | } | ||
45 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
... | @@ -9,17 +9,16 @@ | ... | @@ -9,17 +9,16 @@ |
9 | </div> | 9 | </div> |
10 | <div class="right-menu"> | 10 | <div class="right-menu"> |
11 | <svg-icon class="function" icon-class='function' /> | 11 | <svg-icon class="function" icon-class='function' /> |
12 | <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand"> | 12 | <!-- <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="hover" @command="handleCommand"> |
13 | <el-dropdown-menu slot="dropdown"> | ||
14 | <el-dropdown-item command="a">个人中心</el-dropdown-item> | ||
15 | </el-dropdown-menu> | ||
16 | </el-dropdown> --> | ||
13 | <div class="avatar-wrapper"> | 17 | <div class="avatar-wrapper"> |
14 | <span style="padding-right:10px">{{ name }}</span> | 18 | <span style="padding-right:10px">{{ name }}</span> |
15 | <img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" /> | 19 | <img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" /> |
16 | <!-- <i class="el-icon-caret-bottom" /> --> | 20 | <!-- <i class="el-icon-caret-bottom" /> --> |
17 | </div> | 21 | </div> |
18 | <el-dropdown-menu slot="dropdown"> | ||
19 | <el-dropdown-item command="a">个人中心</el-dropdown-item> | ||
20 | </el-dropdown-menu> | ||
21 | </el-dropdown> | ||
22 | |||
23 | 22 | ||
24 | <svg-icon class="shutdown" @click.native="logout" icon-class='shutdown' /> | 23 | <svg-icon class="shutdown" @click.native="logout" icon-class='shutdown' /> |
25 | </div> | 24 | </div> |
... | @@ -28,12 +27,12 @@ | ... | @@ -28,12 +27,12 @@ |
28 | </div> | 27 | </div> |
29 | </template> | 28 | </template> |
30 | <script> | 29 | <script> |
31 | import { mapGetters } from 'vuex' | 30 | import { mapGetters } from 'vuex' |
32 | import NoticeBar from '@/components/NoticeBar/index' | 31 | import NoticeBar from '@/components/NoticeBar/index' |
33 | import { | 32 | import { |
34 | getHomeNoticeList | 33 | getHomeNoticeList |
35 | } from "@/api/user" | 34 | } from "@/api/user" |
36 | export default { | 35 | export default { |
37 | components: { | 36 | components: { |
38 | NoticeBar | 37 | NoticeBar |
39 | }, | 38 | }, |
... | @@ -91,21 +90,21 @@ export default { | ... | @@ -91,21 +90,21 @@ export default { |
91 | } | 90 | } |
92 | } | 91 | } |
93 | } | 92 | } |
94 | } | 93 | } |
95 | </script> | 94 | </script> |
96 | <style lang="scss" scoped> | 95 | <style lang="scss" scoped> |
97 | .navbar-con { | 96 | .navbar-con { |
98 | position: relative; | 97 | position: relative; |
99 | } | 98 | } |
100 | 99 | ||
101 | .NoticeBar { | 100 | .NoticeBar { |
102 | position: absolute; | 101 | position: absolute; |
103 | bottom: 0; | 102 | bottom: 0; |
104 | } | 103 | } |
105 | 104 | ||
106 | .el-dropdown-menu { | 105 | .el-dropdown-menu { |
107 | padding: 0 !important; | 106 | padding: 0 !important; |
108 | border: 1px solid #EBEEF5; | 107 | border: 1px solid #ebeef5; |
109 | box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12); | 108 | box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12); |
110 | border-radius: 4px 0 0 4px 4px; | 109 | border-radius: 4px 0 0 4px 4px; |
111 | 110 | ||
... | @@ -115,14 +114,14 @@ export default { | ... | @@ -115,14 +114,14 @@ export default { |
115 | font-size: 14px; | 114 | font-size: 14px; |
116 | font-family: PingFangSC-Regular, PingFang SC; | 115 | font-family: PingFangSC-Regular, PingFang SC; |
117 | font-weight: 400; | 116 | font-weight: 400; |
118 | color: #4A4A4A; | 117 | color: #4a4a4a; |
119 | width: 140px; | 118 | width: 140px; |
120 | height: 36px; | 119 | height: 36px; |
121 | line-height: 36px; | 120 | line-height: 36px; |
122 | } | 121 | } |
123 | 122 | ||
124 | .el-dropdown-menu__item:nth-child(6) { | 123 | .el-dropdown-menu__item:nth-child(6) { |
125 | border-top: 1px solid #EBEEF5; | 124 | border-top: 1px solid #ebeef5; |
126 | } | 125 | } |
127 | 126 | ||
128 | .popper__arrow { | 127 | .popper__arrow { |
... | @@ -133,12 +132,12 @@ export default { | ... | @@ -133,12 +132,12 @@ export default { |
133 | 132 | ||
134 | .el-dropdown-menu__item:not(.is-disabled):hover, | 133 | .el-dropdown-menu__item:not(.is-disabled):hover, |
135 | .el-dropdown-menu__item:focus { | 134 | .el-dropdown-menu__item:focus { |
136 | background: #F6F7F9; | 135 | background: #f6f7f9; |
137 | color: #4A4A4A; | 136 | color: #4a4a4a; |
137 | } | ||
138 | } | 138 | } |
139 | } | ||
140 | 139 | ||
141 | .navbar { | 140 | .navbar { |
142 | height: $headerHeight; | 141 | height: $headerHeight; |
143 | overflow: hidden; | 142 | overflow: hidden; |
144 | position: relative; | 143 | position: relative; |
... | @@ -157,7 +156,7 @@ export default { | ... | @@ -157,7 +156,7 @@ export default { |
157 | .backdrop { | 156 | .backdrop { |
158 | flex: 1; | 157 | flex: 1; |
159 | width: 60%; | 158 | width: 60%; |
160 | background: url('../../image/backdrop.png'); | 159 | background: url("../../image/backdrop.png"); |
161 | background-size: 100% 100%; | 160 | background-size: 100% 100%; |
162 | height: $headerHeight; | 161 | height: $headerHeight; |
163 | } | 162 | } |
... | @@ -248,6 +247,7 @@ export default { | ... | @@ -248,6 +247,7 @@ export default { |
248 | display: flex; | 247 | display: flex; |
249 | height: 40px; | 248 | height: 40px; |
250 | align-items: center; | 249 | align-items: center; |
250 | color: #ffffff; | ||
251 | 251 | ||
252 | .user-avatar { | 252 | .user-avatar { |
253 | cursor: pointer; | 253 | cursor: pointer; |
... | @@ -265,5 +265,5 @@ export default { | ... | @@ -265,5 +265,5 @@ export default { |
265 | } | 265 | } |
266 | } | 266 | } |
267 | } | 267 | } |
268 | } | 268 | } |
269 | </style> | 269 | </style> | ... | ... |
1 | <!-- | 1 | <!-- |
2 | * @Author: xiaomiao 1158771342@qq.com | 2 | * @Description: |
3 | * @Date: 2023-03-09 14:54:49 | 3 | * @Autor: renchao |
4 | * @LastEditors: xiaomiao 1158771342@qq.com | 4 | * @LastEditTime: 2023-04-26 16:05:28 |
5 | * @LastEditTime: 2023-04-27 10:39:11 | ||
6 | * @FilePath: \不动产登记系统\bdcdj-web\src\views\workflow\components\batchDel.vue | ||
7 | * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||
8 | --> | 5 | --> |
9 | <template> | 6 | <template> |
10 | <div class='batchDel'> | 7 | <div class='batchDel'> | ... | ... |
... | @@ -59,10 +59,10 @@ | ... | @@ -59,10 +59,10 @@ |
59 | <div v-else>已完结</div> | 59 | <div v-else>已完结</div> |
60 | </template> | 60 | </template> |
61 | </el-table-column> | 61 | </el-table-column> |
62 | <el-table-column label="环节名称" prop="taskName" minWidth="150px" align="center" /> | 62 | <el-table-column label="环节名称" prop="taskName" minWidth="100" align="center" /> |
63 | <el-table-column label="办理人" prop="assigneeName" minWidth="100px" align="center" /> | 63 | <el-table-column label="办理人" prop="assigneeName" minWidth="120" align="center" /> |
64 | <el-table-column label="处理时间" prop="createTime" width="140px" align="center" /> | 64 | <el-table-column label="处理时间" prop="createTime" width="160" align="center" /> |
65 | <el-table-column label="办结时间" prop="finishTime" width="140px" align="center" /> | 65 | <el-table-column label="办结时间" prop="finishTime" width="160" align="center" /> |
66 | <el-table-column label="操作方式" align="center"> | 66 | <el-table-column label="操作方式" align="center"> |
67 | </el-table-column> | 67 | </el-table-column> |
68 | </el-table> | 68 | </el-table> | ... | ... |
... | @@ -16,7 +16,7 @@ | ... | @@ -16,7 +16,7 @@ |
16 | <span class="iconName">{{ item.name }}</span> | 16 | <span class="iconName">{{ item.name }}</span> |
17 | </li> | 17 | </li> |
18 | </ul> | 18 | </ul> |
19 | <NoticeBar class="NoticeBar" :noticeList="noticeList" /> | 19 | <NoticeBar class="NoticeBar" :noticeList="noticeList" v-if="noticeList.length > 0" /> |
20 | </div> | 20 | </div> |
21 | <!-- 内容框架 --> | 21 | <!-- 内容框架 --> |
22 | <div class="containerFrame"> | 22 | <div class="containerFrame"> | ... | ... |
... | @@ -5,7 +5,7 @@ | ... | @@ -5,7 +5,7 @@ |
5 | <!-- 左侧业务功能按钮 --> | 5 | <!-- 左侧业务功能按钮 --> |
6 | <ul> | 6 | <ul> |
7 | <li @click="operation(item)" v-for="(item, index) in leftButtonList" :key="index"> | 7 | <li @click="operation(item)" v-for="(item, index) in leftButtonList" :key="index"> |
8 | <svg-icon :icon-class="item.icon" /> | 8 | <svg-icon class="icon" :icon-class="item.icon" /> |
9 | <span class="iconName">{{ item.name }}</span> | 9 | <span class="iconName">{{ item.name }}</span> |
10 | </li> | 10 | </li> |
11 | </ul> | 11 | </ul> |
... | @@ -13,10 +13,10 @@ | ... | @@ -13,10 +13,10 @@ |
13 | <ul> | 13 | <ul> |
14 | <li @click="operation(item)" v-for="(item, index) in rightButtonList" :key="index"> | 14 | <li @click="operation(item)" v-for="(item, index) in rightButtonList" :key="index"> |
15 | <svg-icon class="icon" :icon-class="item.icon" /> | 15 | <svg-icon class="icon" :icon-class="item.icon" /> |
16 | <span class="iconName">{{ item.name }} {{item.value }}</span> | 16 | <span class="iconName">{{ item.name }} {{ item.value }}</span> |
17 | </li> | 17 | </li> |
18 | </ul> | 18 | </ul> |
19 | <NoticeBar class="NoticeBar" :noticeList="noticeList" /> | 19 | <NoticeBar class="NoticeBar" :noticeList="noticeList" v-if="noticeList.length > 0" /> |
20 | </div> | 20 | </div> |
21 | <!-- 内容框架 --> | 21 | <!-- 内容框架 --> |
22 | <div class="containerFrame"> | 22 | <div class="containerFrame"> |
... | @@ -62,16 +62,15 @@ | ... | @@ -62,16 +62,15 @@ |
62 | </div> | 62 | </div> |
63 | </template> | 63 | </template> |
64 | <style scoped lang="scss"> | 64 | <style scoped lang="scss"> |
65 | @import "~@/styles/mixin.scss"; | 65 | @import "~@/styles/mixin.scss"; |
66 | @import "./workFrame.scss"; | 66 | @import "./workFrame.scss"; |
67 | </style> | 67 | </style> |
68 | <script> | 68 | <script> |
69 | import { leftMenu, stepExpandInfo, getStepFormInfo } from "@/api/fqsq.js"; | 69 | import { leftMenu, stepExpandInfo, getStepFormInfo } from "@/api/fqsq.js"; |
70 | import publicFlow from "./mixin/public.js"; | 70 | import publicFlow from "./mixin/public.js"; |
71 | import { popupDialog } from "@/utils/popup.js"; | 71 | import NoticeBar from "@/components/NoticeBar/index"; |
72 | import NoticeBar from "@/components/NoticeBar/index"; | 72 | import { getWorkFlowImage } from "@/api/workflow/jsydsyqFlow.js"; |
73 | import { getWorkFlowImage } from "@/api/workflow/jsydsyqFlow.js"; | 73 | export default { |
74 | export default { | ||
75 | mixins: [publicFlow], | 74 | mixins: [publicFlow], |
76 | components: { | 75 | components: { |
77 | NoticeBar, | 76 | NoticeBar, |
... | @@ -151,7 +150,7 @@ export default { | ... | @@ -151,7 +150,7 @@ export default { |
151 | finishedSequenceFlowSet: result.finishedSequenceFlowSet, | 150 | finishedSequenceFlowSet: result.finishedSequenceFlowSet, |
152 | }, | 151 | }, |
153 | allCommentList: result.historyTaskList, | 152 | allCommentList: result.historyTaskList, |
154 | }, '70%', true); | 153 | }, '80%', true); |
155 | } | 154 | } |
156 | ); | 155 | ); |
157 | break; | 156 | break; |
... | @@ -237,5 +236,5 @@ export default { | ... | @@ -237,5 +236,5 @@ export default { |
237 | }); | 236 | }); |
238 | }, | 237 | }, |
239 | }, | 238 | }, |
240 | }; | 239 | }; |
241 | </script> | 240 | </script> | ... | ... |
... | @@ -86,9 +86,8 @@ | ... | @@ -86,9 +86,8 @@ |
86 | </div> | 86 | </div> |
87 | <div class="from-clues-content"> | 87 | <div class="from-clues-content"> |
88 | <lb-table :page-size="pageData.size" class="loadingtext" @sort-change="handleSort" | 88 | <lb-table :page-size="pageData.size" class="loadingtext" @sort-change="handleSort" |
89 | :current-page.sync="pageData.currentPage" :heightNum="335" :total="tableData.total" | 89 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
90 | @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" | 90 | @p-current-change="handleCurrentChange" :column="tableData.columns" :data="tableData.data"> |
91 | :data="tableData.data"> | ||
92 | </lb-table> | 91 | </lb-table> |
93 | </div> | 92 | </div> |
94 | <searchBox v-model="isSearch" @getSearch="getSearch" :advancedForm="otherForm" /> | 93 | <searchBox v-model="isSearch" @getSearch="getSearch" :advancedForm="otherForm" /> | ... | ... |
... | @@ -33,7 +33,7 @@ | ... | @@ -33,7 +33,7 @@ |
33 | </div> | 33 | </div> |
34 | <!-- 表格 --> | 34 | <!-- 表格 --> |
35 | <div class="from-clues-content loadingtext"> | 35 | <div class="from-clues-content loadingtext"> |
36 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 36 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
37 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 37 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
38 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 38 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
39 | :data="tableData.data"> | 39 | :data="tableData.data"> | ... | ... |
... | @@ -42,7 +42,7 @@ | ... | @@ -42,7 +42,7 @@ |
42 | </div> | 42 | </div> |
43 | <!-- 表格 --> | 43 | <!-- 表格 --> |
44 | <div class="from-clues-content loadingtext"> | 44 | <div class="from-clues-content loadingtext"> |
45 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 45 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
46 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 46 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
47 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 47 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
48 | :data="tableData.data"> | 48 | :data="tableData.data"> | ... | ... |
... | @@ -107,7 +107,7 @@ | ... | @@ -107,7 +107,7 @@ |
107 | </el-form> | 107 | </el-form> |
108 | </div> | 108 | </div> |
109 | <div class="from-clues-content loadingtext"> | 109 | <div class="from-clues-content loadingtext"> |
110 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 110 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
111 | :current-page.sync="pageData.currentPage" :total="dztableData.total" @size-change="handleSizeChange" | 111 | :current-page.sync="pageData.currentPage" :total="dztableData.total" @size-change="handleSizeChange" |
112 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="dztableData.columns" | 112 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="dztableData.columns" |
113 | :data="dztableData.data"> | 113 | :data="dztableData.data"> | ... | ... |
... | @@ -27,7 +27,7 @@ | ... | @@ -27,7 +27,7 @@ |
27 | </div> | 27 | </div> |
28 | <!-- 表格 --> | 28 | <!-- 表格 --> |
29 | <div class="from-clues-content loadingtext"> | 29 | <div class="from-clues-content loadingtext"> |
30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
33 | :data="tableData.data"> | 33 | :data="tableData.data"> | ... | ... |
... | @@ -27,7 +27,7 @@ | ... | @@ -27,7 +27,7 @@ |
27 | </div> | 27 | </div> |
28 | <!-- 表格 --> | 28 | <!-- 表格 --> |
29 | <div class="from-clues-content loadingtext"> | 29 | <div class="from-clues-content loadingtext"> |
30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
33 | :data="tableData.data"> | 33 | :data="tableData.data"> | ... | ... |
... | @@ -3,7 +3,7 @@ | ... | @@ -3,7 +3,7 @@ |
3 | <div class="from-clues"> | 3 | <div class="from-clues"> |
4 | <!-- 表单部分 --> | 4 | <!-- 表单部分 --> |
5 | <div class="from-clues-header"> | 5 | <div class="from-clues-header"> |
6 | <el-form :model="queryForm" ref="queryForm" > | 6 | <el-form :model="queryForm" ref="queryForm"> |
7 | <el-row> | 7 | <el-row> |
8 | <el-col :span="5"> | 8 | <el-col :span="5"> |
9 | <el-form-item label="权利类型" label-width="70px"> | 9 | <el-form-item label="权利类型" label-width="70px"> |
... | @@ -42,7 +42,7 @@ | ... | @@ -42,7 +42,7 @@ |
42 | </div> | 42 | </div> |
43 | <!-- 表格 --> | 43 | <!-- 表格 --> |
44 | <div class="from-clues-content loadingtext"> | 44 | <div class="from-clues-content loadingtext"> |
45 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 45 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
46 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 46 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
47 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 47 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
48 | :data="tableData.data"> | 48 | :data="tableData.data"> | ... | ... |
... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
34 | </div> | 34 | </div> |
35 | <!-- 表格 --> | 35 | <!-- 表格 --> |
36 | <div class="from-clues-content loadingtext"> | 36 | <div class="from-clues-content loadingtext"> |
37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
40 | :data="tableData.data"> | 40 | :data="tableData.data"> | ... | ... |
... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
34 | </div> | 34 | </div> |
35 | <!-- 表格 --> | 35 | <!-- 表格 --> |
36 | <div class="from-clues-content loadingtext"> | 36 | <div class="from-clues-content loadingtext"> |
37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
40 | :data="tableData.data"> | 40 | :data="tableData.data"> | ... | ... |
... | @@ -41,7 +41,7 @@ | ... | @@ -41,7 +41,7 @@ |
41 | </div> | 41 | </div> |
42 | <!-- 表格 --> | 42 | <!-- 表格 --> |
43 | <div class="from-clues-content loadingtext"> | 43 | <div class="from-clues-content loadingtext"> |
44 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 44 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
45 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 45 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
46 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 46 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
47 | :data="tableData.data"> | 47 | :data="tableData.data"> | ... | ... |
... | @@ -27,7 +27,7 @@ | ... | @@ -27,7 +27,7 @@ |
27 | </div> | 27 | </div> |
28 | <!-- 表格 --> | 28 | <!-- 表格 --> |
29 | <div class="from-clues-content loadingtext"> | 29 | <div class="from-clues-content loadingtext"> |
30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 30 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 31 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 32 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
33 | :data="tableData.data"> | 33 | :data="tableData.data"> | ... | ... |
... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
34 | </div> | 34 | </div> |
35 | <!-- 表格 --> | 35 | <!-- 表格 --> |
36 | <div class="from-clues-content loadingtext"> | 36 | <div class="from-clues-content loadingtext"> |
37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
40 | :data="tableData.data"> | 40 | :data="tableData.data"> | ... | ... |
... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
34 | </div> | 34 | </div> |
35 | <!-- 表格 --> | 35 | <!-- 表格 --> |
36 | <div class="from-clues-content loadingtext"> | 36 | <div class="from-clues-content loadingtext"> |
37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
40 | :data="tableData.data"> | 40 | :data="tableData.data"> | ... | ... |
... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
34 | </div> | 34 | </div> |
35 | <!-- 表格 --> | 35 | <!-- 表格 --> |
36 | <div class="from-clues-content loadingtext"> | 36 | <div class="from-clues-content loadingtext"> |
37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :heightNum="400" | 37 | <lb-table ref="table" @row-click="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300" |
38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" | 38 | :current-page.sync="pageData.currentPage" :total="tableData.total" @size-change="handleSizeChange" |
39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" | 39 | @p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="tableData.columns" |
40 | :data="tableData.data"> | 40 | :data="tableData.data"> | ... | ... |
... | @@ -2,10 +2,10 @@ | ... | @@ -2,10 +2,10 @@ |
2 | <div class="from-clues"> | 2 | <div class="from-clues"> |
3 | <!-- 表单部分 --> | 3 | <!-- 表单部分 --> |
4 | <div class="from-clues-header"> | 4 | <div class="from-clues-header"> |
5 | <el-form :model="queryForm" ref="queryForm" @submit.native.prevent label-width="80px"> | 5 | <el-form :model="queryForm" ref="queryForm" @submit.native.prevent label-width="100px"> |
6 | <el-row> | 6 | <el-row> |
7 | <el-col :span="5"> | 7 | <el-col :span="5"> |
8 | <el-form-item label="业务来源" label-width="70px"> | 8 | <el-form-item label="业务来源"> |
9 | <el-select v-model="queryForm.ywly" class="width100" filterable clearable placeholder="请选择业务来源"> | 9 | <el-select v-model="queryForm.ywly" class="width100" filterable clearable placeholder="请选择业务来源"> |
10 | <el-option v-for="item in dictData['ywly']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | 10 | <el-option v-for="item in dictData['ywly']" :key="item.dcode" :label="item.dname" :value="item.dcode"> |
11 | </el-option> | 11 | </el-option> | ... | ... |
... | @@ -18,6 +18,7 @@ class data extends filter { | ... | @@ -18,6 +18,7 @@ class data extends filter { |
18 | { | 18 | { |
19 | prop: "ywlymc", | 19 | prop: "ywlymc", |
20 | label: "业务来源", | 20 | label: "业务来源", |
21 | minWidth: '100' | ||
21 | }, | 22 | }, |
22 | { | 23 | { |
23 | label: "流程状态", | 24 | label: "流程状态", |
... | @@ -49,6 +50,7 @@ class data extends filter { | ... | @@ -49,6 +50,7 @@ class data extends filter { |
49 | }, | 50 | }, |
50 | { | 51 | { |
51 | label: "业务号", | 52 | label: "业务号", |
53 | minWidth: '100', | ||
52 | render: (h, scope) => { | 54 | render: (h, scope) => { |
53 | return ( | 55 | return ( |
54 | <div> | 56 | <div> |
... | @@ -60,12 +62,12 @@ class data extends filter { | ... | @@ -60,12 +62,12 @@ class data extends filter { |
60 | { | 62 | { |
61 | prop: "sqywmc", | 63 | prop: "sqywmc", |
62 | label: "申请业务名称", | 64 | label: "申请业务名称", |
63 | minWidth: '120', | 65 | minWidth: '150', |
64 | }, | 66 | }, |
65 | { | 67 | { |
66 | prop: "bdcdyh", | 68 | prop: "bdcdyh", |
67 | label: "不动产单元号", | 69 | label: "不动产单元号", |
68 | width: '170', | 70 | minWidth: '150', |
69 | }, | 71 | }, |
70 | { | 72 | { |
71 | prop: "qlrmc", | 73 | prop: "qlrmc", | ... | ... |
-
Please register or sign in to post a comment