bee6edb8 by 单帅旗

新增:批量房屋首次登记

1 parent c30c2bea
......@@ -5,6 +5,43 @@
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/**
* 国有建设用地使用权/房屋所有权-批量房屋初始化
* @param data
* @author ssq 2023年5月26日14点29分
*/
export function BatchInit(data){
let apiUrl = "";
switch (data.get("djlx")) {
case "100":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/fristBatchInit";
break;
case "200":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/transferInit";
break;
case "300":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/changeInit";
break;
case "400":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/logoutBatchSave";
break;
case "500":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/riviseInit";
break;
case "901":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/renewalInit";
break;
case "902":
apiUrl = SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/replaceInit";
break;
}
return request({
url: apiUrl,
method: 'post',
data
})
}
/**
* @description: 初始化内容
* @param {*} data
......
......@@ -39,10 +39,10 @@
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import { leftMenu } from "@/api/fqsq.js"
import { deleteSlbdcdy } from "@/api/ywbl.js";
export default {
import { mapGetters } from 'vuex'
import { leftMenu } from "@/api/fqsq.js"
import { deleteSlbdcdy } from "@/api/ywbl.js";
export default {
data () {
return {
//受理申请标识码
......@@ -105,6 +105,10 @@
if (this.unitData.length > 1) {
let qllx = this.$route.query?.sqywbm?.substring(0, 3);
switch (qllx) {
case 'A04':
this.showBatch = true;
this.batchButtonName = '批量单元信息';
break;
case 'B39':
this.showBatch = true;
this.batchButtonName = '批量查封清单信息';
......@@ -159,6 +163,7 @@
this.currentSelectProps.batchOperation = true;
this.activeIndex = "-1";
this.$parent.stepForm();
},
//批量操作
handleBatchDel () {
......@@ -178,12 +183,12 @@
this.$store.dispatch('user/refreshPage', false);
}
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
@import "../../workFrame.scss";
.leftmenu ul {
@import "~@/styles/mixin.scss";
@import "../../workFrame.scss";
.leftmenu ul {
height: calc(100vh - 120px);
}
}
</style>
......
......@@ -4,7 +4,7 @@
* @LastEditTime: 2023-05-29 14:39:11
*/
//流程环节操作按钮
export function getForm (tabName, djywbm) {
export function getForm(tabName, djywbm) {
let form;
switch (tabName) {
case "jsydsyqslxx100":
......@@ -22,6 +22,9 @@ export function getForm (tabName, djywbm) {
case "nydsyqslxx100":
form = require("@/views/ywbl/slsqxx/nydsyq/slxx.vue");
break;
case "plfdcq2":
form = require("@/views/ywbl/slsqxx/fdcq2/slxxOverview.vue");
break;
case "nydsyqslxx200":
form = require("@/views/ywbl/slsqxx/nydsyq/slxx200.vue");
break;
......
<!--
* @Description: 受理信息
* @Autor: renchao
* @LastEditTime: 2023-05-25 08:41:40
-->
<template>
<div class="slxx">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag"
label-width="120px">
<div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
<div class="slxx_title title-block">
受理信息
<div class="triangle"></div>
</div>
<el-row :gutter="10" v-if="ruleForm.slsq">
<el-col :span="8">
<el-form-item label="业务号:">
<el-input disabled v-model="ruleForm.slsq.ywh"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="受理人员:">
<el-input disabled v-model="ruleForm.slsq.slry"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="受理时间:">
<el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10" v-if="ruleForm.slsq">
<el-col :span="8">
<el-form-item label="权利类型:">
<el-input disabled v-model="ruleForm.slsq.qllxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="登记类型:">
<el-input disabled v-model="ruleForm.slsq.djlxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="登记情形:">
<el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
</el-form-item>
</el-col>
</el-row>
<div class="slxx_title title-block">
房屋概况
<div class="triangle"></div>
</div>
<el-row :gutter="10" v-if="ruleForm.zdjbxx">
<el-col :span="8">
<el-form-item label="规划用途名称:">
<el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="权利设定方式名称:">
<el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="房屋性质:">
<el-input disabled v-model="splicingFdcq2.fwxz"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10" v-if="ruleForm.zdjbxx">
<el-col :span="8">
<el-form-item label="房屋结构:">
<el-input disabled v-model="splicingFdcq2.fwjg"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="建筑总面积:">
<el-input disabled v-model="splicingFdcq2.jzmj"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="房屋总套数:">
<el-input disabled v-model="splicingFdcq2.zts"></el-input>
</el-form-item>
</el-col>
</el-row>
<div class="slxx_title title-block">
权利人信息
<div class="triangle"></div>
</div>
<el-row :gutter="10">
<el-col :span="14" v-if="ruleForm.qlxx">
<el-form-item label="共有方式:">
<el-radio-group :disabled="$route.query.viewtype == 1" @change="showCZInfo"
v-model="ruleForm.slsq.gyfs">
<el-radio label="0">单独所有</el-radio>
<el-radio label="1">共同共有</el-radio>
<el-radio label="2">按份所有</el-radio>
<el-radio label="3">其它共有</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="发证方式:">
<el-radio-group v-model="ruleForm.slsq.fzfs">
<el-radio label="1">小证</el-radio>
<el-radio label="2">大证</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="5" v-show="ruleForm.qlxx && ruleForm.qlxx.gyfs == '2'">
<el-form-item label="是否分别持证:">
<el-radio-group v-model="ruleForm.slsq.sqfbcz">
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="5" v-show="ruleForm.qlxx && ruleForm.qlxx.gyfs == '2'">
<el-form-item label="持证人:">
<el-select v-model="ruleForm.slsq.czr" placeholder="持证人">
<el-option v-for="item in czrOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<qlrCommonTable v-if="ruleForm.qlxx" @upDateQlrxxList="upDateQlrxxList" :tableData="ruleForm.qlrList"
:gyfs="ruleForm.qlxx.gyfs" />
<!-- <div v-if="ruleForm.ywrList">
<div class="slxx_title title-block">
义务人信息
<div class="triangle"></div>
</div>
<qlrCommonTable v-if="ruleForm.qlxxList" @upDateQlrxxList="upDateYwrxxList" :tableData="ruleForm.ywrList"
:gyfs="ruleForm.qlxx.gyfs" />
</div>-->
<div class="slxx_title title-block">
登记原因
<div class="triangle"></div>
</div>
<el-row :gutter="10">
<el-col>
<el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="djyy">
<el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1"
v-model="ruleForm.fdcq2.djyy">
</el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<el-row class="btn" v-if="!$route.query.viewtype && ableOperation">
<el-form-item>
<el-button type="primary" @click="onSubmit">保存</el-button>
</el-form-item>
</el-row>
</el-form>
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import {BatchInit, Init, saveBatchData, saveData} from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
created(callbackfn, thisArg) {
this.ableOperation = this.$parent.currentSelectTab.ableOperation
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("bsmSlsq", this.bsmSlsq);
BatchInit(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.ruleForm.qlxx = this.ruleForm.qlxxList[0]
this.splicingFdcq2Info();
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {
slsq: {},
zdjbxx: {},
sldyList: [],
qlxxList: [],
fdcq2List:[]
},
//传递参数
propsParam: this.$attrs,
//表单是否可操作
ableOperation: true,
rules: {},
bsmSlsq: this.$route.query.bsmSlsq,//受理申请标识码
splicingFdcq2:{//前端根据后台数组组装展示内容
fwxz:{}//房屋性质
,fwjg:{}//房屋结构
,jzmj:{} //建筑面积
,zts:{}//房屋总套数
}
}
},
methods: {
//组装房地产权通用信息
splicingFdcq2Info(){
let fdcq2List = this.ruleForm.fdcq2List;
let fwxzArr = [];
let fwjgArr = [];
let jzmj = 0;
fdcq2List.forEach(fdcq2 => {
fwxzArr.push(fdcq2.fwxzmc);
fwjgArr.push(fdcq2.fwjgmc);
jzmj += parseFloat(fdcq2.jzmj);
})
//将数据转为字符串
//房屋性质
let fwxz = Array.from(new Set(fwxzArr)).join(",");
//房屋结构
let fwjg = Array.from(new Set(fwjgArr)).join(",");
this.splicingFdcq2.fwxz = fwxz;
this.splicingFdcq2.fwjg = fwjg;
this.splicingFdcq2.jzmj = jzmj;
this.splicingFdcq2.zts = fdcq2List.length;
},
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
showCZInfo () {
console.log(this.ruleForm.slsq.gyfs);
},
// 更新义务人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
},
onSubmit () {
saveBatchData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
this.$store.dispatch('user/refreshPage', true);
} else {
this.$message({
showClose: true,
message: res.message,
type: "error"
})
}
})
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.slxx {
box-sizing: border-box;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.submit_btn {
height: 50px;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
}
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
</style>