Quellcode durchsuchen

宅基地调查

wulanhaote
yujk vor 3 Jahren
Ursprung
Commit
597f156ba7
5 geänderte Dateien mit 234 neuen und 69 gelöschten Zeilen
  1. +9
    -0
      src/api/homesteadSurvey/index.js
  2. +19
    -6
      src/components/circleProccess.vue
  3. +121
    -34
      src/views/homesteadSurvey/add.vue
  4. +72
    -16
      src/views/homesteadSurvey/index.vue
  5. +13
    -13
      src/views/homesteadSurvey/list.vue

+ 9
- 0
src/api/homesteadSurvey/index.js Datei anzeigen

@@ -75,3 +75,12 @@ export function sysConfig(query) {
params: query
})
}

// 查询数据调查任务列表
export function userList() {
return request({
url: '/houseSurvey/task/userList',
method: 'get'
})
}


+ 19
- 6
src/components/circleProccess.vue Datei anzeigen

@@ -35,11 +35,17 @@ export default {
let cc = this.counts
if(this.counts>0&&this.counts<99){
cc+=1
}
}
let time_canvas = document.getElementById(this.ids);
time_canvas.width = document.documentElement.clientWidth/6;
time_canvas.height = document.documentElement.clientWidth/6;
this.drawMain(time_canvas, cc, "#85d824", "#eef7e4");
if(this.counts<50){
this.drawMain(time_canvas, cc, "#FA5353", "#eef7e4");
}else if(this.counts<100){
this.drawMain(time_canvas, cc, "#22B7F2", "#eef7e4");
}else{
this.drawMain(time_canvas, cc, "#85d824", "#eef7e4");
}
},
methods: {
drawMain(drawing_elem, percent, forecolor, bgcolor){
@@ -96,10 +102,17 @@ export default {
text(n,forecolor) {
this.context.save(); //save和restore可以保证样式属性只运用于该段canvas元素
this.context.fillStyle = forecolor;
var font_size = document.documentElement.clientWidth/35;
this.context.font = font_size + "px arial";
var text_width = this.context.measureText(n.toFixed(0) + "%").width;
this.context.fillText(n.toFixed(0) + "%", this.center_x - text_width / 2, this.center_y + font_size / 2.5);
if(this.counts==100){
var font_size = document.documentElement.clientWidth/15;
this.context.font = font_size + "px arial";
var text_width = this.context.measureText(n.toFixed(0) + "%").width;
this.context.fillText("✔", this.center_x - text_width / 6, this.center_y + font_size / 2.5);
}else{
var font_size = document.documentElement.clientWidth/35;
this.context.font = font_size + "px arial";
var text_width = this.context.measureText(n.toFixed(0) + "%").width;
this.context.fillText(n.toFixed(0) + "%", this.center_x - text_width / 2, this.center_y + font_size / 2.5);
}
this.context.restore();
}
}


+ 121
- 34
src/views/homesteadSurvey/add.vue Datei anzeigen

@@ -468,9 +468,9 @@
<p style="flex:1;text-align:right;">{{item.nhdm}}</p>
</div>
<div style="text-align:center;overflow:auto;">
<van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopupsyqr(item)">查看使用权人信息</van-button>
<van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" @click="showPopuphncylist(item)">查看户内成员信息</van-button>
<van-button plain round color="#7AC943" size="mini" style="margin:0 5px;" @click="showPopupsyqr(item)">查看使用权人</van-button>
<van-button plain round color="#7AC943" size="mini" style="margin:0 5px;" @click="showPopupnh(item)">查看户主信息</van-button>
<van-button plain round color="#7AC943" size="mini" style="margin:0 5px;" @click="showPopuphncylist(item)">查看成员信息</van-button>
</div>
</div>
<template #right>
@@ -1357,8 +1357,6 @@
name="房屋编码"
label="房屋编码"
placeholder="房屋编码"
required
:rules="[{ required: true, message: '房屋编码不能为空' }]"
/>
<van-field
autocomplete="off"
@@ -3871,37 +3869,109 @@
this.$router.push({name:'homesteadList'});
}
},
showPopupnh(){
showPopupnh(item){
this.shownh = true;
let params = {
"deptId" : this.item.deptId
}
this.nhform={
"suyqrdm":null,
"deptId":this.item.deptId,
"hzzjlx":'01',
"hzzjlxName":"身份证",
"hyzk":'02',
"occupation":'1',
"occupationName":'务农',
"jzqk":'3',
"jzqkName":'常年居住',
"jzhcssfyzf":'1',
"jzhcssfyzfName":'无住房',
"zqtczsfyzf":'Y',
"sfbccm":'Y',
"sfpkh":'N',
"sfwbh":'N',
"sjly":'07',
"sjlyName":'农村集体产权制度改革',
}
listSuyqr(params).then((response) => {
if(response.rows.length>0){
this.nhform.suyqrdm = response.rows[0].suyqrdm
}else{
this.nhform.suyqrdm = this.form.suyqrdm
if(item==""){
let params = {
"deptId" : this.item.deptId
}
});
this.nhform={
"suyqrdm":null,
"deptId":this.item.deptId,
"hzzjlx":'01',
"hzzjlxName":"身份证",
"hyzk":'02',
"occupation":'1',
"occupationName":'务农',
"jzqk":'3',
"jzqkName":'常年居住',
"jzhcssfyzf":'1',
"jzhcssfyzfName":'无住房',
"zqtczsfyzf":'Y',
"sfbccm":'Y',
"sfpkh":'N',
"sfwbh":'N',
"sjly":'07',
"sjlyName":'农村集体产权制度改革',
}
listSuyqr(params).then((response) => {
if(response.rows.length>0){
this.nhform.suyqrdm = response.rows[0].suyqrdm
}else{
this.nhform.suyqrdm = this.form.suyqrdm
}
});
}else{
let params = {
"deptId" : this.item.deptId,
nhdm:item.nhdm
}
listNh(params).then((response) => {
this.nhform = response.rows[0]
if(this.nhform.hzzjlx==null||this.nhform.hzzjlx==''){
this.nhform.hzzjlx = '01'
this.nhform.hzzjlxName = '身份证'
}
if(this.nhform.hyzk==null||this.nhform.hyzk==''){
this.nhform.hyzk = '02'
}
if(this.nhform.occupation==null||this.nhform.occupation==''){
this.nhform.occupation = '1'
this.nhform.occupationName = '务农'
}
if(this.nhform.jzqk==null||this.nhform.jzqk==''){
this.nhform.jzqk = '3'
this.nhform.jzqkName = '常年居住'
}
if(this.nhform.jzhcssfyzf==null||this.nhform.jzhcssfyzf==''){
this.nhform.jzhcssfyzf = '1'
this.nhform.jzhcssfyzfName = '无住房'
}
if(this.nhform.zqtczsfyzf==null||this.nhform.zqtczsfyzf==''){
this.nhform.zqtczsfyzf = 'Y'
}
if(this.nhform.sfbccm==null||this.nhform.sfbccm==''){
this.nhform.sfbccm = 'Y'
}
if(this.nhform.sfpkh==null||this.nhform.sfpkh==''){
this.nhform.sfpkh = 'N'
}
if(this.nhform.sfwbh==null||this.nhform.sfwbh==''){
this.nhform.sfwbh = 'N'
}
if(this.nhform.sjly==null||this.nhform.sjly==''){
this.nhform.sjly = '07'
this.nhform.sjlyName = '农村集体产权制度改革'
}

this.jzhcssfyzfOptions.map(res => {
if(res.dictValue == this.nhform.jzhcssfyzf){
this.nhform.jzhcssfyzfName = res.dictLabel
}
})
this.zjlxOptions.map(res => {
if(res.dictValue == this.nhform.hzzjlx){
this.nhform.hzzjlxName = res.dictLabel
}
})
this.occupationOptions.map(res => {
if(res.dictValue == this.nhform.occupation){
this.nhform.occupationName = res.dictLabel
}
})
this.jzqkOptions.map(res => {
if(res.dictValue == this.nhform.jzqk){
this.nhform.jzqkName = res.dictLabel
}
})
this.sjlyOptions.map(res => {
if(res.dictValue == this.nhform.sjly){
this.nhform.sjlyName = res.dictLabel
}
})
});
}

},
getZjd() {
let _this = this
@@ -4180,6 +4250,22 @@
},
// 户主保存
onSubmitnh(){
if(this.nhform.id!=null){
updateNh(this.nhform).then(
response => {
let _this =this
this.$toast({
icon: 'success', // 找到自己需要的图标
message: '修改成功',
duration:"1000",
onClose:function(){
_this.shownh = false
_this.getNh()
}
})
}
);
}else{
this.nhform.deptId = this.item.deptId
addNh(this.nhform).then(
response => {
@@ -4194,6 +4280,7 @@
})
}
);
}
},
// 自然幢保存
onSubmitzrz(){


+ 72
- 16
src/views/homesteadSurvey/index.vue Datei anzeigen

@@ -64,14 +64,23 @@
</div>

<div v-if="active==1" style="height:calc( 100vh - 350px);overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask">
<van-cell v-for="(item,index) in totalList" :key="item.id" :title="item.deptName" size="small" @click.native="setCookies(item)" :to="{name:'homesteadList'}"style="border-radius: 16px;
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask" :immediate-check="false">
<van-cell v-for="(item,index) in totalList" :key="item.id" size="small" @click.native="setCookies(item)" :to="{name:'homesteadList'}"style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
<template #title>
<div>{{item.deptName}}
<p style="float:right">
{{item.confirmZjdzdNumber}}/{{item.reportZjdzdNumber}}
</p>
</div>
</template>
<template #default>
<CircleProccess :ids="index" :counts="item.reportZjdzdNumber!=0?(item.confirmZjdzdNumber/item.reportZjdzdNumber)*100:0"></CircleProccess>
</template>
<template #label>
开始时间:{{item.planBeginTime}}<br/> 结束时间:{{item.planEndTime}}
{{item.planBeginTime}}~{{item.planEndTime}}
<br/>
{{taskExecutorChange(item)}}
</template>
<template #icon>
<van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
@@ -81,13 +90,20 @@
</div>
<div v-if="active==2" style="height:calc( 100vh - 350px);overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask">
<van-cell v-for=" (item,index) in doneList" :key="item.id" :title="item.deptName" size="small" :to="{name:'homesteadList',params:{item:item}}" style="border-radius: 16px;
<van-cell v-for=" (item,index) in doneList" :key="item.id" size="small" :to="{name:'homesteadList',params:{item:item}}" style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
<template #title>
<p>{{item.deptName}}
{{item.confirmZjdzdNumber}}/{{item.reportZjdzdNumber}}
</p>
</template>
<template #default>
<CircleProccess :ids="index" :counts="item.reportZjdzdNumber!=0?(item.confirmZjdzdNumber/item.reportZjdzdNumber)*100:0"></CircleProccess>
</template>
<template #label>
开始时间:{{item.planBeginTime}}<br/> 结束时间:{{item.planEndTime}}
{{item.planBeginTime}}~{{item.planEndTime}}
<br/>
{{taskExecutorChange(item)}}
</template>
<template #icon>
<van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
@@ -97,13 +113,20 @@
</div>
<div v-if="active==3" style="height:calc( 100vh - 350px);overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask">
<van-cell v-for=" (item,index) in todoList" :key="item.id" :title="item.deptName" size="small" :to="{name:'homesteadList',params:{item:item}}" style="border-radius: 16px;
<van-cell v-for=" (item,index) in todoList" :key="item.id" size="small" :to="{name:'homesteadList',params:{item:item}}" style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
<template #title>
<p>{{item.deptName}}
{{item.confirmZjdzdNumber}}/{{item.reportZjdzdNumber}}
</p>
</template>
<template #default>
<CircleProccess :ids="index" :counts="item.reportZjdzdNumber!=0?(item.confirmZjdzdNumber/item.reportZjdzdNumber)*100:0"></CircleProccess>
</template>
<template #label>
开始时间:{{item.planBeginTime}}<br/> 结束时间:{{item.planEndTime}}
{{item.planBeginTime}}~{{item.planEndTime}}
<br/>
{{taskExecutorChange(item)}}
</template>
<template #icon>
<van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
@@ -116,7 +139,7 @@
</template>

<script>
import {addTask, complete, delTask, exportTask, getTask, listTask, publish, updateTask} from "@/api/homesteadSurvey/index";
import {addTask, complete, delTask, exportTask, getTask, listTask, publish, updateTask, userList} from "@/api/homesteadSurvey/index";
import {getInfo} from "../../api/login";
import CircleProccess from "@/components/circleProccess.vue";
import {updateUserPwd} from "../../api/onlineHome/my";
@@ -127,7 +150,6 @@
},
data() {
return {

active: 1,
show: false,
loading: false,
@@ -154,8 +176,21 @@
countqb:0,
countyhc:0,
countwhc:0,

//宅调人员列表
taskExecutortions:[],
};
},
created(){
userList().then(response => {
this.taskExecutortions = response.data
})
getInfo().then(response => {
this.nickName = response.user.nickName
this.queryParams.taskExecutor = response.user.userName
this.getList();
});
},
mounted(){
// 监听屏幕方向
let self = this;
@@ -168,15 +203,30 @@
},
false
);
getInfo().then(response => {
this.nickName = response.user.nickName
this.queryParams.taskExecutor = response.user.userName
this.getList();
});

},
methods: {

taskExecutorChange(row){
if(row.taskExecutor!=null&&row.taskExecutor!=""&&row.taskExecutor.length>1){
var actions = [];
row.taskExecutor.map(res => {
for(let i = 0;i<this.taskExecutortions.length;i++){
if(res == this.taskExecutortions[i].userName){
actions.push(this.taskExecutortions[i].nickName)
}
}
})
return actions.join(',');
}else{
var actions = [];
Object.keys(this.taskExecutortions).some((key) => {
if (this.taskExecutortions[key].userName == ('' + row.taskExecutor)) {
actions.push(this.taskExecutortions[key].nickName);
return true;
}
})
return actions.join(',');
}
},
onRefreshtask(){
this.isLoadingtask = false;
let _this = this
@@ -245,6 +295,9 @@
this.todo+=1
this.todoList.push(res);
}
if(res.taskExecutor!=null&&res.taskExecutor!=''){
res.taskExecutor = res.taskExecutor.split(',')
}
})
});
},
@@ -259,6 +312,9 @@
</script>

<style scoped>
>>> .van-cell__title{
flex:3
}
>>> .sss {
display: flex;
}


+ 13
- 13
src/views/homesteadSurvey/list.vue Datei anzeigen

@@ -1459,14 +1459,14 @@
onRefreshzjd(){
this.isLoadingzjd = false;
let _this = this
if(this.active==1){
let params = {
"deptId" : this.item.deptId,
"houseDataConfirmStatus" : "CONFIRMED",
"pageNum": this.countyhc+1,
"pageSize":10,
}
listZjdzd(params).then((response) => {
if(this.active==1&&this.loading2){
let params = {
"deptId" : this.item.deptId,
"houseDataConfirmStatus" : "CONFIRMED",
"pageNum": this.countyhc+1,
"pageSize":10,
}
listZjdzd(params).then((response) => {
if(response.rows.length>0&&this.list1.length<response.total){
response.rows.map(res => {
this.list1.push(res)
@@ -1474,10 +1474,11 @@
this.countyhc++
this.loading2 = false
}else{
this.loading2 = false
this.finished2 = true
}
});
}else if(this.active==2){
});
}else if(this.active==2&&this.loading3){
let params = {
"deptId" : this.item.deptId,
"houseDataConfirmStatus" : "UNCONFIRMED",
@@ -1485,7 +1486,6 @@
"pageSize":10,
}
listZjdzd(params).then((response) => {

if(response.rows.length>0&&this.list2.length<response.total){
response.rows.map(res => {
this.list2.push(res)
@@ -1496,7 +1496,7 @@
this.finished3 = true
}
});
}else{
}else if(this.active==0&&this.loading1){
let params = {
"deptId" : this.item.deptId,
"pageNum": this.countqb+1,
@@ -1968,7 +1968,7 @@
this.showhncylist = true
let params = {
"nhdm":item.nhdm,
"deptId":this.item.deptId
"deptId":this.item.deptIdget
}
listNhhncy(params).then((response) => {
if (response.code == 200) {


Laden…
Abbrechen
Speichern