54efdc3e by zhaoqian

构筑物

1 parent c950353a
1 import request from '@/plugin/axios'
2
3 /**
4 * 新增构筑物基本信息
5 */
6 export function insertGzwjbxx(data) {
7 return request({
8 url: '/system/qjGzw/insertQjGzw',
9 method: 'post',
10 data: data,
11 })
12 }
13
14 /**
15 * 生成不动产单元号
16 */
17 export function getBdcdyh(dpdm, dptype) {
18 return request({
19 url: '/system/generator/getBdcdyh',
20 method: 'get',
21 params: {
22 dpdm: dpdm,
23 dptype: dptype
24 }
25 })
26 }
27
28 /**
29 * 更新构筑物基本信息
30 */
31 export function updateGzwjbxx(data) {
32 return request({
33 url: '/system/qjGzw/updateQjGzw',
34 method: 'put',
35 data: data,
36 })
37 }
38
39 /**
40 * 获取构筑物基本信息
41 */
42 export function getQjGzwDetailInfo(data) {
43 return request({
44 url: '/system/qjGzw/getQjGzwDetailById',
45 method: 'get',
46 params: {
47 id: data
48 }
49 })
50 }
...\ No newline at end of file ...\ No newline at end of file
...@@ -74,6 +74,7 @@ ...@@ -74,6 +74,7 @@
74 <el-checkbox label="zd" name="type">宗地</el-checkbox> 74 <el-checkbox label="zd" name="type">宗地</el-checkbox>
75 <el-checkbox label="dz" name="type">多幢</el-checkbox> 75 <el-checkbox label="dz" name="type">多幢</el-checkbox>
76 <el-checkbox label="zrz" name="type">自然幢</el-checkbox> 76 <el-checkbox label="zrz" name="type">自然幢</el-checkbox>
77 <el-checkbox label="gzw" name="type">构筑物</el-checkbox>
77 <el-checkbox label="h" name="type" v-show="type !== 'add'"></el-checkbox> 78 <el-checkbox label="h" name="type" v-show="type !== 'add'"></el-checkbox>
78 <!-- <el-checkbox label="gzw" name="type">构筑物</el-checkbox> 79 <!-- <el-checkbox label="gzw" name="type">构筑物</el-checkbox>
79 <el-checkbox label="lq" name="type">林权</el-checkbox> 80 <el-checkbox label="lq" name="type">林权</el-checkbox>
......
...@@ -45,5 +45,9 @@ let bdcLxArray = [ ...@@ -45,5 +45,9 @@ let bdcLxArray = [
45 label: "多幢", 45 label: "多幢",
46 value: "dz", 46 value: "dz",
47 }, 47 },
48 {
49 label: "构筑物",
50 value: "gzw",
51 },
48 ]; 52 ];
49 createFilter("bdcLxFilter", bdcLxArray); 53 createFilter("bdcLxFilter", bdcLxArray);
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -77,6 +77,12 @@ const constantRoutes = [ ...@@ -77,6 +77,12 @@ const constantRoutes = [
77 component: () => import("@/views/systemH/index"), 77 component: () => import("@/views/systemH/index"),
78 }, 78 },
79 { 79 {
80 path: "/gzw",
81 name: "构筑物",
82 code: "1-7",
83 component: () => import("@/views/gzw/index"),
84 },
85 {
80 path: "/viewMap", 86 path: "/viewMap",
81 name: "地图", 87 name: "地图",
82 code: "0-6", 88 code: "0-6",
......
...@@ -41,6 +41,7 @@ const store = new Vuex.Store({ ...@@ -41,6 +41,7 @@ const store = new Vuex.Store({
41 jgOptions:[], 41 jgOptions:[],
42 gmjjhyflbsmList:[], 42 gmjjhyflbsmList:[],
43 fwytList:[], 43 fwytList:[],
44 gzwlxList:[],
44 //创建自然幢时需要用到的临时存储信息 45 //创建自然幢时需要用到的临时存储信息
45 zrzbsm: '', 46 zrzbsm: '',
46 zjlxList: [], 47 zjlxList: [],
......
...@@ -272,6 +272,7 @@ export default { ...@@ -272,6 +272,7 @@ export default {
272 s.hxList = s.hxList.length == 0 ?await this.getDicData("户型") : s.hxList; 272 s.hxList = s.hxList.length == 0 ?await this.getDicData("户型") : s.hxList;
273 s.hxjgList = s.hxjgList.length == 0 ?await this.getDicData("户型结构") : s.hxjgList; 273 s.hxjgList = s.hxjgList.length == 0 ?await this.getDicData("户型结构") : s.hxjgList;
274 s.fwjgList = s.fwjgList.length == 0 ?await this.getDicData("户型结构") : s.fwjgList; 274 s.fwjgList = s.fwjgList.length == 0 ?await this.getDicData("户型结构") : s.fwjgList;
275 s.gzwlxList = s.gzwlxList.length == 0 ?await this.getDicData("构(建)筑物类型") : s.gzwlxList;
275 276
276 s.fwxzOptions = s.fwxzOptions.length == 0 ?await this.getDicData("房屋性质") : s.fwxzOptions; 277 s.fwxzOptions = s.fwxzOptions.length == 0 ?await this.getDicData("房屋性质") : s.fwxzOptions;
277 s.cbOptions = s.cbOptions.length == 0 ?await this.getDicData("房屋产别") : s.cbOptions; 278 s.cbOptions = s.cbOptions.length == 0 ?await this.getDicData("房屋产别") : s.cbOptions;
......
1 <template>
2 <gzwInfo></gzwInfo>
3 </template>
4
5 <script>
6 import gzwInfo from './jbxx/index';
7 export default {
8 name: "index",
9 components:{
10 gzwInfo,
11 },
12 }
13 </script>
14
15 <style scoped>
16
17 </style>
...\ No newline at end of file ...\ No newline at end of file
1 <template>
2 <div class="gzw content-form">
3 <el-form ref="form" :model="form" label-width="160px">
4 <Qlr ref="qlrxxModule" :bsm="bsm"></Qlr>
5 <table border="1" width="100%" cellspacing="0" cellpadding="0" class="gzwTable">
6 <tr height="30">
7 <th colspan="12"><font size="4"></font>构筑物基本信息</th>
8 </tr>
9 <tr height="30">
10 <td colspan="2" align="center" >宗地(海)代码</td>
11 <td colspan="4" >
12 <input class="formInput" maxlength="19" v-model="form.zdzhdm" disabled="disabled">
13 </td>
14 <td colspan="2" align="center" >项目名称</td>
15 <td colspan="4" >
16 <input class="formInput" v-model="form.xmmc" :disabled="form.qszt!=='0'">
17 </td>
18 </tr>
19 <tr height="30">
20 <td colspan="2" align="center" >坐落</td>
21 <td colspan="4" >
22 <input class="formInput" v-model="form.zl" :disabled="form.qszt!=='0'">
23 </td>
24 <td colspan="2" align="center" >不动产单元号</td>
25 <td colspan="4" class="psr">
26 <input class="formInput percent80" maxlength="28" v-model="form.bdcdyh" :disabled="form.qszt!=='0'">
27 <el-button @click.prevent="generatorCode" size="mini" class="createBtn" type="warning" :disabled="form.qszt!=='0'">生成</el-button>
28 </td>
29 </tr>
30
31 <tr height="30">
32 <td colspan="2" align="center" >构(建)筑物类型</td>
33 <td colspan="4" >
34 <el-select-tree style="width:100%"
35 ref="ghyt"
36 v-if="show"
37 :default-expand-all="defaultExpandAll"
38 :multiple="multiple"
39 :placeholder="placeholder"
40 :disabled="form.qszt!='0'"
41 :data="$store.state.gzwlxList"
42 :props="treeProps"
43 :check-strictly="checkStrictly"
44 :clearable="clearable"
45 v-model="form.gzwlx"
46 ></el-select-tree>
47 </td>
48 <td colspan="2" align="center" >构(建)筑物规划用途</td>
49 <td colspan="4" >
50 <input class="formInput percent80" maxlength="28" v-model="form.gzwghyt" :disabled="form.qszt!=='0'">
51 </td>
52 </tr>
53
54 <tr height="30">
55 <td colspan="2" align="center" >构(建)筑物面积(㎡)</td>
56 <td colspan="4" >
57 <input class="formInput" v-model="form.mj" :disabled="form.qszt!=='0'">
58 </td>
59 <td colspan="2" align="center" >竣工日期</td>
60 <td colspan="4" >
61 <el-date-picker
62 style="width:100%"
63 v-model="form.jgrq"
64 type="date"
65 value-format="yyyy-MM-dd"
66 placeholder="选择日期"
67 :disabled="form.qszt!=='0'">
68 </el-date-picker>
69 </td>
70 </tr>
71 <tr height="30">
72 <td colspan="2" rowspan="2" align="center" >
73 <span>附加说明</span>
74 </td>
75 <td colspan="10" rowspan="2" >
76 <input class="formInput" v-model="form.bz" type="textarea" :disabled="form.qszt!=='0'">
77 </td>
78 </tr>
79 </table>
80 </el-form>
81 <div class="header-button">
82 <el-button type="primary" class="saveBtn" @click="onSave">保存</el-button>
83 <el-button type="primary" @click="onSubmit">提交</el-button>
84 <el-button type="primary" @click="registerCall">登记调用</el-button>
85 </div>
86 </div>
87 </template>
88
89 <script>
90
91 import Qlr from "@components/formMenu/qlr";
92 import {getQjZdjbxxDetailById} from "@api/zd"
93 import {submit,registerCall} from "@api/common"
94 import {getBdcdyh,updateGzwjbxx,getQjGzwDetailInfo} from "@api/gzw";
95 export default {
96 name: "index",
97 components:{
98 Qlr
99 },
100 data(){
101 return{
102
103 //树型结构
104 show:true,
105 clearable: true,
106 defaultExpandAll: true,
107 multiple: false,
108 placeholder: '请选择',
109 disabled: false,
110 checkStrictly: true,
111 treeProps: {
112 value: 'bsm',
113 children: 'children',
114 label: 'mc'
115 },
116
117 bsm:'',
118 form:{
119 zdzhdm:'',
120 xmmc:'',
121 bdcdyh:'',
122 zl:'',
123 gzwlx:'',
124 gzwghyt:'',
125 mj:'',
126 jgrq:'',
127 bz:'',
128 qszt:0,
129 bsm:'',
130 },
131 zdbsm:'',
132 }
133 },
134 methods:{
135 getZddm(zdbsm){
136 getQjZdjbxxDetailById(zdbsm).then((res)=>{
137 if(res.code===200){
138 this.form.zdzhdm=res.result.zddm;
139 console.log(this.form.zdzhdm+"============")
140 }
141 })
142 },
143 generatorCode(){
144 if(this.form.bdcdyh!=null&&this.form.bdcdyh!==''){
145 this.open();
146 return;
147 }
148 getBdcdyh(this.form.zdzhdm,"gzw")
149 .then((res)=>{
150 if(res.code === 200){
151 this.form.bdcdyh=res.result;
152 }else {
153 this.$message.warning(res.message)
154 }
155
156 })
157 },
158 open() {
159 this.$confirm('已经存在不动产单元号, 是否继续?', '提示', {
160 confirmButtonText: '确定',
161 cancelButtonText: '取消',
162 type: 'warning'
163 }).then(() => {
164 getBdcdyh(this.form.zdzhdm,"gzw")
165 .then((res)=>{
166 if(res.code === 200){
167 this.form.bdcdyh=res.result;
168 this.$message({
169 type: 'success',
170 message: '生成成功!'
171 });
172 }else {
173 this.$message.warning(res.message)
174 }
175
176 })
177 }).catch(() => {
178 this.$message({
179 type: 'info',
180 message: '已取消'
181 });
182 });
183 },
184 onSave(){
185 console.log(this.form,'this.form');
186 this.bsm=this.$route.query.bsm;
187 this.form.bsm=this.bsm;
188 this.form.jgsj=this.form.jgrq;
189 updateGzwjbxx(this.form).then((res)=>{
190 if(res.code === 200){
191 this.$message.success("保存完成!");
192 }
193 })
194 },
195 getGzwDetailInfo(){
196 getQjGzwDetailInfo(this.bsm).then((res)=>{
197 if(res.code === 200){
198 this.form.xmmc = res.result.xmmc;
199 this.form.zl = res.result.zl;
200 this.form.gzwlx = res.result.gzwlx;
201 this.form.gzwghyt = res.result.gzwghyt;
202 this.form.mj = res.result.mj;
203 this.form.jgrq = res.result.jgsj;
204 this.form.bz = res.result.bz;
205 this.form.bdcdyh = res.result.bdcdyh;
206 this.form.qszt = res.result.qszt;
207 this.zdbsm = res.result.zdzhbsm;
208 this.getZddm(this.zdbsm);
209 }
210 })
211 },
212 onSubmit(){
213 let data={
214 glbsm:this.bsm,
215 status:1,
216 type:"gzw"
217 }
218 submit(data).then((res)=>{
219 if(res.code===200){
220 this.$message.success("提交完成!");
221 this.getGzwDetailInfo(this.bsm)
222 }
223 })
224 },
225 registerCall(){
226 let data={
227 type:'gzw',
228 bsm:this.bsm
229 }
230 registerCall(data).then(res=>{
231 if (res.success) {
232 this.$message.success("登记成功")
233 this.getTreeByBsm(this.bsm,'gzw','0,1,2')
234 this.getGzwDetailInfo(this.bsm)
235 }
236 })
237 },
238 },
239 created() {
240 this.bsm = this.$route.query.bsm;
241 },
242 mounted() {
243 this.getGzwDetailInfo();
244 }
245 }
246 </script>
247
248 <style rel="stylesheet/less" lang="less" scoped>
249 .gzw {
250 box-sizing: border-box;
251 padding: 18px;
252 padding-bottom: 0;
253
254 /deep/textarea{
255 width: 100%;
256 border: 0;
257 }
258
259
260 .el-form-item{
261 font-weight: bold;
262 font-size: xx-large
263 }
264
265 table{
266 background: #fff;
267 table-layout: fixed;
268 }
269
270 th {
271 height: 36px;
272 line-height: 36px;
273 font-size: 16px;
274 }
275
276 td{
277 height: 36px;
278 width:8.33%;
279 text-align: right;
280 padding-right: 10px;
281 }
282
283 .el-select{
284 width: 100%;
285 }
286
287 table{
288 font-size: 14px;
289 }
290
291 .gzwTable{
292 margin-top: 10px;
293 /deep/.el-input__inner {
294 margin: 0;
295 height: 36px;
296 outline: none;
297 border: none;
298 color: #606764;
299 overflow: visible;
300 text-align: center;
301 }
302 }
303 }
304
305 .header-button{
306 margin-top: 12px;
307 text-align: center;
308 }
309 </style>
...\ No newline at end of file ...\ No newline at end of file
...@@ -133,10 +133,18 @@ ...@@ -133,10 +133,18 @@
133 <el-button type="primary" class="w98 cancel" @click="close">取消</el-button> 133 <el-button type="primary" class="w98 cancel" @click="close">取消</el-button>
134 </div> 134 </div>
135 </el-tab-pane> 135 </el-tab-pane>
136 <el-tab-pane class="eltabspane" v-if="!createZrz" label="构筑物" name="gzw"> 136 <el-tab-pane class="eltabspane" label="构筑物" name="gzw">
137 <el-form :inline="true" :rules="rules4" :model="ruleForm4" ref="ruleForm4" class="demo-form-inline">
138 <el-form-item label="项目名称" class="w100" prop="xmmc">
139 <el-input
140 v-model="ruleForm4.xmmc"
141 placeholder="项目名称"
142 ></el-input>
143 </el-form-item>
144 </el-form>
137 <div class="handleBtn"> 145 <div class="handleBtn">
138 <el-button type="primary" class="w98 import">导入图形</el-button> 146 <el-button type="primary" class="w98 import">导入图形</el-button>
139 <el-button type="primary" class="w98 creat" @click="todo">创建</el-button> 147 <el-button type="primary" class="w98 creat" @click="newGzw">创建</el-button>
140 <el-button type="primary" class="w98 cancel" @click="close">取消</el-button> 148 <el-button type="primary" class="w98 cancel" @click="close">取消</el-button>
141 </div> 149 </div>
142 </el-tab-pane> 150 </el-tab-pane>
...@@ -152,6 +160,7 @@ import { ...@@ -152,6 +160,7 @@ import {
152 import { insertQjZdjbxx } from "@api/zd"; 160 import { insertQjZdjbxx } from "@api/zd";
153 import { insertZrzjbxx } from "@api/zrz"; 161 import { insertZrzjbxx } from "@api/zrz";
154 import { insertDzjbxx } from "@api/dz"; 162 import { insertDzjbxx } from "@api/dz";
163 import { insertGzwjbxx } from "@api/gzw";
155 164
156 export default { 165 export default {
157 name: "", 166 name: "",
...@@ -199,6 +208,11 @@ export default { ...@@ -199,6 +208,11 @@ export default {
199 xmmc:'', 208 xmmc:'',
200 userbsm:'' 209 userbsm:''
201 }, 210 },
211 ruleForm4:{
212 zdzhbsm:'',
213 xmmc:'',
214 userbsm:''
215 },
202 rules: { 216 rules: {
203 xzqbsm: [ 217 xzqbsm: [
204 { required: true, message: '请选择行政区', trigger: 'change' } 218 { required: true, message: '请选择行政区', trigger: 'change' }
...@@ -229,6 +243,11 @@ export default { ...@@ -229,6 +243,11 @@ export default {
229 { required: true, message: '请输入项目名称', trigger: 'blur' }, 243 { required: true, message: '请输入项目名称', trigger: 'blur' },
230 ], 244 ],
231 }, 245 },
246 rules4: {
247 xmmc: [
248 { required: true, message: '请输入项目名称', trigger: 'blur' },
249 ],
250 },
232 syqlx: [ 251 syqlx: [
233 { 252 {
234 label: "国家所有", 253 label: "国家所有",
...@@ -341,6 +360,37 @@ export default { ...@@ -341,6 +360,37 @@ export default {
341 }); 360 });
342 361
343 }, 362 },
363 newGzw(){
364 this.$refs['ruleForm4'].validate((valid) => {
365 if (valid) {
366 if(1>0){
367 this.ruleForm4.zdzhbsm = this.$store.state.zdbsm != '' ? this.$store.state.zdbsm : '';
368 insertGzwjbxx(this.ruleForm4)
369 .then((res)=>{
370 if(res.code === 200){
371 this.close();
372 this.$router.push({
373 path: '/gzw', query:{
374 source: 1,
375 bsm:res.result.bsm,
376 auth: '0,1,2'
377 }
378 });
379 }
380 })
381 }else {
382 this.close();
383 this.$router.push({
384 path: '/gzw', query:{
385 source: 1,
386 bsm:"12345678901234567890",
387 auth: '0,1,2'
388 }
389 });
390 }
391 }
392 })
393 },
344 newDz() { 394 newDz() {
345 //todo 在新增时,如果是点击顶部新建里面的自然幢则不传zdbsm 如果是点击右键里面的添加定着物则传zdbsm 395 //todo 在新增时,如果是点击顶部新建里面的自然幢则不传zdbsm 如果是点击右键里面的添加定着物则传zdbsm
346 this.$refs['ruleForm2'].validate((valid) => { 396 this.$refs['ruleForm2'].validate((valid) => {
......
...@@ -152,6 +152,11 @@ ...@@ -152,6 +152,11 @@
152 this.$store.state.hbsm=row.glbsm 152 this.$store.state.hbsm=row.glbsm
153 this.getTreeByBsm(row.glbsm,'h','0,1,2'); 153 this.getTreeByBsm(row.glbsm,'h','0,1,2');
154 break; 154 break;
155 case "gzw":
156 this.$store.state.gzwbsm = row.glbsm;
157 this.getTreeByBsm(row.glbsm,"gzw",'0,1,2');
158 path = "/gzw";
159 break;
155 default: 160 default:
156 break; 161 break;
157 } 162 }
......