8e44ec0b by xiaomiao

--no commit message

2 parents a403ebff 528d5f46
...@@ -23,3 +23,5 @@ yarn-error.log* ...@@ -23,3 +23,5 @@ yarn-error.log*
23 *.sw? 23 *.sw?
24 24
25 package-lock.json 25 package-lock.json
26
27 public/config.json
......
...@@ -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 { 287 display: none;
225 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
1 ## 这个是弹框组件,对于element自带的组件进行封装,方便修改全局样式做统一操作
2 ### 使用时在组件中引用
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 }
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>
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>
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>
1 ## 这是对于element-table 进行的二次封装
2
3 ### 文档地址
4
5 <!-- table 已经全局注册不需要每个页面单独注册 -->
6
7 [Windows/Mac/Linux 全平台客户端](https://github.liubing.me/lb-element-table/zh/guide/)
1 import directive from './src/directive';
2 import service from './src/index';
3
4 export default {
5 install (Vue) {
6 Vue.use(directive);
7 Vue.prototype.$loading = service;
8 },
9 directive,
10 service
11 };
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 <div class="avatar-wrapper">
14 <span style="padding-right:10px">{{ name }}</span>
15 <img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" />
16 <!-- <i class="el-icon-caret-bottom" /> -->
17 </div>
18 <el-dropdown-menu slot="dropdown"> 13 <el-dropdown-menu slot="dropdown">
19 <el-dropdown-item command="a">个人中心</el-dropdown-item> 14 <el-dropdown-item command="a">个人中心</el-dropdown-item>
20 </el-dropdown-menu> 15 </el-dropdown-menu>
21 </el-dropdown> 16 </el-dropdown> -->
22 17 <div class="avatar-wrapper">
18 <span style="padding-right:10px">{{ name }}</span>
19 <img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" />
20 <!-- <i class="el-icon-caret-bottom" /> -->
21 </div>
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,242 +27,243 @@ ...@@ -28,242 +27,243 @@
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 },
40 computed: {
41 ...mapGetters(['sidebar', 'avatar', 'name']),
42 baseUrl () {
43 return window.baseUrl;
44 }, 38 },
45 }, 39 computed: {
46 data () { 40 ...mapGetters(['sidebar', 'avatar', 'name']),
47 return { 41 baseUrl () {
48 logo: require('../../image/logo.png'), 42 return window.baseUrl;
49 noticeList: [] 43 },
50 } 44 },
51 }, 45 data () {
52 created () { 46 return {
53 this.queryNoticeList() 47 logo: require('../../image/logo.png'),
54 }, 48 noticeList: []
55 mounted () {
56 let that = this
57 window.addEventListener('message', function (messageEvent) {
58 if (messageEvent.data.update) {
59 that.queryNoticeList()
60 } 49 }
61 }) 50 },
62 }, 51 created () {
63 destroyed () { 52 this.queryNoticeList()
64 window.removeEventListener('message') 53 },
65 }, 54 mounted () {
66 methods: { 55 let that = this
67 56 window.addEventListener('message', function (messageEvent) {
68 queryNoticeList () { 57 if (messageEvent.data.update) {
69 getHomeNoticeList().then(res => { 58 that.queryNoticeList()
70 if (res.result) {
71 this.noticeList = res.result.noticeList
72 } 59 }
73 }) 60 })
74 }, 61 },
75 logout () { 62 destroyed () {
76 const url = baseUrl + "/sso-logout?redirect_uri=" + baseUrl + "/bdcdj"; 63 window.removeEventListener('message')
77 window.open(url, "_self");
78 sessionStorage.removeItem("navList");
79 }, 64 },
65 methods: {
80 66
81 themeChange (val) { 67 queryNoticeList () {
82 this.$store.dispatch('app/updateTheme', val) 68 getHomeNoticeList().then(res => {
83 }, 69 if (res.result) {
84 searchMessageCenter () { 70 this.noticeList = res.result.noticeList
85 this.$router.push({ name: 'messagecenter' }) 71 }
86 }, 72 })
87 handleCommand (command) { 73 },
88 if (command == 'a') { 74 logout () {
89 //个人中心 75 const url = baseUrl + "/sso-logout?redirect_uri=" + baseUrl + "/bdcdj";
90 this.$router.push({ name: 'personal' }) 76 window.open(url, "_self");
77 sessionStorage.removeItem("navList");
78 },
79
80 themeChange (val) {
81 this.$store.dispatch('app/updateTheme', val)
82 },
83 searchMessageCenter () {
84 this.$router.push({ name: 'messagecenter' })
85 },
86 handleCommand (command) {
87 if (command == 'a') {
88 //个人中心
89 this.$router.push({ name: 'personal' })
90 }
91 } 91 }
92 } 92 }
93 } 93 }
94 }
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 }
100
101 .NoticeBar {
102 position: absolute;
103 bottom: 0;
104 }
105
106 .el-dropdown-menu {
107 padding: 0 !important;
108 border: 1px solid #EBEEF5;
109 box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
110 border-radius: 4px 0 0 4px 4px;
111
112 .el-dropdown-menu__item {
113 text-align: center;
114 margin-top: 0 !important;
115 font-size: 14px;
116 font-family: PingFangSC-Regular, PingFang SC;
117 font-weight: 400;
118 color: #4A4A4A;
119 width: 140px;
120 height: 36px;
121 line-height: 36px;
122 }
123
124 .el-dropdown-menu__item:nth-child(6) {
125 border-top: 1px solid #EBEEF5;
126 }
127
128 .popper__arrow {
129 top: -11px !important;
130 left: 110px !important;
131 transform: rotate(0deg) scale(2);
132 } 98 }
133 99
134 .el-dropdown-menu__item:not(.is-disabled):hover, 100 .NoticeBar {
135 .el-dropdown-menu__item:focus { 101 position: absolute;
136 background: #F6F7F9; 102 bottom: 0;
137 color: #4A4A4A;
138 } 103 }
139 }
140 104
141 .navbar { 105 .el-dropdown-menu {
142 height: $headerHeight; 106 padding: 0 !important;
143 overflow: hidden; 107 border: 1px solid #ebeef5;
144 position: relative; 108 box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
145 background: #fff; 109 border-radius: 4px 0 0 4px 4px;
146 // background: linear-gradient(270deg, #148CEE 0%, #1870E3 100%); //默认颜色
147 box-shadow: 0 1px 0px rgba(0, 21, 41, 0.08);
148 display: flex;
149 align-items: center;
150 padding: 0 20px;
151 justify-content: space-between;
152 110
153 .header-logo { 111 .el-dropdown-menu__item {
154 width: 300px; 112 text-align: center;
155 } 113 margin-top: 0 !important;
156 114 font-size: 14px;
157 .backdrop { 115 font-family: PingFangSC-Regular, PingFang SC;
158 flex: 1; 116 font-weight: 400;
159 width: 60%; 117 color: #4a4a4a;
160 background: url('../../image/backdrop.png'); 118 width: 140px;
161 background-size: 100% 100%; 119 height: 36px;
162 height: $headerHeight; 120 line-height: 36px;
163 } 121 }
164 122
165 .hamburger-container { 123 .el-dropdown-menu__item:nth-child(6) {
166 line-height: 43px; 124 border-top: 1px solid #ebeef5;
167 height: 100%; 125 }
168 float: left;
169 cursor: pointer;
170 transition: background 0.3s;
171 -webkit-tap-highlight-color: transparent;
172 126
173 &:hover { 127 .popper__arrow {
174 background: rgba(0, 0, 0, 0.025); 128 top: -11px !important;
129 left: 110px !important;
130 transform: rotate(0deg) scale(2);
175 } 131 }
176 }
177 132
178 .breadcrumb-container { 133 .el-dropdown-menu__item:not(.is-disabled):hover,
179 float: left; 134 .el-dropdown-menu__item:focus {
135 background: #f6f7f9;
136 color: #4a4a4a;
137 }
180 } 138 }
181 139
182 .right-menu { 140 .navbar {
183 float: right; 141 height: $headerHeight;
184 height: 100%; 142 overflow: hidden;
185 line-height: 50px; 143 position: relative;
144 background: #fff;
145 // background: linear-gradient(270deg, #148CEE 0%, #1870E3 100%); //默认颜色
146 box-shadow: 0 1px 0px rgba(0, 21, 41, 0.08);
186 display: flex; 147 display: flex;
187 align-items: center; 148 align-items: center;
149 padding: 0 20px;
150 justify-content: space-between;
188 151
189 .function { 152 .header-logo {
190 margin: 0 15px; 153 width: 300px;
191 cursor: pointer; 154 }
155
156 .backdrop {
157 flex: 1;
158 width: 60%;
159 background: url("../../image/backdrop.png");
160 background-size: 100% 100%;
161 height: $headerHeight;
192 } 162 }
193 163
194 .shutdown { 164 .hamburger-container {
195 font-size: 20px; 165 line-height: 43px;
196 margin-left: 15px; 166 height: 100%;
167 float: left;
197 cursor: pointer; 168 cursor: pointer;
169 transition: background 0.3s;
170 -webkit-tap-highlight-color: transparent;
171
172 &:hover {
173 background: rgba(0, 0, 0, 0.025);
174 }
198 } 175 }
199 176
200 .organization-item { 177 .breadcrumb-container {
201 margin-right: 40px; 178 float: left;
202 margin-top: -40px !important;
203 } 179 }
204 180
205 .item { 181 .right-menu {
206 margin-right: 40px; 182 float: right;
207 margin-top: -20px; 183 height: 100%;
208 line-height: 18.4px; 184 line-height: 50px;
209 cursor: pointer; 185 display: flex;
210 position: relative; 186 align-items: center;
211 187
212 .item-box { 188 .function {
213 position: absolute; 189 margin: 0 15px;
214 top: -5px;
215 left: 3px;
216 width: 100%;
217 min-width: 25px;
218 height: 25px;
219 cursor: pointer; 190 cursor: pointer;
220 z-index: 100;
221 } 191 }
222 }
223 192
224 &:focus { 193 .shutdown {
225 outline: none; 194 font-size: 20px;
226 } 195 margin-left: 15px;
196 cursor: pointer;
197 }
227 198
228 .right-menu-item { 199 .organization-item {
229 display: inline-block; 200 margin-right: 40px;
230 font-size: 18px; 201 margin-top: -40px !important;
231 color: #fff; 202 }
232 vertical-align: text-bottom;
233 203
234 &.hover-effect { 204 .item {
205 margin-right: 40px;
206 margin-top: -20px;
207 line-height: 18.4px;
235 cursor: pointer; 208 cursor: pointer;
236 transition: background 0.3s; 209 position: relative;
237 display: flex;
238 align-items: center;
239 210
240 &:hover { 211 .item-box {
241 background: rgba(0, 0, 0, 0.025); 212 position: absolute;
213 top: -5px;
214 left: 3px;
215 width: 100%;
216 min-width: 25px;
217 height: 25px;
218 cursor: pointer;
219 z-index: 100;
242 } 220 }
243 } 221 }
244 }
245 222
246 .avatar-wrapper { 223 &:focus {
247 position: relative; 224 outline: none;
248 display: flex; 225 }
249 height: 40px;
250 align-items: center;
251 226
252 .user-avatar { 227 .right-menu-item {
253 cursor: pointer; 228 display: inline-block;
254 width: 35px; 229 font-size: 18px;
255 height: 35px; 230 color: #fff;
256 border-radius: 50%; 231 vertical-align: text-bottom;
232
233 &.hover-effect {
234 cursor: pointer;
235 transition: background 0.3s;
236 display: flex;
237 align-items: center;
238
239 &:hover {
240 background: rgba(0, 0, 0, 0.025);
241 }
242 }
257 } 243 }
258 244
259 .el-icon-caret-bottom { 245 .avatar-wrapper {
260 cursor: pointer; 246 position: relative;
261 position: absolute; 247 display: flex;
262 right: -15px; 248 height: 40px;
263 top: 17px; 249 align-items: center;
264 font-size: 12px; 250 color: #ffffff;
251
252 .user-avatar {
253 cursor: pointer;
254 width: 35px;
255 height: 35px;
256 border-radius: 50%;
257 }
258
259 .el-icon-caret-bottom {
260 cursor: pointer;
261 position: absolute;
262 right: -15px;
263 top: 17px;
264 font-size: 12px;
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>
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
42 flex-wrap: wrap; 42 flex-wrap: wrap;
43 width: 100%; 43 width: 100%;
44 } 44 }
45 45
46 .title-batch { 46 .title-batch {
47 height: 70px; 47 height: 70px;
48 48
...@@ -182,6 +182,7 @@ ...@@ -182,6 +182,7 @@
182 182
183 ul { 183 ul {
184 @include flex; 184 @include flex;
185 padding-left: 0;
185 186
186 li { 187 li {
187 @include flex-center; 188 @include flex-center;
......
...@@ -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,180 +62,179 @@ ...@@ -62,180 +62,179 @@
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 { 74 mixins: [publicFlow],
75 mixins: [publicFlow], 75 components: {
76 components: { 76 NoticeBar,
77 NoticeBar,
78 },
79 data () {
80 return {
81 // 流程图
82 imgSrc: "",
83 // 折叠
84 isShowdrawer: true,
85 // 默认选中
86 activeIndex: "0",
87 //受理申请标识码
88 bsmSlsq: this.$route.query.bsmSlsq,
89 //当前流程所在环节
90 bestepid: this.$route.query.bestepid,
91 //顶部左侧按钮集合
92 leftButtonList: [],
93 //顶部右侧按钮集合
94 rightButtonList: [],
95 //左侧菜单数据集合
96 unitData: [],
97 //设置那个表单选中
98 tabName: "",
99 //表单集合
100 tabList: [],
101 //选择加载哪一个组件
102 componentTag: "",
103 //设置表单组件是否刷选值
104 fresh: 10,
105 //设置表单传递数据
106 currentSelectProps: {},
107 //是否开启材料分屏
108 splitScreen: false,
109 //材料分屏表单
110 clxxForm: "",
111 //材料信息选择卡索引
112 clxxIndex: "",
113 //材料信息选项卡对象
114 clxxTab: {},
115 };
116 },
117 mounted () {
118 this.loadBdcdylist();
119 this.flowInitParam();
120 },
121
122 methods: {
123 //加载流程初始参数
124 flowInitParam () {
125 var formdata = new FormData();
126 formdata.append("bsmSlsq", this.bsmSlsq);
127 formdata.append("bestepid", this.bestepid);
128 formdata.append("type", "READ_ONLY");
129 stepExpandInfo(formdata).then((res) => {
130 if (res.code === 200) {
131 this.leftButtonList = res.result.button;
132 this.rightButtonList = res.result.operation;
133 }
134 });
135 }, 77 },
136 //流程环节操作按钮 78 data () {
137 operation (item) { 79 return {
138 //按钮 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 80 // 流程图
139 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 81 imgSrc: "",
140 switch (item.value) { 82 // 折叠
141 case "B1": 83 isShowdrawer: true,
142 getWorkFlowImage(this.bsmSlsq, this.$route.query.bestepid).then( 84 // 默认选中
143 (res) => { 85 activeIndex: "0",
144 let { result } = res; 86 //受理申请标识码
145 this.$popupDialog("流程图", "workflow/components/processViewer", { 87 bsmSlsq: this.$route.query.bsmSlsq,
146 xml: result.xml, 88 //当前流程所在环节
147 finishedInfo: { 89 bestepid: this.$route.query.bestepid,
148 finishedTaskSet: result.finishedTaskSet, 90 //顶部左侧按钮集合
149 unfinishedTaskSet: result.unfinishedTaskSet, 91 leftButtonList: [],
150 rejectedTaskSet: result.rejectedTaskSet, 92 //顶部右侧按钮集合
151 finishedSequenceFlowSet: result.finishedSequenceFlowSet, 93 rightButtonList: [],
152 }, 94 //左侧菜单数据集合
153 allCommentList: result.historyTaskList, 95 unitData: [],
154 }, '70%', true); 96 //设置那个表单选中
155 } 97 tabName: "",
156 ); 98 //表单集合
157 break; 99 tabList: [],
158 case "B5": 100 //选择加载哪一个组件
159 this.zsylFlag = true; 101 componentTag: "",
160 break; 102 //设置表单组件是否刷选值
161 case "B2": //材料分屏按钮 103 fresh: 10,
162 this.splitScreen = this.splitScreen ? false : true; 104 //设置表单传递数据
163 this.$store.dispatch("app/settScreen", this.splitScreen); 105 currentSelectProps: {},
164 if (this.splitScreen) { 106 //是否开启材料分屏
165 //如果当前选项卡为材料信息内容,递减到上一个选项卡内容 107 splitScreen: false,
166 if (this.tabName == this.clxxTab.value) { 108 //材料分屏表单
167 this.tabName = this.tabList[this.clxxIndex - 1].value; 109 clxxForm: "",
168 this.getFromRouter(this.tabList[this.clxxIndex - 1].value); 110 //材料信息选择卡索引
169 } 111 clxxIndex: "",
170 this.tabList.splice(this.clxxIndex, 1); 112 //材料信息选项卡对象
171 } else { 113 clxxTab: {},
172 this.tabList.splice(this.clxxIndex, 1, this.clxxTab); 114 };
173 } 115 },
174 break; 116 mounted () {
175 case "signout": 117 this.loadBdcdylist();
176 window.close(); 118 this.flowInitParam();
177 break;
178 case "rm":
179 this.del()
180 window.close();
181 }
182 }, 119 },
183 del () { 120
184 let formdata = new FormData(); 121 methods: {
185 formdata.append("bsmSlsq", this.bsmSlsq); 122 //加载流程初始参数
186 this.$confirm("确定要删除吗, 是否继续?", "提示", { 123 flowInitParam () {
187 confirmButtonText: "确定", 124 var formdata = new FormData();
188 cancelButtonText: "取消", 125 formdata.append("bsmSlsq", this.bsmSlsq);
189 type: "warning", 126 formdata.append("bestepid", this.bestepid);
190 }) 127 formdata.append("type", "READ_ONLY");
191 .then(() => { 128 stepExpandInfo(formdata).then((res) => {
192 deleteFlow(formdata).then((res) => { 129 if (res.code === 200) {
193 if (res.code === 200) { 130 this.leftButtonList = res.result.button;
194 this.handleDel(); 131 this.rightButtonList = res.result.operation;
195 this.$message({ 132 }
196 type: "success", 133 });
197 message: "删除成功!", 134 },
198 }); 135 //流程环节操作按钮
199 this.queryClick(); 136 operation (item) {
137 //按钮 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书
138 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout
139 switch (item.value) {
140 case "B1":
141 getWorkFlowImage(this.bsmSlsq, this.$route.query.bestepid).then(
142 (res) => {
143 let { result } = res;
144 this.$popupDialog("流程图", "workflow/components/processViewer", {
145 xml: result.xml,
146 finishedInfo: {
147 finishedTaskSet: result.finishedTaskSet,
148 unfinishedTaskSet: result.unfinishedTaskSet,
149 rejectedTaskSet: result.rejectedTaskSet,
150 finishedSequenceFlowSet: result.finishedSequenceFlowSet,
151 },
152 allCommentList: result.historyTaskList,
153 }, '80%', true);
154 }
155 );
156 break;
157 case "B5":
158 this.zsylFlag = true;
159 break;
160 case "B2": //材料分屏按钮
161 this.splitScreen = this.splitScreen ? false : true;
162 this.$store.dispatch("app/settScreen", this.splitScreen);
163 if (this.splitScreen) {
164 //如果当前选项卡为材料信息内容,递减到上一个选项卡内容
165 if (this.tabName == this.clxxTab.value) {
166 this.tabName = this.tabList[this.clxxIndex - 1].value;
167 this.getFromRouter(this.tabList[this.clxxIndex - 1].value);
168 }
169 this.tabList.splice(this.clxxIndex, 1);
200 } else { 170 } else {
201 this.$message.error(res.message); 171 this.tabList.splice(this.clxxIndex, 1, this.clxxTab);
202 } 172 }
203 }); 173 break;
174 case "signout":
175 window.close();
176 break;
177 case "rm":
178 this.del()
179 window.close();
180 }
181 },
182 del () {
183 let formdata = new FormData();
184 formdata.append("bsmSlsq", this.bsmSlsq);
185 this.$confirm("确定要删除吗, 是否继续?", "提示", {
186 confirmButtonText: "确定",
187 cancelButtonText: "取消",
188 type: "warning",
204 }) 189 })
205 .catch(() => { 190 .then(() => {
206 this.$message({ 191 deleteFlow(formdata).then((res) => {
207 type: "info", 192 if (res.code === 200) {
208 message: "已取消删除", 193 this.handleDel();
194 this.$message({
195 type: "success",
196 message: "删除成功!",
197 });
198 this.queryClick();
199 } else {
200 this.$message.error(res.message);
201 }
202 });
203 })
204 .catch(() => {
205 this.$message({
206 type: "info",
207 message: "已取消删除",
208 });
209 }); 209 });
210 },
211 //读取申请单元信息
212 loadBdcdylist () {
213 var formdata = new FormData();
214 formdata.append("bsmSlsq", this.bsmSlsq);
215 formdata.append("bestepid", this.bestepid);
216 leftMenu(formdata).then((res) => {
217 if (res.code === 200) {
218 this.unitData = res.result;
219 this.currentSelectProps = res.result[0];
220 this.unitClick(0);
221 }
210 }); 222 });
223 },
224 //申请单元点击事件
225 unitClick (index) {
226 this.currentSelectProps = this.unitData[index];
227 this.currentSelectProps.type = "ONLY_READ";
228 getStepFormInfo(this.currentSelectProps).then((res) => {
229 if (res.code === 200) {
230 this.fresh++;
231 //获取单元对应的所有表单信息
232 this.tabList = res.result;
233 //默认加载第一个表单信息
234 this.tabName = res.result[0].value;
235 }
236 });
237 },
211 }, 238 },
212 //读取申请单元信息 239 };
213 loadBdcdylist () {
214 var formdata = new FormData();
215 formdata.append("bsmSlsq", this.bsmSlsq);
216 formdata.append("bestepid", this.bestepid);
217 leftMenu(formdata).then((res) => {
218 if (res.code === 200) {
219 this.unitData = res.result;
220 this.currentSelectProps = res.result[0];
221 this.unitClick(0);
222 }
223 });
224 },
225 //申请单元点击事件
226 unitClick (index) {
227 this.currentSelectProps = this.unitData[index];
228 this.currentSelectProps.type = "ONLY_READ";
229 getStepFormInfo(this.currentSelectProps).then((res) => {
230 if (res.code === 200) {
231 this.fresh++;
232 //获取单元对应的所有表单信息
233 this.tabList = res.result;
234 //默认加载第一个表单信息
235 this.tabName = res.result[0].value;
236 }
237 });
238 },
239 },
240 };
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>
...@@ -42,26 +42,26 @@ ...@@ -42,26 +42,26 @@
42 </el-form-item> 42 </el-form-item>
43 </el-col> 43 </el-col>
44 </el-row> 44 </el-row>
45 <el-row> 45 <el-row>
46 <el-col :span="5"> 46 <el-col :span="5">
47 <el-form-item label="不动产单元号"> 47 <el-form-item label="不动产单元号">
48 <el-input placeholder="请输入不动产单元号" v-model="queryForm.bdcdyh" clearable class="width100"> 48 <el-input placeholder="请输入不动产单元号" v-model="queryForm.bdcdyh" clearable class="width100">
49 </el-input> 49 </el-input>
50 </el-form-item> 50 </el-form-item>
51 </el-col> 51 </el-col>
52 <el-col :span="5"> 52 <el-col :span="5">
53 <el-form-item label="申请人"> 53 <el-form-item label="申请人">
54 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.sqrmc" clearable class="width100"> 54 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.sqrmc" clearable class="width100">
55 </el-input> 55 </el-input>
56 </el-form-item> 56 </el-form-item>
57 </el-col> 57 </el-col>
58 <el-col :span="5"> 58 <el-col :span="5">
59 <el-form-item label="申请人证件号"> 59 <el-form-item label="申请人证件号">
60 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.sqrzjhm" clearable class="width100"> 60 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.sqrzjhm" clearable class="width100">
61 </el-input> 61 </el-input>
62 </el-form-item> 62 </el-form-item>
63 </el-col> 63 </el-col>
64 <el-col :span="5"> 64 <el-col :span="5">
65 <el-form-item label="坐落"> 65 <el-form-item label="坐落">
66 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.zl" clearable class="width100"> 66 <el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.zl" clearable class="width100">
67 </el-input> 67 </el-input>
...@@ -140,7 +140,7 @@ export default { ...@@ -140,7 +140,7 @@ export default {
140 // }) 140 // })
141 // this.pageData.total = total; 141 // this.pageData.total = total;
142 // this.tableData.data = records 142 // this.tableData.data = records
143 this.tableData.total = total ? total : 0; 143 this.tableData.total = total ? total : 0;
144 this.tableData.data = records ? records : []; 144 this.tableData.data = records ? records : [];
145 } 145 }
146 }) 146 })
......
...@@ -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",
......