ae96d3ac by 田浩浩

修改登记簿相关组件

1 parent 5091d01f
...@@ -300,6 +300,7 @@ export default { ...@@ -300,6 +300,7 @@ export default {
300 height: 40px; 300 height: 40px;
301 padding: 4px; 301 padding: 4px;
302 font-size: 13px; 302 font-size: 13px;
303 width: 140px;
303 } 304 }
304 > tr:nth-child(odd) td { 305 > tr:nth-child(odd) td {
305 background: #f2f2f2; 306 background: #f2f2f2;
......
1 import filter from '@/utils/filter.js'
2
3 class data extends filter {
4 constructor() {
5 super()
6 }
7 columns() {
8 return {
9 title: "建设用地使用权、宅基地使用权登记信息",
10 columns: [
11 {
12 prop: "ssywh",
13 label: "上手业务号"
14 },
15 {
16 prop: "dah",
17 label: "档案号",
18 },
19 {
20 prop: "ywh",
21 label: "业务号",
22 },
23 {
24 prop: "bdcdyh",
25 label: "不动产单元号",
26 },
27 {
28 prop: "zl",
29 label: "坐落",
30 },
31 {
32 prop: "qlrlx",
33 label: "权利人类型",
34 },
35 {
36 prop: "qlrmc",
37 label: "权利人",
38 },
39 {
40 prop: "qlrzjzl",
41 label: "证件种类",
42 },
43 {
44 prop: "qlrzjhm",
45 label: "证件号",
46 },
47 {
48 prop: "gyfs",
49 label: "共有情况",
50 },
51 {
52 prop: "mj",
53 label: "使用权面积(m²)",
54 },
55 {
56 prop: "qlxz",
57 label: "权利性质",
58 },
59 {
60 prop: "ytmc",
61 label: "土地用途",
62 },
63 {
64 prop: "syqqzsj",
65 label: "使用权起止时间",
66 },
67 // {
68 // prop: "syqjssj",
69 // label: "使用权结束时间",
70 // },
71 // {
72 // prop: "tdsyqx",
73 // label: "土地使用期限",
74 // },
75 {
76 prop: "tdsyqx",
77 label: "土地使用期限",
78 },
79 {
80 prop: "qdjg",
81 label: "取得价格(万元)",
82 },
83 {
84 prop: "djyy",
85 label: "登记原因",
86 },
87 {
88 prop: "bdcqzh",
89 label: "不动产权证号",
90 },
91 {
92 prop: "djsj",
93 label: "登记时间",
94 },
95 {
96 prop: "dbr",
97 label: "登簿人",
98 },
99 {
100 prop: "fj",
101 label: "附记",
102 },
103 ]
104
105 }
106 }
107 }
108
109 let datas = new data()
110
111 export {
112 datas
113 }
...\ No newline at end of file ...\ No newline at end of file
1 <template>
2 <div class="djxxTable">
3 <div class="tableBox">
4 <div class="title">
5 {{ title }}
6 <div class="checkbox">
7 <el-checkbox-group v-model="checkList" @change="checkChange">
8 <el-checkbox label="临时"></el-checkbox>
9 <el-checkbox label="现势"></el-checkbox>
10 <el-checkbox label="历史"></el-checkbox>
11 </el-checkbox-group>
12 </div>
13 </div>
14 <div class="xxTableBox">
15 <table class="xxTable" :width="tableWidth">
16 <tr>
17 <th rowspan="3">业务类型</th>
18 </tr>
19 <!-- 第一行表头 -->
20 <tr class="one" id="">
21 <th
22 v-for="(item, index) in ths"
23 :key="index"
24 :class="[item.class, item.type == '临时' ? 'linshiIcon' : '']"
25 >
26 <div class="icon" v-if="item.type == '临时'">{{ item.type }}</div>
27 {{ item.type }}
28 </th>
29 </tr>
30 <!-- 第二行表头 -->
31 <tr class="two">
32 <th v-for="(item, index) in ths" :key="index" :class="item.class">
33 <p>{{ item.qllxmc }}</p>
34 <p>{{ item.djlxmc }}</p>
35 </th>
36 </tr>
37 <!-- 数据 -->
38 <tr v-for="(item, index) in columns" :key="index">
39 <td>
40 {{ item.label }}
41 </td>
42 <td
43 v-for="(item1, index1) in showTableData"
44 :key="index1"
45 :class="[
46 item1.qszt == '2' ? 'lishi' : '',
47 item1.qszt == '0' ? 'linshi' : '',
48 ]"
49 >
50 {{ item1[item.prop] }}
51 </td>
52 </tr>
53 </table>
54 </div>
55 </div>
56 </div>
57 </template>
58
59 <script>
60 import { mapGetters } from "vuex";
61 import { datas } from "./jsydsyqQlxx";
62 import { getJsydsyqList } from "@/api/zhcx.js";
63 export default {
64 name: "djxxTable",
65 props: {
66 showType: "",
67 },
68 data() {
69 return {
70 checkList: ["临时", "现势", "历史"],
71 tableWidth: 810,
72 type: datas.columns(),
73 tableData: [],
74 showTableData: [],
75 ths: [],
76 showThs: [],
77 columns: [],
78 title: "",
79 };
80 },
81 computed: {
82 ...mapGetters(["djbxx"]),
83 },
84 watch: {
85 showType: {
86 handler(newVlue) {
87 // 清空值
88 this.tableData = [];
89 this.ths = [];
90 this.columns = this.type[newVlue].columns;
91 this.title = this.type[newVlue].title;
92 this.checkList = ["临时", "现势", "历史"];
93 this.tableWidth = 810;
94 let detail;
95 if (newVlue === "JSYDSYQ") {
96 getJsydsyqList({
97 bdcdyid: "2b33851f4edfd468ceef4d68c370bd41",
98 qllx: "A03",
99 qszt: ["1"]
100 }).then((res) => {
101
102 if (res.code === 200) {
103 detail = res.result;
104 }
105 });
106 } else {
107 detail = this.djbxx.detail.qlxxs[newVlue];
108 }
109 detail.forEach((item) => {
110 this.tableData.push(item);
111 if (item.qszt == "0") {
112 this.ths.push({
113 type: "临时",
114 qllxmc: item.qllxmc,
115 djlxmc: item.djlxmc,
116 prop: "linshi",
117 class: "linshi",
118 });
119 } else if (item.qszt == "1") {
120 this.ths.push({
121 type: "现势",
122 qllxmc: item.qllxmc,
123 djlxmc: item.djlxmc,
124 prop: "xianshi",
125 class: "xianshi",
126 });
127 } else if (item.qszt == "2") {
128 this.ths.push({
129 type: "历史",
130 qllxmc: item.qllxmc,
131 djlxmc: item.djlxmc,
132 prop: "lishi",
133 class: "lishi",
134 });
135 }
136 });
137 this.showTableData = this.tableData;
138 this.showThs = this.ths;
139 let width = (this.tableData.length - 3) * 223 + this.tableWidth;
140 this.tableWidth = this.tableData.length > 3 ? width : 810;
141 },
142 immediate: true,
143 },
144 },
145 methods: {
146 checkChange() {
147 var checkKey = [];
148 this.ths = [];
149 this.tableWidth = 810;
150 this.checkList.forEach((item) => {
151 if (item == "临时") {
152 checkKey.push("0");
153 }
154 if (item == "现势") {
155 checkKey.push("1");
156 }
157 if (item == "历史") {
158 checkKey.push("2");
159 }
160 });
161 this.showTableData = this.tableData.filter((item) =>
162 checkKey.includes(item.qszt)
163 );
164 this.showTableData.forEach((item) => {
165 if (item.qszt == "0") {
166 this.ths.push({
167 type: "临时",
168 qllxmc: item.qllxmc,
169 djlxmc: item.djlxmc,
170 prop: "linshi",
171 class: "linshi",
172 });
173 } else if (item.qszt == "1") {
174 this.ths.push({
175 type: "现势",
176 qllxmc: item.qllxmc,
177 djlxmc: item.djlxmc,
178 prop: "xianshi",
179 class: "xianshi",
180 });
181 } else if (item.qszt == "2") {
182 this.ths.push({
183 type: "历史",
184 qllxmc: item.qllxmc,
185 djlxmc: item.djlxmc,
186 prop: "lishi",
187 class: "lishi",
188 });
189 }
190 });
191 let width = (this.showTableData.length - 3) * 223 + this.tableWidth;
192 this.tableWidth = this.showTableData.length > 3 ? width : 810;
193 },
194 },
195 };
196 </script>
197
198 <style lang="scss" scoped>
199 .djxxTable {
200 width: 100%;
201 height: 100%;
202 background: #fff;
203 overflow-y: scroll;
204 color: #333;
205
206 .tableBox {
207 width: 810px;
208 margin: 0 auto;
209 display: flex;
210 flex-wrap: wrap;
211
212 .title {
213 width: 100%;
214 font-family: "Arial Negreta", "Arial Normal", "Arial", sans-serif;
215 font-weight: 700;
216 font-size: 16px;
217 text-align: center;
218 background: #e9e9e9;
219 height: 62px;
220 line-height: 62px;
221 position: relative;
222 margin: 1px 0;
223 .checkbox {
224 position: absolute;
225 right: 20px;
226 bottom: -16px;
227 height: 62px;
228 }
229 }
230
231 .xxTableBox {
232 width: 810px;
233 overflow-x: scroll;
234 }
235
236 // .xxTable > tr th:not(:first-child) {
237 // width: 223px;
238 // }
239 .xxTable > tr:first-child th {
240 width: 140px;
241 }
242
243 .xxTable {
244 border-spacing: 1px;
245 tr > th {
246 background: #464c5b;
247 color: #fff;
248 font-size: 16px;
249 }
250 th.linshi,
251 th.xianshi {
252 background: #464c5b;
253 }
254 th.lishi {
255 background: rgba(70, 76, 91, 0.8);
256 }
257 .one th {
258 height: 25px;
259 font-size: 14px;
260 }
261
262 th.linshi {
263 color: #fe9400;
264 }
265 .two th {
266 height: 45px;
267
268 p:nth-child(2) {
269 font-size: 14px;
270 }
271 }
272 .linshiIcon {
273 position: relative;
274 }
275 .linshiIcon::after {
276 content: "";
277 display: block;
278 width: 0;
279 height: 0;
280 border-width: 0px 0px 45px 45px;
281 border-style: none solid solid;
282 border-color: transparent transparent #fe9400;
283 position: absolute;
284 top: 0px;
285 right: 3px;
286 transform: rotate(-90deg);
287 }
288 .icon {
289 position: absolute;
290 top: 8px;
291 right: 6px;
292 transform: rotate(45deg);
293 color: #fff;
294 font-size: 12px;
295 z-index: 10;
296 }
297
298 tr td {
299 text-align: center;
300 height: 40px;
301 padding: 4px;
302 font-size: 13px;
303 }
304 > tr:nth-child(odd) td {
305 background: #f2f2f2;
306 }
307 > tr:nth-child(even) td {
308 background: #f9f9f9;
309 }
310 td.linshi {
311 color: #fe9400;
312 }
313 tr > td.lishi {
314 color: #7f7f7f;
315 }
316 }
317 }
318 }
319 </style>