312b6237 by “miaofang
2 parents 9925597f 6f80a4bd
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
4 * @Author: sakuya 4 * @Author: sakuya
5 * @Date: 2021年6月10日10:04:07 5 * @Date: 2021年6月10日10:04:07
6 * @LastEditors: Please set LastEditors 6 * @LastEditors: Please set LastEditors
7 * @LastEditTime: 2023-11-07 09:23:12 7 * @LastEditTime: 2023-11-07 10:04:18
8 --> 8 -->
9 9
10 <template> 10 <template>
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2024-02-01 08:52:00 4 * @LastEditTime: 2024-02-01 16:27:16
5 */ 5 */
6 import { getUserInfo } from '@/api/user' 6 import { getUserInfo } from '@/api/user'
7 const state = { 7 const state = {
......
...@@ -387,9 +387,6 @@ ...@@ -387,9 +387,6 @@
387 justify-content: center; 387 justify-content: center;
388 align-items: center; 388 align-items: center;
389 } 389 }
390 height: 45px;
391 border: 1px solid rgb(228, 228, 228);
392 border-right: 4px solid #f5f5f5;
393 } 390 }
394 391
395 .select { 392 .select {
......
1 <!--
2 * @Description: 审批意见
3 * @Autor: renchao
4 * @LastEditTime: 2023-08-16 14:39:55
5 -->
6 <template>
7 <div class="spyj loadingtext">
8 <div class="box">
9 <div class="spyj_title">
10 <div class="righttitle">审批表</div>
11 </div>
12
13 <div v-for="(item, index) in tableData" :key="index">
14 <el-form
15 :model="tableData[index]"
16 label-width="120px"
17 ref="ruleForm'"
18 >
19 <div class="spyj_form">
20 <div class="item_left">
21 <div class="right">{{ item.jdmc }}意见</div>
22 </div>
23 <div class="item_right">
24 <el-row>
25 <el-col :span="24">
26 <el-form-item
27 label-width="0"
28 class="opinion_item"
29 >
30 <el-input
31 :disabled="!viewEdit || item.show"
32 type="textarea"
33 :rows="4"
34 class="opinion"
35 placeholder="请输入审批意见"
36 v-model="item.shyj"
37 ></el-input>
38 <el-button
39 class="opinion_btn"
40 @click="commonOpinion(index)"
41 :disabled="!viewEdit|| item.show"
42 >常用意见</el-button
43 >
44 </el-form-item>
45 </el-col>
46 </el-row>
47 <el-row>
48 <el-col :span="16">
49 <el-form-item label="审查人">
50 {{ item.shryxm }}
51 </el-form-item>
52 </el-col>
53 <el-col :span="8">
54 <el-form-item disabled label="审核时间" :key="refresh">
55 {{ item.shjssj }}
56 </el-form-item>
57 </el-col>
58 </el-row>
59 </div>
60 </div>
61 </el-form>
62 </div>
63 <div class="submit_button" v-if="viewEdit">
64 <el-button type="primary" :disabled="shows" @click="onSubmit()"
65 >保存</el-button
66 >
67 </div>
68 </div>
69 <!-- <el-empty v-if="isNoData" description="暂无数据"></el-empty> -->
70 </div>
71 </template>
72 <script>
73 import { saveSpyjBySlsq, getSpyjList } from "@/api/opinion.js";
74 import { mapGetters } from "vuex";
75 import { getNewDatesh } from "@/utils/util";
76 export default {
77 computed: {
78 ...mapGetters(["userData", "yjsqOptions", "userInfo"]),
79 },
80 data() {
81 return {
82 isNoData: false,
83 currentindex: 0,
84 bsmSlsq: "",
85 refresh: 10,
86 viewEdit: false,
87 bsmSlsq: this.$route.query.bsmSlsq,
88 bestepid: this.$route.query.bestepid,
89 propsParam: {},
90 tableData: [],
91 falg: false,
92 falg1: false,
93 jdmc: "",
94 indexdqlc: 0,
95 shows: false,
96 };
97 },
98
99 watch: {
100 yjsqOptions: {
101 handler(val) {
102 this.add(val);
103 },
104 deep: true,
105 immediate: true,
106 },
107 },
108 created() {},
109 mounted() {
110 this.propsParam = this.$attrs;
111 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
112 this.getShList();
113
114 switch (this.$parent.dqhj) {
115 case "cs":
116 this.indexdqlc = 0;
117 this.jdmc = "初审";
118 break;
119 case "fs":
120 this.indexdqlc = 1;
121 this.jdmc = "复审";
122 break;
123 case "hd":
124 this.indexdqlc = 2;
125 this.jdmc = "核定";
126 break;
127 }
128 },
129 methods: {
130 /**
131 * @description: getShList
132 * @param {*} obj
133 * @author: renchao
134 */
135 getShList() {
136 this.$startLoading();
137 var formdata = new FormData();
138 formdata.append("bsmBusiness", this.propsParam.bsmBusiness);
139 formdata.append("bestepid", this.$route.query.bestepid);
140
141 getSpyjList(formdata).then((res) => {
142 this.$endLoading();
143 if (res.code === 200 && res.result) {
144 this.$nextTick(() => {
145 this.tableData = res.result;
146 if (this.shows) {
147 this.shows = false;
148 }
149
150 var index = this.tableData.findIndex(
151 (item) => item.jddm === this.$parent.dqhj
152 );
153 if (index == -1) {
154 switch (this.$parent.dqhj) {
155 case "cs":
156 this.tableData.push({ jdmc: "初审", jddm: "cs", sxh: 1 });
157 break;
158 case "fs":
159 this.tableData.push({ jdmc: "复审", jddm: "fs", sxh: 2 });
160 break;
161 case "hd":
162 this.tableData.push({ jdmc: "核定", jddm: "hd", sxh: 3 });
163 break;
164 }
165 }
166 this.tableData.forEach((item) => {
167 item.show = true;
168 if (this.$parent.dqhj == item.jddm) {
169 item["stepid"] = this.$route.query.bestepid;
170 item.shjssj = getNewDatesh();
171 item.shkssj = getNewDatesh();
172 item["shryxm"] = this.userInfo.name;
173 item["userid"] = this.userInfo.id;
174 item.show = false;
175 }
176 });
177 });
178 }
179 });
180 },
181 /**
182 * @description: judgment
183 * @param {*} obj
184 * @author: renchao
185 */
186 judgment(obj) {},
187 /**
188 * @description: onSubmit
189 * @author: renchao
190 */
191 onSubmit() {
192
193 this.tableData.forEach((item, index) => {
194 item["bsmBusiness"] = this.propsParam.bsmBusiness;
195 item["czjg"] = "1";
196 });
197 var index = this.tableData.findIndex(
198 (item) => item.shyj === null||item.shyj === ""
199 );
200 if(index==-1){
201 this.shows = true;
202 saveSpyjBySlsq(this.tableData).then((res) => {
203 if (res.code === 200) {
204 this.$message.success("保存成功");
205 this.refresh += 1;
206 this.getShList();
207 } else {
208 this.$message.error(res.message);
209 }
210 });
211 }else{
212 this.$message.error("意见不能为空");
213 }
214
215 },
216 //打开常用意见列表弹窗
217 /**
218 * @description: 打开常用意见列表弹窗
219 * @param {*} index
220 * @author: renchao
221 */
222 commonOpinion(index) {
223 this.currentindex = index;
224 this.$popupDialog(
225 "常用意见",
226 "workflow/components/dialog/commonOpinion",
227 {},
228 "70%",
229 true
230 );
231 },
232 /**
233 * @description: add
234 * @param {*} val
235 * @author: renchao
236 */
237 add(val) {
238 if (val != "") {
239 this.$set(this.tableData[this.currentindex], "shyj", val);
240 }
241 },
242 },
243 };
244 </script>
245 <style scoped lang="scss">
246 @import "~@/styles/mixin.scss";
247
248 .spyj {
249 width: 100%;
250 height: 100%;
251 background-color: #f5f5f5;
252 padding: 5px;
253 .box {
254 overflow-x: auto;
255 width: 100%;
256 height: 95%;
257 background: #fff;
258 text-align: center;
259 padding: 4px;
260 overflow-y: scroll;
261 padding-top: 20px;
262 padding: 20px 40px;
263 .spyj_title {
264 width: 100%;
265 height: 80px;
266 border: 1px solid $borderColor;
267 background-color: #eceef2;
268 display: flex;
269 }
270 .leftadd {
271 width: 3%;
272 height: 100%;
273 display: flex;
274 font-size: 14px;
275 text-indent: 20px;
276 align-items: center;
277 border: 1px solid $borderColor;
278 }
279 .righttitle {
280 width: 80%;
281 height: 100%;
282 line-height: 80px;
283 border: 1px solid $borderColor;
284 margin: auto;
285 font-size: 22px;
286 font-weight: 400;
287 }
288 }
289
290 /deep/.el-form-item {
291 margin-bottom: 0;
292 }
293
294 .bottom10 {
295 margin-bottom: 15px;
296 }
297
298 .spyj_form {
299 display: flex;
300 border: 1px solid $borderColor;
301
302 .item_left {
303 width: 150px;
304 background-color: #f8f8fa;
305 color: #606266;
306 display: flex;
307 font-size: 14px;
308 text-indent: 50px;
309 align-items: center;
310 border-right: 1px solid $borderColor;
311 }
312
313 .item_right {
314 flex: 1;
315 width: 100%;
316
317 /deep/.el-form-item__label {
318 background-color: #f8f8fa;
319 }
320 /deep/.el-form-item__content {
321 display: block;
322 text-align: left;
323 }
324 .opinion_item {
325 /deep/.el-form-item__error {
326 margin-top: -16px !important;
327 left: 3px;
328 }
329 border-bottom: 1px solid $borderColor;
330 }
331
332 .opinion {
333 position: relative;
334 font-size: 14px;
335
336 /deep/.el-textarea__inner {
337 border: none;
338 }
339 }
340
341 .opinion_btn {
342 position: absolute;
343 right: 15px;
344 bottom: 10px;
345 }
346 }
347 }
348
349 .submit_button {
350 text-align: center;
351 margin: 15px 0;
352 }
353
354 .el-date-editor.el-input {
355 width: 100%;
356 }
357 }
358 </style>
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
17 <el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:"> 17 <el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:">
18 <el-input disabled v-model="ruleForm.flow.ywh"></el-input> 18 <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
19 </el-form-item> 19 </el-form-item>
20 </el-col> --> 20 </el-col>
21 <el-col :span="8"> 21 <el-col :span="8">
22 <el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:"> 22 <el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:">
23 <el-input disabled v-model="ruleForm.slsq.slry"></el-input> 23 <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
......
1 <!--
2 * @Description: 房屋多幢明细
3 * @Autor:
4 * @LastEditTime: 2023-09-01 13:29:29
5 -->
6 <template>
7 <div>
8 <el-table
9 :data="tableDataList"
10 border
11 :pagination="false"
12 :key="key"
13 :header-cell-style="{ 'text-align': 'center' }"
14 :heightNumSetting="true"
15 :minHeight="150"
16 height="150"
17 style="width: 100%">
18 <el-table-column prop="index" width="50" :render-header="renderHeader">
19 <template slot-scope="scope">
20 <div style="text-align: center">{{ scope.$index + 1 }}</div>
21 </template>
22 </el-table-column>
23 <el-table-column prop="bdcdyh" label="不动产单元号" min-width="100">
24 <template slot-scope="scope">
25 <div style="text-align: center">{{ scope.row.bdcdyh }}</div>
26 </template>
27 </el-table-column>
28 <el-table-column prop="xmmc" label="项目名称" min-width="100">
29 <template slot-scope="scope">
30 <el-input
31 class="item"
32 :disabled="!ableOperation"
33 v-model="scope.row.xmmc"
34 placeholder="请输入内容"
35 @input="updaterow(scope.row)">
36 </el-input>
37 </template>
38 </el-table-column>
39 <el-table-column prop="fwxz" label="房屋性质" min-width="100">
40 <template slot-scope="scope">
41 <treeselect
42 v-model="scope.row.fwxz"
43 :disabled="!ableOperation"
44 noOptionsText="暂无数据"
45 placeholder=""
46 :show-count="true"
47 :options="dictData['A19']"
48 :normalizer="normalizer"
49 :appendToBody="true"
50 z-index="9999"
51 @input="updaterow(scope.row)" />
52 </template>
53 </el-table-column>
54 <el-table-column prop="ghyt" label="房屋用途" min-width="100">
55 <template slot-scope="scope">
56 <treeselect
57 v-model="scope.row.ghyt"
58 :disabled="!ableOperation"
59 noOptionsText="暂无数据"
60 placeholder=""
61 :show-count="true"
62 :options="dictData['A17']"
63 :normalizer="normalizer"
64 :appendToBody="true"
65 z-index="9999"
66 @input="updaterow(scope.row)" />
67 </template>
68 </el-table-column>
69 <el-table-column prop="fwjg" label="房屋结构" min-width="100">
70 <template slot-scope="scope">
71 <treeselect
72 v-model="scope.row.fwjg"
73 :disabled="!ableOperation"
74 noOptionsText="暂无数据"
75 placeholder=""
76 :show-count="true"
77 :options="dictData['A46']"
78 :normalizer="normalizer"
79 :appendToBody="true"
80 z-index="9999"
81 @input="updaterow(scope.row)" />
82 </template>
83 </el-table-column>
84 <el-table-column prop="jzmj" label="建筑面积" min-width="100">
85 <template slot-scope="scope">
86 <el-input
87 maxlength="12"
88 class="item"
89 :disabled="!ableOperation"
90 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
91 v-model="scope.row.jzmj"
92 placeholder="请输入内容"
93 @input="updaterow(scope.row)">
94 </el-input>
95 </template>
96 </el-table-column>
97 <el-table-column prop="jgsj" label="竣工时间" min-width="100">
98 <template slot-scope="scope">
99 <el-date-picker
100 v-model="scope.row.jgsj"
101 type="date"
102 :disabled="!ableOperation"
103 placeholder="选择日期"
104 value-format="yyyy-MM-dd HH:mm:ss"
105 format="yyyy-MM-dd"
106 @input="updaterow(scope.row)">
107 </el-date-picker>
108 </template>
109 </el-table-column>
110 <el-table-column prop="zcs" label="总层数" min-width="100">
111 <template slot-scope="scope">
112 <el-input
113 class="item"
114 :disabled="!ableOperation"
115 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
116 v-model="scope.row.zcs"
117 placeholder="请输入内容"
118 @input="updaterow(scope.row)">
119 </el-input>
120 </template>
121 </el-table-column>
122 <el-table-column prop="zts" label="总套数" min-width="100">
123 <template slot-scope="scope">
124 <el-input
125 class="item"
126 :disabled="!ableOperation"
127 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
128 v-model="scope.row.zts"
129 placeholder="请输入内容"
130 @input="updaterow(scope.row)">
131 </el-input>
132 </template>
133 </el-table-column>
134 </el-table>
135 </div>
136 </template>
137 <script>
138 import { mapGetters } from "vuex";
139
140 export default {
141 computed: {
142 ...mapGetters(["dictData"]),
143 },
144 props: {
145 tableData: {
146 type: Array,
147 default: function () {
148 return [];
149 },
150 },
151 ableOperation: {
152 type: Boolean,
153 default: false,
154 },
155
156 },
157 data () {
158 return {
159 // 键名转换,方法默认是label和children进行树状渲染
160 key: 0,
161 tableDataList: [],
162 normalizer (node) {
163 if (node.children == null || node.children == "null") {
164 delete node.children;
165 }
166 return {
167 id: node.dcode,
168 label: node.dname,
169 children: node.children,
170 };
171 },
172 };
173 },
174 mounted () {
175 },
176 watch: {
177 tableData: {
178 handler: function (val, oldVal) {
179 let that = this;
180 this.$nextTick(() => {
181 if (val.length == 0 || !val) {
182 that.tableDataList = _.cloneDeep([
183 {
184 yt: null,
185 qssj: "",
186 jssj: "",
187 tdsyqx: "",
188 },
189 ]);
190 } else {
191 that.tableDataList = _.cloneDeep(val);
192 }
193 });
194 },
195 immediate: true,
196 deep: true,
197 },
198 },
199 methods: {
200 /**
201 * @description: renderHeader
202 * @author: renchao
203 */
204 renderHeader () {
205 return (
206 <div>
207 {"序号"}
208 </div>
209 );
210 },
211 updaterow (a) {
212 this.$emit("updateFdcwxmList", this.tableDataList);
213 }
214 }
215 }
216 </script>
217 <style scoped lang="scss">
218 .el-input {
219 border: none !important;
220 }
221
222 /deep/ .el-table__row {
223 border: none !important;
224 }
225
226 .el-date-editor.el-input {
227 width: 100%;
228 }
229
230 /deep/ .el-table th {
231 height: 30px !important;
232 }
233 </style>
234
1 <!-- 1 <!--
2 * @Description: 房屋多幢受理信息 2 * @Description: 房屋多幢受理信息
3 * @Autor: ssq 3 * @Autor: ssq
4 * @LastEditTime: 2024-02-26 10:15:51 4 * @LastEditTime: 2024-02-27 14:02:53
5 --> 5 -->
6 <template> 6 <template>
7 <div class="slxx"> 7 <div class="slxx">
......
1 <!--
2 * @Description: 受理信息
3 * @Autor: renchao
4 * @LastEditTime: 2024-01-30 16:07:53
5 -->
6 <template>
7 <div class="slxx">
8 <el-form
9 :model="ruleForm"
10 :rules="rules"
11 v-Loading="loading"
12 ref="ruleForm"
13 :label-position="flag ? 'top' : ''"
14 :inline="flag"
15 label-width="120px">
16 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
17 <div class="slxx_title title-block">
18 申请业务信息
19 <div class="triangle"></div>
20 </div>
21 <el-row :gutter="10" v-if="ruleForm.slsq">
22 <el-col :span="8">
23 <el-form-item label="业务号:">
24 <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
25 </el-form-item>
26 </el-col>
27 <el-col :span="8">
28 <el-form-item label="受理人员:">
29 <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
30 </el-form-item>
31 </el-col>
32 <el-col :span="8">
33 <el-form-item label="受理时间:">
34 <el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
35 </el-form-item>
36 </el-col>
37 </el-row>
38 <el-row :gutter="10" v-if="ruleForm.slsq">
39 <el-col :span="8">
40 <el-form-item label="权利类型:">
41 <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
42 </el-form-item>
43 </el-col>
44 <el-col :span="8">
45 <el-form-item label="登记类型:">
46 <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
47 </el-form-item>
48 </el-col>
49 <el-col :span="8">
50 <el-form-item label="登记情形:">
51 <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
52 </el-form-item>
53 </el-col>
54 </el-row>
55 <div class="slxx_title title-block">
56 <el-row>
57 <el-col :span="16">
58 不动产单元情况
59 </el-col>
60 <el-col :span="4" v-show="ruleForm.sldy.djlx=='500'">
61 <el-form-item label="是否创建证书:" style="height:24px">
62 <el-radio-group v-model="ruleForm.sldy.sfxysczs">
63 <el-radio label="1"></el-radio>
64 <el-radio label="0"></el-radio>
65 </el-radio-group>
66 </el-form-item>
67 </el-col>
68 <el-col :span="4" v-show="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
69 <el-button @click="compare">变化情况对比+</el-button>
70 </el-col>
71 </el-row>
72 <div class="triangle"></div>
73 </div>
74 <el-row :gutter="10" v-if="ruleForm.qlxx">
75 <el-col :span="8">
76 <el-form-item label="原不动产权证号:">
77 <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
78 </el-form-item>
79 </el-col>
80 <el-col :span="8">
81 <el-form-item label="不动产单元号:">
82 <el-input disabled v-model="ruleForm.sldy.bdcdyh"></el-input>
83 </el-form-item>
84 </el-col>
85 <el-col :span="8">
86 <el-form-item label="坐落:">
87 <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input>
88 </el-form-item>
89 </el-col>
90 </el-row>
91 <el-row :gutter="10" v-if="ruleForm.fdcq2">
92 <el-col :span="8">
93 <el-form-item label="宗地面积:">
94 <div class="flex">
95 <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input>
96 <el-select
97 disabled
98 v-model="ruleForm.zdjbxx.mjdw"
99 style="width: 68px">
100 <el-option
101 v-for="item in dictData['A7']"
102 :key="item.dcode"
103 :label="item.dname"
104 :value="item.dcode">
105 </el-option>
106 </el-select>
107 </div>
108 </el-form-item>
109 </el-col>
110 <el-col :span="8">
111 <el-form-item label="土地使用权人:">
112 <el-input :disabled="!viewEdit" v-model="ruleForm.fdcq2.tdsyqr"></el-input>
113 </el-form-item>
114 </el-col>
115 <el-col :span="8">
116 <el-form-item label="土地性质:">
117 <treeselect
118 :disabled="!viewEdit"
119 v-model="ruleForm.fdcq2.tdxz"
120 noOptionsText="暂无数据"
121 placeholder=""
122 :normalizer="normalizer"
123 :default-expand-level="1"
124 :show-count="true"
125 :options="dictData['A9']" />
126 </el-form-item>
127 </el-col>
128 </el-row>
129 <el-row :gutter="10" v-if="ruleForm.qlxx">
130 <el-col :span="8">
131 <el-form-item label="独用土地面积:">
132 <div class="flex">
133 <el-input
134 maxlength="12"
135 v-model="ruleForm.fdcq2.dytdmj"
136 :disabled="!viewEdit"
137 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
138 <el-select disabled v-model="mjdw" style="width: 68px">
139 <el-option
140 v-for="item in dictData['A7']"
141 :key="item.dcode"
142 :label="item.dname"
143 :value="item.dcode">
144 </el-option>
145 </el-select>
146 </div>
147 </el-form-item>
148 </el-col>
149 <el-col :span="8">
150 <el-form-item label="分摊土地面积:">
151 <div class="flex">
152 <el-input
153 maxlength="12"
154 v-model="ruleForm.fdcq2.fttdmj"
155 :disabled="!viewEdit"
156 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
157 <el-select disabled v-model="mjdw" style="width: 68px">
158 <el-option
159 v-for="item in dictData['A7']"
160 :key="item.dcode"
161 :label="item.dname"
162 :value="item.dcode">
163 </el-option>
164 </el-select>
165 </div>
166 </el-form-item>
167 </el-col>
168 <el-col :span="8">
169 <el-form-item label="房屋性质:">
170 <el-select v-model="ruleForm.fdcq2.fwxz" :disabled="!viewEdit">
171 <el-option
172 v-for="item in dictData['A19']"
173 :key="item.dcode"
174 :label="item.dname"
175 :value="item.dcode">
176 </el-option>
177 </el-select>
178 </el-form-item>
179 </el-col>
180 </el-row>
181 <el-row :gutter="10" v-if="ruleForm.qlxx">
182 <el-col :span="8">
183 <el-form-item label="房屋用途:">
184 <treeselect
185 v-model="ruleForm.fdcq2.ghyt"
186 :disabled="!viewEdit"
187 noOptionsText=""
188 placeholder=""
189 :normalizer="normalizer"
190 :show-count="true"
191 :options="dictData['A17']" />
192 </el-form-item>
193 </el-col>
194 <el-col :span="8">
195 <el-form-item label="房屋结构:">
196 <el-select v-model="ruleForm.fdcq2.fwjg" :disabled="!viewEdit">
197 <el-option
198 v-for="item in dictData['A46']"
199 :key="item.dcode"
200 :label="item.dname"
201 :value="item.dcode">
202 </el-option>
203 </el-select>
204 </el-form-item>
205 </el-col>
206 <el-col :span="8">
207 <el-form-item label="竣工时间:">
208 <el-date-picker
209 v-model="ruleForm.fdcq2.jgsj"
210 class="width100"
211 type="date"
212 placeholder="选择日期"
213 value-format="yyyy-MM-dd"
214 :disabled="!viewEdit"></el-date-picker>
215 </el-form-item>
216 </el-col>
217 </el-row>
218 <el-row :gutter="10" v-if="ruleForm.qlxx">
219 <el-col :span="8">
220 <el-form-item label="所在层:">
221 <el-input
222 maxlength="20"
223 v-model="ruleForm.fdcq2.szc"
224 :disabled="!viewEdit"></el-input>
225 </el-form-item>
226 </el-col>
227 <el-col :span="8">
228 <el-form-item label="总层数:">
229 <el-input
230 maxlength="4"
231 :disabled="!viewEdit"
232 v-model.number="ruleForm.fdcq2.zcs"
233 oninput="value=value.replace(/[^0-9]/g,'')"></el-input>
234 </el-form-item>
235 </el-col>
236 <el-col :span="8">
237 <el-form-item label="房地产交易价格:">
238 <div class="flex">
239 <el-input
240 maxlength="11"
241 v-model="ruleForm.fdcq2.fdcjyjg"
242 style="width: 500%"
243 :disabled="!viewEdit"
244 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
245 <el-select v-model="ruleForm.fdcq2.jedw" :disabled="!viewEdit">
246 <el-option
247 v-for="item in dictData['A57']"
248 :key="item.dcode"
249 :label="item.dname"
250 :value="item.dcode">
251 </el-option>
252 </el-select>
253 </div>
254 </el-form-item>
255 </el-col>
256 </el-row>
257 <el-row :gutter="10" v-if="ruleForm.fdcq2">
258 <el-col :span="8">
259 <el-form-item label="建筑面积:">
260 <div class="flex">
261 <el-input
262 maxlength="12"
263 v-model="ruleForm.fdcq2.jzmj"
264 :disabled="!viewEdit"
265 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
266 <el-select disabled v-model="mjdw" style="width: 68px">
267 <el-option
268 v-for="item in dictData['A7']"
269 :key="item.dcode"
270 :label="item.dname"
271 :value="item.dcode">
272 </el-option>
273 </el-select>
274 </div>
275 </el-form-item>
276 </el-col>
277 <el-col :span="8">
278 <el-form-item label="专有建筑面积:">
279 <div class="flex">
280 <el-input
281 maxlength="12"
282 v-model="ruleForm.fdcq2.zyjzmj"
283 :disabled="!viewEdit"
284 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
285 <el-select disabled v-model="mjdw" style="width: 68px">
286 <el-option
287 v-for="item in dictData['A7']"
288 :key="item.dcode"
289 :label="item.dname"
290 :value="item.dcode">
291 </el-option>
292 </el-select>
293 </div>
294 </el-form-item>
295 </el-col>
296 <el-col :span="8">
297 <el-form-item label="分摊建筑面积:">
298 <div class="flex">
299 <el-input
300 maxlength="12"
301 v-model="ruleForm.fdcq2.ftjzmj"
302 :disabled="!viewEdit"
303 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
304 <el-select disabled v-model="mjdw" style="width: 68px">
305 <el-option
306 v-for="item in dictData['A7']"
307 :key="item.dcode"
308 :label="item.dname"
309 :value="item.dcode">
310 </el-option>
311 </el-select>
312 </div>
313 </el-form-item>
314 </el-col>
315 </el-row>
316 <el-row :gutter="10">
317 <el-col :span="24">
318 <el-form-item label="附记:">
319 <el-input
320 v-model="ruleForm.fdcq2.fj"
321 type="textarea"
322 maxlength="500"
323 show-word-limit
324 :disabled="!viewEdit"></el-input>
325 </el-form-item>
326 </el-col>
327 </el-row>
328 <div class="slxx_title title-block">
329 土地用途
330 <div class="triangle"></div>
331 </div>
332 <tdytTable
333 :ableOperation="viewEdit"
334 :tableData="ruleForm.tdytqxList"
335 @upDateTdytxxList="upDateTdytxxList" />
336 <div class="slxx_title title-block">
337 权利人信息
338 <div class="triangle"></div>
339 </div>
340 <el-row :gutter="10">
341 <el-col :span="12">
342 <el-form-item label="共有方式:">
343 <el-radio-group
344 :disabled="!viewEdit"
345 v-model="ruleForm.sldy.gyfs">
346 <el-radio label="0">单独所有</el-radio>
347 <el-radio label="1">共同共有</el-radio>
348 <el-radio label="2">按份所有</el-radio>
349 <el-radio label="3">其它共有</el-radio>
350 </el-radio-group>
351 </el-form-item>
352 </el-col>
353 <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'">
354 <el-form-item label="是否分别持证:">
355 <el-radio-group
356 v-model="ruleForm.sldy.sqfbcz"
357 :disabled="!viewEdit"
358 @input="updaterow()">
359 <el-radio :label="1"></el-radio>
360 <el-radio :label="0"></el-radio>
361 </el-radio-group>
362 </el-form-item>
363 </el-col>
364 <el-col
365 :span="6"
366 v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
367 <el-form-item label="持证人:">
368 <el-select
369 v-model="czr"
370 placeholder="持证人"
371 :disabled="!viewEdit">
372 <el-option
373 v-for="(item,index) in czrOptions"
374 :key="index"
375 :label="item.sqrmc"
376 :value="item.id">
377 </el-option>
378 </el-select>
379 </el-form-item>
380 </el-col>
381 </el-row>
382 <qlrCommonTable
383 @upDateQlrxxList="upDateQlrxxList"
384 :disabled="!viewEdit"
385 :tableData="ruleForm.qlrList"
386 :gyfs="ruleForm.sldy.gyfs" />
387 <div class="slxx_title title-block">
388 登记原因
389 <div class="triangle"></div>
390 </div>
391 <el-row :gutter="10">
392 <el-col>
393 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="fdcq2.djyy">
394 <el-input
395 class="textArea"
396 type="textarea"
397 maxlength="500"
398 show-word-limit
399 :disabled="!viewEdit"
400 v-model="ruleForm.fdcq2.djyy">
401 </el-input>
402 </el-form-item>
403 </el-col>
404 </el-row>
405 </div>
406 <el-row class="btn" v-if="isSave">
407 <el-form-item>
408 <el-button type="primary" @click="onSubmit">保存</el-button>
409 </el-form-item>
410 </el-row>
411 </el-form>
412 </div>
413 </template>
414 <script>
415 import ywmix from "@/views/ywbl/mixin/index";
416 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
417 import tdytTable from "@/views/workflow/components/tdytTable";
418 import { Init, saveData } from "@/api/workflow/fwsyqFlow.js";
419 import { mapGetters } from "vuex";
420 export default {
421 mixins: [ywmix],
422 mounted () {
423 let that = this
424 this.loading = true
425 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
426 this.propsParam = this.$attrs;
427 var formdata = new FormData();
428 formdata.append("bsmSldy", this.propsParam.bsmSldy);
429 formdata.append("djlx", this.propsParam.djlx);
430 formdata.append("isEdit", this.viewEdit);
431 Init(formdata).then((res) => {
432 setTimeout(() => {
433 this.loading = false
434 }, 200)
435 if (res.code === 200 && res.result) {
436 that.ruleForm = {
437 ...res.result,
438 ...res.result.zdjbxxdatas,
439 ...res.result.qlxxdatas,
440 ...res.result.jsydsyqdatas,
441 };
442 that.ruleForm.qlrList.forEach((item) => {
443 item.id = item.bsmSqr
444 if (item.sfczr == '1') {
445 that.czr = item.bsmSqr
446 }
447 })
448 that.czrOptions = that.ruleForm.qlrList;
449 that.isSave = that.viewEdit
450 } else {
451 that.isSave = false
452 that.$confirm(res.message, '提示', {
453 cancelButtonText: '取消',
454 showConfirmButton: false,
455 type: 'warning'
456 })
457 }
458 }).catch(() => {
459 this.loading = false
460 this.isSave = false
461 })
462 },
463 components: { qlrCommonTable, tdytTable },
464 computed: {
465 ...mapGetters(["dictData", "flag"]),
466 },
467 data () {
468 return {
469 normalizer (node) {
470 if (node.children == null || node.children == "null") {
471 delete node.children;
472 }
473 return {
474 id: node.dcode,
475 label: node.dname,
476 children: node.children,
477 };
478 },
479 isSave: true,
480 loading: false,
481 mjdw: "1",
482 //表单是否可操作
483 viewEdit: false,
484 disabled: true,
485 tdytOption: [],
486 czrOptions: [],
487 czr: "",
488 ruleForm: {
489 flow: {
490 ywh: "",
491 },
492 slry: "",
493 slsj: "",
494 qllx: "",
495 djlx: "",
496 djqx: "",
497 sldy: {
498 gyfs: "",
499 },
500 // 宗地代码
501 zddm: "",
502 bdcdyh: "",
503 qlxzmc: "",
504 qlrxx: [],
505 // 自然幢号
506 zrzh: "",
507 // 户不动产单元号
508 hbdcdyh: "",
509 djzt: "",
510 // 图幅丘幢号
511 tfqzh: "",
512 zl: "",
513 // 房屋用途
514 fwyt: "",
515 fwxz: "",
516 fwjg: "",
517 // 权利人信息
518 // 是否分别持证
519 sffbcz: "",
520 // 持证人
521 czr: "",
522 djyy: "",
523 // 规划用途名称
524 zdjbxx: {
525 ghytmc: "",
526 },
527 fdcq2: {
528 fwxzmc: "",
529 },
530 slsq: {
531 gyfs: "",
532 },
533 },
534 //传递参数
535 propsParam: {},
536 rules: {
537 'fdcq2.djyy': [
538 { required: true, message: '请输入登记原因', trigger: 'blur' }
539 ]
540 }
541 }
542 },
543 methods: {
544 /**
545 * @description: dataSelectClick
546 * @author: renchao
547 */
548 dataSelectClick () {
549 this.$popup(
550 "房屋所有权",
551 this.BASE_API.SERVERAPI + "/rest/workflow/main/dataCompare/slxxCompareDetai",
552 {
553 formData: {
554 bsmSldy: this.propsParam.bsmSldy,
555 qllx: this.propsParam.qllx,
556 },
557 }
558 );
559 },
560 /**
561 * @description: 更新土地用途信息
562 * @param {*} val
563 * @author: renchao
564 */
565 upDateTdytxxList (val) {
566 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
567 this.key++;
568 },
569 /**
570 * @description: 是否持证人变化
571 * @param {*} val
572 * @author: renchao
573 */
574 updaterow () {
575 this.czr = "";
576 },
577 /**
578 * @description: 更新权利人信息
579 * @param {*} val
580 * @author: renchao
581 */
582 upDateQlrxxList (val) {
583 if (!_.isEqual(val, this.ruleForm.qlrList)) {
584 this.ruleForm.qlrList = _.cloneDeep(val);
585 this.czrOptions = this.ruleForm.qlrList;
586 }
587 this.num = 0
588 this.ruleForm.qlrList.forEach(item => {
589 if (item.id == this.czr) {
590 this.num++
591 }
592 })
593 if (this.num == 0) {
594 this.czr = ''
595 }
596 },
597 /**
598 * @description: 更新权利人信息
599 * @param {*} val
600 * @author: renchao
601 */
602 upDateYwrxxList (val) {
603 this.ruleForm.ywrList = _.cloneDeep(val);
604 },
605 /**
606 * @description: onSubmit
607 * @author: renchao
608 */
609 onSubmit () {
610 let that = this;
611 let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt);
612 if (arr.length > 0) {
613 this.$message({
614 showClose: true,
615 message: "土地用途不能为空",
616 type: "error",
617 });
618 return false;
619 }
620 if (this.ruleForm.qlrList.length == 0) {
621 this.$message({
622 showClose: true,
623 message: "请确认权利人信息",
624 type: "error",
625 });
626 return false;
627 }
628
629 if (this.ruleForm.sldy.gyfs == "0") {
630 if (this.ruleForm.qlrList.length > 1) {
631 this.$message({
632 showClose: true,
633 message: "共有方式:单独所有,权利人只能是一个人",
634 type: "error",
635 });
636 return false;
637 }
638 this.ruleForm.qlrList[0].sfczr = "1";
639 } else {
640 if (this.ruleForm.qlrList.length <= 1) {
641 this.$message({
642 showClose: true,
643 message:
644 "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
645 type: "error",
646 });
647 return false;
648 }
649 //是否分别持证
650 if (this.ruleForm.sldy.sqfbcz == "1") {
651 //是
652 this.ruleForm.qlrList.forEach((item, index) => {
653 item.sfczr = "1";
654 });
655 } else {
656 if (that.czr === '') {
657 that.$message({
658 showClose: true,
659 message: "请选择持证人",
660 type: "error"
661 });
662 return false;
663 }
664 this.ruleForm.qlrList.forEach(item => {
665 if (item.id == that.czr) {
666 item.sfczr = "1"
667 } else {
668 item.sfczr = "0"
669 }
670 })
671 }
672 }
673 this.$refs['ruleForm'].validate((valid) => {
674 if (valid) {
675 that.$store.dispatch("user/refreshPage", false);
676 saveData(that.ruleForm).then((res) => {
677 if (res.code === 200) {
678 that.$message({
679 showClose: true,
680 message: "保存成功!",
681 type: "success",
682 });
683 that.$store.dispatch("user/refreshPage", true);
684 } else {
685 that.$message({
686 showClose: true,
687 message: res.message,
688 type: "error",
689 });
690 }
691 })
692
693 } else {
694 that.$message({
695 showClose: true,
696 message: "请输入登记原因",
697 type: "error"
698 })
699 return false
700 }
701 })
702 },
703 /**
704 * @description: compare
705 * @author: renchao
706 */
707 compare () {
708 this.$popupDialog(
709 this.ruleForm.qlxx.qllxmc,
710 "registerBook/comparison",
711 {
712 bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
713 dqqllx: "FDCQ2",
714 },
715 "80%",
716 true
717 );
718 },
719 },
720 };
721 </script>
722 <style scoped lang="scss">
723 @import "~@/styles/public.scss";
724 @import "~@/styles/slxx/slxx.scss";
725 /deep/.el-form {
726 display: flex;
727 flex-direction: column;
728 height: calc(100vh - 130px);
729 }
730
731 /deep/.el-form-item__label {
732 padding: 0;
733 }
734
735 /deep/.el-radio {
736 margin-right: 10px;
737 }
738
739 /deep/.el-select {
740 width: 100%;
741 }
742
743 /deep/.el-form-item {
744 margin-bottom: 3px;
745 }
746
747 .marginBot0 {
748 margin-bottom: 0 !important;
749 }
750
751 .slxx {
752 box-sizing: border-box;
753 }
754
755 .slxx_con {
756 flex: 1;
757 height: 100%;
758 background-color: #ffffff;
759 overflow-y: auto;
760 padding-right: 3px;
761 overflow-x: hidden;
762 }
763
764 .submit_btn {
765 height: 50px;
766 }
767
768 .btn {
769 text-align: center;
770 padding-top: 10px;
771 height: 36px;
772 background-color: #ffffff;
773 padding: 5px 0;
774 }
775
776 .textArea {
777 /deep/.el-textarea__inner {
778 min-height: 90px !important;
779 }
780 }
781
782 /deep/.el-form-item__label {
783 padding-bottom: 0px;
784 }
785 </style>
1 <!--
2 * @Description: 受理信息
3 * @Autor: renchao
4 * @LastEditTime: 2024-01-30 16:07:53
5 -->
6 <template>
7 <div class="slxx">
8 <el-form
9 :model="ruleForm"
10 :rules="rules"
11 v-Loading="loading"
12 ref="ruleForm"
13 :label-position="flag ? 'top' : ''"
14 :inline="flag"
15 label-width="120px">
16 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
17 <div class="slxx_title title-block">
18 申请业务信息
19 <div class="triangle"></div>
20 </div>
21 <el-row :gutter="10" v-if="ruleForm.slsq">
22 <el-col :span="8">
23 <el-form-item label="业务号:">
24 <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
25 </el-form-item>
26 </el-col>
27 <el-col :span="8">
28 <el-form-item label="受理人员:">
29 <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
30 </el-form-item>
31 </el-col>
32 <el-col :span="8">
33 <el-form-item label="受理时间:">
34 <el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
35 </el-form-item>
36 </el-col>
37 </el-row>
38 <el-row :gutter="10" v-if="ruleForm.slsq">
39 <el-col :span="8">
40 <el-form-item label="权利类型:">
41 <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
42 </el-form-item>
43 </el-col>
44 <el-col :span="8">
45 <el-form-item label="登记类型:">
46 <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
47 </el-form-item>
48 </el-col>
49 <el-col :span="8">
50 <el-form-item label="登记情形:">
51 <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
52 </el-form-item>
53 </el-col>
54 </el-row>
55 <div class="slxx_title title-block">
56 <el-row>
57 <el-col :span="16">
58 不动产单元情况
59 </el-col>
60 <el-col :span="4" v-show="ruleForm.sldy.djlx=='500'">
61 <el-form-item label="是否创建证书:" style="height:24px">
62 <el-radio-group v-model="ruleForm.sldy.sfxysczs">
63 <el-radio label="1">是</el-radio>
64 <el-radio label="0">否</el-radio>
65 </el-radio-group>
66 </el-form-item>
67 </el-col>
68 <el-col :span="4" v-show="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
69 <el-button @click="compare">变化情况对比+</el-button>
70 </el-col>
71 </el-row>
72 <div class="triangle"></div>
73 </div>
74 <el-row :gutter="10" v-if="ruleForm.qlxx">
75 <el-col :span="8">
76 <el-form-item label="不动产单元号:">
77 <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input>
78 </el-form-item>
79 </el-col>
80 <el-col :span="16">
81 <el-form-item label="坐落:">
82 <el-input disabled v-model="ruleForm.sldy.zl"></el-input>
83 </el-form-item>
84 </el-col>
85 </el-row>
86 <el-row :gutter="10" v-if="ruleForm.fdcq2">
87 <el-col :span="8">
88 <el-form-item label="土地用途:">
89 <el-input disabled v-model="ruleForm.fdcq2.yt"></el-input>
90 </el-form-item>
91 </el-col>
92 <el-col :span="8">
93 <el-form-item label="土地使用起止时间:">
94 <el-input disabled v-model="ruleForm.fdcq2.tdsyqzsj"></el-input>
95 </el-form-item>
96 </el-col>
97 <el-col :span="8">
98 <el-form-item label="土地使用期限:">
99 <el-input disabled v-model="ruleForm.fdcq2.tdsyqx"></el-input>
100 </el-form-item>
101 </el-col>
102 </el-row>
103 <el-row :gutter="10" v-if="ruleForm.qlxx">
104 <el-col :span="8">
105 <el-form-item label="规划用途名称:">
106 <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input>
107 </el-form-item>
108 </el-col>
109 <el-col :span="8">
110 <el-form-item label="房屋性质:">
111 <el-input disabled v-model="ruleForm.fdcq2.fwxzmc"></el-input>
112 </el-form-item>
113 </el-col>
114 <el-col :span="8">
115 <el-form-item label="房屋结构:">
116 <el-input disabled v-model="ruleForm.fdcq2.fwjgmc"></el-input>
117 </el-form-item>
118 </el-col>
119 </el-row>
120 <el-row :gutter="10" v-if="ruleForm.fdcq2">
121 <el-col :span="8">
122 <el-form-item label="所在层:">
123 <el-input disabled v-model="ruleForm.fdcq2.szc"></el-input>
124 </el-form-item>
125 </el-col>
126 <el-col :span="8">
127 <el-form-item label="总层数:">
128 <el-input
129 disabled
130 v-model.number="ruleForm.fdcq2.zcs"
131 oninput="value=value.replace(/[^0-9]/g,'')"></el-input>
132 </el-form-item>
133 </el-col>
134 <el-col :span="8">
135 <el-form-item label="竣工时间:">
136 <el-input disabled v-model="ruleForm.fdcq2.jgsj"></el-input>
137 </el-form-item>
138 </el-col>
139 </el-row>
140 <el-row :gutter="10" v-if="ruleForm.qlxx">
141 <el-col :span="8">
142 <el-form-item label="建筑面积:">
143 <div class="flex">
144 <el-input
145 disabled
146 v-model="ruleForm.qlxx.mj"
147 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
148 <el-select disabled v-model="mjdw" style="width: 68px">
149 <el-option
150 v-for="item in dictData['A7']"
151 :key="item.dcode"
152 :label="item.dname"
153 :value="item.dcode">
154 </el-option>
155 </el-select>
156 </div>
157 </el-form-item>
158 </el-col>
159 <el-col :span="8">
160 <el-form-item label="专有建筑面积:">
161 <div class="flex">
162 <el-input
163 disabled
164 v-model="ruleForm.fdcq2.zyjzmj"
165 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
166 <el-select disabled v-model="mjdw" style="width: 68px">
167 <el-option
168 v-for="item in dictData['A7']"
169 :key="item.dcode"
170 :label="item.dname"
171 :value="item.dcode">
172 </el-option>
173 </el-select>
174 </div>
175 </el-form-item>
176 </el-col>
177 <el-col :span="8">
178 <el-form-item label="分摊建筑面积:">
179 <div class="flex">
180 <el-input
181 disabled
182 v-model="ruleForm.fdcq2.ftjzmj"
183 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
184 <el-select disabled v-model="mjdw" style="width: 68px">
185 <el-option
186 v-for="item in dictData['A7']"
187 :key="item.dcode"
188 :label="item.dname"
189 :value="item.dcode">
190 </el-option>
191 </el-select>
192 </div>
193 </el-form-item>
194 </el-col>
195 </el-row>
196 <div class="slxx_title title-block">
197 土地用途
198 <div class="triangle"></div>
199 </div>
200 <tdytTable
201 :ableOperation="viewEdit"
202 :tableData="ruleForm.tdytqxList"
203 @upDateTdytxxList="upDateTdytxxList" />
204 <div class="slxx_title title-block">
205 权利人信息
206 <div class="triangle"></div>
207 </div>
208 <el-row :gutter="10">
209 <el-col :span="12">
210 <el-form-item label="共有方式:">
211 <el-radio-group
212 :disabled="!viewEdit"
213 v-model="ruleForm.sldy.gyfs">
214 <el-radio label="0">单独所有</el-radio>
215 <el-radio label="1">共同共有</el-radio>
216 <el-radio label="2">按份所有</el-radio>
217 <el-radio label="3">其它共有</el-radio>
218 </el-radio-group>
219 </el-form-item>
220 </el-col>
221 <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'">
222 <el-form-item label="是否分别持证:">
223 <el-radio-group
224 v-model="ruleForm.sldy.sqfbcz"
225 :disabled="!viewEdit"
226 @input="updaterow()">
227 <el-radio :label="1">是</el-radio>
228 <el-radio :label="0">否</el-radio>
229 </el-radio-group>
230 </el-form-item>
231 </el-col>
232 <el-col
233 :span="6"
234 v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
235 <el-form-item label="持证人:">
236 <el-select
237 v-model="czr"
238 placeholder="持证人"
239 :disabled="!viewEdit">
240 <el-option
241 v-for="(item,index) in czrOptions"
242 :key="index"
243 :label="item.sqrmc"
244 :value="item.id">
245 </el-option>
246 </el-select>
247 </el-form-item>
248 </el-col>
249 </el-row>
250 <qlrCommonTable
251 @upDateQlrxxList="upDateQlrxxList"
252 :disabled="!viewEdit"
253 :tableData="ruleForm.qlrList"
254 :gyfs="ruleForm.sldy.gyfs" />
255 <div class="slxx_title title-block">
256 登记原因
257 <div class="triangle"></div>
258 </div>
259 <el-row :gutter="10">
260 <el-col>
261 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="fdcq2.djyy">
262 <el-input
263 class="textArea"
264 type="textarea"
265 maxlength="500"
266 show-word-limit
267 :disabled="!viewEdit"
268 v-model="ruleForm.fdcq2.djyy">
269 </el-input>
270 </el-form-item>
271 </el-col>
272 </el-row>
273 </div>
274 <el-row class="btn" v-if="isSave">
275 <el-form-item>
276 <el-button type="primary" @click="onSubmit">保存</el-button>
277 </el-form-item>
278 </el-row>
279 </el-form>
280 </div>
281 </template>
282 <script>
283 import ywmix from "@/views/ywbl/mixin/index";
284 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
285 import tdytTable from "@/views/workflow/components/tdytTable";
286 import { Init, saveData } from "@/api/workflow/fwsyqFlow.js";
287 import { mapGetters } from "vuex";
288 export default {
289 mixins: [ywmix],
290 mounted () {
291 let that = this
292 this.loading = true
293 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
294 this.propsParam = this.$attrs;
295 var formdata = new FormData();
296 formdata.append("bsmSldy", this.propsParam.bsmSldy);
297 formdata.append("djlx", this.propsParam.djlx);
298 formdata.append("isEdit", this.viewEdit);
299 Init(formdata).then((res) => {
300 setTimeout(() => {
301 this.loading = false
302 }, 200)
303 if (res.code === 200 && res.result) {
304 that.ruleForm = {
305 ...res.result,
306 ...res.result.zdjbxxdatas,
307 ...res.result.qlxxdatas,
308 ...res.result.jsydsyqdatas,
309 };
310 that.ruleForm.qlrList.forEach((item) => {
311 item.id = item.bsmSqr
312 if (item.sfczr == '1') {
313 that.czr = item.bsmSqr
314 }
315 })
316 that.czrOptions = that.ruleForm.qlrList;
317 that.isSave = that.viewEdit
318 } else {
319 that.isSave = false
320 that.$confirm(res.message, '提示', {
321 cancelButtonText: '取消',
322 showConfirmButton: false,
323 type: 'warning'
324 })
325 }
326 }).catch(() => {
327 this.loading = false
328 this.isSave = false
329 })
330 },
331 components: { qlrCommonTable, tdytTable },
332 computed: {
333 ...mapGetters(["dictData", "flag"]),
334 },
335 data () {
336 return {
337 isSave: true,
338 loading: false,
339 mjdw: "1",
340 //表单是否可操作
341 viewEdit: false,
342 disabled: true,
343 tdytOption: [],
344 czrOptions: [],
345 czr: "",
346 ruleForm: {
347 flow: {
348 ywh: "",
349 },
350 slry: "",
351 slsj: "",
352 qllx: "",
353 djlx: "",
354 djqx: "",
355 sldy: {
356 gyfs: "",
357 },
358 // 宗地代码
359 zddm: "",
360 bdcdyh: "",
361 qlxzmc: "",
362 qlrxx: [],
363 // 自然幢号
364 zrzh: "",
365 // 户不动产单元号
366 hbdcdyh: "",
367 djzt: "",
368 // 图幅丘幢号
369 tfqzh: "",
370 zl: "",
371 // 房屋用途
372 fwyt: "",
373 fwxz: "",
374 fwjg: "",
375 // 权利人信息
376 // 是否分别持证
377 sffbcz: "",
378 // 持证人
379 czr: "",
380 djyy: "",
381 // 规划用途名称
382 zdjbxx: {
383 ghytmc: "",
384 },
385 fdcq2: {
386 fwxzmc: "",
387 },
388 slsq: {
389 gyfs: "",
390 },
391 },
392 //传递参数
393 propsParam: {},
394 rules: {
395 'fdcq2.djyy': [
396 { required: true, message: '请输入登记原因', trigger: 'blur' }
397 ]
398 }
399 }
400 },
401 methods: {
402 /**
403 * @description: dataSelectClick
404 * @author: renchao
405 */
406 dataSelectClick () {
407 this.$popup(
408 "房屋所有权",
409 this.BASE_API.SERVERAPI + "/rest/workflow/main/dataCompare/slxxCompareDetai",
410 {
411 formData: {
412 bsmSldy: this.propsParam.bsmSldy,
413 qllx: this.propsParam.qllx,
414 },
415 }
416 );
417 },
418 /**
419 * @description: 更新土地用途信息
420 * @param {*} val
421 * @author: renchao
422 */
423 upDateTdytxxList (val) {
424 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
425 this.key++;
426 },
427 /**
428 * @description: 是否持证人变化
429 * @param {*} val
430 * @author: renchao
431 */
432 updaterow () {
433 this.czr = "";
434 },
435 /**
436 * @description: 更新权利人信息
437 * @param {*} val
438 * @author: renchao
439 */
440 upDateQlrxxList (val) {
441 if (!_.isEqual(val, this.ruleForm.qlrList)) {
442 this.ruleForm.qlrList = _.cloneDeep(val);
443 this.czrOptions = this.ruleForm.qlrList;
444 }
445 this.num = 0
446 this.ruleForm.qlrList.forEach(item => {
447 if (item.id == this.czr) {
448 this.num++
449 }
450 })
451 if (this.num == 0) {
452 this.czr = ''
453 }
454 },
455 /**
456 * @description: 更新权利人信息
457 * @param {*} val
458 * @author: renchao
459 */
460 upDateYwrxxList (val) {
461 this.ruleForm.ywrList = _.cloneDeep(val);
462 },
463 /**
464 * @description: onSubmit
465 * @author: renchao
466 */
467 onSubmit () {
468 let that = this;
469 let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt);
470 if (arr.length > 0) {
471 this.$message({
472 showClose: true,
473 message: "土地用途不能为空",
474 type: "error",
475 });
476 return false;
477 }
478 if (this.ruleForm.qlrList.length == 0) {
479 this.$message({
480 showClose: true,
481 message: "请确认权利人信息",
482 type: "error",
483 });
484 return false;
485 }
486
487 if (this.ruleForm.sldy.gyfs == "0") {
488 if (this.ruleForm.qlrList.length > 1) {
489 this.$message({
490 showClose: true,
491 message: "共有方式:单独所有,权利人只能是一个人",
492 type: "error",
493 });
494 return false;
495 }
496 this.ruleForm.qlrList[0].sfczr = "1";
497 } else {
498 if (this.ruleForm.qlrList.length <= 1) {
499 this.$message({
500 showClose: true,
501 message:
502 "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
503 type: "error",
504 });
505 return false;
506 }
507 //是否分别持证
508 if (this.ruleForm.sldy.sqfbcz == "1") {
509 //是
510 this.ruleForm.qlrList.forEach((item, index) => {
511 item.sfczr = "1";
512 });
513 } else {
514 if (that.czr === '') {
515 that.$message({
516 showClose: true,
517 message: "请选择持证人",
518 type: "error"
519 });
520 return false;
521 }
522 this.ruleForm.qlrList.forEach(item => {
523 if (item.id == that.czr) {
524 item.sfczr = "1"
525 } else {
526 item.sfczr = "0"
527 }
528 })
529 }
530 }
531 this.$refs['ruleForm'].validate((valid) => {
532 if (valid) {
533 that.$store.dispatch("user/refreshPage", false);
534 saveData(that.ruleForm).then((res) => {
535 if (res.code === 200) {
536 that.$message({
537 showClose: true,
538 message: "保存成功!",
539 type: "success",
540 });
541 that.$store.dispatch("user/refreshPage", true);
542 } else {
543 that.$message({
544 showClose: true,
545 message: res.message,
546 type: "error",
547 });
548 }
549 })
550
551 } else {
552 that.$message({
553 showClose: true,
554 message: "请输入登记原因",
555 type: "error"
556 })
557 return false
558 }
559 })
560 },
561 /**
562 * @description: compare
563 * @author: renchao
564 */
565 compare () {
566 this.$popupDialog(
567 this.ruleForm.qlxx.qllxmc,
568 "registerBook/comparison",
569 {
570 bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
571 dqqllx: "FDCQ2",
572 },
573 "80%",
574 true
575 );
576 },
577 },
578 };
579 </script>
580 <style scoped lang="scss">
581 @import "~@/styles/public.scss";
582 @import "~@/styles/slxx/slxx.scss";
583 /deep/.el-form {
584 display: flex;
585 flex-direction: column;
586 height: calc(100vh - 130px);
587 }
588
589 /deep/.el-form-item__label {
590 padding: 0;
591 }
592
593 /deep/.el-radio {
594 margin-right: 10px;
595 }
596
597 /deep/.el-select {
598 width: 100%;
599 }
600
601 /deep/.el-form-item {
602 margin-bottom: 3px;
603 }
604
605 .marginBot0 {
606 margin-bottom: 0 !important;
607 }
608
609 .slxx {
610 box-sizing: border-box;
611 }
612
613 .slxx_con {
614 flex: 1;
615 height: 100%;
616 background-color: #ffffff;
617 overflow-y: auto;
618 padding-right: 3px;
619 overflow-x: hidden;
620 }
621
622 .submit_btn {
623 height: 50px;
624 }
625
626 .btn {
627 text-align: center;
628 padding-top: 10px;
629 height: 36px;
630 background-color: #ffffff;
631 padding: 5px 0;
632 }
633
634 .textArea {
635 /deep/.el-textarea__inner {
636 min-height: 90px !important;
637 }
638 }
639
640 /deep/.el-form-item__label {
641 padding-bottom: 0px;
642 }
643 </style>
1 <!--
2 * @Description: 受理信息
3 * @Autor: renchao
4 * @LastEditTime: 2024-01-30 16:07:53
5 -->
6 <template>
7 <div class="slxx">
8 <el-form
9 :model="ruleForm"
10 :rules="rules"
11 v-Loading="loading"
12 ref="ruleForm"
13 :label-position="flag ? 'top' : ''"
14 :inline="flag"
15 label-width="120px">
16 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
17 <div class="slxx_title title-block">
18 申请业务信息
19 <div class="triangle"></div>
20 </div>
21 <el-row :gutter="10" v-if="ruleForm.slsq">
22 <el-col :span="8">
23 <el-form-item label="业务号:">
24 <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
25 </el-form-item>
26 </el-col>
27 <el-col :span="8">
28 <el-form-item label="受理人员:">
29 <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
30 </el-form-item>
31 </el-col>
32 <el-col :span="8">
33 <el-form-item label="受理时间:">
34 <el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
35 </el-form-item>
36 </el-col>
37 </el-row>
38 <el-row :gutter="10" v-if="ruleForm.slsq">
39 <el-col :span="8">
40 <el-form-item label="权利类型:">
41 <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
42 </el-form-item>
43 </el-col>
44 <el-col :span="8">
45 <el-form-item label="登记类型:">
46 <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
47 </el-form-item>
48 </el-col>
49 <el-col :span="8">
50 <el-form-item label="登记情形:">
51 <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
52 </el-form-item>
53 </el-col>
54 </el-row>
55 <div class="slxx_title title-block">
56 <el-row>
57 <el-col :span="16">
58 不动产单元情况
59 </el-col>
60 <el-col :span="4" v-show="ruleForm.sldy.djlx=='500'">
61 <el-form-item label="是否创建证书:" style="height:24px">
62 <el-radio-group v-model="ruleForm.sldy.sfxysczs">
63 <el-radio label="1">是</el-radio>
64 <el-radio label="0">否</el-radio>
65 </el-radio-group>
66 </el-form-item>
67 </el-col>
68 <el-col :span="4" v-show="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
69 <el-button @click="compare">变化情况对比+</el-button>
70 </el-col>
71 </el-row>
72 <div class="triangle"></div>
73 </div>
74 <el-row :gutter="10" v-if="ruleForm.qlxx">
75 <el-col :span="8">
76 <el-form-item label="原不动产权证号:">
77 <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
78 </el-form-item>
79 </el-col>
80 <el-col :span="8">
81 <el-form-item label="不动产单元号:">
82 <el-input disabled v-model="ruleForm.sldy.bdcdyh"></el-input>
83 </el-form-item>
84 </el-col>
85 <el-col :span="8">
86 <el-form-item label="坐落:">
87 <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input>
88 </el-form-item>
89 </el-col>
90 </el-row>
91 <el-row :gutter="10" v-if="ruleForm.fdcq2">
92 <el-col :span="8">
93 <el-form-item label="宗地面积:">
94 <div class="flex">
95 <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input>
96 <el-select
97 disabled
98 v-model="ruleForm.zdjbxx.mjdw"
99 style="width: 68px">
100 <el-option
101 v-for="item in dictData['A7']"
102 :key="item.dcode"
103 :label="item.dname"
104 :value="item.dcode">
105 </el-option>
106 </el-select>
107 </div>
108 </el-form-item>
109 </el-col>
110 <el-col :span="8">
111 <el-form-item label="土地使用权人:">
112 <el-input :disabled="!viewEdit" v-model="ruleForm.fdcq2.tdsyqr"></el-input>
113 </el-form-item>
114 </el-col>
115 <el-col :span="8">
116 <el-form-item label="土地性质:">
117 <treeselect
118 :disabled="!viewEdit"
119 v-model="ruleForm.fdcq2.tdxz"
120 noOptionsText="暂无数据"
121 placeholder=""
122 :normalizer="normalizer"
123 :default-expand-level="1"
124 :show-count="true"
125 :options="dictData['A9']" />
126 </el-form-item>
127 </el-col>
128 </el-row>
129 <el-row :gutter="10" v-if="ruleForm.qlxx">
130 <el-col :span="8">
131 <el-form-item label="独用土地面积:">
132 <div class="flex">
133 <el-input
134 maxlength="12"
135 v-model="ruleForm.fdcq2.dytdmj"
136 :disabled="!viewEdit"
137 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
138 <el-select disabled v-model="mjdw" style="width: 68px">
139 <el-option
140 v-for="item in dictData['A7']"
141 :key="item.dcode"
142 :label="item.dname"
143 :value="item.dcode">
144 </el-option>
145 </el-select>
146 </div>
147 </el-form-item>
148 </el-col>
149 <el-col :span="8">
150 <el-form-item label="分摊土地面积:">
151 <div class="flex">
152 <el-input
153 maxlength="12"
154 v-model="ruleForm.fdcq2.fttdmj"
155 :disabled="!viewEdit"
156 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
157 <el-select disabled v-model="mjdw" style="width: 68px">
158 <el-option
159 v-for="item in dictData['A7']"
160 :key="item.dcode"
161 :label="item.dname"
162 :value="item.dcode">
163 </el-option>
164 </el-select>
165 </div>
166 </el-form-item>
167 </el-col>
168 <el-col :span="8">
169 <el-form-item label="房屋性质:">
170 <el-select v-model="ruleForm.fdcq2.fwxz" :disabled="!viewEdit">
171 <el-option
172 v-for="item in dictData['A19']"
173 :key="item.dcode"
174 :label="item.dname"
175 :value="item.dcode">
176 </el-option>
177 </el-select>
178 </el-form-item>
179 </el-col>
180 </el-row>
181 <el-row :gutter="10" v-if="ruleForm.qlxx">
182 <el-col :span="8">
183 <el-form-item label="房屋用途:">
184 <treeselect
185 v-model="ruleForm.fdcq2.ghyt"
186 :disabled="!viewEdit"
187 noOptionsText=""
188 placeholder=""
189 :normalizer="normalizer"
190 :show-count="true"
191 :options="dictData['A17']" />
192 </el-form-item>
193 </el-col>
194 <el-col :span="8">
195 <el-form-item label="房屋结构:">
196 <el-select v-model="ruleForm.fdcq2.fwjg" :disabled="!viewEdit">
197 <el-option
198 v-for="item in dictData['A46']"
199 :key="item.dcode"
200 :label="item.dname"
201 :value="item.dcode">
202 </el-option>
203 </el-select>
204 </el-form-item>
205 </el-col>
206 <el-col :span="8">
207 <el-form-item label="竣工时间:">
208 <el-date-picker
209 v-model="ruleForm.fdcq2.jgsj"
210 class="width100"
211 type="date"
212 placeholder="选择日期"
213 value-format="yyyy-MM-dd"
214 :disabled="!viewEdit"></el-date-picker>
215 </el-form-item>
216 </el-col>
217 </el-row>
218 <el-row :gutter="10" v-if="ruleForm.qlxx">
219 <el-col :span="8">
220 <el-form-item label="所在层:">
221 <el-input
222 maxlength="20"
223 v-model="ruleForm.fdcq2.szc"
224 :disabled="!viewEdit"></el-input>
225 </el-form-item>
226 </el-col>
227 <el-col :span="8">
228 <el-form-item label="总层数:">
229 <el-input
230 maxlength="4"
231 :disabled="!viewEdit"
232 v-model.number="ruleForm.fdcq2.zcs"
233 oninput="value=value.replace(/[^0-9]/g,'')"></el-input>
234 </el-form-item>
235 </el-col>
236 <el-col :span="8">
237 <el-form-item label="房地产交易价格:">
238 <div class="flex">
239 <el-input
240 maxlength="11"
241 v-model="ruleForm.fdcq2.fdcjyjg"
242 style="width: 500%"
243 :disabled="!viewEdit"
244 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
245 <el-select v-model="ruleForm.fdcq2.jedw" :disabled="!viewEdit">
246 <el-option
247 v-for="item in dictData['A57']"
248 :key="item.dcode"
249 :label="item.dname"
250 :value="item.dcode">
251 </el-option>
252 </el-select>
253 </div>
254 </el-form-item>
255 </el-col>
256 </el-row>
257 <el-row :gutter="10" v-if="ruleForm.fdcq2">
258 <el-col :span="8">
259 <el-form-item label="建筑面积:">
260 <div class="flex">
261 <el-input
262 maxlength="12"
263 v-model="ruleForm.fdcq2.jzmj"
264 :disabled="!viewEdit"
265 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
266 <el-select disabled v-model="mjdw" style="width: 68px">
267 <el-option
268 v-for="item in dictData['A7']"
269 :key="item.dcode"
270 :label="item.dname"
271 :value="item.dcode">
272 </el-option>
273 </el-select>
274 </div>
275 </el-form-item>
276 </el-col>
277 <el-col :span="8">
278 <el-form-item label="专有建筑面积:">
279 <div class="flex">
280 <el-input
281 maxlength="12"
282 v-model="ruleForm.fdcq2.zyjzmj"
283 :disabled="!viewEdit"
284 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
285 <el-select disabled v-model="mjdw" style="width: 68px">
286 <el-option
287 v-for="item in dictData['A7']"
288 :key="item.dcode"
289 :label="item.dname"
290 :value="item.dcode">
291 </el-option>
292 </el-select>
293 </div>
294 </el-form-item>
295 </el-col>
296 <el-col :span="8">
297 <el-form-item label="分摊建筑面积:">
298 <div class="flex">
299 <el-input
300 maxlength="12"
301 v-model="ruleForm.fdcq2.ftjzmj"
302 :disabled="!viewEdit"
303 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
304 <el-select disabled v-model="mjdw" style="width: 68px">
305 <el-option
306 v-for="item in dictData['A7']"
307 :key="item.dcode"
308 :label="item.dname"
309 :value="item.dcode">
310 </el-option>
311 </el-select>
312 </div>
313 </el-form-item>
314 </el-col>
315 </el-row>
316 <el-row :gutter="10">
317 <el-col :span="24">
318 <el-form-item label="附记:">
319 <el-input
320 v-model="ruleForm.fdcq2.fj"
321 type="textarea"
322 maxlength="500"
323 show-word-limit
324 :disabled="!viewEdit"></el-input>
325 </el-form-item>
326 </el-col>
327 </el-row>
328 <div class="slxx_title title-block">
329 土地用途
330 <div class="triangle"></div>
331 </div>
332 <tdytTable
333 :ableOperation="viewEdit"
334 :tableData="ruleForm.tdytqxList"
335 @upDateTdytxxList="upDateTdytxxList" />
336 <div class="slxx_title title-block">
337 权利人信息
338 <div class="triangle"></div>
339 </div>
340 <el-row :gutter="10">
341 <el-col :span="12">
342 <el-form-item label="共有方式:">
343 <el-radio-group
344 :disabled="!viewEdit"
345 v-model="ruleForm.sldy.gyfs">
346 <el-radio label="0">单独所有</el-radio>
347 <el-radio label="1">共同共有</el-radio>
348 <el-radio label="2">按份所有</el-radio>
349 <el-radio label="3">其它共有</el-radio>
350 </el-radio-group>
351 </el-form-item>
352 </el-col>
353 <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'">
354 <el-form-item label="是否分别持证:">
355 <el-radio-group
356 v-model="ruleForm.sldy.sqfbcz"
357 :disabled="!viewEdit"
358 @input="updaterow()">
359 <el-radio :label="1">是</el-radio>
360 <el-radio :label="0">否</el-radio>
361 </el-radio-group>
362 </el-form-item>
363 </el-col>
364 <el-col
365 :span="6"
366 v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
367 <el-form-item label="持证人:">
368 <el-select
369 v-model="czr"
370 placeholder="持证人"
371 :disabled="!viewEdit">
372 <el-option
373 v-for="(item,index) in czrOptions"
374 :key="index"
375 :label="item.sqrmc"
376 :value="item.id">
377 </el-option>
378 </el-select>
379 </el-form-item>
380 </el-col>
381 </el-row>
382 <qlrCommonTable
383 @upDateQlrxxList="upDateQlrxxList"
384 :disabled="!viewEdit"
385 :tableData="ruleForm.qlrList"
386 :gyfs="ruleForm.sldy.gyfs" />
387 <div class="slxx_title title-block">
388 登记原因
389 <div class="triangle"></div>
390 </div>
391 <el-row :gutter="10">
392 <el-col>
393 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="fdcq2.djyy">
394 <el-input
395 class="textArea"
396 type="textarea"
397 maxlength="500"
398 show-word-limit
399 :disabled="!viewEdit"
400 v-model="ruleForm.fdcq2.djyy">
401 </el-input>
402 </el-form-item>
403 </el-col>
404 </el-row>
405 </div>
406 <el-row class="btn" v-if="isSave">
407 <el-form-item>
408 <el-button type="primary" @click="onSubmit">保存</el-button>
409 </el-form-item>
410 </el-row>
411 </el-form>
412 </div>
413 </template>
414 <script>
415 import ywmix from "@/views/ywbl/mixin/index";
416 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
417 import tdytTable from "@/views/workflow/components/tdytTable";
418 import { Init, saveData } from "@/api/workflow/fwsyqFlow.js";
419 import { mapGetters } from "vuex";
420 export default {
421 mixins: [ywmix],
422 mounted () {
423 let that = this
424 this.loading = true
425 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
426 this.propsParam = this.$attrs;
427 var formdata = new FormData();
428 formdata.append("bsmSldy", this.propsParam.bsmSldy);
429 formdata.append("djlx", this.propsParam.djlx);
430 formdata.append("isEdit", this.viewEdit);
431 Init(formdata).then((res) => {
432 setTimeout(() => {
433 this.loading = false
434 }, 200)
435 if (res.code === 200 && res.result) {
436 that.ruleForm = {
437 ...res.result,
438 ...res.result.zdjbxxdatas,
439 ...res.result.qlxxdatas,
440 ...res.result.jsydsyqdatas,
441 };
442 that.ruleForm.qlrList.forEach((item) => {
443 item.id = item.bsmSqr
444 if (item.sfczr == '1') {
445 that.czr = item.bsmSqr
446 }
447 })
448 that.czrOptions = that.ruleForm.qlrList;
449 that.isSave = that.viewEdit
450 } else {
451 that.isSave = false
452 that.$confirm(res.message, '提示', {
453 cancelButtonText: '取消',
454 showConfirmButton: false,
455 type: 'warning'
456 })
457 }
458 }).catch(() => {
459 this.loading = false
460 this.isSave = false
461 })
462 },
463 components: { qlrCommonTable, tdytTable },
464 computed: {
465 ...mapGetters(["dictData", "flag"]),
466 },
467 data () {
468 return {
469 normalizer (node) {
470 if (node.children == null || node.children == "null") {
471 delete node.children;
472 }
473 return {
474 id: node.dcode,
475 label: node.dname,
476 children: node.children,
477 };
478 },
479 isSave: true,
480 loading: false,
481 mjdw: "1",
482 //表单是否可操作
483 viewEdit: false,
484 disabled: true,
485 tdytOption: [],
486 czrOptions: [],
487 czr: "",
488 ruleForm: {
489 flow: {
490 ywh: "",
491 },
492 slry: "",
493 slsj: "",
494 qllx: "",
495 djlx: "",
496 djqx: "",
497 sldy: {
498 gyfs: "",
499 },
500 // 宗地代码
501 zddm: "",
502 bdcdyh: "",
503 qlxzmc: "",
504 qlrxx: [],
505 // 自然幢号
506 zrzh: "",
507 // 户不动产单元号
508 hbdcdyh: "",
509 djzt: "",
510 // 图幅丘幢号
511 tfqzh: "",
512 zl: "",
513 // 房屋用途
514 fwyt: "",
515 fwxz: "",
516 fwjg: "",
517 // 权利人信息
518 // 是否分别持证
519 sffbcz: "",
520 // 持证人
521 czr: "",
522 djyy: "",
523 // 规划用途名称
524 zdjbxx: {
525 ghytmc: "",
526 },
527 fdcq2: {
528 fwxzmc: "",
529 },
530 slsq: {
531 gyfs: "",
532 },
533 },
534 //传递参数
535 propsParam: {},
536 rules: {
537 'fdcq2.djyy': [
538 { required: true, message: '请输入登记原因', trigger: 'blur' }
539 ]
540 }
541 }
542 },
543 methods: {
544 /**
545 * @description: dataSelectClick
546 * @author: renchao
547 */
548 dataSelectClick () {
549 this.$popup(
550 "房屋所有权",
551 this.BASE_API.SERVERAPI + "/rest/workflow/main/dataCompare/slxxCompareDetai",
552 {
553 formData: {
554 bsmSldy: this.propsParam.bsmSldy,
555 qllx: this.propsParam.qllx,
556 },
557 }
558 );
559 },
560 /**
561 * @description: 更新土地用途信息
562 * @param {*} val
563 * @author: renchao
564 */
565 upDateTdytxxList (val) {
566 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
567 this.key++;
568 },
569 /**
570 * @description: 是否持证人变化
571 * @param {*} val
572 * @author: renchao
573 */
574 updaterow () {
575 this.czr = "";
576 },
577 /**
578 * @description: 更新权利人信息
579 * @param {*} val
580 * @author: renchao
581 */
582 upDateQlrxxList (val) {
583 if (!_.isEqual(val, this.ruleForm.qlrList)) {
584 this.ruleForm.qlrList = _.cloneDeep(val);
585 this.czrOptions = this.ruleForm.qlrList;
586 }
587 this.num = 0
588 this.ruleForm.qlrList.forEach(item => {
589 if (item.id == this.czr) {
590 this.num++
591 }
592 })
593 if (this.num == 0) {
594 this.czr = ''
595 }
596 },
597 /**
598 * @description: 更新权利人信息
599 * @param {*} val
600 * @author: renchao
601 */
602 upDateYwrxxList (val) {
603 this.ruleForm.ywrList = _.cloneDeep(val);
604 },
605 /**
606 * @description: onSubmit
607 * @author: renchao
608 */
609 onSubmit () {
610 let that = this;
611 let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt);
612 if (arr.length > 0) {
613 this.$message({
614 showClose: true,
615 message: "土地用途不能为空",
616 type: "error",
617 });
618 return false;
619 }
620 if (this.ruleForm.qlrList.length == 0) {
621 this.$message({
622 showClose: true,
623 message: "请确认权利人信息",
624 type: "error",
625 });
626 return false;
627 }
628
629 if (this.ruleForm.sldy.gyfs == "0") {
630 if (this.ruleForm.qlrList.length > 1) {
631 this.$message({
632 showClose: true,
633 message: "共有方式:单独所有,权利人只能是一个人",
634 type: "error",
635 });
636 return false;
637 }
638 this.ruleForm.qlrList[0].sfczr = "1";
639 } else {
640 if (this.ruleForm.qlrList.length <= 1) {
641 this.$message({
642 showClose: true,
643 message:
644 "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
645 type: "error",
646 });
647 return false;
648 }
649 //是否分别持证
650 if (this.ruleForm.sldy.sqfbcz == "1") {
651 //是
652 this.ruleForm.qlrList.forEach((item, index) => {
653 item.sfczr = "1";
654 });
655 } else {
656 if (that.czr === '') {
657 that.$message({
658 showClose: true,
659 message: "请选择持证人",
660 type: "error"
661 });
662 return false;
663 }
664 this.ruleForm.qlrList.forEach(item => {
665 if (item.id == that.czr) {
666 item.sfczr = "1"
667 } else {
668 item.sfczr = "0"
669 }
670 })
671 }
672 }
673 this.$refs['ruleForm'].validate((valid) => {
674 if (valid) {
675 that.$store.dispatch("user/refreshPage", false);
676 saveData(that.ruleForm).then((res) => {
677 if (res.code === 200) {
678 that.$message({
679 showClose: true,
680 message: "保存成功!",
681 type: "success",
682 });
683 that.$store.dispatch("user/refreshPage", true);
684 } else {
685 that.$message({
686 showClose: true,
687 message: res.message,
688 type: "error",
689 });
690 }
691 })
692
693 } else {
694 that.$message({
695 showClose: true,
696 message: "请输入登记原因",
697 type: "error"
698 })
699 return false
700 }
701 })
702 },
703 /**
704 * @description: compare
705 * @author: renchao
706 */
707 compare () {
708 this.$popupDialog(
709 this.ruleForm.qlxx.qllxmc,
710 "registerBook/comparison",
711 {
712 bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
713 dqqllx: "FDCQ2",
714 },
715 "80%",
716 true
717 );
718 },
719 },
720 };
721 </script>
722 <style scoped lang="scss">
723 @import "~@/styles/public.scss";
724 @import "~@/styles/slxx/slxx.scss";
725 /deep/.el-form {
726 display: flex;
727 flex-direction: column;
728 height: calc(100vh - 130px);
729 }
730
731 /deep/.el-form-item__label {
732 padding: 0;
733 }
734
735 /deep/.el-radio {
736 margin-right: 10px;
737 }
738
739 /deep/.el-select {
740 width: 100%;
741 }
742
743 /deep/.el-form-item {
744 margin-bottom: 3px;
745 }
746
747 .marginBot0 {
748 margin-bottom: 0 !important;
749 }
750
751 .slxx {
752 box-sizing: border-box;
753 }
754
755 .slxx_con {
756 flex: 1;
757 height: 100%;
758 background-color: #ffffff;
759 overflow-y: auto;
760 padding-right: 3px;
761 overflow-x: hidden;
762 }
763
764 .submit_btn {
765 height: 50px;
766 }
767
768 .btn {
769 text-align: center;
770 padding-top: 10px;
771 height: 36px;
772 background-color: #ffffff;
773 padding: 5px 0;
774 }
775
776 .textArea {
777 /deep/.el-textarea__inner {
778 min-height: 90px !important;
779 }
780 }
781
782 /deep/.el-form-item__label {
783 padding-bottom: 0px;
784 }
785 </style>