代办箱工作区
Showing
5 changed files
with
438 additions
and
5 deletions
src/api/dbx.js
0 → 100644
... | @@ -93,6 +93,12 @@ const constantRoutes = [ | ... | @@ -93,6 +93,12 @@ const constantRoutes = [ |
93 | name: "系统管理", | 93 | name: "系统管理", |
94 | code: "0-7", | 94 | code: "0-7", |
95 | component: () => import("@/views/manage/index"), | 95 | component: () => import("@/views/manage/index"), |
96 | }, | ||
97 | { | ||
98 | path: "/dbx", | ||
99 | name: "代办箱", | ||
100 | code: "2-1", | ||
101 | component: () => import("@/views/dbx/index"), | ||
96 | } | 102 | } |
97 | ], | 103 | ], |
98 | }, | 104 | }, | ... | ... |
src/views/dbx/dbxinfo/index.vue
0 → 100644
1 | <template> | ||
2 | <el-tabs v-model="activeName" type="card"> | ||
3 | <div class="main"> | ||
4 | <!-- <p class="tips">查询条件</p> --> | ||
5 | <SearchHead @getSearchCondition="geQuerytData" :type="type"></SearchHead> | ||
6 | <!-- <p class="tips">查询列表</p> --> | ||
7 | <div class="dataGrid" ref="dataGrid"> | ||
8 | <el-table | ||
9 | :data="tableData" | ||
10 | :height="tableHeight" | ||
11 | :row-class-name="tableRowClassName" | ||
12 | @row-dblclick="doubleClick" | ||
13 | > | ||
14 | <el-table-column type="index" width="80" align="center" label="序号"> | ||
15 | </el-table-column> | ||
16 | <el-table-column prop="bdcdyh" align="left" label="不动产单元号"> | ||
17 | </el-table-column> | ||
18 | <el-table-column prop="xmmc" align="left" width="150" label="项目名称"> | ||
19 | </el-table-column> | ||
20 | <el-table-column prop="bdcqzh" align="left" label="不动产权证号"> | ||
21 | </el-table-column> | ||
22 | <el-table-column prop="dylx" align="left" width="100" label="类型"> | ||
23 | <template slot-scope="scope"> | ||
24 | {{scope.row.dylx | bdcLxFilter}} | ||
25 | </template> | ||
26 | </el-table-column> | ||
27 | <el-table-column prop="qlrmc" align="left" width="120" label="权利人"> | ||
28 | </el-table-column> | ||
29 | <el-table-column prop="zl" align="left" label="坐落"></el-table-column> | ||
30 | <el-table-column prop="addtime" align="left" width="120" label="转入时间"> | ||
31 | <template slot-scope="scope"> | ||
32 | {{scope.row.addtime | timeFilter}} | ||
33 | </template> | ||
34 | </el-table-column> | ||
35 | <!-- <el-table-column prop="cjr" align="left" width="120" label="创建人"> | ||
36 | </el-table-column> --> | ||
37 | <el-table-column label="操作" align="center" width="100"> | ||
38 | <template slot-scope="scope"> | ||
39 | <el-tooltip class="item" effect="light" content="查看" placement="top"> | ||
40 | <i class="iconfont iconbanli iconfontEdit" @click="handleClick(scope.row)" style="padding:0 10px"></i> | ||
41 | </el-tooltip> | ||
42 | <el-tooltip class="item" effect="light" content="定位" placement="top"> | ||
43 | <i class="iconfont icondingwei iconfontEdit" @click="postionToMap(scope.row)"></i> | ||
44 | </el-tooltip> | ||
45 | </template> | ||
46 | </el-table-column> | ||
47 | </el-table> | ||
48 | <div class="pagination"> | ||
49 | <el-pagination background layout="prev, pager, next,total" :total="total" | ||
50 | :current-page="pageNo" :page-size="pageSize" @current-change="handleCurrentChange"> | ||
51 | </el-pagination> | ||
52 | </div> | ||
53 | |||
54 | </div> | ||
55 | </div> | ||
56 | </el-tabs> | ||
57 | </template> | ||
58 | |||
59 | <script> | ||
60 | import SearchHead from "@components/searchHead/searchHead"; | ||
61 | import {getDbxList} from "@api/dbx"; | ||
62 | import panelSy from "@/views/panel/index" | ||
63 | |||
64 | export default { | ||
65 | name: "", | ||
66 | inject:['getRightTree','getTreeByBsm'], | ||
67 | components: {SearchHead,panelSy}, | ||
68 | props: {}, | ||
69 | data() { | ||
70 | return { | ||
71 | activeName:'zhcx', | ||
72 | type:'all', | ||
73 | total: 0, | ||
74 | pageNo: 1, | ||
75 | pageSize: 15, | ||
76 | tableData: [], | ||
77 | tableHeight: 0, | ||
78 | queryData: {}, | ||
79 | }; | ||
80 | }, | ||
81 | created() { | ||
82 | }, | ||
83 | mounted() { | ||
84 | this.queryData.pageSize=this.pageSize; | ||
85 | this.queryData.pageNo=this.pageNo; | ||
86 | this.getData(this.queryData); | ||
87 | this.$nextTick(()=>{ | ||
88 | this.tableHeight = this.$refs.dataGrid.offsetHeight - 68; | ||
89 | }) | ||
90 | }, | ||
91 | methods: { | ||
92 | onSubmit() { | ||
93 | }, | ||
94 | doubleClick(row, column, event){ | ||
95 | this.handleClick(row); | ||
96 | }, | ||
97 | tableRowClassName({row, rowIndex}) { | ||
98 | if (rowIndex % 2 !== 0) { | ||
99 | return "even-row"; | ||
100 | } else { | ||
101 | return ""; | ||
102 | } | ||
103 | }, | ||
104 | handleCurrentChange(val) { | ||
105 | this.pageNo = val; | ||
106 | this.queryData.pageNo = val; | ||
107 | this.getData(this.queryData); | ||
108 | }, | ||
109 | getData(data) { | ||
110 | data['type'] = this.type | ||
111 | getDbxList(data).then(res => { | ||
112 | this.tableData = res.result.records | ||
113 | this.total = res.result.total | ||
114 | }); | ||
115 | }, | ||
116 | //获取子组件点击查询触发的事件 | ||
117 | geQuerytData(obj) { | ||
118 | this.queryData = obj | ||
119 | //将obj作为参数调用接口查询表格数据 | ||
120 | this.queryData['pageSize'] = this.pageSize | ||
121 | this.pageNo = 1 | ||
122 | this.queryData['pageNo'] = 1 | ||
123 | this.getData(this.queryData) | ||
124 | }, | ||
125 | //点击办理 | ||
126 | handleClick(row) { | ||
127 | let path = ""; | ||
128 | this.$store.state.oldZdbsm = ''; | ||
129 | switch (row.dylx) { | ||
130 | case "zrz": | ||
131 | this.$store.state.zrzbsm = row.glbsm; | ||
132 | this.getTreeByBsm(row.glbsm,row.dylx,'0,1,2'); | ||
133 | path = "/zrz"; | ||
134 | break; | ||
135 | case "zd": | ||
136 | this.$store.state.zdbsm = row.glbsm; | ||
137 | this.getRightTree(row.glbsm,'0,1,2'); | ||
138 | path = "/zd"; | ||
139 | break; | ||
140 | case "dz": | ||
141 | this.$store.state.dzbsm = row.glbsm; | ||
142 | this.getTreeByBsm(row.glbsm,row.dylx,'0,1,2'); | ||
143 | path = "/dz"; | ||
144 | break; | ||
145 | case "h": | ||
146 | case "h0": | ||
147 | case "h1": | ||
148 | path="/h"; | ||
149 | this.$store.state.hbsm=row.glbsm | ||
150 | this.getTreeByBsm(row.glbsm,'h','0,1,2'); | ||
151 | break; | ||
152 | case "gzw": | ||
153 | this.$store.state.gzwbsm = row.glbsm; | ||
154 | this.getTreeByBsm(row.glbsm,"gzw",'0,1,2'); | ||
155 | path = "/gzw"; | ||
156 | break; | ||
157 | default: | ||
158 | break; | ||
159 | } | ||
160 | this.$router.push({ | ||
161 | path: path, | ||
162 | query: { | ||
163 | bsm: row.glbsm, | ||
164 | source: 2, | ||
165 | auth: '0,1,2' | ||
166 | } | ||
167 | }); | ||
168 | }, | ||
169 | //定位 | ||
170 | //图形定位 | ||
171 | postionToMap(rowData){ | ||
172 | if(rowData.dylx == "zrz" || rowData.dylx == "zd"){ | ||
173 | var curretRouterInfo = { | ||
174 | path:this.$route.path, | ||
175 | query:this.$route.query | ||
176 | } | ||
177 | sessionStorage.setItem("curretRouterInfo",JSON.stringify(curretRouterInfo)); | ||
178 | this.$router.push({ | ||
179 | path: "/viewMap", | ||
180 | query: { | ||
181 | bsm: rowData.glbsm, | ||
182 | type: rowData.dylx | ||
183 | } | ||
184 | }); | ||
185 | } | ||
186 | } | ||
187 | }, | ||
188 | computed: {}, | ||
189 | watch: {}, | ||
190 | }; | ||
191 | </script> | ||
192 | <style scoped lang="less"> | ||
193 | .el-tabs{ | ||
194 | height: calc(100% - 50px); | ||
195 | /deep/.el-tabs__content{ | ||
196 | height: 100%; | ||
197 | /deep/.el-tab-pane{ | ||
198 | height: 100%; | ||
199 | } | ||
200 | background: #eaedf5; | ||
201 | padding: 0; | ||
202 | } | ||
203 | /deep/ .el-tabs__item { | ||
204 | height: 48px; | ||
205 | } | ||
206 | /deep/ .el-tabs__header{ | ||
207 | background-color: #ffffff; | ||
208 | margin: 0; | ||
209 | } | ||
210 | .main { | ||
211 | width: 100%; | ||
212 | height: 100%; | ||
213 | box-sizing: border-box; | ||
214 | padding: 0 18px 0 0; | ||
215 | display: flex; | ||
216 | flex-direction: column; | ||
217 | background-color: #EAEDF5; | ||
218 | .tips{ | ||
219 | color: #9B9B9B; | ||
220 | margin-left: 2px; | ||
221 | margin-bottom: 10px; | ||
222 | } | ||
223 | .demo-form-inline { | ||
224 | margin-top: 18px; | ||
225 | .moreSearchBtn { | ||
226 | background-color: #1ad6e1; | ||
227 | border-color: #1ad6e1; | ||
228 | } | ||
229 | .moreSearchBtn:focus, | ||
230 | .moreSearchBtn:hover { | ||
231 | background-color: rgba(28, 200, 229, 0.6); | ||
232 | } | ||
233 | } | ||
234 | .dataGrid { | ||
235 | flex: 1; | ||
236 | .pagination { | ||
237 | padding: 18px 0; | ||
238 | } | ||
239 | } | ||
240 | .hbjDialog{ | ||
241 | /deep/ .el-dialog{ | ||
242 | margin-top: 10vh!important; | ||
243 | } | ||
244 | } | ||
245 | .btnGroup{ | ||
246 | margin: 20px auto 0; | ||
247 | width: 230px; | ||
248 | } | ||
249 | } | ||
250 | } | ||
251 | </style> |
src/views/dbx/index.vue
0 → 100644
1 | <template> | ||
2 | <el-tabs v-model="activeName" type="card" @tab-remove="removeTab"> | ||
3 | <!-- <el-tab-pane label="首页" name="sy" ref="sy"><panelSy></panelSy></el-tab-pane>--> | ||
4 | <el-tab-pane label="待办箱" name="dbx"><dbxInfo></dbxInfo></el-tab-pane> | ||
5 | <el-tab-pane | ||
6 | v-for="(item, index) in editableTabs" | ||
7 | :key="item.name" | ||
8 | :label="item.title" | ||
9 | :name="item.name" | ||
10 | > | ||
11 | {{item.content}} | ||
12 | </el-tab-pane> | ||
13 | </el-tabs> | ||
14 | </template> | ||
15 | |||
16 | <script> | ||
17 | import SearchHead from "@components/searchHead/searchHead"; | ||
18 | import panelSy from "@/views/panel/index" | ||
19 | import dbxInfo from "@/views/dbx/dbxinfo/index" | ||
20 | |||
21 | export default { | ||
22 | name: "", | ||
23 | inject:['getRightTree','getTreeByBsm'], | ||
24 | components: {SearchHead,panelSy,dbxInfo}, | ||
25 | props: {}, | ||
26 | data() { | ||
27 | return { | ||
28 | activeName:'dbx', | ||
29 | type:'all', | ||
30 | total: 0, | ||
31 | pageNo: 1, | ||
32 | pageSize: 15, | ||
33 | tableData: [], | ||
34 | tableHeight: 0, | ||
35 | queryData: {}, | ||
36 | editableTabs: [ | ||
37 | // { | ||
38 | // title: 'Tab 1', | ||
39 | // name: '1', | ||
40 | // content: 'Tab 1 content' | ||
41 | // } | ||
42 | ], | ||
43 | }; | ||
44 | }, | ||
45 | created() { | ||
46 | }, | ||
47 | mounted() { | ||
48 | this.queryData.pageSize=this.pageSize; | ||
49 | this.queryData.pageNo=this.pageNo; | ||
50 | }, | ||
51 | methods: { | ||
52 | changeActiveName(data){ | ||
53 | this.activeName = data; | ||
54 | }, | ||
55 | removeTab(targetName) { | ||
56 | let tabs = this.editableTabs; | ||
57 | let activeName = this.activeName; | ||
58 | if (activeName === targetName) { | ||
59 | tabs.forEach((tab, index) => { | ||
60 | if (tab.name === targetName) { | ||
61 | let nextTab = tabs[index + 1] || tabs[index - 1]; | ||
62 | if (nextTab) { | ||
63 | activeName = nextTab.name; | ||
64 | } | ||
65 | } | ||
66 | }); | ||
67 | } | ||
68 | |||
69 | this.activeName = activeName; | ||
70 | this.editableTabs = tabs.filter(tab => tab.name !== targetName); | ||
71 | }, | ||
72 | }, | ||
73 | computed: {}, | ||
74 | watch: {}, | ||
75 | }; | ||
76 | </script> | ||
77 | <style scoped lang="less"> | ||
78 | .el-tabs{ | ||
79 | height: calc(100% - 50px); | ||
80 | /deep/.el-tabs__content{ | ||
81 | height: 100%; | ||
82 | /deep/.el-tab-pane{ | ||
83 | height: 100%; | ||
84 | } | ||
85 | background: #eaedf5; | ||
86 | padding: 0; | ||
87 | } | ||
88 | /deep/ .el-tabs__item { | ||
89 | height: 48px; | ||
90 | } | ||
91 | /deep/ .el-tabs__header{ | ||
92 | background-color: #ffffff; | ||
93 | margin: 0; | ||
94 | border-top: 1px solid #E4E7ED; | ||
95 | } | ||
96 | .main { | ||
97 | width: 100%; | ||
98 | height: 100%; | ||
99 | box-sizing: border-box; | ||
100 | padding: 0 18px 0 0; | ||
101 | display: flex; | ||
102 | flex-direction: column; | ||
103 | background-color: #EAEDF5; | ||
104 | .tips{ | ||
105 | color: #9B9B9B; | ||
106 | margin-left: 2px; | ||
107 | margin-bottom: 10px; | ||
108 | } | ||
109 | .demo-form-inline { | ||
110 | margin-top: 18px; | ||
111 | .moreSearchBtn { | ||
112 | background-color: #1ad6e1; | ||
113 | border-color: #1ad6e1; | ||
114 | } | ||
115 | .moreSearchBtn:focus, | ||
116 | .moreSearchBtn:hover { | ||
117 | background-color: rgba(28, 200, 229, 0.6); | ||
118 | } | ||
119 | } | ||
120 | .dataGrid { | ||
121 | flex: 1; | ||
122 | .pagination { | ||
123 | padding: 18px 0; | ||
124 | } | ||
125 | } | ||
126 | .hbjDialog{ | ||
127 | /deep/ .el-dialog{ | ||
128 | margin-top: 10vh!important; | ||
129 | } | ||
130 | } | ||
131 | .btnGroup{ | ||
132 | margin: 20px auto 0; | ||
133 | width: 230px; | ||
134 | } | ||
135 | } | ||
136 | } | ||
137 | </style> |
... | @@ -10,7 +10,7 @@ | ... | @@ -10,7 +10,7 @@ |
10 | class="box" | 10 | class="box" |
11 | v-for="(item, index) in workList" | 11 | v-for="(item, index) in workList" |
12 | :key="index" | 12 | :key="index" |
13 | @click="handleSelect" | 13 | @click="handleSelect(item)" |
14 | > | 14 | > |
15 | <el-badge :value="item.count" :max="99" class="item"> | 15 | <el-badge :value="item.count" :max="99" class="item"> |
16 | <img :src="item.img" alt="" /> | 16 | <img :src="item.img" alt="" /> |
... | @@ -87,12 +87,14 @@ | ... | @@ -87,12 +87,14 @@ |
87 | </template> | 87 | </template> |
88 | 88 | ||
89 | <script> | 89 | <script> |
90 | import {getDbxList} from "@api/dbx"; | ||
90 | export default { | 91 | export default { |
92 | components:{}, | ||
91 | data() { | 93 | data() { |
92 | return { | 94 | return { |
93 | workList: [ | 95 | workList: [ |
94 | { name: "待办箱", img: require("@assets/images/dbx.png"),count:10 }, | 96 | { name: "待办箱", img: require("@assets/images/dbx.png"),count:0,path:'/dbx' }, |
95 | { name: "退件箱", img: require("@assets/images/tjx.png"),count:3 }, | 97 | { name: "退件箱", img: require("@assets/images/tjx.png"),count:0 }, |
96 | ], | 98 | ], |
97 | list: [ | 99 | list: [ |
98 | { name: "宗地分割", img: require("@assets/images/zdfg.png") }, | 100 | { name: "宗地分割", img: require("@assets/images/zdfg.png") }, |
... | @@ -123,15 +125,26 @@ export default { | ... | @@ -123,15 +125,26 @@ export default { |
123 | this.$nextTick(() => { | 125 | this.$nextTick(() => { |
124 | this.tableHeight = this.$refs.notice.offsetHeight - 54; | 126 | this.tableHeight = this.$refs.notice.offsetHeight - 54; |
125 | }); | 127 | }); |
128 | this.getDbxCount(); | ||
126 | }, | 129 | }, |
127 | methods: { | 130 | methods: { |
128 | download(row,column,event){ | 131 | download(row,column,event){ |
129 | window.open(row.url) | 132 | window.open(row.url) |
130 | }, | 133 | }, |
131 | handleSelect() { | 134 | handleSelect(item) { |
135 | console.log(this.$route.path+":this.$route.params.path") | ||
132 | //非编辑状态才可以点击 | 136 | //非编辑状态才可以点击 |
133 | if (!isEdit) { | 137 | if (!this.isEdit) { |
138 | if(this.$route.path === '/dbx'){ | ||
139 | this.$parent.changeActiveName("dbx"); | ||
134 | 140 | ||
141 | }else { | ||
142 | if(item.path){ | ||
143 | this.$router.push({ | ||
144 | path:'/dbx' | ||
145 | }) | ||
146 | } | ||
147 | } | ||
135 | } | 148 | } |
136 | }, | 149 | }, |
137 | tableRowClassName({ row, rowIndex }) { | 150 | tableRowClassName({ row, rowIndex }) { |
... | @@ -157,6 +170,21 @@ export default { | ... | @@ -157,6 +170,21 @@ export default { |
157 | }).catch(() => { | 170 | }).catch(() => { |
158 | 171 | ||
159 | }); | 172 | }); |
173 | }, | ||
174 | getDbxCount(){ | ||
175 | let data = { | ||
176 | pageSize:15, | ||
177 | pageNo:1 | ||
178 | } | ||
179 | getDbxList(data).then((res)=>{ | ||
180 | if(res.code === 200){ | ||
181 | this.workList.forEach((item,index)=>{ | ||
182 | if(item.name === '待办箱'){ | ||
183 | item.count = res.result.total; | ||
184 | } | ||
185 | }) | ||
186 | } | ||
187 | }) | ||
160 | } | 188 | } |
161 | }, | 189 | }, |
162 | }; | 190 | }; | ... | ... |
-
Please register or sign in to post a comment