0a51ce55 by weimo934

Merge remote-tracking branch 'origin/master'

2 parents 0f35099c fe2bdbd0
...@@ -11,9 +11,18 @@ export function getLpbMenuTree (data) { ...@@ -11,9 +11,18 @@ export function getLpbMenuTree (data) {
11 }, 11 },
12 }) 12 })
13 } 13 }
14
15 /** 14 /**
16 * 新增幢单元接口信息 15 * 添加逻辑幢信息接口
16 */
17 export function insertLjzInfo (data) {
18 return request({
19 url: '/system/qjLjz/insertQjLjz',
20 method: 'post',
21 data:data
22 })
23 }
24 /**
25 * 添加幢单元接口信息
17 */ 26 */
18 export function insertZdyInfo (data) { 27 export function insertZdyInfo (data) {
19 return request({ 28 return request({
...@@ -21,4 +30,14 @@ export function insertZdyInfo (data) { ...@@ -21,4 +30,14 @@ export function insertZdyInfo (data) {
21 method: 'post', 30 method: 'post',
22 data:data 31 data:data
23 }) 32 })
33 }
34 /**
35 * 添加层户接口信息
36 */
37 export function insertChInfo (data) {
38 return request({
39 url: 'fw/lpb/insertQjCH',
40 method: 'post',
41 data:data
42 })
24 } 43 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -69,16 +69,6 @@ export function queryYzgy(id) { ...@@ -69,16 +69,6 @@ export function queryYzgy(id) {
69 params: {id} 69 params: {id}
70 }) 70 })
71 } 71 }
72 /**
73 * 新增逻辑幢信息接口
74 */
75 export function insertLjzInfo (data) {
76 return request({
77 url: '/system/qjLjz/insertQjLjz',
78 method: 'post',
79 data:data
80 })
81 }
82 72
83 /** 73 /**
84 * 新增逻辑幢信息接口 74 * 新增逻辑幢信息接口
......
1 .content_box { 1 .content_box {
2 padding: 18px; 2 padding: 0 0 18px;
3 padding-top: 0;
4 box-sizing: border-box; 3 box-sizing: border-box;
5 width: 100%; 4 width: 100%;
5
6 } 6 }
7 .el-table .success-row { 7 .el-table .success-row {
8 background:@tablebg; 8 background:@tablebg;
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
10 .main{ 10 .main{
11 width: 100%; 11 width: 100%;
12 height: 100%; 12 height: 100%;
13 box-sizing: border-box;
13 padding: 18px 18px 0!important; 14 padding: 18px 18px 0!important;
14 } 15 }
15 .pagination { 16 .pagination {
...@@ -48,4 +49,25 @@ ol, ul { list-style:none; } ...@@ -48,4 +49,25 @@ ol, ul { list-style:none; }
48 .requisite{ 49 .requisite{
49 font-style: normal; 50 font-style: normal;
50 color: red; 51 color: red;
52 }
53 // 滚动条样式
54 ::-webkit-scrollbar {
55 width: 6px;
56 }
57 ::-webkit-scrollbar {
58 height: 6px;
59 }
60 ::-webkit-scrollbar-thumb {
61 border-radius: 3px;
62 background: #cbcbcb;
63 }
64 ::-webkit-scrollbar-thumb {
65 border-radius: 3px;
66 background: #cbcbcb;
67 }
68 ::-webkit-scrollbar-track {
69 border-radius: 0;
70 }
71 ::-webkit-scrollbar-track {
72 border-radius: 0;
51 } 73 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -84,23 +84,11 @@ const constantRoutes = [ ...@@ -84,23 +84,11 @@ const constantRoutes = [
84 component: () => import("@/views/systemZD/index"), 84 component: () => import("@/views/systemZD/index"),
85 }, 85 },
86 { 86 {
87 path: "/ljz",
88 name: "逻辑幢",
89 code: "1-6",
90 component: () => import("@/views/systemZRZ/ljz/index"),
91 },
92 {
93 path: "/c", 87 path: "/c",
94 name: "层", 88 name: "层",
95 code: "1-7", 89 code: "1-7",
96 component: () => import("@/views/systemZRZ/c/index"), 90 component: () => import("@/views/systemZRZ/c/index"),
97 }, 91 },
98 {
99 path: "/zdy",
100 name: "幢单元",
101 code: "1-8",
102 component: () => import("@/views/systemZRZ/lpb/zdy/index"),
103 },
104 ], 92 ],
105 }, 93 },
106 ]; 94 ];
......
...@@ -39,7 +39,8 @@ const store = new Vuex.Store({ ...@@ -39,7 +39,8 @@ const store = new Vuex.Store({
39 zrzbsm: '', 39 zrzbsm: '',
40 zjlxList: [], 40 zjlxList: [],
41 gyfsList: [], 41 gyfsList: [],
42 hbsm:'' 42 hbsm:'',
43 contentWidth:'' //内容区域宽度
43 }, 44 },
44 modules: { 45 modules: {
45 user, 46 user,
......
...@@ -109,7 +109,6 @@ ...@@ -109,7 +109,6 @@
109 }, 109 },
110 //点击办理 110 //点击办理
111 handleClick(row) { 111 handleClick(row) {
112 debugger;
113 console.log('fwsxbg'); 112 console.log('fwsxbg');
114 console.log(row); 113 console.log(row);
115 var bsm = row.glbsm; 114 var bsm = row.glbsm;
......
...@@ -149,7 +149,7 @@ export default { ...@@ -149,7 +149,7 @@ export default {
149 } 149 }
150 .notice { 150 .notice {
151 flex: auto; 151 flex: auto;
152 padding: 0 18px; 152 padding: 0;
153 box-sizing: border-box; 153 box-sizing: border-box;
154 154
155 .el-card__body { 155 .el-card__body {
......
1 <template> 1 <template>
2 <div class="content_box"> 2 <div ref="lpb" class="content_box">
3 <el-tabs v-model="activeName" @tab-click="handleClick"> 3 <el-tabs v-model="activeName" @tab-click="handleClick">
4 <el-tab-pane label="自然幢信息" name="zrzxx"><zrzxx></zrzxx></el-tab-pane> 4 <el-tab-pane label="自然幢信息" name="zrzxx"><zrzxx></zrzxx></el-tab-pane>
5 <el-tab-pane label="业主共有" name="yzgy"><yzgy></yzgy></el-tab-pane> 5 <el-tab-pane label="业主共有" name="yzgy"><yzgy></yzgy></el-tab-pane>
...@@ -33,13 +33,17 @@ export default { ...@@ -33,13 +33,17 @@ export default {
33 }, 33 },
34 }, 34 },
35 created() {}, 35 created() {},
36 mounted() {}, 36 mounted() {
37 this.$store.state.contentWidth = this.$refs.lpb.offsetWidth - 40;
38 },
37 computed: {}, 39 computed: {},
38 watch: {}, 40 watch: {},
39 }; 41 };
40 </script> 42 </script>
41 <style scoped lang="less"> 43 <style scoped lang="less">
42 .content_box{ 44 .content_box{
45 box-sizing: border-box;
46 padding: 0 20px;
43 .el-tabs{ 47 .el-tabs{
44 width: 100%; 48 width: 100%;
45 height: 100%; 49 height: 100%;
......
1 <template>
2 <div class="h content-form">
3 <el-form ref="form" :model="form" label-width="160px">
4 <table border="1" width="100%" cellspacing="0" cellpadding="0" class="hTable">
5 <tbody>
6 <tr height="30">
7 <td colspan="12" align="center" ><font size="4">逻辑幢基本信息</font></td>
8 </tr>
9 <tr height="30">
10 <td colspan="2" align="center" >逻辑幢号</td>
11 <td colspan="4" >
12 <el-input v-model="form.ljzh"></el-input>
13 </td>
14 <td colspan="2" align="center" >自然幢号</td>
15 <td colspan="4" >
16 <el-input v-model="form.zrzh"></el-input>
17 </td>
18 </tr>
19 <tr height="30">
20 <td colspan="2" align="center" >逻辑幢名称</td>
21 <td colspan="4" >
22 <el-input v-model="form.ljzmc"></el-input>
23 </td>
24 <td colspan="2" align="center" >不动产单元号</td>
25 <td colspan="4" >
26 <el-input v-model="form.bdcdyh" style="width: 70%"></el-input>
27 <el-button @click.prevent="" size="mini" type="primary" style="width:25%;margin-left:3%">生成</el-button>
28 </td>
29 </tr>
30
31 <tr height="30">
32 <td colspan="2" align="center" >门牌号</td>
33 <td colspan="4" >
34 <el-input v-model="form.mph"></el-input>
35 </td>
36 <td colspan="2" align="center" >竣工日期</td>
37 <td colspan="4" >
38 <el-date-picker
39 v-model="form.jgrq"
40 type="date"
41 value-format="yyyy-MM-dd"
42 placeholder="选择日期">
43 </el-date-picker>
44 </td>
45 </tr>
46
47 <tr height="30">
48 <td colspan="2" align="center" >预测建筑面积(㎡)</td>
49 <td colspan="4" >
50 <el-input v-model="form.ycjzmj"></el-input>
51 </td>
52 <td colspan="2" align="center" >实测建筑面积(㎡)</td>
53 <td colspan="4" >
54 <el-input v-model="form.scjzmj"></el-input>
55 </td>
56 </tr>
57
58 <tr height="30">
59 <td colspan="2" align="center" >预测地下面积(㎡)</td>
60 <td colspan="4" >
61 <el-input v-model="form.ycdxmj"></el-input>
62 </td>
63 <td colspan="2" align="center" >实测地下面积(㎡)</td>
64 <td colspan="4" >
65 <el-input v-model="form.scdxmj"></el-input>
66 </td>
67 </tr>
68
69 <tr height="30">
70 <td colspan="2" align="center" >预测其他面积(㎡)</td>
71 <td colspan="4" >
72 <el-input v-model="form.ycqtmj"></el-input>
73 </td>
74 <td colspan="2" align="center" >实测其他面积(㎡)</td>
75 <td colspan="4" >
76 <el-input v-model="form.scqymj"></el-input>
77 </td>
78 </tr>
79
80
81 <tr height="30" v-for="(item1,index) in form.ytList" :key="'yt'+index">
82 <td colspan="2" v-if="index===0" :rowspan="ytTitleRowspan" align="center" >
83 <el-button type="primary" size="mini" style="margin-right: 10px" @click="addYtInfo">添加</el-button>
84 <span>用途</span>
85 </td>
86 <td colspan="1" align="center" >
87 <span @click="deleteYtInfo(index)">删除</span>
88 </td>
89 <td colspan="9" >
90 <el-select v-model="item1.fwytzdbsm" placeholder="请选择" >
91 <el-option
92 v-for="item in $store.state.tdytList"
93 :key="item.bsm"
94 :label="item.mc"
95 :value="item.bsm">
96 </el-option>
97 </el-select>
98 </td>
99 </tr>
100
101 <tr height="30" v-for="(item1,index) in form.fwjgList" :key="'jg'+index">
102 <td colspan="2" v-if="index===0" :rowspan="fwjgTitleRowspan" align="center" >
103 <el-button type="primary" size="mini" style="margin-right: 10px" @click="addFwjgInfo">添加</el-button>
104 <span>房屋结构</span>
105 </td>
106 <td colspan="1" align="center" >
107 <span @click="deleteFwjgInfo(index)">删除</span>
108 </td>
109 <td colspan="9" >
110 <el-select v-model="item1.fwjgzdbsm" placeholder="请选择" >
111 <el-option
112 v-for="item in $store.state.jgOptions"
113 :key="item.bsm"
114 :label="item.mc"
115 :value="item.bsm">
116 </el-option>
117 </el-select>
118 </td>
119 </tr>
120
121 <tr height="30">
122 <td colspan="2" align="center" >地下层数</td>
123 <td colspan="4" >
124 <el-input v-model="form.dxcs"></el-input>
125 </td>
126 <td colspan="2" align="center" >地上层数</td>
127 <td colspan="4" >
128 <el-input v-model="form.dscs"></el-input>
129 </td>
130 </tr>
131
132
133 <tr height="30">
134 <td colspan="2" align="center" >总层数</td>
135 <td colspan="4" >
136 <el-input v-model="form.zcs"></el-input>
137 </td>
138 <td colspan="2" align="center" >建筑物状态</td>
139 <td colspan="4" >
140 <el-input v-model="form.jzwzt"></el-input>
141 </td>
142 </tr>
143
144
145 <tr height="30">
146 <td colspan="2" rowspan="2" align="center" >
147 <span>备注</span>
148 </td>
149 <td colspan="10" rowspan="2" >
150 <el-input v-model="form.bz" type="textarea"></el-input>
151 </td>
152 </tr>
153 <tr height="30">
154 </tr>
155
156 </tbody>
157 </table>
158 </el-form>
159 </div>
160
161 </template>
162
163 <script>
164 import {insertLjzInfo} from "../../../api/zrz";
165 import {formdate} from "../../../libs/function";
166 export default {
167 name:'ljz',
168 components:{},
169 data () {
170 return {
171 form:{
172 zrzbsm:'',
173 ljzh:'', //逻辑幢号
174 zrzh:'', //自然幢号
175 ljzmc:'', //逻辑幢顺序号
176 bdcdyh:'', //不动产单元号
177 mph:'', //门牌号
178 jgrq:'', //竣工日期
179 ycjzmj:'', //预测建筑面积
180 scjzmj:'', //实测建筑面积
181 ycdxmj:'', //预测地下面积
182 scdxmj:'', //实测地下面积
183 ycqtmj:'', //预测其他面积
184 scqymj:'', //实测其他面积
185 ytList:[{
186 glbsm:'', //关联标识码
187 fwytzdbsm:'', //房屋用途字典标识码
188 sx:'', //顺序
189 }],
190 fwjgList:[{
191 fwjgzdbsm:'', //房屋结构字典标识码
192 glbsm:'', //关联标识码
193 sx:'', //顺序
194 }],
195 dxcs:'', //地下层数
196 dscs:'', //地上层数
197 zcs:'', //总层数
198 jzwzt:'', //建筑物状态
199 },
200 value: '',
201 ytTitleRowspan:1, //用途的单元格垂直合并数量
202 fwjgTitleRowspan:1, //房屋结构的单元格垂直合并数量
203 }
204 },
205 methods: {
206 addYtInfo(){
207 this.form.ytList.push({
208 glbsm:'',
209 fwytzdbsm:'',
210 sx:'',
211 });
212 this.ytTitleRowspan=this.form.ytList.length;
213 },
214 deleteYtInfo(index){
215 if(this.form.ytList.length<=1){
216 this.$message({
217 message: '不能删除,最少含有一条用途信息',
218 type: 'warning'
219 });
220 }else{
221 this.form.ytList.splice(index,1);
222 this.ytTitleRowspan=this.form.ytList.length;
223 }
224 },
225 addFwjgInfo(){
226 this.form.fwjgList.push({
227 fwjgzdbsm:'', //房屋结构字典标识码
228 glbsm:'', //关联标识码
229 sx:'', //顺序
230 });
231 this.fwjgTitleRowspan=this.form.fwjgList.length;
232 },
233 //重置数据
234 reset(){
235 this.form = {
236 zrzbsm:'',
237 ljzh:'', //逻辑幢号
238 zrzh:'', //自然幢号
239 ljzmc:'', //逻辑幢顺序号
240 bdcdyh:'', //不动产单元号
241 mph:'', //门牌号
242 jgrq:'', //竣工日期
243 ycjzmj:'', //预测建筑面积
244 scjzmj:'', //实测建筑面积
245 ycdxmj:'', //预测地下面积
246 scdxmj:'', //实测地下面积
247 ycqtmj:'', //预测其他面积
248 scqymj:'', //实测其他面积
249 ytList:[{
250 glbsm:'', //关联标识码
251 fwytzdbsm:'', //房屋用途字典标识码
252 sx:'', //顺序
253 }],
254 fwjgList:[{
255 fwjgzdbsm:'', //房屋结构字典标识码
256 glbsm:'', //关联标识码
257 sx:'', //顺序
258 }],
259 dxcs:'', //地下层数
260 dscs:'', //地上层数
261 zcs:'', //总层数
262 jzwzt:'', //建筑物状态
263 }
264 },
265 deleteFwjgInfo(index){
266 if(this.form.fwjgList.length<=1){
267 this.$message({
268 message: '不能删除,最少含有一条房屋结构信息',
269 type: 'warning'
270 });
271 }else{
272 this.form.fwjgList.splice(index,1);
273 this.fwjgTitleRowspan=this.form.fwjgList.length;
274 }
275 },
276 onSave(data,bsm){
277 //自然幢标识码
278 this.form.zrzbsm= bsm;
279 insertLjzInfo(this.form).then((res)=>{
280 if(res.code===200){
281 this.$message.success("保存成功")
282 //更新树结构数据
283 console.log(this);
284 this.$parent.$parent.getLpbMenuTree(bsm);
285 //关闭弹框
286 this.$parent.$parent.closeDaialog()
287 }
288 })
289 },
290 onSubmit(){
291 console.log(this.form)
292 }
293 },
294 created() {
295
296 },
297 mounted() {
298
299 }
300 }
301 </script>
302 <style rel="stylesheet/less" lang="less" scoped>
303 .h {
304 min-height: 200px;
305 width: 100%;
306 margin: 0 auto;
307
308 /deep/.el-input__inner{
309 width: 100%;
310 border: 0;
311 }
312
313 /deep/textarea{
314 width: 100%;
315 border: 0;
316 }
317
318
319 .el-form-item{
320 font-weight: bold;
321 font-size: xx-large
322 }
323
324 table{
325 background: #fff;
326 table-layout: fixed;
327 }
328
329 td{
330 //bgcolor:#F1F4FC;
331 background-color:#fff;
332 width:8.33%
333 }
334
335 .el-select{
336 display:block;
337 }
338 }
339
340 table{
341 font-size: 14px;
342 }
343
344 .hTable{
345 margin-top: 10px;
346 }
347 </style>
...\ No newline at end of file ...\ No newline at end of file
1 <template>
2 <div class="addCh">
3 <el-table class="addChTable" :data="tableData" style="width: 100%" border>
4 <el-table-column prop="cz" width="40" align="center">
5 <template slot-scope="scope">
6 <span class="cp" @click="handleRowClick(scope.row, scope.$index)">{{
7 scope.row.cz
8 }}</span>
9 </template>
10 </el-table-column>
11 <el-table-column prop="ljzmc" label="逻辑幢" align="center">
12 <!-- <template slot-scope="scope">
13 <el-input size="small" v-model="scope.row.ljzbsm"></el-input>
14 </template> -->
15 </el-table-column>
16 <el-table-column prop="zdymc" label="幢单元" align="center">
17 <!-- <template slot-scope="scope">
18 <el-input size="small" v-model="scope.row.zdybsm"></el-input>
19 </template> -->
20 </el-table-column>
21 <el-table-column prop="qsc" label="起始层" align="center">
22 <template slot-scope="scope">
23 <el-input size="small" v-model="scope.row.qsc"></el-input>
24 </template>
25 </el-table-column>
26 <el-table-column prop="jsc" label="结束层" align="center">
27 <template slot-scope="scope">
28 <el-input size="small" v-model="scope.row.jsc"></el-input>
29 </template>
30 </el-table-column>
31 <el-table-column prop="mchs" label="每层户数" align="center">
32 <template slot-scope="scope">
33 <el-input size="small" v-model="scope.row.mchs"></el-input>
34 </template>
35 </el-table-column>
36 </el-table>
37 </div>
38 </template>
39
40 <script>
41 import { insertChInfo } from "../../../../../api/lpb";
42 export default {
43 name: "",
44 components: {},
45 props: {
46 treeData: {},
47 dialogVisible: {
48 type: Boolean,
49 default: false,
50 },
51 },
52 data() {
53 return {
54 ljzBsm: null,
55 zdyBsm: null,
56 zrzBsm: null,
57 tableData: [],
58 formData: {
59 cz: "+",
60 ljzbsm: "",
61 ljzmc:"",
62 zdymc:"",
63 zdybsm: "",
64 zrzbsm: "",
65 syclx: "0",
66 qsc: "",
67 jsc: "",
68 hs: "",
69 },
70 };
71 },
72 created() {},
73 mounted() {
74 console.log(this.treeData, "treeData");
75 },
76 methods: {
77 //行操作
78 handleRowClick(row, index) {
79 console.log(this.tableData, "this.tableData");
80 console.log(this.formData, "this.formData");
81 console.log(index);
82 if (row.cz == "+") {
83 let temp = JSON.parse(JSON.stringify(this.formData));
84 temp.cz = "-";
85 this.tableData.push(temp);
86 } else {
87 this.tableData.splice(index, 1);
88 }
89 },
90 onSave(bsm) {
91 insertChInfo(this.tableData).then((res) => {
92 if (res.code === 200) {
93 this.$message.success("保存成功");
94 //更新树结构数据
95 console.log(this);
96 this.$parent.$parent.getLpbMenuTree(bsm);
97 //关闭弹框
98 this.$parent.$parent.closeDaialog();
99 }
100 });
101 },
102 //重置数据
103 reset() {
104 this.tableData = [
105 {
106 cz: "+",
107 ljzbsm: "",
108 zdybsm: "",
109 qsc: "",
110 jsc: "",
111 mchs: "",
112 },
113 ];
114 },
115 },
116 computed: {},
117 watch: {
118 treeData: {
119 handler(n) {
120 this.formData = {
121 cz: "+",
122 ljzbsm: "",
123 zdybsm: "",
124 zrzbsm: "",
125 syclx: "0",
126 qsc: "",
127 jsc: "",
128 hs: "",
129 };
130 switch (n.type) {
131 case "zrz":
132 this.formData.zrzbsm = n.bsm;
133 break;
134 case "ljz":
135 this.formData.zrzbsm = n.zrzbsm;
136 this.formData.ljzbsm = n.bsm;
137 this.formData.ljzmc = n.ljzmc;
138 break;
139 case "zdy":
140 this.formData.zrzbsm = n.zrzbsm;
141 this.formData.ljzbsm = n.ljzbsm;
142 this.formData.ljzmc = n.ljzmc;
143 this.formData.zdybsm = n.bsm;
144 this.formData.zdymc = n.mc;
145 break;
146 default:
147 break;
148 }
149 this.tableData = [];
150 this.tableData.push(this.formData);
151 },
152 //深度监听,第一次接收到父组件传值就触发事件
153 immediate: true,
154 deep: true,
155 },
156 // dialogVisible(n){
157 // this.tableData = [];
158 // if(n){
159 // this.tableData.push(this.formData);
160 // }
161 // }
162 },
163 };
164 </script>
165 <style lang="less">
166 .addCh {
167 .addChTable {
168 .el-input__inner {
169 height: 20px;
170 margin: 0;
171 line-height: 20px;
172 outline: none;
173 border: none;
174 color: #606764;
175 overflow: visible;
176 cursor: text;
177 text-align: center;
178 }
179 }
180 .cp {
181 cursor: pointer;
182 }
183 }
184 </style>
1 <template> 1 <template>
2 <div class="edit"> 2 <div class="edit">
3 <div class="tab-header"> 3 <div class="tab-header">
4 <div class="searchContent"> 4 <div class="searchContent">
5 <el-radio-group v-model="radio1"> 5 <el-radio-group v-model="radio1">
6 <el-radio-button class="radioBtn" label="1" border>实测</el-radio-button> 6 <el-radio-button class="radioBtn" label="1" border
7 <el-radio-button class="radioBtn" label="2" border>预测</el-radio-button> 7 >实测</el-radio-button
8 </el-radio-group> 8 >
9 <el-input v-model="bdcdyh" class="searchInput" placeholder="输入不动产单元号"></el-input> 9 <el-radio-button class="radioBtn" label="2" border
10 </div> 10 >预测</el-radio-button
11 <div> 11 >
12 <el-button class="radioBtn" label="1" @click="create" border>创建楼盘</el-button> 12 </el-radio-group>
13 <el-button class="radioBtn" label="2" border>实预测转换</el-button> 13 <el-input
14 <el-button class="radioBtn" label="3" border>批量户</el-button> 14 v-model="bdcdyh"
15 <el-button class="radioBtn" label="4" border>批量层</el-button> 15 class="searchInput"
16 <el-button class="radioBtn" label="5" border>批量室号</el-button> 16 placeholder="输入不动产单元号"
17 <el-button class="radioBtn" label="6" border>批量坐落</el-button> 17 ></el-input>
18 <el-button class="radioBtn" label="7" border>批量单元号</el-button> 18 </div>
19 </div> 19 <div>
20 </div> 20 <el-button class="radioBtn" label="1" @click="create" border
21 <div class="tab-content" :style="{'height':lpbContentHight+'px'}"> 21 >创建楼盘</el-button
22 <div class="lp-tree" :class="createFlag ? 'w260':'w0'"> 22 >
23 <LineTree :pd="pd" class="treeData" :islpb = "islpb" ></LineTree> 23 <el-button class="radioBtn" label="2" border>实预测转换</el-button>
24 <p @click="createFlag = false" style="width:20px;float:left;cursor:pointer;">X</p> 24 <el-button class="radioBtn" label="3" border>批量户</el-button>
25 </div> 25 <el-button class="radioBtn" label="4" border>批量层</el-button>
26 <div class="lp-overview"> 26 <el-button class="radioBtn" label="5" border>批量室号</el-button>
27 楼盘单元格 27 <el-button class="radioBtn" label="6" border>批量坐落</el-button>
28 </div> 28 <el-button class="radioBtn" label="7" border>批量单元号</el-button>
29 <div class="lp-legend"> 29 </div>
30 <div class="handleCol"> 30 </div>
31 <div class="btn" @click="legendToggle"> 31 <div
32 <i v-show="!legendToggleFlag" class="el-icon-d-arrow-left"></i> 32 class="tab-content"
33 <i v-show="legendToggleFlag" class="el-icon-d-arrow-right"></i> 33 ref="tabContent"
34 </div> 34 :style="{ height: lpbContentHight + 'px' }"
35 <div class="dyzt">
36 <span>单元状态</span>
37 </div>
38 <div class="fwxz">
39 <span>房屋性质</span>
40 </div>
41 <div class="fwyt">
42 <span>房屋用途</span>
43 </div>
44 </div>
45 <div class="legendTable-wrap" :style="{'width':legendToggleFlag ? '204px' : '0'}">
46 <table class="legendTable" cellspacing="1" cellpadding="1" border="1">
47 <tr>
48 <th>状态</th>
49 <th>套数</th>
50 <th>面积</th>
51 </tr>
52 <tr v-for="(item,index) in legendList" :key="index">
53 <td><i class="el-icon-star-on" :style="{'color':item.color}"></i>{{item.name}}</td>
54 <td>{{item.ts}}</td>
55 <td>{{item.mj}}</td>
56 </tr>
57 </table>
58 </div>
59 </div>
60 </div>
61
62 <el-dialog
63 title="添加"
64 :visible.sync="dialogVisible"
65 width="50%"
66 center
67 > 35 >
68 <!-- 根据菜单类型(menuType)和右键点击的楼盘类型(treeData.type)来区分弹框内容 --> 36 <!-- 左侧树结构 -->
69 <div class="addCh" v-show="menuType == 'ljz'"> 37 <div class="lp-tree" :class="createFlag ? 'w260' : 'w0'">
70 <addLjz ref="ljz"></addLjz> 38 <LineTree :pd="pd" class="treeData" :islpb="islpb"></LineTree>
71 </div> 39 <p
72 <div class="addCh" v-show="menuType == 'zdy'"> 40 @click="createFlag = false"
73 幢单元 41 style="width:20px;float:left;margin-top: 12px;margin-left:10px;cursor:pointer;"
74 </div> 42 >
75 <div class="addCh" v-show="menuType == 'ch'"> 43 X
76 层户 44 </p>
77 </div> 45 </div>
78 <div class="btnGroup"> 46 <!-- 楼盘表主体 -->
79 <el-button type="primary" @click="saveInfo">保存</el-button> 47 <div class="lp-overview" :style="{ width: lpbContentwidth + 'px' }">
80 <el-button type="primary" @click="resetInfo">重置</el-button> 48 <lpbContent></lpbContent>
81 <el-button type="primary" @click="dialogVisible = false">取消</el-button> 49 </div>
82 </div> 50 <!-- 右侧图例 -->
51 <div class="lp-legend">
52 <div class="handleCol">
53 <div class="btn" @click="legendToggle">
54 <i v-show="!legendToggleFlag" class="el-icon-d-arrow-left"></i>
55 <i v-show="legendToggleFlag" class="el-icon-d-arrow-right"></i>
56 </div>
57 <div class="dyzt">
58 <span>单元状态</span>
59 </div>
60 <div class="fwxz">
61 <span>房屋性质</span>
62 </div>
63 <div class="fwyt">
64 <span>房屋用途</span>
65 </div>
66 </div>
67 <div
68 class="legendTable-wrap"
69 :style="{ width: legendToggleFlag ? '204px' : '0' }"
70 >
71 <table class="legendTable" cellspacing="1" cellpadding="1" border="1">
72 <tr>
73 <th>状态</th>
74 <th>套数</th>
75 <th>面积</th>
76 </tr>
77 <tr v-for="(item, index) in legendList" :key="index">
78 <td>
79 <i class="el-icon-star-on" :style="{ color: item.color }"></i
80 >{{ item.name }}
81 </td>
82 <td>{{ item.ts }}</td>
83 <td>{{ item.mj }}</td>
84 </tr>
85 </table>
86 </div>
87 </div>
88 </div>
89
90 <el-dialog title="添加" :visible.sync="dialogVisible" width="50%" center>
91 <!-- 根据菜单类型(menuType)和右键点击的楼盘类型(treeData.type)来区分弹框内容 -->
92 <div class="addCh" v-show="menuType == 'ljz'">
93 <addLjz ref="ljz"></addLjz>
94 </div>
95 <div class="addCh" v-show="menuType == 'zdy'">
96 <addZdy ref="zdy"></addZdy>
97 </div>
98 <div class="addCh" v-show="menuType == 'ch'">
99 <addCh ref="ch" :dialogVisible="dialogVisible" :treeData="treeData"></addCh>
100 </div>
101 <div class="btnGroup">
102 <el-button type="primary" @click="saveInfo">保存</el-button>
103 <el-button type="primary" @click="resetInfo">重置</el-button>
104 <el-button type="primary" @click="dialogVisible = false"
105 >取消</el-button
106 >
107 </div>
83 </el-dialog> 108 </el-dialog>
84 </div> 109 </div>
85 </template> 110 </template>
86 111
87 <script> 112 <script>
88 import LineTree from "../../../../components/lineTree/lineTree"; 113 import LineTree from "../../../../components/lineTree/lineTree";
89 import addLjz from "../../ljz/index" 114 import addLjz from "./ljz/index";
90 import {getLpbMenuTree} from "../../../../api/lpb" 115 import addZdy from "./zdy/index";
116 import addCh from "./ch/index";
117 import lpbContent from "./lpbContent/index";
118 import { getLpbMenuTree } from "../../../../api/lpb";
91 export default { 119 export default {
92 name:"", 120 name: "",
93 components:{LineTree,addLjz}, 121 components: { LineTree, addLjz, addZdy, addCh, lpbContent },
94 props:{}, 122 props: {},
95 data(){ 123 data() {
96 return { 124 return {
97 radio1:'', 125 radio1: "",
98 radio2:'', 126 radio2: "",
99 createFlag:false, 127 createFlag: false,
100 bdcdyh:'', 128 bdcdyh: "",
101 islpb:true, 129 islpb: true,
102 pd:[], //创建楼盘的树结构数据 130 pd: [], //创建楼盘的树结构数据
103 dialogVisible:false, 131 dialogVisible: false,
104 menuType:'', 132 menuType: "",
105 treeData:{}, 133 treeData: {},
106 legendList:[ 134 legendList: [
107 { 135 {
108 name:'未确权', 136 name: "未确权",
109 color:'#2591FD', 137 color: "#2591FD",
110 ts:'12', 138 ts: "12",
111 mj:'1633' 139 mj: "1633",
112 }, 140 },
113 { 141 {
114 name:'已确权', 142 name: "已确权",
115 color:'#2591FD', 143 color: "#2591FD",
116 ts:'22', 144 ts: "22",
117 mj:'3109' 145 mj: "3109",
118 }, 146 },
119 { 147 {
120 name:'已注销', 148 name: "已注销",
121 color:'#2591FD', 149 color: "#2591FD",
122 ts:'13', 150 ts: "13",
123 mj:'1457' 151 mj: "1457",
124 }, 152 },
125 { 153 {
126 name:'已备案', 154 name: "已备案",
127 color:'#2591FD', 155 color: "#2591FD",
128 ts:'3', 156 ts: "3",
129 mj:'409' 157 mj: "409",
130 }, 158 },
131 { 159 {
132 name:'预抵押', 160 name: "预抵押",
133 color:'#2591FD', 161 color: "#2591FD",
134 ts:'11', 162 ts: "11",
135 mj:'1466' 163 mj: "1466",
136 }, 164 },
137 { 165 {
138 name:'在建抵押', 166 name: "在建抵押",
139 color:'#2591FD', 167 color: "#2591FD",
140 ts:'13', 168 ts: "13",
141 mj:'1792' 169 mj: "1792",
142 }, 170 },
143 { 171 {
144 name:'抵押', 172 name: "抵押",
145 color:'#2591FD', 173 color: "#2591FD",
146 ts:'14', 174 ts: "14",
147 mj:'13' 175 mj: "13",
148 }, 176 },
149 { 177 {
150 name:'查封', 178 name: "查封",
151 color:'#2591FD', 179 color: "#2591FD",
152 ts:'9', 180 ts: "9",
153 mj:'1436' 181 mj: "1436",
154 }, 182 },
155 { 183 {
156 name:'异议', 184 name: "异议",
157 color:'#2591FD', 185 color: "#2591FD",
158 ts:'34', 186 ts: "34",
159 mj:'4342' 187 mj: "4342",
160 }, 188 },
161 { 189 {
162 name:'限制', 190 name: "限制",
163 color:'#2591FD', 191 color: "#2591FD",
164 ts:'2', 192 ts: "2",
165 mj:'285' 193 mj: "285",
166 }, 194 },
167 ], 195 ],
168 legendToggleFlag:false, 196 legendToggleFlag: false,
169 lpbContentHight:'' 197 lpbContentHight: "",
170 } 198 lpbContentwidth: "",
171 }, 199 };
172 created(){ 200 },
173 window.addEventListener('resize', this.getHeight); 201 created() {
174 this.getHeight() 202 window.addEventListener("resize", this.getHeight);
175 }, 203 this.getHeight();
176 mounted(){ 204 },
177 this.getLpbMenuTree('d1b82b27f2a6ab7bf3f0e7708c96e46f') 205 mounted() {
178 }, 206 this.getLpbMenuTree("1e0c83dfe2e73284f834a80a0947f0c9");
179 methods:{ 207 // 楼盘表绘制区域宽度计算:楼盘表区域宽度-图例宽度34-滚动条宽度6
180 //获取高度计算lpb内容区高度 208 setTimeout(() => {
181 getHeight(){ 209 this.lpbContentwidth = this.$store.state.contentWidth - 34 - 6;
182 this.lpbContentHight = window.innerHeight - 340 210 }, 100);
183 }, 211 },
184 //创建楼盘 212 methods: {
185 create(){ 213 //获取高度计算lpb内容区高度
186 this.createFlag = true 214 getHeight() {
187 }, 215 this.lpbContentHight = window.innerHeight - 340;
188 //获取自然幢树结构数据 216 },
189 getLpbMenuTree(zrzbsm){ 217 //创建楼盘
190 getLpbMenuTree(zrzbsm) 218 create() {
191 .then((res) => { 219 this.createFlag = true;
220 },
221 //获取自然幢树结构数据
222 getLpbMenuTree(zrzbsm) {
223 getLpbMenuTree(zrzbsm)
224 .then((res) => {
192 this.pd = res.result; 225 this.pd = res.result;
193 }) 226 })
194 .catch((error) => {}); 227 .catch((error) => {});
195 }, 228 },
196 //打开新建楼盘树结构右键菜单唤起的弹框 229 //打开新建楼盘树结构右键菜单唤起的弹框
197 openLpbDialog(data,type){ 230 openLpbDialog(data, type) {
198 console.log(data,'data'); 231 console.log(data, "data");
199 this.treeData = data; 232 this.treeData = data;
200 this.menuType = type; 233 this.menuType = type;
201 this.dialogVisible = true 234 this.dialogVisible = true;
202 }, 235 },
203 //弹框中的保存按钮 236 //弹框中的保存按钮
204 saveInfo(){ 237 saveInfo() {
205 switch (this.menuType) { 238 switch (this.menuType) {
206 case 'ljz': 239 case "ljz":
207 this.$refs.ljz.onSave(this.$refs.ljz.form,this.treeData.bsm) 240 this.$refs.ljz.onSave(this.$refs.ljz.form, this.treeData.bsm);
208 break; 241 break;
209 case 'zdy': 242 case "zdy":
210 243 this.$refs.zdy.submitForm("form", this.pd[0].bsm, this.treeData.bsm);
211 break; 244 break;
212 case 'ch': 245 case "ch":
213 246 this.$refs.ch.onSave(this.pd[0].bsm);
214 break; 247 break;
215 248 default:
216 default: 249 break;
217 break; 250 }
218 } 251 },
219 }, 252 //弹框中的重置按钮
220 //弹框中的重置按钮 253 resetInfo() {
221 resetInfo(){ 254 switch (this.menuType) {
222 switch (this.menuType) { 255 case "ljz":
223 case 'ljz': 256 this.$refs.ljz.reset();
224 this.$refs.ljz.reset() 257 break;
225 break; 258 case "zdy":
226 case 'zdy': 259 this.$refs.zdy.reset();
227 260 break;
228 break; 261 case "ch":
229 case 'ch': 262 this.$refs.ch.reset();
230 263 break;
231 break; 264
232 265 default:
233 default: 266 break;
234 break; 267 }
235 } 268 },
236 }, 269 //关闭弹框
237 //关闭弹框 270 closeDaialog() {
238 closeDaialog(){ 271 this.dialogVisible = false;
239 this.dialogVisible = false 272 },
240 }, 273 //图例的展开收起
241 //图例的展开收起 274 legendToggle() {
242 legendToggle(){ 275 this.legendToggleFlag = !this.legendToggleFlag;
243 this.legendToggleFlag = !this.legendToggleFlag; 276 },
244 } 277 },
245 }, 278 computed: {
246 computed: {}, 279 },
247 destroyed(){ 280 destroyed() {
248 window.removeEventListener('resize', this.getHeight) 281 window.removeEventListener("resize", this.getHeight);
249 }, 282 },
250 watch: { 283 watch: {
251 }, 284 legendToggleFlag(n) {
252 } 285 if (n) {
286 this.lpbContentwidth -= 204;
287 } else {
288 this.lpbContentwidth += 204;
289 }
290 },
291 createFlag(n) {
292 if (n) {
293 this.lpbContentwidth -= 260;
294 } else {
295 this.lpbContentwidth += 260;
296 }
297 },
298 },
299 };
253 </script> 300 </script>
254 <style scoped lang="less"> 301 <style scoped lang="less">
255 .edit{ 302 .edit {
256 height: 100%; 303 height: 100%;
257 background-color: #EAEDF5; 304 background-color: #eaedf5;
258 .tab-header{ 305 .tab-header {
259 border: 1px solid #DEDEDE; 306 border: 1px solid #dedede;
260 border-top: 0; 307 border-top: 0;
261 box-sizing: border-box; 308 box-sizing: border-box;
262 padding: 20px 0; 309 padding: 20px 0;
263 background-color: #ffffff; 310 background-color: #ffffff;
264 margin-bottom: 20px; 311 margin-bottom: 20px;
265 .searchContent{ 312 .searchContent {
266 margin-bottom: 20px; 313 margin-bottom: 20px;
267 .searchInput{ 314 .searchInput {
268 width: 300px; 315 width: 300px;
269 margin-left: 20px; 316 margin-left: 20px;
270 display: inline-block; 317 display: inline-block;
271 } 318 }
272 } 319 }
273 .radioBtn{ 320 .radioBtn {
274 margin-left: 20px; 321 margin-left: 20px;
275 /deep/.el-radio-button__inner{ 322 /deep/.el-radio-button__inner {
276 border: 1px solid #DCDFE6; 323 border: 1px solid #dcdfe6;
277 border-radius:4px; 324 border-radius: 4px;
278 box-shadow: 0 0 0 0 #409EFF!important; 325 box-shadow: 0 0 0 0 #409eff !important;
279 } 326 }
280 } 327 }
281 } 328 }
282 .tab-content{ 329 .tab-content {
283 background-color: #ffffff; 330 background-color: #ffffff;
284 display: flex; 331 display: flex;
285 overflow-y: scroll; 332 overflow-y: scroll;
286 .lp-tree{ 333 .lp-tree {
287 height: 100%; 334 height: 100%;
288 overflow: hidden; 335 overflow: hidden;
289 transition: .5s; 336 transition: 0.5s;
290 .treeData{ 337 .treeData {
291 margin-top: 20px; 338 margin-top: 20px;
292 margin-left: 20px; 339 margin-left: 20px;
293 float: left; 340 float: left;
294 } 341 }
295 } 342 }
296 .w0{ 343 .w0 {
297 width: 0; 344 width: 0;
298 } 345 }
299 .w260{ 346 .w260 {
300 width: 260px; 347 width: 260px;
301 } 348 }
302 .lp-overview{ 349 .lp-overview {
303 flex: 1; 350 transition: 0.5s;
304 } 351 flex: 1;
305 .lp-legend{ 352 }
306 transition: .5s; 353 .lp-legend {
307 height: 100%; 354 transition: 0.5s;
308 font-size: 14px; 355 height: 100%;
309 .handleCol{ 356 font-size: 14px;
310 width: 34px; 357 .handleCol {
311 float: right; 358 width: 34px;
312 height: 100%; 359 float: right;
313 .btn{ 360 height: 100%;
314 cursor: pointer; 361 .btn {
315 height: 40px; 362 cursor: pointer;
316 line-height: 40px; 363 height: 40px;
317 text-align: center; 364 line-height: 40px;
318 border-bottom: 1px solid #E6E6E6 ; 365 text-align: center;
319 } 366 border-bottom: 1px solid #e6e6e6;
320 .dyzt{ 367 }
321 height: 81px; 368 .dyzt {
322 line-height: 81px; 369 height: 81px;
323 } 370 line-height: 81px;
324 .fwxz,.fwyt{ 371 }
325 height: 122px; 372 .fwxz,
326 } 373 .fwyt {
327 .dyzt,.fwxz,.fwyt{ 374 height: 122px;
328 border-bottom: 1px solid #E6E6E6 ; 375 }
329 span{ 376 .dyzt,
330 text-align: center; 377 .fwxz,
331 height: 100%; 378 .fwyt {
332 -webkit-writing-mode: vertical-rl; 379 border-bottom: 1px solid #e6e6e6;
333 writing-mode: vertical-rl; 380 span {
334 line-height: 34px; 381 text-align: center;
335 letter-spacing: 2px; 382 height: 100%;
336 } 383 -webkit-writing-mode: vertical-rl;
337 } 384 writing-mode: vertical-rl;
338 } 385 line-height: 34px;
339 .legendTable-wrap{ 386 letter-spacing: 2px;
340 transition: .5s; 387 }
341 float: right; 388 }
342 overflow: hidden; 389 }
343 .legendTable{ 390 .legendTable-wrap {
344 margin-top: -1px; 391 transition: 0.5s;
345 tr{ 392 float: right;
346 height: 40px; 393 overflow: hidden;
347 line-height: 40px; 394 .legendTable {
348 th:first-child{ 395 margin-top: -1px;
349 width: 80px; 396 tr {
350 } 397 height: 40px;
351 th{ 398 line-height: 40px;
352 width: 60px; 399 th:first-child {
353 height: 40px; 400 width: 80px;
354 white-space: nowrap; 401 }
355 } 402 th {
356 td { 403 width: 60px;
357 height: 40px; 404 height: 40px;
358 text-align: center; 405 white-space: nowrap;
359 white-space: nowrap; 406 }
360 } 407 td {
361 td:first-child{ 408 height: 40px;
362 text-align: left; 409 text-align: center;
363 text-indent: 2px; 410 white-space: nowrap;
364 } 411 }
365 } 412 td:first-child {
366 } 413 text-align: left;
367 } 414 text-indent: 2px;
368 } 415 }
369 } 416 }
370 .btnGroup{ 417 }
371 margin: 20px auto 0; 418 }
372 width: 230px; 419 }
373 } 420 }
421 .btnGroup {
422 margin: 20px auto 0;
423 width: 230px;
424 }
374 } 425 }
375 </style>
...\ No newline at end of file ...\ No newline at end of file
426 </style>
......
1 <template>
2 <div class="h content-form">
3 <el-form ref="form" :model="form" label-width="160px">
4 <table
5 border="1"
6 width="100%"
7 cellspacing="0"
8 cellpadding="0"
9 class="hTable"
10 >
11 <tbody>
12 <tr height="30">
13 <td colspan="12" align="center">
14 <font size="4">逻辑幢基本信息</font>
15 </td>
16 </tr>
17 <tr height="30">
18 <td colspan="2" align="center">逻辑幢号</td>
19 <td colspan="4">
20 <el-input v-model="form.ljzh"></el-input>
21 </td>
22 <td colspan="2" align="center">自然幢号</td>
23 <td colspan="4">
24 <el-input v-model="form.zrzh"></el-input>
25 </td>
26 </tr>
27 <tr height="30">
28 <td colspan="2" align="center">逻辑幢名称</td>
29 <td colspan="4">
30 <el-input v-model="form.ljzmc"></el-input>
31 </td>
32 <td colspan="2" align="center">不动产单元号</td>
33 <td colspan="4">
34 <el-input v-model="form.bdcdyh" style="width: 70%"></el-input>
35 <el-button
36 @click.prevent=""
37 size="mini"
38 type="primary"
39 style="width:25%;margin-left:3%"
40 >生成</el-button
41 >
42 </td>
43 </tr>
44
45 <tr height="30">
46 <td colspan="2" align="center">门牌号</td>
47 <td colspan="4">
48 <el-input v-model="form.mph"></el-input>
49 </td>
50 <td colspan="2" align="center">竣工日期</td>
51 <td colspan="4">
52 <el-date-picker
53 v-model="form.jgrq"
54 type="date"
55 value-format="yyyy-MM-dd"
56 placeholder="选择日期"
57 >
58 </el-date-picker>
59 </td>
60 </tr>
61
62 <tr height="30">
63 <td colspan="2" align="center">预测建筑面积(㎡)</td>
64 <td colspan="4">
65 <el-input v-model="form.ycjzmj"></el-input>
66 </td>
67 <td colspan="2" align="center">实测建筑面积(㎡)</td>
68 <td colspan="4">
69 <el-input v-model="form.scjzmj"></el-input>
70 </td>
71 </tr>
72
73 <tr height="30">
74 <td colspan="2" align="center">预测地下面积(㎡)</td>
75 <td colspan="4">
76 <el-input v-model="form.ycdxmj"></el-input>
77 </td>
78 <td colspan="2" align="center">实测地下面积(㎡)</td>
79 <td colspan="4">
80 <el-input v-model="form.scdxmj"></el-input>
81 </td>
82 </tr>
83
84 <tr height="30">
85 <td colspan="2" align="center">预测其他面积(㎡)</td>
86 <td colspan="4">
87 <el-input v-model="form.ycqtmj"></el-input>
88 </td>
89 <td colspan="2" align="center">实测其他面积(㎡)</td>
90 <td colspan="4">
91 <el-input v-model="form.scqymj"></el-input>
92 </td>
93 </tr>
94
95 <tr
96 height="30"
97 v-for="(item1, index) in form.ytList"
98 :key="'yt' + index"
99 >
100 <td
101 colspan="2"
102 v-if="index === 0"
103 :rowspan="ytTitleRowspan"
104 align="center"
105 >
106 <el-button
107 type="primary"
108 size="mini"
109 style="margin-right: 10px"
110 @click="addYtInfo"
111 >添加</el-button
112 >
113 <span>用途</span>
114 </td>
115 <td colspan="1" align="center">
116 <span @click="deleteYtInfo(index)">删除</span>
117 </td>
118 <td colspan="9">
119 <el-select v-model="item1.fwytzdbsm" placeholder="请选择">
120 <el-option
121 v-for="item in $store.state.tdytList"
122 :key="item.bsm"
123 :label="item.mc"
124 :value="item.bsm"
125 >
126 </el-option>
127 </el-select>
128 </td>
129 </tr>
130
131 <tr
132 height="30"
133 v-for="(item1, index) in form.fwjgList"
134 :key="'jg' + index"
135 >
136 <td
137 colspan="2"
138 v-if="index === 0"
139 :rowspan="fwjgTitleRowspan"
140 align="center"
141 >
142 <el-button
143 type="primary"
144 size="mini"
145 style="margin-right: 10px"
146 @click="addFwjgInfo"
147 >添加</el-button
148 >
149 <span>房屋结构</span>
150 </td>
151 <td colspan="1" align="center">
152 <span @click="deleteFwjgInfo(index)">删除</span>
153 </td>
154 <td colspan="9">
155 <el-select v-model="item1.fwjgzdbsm" placeholder="请选择">
156 <el-option
157 v-for="item in $store.state.jgOptions"
158 :key="item.bsm"
159 :label="item.mc"
160 :value="item.bsm"
161 >
162 </el-option>
163 </el-select>
164 </td>
165 </tr>
166
167 <tr height="30">
168 <td colspan="2" align="center">地下层数</td>
169 <td colspan="4">
170 <el-input v-model="form.dxcs"></el-input>
171 </td>
172 <td colspan="2" align="center">地上层数</td>
173 <td colspan="4">
174 <el-input v-model="form.dscs"></el-input>
175 </td>
176 </tr>
177
178 <tr height="30">
179 <td colspan="2" align="center">总层数</td>
180 <td colspan="4">
181 <el-input v-model="form.zcs"></el-input>
182 </td>
183 <td colspan="2" align="center">建筑物状态</td>
184 <td colspan="4">
185 <el-input v-model="form.jzwzt"></el-input>
186 </td>
187 </tr>
188
189 <tr height="30">
190 <td colspan="2" rowspan="2" align="center">
191 <span>备注</span>
192 </td>
193 <td colspan="10" rowspan="2">
194 <el-input v-model="form.bz" type="textarea"></el-input>
195 </td>
196 </tr>
197 <tr height="30"></tr>
198 </tbody>
199 </table>
200 </el-form>
201 </div>
202 </template>
203
204 <script>
205 import { insertLjzInfo } from "../../../../../api/lpb";
206 import { formdate } from "../../../../../libs/function";
207 export default {
208 name: "ljz",
209 components: {},
210 data() {
211 return {
212 form: {
213 zrzbsm: "",
214 ljzh: "", //逻辑幢号
215 zrzh: "", //自然幢号
216 ljzmc: "", //逻辑幢顺序号
217 bdcdyh: "", //不动产单元号
218 mph: "", //门牌号
219 jgrq: "", //竣工日期
220 ycjzmj: "", //预测建筑面积
221 scjzmj: "", //实测建筑面积
222 ycdxmj: "", //预测地下面积
223 scdxmj: "", //实测地下面积
224 ycqtmj: "", //预测其他面积
225 scqymj: "", //实测其他面积
226 ytList: [
227 {
228 glbsm: "", //关联标识码
229 fwytzdbsm: "", //房屋用途字典标识码
230 sx: "", //顺序
231 },
232 ],
233 fwjgList: [
234 {
235 fwjgzdbsm: "", //房屋结构字典标识码
236 glbsm: "", //关联标识码
237 sx: "", //顺序
238 },
239 ],
240 dxcs: "", //地下层数
241 dscs: "", //地上层数
242 zcs: "", //总层数
243 jzwzt: "", //建筑物状态
244 },
245 value: "",
246 ytTitleRowspan: 1, //用途的单元格垂直合并数量
247 fwjgTitleRowspan: 1, //房屋结构的单元格垂直合并数量
248 };
249 },
250 methods: {
251 addYtInfo() {
252 this.form.ytList.push({
253 glbsm: "",
254 fwytzdbsm: "",
255 sx: "",
256 });
257 this.ytTitleRowspan = this.form.ytList.length;
258 },
259 deleteYtInfo(index) {
260 if (this.form.ytList.length <= 1) {
261 this.$message({
262 message: "不能删除,最少含有一条用途信息",
263 type: "warning",
264 });
265 } else {
266 this.form.ytList.splice(index, 1);
267 this.ytTitleRowspan = this.form.ytList.length;
268 }
269 },
270 addFwjgInfo() {
271 this.form.fwjgList.push({
272 fwjgzdbsm: "", //房屋结构字典标识码
273 glbsm: "", //关联标识码
274 sx: "", //顺序
275 });
276 this.fwjgTitleRowspan = this.form.fwjgList.length;
277 },
278 //重置数据
279 reset() {
280 this.form = {
281 zrzbsm: "",
282 ljzh: "", //逻辑幢号
283 zrzh: "", //自然幢号
284 ljzmc: "", //逻辑幢顺序号
285 bdcdyh: "", //不动产单元号
286 mph: "", //门牌号
287 jgrq: "", //竣工日期
288 ycjzmj: "", //预测建筑面积
289 scjzmj: "", //实测建筑面积
290 ycdxmj: "", //预测地下面积
291 scdxmj: "", //实测地下面积
292 ycqtmj: "", //预测其他面积
293 scqymj: "", //实测其他面积
294 ytList: [
295 {
296 glbsm: "", //关联标识码
297 fwytzdbsm: "", //房屋用途字典标识码
298 sx: "", //顺序
299 },
300 ],
301 fwjgList: [
302 {
303 fwjgzdbsm: "", //房屋结构字典标识码
304 glbsm: "", //关联标识码
305 sx: "", //顺序
306 },
307 ],
308 dxcs: "", //地下层数
309 dscs: "", //地上层数
310 zcs: "", //总层数
311 jzwzt: "", //建筑物状态
312 };
313 },
314 deleteFwjgInfo(index) {
315 if (this.form.fwjgList.length <= 1) {
316 this.$message({
317 message: "不能删除,最少含有一条房屋结构信息",
318 type: "warning",
319 });
320 } else {
321 this.form.fwjgList.splice(index, 1);
322 this.fwjgTitleRowspan = this.form.fwjgList.length;
323 }
324 },
325 onSave(data, bsm) {
326 debugger
327 //自然幢标识码
328 this.form.zrzbsm = bsm;
329 insertLjzInfo(this.form).then((res) => {
330 if (res.code === 200) {
331 this.$message.success("保存成功");
332 //更新树结构数据
333 console.log(this);
334 this.$parent.$parent.getLpbMenuTree(bsm);
335 //关闭弹框
336 this.$parent.$parent.closeDaialog();
337 }
338 });
339 },
340 onSubmit() {
341 console.log(this.form);
342 },
343 },
344 created() {},
345 mounted() {},
346 };
347 </script>
348 <style rel="stylesheet/less" lang="less" scoped>
349 .h {
350 min-height: 200px;
351 width: 100%;
352 margin: 0 auto;
353
354 /deep/.el-input__inner {
355 width: 100%;
356 border: 0;
357 }
358
359 /deep/textarea {
360 width: 100%;
361 border: 0;
362 }
363
364 .el-form-item {
365 font-weight: bold;
366 font-size: xx-large;
367 }
368
369 table {
370 background: #fff;
371 table-layout: fixed;
372 }
373
374 td {
375 //bgcolor:#F1F4FC;
376 background-color: #fff;
377 width: 8.33%;
378 }
379
380 .el-select {
381 display: block;
382 }
383 }
384
385 table {
386 font-size: 14px;
387 }
388
389 .hTable {
390 margin-top: 10px;
391 }
392 </style>
1 <template>
2 <div class="lpbContent-wrap" ref="lpbContent">
3 <div class="lpbContent">
4 <div class="ljz">逻辑幢</div>
5 <div class="zdy">幢单元</div>
6 <div class="ch">层户</div>
7 </div>
8 <div
9 class="zrz"
10 :style="{ width: lpbContentWidth + 'px'}"
11 >
12 {{ lpbData.xmmc }}
13 </div>
14 </div>
15 </template>
16
17 <script>
18 export default {
19 name: "",
20 components: {},
21 props: {},
22 data() {
23 return {
24 lpbData: {
25 bsm: "e9d1d425c30dd51b72d6f9daacd65d51",
26 xmmc: "金星小区A幢",
27 type: "zrz",
28 max_singlefloorhouse: "10",
29 zrzh: "600000 000 000 GB 00000 F0001",
30 total_floors: "10",
31 min_floor: "-2",
32 max_floor: "8",
33 ljzs: [
34 {
35 bsm: "ljzljz0101010101",
36 ljzmc: "地下车库",
37 type: "ljz",
38 max_singlefloorhouse: "10",
39 total_hs: "2",
40 min_c: "1",
41 max_c: "2",
42 zdys: [
43 {
44 bsm: "zdybsm01",
45 zdymc: "一单元",
46 type: "zdy",
47 max_singlefloorhouse: "2",
48 total_floors: "2",
49 min_floor: "1",
50 max_floor: "2",
51 cs: [
52 {
53 bsm: "c_01",
54 type: "c",
55 sjc: "1",
56 ch: "1",
57 maxhs: "2",
58 hs: [
59 {
60 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
61 SHBW: "S01-01(1)",
62 SJCS: "1",
63 SJHS: "1",
64 HH: "1",
65 BDCDYH: "F0001",
66 status: "10101011",
67 },
68 {
69 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
70 SHBW: "S01-02(2)",
71 SJCS: "2",
72 SJHS: "1",
73 HH: "2",
74 BDCDYH: "F0002",
75 status: "10101011",
76 },
77 ],
78 },
79 {
80 bsm: "c_02",
81 type: "c",
82 sjc: "2",
83 ch: "2",
84 maxhs: "2",
85 hs: [
86 {
87 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
88 SHBW: "S01-01(1)",
89 SJCS: "1",
90 SJHS: "1",
91 HH: "1",
92 BDCDYH: "F0001",
93 status: "10101011",
94 },
95 {
96 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
97 SHBW: "S01-02(2)",
98 SJCS: "2",
99 SJHS: "1",
100 HH: "2",
101 BDCDYH: "F0002",
102 status: "10101011",
103 },
104 ],
105 },
106 ],
107 },
108 ],
109 },
110 {
111 bsm: "ljzljz0101010101",
112 ljzmc: "商业",
113 type: "ljz",
114 max_singlefloorhouse: "10",
115 total_hs: "2",
116 min_c: "1",
117 max_c: "2",
118 },
119 {
120 bsm: "ljzljz0101010101",
121 ljzmc: "住宅",
122 type: "ljz",
123 max_singlefloorhouse: "10",
124 total_hs: "2",
125 min_c: "1",
126 max_c: "2",
127 },
128 ],
129 zdys: [
130 {
131 bsm: "zdybsm01",
132 zdymc: "一单元",
133 type: "zdy",
134 max_singlefloorhouse: "2",
135 total_floors: "2",
136 min_floor: "1",
137 max_floor: "2",
138 cs: [
139 {
140 bsm: "c_01",
141 type: "c",
142 sjc: "1",
143 ch: "1",
144 maxhs: "2",
145 hs: [
146 {
147 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
148 SHBW: "S01-01(1)",
149 SJCS: "1",
150 SJHS: "1",
151 HH: "1",
152 BDCDYH: "F0001",
153 status: "10101011",
154 },
155 {
156 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
157 SHBW: "S01-02(2)",
158 SJCS: "2",
159 SJHS: "1",
160 HH: "2",
161 BDCDYH: "F0002",
162 status: "10101011",
163 },
164 ],
165 },
166 {
167 bsm: "c_02",
168 type: "c",
169 sjc: "2",
170 ch: "2",
171 maxhs: "2",
172 hs: [
173 {
174 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
175 SHBW: "S01-01(1)",
176 SJCS: "1",
177 SJHS: "1",
178 HH: "1",
179 BDCDYH: "F0001",
180 status: "10101011",
181 },
182 {
183 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
184 SHBW: "S01-02(2)",
185 SJCS: "2",
186 SJHS: "1",
187 HH: "2",
188 BDCDYH: "F0002",
189 status: "10101011",
190 },
191 ],
192 },
193 ],
194 },
195 {
196 bsm: "zdybsm02",
197 zdymc: "二单元",
198 type: "zdy",
199 max_singlefloorhouse: "2",
200 total_floors: "2",
201 min_floor: "1",
202 max_floor: "2",
203 cs: [
204 {
205 bsm: "c_01",
206 type: "c",
207 sjc: "1",
208 ch: "1",
209 maxhs: "2",
210 hs: [
211 {
212 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
213 SHBW: "S01-01(1)",
214 SJCS: "1",
215 SJHS: "1",
216 HH: "1",
217 BDCDYH: "F0001",
218 status: "10101011",
219 },
220 {
221 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
222 SHBW: "S01-02(2)",
223 SJCS: "2",
224 SJHS: "1",
225 HH: "2",
226 BDCDYH: "F0002",
227 status: "10101011",
228 },
229 ],
230 },
231 {
232 bsm: "c_02",
233 type: "c",
234 sjc: "2",
235 ch: "2",
236 maxhs: "2",
237 hs: [
238 {
239 ID: "e9d1d425c30dd51b72d6f9daacd65d51",
240 RoomNo: "S01-01(2)",
241 SJCS: "2",
242 SJHS: "1",
243 SXH: "1",
244 REUN: "F0001",
245 status: "10101011",
246 },
247 {
248 ID: "e9d1d425c30dd51b72d6f9daacd65d51",
249 RoomNo: "S01-02",
250 SJCS: "1",
251 SJHS: "2",
252 SXH: "2",
253 REUN: "F0002",
254 status: "10101011",
255 },
256 ],
257 },
258 ],
259 },
260 ],
261 cs: [
262 {
263 bsm: "c_01",
264 type: "c",
265 sjc: "1",
266 ch: "1",
267 maxhs: "2",
268 hs: [
269 {
270 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
271 SHBW: "S01-01(1)",
272 SJCS: "1",
273 SJHS: "1",
274 HH: "1",
275 BDCDYH: "F0001",
276 status: "10101011",
277 },
278 {
279 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
280 SHBW: "S01-02(2)",
281 SJCS: "2",
282 SJHS: "1",
283 HH: "2",
284 BDCDYH: "F0002",
285 status: "10101011",
286 },
287 ],
288 },
289 {
290 bsm: "c_02",
291 type: "c",
292 sjc: "2",
293 ch: "2",
294 maxhs: "2",
295 hs: [
296 {
297 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
298 SHBW: "S01-01(1)",
299 SJCS: "1",
300 SJHS: "1",
301 HH: "1",
302 BDCDYH: "F0001",
303 status: "10101011",
304 },
305 {
306 BSM: "e9d1d425c30dd51b72d6f9daacd65d51",
307 SHBW: "S01-02(2)",
308 SJCS: "2",
309 SJHS: "1",
310 HH: "2",
311 BDCDYH: "F0002",
312 status: "10101011",
313 },
314 ],
315 },
316 ],
317 },
318 lpbContentWidth: "",
319 };
320 },
321 created() {},
322 mounted() {
323 setTimeout(() => {
324 this.lpbContentWidth = this.$store.state.contentWidth - 34 - 6;
325 }, 100);
326 },
327 methods: {},
328 computed: {
329 createFlagChange() {
330 return this.$parent.createFlag;
331 },
332 legendToggleFlagChange() {
333 return this.$parent.legendToggleFlag;
334 },
335 },
336 watch: {
337 createFlagChange: function(val) {
338 setTimeout(() => {
339 this.lpbContentWidth = this.$refs.lpbContent.offsetWidth -6;
340 }, 501);
341 },
342 legendToggleFlagChange: function(val) {
343 setTimeout(() => {
344 this.lpbContentWidth = this.$refs.lpbContent.offsetWidth -6;
345 }, 501);
346 },
347 },
348 };
349 </script>
350 <style scoped lang="less">
351 .lpbContent-wrap {
352 width: 100%;
353 height: 100%;
354 overflow: hidden;
355 position: relative;
356 .lpbContent {
357 width: 100%;
358 height: 100%;
359 position: relative;
360 overflow: scroll;
361 .ljz {
362 width: 500px;
363 height: 400px;
364 background-color: darkorange;
365 }
366 .zdy {
367 width: 1580px;
368 height: 200px;
369 background-color: rosybrown;
370 }
371 .ch {
372 width: 800px;
373 height: 200px;
374 background-color: rgb(165, 136, 62);
375 }
376 }
377 .zrz {
378 height: 60px;
379 line-height: 60px;
380 background-color: darkgoldenrod;
381 position: absolute;
382 bottom: 0;
383 text-align: center;
384 transition: 0.5s;
385 }
386 }
387 </style>
...@@ -39,25 +39,16 @@ ...@@ -39,25 +39,16 @@
39 </tr> 39 </tr>
40 </tbody> 40 </tbody>
41 </table> 41 </table>
42
43 <el-row :gutter="24">
44 <el-col :span="24">
45 <el-button type="primary" @click="submitForm('form')">立即创建</el-button>
46 </el-col>
47 </el-row>
48
49
50 </el-form> 42 </el-form>
51 </div> 43 </div>
52 </template> 44 </template>
53 45
54 <script> 46 <script>
55 47
56 import {insertZdyInfo} from "../../../../api/lpb" 48 import {insertZdyInfo} from "../../../../../api/lpb"
57 export default { 49 export default {
58 name: "index", 50 name: "index",
59 components: {}, 51 components: {},
60
61 data(){ 52 data(){
62 return{ 53 return{
63 form:{ 54 form:{
...@@ -112,6 +103,16 @@ ...@@ -112,6 +103,16 @@
112 } 103 }
113 }); 104 });
114 }, 105 },
106 reset(){
107 this.form = {
108 zdyh:'',
109 zdymc:'',
110 dscs:'',
111 dxcs:'',
112 zcs:'',
113 bz:'',
114 }
115 }
115 } 116 }
116 } 117 }
117 </script> 118 </script>
......