6ffa52b0 by 杨威

自然幢表单验证及权利人组件修改

1 parent 84cf8218
......@@ -51,8 +51,8 @@
@click="handleInClick(index, childIndex, 'minus')"
>-</el-button
>
<!-- </template> -->
</el-col>
<template v-if="hasSyqx">
<el-col
:span="3"
:key="childIndex + '7'"
......@@ -230,6 +230,116 @@
</ul>
</el-col>
</template>
<template v-if="!hasSyqx">
<el-col
:span="5"
:key="childIndex + '7'"
:class="childIndex > 0 ? 'childYT' : ''"
>
<ul>
<li>批准用途</li>
<li>实际用途</li>
<li>土地使用起始时间<i class="requisite">*</i></li>
</ul>
</el-col>
<el-col
:span="5"
:key="childIndex + '6'"
:class="childIndex > 0 ? 'childYT' : ''"
>
<ul>
<li>
<el-select-tree
v-if="show"
:default-expand-all="defaultExpandAll"
:multiple="multiple"
:placeholder="placeholder"
:disabled="disabled"
:data="$store.state.tdytList"
:props="treeProps"
:check-strictly="checkStrictly"
:clearable="clearable"
v-model="childItem.pzytdm"
></el-select-tree>
</li>
<li>
<el-select-tree
v-if="show"
:default-expand-all="defaultExpandAll"
:multiple="multiple"
:placeholder="placeholder"
:disabled="disabled"
:data="$store.state.tdytList"
:props="treeProps"
:check-strictly="checkStrictly"
:clearable="clearable"
v-model="childItem.sjytdm"
></el-select-tree>
</li>
<li>
<el-date-picker
v-model="childItem.tdsyqssj"
ref="tdsyqssj"
:picker-options="childItem.pickerStart"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期"
@input="startTime(index,childIndex)"
>
</el-date-picker>
</li>
</ul>
</el-col>
<el-col
:span="5"
:key="childIndex + '5'"
:class="childIndex > 0 ? 'childYT' : ''"
>
<ul>
<li>地类编码</li>
<li>地类编码</li>
<li>土地使用结束时间<i class="requisite">*</i></li>
</ul>
</el-col>
<el-col
:span="5"
:key="childIndex + '4'"
:class="childIndex > 0 ? 'childYT' : ''"
>
<ul>
<li>
<input
type="text"
style="top: -1px;"
v-model="childItem.pzytdm"
class="formInput"
/>
</li>
<li>
<input
type="text"
v-model="childItem.sjytdm"
class="formInput"
/>
</li>
<li>
<el-date-picker
v-model="childItem.tdsyjssj"
ref="tdsyjssj"
type="date"
value-format="yyyy-MM-dd"
:picker-options="childItem.pickerEnd"
placeholder="选择日期"
@input="endTime(index,childIndex)"
>
</el-date-picker>
</li>
</ul>
</el-col>
</template>
</template>
<div class="title">
<el-select-tree
......@@ -260,6 +370,10 @@ export default {
return {};
},
},
hasSyqx:{
type:Boolean,
default:false
}
},
data() {
return {
......@@ -348,7 +462,6 @@ export default {
this.countList[index].list[childIndex].tdsyjssj = Number(startTime.substring(0,4))+Number(syqx)+startTime.slice(4,10);
},
endTime(index,childIndex,e){
console.log(e,'eeeeee');
let startTime = this.countList[index].list[childIndex].tdsyqssj;
let endTime = this.countList[index].list[childIndex].tdsyjssj;
this.countList[index].list[childIndex].pickerStart={
......@@ -479,13 +592,6 @@ export default {
rule: /^\s*$/g, //非空
},
{
data:item.list[ind].syqx,
name:'使用期限',
dom:this.$refs.syqx[temp+ind],
// val:this.$refs.syqx[temp+ind].value,
rule: /^\s*$/g, //非空
},
{
data:item.list[ind].tdsyjssj,
name:'土地使用结束时间',
dom:this.$refs.tdsyjssj[temp+ind],
......@@ -496,6 +602,17 @@ export default {
if (ind == item.list.length-1) {
temp += item.list.length;
}
if(this.hasSyqx){
rules.push(
{
data:item.list[ind].syqx,
name:'使用期限',
dom:this.$refs.syqx[temp+ind],
// val:this.$refs.syqx[temp+ind].value,
rule: /^\s*$/g, //非空
}
)
}
})
})
this.rulesResult = true;
......
......@@ -101,9 +101,11 @@
<li>
<el-date-picker
v-model="childItem.tdsyqssj"
:picker-options="childItem.pickerStart"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期"
@input="startTime(index,childIndex)"
>
</el-date-picker>
</li>
......@@ -148,7 +150,9 @@
v-model="childItem.tdsyjssj"
type="date"
value-format="yyyy-MM-dd"
:picker-options="childItem.pickerEnd"
placeholder="选择日期"
@input="endTime(index,childIndex)"
>
</el-date-picker>
</li>
......@@ -221,6 +225,8 @@ export default {
syqx: "",
tdsyjssj: "",
tdsyqssj: "",
pickerStart:{},
pickerEnd:{},
tdzh: "",
},
],
......@@ -317,6 +323,42 @@ export default {
getQlxzDataList() {
return this.countList;
},
//起始时间判断
startTime(index,childIndex){
let startTime= this.countList[index].list[childIndex].tdsyqssj;
let endTime=this.countList[index].list[childIndex].tdsyjssj;
this.countList[index].list[childIndex].pickerEnd={
disabledDate: (time) => {
if (Object.keys(startTime).length>0) {
return new Date(startTime).getTime()>time.getTime();
}else {
return time.getTime()< Date.now();
}
}
}
if (Object.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
let startYear= new Date(startTime).getFullYear();
let endYear=new Date(endTime).getFullYear();
}
},
endTime(index,childIndex,e){
console.log(e,'eeeeee');
let startTime = this.countList[index].list[childIndex].tdsyqssj;
let endTime = this.countList[index].list[childIndex].tdsyjssj;
this.countList[index].list[childIndex].pickerStart={
disabledDate: (time) => {
if (Object.keys(endTime).length>0) {
return new Date(endTime).getTime()<time.getTime();
}else {
return time.getTime() > Date.now();
}
}
}
if (Object.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
let startYear= new Date(startTime).getFullYear();
let endYear=new Date(endTime).getFullYear();
}
},
},
};
</script>
......
......@@ -187,7 +187,7 @@
<tr>
<td colspan="12" rowspan="4" align="center">
<Qlxz ref="qlxzModule"></Qlxz>
<Qlxz ref="qlxzModule" :hasSyqx='false'></Qlxz>
</td>
</tr>
<tr></tr>
......@@ -218,7 +218,7 @@
</template>
<script>
import Qlxz from "./../../components/formMenu/qlxz_simple";
import Qlxz from "./../../components/formMenu/qlxz";
import {batchUpdateQjH} from "../../api/h";
export default {
name: "plH",
......
......@@ -141,7 +141,7 @@
<tr>
<td colspan="12" align="center">
<Qlxz ref="qlxzModule" :formData="form"></Qlxz>
<Qlxz ref="qlxzModule" :hasSyqx='false' :formData="form"></Qlxz>
</td>
</tr>
......@@ -207,7 +207,7 @@
<script>
import Qlr from "../../../components/formMenu/qlr";
import Qlxz from "../../../components/formMenu/qlxz_simple";
import Qlxz from "../../../components/formMenu/qlxz";
import {saveDzInfo,getBdcdyh,getDzDetailByBsm} from "../../../api/dz";
import {getQjZdjbxxDetailById} from "../../../api/zd"
import {submit,registerCall} from "../../../api/common"
......
......@@ -301,7 +301,7 @@
</tr>
<tr>
<td colspan="12">
<Qlxz ref="qlxzModule" :formData="formData"></Qlxz>
<Qlxz ref="qlxzModule" :hasSyqx='true' :formData="formData"></Qlxz>
</td>
</tr>
<tr>
......@@ -479,9 +479,9 @@ export default {
console.log(res.result,'res.result');
this.getXzqData(res.result.xzqbsm,res.result.djqbsm);
//如果没有宗地代码,自动生成
if(res.result.zddm == null){
this.generatorCode()
}
// if(res.result.zddm == null){
// this.generatorCode()
// }
//判断容密高是否为区间值,如果是区间值,则将校验值置为'-'并给rjl,jzmd,jzxg赋值
this.rjl = this.isInterval(this.formData.jyrjl) ? this.formData.jyrjl : '';
this.formData.jyrjl = this.isInterval(this.formData.jyrjl) ? '-' : this.formData.jyrjl;
......@@ -717,7 +717,8 @@ export default {
this.$nextTick(()=>{
if(flag){
//宗地面积处理
this.formData.zdmj = this.formData.zdmj.replace(/[^\d\.]/g,'')
// console.log(this.formData.zdmj,'this.formData.zdmj');
// this.formData.zdmj = this.formData.zdmj.replace(/[^\d\.]/g,'')
updateQjZdjbxx(this.formData)
.then((res) => {
if (res.code == 200) {
......
......@@ -310,7 +310,7 @@
<tr>
<td colspan="12" rowspan="4" align="center">
<Qlxz ref="qlxzModule"></Qlxz>
<Qlxz ref="qlxzModule" :hasSyqx='false'></Qlxz>
</td>
</tr>
<tr></tr>
......@@ -403,7 +403,7 @@
<script>
import Qlr from "./../../../../../components/formMenu/qlr";
import Qlxz from "./../../../../../components/formMenu/qlxz_simple";
import Qlxz from "./../../../../../components/formMenu/qlxz";
import {getQjHDetailByBsm,updateQjH} from "./../../../../../api/h";
import {getBdcdyh} from "./../../../../../api/zrz";
import {submit,registerCall} from "./../../../../../api/common"
......
......@@ -14,18 +14,18 @@
</td>
<td colspan="2" >自然幢号<i class="requisite">*</i></td>
<td colspan="4" class="psr">
<input class="formInput percent80" :disabled="form.qszt!='0'" maxlength="24" v-model="form.zrzh">
<input class="formInput percent80" ref="zrzh" :disabled="form.qszt!='0'" maxlength="24" v-model="form.zrzh">
<el-button @click.prevent="generatorCode" type="warning" class="createBtn" size="mini">生成</el-button>
</td>
</tr>
<tr>
<td colspan="2" >项目名称<i class="requisite">*</i></td>
<td colspan="4" >
<input class="formInput " :disabled="form.qszt!='0'" v-model="form.xmmc">
<input class="formInput " ref="xmmc" :disabled="form.qszt!='0'" v-model="form.xmmc">
</td>
<td colspan="2" >不动产单元号<i class="requisite">*</i></td>
<td colspan="4">
<input class="formInput " :disabled="form.qszt!='0'" maxlength="28" v-model="form.bdcdyh">
<input class="formInput " ref="bdcdyh" :disabled="form.qszt!='0'" maxlength="28" v-model="form.bdcdyh">
</td>
</tr>
......@@ -43,7 +43,7 @@
<tr>
<td colspan="2" >房屋性质<i class="requisite">*</i></td>
<td colspan="4" >
<el-select class="formSelect" :disabled="form.qszt!='0'" v-model="form.fwxzbsm" placeholder="请选择" >
<el-select class="formSelect" ref="fwxz" :disabled="form.qszt!='0'" v-model="form.fwxzbsm" placeholder="请选择" >
<el-option
v-for="item in $store.state.fwxzOptions"
:key="item.bsm"
......@@ -119,7 +119,7 @@
</tr>
<tr>
<td colspan="2" >产别<i class="requisite">*</i></td>
<td colspan="2" >产别</td>
<td colspan="4" >
<el-select v-model="form.fwcbbsm" :disabled="form.qszt!='0'" placeholder="请选择" >
<el-option
......@@ -130,7 +130,7 @@
</el-option>
</el-select>
</td>
<td colspan="2" >产权来源<i class="requisite">*</i></td>
<td colspan="2" >产权来源</td>
<td colspan="4" >
<el-select v-model="form.fwcqlybsm" :disabled="form.qszt!='0'" placeholder="请选择" >
<el-option
......@@ -155,6 +155,7 @@
</td>
<td colspan="3" >
<el-select-tree style="width:100%"
ref="ghyt"
v-if="show"
:default-expand-all="defaultExpandAll"
:multiple="multiple"
......@@ -170,6 +171,7 @@
<td colspan="2" >用途</td>
<td colspan="4" >
<el-select-tree style="width:100%"
ref="yt"
v-if="show"
:default-expand-all="defaultExpandAll"
:multiple="multiple"
......@@ -194,7 +196,7 @@
<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;删除</span>
</td>
<td colspan="9" >
<el-select class="persent78" :disabled="form.qszt!='0'" v-model="item1.fwjgzdbsm" placeholder="请选择" >
<el-select class="persent78" ref="fwjg" :disabled="form.qszt!='0'" v-model="item1.fwjgzdbsm" placeholder="请选择" >
<el-option
v-for="item in $store.state.jgOptions"
:key="item.bsm"
......@@ -207,7 +209,7 @@
<tr>
<td colspan="12" align="center">
<Qlxz ref="qlxzModule" :formData="form"></Qlxz>
<Qlxz ref="qlxzModule" :hasSyqx='false' :formData="form"></Qlxz>
</td>
</tr>
......@@ -216,7 +218,7 @@
<span>坐落<i class="requisite">*</i></span>
</td>
<td colspan="10" >
<input class="formInput" :disabled="form.qszt!='0'" v-model="form.zl">
<input class="formInput" ref="zl" :disabled="form.qszt!='0'" v-model="form.zl">
</td>
</tr>
......@@ -273,7 +275,7 @@
<script>
import Qlr from "../../../components/formMenu/qlr";
import Qlxz from "../../../components/formMenu/qlxz_simple";
import Qlxz from "../../../components/formMenu/qlxz";
import {getBdcdyh,saveZrzInfo,getZrzDetailByBsm} from "../../../api/zrz"
import {getQjZdjbxxDetailById} from "../../../api/zd"
import {submit,registerCall} from "../../../api/common"
......@@ -392,7 +394,8 @@
DJZQDM:"",
ZDTZM:"",
BSM:"",
}
},
rules:[],
}
},
methods: {
......@@ -450,16 +453,90 @@
onSave(){
//判断自然幢号和不动产单元号是否手动修改过(自然幢号和不动产单元号的前19位是否和宗地代码一致)
console.log(this.form,'this.form');
//给校验项赋值
this.rules=[
{
data:this.form.zrzh,
name:'自然幢号',
dom:this.$refs.zrzh,
rule: /^\s*$/g, //非空
},
{
data:this.form.bdcdyh,
name:'不动产单元号',
dom:this.$refs.bdcdyh,
rule: /^\s*$/g, //非空
},
{
data:this.form.xmmc,
name:'项目名称',
dom:this.$refs.xmmc,
rule: /^\s*$/g, //非空
},
{
data:this.form.fwxzbsm,
name:'房屋性质',
dom:this.$refs.fwxz,
rule: /^\s*$/g, //非空
},
{
data:this.form.zl,
name:'坐落',
dom:this.$refs.zl,
rule: /^\s*$/g, //非空
},
]
this.form.fwytList.forEach((item,index)=>{
this.rules.push(
{
data:this.form.fwytList[index].ghyt,
name:'规划用途',
dom:this.$refs.ghyt[index],
rule: /^\s*$/g, //非空
},
{
data:this.form.fwytList[index].yt,
name:'用途',
dom:this.$refs.yt[index],
rule: /^\s*$/g, //非空
},
)
})
this.form.fwjgList.forEach((item,index)=>{
this.rules.push(
{
data:this.form.fwjgList[index].fwjg,
name:'房屋结构',
dom:this.$refs.fwjg[index],
rule: /^\s*$/g, //非空
},
)
})
this.loading=true;
this.form.zrzbsm=this.bsm;
this.form.qlxzList= this.$refs.qlxzModule.getQlxzDataList();
this.$refs.qlxzModule.getRules();
let flag = true;
console.log(this.rules,'this.rules');
this.rules.forEach(item=>{
if(item.rule.test(item.data) || item.data == null){
if(item.dom.$el){
item.dom.$el.style.border = '1px solid red';
}else{
item.dom.style.border = '1px solid red';
}
flag = false;
return false
}
})
this.$nextTick(()=>{
if (flag) {
if(this.form.zrzh.substring(0,19) != this.form.zddm || this.form.bdcdyh.substring(0,19) != this.form.zddm){
this.$message({
message: '自然幢号或不动产单元号有误,请核对后再试一次',
type: "warning",
});
}else{
this.loading=true;
this.form.zrzbsm=this.bsm;
this.form.qlxzList= this.$refs.qlxzModule.getQlxzDataList();
if(1>0){
saveZrzInfo(this.form).then((res)=>{
if(res.code===200){
this.$message.success("保存完成!")
......@@ -472,7 +549,6 @@
this.loading=false;
})
this.loading=false;
}
//保存到空间库里面
var self = this;
......@@ -488,7 +564,14 @@
console.log("属性保存完成!!");
});
}
}else{
this.$message({
// message: item.name+'不能为空',
message: '请完善表单后再继续操作',
type: "warning",
});
}
})
},
onSubmit(){
let data={
......@@ -526,6 +609,7 @@
});
},
generatorCode(){
console.log(this.form,'this.form');
if((this.form.zrzh!=null&&this.form.zrzh!=='')||(this.form.bdcdyh!=null&&this.form.bdcdyh!=='')){
this.open();
return;
......@@ -555,6 +639,10 @@
getZrzDetailByBsm(data).then((res)=>{
if(res.code===200){
this.form=res.result;
// //如果没有宗地代码,自动生成
// if(res.result.zddm == null){
// this.generatorCode()
// }
this.$store.state.zrzh = res.result.zrzh;
if(this.form.fwjgList.length===0){
this.form.fwjgList.push({
......@@ -595,6 +683,7 @@
}
//权利性质数据传给子组件
this.$refs.qlxzModule.countList = res.result.qjQlxzListVOS
}
}
})
......