@@ -0,0 +1,53 @@ | |||||
import request from '@/utils/request'; | |||||
// 获取承包方列表 | |||||
export function listCbf(params) { | |||||
return request({ | |||||
url: '/service/cbf/list', | |||||
method: 'get', | |||||
params: params | |||||
}); | |||||
} | |||||
// 获取承包方详情 | |||||
export function getCbf(cbfbm) { | |||||
return request({ | |||||
url: '/service/cbf/obtain/' + cbfbm, | |||||
method: 'get', | |||||
}); | |||||
} | |||||
// 新增承包方信息 | |||||
export function addCbf(data) { | |||||
return request({ | |||||
url: '/service/cbf/add', | |||||
method: 'post', | |||||
data: data | |||||
}); | |||||
} | |||||
// 更新承包方信息 | |||||
export function updateCbf(data) { | |||||
return request({ | |||||
url: '/service/cbf/edit', | |||||
method: 'post', | |||||
data: data | |||||
}) | |||||
} | |||||
// 删除承包方信息 | |||||
export function deleteCbf(id) { | |||||
return request({ | |||||
url: '/service/cbf/mobile/remove/' + id, | |||||
method: 'get' | |||||
}); | |||||
} | |||||
// 生成承包方编码 | |||||
export function generateContractorCode(params) { | |||||
return request({ | |||||
url: '/service/cbf/generateCode', | |||||
method: 'get', | |||||
params: params | |||||
}); | |||||
} |
@@ -1,18 +1,17 @@ | |||||
import request from '@/utils/request'; | import request from '@/utils/request'; | ||||
// 获取确权调查任务列表 | |||||
export function listSurveyTask(params) { | |||||
// 根据deptId获取部门信息 | |||||
export function getDept(deptId) { | |||||
return request({ | return request({ | ||||
url: '/service/landsurvey/mobile/list', | |||||
method: 'get', | |||||
params: params | |||||
url: '/system/dept/get/' + deptId, | |||||
method: 'get' | |||||
}); | }); | ||||
} | } | ||||
// 获取承包方列表 | |||||
export function listCbf(params) { | |||||
// 获取确权调查任务列表 | |||||
export function listSurveyTask(params) { | |||||
return request({ | return request({ | ||||
url: '/service/cbf/list', | |||||
url: '/service/landsurvey/mobile/list', | |||||
method: 'get', | method: 'get', | ||||
params: params | params: params | ||||
}); | }); | ||||
@@ -5576,6 +5576,15 @@ export const constantRoutes = [ | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/contracted/village/contractor/contractorDetail'], resolve) | component: (resolve) => require(['@/views/contracted/village/contractor/contractorDetail'], resolve) | ||||
}, | }, | ||||
{ | |||||
path: '/contracted/village/contractorDetailAdd', | |||||
name: 'contractedVillageContractorDetailAdd', | |||||
meta: { | |||||
title: '新增承包方信息', | |||||
hidden: true, | |||||
}, | |||||
component: (resolve) => require(['@/views/contracted/village/contractor/contractorDetailAdd'], resolve) | |||||
}, | |||||
{ | { | ||||
path: '/contracted/village/contractorFamily', | path: '/contracted/village/contractorFamily', | ||||
name: 'contractedVillageContractorFamily', | name: 'contractedVillageContractorFamily', | ||||
@@ -1,13 +1,14 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | <div class="app-container"> | ||||
<van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<!-- <van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | |||||
</van-nav-bar> --> | |||||
<contractor-header></contractor-header> | |||||
<div class="tap_block"> | <div class="tap_block"> | ||||
<p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | <p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | ||||
@@ -127,8 +128,13 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
import contractorHeader from "./contractorHeader"; | |||||
export default { | export default { | ||||
name: "contractedVillageContractor", | name: "contractedVillageContractor", | ||||
components: { | |||||
contractorHeader | |||||
}, | |||||
data() { | data() { | ||||
return { | return { | ||||
loading:false, | loading:false, | ||||
@@ -213,7 +219,7 @@ | |||||
overflow: initial; | overflow: initial; | ||||
} | } | ||||
.tb_main{ | |||||
/* .tb_main{ | |||||
position: relative; | position: relative; | ||||
p{ | p{ | ||||
position: absolute; | position: absolute; | ||||
@@ -230,7 +236,7 @@ | |||||
padding: 2PX 8PX; | padding: 2PX 8PX; | ||||
border-radius: 50PX; | border-radius: 50PX; | ||||
margin-right: 5PX; | margin-right: 5PX; | ||||
} | |||||
} */ | |||||
.tap_block{ | .tap_block{ | ||||
width: 100%; | width: 100%; | ||||
@@ -54,7 +54,7 @@ | |||||
<van-col span="5" style="color: #f78200">{{ item.cbfcysl }}</van-col> | <van-col span="5" style="color: #f78200">{{ item.cbfcysl }}</van-col> | ||||
</van-row> | </van-row> | ||||
<template #right> | <template #right> | ||||
<van-button square type="danger" text="删除" /> | |||||
<van-button square type="danger" text="删除" native-type="button" @click="deleteContractor(item.id, index)" /> | |||||
</template> | </template> | ||||
</van-swipe-cell> | </van-swipe-cell> | ||||
</van-list> | </van-list> | ||||
@@ -65,7 +65,7 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
import { listCbf } from "@/api/contracted"; | |||||
import { listCbf, deleteCbf } from "@/api/contracted/cbf"; | |||||
export default { | export default { | ||||
name: "contractedVillageContractor", | name: "contractedVillageContractor", | ||||
@@ -141,10 +141,38 @@ | |||||
this.getList(); | this.getList(); | ||||
}, | }, | ||||
goDetail(item){ | goDetail(item){ | ||||
this.$router.push({path:'/contracted/village/contractorDetail'}); | |||||
this.$router.push({ | |||||
name: 'contractedVillageContractorDetail', | |||||
params: { | |||||
deptId: item.deptId, | |||||
cbfbm: item.cbfbm, | |||||
cbfmc: item.cbfmc, | |||||
surveyStatus: item.surveyStatus | |||||
} | |||||
}); | |||||
}, | }, | ||||
addContractor() { | addContractor() { | ||||
this.$router.push({path:'/contracted/village/contractorDetail'}); | |||||
this.$router.push({ | |||||
name: 'contractedVillageContractorDetailAdd', | |||||
params: { | |||||
deptId: this.$route.query.deptId | |||||
} | |||||
}); | |||||
}, | |||||
deleteContractor(id, index) { | |||||
this.$dialog.confirm({ | |||||
message: '是否确认删除此承包方信息?', | |||||
}).then(() => { | |||||
// on confirm | |||||
deleteCbf(id).then(res => { | |||||
if(res.code == 200){ | |||||
this.$toast.success('删除成功'); | |||||
this.cbfList.splice(index, 1); | |||||
} | |||||
}); | |||||
}).catch(() => { | |||||
// on cancel | |||||
}); | |||||
} | } | ||||
}, | }, | ||||
}; | }; | ||||
@@ -1,78 +1,78 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | <div class="app-container"> | ||||
<van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<!-- <van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | |||||
</van-nav-bar> --> | |||||
<contractor-header :dept-id="$route.params.deptId" :contractor-code="$route.params.cbfbm" :contractor-name="$route.params.cbfmc" :survey-status="$route.params.surveyStatus"></contractor-header> | |||||
<div class="tap_block"> | <div class="tap_block"> | ||||
<p class="active">承包方</p> | <p class="active">承包方</p> | ||||
<p @click="$router.push({path:'/contracted/village/contractorFamily'})">家庭成员</p> | |||||
<p @click="$router.push({path:'/contracted/village/contractorWord'})">承包合同</p> | |||||
<p @click="$router.push({path:'/contracted/village/contractorLand'})">承包地</p> | |||||
<p @click="skip('contractedVillageContractorFamily')">家庭成员</p> | |||||
<p @click="skip('contractedVillageContractorWord')">承包合同</p> | |||||
<p @click="skip('contractedVillageContractorLand')">承包地</p> | |||||
</div> | </div> | ||||
<div class="list_main"> | <div class="list_main"> | ||||
<van-field | |||||
v-model="value" | |||||
label="类型:" | |||||
placeholder="请选择类型" | |||||
required | |||||
:border="false" | |||||
input-align="right" | |||||
right-icon="arrow-down" | |||||
label-width="auto" | |||||
readonly | |||||
clickable | |||||
@click="showType = true" | |||||
/> | |||||
<van-popup v-model="showType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="typeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmTypeOptions" | |||||
@cancel="showType = false" | |||||
<van-form ref="formData"> | |||||
<van-field | |||||
v-model="form.cbflxText" | |||||
label="类型:" | |||||
placeholder="请选择类型" | |||||
required | |||||
:rules="[{ required: true }]" | |||||
:border="false" | |||||
input-align="left" | |||||
right-icon="arrow-down" | |||||
readonly | |||||
clickable | |||||
@click="showType = true" | |||||
/> | /> | ||||
</van-popup> | |||||
<van-field v-model="value" label="名称:" placeholder="请输入名称" required :border="false" input-align="right" /> | |||||
<van-field v-model="value" label="代码:" placeholder="请输入代码" required :border="false" input-align="right" /> | |||||
<van-field | |||||
v-model="value" | |||||
label="证件类型:" | |||||
placeholder="请选择证件类型" | |||||
required | |||||
:border="false" | |||||
input-align="right" | |||||
right-icon="arrow-down" | |||||
label-width="auto" | |||||
readonly | |||||
clickable | |||||
@click="showZjType = true" | |||||
/> | |||||
<van-popup v-model="showZjType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="zjTypeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmZjTypeOptions" | |||||
@cancel="showZjType = false" | |||||
<van-popup v-model="showType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="contractorTypeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmTypeOptions" | |||||
@cancel="showType = false" | |||||
/> | |||||
</van-popup> | |||||
<van-field v-model="form.cbfbm" label="代码:" placeholder="请输入代码" required :rules="[{ required: true }]" :border="false" input-align="left" readonly /> | |||||
<van-field v-model="form.cbfmc" label="名称:" placeholder="请输入名称" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field | |||||
v-model="form.cbfzjlxText" | |||||
label="证件类型:" | |||||
placeholder="请选择证件类型" | |||||
required | |||||
:rules="[{ required: true }]" | |||||
:border="false" | |||||
input-align="left" | |||||
right-icon="arrow-down" | |||||
readonly | |||||
clickable | |||||
@click="showZjType = true" | |||||
/> | /> | ||||
</van-popup> | |||||
<van-popup v-model="showZjType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="credentialTypeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmZjTypeOptions" | |||||
@cancel="showZjType = false" | |||||
/> | |||||
</van-popup> | |||||
<van-field v-model="value" label="证件号码:" placeholder="请输入证件号码" required :border="false" input-align="right" /> | |||||
<van-field v-model="value" label="地址:" placeholder="请输入地址" required :border="false" input-align="right" /> | |||||
<van-field v-model="value" label="邮编:" placeholder="请输入邮编" required :border="false" input-align="right" /> | |||||
<van-field v-model="value" label="电话:" placeholder="请输入电话" required :border="false" input-align="right" /> | |||||
<van-field v-model="value" label="调查记事:" type="textarea" rows="3" placeholder="请输入调查记事" required :border="false" input-align="right" /> | |||||
<p class="btn">保存</p> | |||||
<van-field v-model="form.cbfzjhm" label="证件号码:" placeholder="请输入证件号码" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.cbfdz" label="地址:" placeholder="请输入地址" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.yzbm" label="邮编:" placeholder="请输入邮编" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.lxdh" label="电话:" placeholder="请输入电话" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.cbfdcjs" label="调查记事:" type="textarea" rows="3" placeholder="请输入调查记事" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
</van-form> | |||||
<p class="btn" @click="submitForm">保存</p> | |||||
</div> | </div> | ||||
@@ -80,42 +80,86 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
import contractorHeader from "./contractorHeader"; | |||||
import { getCbf, updateCbf } from "@/api/contracted/cbf"; | |||||
export default { | export default { | ||||
name: "contractedVillageContractor", | name: "contractedVillageContractor", | ||||
components: { | |||||
contractorHeader | |||||
}, | |||||
data() { | data() { | ||||
return { | return { | ||||
loading:false, | |||||
finished:true, | |||||
value:'', | |||||
showType:false, | showType:false, | ||||
showZjType:false, | showZjType:false, | ||||
typeOptions:[{ | |||||
dictLabel:'类型1', | |||||
dictValue:'1', | |||||
}], | |||||
zjTypeOptions:[{ | |||||
dictLabel:'类型2', | |||||
dictValue:'1', | |||||
}], | |||||
// 承包方信息表单 | |||||
form: {}, | |||||
// 承包方类型字典 | |||||
contractorTypeOptions: [], | |||||
// 承包方证件类型字典 | |||||
credentialTypeOptions: [], | |||||
}; | }; | ||||
}, | }, | ||||
watch: { | |||||
'$route': function() { | |||||
window.location.reload(); | |||||
} | |||||
}, | |||||
created() { | created() { | ||||
this.getDicts("cbf_type").then(response => { | |||||
this.contractorTypeOptions = response.data; | |||||
}); | |||||
this.getDicts("cert_type").then(response => { | |||||
this.credentialTypeOptions = response.data; | |||||
}); | |||||
this.getDetail(); | |||||
}, | }, | ||||
methods: { | methods: { | ||||
getList(){ | |||||
getDetail(){ | |||||
getCbf(this.$route.params.cbfbm).then(response => { | |||||
this.form = response.data; | |||||
this.$set(this.form, 'cbflxText', this.selectDictLabel(this.contractorTypeOptions, response.data.cbflx)); | |||||
this.$set(this.form, 'cbfzjlxText', this.selectDictLabel(this.credentialTypeOptions, response.data.cbfzjlx)); | |||||
}); | |||||
}, | }, | ||||
onSearch(){ | |||||
onConfirmTypeOptions(value){ | |||||
this.form.cbflx = value.dictValue; | |||||
this.form.cbflxText = value.dictLabel; | |||||
this.showType = false; | |||||
}, | }, | ||||
onConfirmTypeOptions(){ | |||||
onConfirmZjTypeOptions(value){ | |||||
this.form.cbfzjlx = value.dictValue; | |||||
this.form.cbfzjlxText = value.dictLabel; | |||||
this.showZjType = false; | |||||
}, | }, | ||||
onConfirmZjTypeOptions(){ | |||||
submitForm() { | |||||
this.$refs.formData.validate().then(() => { | |||||
updateCbf(this.form).then(response => { | |||||
if (response.code == 200) { | |||||
this.$toast({ | |||||
icon: 'success', | |||||
message: '保存成功', | |||||
duration:"1000" | |||||
}) | |||||
} | |||||
}).catch(() => { | |||||
this.getDetail(); | |||||
}); | |||||
}).catch(() => { | |||||
this.$notify({ type: 'danger', message: '请填写完整的表单项' }); | |||||
}); | |||||
}, | }, | ||||
skip(name) { | |||||
this.$router.push({ | |||||
name: name, | |||||
params: { | |||||
deptId: this.$route.params.deptId, | |||||
cbfbm: this.$route.params.cbfbm, | |||||
cbfmc: this.$route.params.cbfmc, | |||||
surveyStatus: this.$route.params.surveyStatus | |||||
} | |||||
}); | |||||
} | |||||
}, | }, | ||||
}; | }; | ||||
</script> | </script> | ||||
@@ -153,7 +197,7 @@ | |||||
overflow: initial; | overflow: initial; | ||||
} | } | ||||
.tb_main{ | |||||
/* .tb_main{ | |||||
position: relative; | position: relative; | ||||
p{ | p{ | ||||
position: absolute; | position: absolute; | ||||
@@ -170,7 +214,7 @@ | |||||
padding: 2PX 8PX; | padding: 2PX 8PX; | ||||
border-radius: 50PX; | border-radius: 50PX; | ||||
margin-right: 5PX; | margin-right: 5PX; | ||||
} | |||||
} */ | |||||
.tap_block{ | .tap_block{ | ||||
width: 100%; | width: 100%; | ||||
@@ -0,0 +1,292 @@ | |||||
<template> | |||||
<div class="app-container"> | |||||
<van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | |||||
<template #title> | |||||
<div class="tb_main"> | |||||
新增承包方信息 | |||||
</div> | |||||
</template> | |||||
</van-nav-bar> | |||||
<div class="list_main"> | |||||
<van-form ref="formData"> | |||||
<van-field | |||||
v-model="cbflxText" | |||||
label="类型:" | |||||
placeholder="请选择类型" | |||||
required | |||||
:rules="[{ required: true }]" | |||||
:border="false" | |||||
input-align="left" | |||||
right-icon="arrow-down" | |||||
readonly | |||||
clickable | |||||
@click="showType = true" | |||||
/> | |||||
<van-popup v-model="showType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="contractorTypeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmTypeOptions" | |||||
@cancel="showType = false" | |||||
/> | |||||
</van-popup> | |||||
<van-field v-model="form.cbfbm" label="代码:" placeholder="请输入代码" required :rules="[{ required: true }]" :border="false" input-align="left"> | |||||
<template #button> | |||||
<van-button size="mini" type="primary" native-type="button" @click="generateCode">生成代码</van-button> | |||||
</template> | |||||
</van-field> | |||||
<van-field v-model="form.cbfmc" label="名称:" placeholder="请输入名称" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field | |||||
v-model="cbfzjlxText" | |||||
label="证件类型:" | |||||
placeholder="请选择证件类型" | |||||
required | |||||
:rules="[{ required: true }]" | |||||
:border="false" | |||||
input-align="left" | |||||
right-icon="arrow-down" | |||||
readonly | |||||
clickable | |||||
@click="showZjType = true" | |||||
/> | |||||
<van-popup v-model="showZjType" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="credentialTypeOptions" | |||||
value-key="dictLabel" | |||||
@confirm="onConfirmZjTypeOptions" | |||||
@cancel="showZjType = false" | |||||
/> | |||||
</van-popup> | |||||
<van-field v-model="form.cbfzjhm" label="证件号码:" placeholder="请输入证件号码" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.cbfdz" label="地址:" placeholder="请输入地址" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.yzbm" label="邮编:" placeholder="请输入邮编" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.lxdh" label="电话:" placeholder="请输入电话" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
<van-field v-model="form.cbfdcjs" label="调查记事:" type="textarea" rows="3" placeholder="请输入调查记事" required :rules="[{ required: true }]" :border="false" input-align="left" /> | |||||
</van-form> | |||||
<p class="btn" @click="submitForm">保存</p> | |||||
</div> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import Cookies from "js-cookie"; | |||||
import { addCbf, generateContractorCode } from "@/api/contracted/cbf"; | |||||
export default { | |||||
name: "contractedVillageContractorAdd", | |||||
data() { | |||||
return { | |||||
showType:false, | |||||
showZjType:false, | |||||
// 承包方信息表单 | |||||
form: { | |||||
deptId: null, | |||||
cbfbm: null, | |||||
cbflx: null, | |||||
cbfmc: null, | |||||
cbfzjlx: null, | |||||
cbfzjhm: null, | |||||
cbfdz: null, | |||||
yzbm: null, | |||||
lxdh: null, | |||||
cbfcysl: null, | |||||
cbfdcjs: null, | |||||
}, | |||||
// 承包方类型(标签名) | |||||
cbflxText: null, | |||||
// 承包方证件类型(标签名) | |||||
cbfzjlxText: null, | |||||
// 承包方类型字典 | |||||
contractorTypeOptions: [], | |||||
// 承包方证件类型字典 | |||||
credentialTypeOptions: [], | |||||
}; | |||||
}, | |||||
created() { | |||||
this.getDicts("cbf_type").then(response => { | |||||
this.contractorTypeOptions = response.data; | |||||
}); | |||||
this.getDicts("cert_type").then(response => { | |||||
this.credentialTypeOptions = response.data; | |||||
}); | |||||
}, | |||||
methods: { | |||||
onConfirmTypeOptions(value){ | |||||
this.form.cbflx = value.dictValue; | |||||
this.cbflxText = value.dictLabel; | |||||
this.showType = false; | |||||
}, | |||||
onConfirmZjTypeOptions(value){ | |||||
this.form.cbfzjlx = value.dictValue; | |||||
this.cbfzjlxText = value.dictLabel; | |||||
this.showZjType = false; | |||||
}, | |||||
submitForm() { | |||||
this.$refs.formData.validate().then(() => { | |||||
this.form.deptId = this.$route.params.deptId; | |||||
this.form.cbfcysl = 1; | |||||
addCbf(this.form).then(response => { | |||||
if (response.code == 200) { | |||||
this.$toast({ | |||||
icon: 'success', | |||||
message: '保存成功', | |||||
duration:"1000", | |||||
onClose: function() { | |||||
history.back(-1); | |||||
} | |||||
}) | |||||
} | |||||
}); | |||||
}).catch(() => { | |||||
this.$notify({ type: 'danger', message: '请填写完整的表单项' }); | |||||
}); | |||||
}, | |||||
generateCode() { | |||||
generateContractorCode({deptId: this.$route.params.deptId}).then(response => { | |||||
this.$set(this.form, 'cbfbm', response.data); | |||||
}); | |||||
}, | |||||
}, | |||||
}; | |||||
</script> | |||||
<style scoped lang="scss"> | |||||
.app-container{ | |||||
background: #fff url("../../../../../static/images/contracted/contracted_index_bg.png") no-repeat center; | |||||
background-size: 100% 100%; | |||||
height: 100vh; | |||||
padding: 0 4vw; | |||||
overflow: hidden; | |||||
} | |||||
/deep/ .van-nav-bar{ | |||||
background: transparent; | |||||
} | |||||
/deep/ .van-nav-bar .van-icon{ | |||||
color: #000000; | |||||
} | |||||
/deep/ .van-hairline--bottom::after{ | |||||
border: none; | |||||
} | |||||
/deep/ .van-search__content{ | |||||
background: rgba(255,255,255,.5); | |||||
} | |||||
/deep/ .van-search{ | |||||
padding: 0; | |||||
flex: 1; | |||||
} | |||||
/deep/ .van-ellipsis{ | |||||
overflow: initial; | |||||
} | |||||
.tb_main{ | |||||
position: relative; | |||||
p{ | |||||
position: absolute; | |||||
display: inline-block; | |||||
margin-left: 10PX; | |||||
} | |||||
} | |||||
/* .tb{ | |||||
font-size: 12px; | |||||
color: #ff8900; | |||||
background: #daf6e7; | |||||
border: 1px solid #d7be6e; | |||||
padding: 2PX 8PX; | |||||
border-radius: 50PX; | |||||
margin-right: 5PX; | |||||
} */ | |||||
.tap_block{ | |||||
width: 100%; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
background: #ebfaf2; | |||||
padding: 2PX 4PX; | |||||
border-radius: 10PX; | |||||
margin-top: 1vh; | |||||
.active{ | |||||
background-image: linear-gradient(to right,#c6fe8b,#48e5a2); | |||||
box-shadow: 0 0 10PX #cccccc; | |||||
color: #333333; | |||||
} | |||||
p{ | |||||
width: 25%; | |||||
text-align: center; | |||||
padding: 5PX 0; | |||||
border-radius: 10PX; | |||||
color: #666666; | |||||
} | |||||
} | |||||
.search_main{ | |||||
display: flex; | |||||
margin-top: 2vh; | |||||
.search_btn{ | |||||
background: rgba(255,255,255,.5); | |||||
width: 25%; | |||||
border-radius: 50PX; | |||||
margin-left: 10PX; | |||||
padding: 2PX; | |||||
.active{ | |||||
background-image: linear-gradient(to right,#c6fe8b,#48e5a2); | |||||
color: #333333; | |||||
border-radius: 50PX; | |||||
display: flex; | |||||
align-items: center; | |||||
justify-content: center; | |||||
height: 100%; | |||||
} | |||||
} | |||||
} | |||||
.second_tap{ | |||||
display: flex; | |||||
align-items: center; | |||||
margin-top: 1vh; | |||||
p{ | |||||
background: #dbf1ea; | |||||
border: 1px solid #cdcdcd; | |||||
color: #5f5f5f; | |||||
padding: 5PX 15PX; | |||||
margin-right: 3vw; | |||||
border-radius: 50PX; | |||||
} | |||||
.active{ | |||||
background: #99eecb; | |||||
border-color: #48e5a2; | |||||
color: #333333; | |||||
} | |||||
} | |||||
.list_main{ | |||||
margin-top: 2vh; | |||||
overflow-y: scroll; | |||||
text-align: center; | |||||
background: #ffffff; | |||||
border-top-left-radius: 10PX; | |||||
border-top-right-radius: 10PX; | |||||
height: 88vh; | |||||
.btn{ | |||||
background-image: linear-gradient(to right,#c6fe8b,#48e5a2); | |||||
box-shadow: 0 0 10PX #cccccc; | |||||
padding: 10PX 0PX; | |||||
border-radius: 50PX; | |||||
display: inline-block; | |||||
width: 40%; | |||||
margin-top: 2vh; | |||||
} | |||||
} | |||||
</style> |
@@ -1,13 +1,14 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | <div class="app-container"> | ||||
<van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<!-- <van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | |||||
</van-nav-bar> --> | |||||
<contractor-header :dept-id="$route.params.deptId" :contractor-code="$route.params.cbfbm" :contractor-name="$route.params.cbfmc" :survey-status="$route.params.surveyStatus"></contractor-header> | |||||
<div class="tap_block"> | <div class="tap_block"> | ||||
<p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | <p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | ||||
@@ -69,8 +70,13 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
import contractorHeader from "./contractorHeader"; | |||||
export default { | export default { | ||||
name: "contractedVillageContractor", | name: "contractedVillageContractor", | ||||
components: { | |||||
contractorHeader | |||||
}, | |||||
data() { | data() { | ||||
return { | return { | ||||
loading:false, | loading:false, | ||||
@@ -89,7 +95,7 @@ | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
console.log(this.$route.params); | |||||
}, | }, | ||||
methods: { | methods: { | ||||
getList(){ | getList(){ | ||||
@@ -147,7 +153,7 @@ | |||||
.tb_main{ | |||||
/* .tb_main{ | |||||
position: relative; | position: relative; | ||||
p{ | p{ | ||||
position: absolute; | position: absolute; | ||||
@@ -164,7 +170,7 @@ | |||||
padding: 2PX 8PX; | padding: 2PX 8PX; | ||||
border-radius: 50PX; | border-radius: 50PX; | ||||
margin-right: 5PX; | margin-right: 5PX; | ||||
} | |||||
} */ | |||||
.tap_block{ | .tap_block{ | ||||
width: 100%; | width: 100%; | ||||
@@ -4,7 +4,8 @@ | |||||
<van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | <van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | ||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | |||||
<!-- B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p>--> | |||||
1111111 | |||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | </van-nav-bar> | ||||
@@ -0,0 +1,46 @@ | |||||
<template> | |||||
<div> | |||||
<van-nav-bar left-arrow fixed placeholder @click-left="goBack"> | |||||
<template #title> | |||||
<div class="tb_main"> | |||||
{{ contractorName }}<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | |||||
</div> | |||||
</template> | |||||
</van-nav-bar> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import { getDept } from "@/api/contracted"; | |||||
export default { | |||||
name: 'contractedVillageHeader', | |||||
props: ['deptId', 'contractorCode', 'contractorName', 'surveyStatus'], | |||||
methods: { | |||||
goBack() { | |||||
getDept(this.deptId).then(response => { | |||||
this.$router.push({path:'/contracted/village/contractor', query: { deptId: this.deptId, deptName: response.data.deptName }}); | |||||
}); | |||||
} | |||||
} | |||||
} | |||||
</script> | |||||
<style scoped lang="scss"> | |||||
.tb_main{ | |||||
position: relative; | |||||
p{ | |||||
position: absolute; | |||||
display: inline-block; | |||||
margin-left: 10PX; | |||||
} | |||||
} | |||||
.tb{ | |||||
font-size: 12px; | |||||
color: #ff8900; | |||||
background: #daf6e7; | |||||
border: 1px solid #d7be6e; | |||||
padding: 2PX 8PX; | |||||
border-radius: 50PX; | |||||
margin-right: 5PX; | |||||
} | |||||
</style> |
@@ -1,13 +1,14 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | <div class="app-container"> | ||||
<van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<!-- <van-nav-bar left-arrow fixed placeholder @click-left="$router.push({path:'/contracted/village/contractor'})" > | |||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | |||||
</van-nav-bar> --> | |||||
<contractor-header></contractor-header> | |||||
<div class="tap_block"> | <div class="tap_block"> | ||||
<p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | <p @click="$router.push({path:'/contracted/village/contractorDetail'})">承包方</p> | ||||
@@ -73,8 +74,13 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
import contractorHeader from "./contractorHeader"; | |||||
export default { | export default { | ||||
name: "contractedVillageContractor", | name: "contractedVillageContractor", | ||||
components: { | |||||
contractorHeader | |||||
}, | |||||
data() { | data() { | ||||
return { | return { | ||||
loading:false, | loading:false, | ||||
@@ -198,7 +204,7 @@ | |||||
} | } | ||||
} | } | ||||
.tb_main{ | |||||
/* .tb_main{ | |||||
position: relative; | position: relative; | ||||
p{ | p{ | ||||
position: absolute; | position: absolute; | ||||
@@ -215,7 +221,7 @@ | |||||
padding: 2PX 8PX; | padding: 2PX 8PX; | ||||
border-radius: 50PX; | border-radius: 50PX; | ||||
margin-right: 5PX; | margin-right: 5PX; | ||||
} | |||||
} */ | |||||
.tap_block{ | .tap_block{ | ||||
width: 100%; | width: 100%; | ||||
@@ -4,7 +4,8 @@ | |||||
<van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | <van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | ||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | |||||
<!-- B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p>--> | |||||
2222 | |||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | </van-nav-bar> | ||||
@@ -4,7 +4,8 @@ | |||||
<van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | <van-nav-bar left-arrow fixed placeholder @click-left="onClickLeft" > | ||||
<template #title> | <template #title> | ||||
<div class="tb_main"> | <div class="tb_main"> | ||||
B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p> | |||||
<!-- B村<p><span class="tb">签字完成</span><span class="tb">异常挂起</span></p>--> | |||||
地图 | |||||
</div> | </div> | ||||
</template> | </template> | ||||
</van-nav-bar> | </van-nav-bar> | ||||
@@ -844,6 +844,10 @@ export default { | |||||
methods: { | methods: { | ||||
submitzjd(){ | submitzjd(){ | ||||
this.$refs.form.validate().then(() => { | this.$refs.form.validate().then(() => { | ||||
if(this.form.theGeomJson == null){ | |||||
Dialog({ type: 'danger', message: '请在地图上标注宅基地所在位置!' }); | |||||
return; | |||||
} | |||||
if(this.form.id == null){ | if(this.form.id == null){ | ||||
let surveyItem = JSON.parse(localStorage.getItem("surveyItem")); | let surveyItem = JSON.parse(localStorage.getItem("surveyItem")); | ||||
this.$set(this.form, 'surveyId', surveyItem.id); | this.$set(this.form, 'surveyId', surveyItem.id); | ||||
@@ -5962,31 +5962,32 @@ | |||||
this.mapZjdTeAll.active =1; | this.mapZjdTeAll.active =1; | ||||
this.mapZjdTeAll.mapZjdAData.deptId =JSON.parse(localStorage.getItem("surveyItem")).deptId; | this.mapZjdTeAll.mapZjdAData.deptId =JSON.parse(localStorage.getItem("surveyItem")).deptId; | ||||
this.mapZjdTeAll.mapZjdAData.theGeomJson =this.htZjdZrzFsss; | this.mapZjdTeAll.mapZjdAData.theGeomJson =this.htZjdZrzFsss; | ||||
console.info(this.mapZjdTeAll.mapZjdAData.theGeomJson); | |||||
listSuyqr({deptId: this.item.deptId}).then((response) => { | listSuyqr({deptId: this.item.deptId}).then((response) => { | ||||
this.$set(this.mapZjdTeAll.mapZjdAData, "suyqrdm",response.rows[0]); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "suyqrdm",response.rows[0].suyqrdm); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "zjdlyzk","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "landStatus","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "houseOwnership","2"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "landPhms","10"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "isMore","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sffz","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sfcz","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "zjdqdfs","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sjly","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qlsdfs","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qllx","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qlxz","203"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "yt","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "dj","1"); | |||||
//this.mapZjdTeAll.mapZjdAData.deptId = this.$cookies.get("item").deptId; | |||||
//this.$cookies.set("search",this.mapZjdTeAll); | |||||
this.$cookies.set("search","") | |||||
console.info(this.mapZjdTeAll.mapZjdAData); | |||||
localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData)); | |||||
localStorage.setItem("executePermission",true); | |||||
this.$router.push({path:'/homesteadSurvey/add'}); | |||||
}); | }); | ||||
this.$set(this.mapZjdTeAll.mapZjdAData, "zjdlyzk","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "landStatus","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "houseOwnership","2"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "landPhms","10"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "isMore","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sffz","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sfcz","0"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "zjdqdfs","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "sjly","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qlsdfs","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qllx","1"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "qlxz","203"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "yt","01"); | |||||
this.$set(this.mapZjdTeAll.mapZjdAData, "dj","1"); | |||||
//this.mapZjdTeAll.mapZjdAData.deptId = this.$cookies.get("item").deptId; | |||||
//this.$cookies.set("search",this.mapZjdTeAll); | |||||
this.$cookies.set("search","") | |||||
localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData)); | |||||
localStorage.setItem("executePermission",true); | |||||
this.$router.push({path:'/homesteadSurvey/add'}); | |||||
}else { | }else { | ||||
this.$toast("已选择宅基地,请选择自然幢或附属设施按钮"); | this.$toast("已选择宅基地,请选择自然幢或附属设施按钮"); | ||||
@@ -332,6 +332,7 @@ export default { | |||||
let data = this.$route.query; | let data = this.$route.query; | ||||
this.form = data; | this.form = data; | ||||
this.permission = localStorage.getItem("executePermission"); | this.permission = localStorage.getItem("executePermission"); | ||||
this.zjdzdxx = JSON.parse(localStorage.getItem("zjdzdxxItem")); | |||||
if(this.form.id == null){ | if(this.form.id == null){ | ||||
if(data.yhzgxOperate === "true"){ | if(data.yhzgxOperate === "true"){ | ||||
this.yhzgxOperate = true; | this.yhzgxOperate = true; | ||||
@@ -339,7 +340,7 @@ export default { | |||||
}else{ | }else{ | ||||
this.$set(this.form, 'yhzgx', "11"); | this.$set(this.form, 'yhzgx', "11"); | ||||
} | } | ||||
this.$set(this.form, 'suyqrdm', this.zjdzdxx.suyqrdm); | |||||
this.$set(this.form, 'zjlx', "01"); | this.$set(this.form, 'zjlx', "01"); | ||||
this.$set(this.form, 'xb', "1"); | this.$set(this.form, 'xb', "1"); | ||||
this.$set(this.form, 'hklx', "01"); | this.$set(this.form, 'hklx', "01"); | ||||