3a5d3667 by 任超
2 parents 0e6f741b ad9ee93d
1 <template>
2 <el-dialog :close-on-click-modal="false" title="户重新落宗" :visible.sync="isVisible" width="50%" @close="close"
3 :modal-append-to-body="false">
4 <div class="content">
5 <table>
6 <tr>
7 <td class="label">宗地:</td>
8 <td class="input">
9 <el-input placeholder="请选择宗地" v-model="zdxx" :disabled="true"></el-input>
10 </td>
11 <td>
12 <el-button type="primary" @click="xzzdVisible = true">选择宗地</el-button>
13 </td>
14 </tr>
15 <tr>
16 <td class="label">自然幢:</td>
17 <td class="input">
18 <el-select v-model="hcxlzData.zrzbsm" filterable placeholder="请选择" @change="zrzChange">
19 <el-option v-for="(item, index) in zrzList" :key="index" :label="item.label"
20 :value="item.bsm">
21 </el-option>
22 </el-select>
23 </td>
24 </tr>
25 <tr>
26 <td class="label">逻辑幢:</td>
27 <td class="input">
28 <el-select v-model="hcxlzData.ljzbsm" filterable placeholder="请选择" @change="ljzChange">
29 <el-option v-for="(item, index) in ljzList" :key="index" :label="item.ljzmc"
30 :value="item.bsm">
31 </el-option>
32 </el-select>
33 </td>
34 </tr>
35 <tr>
36 <td class="label">幢单元:</td>
37 <td class="input">
38 <el-select v-model="hcxlzData.zdybsm" filterable placeholder="请选择">
39 <el-option v-for="(item, index) in zdyList" :key="index" :label="item.zdymc"
40 :value="item.bsm">
41 </el-option>
42 </el-select>
43 </td>
44 </tr>
45 </table>
46 </div>
47 <div class="footer">
48 <el-button type="primary" @click="save">保存</el-button>
49 <el-button type="primary" @click="close">取消</el-button>
50 </div>
51 <!-- <zd-query-data :isCxlz=true :centerDialogVisible="xzzdVisible" @close="xzzdClose" @getData="getZdxx"
52 :isZdClose="true"></zd-query-data> -->
53 </el-dialog>
54 </template>
55
56 <script>
57 // import zdQueryData from '@/components/zdQueryData/zdQueryData'
58 // import { zdXlcd, hzl } from '@api/zd'
59 import { Message } from 'element-ui'
60 export default {
61 name: "hCxlz",
62 // components: { zdQueryData },
63 data () {
64 return {
65 zd: {},
66 zrz: {},
67 ljz: {},
68 zdy: {},
69 xzzdVisible: false,
70 isVisible: false,
71 zdxx: '', // 宗地信息
72 hcxlzData: {
73 bsms: [],
74 zrzbsm: '',
75 ljzbsm: '',
76 zdybsm: ''
77 },
78 total: 1,
79 zrzList: [],
80 ljzList: [],
81 zdyList: []
82 }
83 },
84 props: {
85 hCxlzVisble: {
86 type: Boolean,
87 default: false
88 },
89 bsms: {
90 type: Array
91 }
92 },
93 mounted () {
94 this.hcxlzData.bsms = this.bsms;
95 },
96 methods: {
97 ljzChange: function () {
98 const item = this.ljzList.find(i => i.bsm == this.hcxlzData.ljzbsm)
99 this.hcxlzData.zdybsm = ''
100 this.zdyList = item.list;
101 this.zdyList.push({
102 zdymc: '空',
103 bsm: ''
104 })
105 },
106 zrzChange: function () {
107 const item = this.zrzList.find(i => i.bsm === this.hcxlzData.zrzbsm);
108 this.hcxlzData.ljzbsm = '';
109 this.hcxlzData.zdybsm = '';
110 this.ljzList = item.ljzList;
111 this.ljzList.push({
112 ljzmc: '空',
113 bsm: ''
114 })
115 this.zdyList = item.zdyList;
116 this.zdyList.push({
117 zdymc: '空',
118 bsm: ''
119 })
120 },
121 getZrz: function (bsm) {
122 zdXlcd(bsm).then(res => {
123 if (res.success) {
124 this.zrzList = res.result;
125 this.xzzdClose();
126 } else {
127 Message.error(res.message)
128 }
129 })
130 },
131 getZdxx: function (val) {
132 this.zd = val
133 this.zdxx = val.xmmc + "(" + val.zddm + ")";
134 },
135 xzzdClose: function () {
136 this.xzzdVisible = false;
137 },
138 result: function () {
139 this.hcxlzData = {
140 zrzbsm: '',
141 ljzbsm: '',
142 zdybsm: ''
143 };
144 this.hcxlzData.bsms = this.bsms;
145 },
146 save () {
147 if (this.hcxlzData.zrzbsm === '') {
148 Message.error("请选择自然幢");
149 return;
150 }
151 hzl(this.hcxlzData).then(res => {
152 if (res.success) {
153 this.$router.push({
154 path: '/zrz',
155 query: {
156 bsm: this.hcxlzData.zrzbsm,
157 source: 2,
158 auth: '0,1,2'
159 }
160 })
161 } else {
162 Message.error(res.message)
163 }
164 });
165 },
166 close () {
167 this.$emit('close', false);
168 this.result();
169 },
170 },
171 watch: {
172 hCxlzVisble: function (val) {
173 this.isVisible = val
174 },
175 zd: function (val) {
176 this.hcxlzData.zrzbsm = '';
177 this.hcxlzData.zdybsm = '';
178 this.hcxlzData.ljzbsm = '';
179 this.getZrz(val.zdbsm)
180 }
181 }
182 }
183 </script>
184
185 <style scoped lang="scss">
186 .input-suffix {
187 input {
188 width: 210px;
189 height: 30px;
190 border-radius: 3px;
191 border-color: #BBB;
192 }
193 }
194
195 .content {
196 text-align: center;
197 }
198
199 table {
200 border-collapse: separate;
201 border-spacing: 10px;
202 display: inline-block;
203 text-align: center;
204
205 .label {
206 width: 60px;
207 font-size: 15px;
208 text-align: justify;
209 text-align-last: justify
210 }
211
212 .input {
213 width: 300px;
214
215 .el-select {
216 width: 300px;
217 }
218 }
219 }
220
221 .footer {
222 margin-top: 20px;
223 text-align: center;
224 }
225 </style>
1 <template>
2 <div>
3 <el-dialog :close-on-click-modal="false" title="移动户" :visible.sync="isVisible" width="50%" @close="close"
4 :modal-append-to-body="false">
5 <div>
6 <div class="bottom-radio">
7 <el-radio-group v-model="moveHdata.sxzylx">
8 <el-radio label="up">向上</el-radio>
9 <el-radio label="down">向下</el-radio>
10 <el-radio label="left">向左</el-radio>
11 <el-radio label="right">向右</el-radio>
12 </el-radio-group>
13 </div>
14 <div class="bottom-buttom">
15 <el-button type="primary" @click="save">确认</el-button>
16 <el-button type="primary" @click="cacel">取消</el-button>
17 </div>
18 </div>
19 </el-dialog>
20 </div>
21 </template>
22
23 <script>
24 // import { moveH } from '@api/lpb'
25 import { Message } from 'element-ui'
26
27 export default {
28 name: "moveH",
29 data () {
30 return {
31 isVisible: false,
32 moveHdata: {
33 hbsm: "",
34 sxzylx: "",
35 type: ""
36 }
37 }
38 },
39 props: {
40 moveHvisible: {
41 type: Boolean,
42 default: false
43 },
44 hbsm: {
45 type: String
46 },
47 type: {
48 type: String
49 }
50 },
51 methods: {
52 loading: function () {
53 this.$emit('loading')
54 },
55 save () {
56 this.moveHdata.hbsm = this.hbsm
57 this.moveHdata.type = this.type
58 // moveH(this.moveHdata).then(res => {
59 // console.log(res)
60 // if (res.success) {
61 // this.loading();
62 // this.close();
63 // Message.success("移动成功")
64 // } else {
65 // Message.error(res.message)
66 // }
67 // })
68 },
69 cacel () {
70 this.close()
71 },
72 close () {
73 this.$emit('close');
74 }
75 },
76 watch: {
77 moveHvisible (val) {
78 this.isVisible = val
79 }
80 }
81 }
82 </script>
83
84 <style scoped lang="scss">
85 .bottom-radio {
86 text-align: center;
87 }
88
89 .el-radio {
90 padding: 20px;
91 }
92
93 .bottom-buttom {
94 margin-top: 20px;
95 text-align: center;
96 }
97 </style>
1 <template>
2 <div>
3 <el-dialog :close-on-click-modal="false" title="批量层" :visible.sync="isVisible" width="50%" @close="close"
4 :modal-append-to-body="false">
5 <div>
6 <table border="1">
7 <tr>
8 <td class="tdright">层建筑面积(㎡)</td>
9 <td>
10 <el-input v-model="qlcData.cjzmj"
11 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
12 </td>
13 <td class="tdright">
14 层套内建筑面积(㎡)
15 </td>
16 <td>
17 <el-input v-model="qlcData.ctnjzmj"
18 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
19 </td>
20 </tr>
21 <tr>
22 <td class="tdright">层阳台面积(㎡)</td>
23 <td>
24 <el-input v-model="qlcData.cytmj" class=""
25 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
26 </td>
27 <td class="tdright">
28 层半墙面积(㎡)
29 </td>
30 <td>
31 <el-input v-model="qlcData.cbqmj" class=""
32 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
33 </td>
34 </tr>
35 <tr>
36 <td class="tdright">层共有建筑面积(㎡)</td>
37 <td>
38 <el-input v-model="qlcData.cgyjzmj" class=""
39 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
40 </td>
41 <td class="tdright">
42 层分摊建筑面积(㎡)
43 </td>
44 <td>
45 <el-input v-model="qlcData.cftjzmj" class=""
46 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"
47 placeholder="层分摊建筑面积(㎡)"></el-input>
48 </td>
49 </tr>
50 <tr>
51 <td class="tdright">层高(m)</td>
52 <td>
53 <el-input v-model="qlcData.cg" class=""
54 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null" placeholder="层高(m)">
55 </el-input>
56 </td>
57 <td class="tdright">
58 水平投影面积(㎡)
59 </td>
60 <td>
61 <el-input v-model="qlcData.sptymj" class=""
62 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null" placeholder="水平投影面积(㎡)">
63 </el-input>
64 </td>
65 </tr>
66 </table>
67 </div>
68 <div class="shop">
69 <el-button type="primary" @click="save">保存</el-button>
70 <el-button type="primary" @click="result" icon="el-icon-refresh">重置</el-button>
71 <el-button type="primary" @click="cancel">取消</el-button>
72 </div>
73 </el-dialog>
74 </div>
75 </template>
76
77 <script>
78 // import { updatePlc } from '@api/zrz'
79 export default {
80 name: "plC",
81 data () {
82 return {
83 isVisible: false,
84 qlcData: {
85 cbqmj: '', // 层半墙面积
86 cftjzmj: '', // 层分摊建筑面积
87 cg: '', // 层高
88 cgyjzmj: '', // 层共有建筑面积
89 cjzmj: '', // 层建筑面积
90 ctnjzmj: '', // 层套内建筑面积
91 cytmj: '', // 层阳台面积
92 sptymj: '' // 水平投影面积
93 }
94 }
95 },
96 props: {
97 bsms: {
98 type: Array,
99 },
100 plcVisible: {
101 type: Boolean,
102 default: function () {
103 return false
104 }
105 }
106 },
107 methods: {
108 lodding: function () {
109 this.$emit('lodding')
110 },
111 save: function () {
112 this.qlcData['bsms'] = this.bsms
113 // updatePlc(this.qlcData).then(res => {
114 // if (res.success) {
115 // Message.success("保存成功")
116 // this.lodding()
117 // this.close()
118 // } else {
119 // Message.error(res.message)
120 // }
121 // })
122 },
123 close: function () {
124 this.$emit('close')
125 this.isVisible = false
126 this.result()
127 },
128 cancel: function () {
129 this.$emit('close')
130 this.isVisible = false
131 },
132 result: function () {
133 this.qlcData = {
134 cbqmj: '', // 层半墙面积
135 cftjzmj: '', // 层分摊建筑面积
136 cg: '', // 层高
137 cgyjzmj: '', // 层共有建筑面积
138 cjzmj: '', // 层建筑面积
139 ctnjzmj: '', // 层套内建筑面积
140 cytmj: '', // 层阳台面积
141 sptymj: '' // 水平投影面积
142 }
143 }
144 },
145 watch: {
146 plcVisible (val) {
147 this.isVisible = val
148 }
149 }
150 }
151 </script>
152
153 <style scoped>
154 table {
155 margin-top: 10px;
156 background-color: #fff;
157 font-size: 14px;
158 width: 100%;
159 }
160
161 td {
162 text-align: center;
163 height: 36px;
164 min-width: 50px;
165 }
166
167 table:hover {
168 cursor: pointer;
169 }
170
171 .inputtitle {
172 line-height: 41px;
173 width: 95%;
174 border: none;
175 height: 98%;
176 outline: none;
177 }
178
179
180 .shop {
181 margin-top: 20px;
182 text-align: center;
183 }
184 </style>
1 <template>
2 <div class="">
3 <el-dialog :close-on-click-modal="false" title="批量室号" :visible.sync="isVisible" width="50%" @close="close"
4 :modal-append-to-body="false">
5 <div>
6 <table border="1">
7 <tr>
8 <th>室号前缀</th>
9 <th>幢单元号</th>
10 <th>分割符A</th>
11 <th>层号前自动补0</th>
12 <th>层号</th>
13 <th>分割符B</th>
14 <th>户号前自动补零</th>
15 <th>户号</th>
16 <th>室号后缀</th>
17 </tr>
18 <tr>
19 <td>
20 <el-input v-model="plshData.shqz"></el-input>
21 </td>
22 <td>
23 <el-checkbox v-model="plshData.selectDyh"></el-checkbox>
24 </td>
25 <td>
26 <el-input v-model="plshData.fgfA"></el-input>
27 </td>
28 <td>
29 <el-checkbox v-model="plshData.chqbl"></el-checkbox>
30 </td>
31 <td>
32 <el-select v-model="plshData.c">
33 <el-option v-for="i in cs" :key="i.key" :label="i.label" :value="i.value"></el-option>
34 </el-select>
35 </td>
36 <td>
37 <el-input v-model="plshData.fgfB"></el-input>
38 </td>
39 <td>
40 <el-checkbox v-model="plshData.hhqbl"></el-checkbox>
41 </td>
42 <td>
43 </td>
44 <td>
45 <el-input v-model="plshData.shhz"></el-input>
46 </td>
47 </tr>
48 </table>
49 <div class="gz">
50 <span>室号规则:{{ gz }}</span>
51 </div>
52 <div class="xlgz">
53 <span>
54 样例1:1011 <span>(1单元01层01室)</span>([单元号][层号],勾选“层号自动补0”)
55 <br />
56 样例2:1131室<span>(1单元13层01室)</span>([单元号][层号][后缀],后缀填写'室')
57 <br />
58 样例3:101<span>(1层01室)</span>([层号],勾选“户号自动补0”)
59 <br />
60 样例4:1-011<span>(1单元-01层01室)</span>([单元号][分隔符A][层号],勾选“层号自动补0”)
61 <br />
62 样例5:1-12-1<span>(1单元12层01室)</span>([单元号][分隔符A][层号][分隔符B])
63 <br />
64 样例6:1-12<span>(1层12室)</span>([层号][分隔符B])
65 </span>
66 </div>
67 </div>
68 <div class="shop">
69 <el-button type="primary" @click="save">保存</el-button>
70 <el-button type="primary" @click="result" icon="el-icon-refresh">重置</el-button>
71 <el-button type="primary" @click="cancel">取消</el-button>
72 </div>
73 </el-dialog>
74 </div>
75 </template>
76
77 <script>
78 // import { updateSh } from '@api/zrz'
79 import { Message } from 'element-ui'
80
81 export default {
82 name: "plSh",
83 props: {
84 plShVisible: {
85 type: Boolean,
86 default: false
87 },
88 bsms: {
89 type: Array
90 }
91 },
92 data () {
93 return {
94 isVisible: false,
95 plshData: {
96 shqz: '',
97 selectDyh: false,
98 fgfA: '',
99 chqbl: false,
100 c: '',
101 fgfB: '',
102 hhqbl: false,
103 shhz: ''
104 },
105 cs: [
106 {
107 key: '1',
108 label: '名义层',
109 value: '1'
110 }, {
111 key: '2',
112 label: '实际层',
113 value: '2'
114 }, {
115 key: '3',
116 label: '空',
117 value: '3'
118 }
119 ]
120 }
121 },
122 methods: {
123 test: function () {
124 for (let key in this.plshData) {
125 if (key === 'chqbl') {
126 continue;
127 }
128 if (this.plshData[key] !== '' && this.plshData[key] !== '3' && this.plshData[key] !== false) {
129 return true;
130 }
131 }
132 return false;
133 },
134 lodding: function () {
135 this.$emit('lodding')
136 },
137 close: function () {
138 this.$emit("close")
139 this.isVisible = false
140 this.result();
141 },
142 result: function () {
143 this.plshData = {
144 shqz: '',
145 selectDyh: false,
146 fgfA: '',
147 chqbl: false,
148 hhqbl: false,
149 c: '',
150 fgfB: '',
151 shhz: ''
152 }
153 },
154 save: function () {
155 if (!this.test()) {
156 this.$message.info("请选择")
157 return;
158 }
159 this.plshData['bsms'] = this.bsms
160 // updateSh(this.plshData).then(res => {
161 // if (res.success) {
162 // this.lodding();
163 // this.close();
164
165 // } else {
166 // Message.error(res.message)
167 // }
168 // })
169 },
170 cancel: function () {
171 this.close()
172 }
173 },
174 computed: {
175 gz: function () {
176 let gz = "";
177 if (this.plshData.shqz !== "") {
178 gz += this.plshData.shqz
179 }
180 if (this.plshData.selectDyh) {
181 gz += "[单元号]"
182 }
183 if (this.plshData.fgfA !== "") {
184 gz += this.plshData.fgfA
185 }
186 if (+this.plshData.c === 1) {
187 gz += "[名义层]"
188 } else if (+this.plshData.c === 2) {
189 gz += "[实际层]"
190 }
191 if (this.plshData.fgfB !== "") {
192 gz += this.plshData.fgfB
193 }
194 gz += "[户号]";
195 if (this.plshData.shhz !== "") {
196 gz += this.plshData.shhz
197 }
198 return gz;
199 }
200 },
201 watch: {
202 plShVisible: function (val) {
203 this.isVisible = val
204 }
205 }
206 }
207 </script>
208
209 <style scoped lang="scss">
210 table {
211 margin-top: 10px;
212 background-color: #fff;
213 font-size: 14px;
214 width: 100%;
215
216 :hover {
217 cursor: pointer;
218 }
219 }
220
221 th {
222 height: 36px;
223 }
224
225 td {
226 text-align: center;
227 height: 36px;
228 min-width: 60px;
229 }
230
231 .xl {
232 color: blue;
233 float: right;
234 }
235
236 .xl:hover {
237 cursor: pointer;
238 }
239
240 .inputtitle {
241 line-height: 38px;
242 width: 90%;
243 border: none;
244 outline: none;
245 }
246
247 .shop {
248 text-align: center;
249 margin-top: 20px;
250 }
251
252 .gz {
253 color: #b2b2b2;
254 font-size: 14px;
255 margin-top: 40px;
256 }
257
258 .xlgz {
259 span {
260 font-size: 16px;
261 line-height: 22px;
262
263 span {
264 color: red;
265 }
266 }
267 }
268 </style>
1 <template>
2 <div>
3 <el-dialog :close-on-click-modal="false" title="批量坐落" :visible.sync="isVisible" width="60%" @close="close"
4 :modal-append-to-body="false">
5 <div>
6 <table border="1">
7 <tr>
8 <th>前缀</th>
9 <th>宗地</th>
10 <th>自然幢</th>
11 <th>逻辑幢</th>
12 <th>幢单元</th>
13 <th></th>
14 <th></th>
15 <th>后缀</th>
16 </tr>
17 <tr>
18 <td>
19 <el-input v-model="plzlData.qz"></el-input>
20 </td>
21 <td>
22 <el-select v-model="plzlData.zd">
23 <el-option v-for="i in zdgz" :key="i.label" :label="i.label" :value="i.value"
24 :disabled="i.disabled">
25 </el-option>
26 </el-select>
27 </td>
28 <td>
29 <el-select v-model="plzlData.zrz">
30 <el-option v-for="i in zrzgz" :key="i.label" :label="i.label" :value="i.value"
31 :disabled="i.disabled">
32 </el-option>
33 </el-select>
34 </td>
35 <td>
36 <el-select v-model="plzlData.ljz">
37 <el-option v-for="i in ljzgz" :key="i.label" :label="i.label" :value="i.value">
38
39 </el-option>
40 </el-select>
41 </td>
42 <td>
43 <el-select v-model="plzlData.zdy">
44 <el-option v-for="i in zdygz" :key="i.label" :label="i.label" :value="i.value">
45
46 </el-option>
47 </el-select>
48 </td>
49 <td>
50 <el-select v-model="plzlData.c">
51 <el-option v-for="i in cgz" :key="i.label" :label="i.label" :value="i.value">
52
53 </el-option>
54 </el-select>
55 </td>
56 <td>
57 <el-select v-model="plzlData.h">
58 <el-option v-for="i in hgz" :key="i.label" :label="i.label" :value="i.value">
59
60 </el-option>
61 </el-select>
62 </td>
63 <td>
64 <el-input v-model="plzlData.hz"></el-input>
65 </td>
66 </tr>
67 </table>
68 <div class="gz">
69 <span>户坐落规则:{{ gz }}</span>
70 </div>
71 </div>
72 <div class="shop">
73 <el-button type="primary" @click="save">保存</el-button>
74 <el-button type="primary" @click="result" icon="el-icon-refresh">重置</el-button>
75 <el-button type="primary" @click="close">取消</el-button>
76 </div>
77 </el-dialog>
78 </div>
79 </template>
80
81 <script>
82 // import { updateZl } from '@api/zrz'
83 import { Message } from 'element-ui'
84
85 export default {
86 name: "plZl",
87 props: {
88 plZlVisible: {
89 type: Boolean,
90 default: false
91 },
92 bsms: {
93 type: Array
94 }
95 },
96 data () {
97 return {
98 isVisible: false,
99 plzlData: {
100 qz: '',
101 zd: '3',
102 zrz: '3',
103 ljz: '3',
104 zdy: '3',
105 c: '3',
106 h: '3',
107 hz: ''
108 },
109 zdgz: [
110 {
111 label: '宗地坐落',
112 value: '1',
113 disabled: false
114 }, {
115 label: "宗地名称",
116 value: '2',
117 disabled: false
118 }, {
119 label: "空",
120 value: '3',
121 disabled: false
122 }
123 ],
124 zrzgz: [
125 {
126 label: '自然幢坐落',
127 value: '1',
128 disabled: false
129 }, {
130 label: "自然幢名称",
131 value: '2',
132 disabled: false
133 }, {
134 label: "空",
135 value: '3'
136 }
137 ],
138 ljzgz: [
139 {
140 label: '逻辑幢名称',
141 value: '1'
142 }, {
143 label: "逻辑幢号",
144 value: '2'
145 }, {
146 label: "空",
147 value: '3'
148 }
149 ],
150 zdygz: [
151 {
152 label: '幢单元名称',
153 value: '1'
154 }, {
155 label: "幢单元号",
156 value: '2'
157 }, {
158 label: "空",
159 value: '3'
160 }
161 ],
162 cgz: [
163 {
164 key: '1',
165 label: '名义层',
166 value: '1'
167 }, {
168 key: '2',
169 label: '实际层',
170 value: '2'
171 }, {
172 label: "空",
173 value: '3'
174 }
175 ],
176 hgz: [
177 {
178 key: '1',
179 label: '室号',
180 value: '1'
181 }, {
182 key: '2',
183 label: '户号',
184 value: '2'
185 }, {
186 label: "空",
187 value: '3'
188 }
189 ]
190 }
191 },
192 methods: {
193 lodding: function () {
194 this.$emit('lodding')
195 },
196 save: function () {
197 if (!this.test()) {
198 this.$message.info("请选择")
199 return;
200 }
201 this.plzlData['bsms'] = this.bsms;
202 // updateZl(this.plzlData).then(res => {
203 // if (res.success) {
204 // this.lodding()
205 // this.close();
206 // } else {
207 // Message.error(res.message)
208 // }
209 // })
210 },
211 test: function () {
212 for (let key in this.plzlData) {
213 if (this.plzlData[key] !== '' && this.plzlData[key] !== '3') {
214 return true;
215 }
216 }
217 return false;
218 },
219 cancel: function () {
220 this.close();
221 },
222 close: function () {
223 this.$emit("close")
224 this.isVisible = false
225 this.result();
226 },
227 result: function () {
228 this.plzlData = {
229 qz: '',
230 zd: '',
231 zrz: '',
232 ljz: '',
233 zdy: '',
234 c: '',
235 h: '',
236 hz: ''
237 }
238 }
239 },
240 computed: {
241 gz: function () {
242 // [前缀][宗地][自然幢][单元][室号][室号][后缀]
243 let gz = "";
244 if (this.plzlData.qz !== '') {
245 gz += this.plzlData.qz
246 }
247 if (+this.plzlData.zd === 1) {
248 gz += "[宗地坐落]";
249 } else if (+this.plzlData.zd === 2) {
250 gz += "[宗地名称]";
251 }
252
253 if (+this.plzlData.zrz === 1) {
254 gz += "[自然幢坐落]"
255 } else if (+this.plzlData.zrz === 2) {
256 gz += "[自然幢名称]";
257 }
258 if (+this.plzlData.ljz === 1) {
259 gz += "[逻辑幢名称]"
260 } else if (+this.plzlData.ljz === 2) {
261 gz += "[逻辑幢号]"
262 }
263 if (+this.plzlData.zdy === 1) {
264 gz += "[幢单元名称]";
265 } else if (+this.plzlData.zdy === 2) {
266 gz += "[幢单元号]"
267 }
268 if (+this.plzlData.c === 1) {
269 gz += "[名义层]"
270 } else if (+this.plzlData.c === 2) {
271 gz += "[实际层]"
272 }
273 if (+this.plzlData.h === 1) {
274 gz += "[室号]"
275 } else if (+this.plzlData.h === 2) {
276 gz += "[户号]"
277 }
278 if (this.plzlData.hz !== "") {
279 gz += this.plzlData.hz
280 }
281 if (gz === "") {
282 gz += "无"
283 }
284 return gz;
285 }
286 },
287 watch: {
288 plZlVisible: function (val) {
289 this.isVisible = val
290 },
291 plzlData: {
292 handler (val) {
293 this.zrzgz[0].disabled = +val.zd === 1;
294 this.zdgz[0].disabled = +val.zrz === 1;
295 },
296 deep: true
297 }
298 }
299 }
300 </script>
301
302 <style scoped lang="scss">
303 table {
304 margin-top: 10px;
305 background-color: #fff;
306 font-size: 14px;
307 width: 100%;
308
309 :hover {
310 cursor: pointer;
311 }
312 }
313
314 th {
315 height: 36px;
316 }
317
318 td {
319 text-align: center;
320 height: 36px;
321 min-width: 60px;
322 }
323
324 .xl {
325 color: blue;
326 float: right;
327 }
328
329 .xl:hover {
330 cursor: pointer;
331 }
332
333 .inputtitle {
334 line-height: 38px;
335 width: 90%;
336 border: none;
337 outline: none;
338 }
339
340 .shop {
341 text-align: center;
342 margin-top: 20px;
343 }
344
345 .gz {
346 color: #b2b2b2;
347 font-size: 12px;
348 margin-top: 40px;
349 }
350
351 .xlgz {
352 span {
353 font-size: 16px;
354 line-height: 22px;
355
356 span {
357 color: red;
358 }
359 }
360 }
361 </style>
...@@ -182,81 +182,19 @@ ...@@ -182,81 +182,19 @@
182 <el-checkbox v-model="zrzChecked" @change='lpbSelectAll'>{{ lpbData.xmmc }}</el-checkbox> 182 <el-checkbox v-model="zrzChecked" @change='lpbSelectAll'>{{ lpbData.xmmc }}</el-checkbox>
183 </div> 183 </div>
184 </div> 184 </div>
185 <ul v-show="lpbChVisible" :style="{ left: lpbChLeft + 'px', top: lpbChTop + 'px' }" class="contextmenu">
186 <li v-show="rightClickFlag == 'h'" @click="handleAddH">添加</li>
187 <li v-show="rightClickFlag == 'h'" @click="handleMoveH">移动</li>
188 <li v-show="rightClickFlag == 'h'" @click="handleSyczh">实预测转换</li>
189 <li v-show="rightClickFlag == 'c'" @click="handleAddC('up')">
190 向上添加层
191 </li>
192 <li v-show="rightClickFlag == 'c'" @click="handleAddC('down')">
193 向下添加层
194 </li>
195 <li v-show="rightClickFlag == 'c'" @click="handleDeleteC">删除层</li>
196 <!-- 合并 -->
197 <li v-show="rightClickFlag == 'hb'" :class="canHb != 'zyhb' ? 'cantHb' : ''" @click="handleHb('zyhb')">左右合并</li>
198 <li v-show="rightClickFlag == 'hb'" :class="canHb != 'sxhb' ? 'cantHb' : ''" @click="handleHb('sxhb')">上下合并</li>
199 <!-- 分割 -->
200 <li v-show="rightClickFlag == 'fg'" @click="handleFg">户分割</li>
201 <!-- 范围属性变更 -->
202 <li v-show="rightClickFlag == 'fwsxbg'" @click="handleFwsxbg">变更信息</li>
203 <!-- 重新落宗 -->
204 <li v-show="rightClickFlag == 'cxlz'" @click="handleCxlz">重新落宗</li>
205
206
207 </ul>
208 <!-- 层操作弹框 -->
209 <el-dialog :close-on-click-modal="false" :title="addCData.title" :visible.sync="addCVisible" width="50%">
210 <el-form :model="addCData">
211 <el-form-item label="层号" :label-width="formLabelWidth">
212 <el-input disabled v-model="addCData.sjc" autocomplete="off"></el-input>
213 </el-form-item>
214 <el-form-item label="实际层" :label-width="formLabelWidth">
215 <el-input disabled v-model="addCData.sjc" autocomplete="off"></el-input>
216 </el-form-item>
217 <el-form-item label="添加的户数" :label-width="formLabelWidth">
218 <el-input v-model="addCData.hcount" autocomplete="off"></el-input>
219 </el-form-item>
220 </el-form>
221 <div class="btnGroup">
222 <el-button type="primary" @click="saveAddC">保存</el-button>
223 <el-button type="primary" @click="addCVisible = false">取消</el-button>
224 </div>
225 </el-dialog>
226 <!-- 户分割弹框 -->
227 <el-dialog :close-on-click-modal="false" title="户分割" :visible.sync="hfgDialogVisible" width="800px">
228 <el-form :model="fgData">
229 <el-form-item label="分割户数" required="" :label-width="formLabelWidth">
230 <el-input :disabled="fgData.fgfx != 0" v-model="fgData.fghs" autocomplete="off"></el-input>
231 </el-form-item>
232 </el-form>
233 <div class="btnGroup">
234 <el-button type="primary" @click="savefgData">保存</el-button>
235 <el-button type="primary" @click="hfgDialogVisible = false">取消</el-button>
236 </div>
237 </el-dialog>
238 <move-h :hbsm="chData.bsm" @close="moveHClose" :move-hvisible="moveHvisible" :type="scyclx"
239 @loading="loadingData($store.state.zrzbsm, $parent.scyclx)"></move-h>
240 <!-- 双击户的弹出框 --> 185 <!-- 双击户的弹出框 -->
241 <el-dialog :close-on-click-modal="false" title="户编辑" class="hbjDialog" :visible.sync="hbjVisible" width="80%"> 186 <el-dialog :close-on-click-modal="false" title="户编辑" class="hbjDialog" :visible.sync="hbjVisible" width="80%">
242 <hbj ref="hbj" :bsm="hbsm" :scyclx="scyclx" :lpbParent="lpbParent"></hbj> 187 <hbj ref="hbj" :bsm="hbsm" :scyclx="scyclx" :lpbParent="lpbParent"></hbj>
243 </el-dialog> 188 </el-dialog>
244 <!-- 户重新落宗 -->
245 <h-cxlz :h-cxlz-visble="hcxlzVisible" :bsms="hbsmList" @close="hcxlzVisible = false"></h-cxlz>
246 </div> 189 </div>
247 </template> 190 </template>
248 <script> 191 <script>
249 import moveH from "@/components/moveH/moveH";
250 import HCxlz from "@/components/hCxlz/hCxlz";
251 import { getLpb } from '@/api/lpb' 192 import { getLpb } from '@/api/lpb'
252 // import { getLpb, insertUpDownC, deleteCByBsm } from "@api/lpb";
253 // import { hhb, hfg } from "@api/h";
254 import { Message } from 'element-ui'; 193 import { Message } from 'element-ui';
255 // import { fwsxbgbl } from "@api/common";
256 import hbj from "../hbj/lpb-hbj/index"; 194 import hbj from "../hbj/lpb-hbj/index";
257 export default { 195 export default {
258 name: "", 196 name: "",
259 components: { moveH, hbj, HCxlz, }, 197 components: { hbj },
260 props: { 198 props: {
261 zrzbsm: { 199 zrzbsm: {
262 type: String, 200 type: String,
...@@ -273,14 +211,12 @@ export default { ...@@ -273,14 +211,12 @@ export default {
273 }, 211 },
274 data () { 212 data () {
275 return { 213 return {
276 moveHvisible: false,
277 lpbData: { 214 lpbData: {
278 ljzs: [], 215 ljzs: [],
279 cs: [], 216 cs: [],
280 zdys: [], 217 zdys: [],
281 }, 218 },
282 hbjVisible: false, 219 hbjVisible: false,
283 hcxlzVisible: false,
284 lpbContentWidth: 0, 220 lpbContentWidth: 0,
285 ljzWidth: 10000, 221 ljzWidth: 10000,
286 zdyWidth: 1000, 222 zdyWidth: 1000,
...@@ -391,10 +327,6 @@ export default { ...@@ -391,10 +327,6 @@ export default {
391 } 327 }
392 // console.log("查询searchNum" + searchNum); 328 // console.log("查询searchNum" + searchNum);
393 }, 329 },
394 //接收范围属性变更传入的hbsm
395 getFwsxbgHbsm (bsm) {
396 this.hbsmList.push(bsm);
397 },
398 //自然幢下元素高度宽度计算 330 //自然幢下元素高度宽度计算
399 dataChange () { 331 dataChange () {
400 //计算逻辑幢宽度 20为marginRight值 332 //计算逻辑幢宽度 20为marginRight值
...@@ -674,184 +606,7 @@ export default { ...@@ -674,184 +606,7 @@ export default {
674 closeMenu () { 606 closeMenu () {
675 this.lpbChVisible = false; 607 this.lpbChVisible = false;
676 }, 608 },
677 //户右键菜单 start
678 handleAddH () { },
679 handleMoveH () {
680 // 移动户
681 console.log(this.$parent.scyclx, "实预测类型");
682 this.moveHvisible = true;
683 },
684 moveHClose () {
685 this.moveHvisible = false;
686 },
687 handleDeleteH () { },
688 handleSyczh () { },
689 //end 609 //end
690 // 层右键菜单 start
691 //添加
692 handleAddC (type) {
693 this.addCData.title = type == "up" ? "向上添加层" : "向下添加层";
694 this.addCVisible = true;
695 this.addCData.sjc =
696 type == "up"
697 ? Number(this.chData.sjc) + 1
698 : Number(this.chData.sjc) - 1;
699 this.addCData.cbsm = this.chData.bsm;
700 this.addCData.scyclx = this.$parent.scyclx;
701 },
702 //删除
703 handleDeleteC () {
704 let params = {
705 cbsm: this.chData.bsm,
706 scyclx: this.$parent.scyclx,
707 };
708 this.$confirm("是否确认删除该层?", "提示", {
709 confirmButtonText: "确定",
710 cancelButtonText: "取消",
711 type: "warning",
712 })
713 .then(() => {
714 deleteCByBsm(params).then((res) => {
715 if (res.code == 200) {
716 this.$message({
717 message: "删除成功",
718 type: "success",
719 });
720 this.getLpb(this.$store.state.zrzbsm, this.$parent.scyclx);
721 } else {
722 this.$message({
723 message: res.message,
724 type: "warning",
725 });
726 }
727 })
728 })
729 .catch(() => { });
730 },
731 //确认添加
732 saveAddC () {
733 insertUpDownC(this.addCData).then((res) => {
734 if (res.code == 200) {
735 this.$message({
736 message: "添加成功",
737 type: "success",
738 });
739 this.getLpb(this.$store.state.zrzbsm, this.$parent.scyclx);
740 this.addCVisible = false;
741 } else {
742 this.$message({
743 message: res.message,
744 type: "warning"
745 })
746 }
747 })
748 },
749 //户合并
750 handleHb (type) {
751 let olbBsms = '';
752 this.hbsmList.forEach((item, index) => {
753 olbBsms += index < this.hbsmList.length - 1 ? item + ',' : item
754 })
755 if (type == this.canHb) {
756 this.$confirm("是否确认合并选中户?", "提示", {
757 confirmButtonText: "确定",
758 cancelButtonText: "取消",
759 type: "warning",
760 })
761 .then(() => {
762 //确定合并 调用合并接口 this.hbsmList为选中户bsm数组 TO DO
763 let params = {
764 "newuserbsm": "",
765 "oldBsms": olbBsms,
766 "scyclx": this.$parent.scyclx,
767 "ljzbsm": this.fghbChoosedList[0].ljzbsm,
768 "zdybsm": this.fghbChoosedList[0].zdybsm,
769 "zrzbsm": this.fghbChoosedList[0].zrzbsm
770 }
771 // hhb(params).then((res) => {
772 // vm.loadingHide();
773 // if (res.code == 200) {
774 // Message.success('合并成功');
775 // // 清除选中户
776 // this.clearChoosedH();
777 // this.fghbChoosedList = [];
778 // // 更新楼盘表
779 // this.getLpb(this.zrzbsm, this.$parent.scyclx);
780 // } else {
781 // Message.error(res.message);
782 // }
783 // })
784 // .catch((error) => {
785 // vm.loadingHide();
786 // console.log(error);
787 // });
788 })
789 .catch(() => { });
790 } else {
791
792 }
793 },
794 //户分割
795 handleFg () {
796 this.hfgDialogVisible = true;
797 },
798 //户分割保存
799 savefgData () {
800 // hfg(this.fgData).then((res) => {
801 // vm.loadingHide();
802 // if (res.code == 200) {
803 // Message.success('分割成功');
804 // // 清除选中户
805 // this.hfgDialogVisible = false
806 // this.clearChoosedH();
807 // this.fghbChoosedList = [];
808 // // 更新楼盘表
809 // this.getLpb(this.zrzbsm, this.$parent.scyclx);
810 // } else {
811 // Message.error(res.message);
812 // }
813 // })
814 // .catch((error) => {
815 // vm.loadingHide();
816 // console.log(error);
817 // });
818 },
819 //范围属性变更
820 handleFwsxbg () {
821 let params = { bsm: this.chData.bsm, type: 'h' };
822 this.$confirm('是否确定范围属性变更?', '提示', {
823 confirmButtonText: '确定',
824 cancelButtonText: '取消',
825 type: 'warning'
826 }).then(() => {
827 // fwsxbgbl(params)
828 // .then((res) => {
829 // if (res.code == 200) {
830 // this.$message({
831 // message: '变更成功',
832 // type: "success",
833 // });
834 // this.getLpb(this.zrzbsm, this.scyclx);
835 // } else {
836 // this.$message({
837 // message: res.message,
838 // type: "warning",
839 // })
840 // }
841 // }).catch((error) => {
842
843 // });
844 }).catch(() => {
845
846 });
847 },
848 //户重新落宗
849 handleCxlz () {
850 if (this.hbsmList.indexOf(this.chData.bsm) == -1) {
851 this.hbsmList.push(this.chData.bsm);
852 }
853 this.hcxlzVisible = true
854 },
855 //楼盘表户全选 610 //楼盘表户全选
856 lpbSelectAll (val) { 611 lpbSelectAll (val) {
857 if (val) { 612 if (val) {
......
...@@ -198,7 +198,7 @@ export default { ...@@ -198,7 +198,7 @@ export default {
198 this.bdcdysz = val 198 this.bdcdysz = val
199 }, 199 },
200 handleLpbClick (item) { 200 handleLpbClick (item) {
201 this.$popup('楼盘表', 'components/bjlp/index', { 201 this.$popup('楼盘表', 'lpb/index', {
202 width: '85%', 202 width: '85%',
203 formData: { 203 formData: {
204 bsm: item.bsm 204 bsm: item.bsm
......
...@@ -114,7 +114,7 @@ export default { ...@@ -114,7 +114,7 @@ export default {
114 }); 114 });
115 }, 115 },
116 handleLpbClick (item) { 116 handleLpbClick (item) {
117 this.$popup('楼盘表', 'components/bjlp/index', { 117 this.$popup('楼盘表', 'lpb/index', {
118 width: '90%', 118 width: '90%',
119 height: "92%", 119 height: "92%",
120 formData: { 120 formData: {
......
...@@ -96,11 +96,11 @@ export default { ...@@ -96,11 +96,11 @@ export default {
96 //打开楼盘表 96 //打开楼盘表
97 openlpbClick (scope) { 97 openlpbClick (scope) {
98 // var zrzbsm = scope.row.bsm; 98 // var zrzbsm = scope.row.bsm;
99 this.$popup('楼盘表', 'components/bjlp/index', { 99 this.$popup('楼盘表', 'lpb/index', {
100 width: '90%', 100 width: '90%',
101 height: "92%", 101 height: "92%",
102 formData: { 102 formData: {
103 bsm: '' 103 bsm: scope.row.bsm
104 } 104 }
105 }) 105 })
106 // getLpb({ zrzbsm: zrzbsm }) 106 // getLpb({ zrzbsm: zrzbsm })
......