@@ -141,3 +141,4 @@ export function selectProposerWLHT(id, data) { | |||||
params: data | params: data | ||||
}) | }) | ||||
} | } | ||||
@@ -0,0 +1,230 @@ | |||||
import request from '@/utils/request' | |||||
//查询列表 | |||||
export function getList(data){ | |||||
return request({ | |||||
url:'/home/mobile/proposer/list', | |||||
method:'get', | |||||
params:data | |||||
}) | |||||
} | |||||
//获取申请单明细 | |||||
export function allInformation(id){ | |||||
return request({ | |||||
url:'/home/allinformation/'+id, | |||||
method:'get', | |||||
}) | |||||
} | |||||
//获取申请单明细 | |||||
export function allInformationAnnounce(id){ | |||||
return request({ | |||||
url:'/home/allinformation/'+id+'?type=announce', | |||||
method:'get', | |||||
}) | |||||
} | |||||
//获取文件配置 | |||||
export function treeSingleProcessView(data){ | |||||
return request({ | |||||
url:'/home/mobile/treeSingleProcessView', | |||||
method:'get', | |||||
params:data | |||||
}) | |||||
} | |||||
//获取上传附件 | |||||
export function attachmentFind(data){ | |||||
return request({ | |||||
url:'/home/mobile/find', | |||||
method:'get', | |||||
params:data | |||||
}) | |||||
} | |||||
//保存申请 | |||||
export function saveHomeBaseInfo(data){ | |||||
return request({ | |||||
url:'/home/mobile/saveHomeBaseInfo', | |||||
method:'post', | |||||
data:data | |||||
}) | |||||
} | |||||
//提交申请 | |||||
export function saveHouseBaseInfoThenSubmit(data){ | |||||
return request({ | |||||
url:'/home/custom/saveHouseBaseInfoThenSubmit', | |||||
method:'post', | |||||
data:data | |||||
}) | |||||
} | |||||
//同意审批 | |||||
export function agreeApply(data){ | |||||
return request({ | |||||
url:'/home/mobile/agreeApply', | |||||
method:'post', | |||||
data:data | |||||
}) | |||||
} | |||||
//驳回审批 | |||||
export function rejectApply(data){ | |||||
return request({ | |||||
url:'/home/mobile/rejectApply', | |||||
method:'post', | |||||
data:data | |||||
}) | |||||
} | |||||
//上传图片 | |||||
export function attach(data){ | |||||
console.log(data) | |||||
return request({ | |||||
url:'/common/attach', | |||||
method:'post', | |||||
headers:{'Content-Type': 'application/x-www-form-urlencoded;boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'}, | |||||
data:data | |||||
}) | |||||
} | |||||
//删除列表项 | |||||
export function removeList(id){ | |||||
return request({ | |||||
url:'/home/mobile/proposer/remove/'+id, | |||||
method:'get' | |||||
}) | |||||
} | |||||
//删除附件 | |||||
export function removeFile(id){ | |||||
return request({ | |||||
url:'/home/mobile/fileRemove/'+id, | |||||
method:'get' | |||||
}) | |||||
} | |||||
//获取户主信息 | |||||
export function getHomeMembers(data){ | |||||
return request({ | |||||
url:'/home/mobile/getHomeMembers', | |||||
method:'get', | |||||
params:data | |||||
}) | |||||
} | |||||
//获取申请单明细 WLHT | |||||
export function allInformationWLHT(id){ | |||||
return request({ | |||||
url:'/home/mobile/getYdjfsq/'+id, | |||||
method:'get', | |||||
}) | |||||
} | |||||
// 查询文件配置树 | |||||
export function getAttachmentConfigTree(query) { | |||||
return request({ | |||||
url: '/home/mobile/getAttachmentConfigTree', | |||||
method: 'get', | |||||
params: query | |||||
}) | |||||
} | |||||
// 新增地房申请-申请人 | |||||
export function addProposer(data) { | |||||
return request({ | |||||
url: '/home/custom/saveHouseBaseInfo', | |||||
method: 'post', | |||||
data: data | |||||
}) | |||||
} | |||||
//检查是否重复建房 | |||||
export function checkDuplicateBuilding(query) { | |||||
return request({ | |||||
url: '/home/mobile/checkDuplicateBuilding', | |||||
method: 'get', | |||||
params: query | |||||
}) | |||||
} | |||||
// 查询农房户型列表 | |||||
export function listHomeapplytype(query) { | |||||
return request({ | |||||
url: '/home/mobile/tytzList', | |||||
method: 'get', | |||||
params: query | |||||
}) | |||||
} | |||||
//查询宅地信息 | |||||
export function checkDuplicateBuildingQuery(id) { | |||||
return request({ | |||||
url: '/home/mobile/applyDetail/' + id, | |||||
method: 'get' | |||||
}) | |||||
} | |||||
//乌兰浩特申请单人操作 | |||||
export function customSubmitWLHT(id) { | |||||
return request({ | |||||
url: '/home/mobile/publish/' + id, | |||||
method: 'post' | |||||
}) | |||||
} | |||||
// 新增地房申请-开工申请 | |||||
export function submitStartWLHT(id) { | |||||
return request({ | |||||
url: '/home/mobile/publishStart/'+id, | |||||
method: 'post', | |||||
}) | |||||
} | |||||
// 修改地房申请-开工申请 | |||||
export function updateStart(data) { | |||||
return request({ | |||||
url: '/home/start/edit', | |||||
method: 'post', | |||||
data: data | |||||
}) | |||||
} | |||||
// 提交地房申请-验收意见(乌兰浩特 简化流程) | |||||
export function submitEndWLHT(id) { | |||||
return request({ | |||||
url: '/home/mobile/publishCheck/'+id, | |||||
method: 'post', | |||||
}) | |||||
} | |||||
//查询当前登录账号坐标 | |||||
export function getQueryLand(id) { | |||||
return request({ | |||||
url: '/home/mobile/get/current/' + id, | |||||
method: 'get' | |||||
}) | |||||
} | |||||
//查询当前登录账号坐标 | |||||
export function getWorkflow() { | |||||
return request({ | |||||
url: '/home/mobile/workflow', | |||||
method: 'get' | |||||
}) | |||||
} | |||||
// 查询农户信息 | |||||
export function selectProposerNh(data) { | |||||
return request({ | |||||
url: '/home/mobile/queryHomeBaseNh' , | |||||
method: 'get', | |||||
params: data | |||||
}) | |||||
} | |||||
//驳回提交清空历史审批记录 | |||||
export function updateOpretion(id) { | |||||
return request({ | |||||
url: '/home/custom/updateOpretion/' + id, | |||||
method: 'post' | |||||
}) | |||||
} |
@@ -0,0 +1,302 @@ | |||||
<template> | |||||
<div v-if="this.attachmentList.length !== 0"> | |||||
<p class="main_title">当前节点所需上传文件</p> | |||||
<van-steps direction="vertical" :active="active"> | |||||
<van-step | |||||
v-for="(item, index) in attachmentList" | |||||
:key="index"> | |||||
<van-collapse :accordion="true" v-model="item.collapse"> | |||||
<van-collapse-item :title="item.fileTypeName + '(' + item.fileList.length + ')'" :name="0"> | |||||
<van-uploader | |||||
v-model="item.fileList" | |||||
:after-read="(file, detail) => { handleUploadSuccess(file, detail, item); }" | |||||
:readonly="disabled || !item.current" | |||||
:show-upload="!disabled && item.current" | |||||
:before-delete="handleRemove" | |||||
:deletable="!disabled && item.current" | |||||
accept=".jpg,.png,.gif,.pdf,.doc,.docx,.xlsx,.xls" | |||||
:before-read="checkFile" | |||||
> | |||||
<!-- accept=".jpg,.png,.gif,.pdf,.doc,.docx,.xlsx,.xls" 设置了无法拉起相机/下载 | |||||
:disabled="disabled || !item.current" | |||||
--> | |||||
</van-uploader> | |||||
</van-collapse-item> | |||||
</van-collapse> | |||||
</van-step> | |||||
</van-steps> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import { treeSingleProcessView , attach , removeFile , getAttachmentConfigTree, attachmentFind } from "@/api/sunVillage_info/homestead/application"; | |||||
import {getToken} from "@/utils/auth"; | |||||
import request from '@/utils/request' | |||||
import {Notify} from "vant"; | |||||
/** 导入JS方法 */ | |||||
export default { | |||||
name: "houseApplyUploadComp", | |||||
components: {}, | |||||
props: ["businessType", "proposerId", "houseApplyStatus", "processKey", "tableName", "readonly", 'full',"userName"], | |||||
data() { | |||||
return { | |||||
disabled: this.readonly, | |||||
loading: false, | |||||
attachmentList: [], | |||||
uploadImg: { | |||||
//上传图片配置 | |||||
uploadImgUrl: "/home/mobile/common/attach", | |||||
}, | |||||
newAttachments: [], | |||||
active: -1, | |||||
has: false, | |||||
} | |||||
}, | |||||
watch: { | |||||
proposerId: function (newVal, oldVal) { | |||||
this.showAttachmentComp(this.businessType, newVal, this.houseApplyStatus, this.processKey, this.tableName, this.full); | |||||
}, | |||||
readonly: function (newVal, oldVal) { | |||||
this.disabled = newVal; | |||||
}, | |||||
}, | |||||
created() { | |||||
console.info(this.houseApplyStatus); | |||||
if (this.businessType !== null && this.proposerId == -1) { | |||||
this.showAttachmentComp(this.businessType, this.proposerId, this.houseApplyStatus, this.processKey, this.tableName, this.full) | |||||
} | |||||
}, | |||||
methods: { | |||||
handleUploadSuccess(file, detail, item) { | |||||
this.setFileStatus(file, 'uploading', '文件上传中...'); | |||||
let formData = new FormData; | |||||
formData.set('file', file.file); | |||||
this.$set(item.postData, 'userName', this.userName); | |||||
request({ | |||||
url: this.uploadImg.uploadImgUrl, | |||||
method: "post", | |||||
params: item.postData, | |||||
data: formData, | |||||
}).then((resp) => { | |||||
if(resp.code == 200) | |||||
{ | |||||
file.response = resp; | |||||
console.log(resp); | |||||
file.fileList = item.fileList; | |||||
this.onFileListChanged("ADD", resp.id); | |||||
this.setFileStatus(file, 'done', '文件上传成功'); | |||||
this.$emit('onUploadSuccess', file); | |||||
} | |||||
else | |||||
this.setFileStatus(file, 'fail', '文件上传失败!'); | |||||
}).catch((e) => { | |||||
this.setFileStatus(file, 'fail', '文件上传失败!'); | |||||
}); | |||||
return true; | |||||
}, | |||||
handleRemove(file, detail) { | |||||
console.log(file, detail); | |||||
this.setFileStatus(file, 'uploading', '文件删除中...'); | |||||
let id = file.id || file.response.id; | |||||
removeFile(id).then(resp => { | |||||
if(this.proposerId != -1 && false) // 不刷新 | |||||
this.showAttachmentComp(this.businessType, this.proposerId, this.houseApplyStatus, this.processKey, this.tableName, this.full) | |||||
/* else // 新增时 | |||||
{ | |||||
let fileList = file.fileList; | |||||
//console.log(fileList); | |||||
fileList.splice(fileList.indexOf(file), 1); | |||||
}*/ | |||||
this.setFileStatus(file, 'done', '文件删除成功'); | |||||
this.onFileListChanged("REMOVE", id); | |||||
}).catch((e) => { | |||||
this.setFileStatus(file, 'fail', '文件删除失败!'); | |||||
}).finally(() => { | |||||
//loading.close(); | |||||
}); | |||||
return true; | |||||
}, | |||||
showAttachmentComp(businessType, proposerId, houseApplyStatus, processKey, tableName, full) { | |||||
this.attachmentList = []; | |||||
this.active = -1; | |||||
this.has = false; | |||||
if(!full && 0) | |||||
{ | |||||
this.getCurrentFiles(businessType, proposerId, houseApplyStatus, processKey, tableName); | |||||
} | |||||
else | |||||
{ | |||||
this.getHistoryFiles(businessType, proposerId, houseApplyStatus, processKey, tableName); | |||||
} | |||||
}, | |||||
formatFile(list) { | |||||
if (list !== null && list !== undefined) { | |||||
const baseImgUrl = this.$store.getters.baseRoutingUrl; | |||||
let UfileList = []; //上传图片列表 | |||||
list.forEach((value, index) => { | |||||
UfileList.push({ | |||||
name: value.fileName, | |||||
fileUrl: value.fileUrl, | |||||
url: baseImgUrl + value.fileUrl, | |||||
id: value.id, | |||||
fileList: UfileList, | |||||
}); | |||||
}); | |||||
return UfileList; | |||||
} | |||||
}, | |||||
onFileListChanged(type, id) { | |||||
if(this.proposerId != -1) return; | |||||
if(type === "ADD") | |||||
{ | |||||
this.newAttachments.push(id); | |||||
} | |||||
else if(type === "REMOVE") | |||||
{ | |||||
let index = this.newAttachments.indexOf(id); | |||||
if(index !== -1) | |||||
this.newAttachments.splice(index, 1); | |||||
} | |||||
console.log(this.newAttachments); | |||||
this.$emit('uploadFinished', this.newAttachments); | |||||
}, | |||||
getCurrentFiles(businessType, proposerId, houseApplyStatus, processKey, tableName) { | |||||
this.loading = true; | |||||
treeSingleProcessView({ | |||||
businessType: businessType, | |||||
houseApplyStatus: houseApplyStatus, | |||||
processKey: processKey, | |||||
tableName: tableName, | |||||
}).then(res => { | |||||
this.handleResponse(res.rows, proposerId, houseApplyStatus, tableName); | |||||
if(this.attachmentList.length === 0) | |||||
{ | |||||
this.disabled = true; | |||||
this.getHistoryFiles(businessType, proposerId, houseApplyStatus, processKey, tableName); | |||||
} | |||||
}).finally(() => { | |||||
this.loading = false; | |||||
}); | |||||
}, | |||||
getHistoryFiles(businessType, proposerId, houseApplyStatus, processKey, tableName) { | |||||
this.loading = true; | |||||
getAttachmentConfigTree({ | |||||
businessType: businessType, | |||||
nodeStatus: houseApplyStatus, | |||||
processKey: processKey, | |||||
nodeStatusSort: '1,32,2,3,33,31,4,5,34,6,7,8,9,10,' | |||||
+ '12,13,14,15,16,17,28,19,18,' | |||||
+ '20,21,22,23,24,25,30,29,26,27' | |||||
, | |||||
}).then(resp => { | |||||
//console.log(resp); | |||||
try { | |||||
if(!resp.data || resp.data.length === 0) | |||||
return; | |||||
let rows = resp.data[0].params.children; | |||||
rows.forEach((value, index) => { | |||||
if (!value.params.children) | |||||
return; | |||||
this.handleResponse(value.params.children, proposerId, houseApplyStatus, tableName); | |||||
}); | |||||
} | |||||
catch (e) | |||||
{ | |||||
console.error(e); | |||||
} | |||||
}).finally(() => { | |||||
this.loading = false; | |||||
}); | |||||
}, | |||||
handleResponse(rows, proposerId, houseApplyStatus, tableName) { | |||||
rows.forEach((value, index) => { | |||||
let obj = { | |||||
fileTypeName: value.fileTypeName, | |||||
tableId: proposerId, | |||||
tableName: tableName, | |||||
fileList: [], | |||||
fileType: value.fileType, | |||||
postData: { | |||||
tableId: proposerId, | |||||
tableName: tableName, | |||||
bizPath: tableName, | |||||
fileType: value.fileType, | |||||
}, | |||||
current: value.nodeStatus == houseApplyStatus, | |||||
collapse: this.disabled || value.nodeStatus == houseApplyStatus ? 0 : '', | |||||
}; | |||||
if(value.nodeStatus != houseApplyStatus && !this.has) | |||||
this.active++; | |||||
if(value.nodeStatus == houseApplyStatus) | |||||
{ | |||||
if(!this.has) | |||||
this.active++; | |||||
this.has = true; | |||||
} | |||||
this.attachmentList.push(obj); | |||||
}); | |||||
if (proposerId !== -1) { | |||||
this.attachmentList.forEach((value, index) => { | |||||
attachmentFind(value).then(resp => { | |||||
let list = this.formatFile(resp.data); | |||||
this.$set(this.attachmentList[index], "fileList", list); | |||||
}); | |||||
}); | |||||
} | |||||
console.info(this.attachmentList); | |||||
}, | |||||
setFileStatus(file, status, message) { | |||||
file.status = status; | |||||
file.message = message; | |||||
}, | |||||
checkFile(file) { | |||||
let mime = file.type; | |||||
if([ | |||||
"image/png", | |||||
"image/jpeg", | |||||
"image/gif", | |||||
"image/bmp", | |||||
].indexOf(mime) === -1) | |||||
{ | |||||
this.notify('请上传jpg/png/gif/bmp等格式图片!', 'danger'); | |||||
return false; | |||||
} | |||||
return true; | |||||
}, | |||||
notify(message, type) { | |||||
Notify.clear(); | |||||
Notify({ type: type || 'primary', message: message }); | |||||
}, | |||||
} | |||||
}; | |||||
</script> | |||||
<style scoped> | |||||
.my_class >>> .el-upload--picture-card { | |||||
width: 72px; | |||||
height: 72px; | |||||
line-height: 78px; | |||||
} | |||||
.my_class >>> .el-upload-list__item { | |||||
width: 72px; | |||||
height: 72px; | |||||
} | |||||
.my_class >>> .el-upload-list__item-preview { | |||||
width: 20px; | |||||
} | |||||
.my_class >>> .el-upload-list__item-delete { | |||||
width: 20px; | |||||
} | |||||
.main_title{ | |||||
font-size: 0.4rem; | |||||
color: #1D6FE9; | |||||
margin: 0.2rem 6%; | |||||
position: relative; | |||||
} | |||||
</style> |
@@ -128,6 +128,8 @@ const whiteList = [ | |||||
'/sunVillage_info/list_vote', //详情页 | '/sunVillage_info/list_vote', //详情页 | ||||
'/sunVillage_info/list_vote_detail', //详情页 | '/sunVillage_info/list_vote_detail', //详情页 | ||||
'/sunVillage_info/list_vote_form', //详情页 | '/sunVillage_info/list_vote_form', //详情页 | ||||
'/sunVillage_info/homeApplication/applicationList', //列表页面 | |||||
'/sunVillage_info/proposerLite', | |||||
// 新型经营主体 | // 新型经营主体 | ||||
'newBusinessEntity/newsBulletin', //新闻公告 | 'newBusinessEntity/newsBulletin', //新闻公告 | ||||
'/newBusinessEntity/index', //首页 | '/newBusinessEntity/index', //首页 | ||||
@@ -1291,7 +1291,7 @@ export const constantRoutes = [ | |||||
title: '宅基地审批', | title: '宅基地审批', | ||||
hidden: true, | hidden: true, | ||||
}, | }, | ||||
component: (resolve) => require(['@/views/onlineHome/homestead/homeApproval/approvalForm'], resolve) | |||||
component: (resolve) => require(['@/views/sunVillage_info/homeApplication/proposerLite'], resolve) | |||||
}, | }, | ||||
// { | // { | ||||
// path: '/onlineHome/approvalList', | // path: '/onlineHome/approvalList', | ||||
@@ -2780,7 +2780,7 @@ export const constantRoutes = [ | |||||
path: '/proposerLite', | path: '/proposerLite', | ||||
name: 'proposerLite', | name: 'proposerLite', | ||||
meta: { | meta: { | ||||
title: '农村宅基地申请(简)', | |||||
title: '农村宅基地申请(信)', | |||||
hidden: true, | hidden: true, | ||||
}, | }, | ||||
component: (resolve) => require(['@/views/onlineHome/homestead/homeApplication/proposerLite'], resolve) | component: (resolve) => require(['@/views/onlineHome/homestead/homeApplication/proposerLite'], resolve) | ||||
@@ -3524,6 +3524,24 @@ export const constantRoutes = [ | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/sunVillage_info/list_vote'], resolve) | component: (resolve) => require(['@/views/sunVillage_info/list_vote'], resolve) | ||||
}, | }, | ||||
{ ////阳光村务(新)-- 宅基地申请 | |||||
path: '/sunVillage_info/homeApplication/applicationList', | |||||
name: 'sunVillageInfoApplicationList', | |||||
meta: { | |||||
title: '宅基地申请', | |||||
hidden: true, | |||||
}, | |||||
component: (resolve) => require(['@/views/sunVillage_info/homeApplication/applicationList'], resolve) | |||||
}, | |||||
{ | |||||
path: '/sunVillage_info/proposerLite', | |||||
name: 'sunVillageInfoProposerLite', | |||||
meta: { | |||||
title: '农村宅基地申请', | |||||
hidden: true, | |||||
}, | |||||
component: (resolve) => require(['@/views/sunVillage_info/homeApplication/proposerLite'], resolve) | |||||
}, | |||||
{ ////阳光村务(新)-- 合同信息 | { ////阳光村务(新)-- 合同信息 | ||||
path: '/sunVillage_info/list_vote_detail', | path: '/sunVillage_info/list_vote_detail', | ||||
name: 'sunVillageInfoListVoteDetail', | name: 'sunVillageInfoListVoteDetail', | ||||
@@ -0,0 +1,241 @@ | |||||
<template> | |||||
<div class="app-container"> | |||||
<van-nav-bar | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="$router.back(-1)" | |||||
@click-right="goAddLite()" | |||||
> | |||||
<template #title> | |||||
<p style="font-weight: bold;">宅基地申请</p> | |||||
</template> | |||||
<template #right> | |||||
<van-icon name="add" size="18"/> | |||||
</template> | |||||
</van-nav-bar> | |||||
<van-pull-refresh v-model="refreshing" @refresh="getList()"> | |||||
<van-list | |||||
v-model="loading" | |||||
:finished="finished" | |||||
finished-text="没有更多了" | |||||
@load="getList('+1')" | |||||
> | |||||
<van-swipe-cell v-for="(item,index) in applicationList" :key="index"> | |||||
<van-cell :title="item.ywh" center @click="viewItem(item)"> | |||||
<!-- <van-cell :title="item.ywh" :value="item.houseApplyStatusName" center @click="viewItem(item)">--> | |||||
<!-- <template #icon>--> | |||||
<!-- <van-icon name="../../../static/images/onlineHome/icon_zjd1.png" size="30" color="#539FFD" style="margin-right: 10px;" />--> | |||||
<!-- </template>--> | |||||
<!-- <template #label>--> | |||||
<!-- <p>{{item.projectName}}</p>--> | |||||
<!-- </template>--> | |||||
<template #icon> | |||||
<van-icon name="../../../static/images/onlineHome/icon_zjd1.png" size="30" color="#539FFD" style="margin-right: 10px;" /> | |||||
</template> | |||||
<span v-if="item.auditStatus === '0'">{{ formatDict(houseApplyStatus, item.homeApplyStatus) }} </span> | |||||
<span v-else-if="item.auditStatus === '2' " style="color: #F56C6C">{{ formatDict(houseApplyStatus, item.homeApplyStatus) + ' ● 已驳回' }} </span> | |||||
<span v-else style="color: #67c23a;">{{ formatDict(houseApplyStatus, item.homeApplyStatus) }} </span> | |||||
<template #label> | |||||
<p>{{item.projectName}}</p> | |||||
</template> | |||||
</van-cell> | |||||
<template #right> | |||||
<van-row> | |||||
<van-col> | |||||
<van-button square text="提交" type="primary" v-if="item.homeApplyStatus=='11' || item.homeApplyStatus=='31' || item.homeApplyStatus=='71'" @click="submitApplyProposer(item)" class="delete-button" /> | |||||
</van-col> | |||||
<van-col> | |||||
<van-button square text="修改" type="info" v-if="item.homeApplyStatus=='11' || item.homeApplyStatus=='31' || item.homeApplyStatus=='71'" :to="{name:'sunVillageInfoProposerLite', query: {id:item.id, type: 'modify'}}" class="delete-button" /> | |||||
</van-col> | |||||
<van-col> | |||||
<van-button square text="删除" type="danger" v-if="item.homeApplyStatus=='11'" @click="deleteList(item.id,index)" class="delete-button" /> | |||||
</van-col> | |||||
</van-row> | |||||
</template> | |||||
</van-swipe-cell> | |||||
</van-list> | |||||
</van-pull-refresh> | |||||
</div> | |||||
</template> | |||||
<script> | |||||
import { getList , removeList } from "@/api/sunVillage_info/homestead/application"; | |||||
import { customSubmit, customSubmitWLHT} from "@/api/sunVillage_info/homestead/application"; | |||||
import {updateOpretion} from "@/api/sunVillage_info/homestead/application"; | |||||
import Cookies from "js-cookie"; | |||||
export default { | |||||
name: "applicationList", | |||||
data() { | |||||
return { | |||||
applicationList:[], | |||||
houseApplyStatus:[], | |||||
loading: false, | |||||
finished: false, | |||||
refreshing: false, | |||||
deptId:null, | |||||
total: 0, | |||||
queryParams:{ | |||||
pageNum:1, | |||||
pageSize:10, | |||||
deptId:null, | |||||
orderByColumn:'createTime', | |||||
isAsc:'desc' | |||||
} | |||||
}; | |||||
}, | |||||
created() { | |||||
this.houseGetDicts("home_stage_status").then((response) => { | |||||
this.houseApplyStatus = response.data; | |||||
}); | |||||
this.deptId = Cookies.get('deptId') | |||||
this.$set(this.queryParams, "deptId", this.deptId); | |||||
this.getList(); | |||||
}, | |||||
methods: { | |||||
goAdd(){ | |||||
window.location = 'applicationAdd'; | |||||
}, | |||||
goAddLite(){ | |||||
//window.location = 'applicationAdd' | |||||
this.$router.push({name:'sunVillageInfoProposerLite',query:{type:"add"}}) | |||||
}, | |||||
viewItem(row){ | |||||
let type = row.houseApplyStatus == '11' // 申请草稿 | |||||
|| row.houseApplyStatus == '1F' // 申请通过 | |||||
|| row.houseApplyStatus == '31' // 开工草稿 | |||||
|| row.houseApplyStatus == '3F' // 开工通过 | |||||
|| row.houseApplyStatus == '71' // 验收草稿 | |||||
? 'modify' : 'view'; | |||||
this.$router.push({name:'sunVillageInfoProposerLite',query:{type:type,id:row.id}}) | |||||
}, | |||||
getList(target){ | |||||
let type = typeof (target); | |||||
console.log(type, target); | |||||
if(target && this.finished) | |||||
return; | |||||
if (target === 0) { | |||||
this.refreshing = true; | |||||
this.finished = true; | |||||
this.total = 0; | |||||
this.queryParams.pageNum = 1; | |||||
this.applicationList = []; | |||||
} | |||||
else if (type === 'number') | |||||
this.queryParams.pageNum = target; | |||||
else if (type === 'string') { | |||||
this.queryParams.pageNum = eval(this.queryParams.pageNum + target) | |||||
} | |||||
else | |||||
{ | |||||
this.refreshing = true; | |||||
this.finished = true; | |||||
this.total = 0; | |||||
this.queryParams.pageNum = 1; | |||||
this.applicationList = [] | |||||
} | |||||
getList(this.queryParams).then(response => { | |||||
console.log(response) | |||||
if (response.rows.length === 0) { | |||||
this.finished = true; | |||||
return; | |||||
} | |||||
for (var i = 0; i < response.rows.length; i++) { | |||||
/*var houseApplyStatusName = this.selectDictLabel(this.houseApplyStatus, response.rows[i].houseApplyStatus); | |||||
// if(response.rows[i].auditStatus !== '0' && response.rows[i].auditStatus === '2'){ | |||||
// houseApplyStatusName = houseApplyStatusName+ ' ● 已驳回'; | |||||
// } | |||||
response.rows[i].houseApplyStatusName = houseApplyStatusName;*/ | |||||
this.applicationList.push(response.rows[i]); | |||||
} | |||||
this.total += response.rows.length; | |||||
this.finished = this.total >= response.total; | |||||
}).finally(() => { | |||||
this.loading = false; | |||||
this.refreshing = false; | |||||
}); | |||||
}, | |||||
formatDict(dict, value) { | |||||
return this.selectDictLabel(dict, value); | |||||
}, | |||||
deleteList(id,index){ | |||||
this.$dialog.confirm({ | |||||
message: '您确认删除申请草稿?', | |||||
}) | |||||
.then(() => { | |||||
// on confirm | |||||
this.applicationList.splice(index,1) | |||||
removeList(id).then(res => { | |||||
if(res.code = 200){ | |||||
this.$toast.success('删除成功'); | |||||
} | |||||
}); | |||||
}) | |||||
.catch(() => { | |||||
// on cancel | |||||
}); | |||||
}, | |||||
refresh() { | |||||
this.getList(); return; | |||||
this.applicationList = []; | |||||
this.queryParams.pageNum = 1; | |||||
this.refreshing = true; | |||||
this.finished = false; | |||||
}, | |||||
submitApplyProposer(item) { | |||||
this.$dialog.confirm({ | |||||
message: '您确认提交申请草稿?', | |||||
}).then(() => { | |||||
let func = 1 || item.processKey.endsWith('WLHT') ? customSubmitWLHT : customSubmit; //TODO: 总是走简化流程 | |||||
if(item.auditStatus == '2'){ | |||||
updateOpretion(item.id).then(); | |||||
} | |||||
func(item.id).then((resp) => { | |||||
this.$toast.success("提交成功"); | |||||
this.refresh(); | |||||
}).catch((e) => { | |||||
this.$toast.fail("提交失败!"); | |||||
}); | |||||
}).catch(() => {}); | |||||
}, | |||||
}, | |||||
} | |||||
</script> | |||||
<style scoped lang="scss"> | |||||
.app-container { | |||||
padding: 0.2rem 3%; | |||||
} | |||||
/deep/.van-cell__title{ | |||||
flex: 0.7; | |||||
} | |||||
/deep/.van-cell__title span{ | |||||
font-family: Arial; | |||||
font-size: 0.4rem; | |||||
font-weight: normal; | |||||
} | |||||
/deep/.van-cell__value{ | |||||
flex: 0.3; | |||||
color: #1D6FE9; | |||||
font-weight: bold; | |||||
} | |||||
/deep/.van-swipe-cell{ | |||||
margin-bottom: 0.2rem; | |||||
border-radius: 0.2rem; | |||||
overflow: hidden; | |||||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||||
} | |||||
/deep/van-ellipsis{ | |||||
font-weight: bold; | |||||
} | |||||
.van-row{ | |||||
height: 100%; | |||||
} | |||||
.van-col{ | |||||
height: 100%; | |||||
} | |||||
.delete-button { | |||||
height: 100%; | |||||
} | |||||
</style> |
@@ -27,6 +27,7 @@ | |||||
<p class="nav_tit">我的权利</p> | <p class="nav_tit">我的权利</p> | ||||
<div class="nav_list"> | <div class="nav_list"> | ||||
<router-link :to="{name:'sunVillageInfoListVote',query:{type:'code'}}" class="nav_item n_4">投票表决</router-link> | <router-link :to="{name:'sunVillageInfoListVote',query:{type:'code'}}" class="nav_item n_4">投票表决</router-link> | ||||
<router-link :to="{name:'sunVillageInfoApplicationList',query:{type:'code'}}" class="nav_item n_6">宅基地申请</router-link> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
@@ -233,6 +234,10 @@ | |||||
background: url('../../assets/images/sunVillage_info/index_block_5.png') no-repeat; | background: url('../../assets/images/sunVillage_info/index_block_5.png') no-repeat; | ||||
background-size: 100% 100%; | background-size: 100% 100%; | ||||
} | } | ||||
&.n_6 { | |||||
background: url('../../assets/images/sunVillage_info/index_block_06.png') no-repeat center top; | |||||
background-size: 34.5PX; | |||||
} | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -93,7 +93,7 @@ | |||||
}, | }, | ||||
getList() { | getList() { | ||||
this.taskList = [] | this.taskList = [] | ||||
this.$set(this.queryParams, "systemType", '4'); | |||||
// this.$set(this.queryParams, "systemType", '4'); | |||||
ListTodo(this.queryParams).then((response) => { | ListTodo(this.queryParams).then((response) => { | ||||
response.rows.map(res => { | response.rows.map(res => { | ||||
if(res.tableName?res.tableName.indexOf('house')>0:""){ | if(res.tableName?res.tableName.indexOf('house')>0:""){ | ||||
@@ -118,6 +118,13 @@ | |||||
console.log(item) | console.log(item) | ||||
let type = item.formData.processKey; | let type = item.formData.processKey; | ||||
switch (type) { | switch (type) { | ||||
case 'home_check': | |||||
case 'home_start': | |||||
this.$router.push({name:'approvalForm',query: {id:item.formData.ydjfsqId,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}}) | |||||
break; | |||||
case 'home_apply': | |||||
this.$router.push({name:'approvalForm',query: {id:item.formData.id,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}}) | |||||
break; | |||||
case 'baseApply': | case 'baseApply': | ||||
case 'landscope': | case 'landscope': | ||||
case 'accepting': | case 'accepting': | ||||
@@ -93,7 +93,7 @@ | |||||
}, | }, | ||||
getList() { | getList() { | ||||
this.taskList = [] | this.taskList = [] | ||||
this.$set(this.queryParams, "systemType", '4'); | |||||
// this.$set(this.queryParams, "systemType", '4'); | |||||
ListDone(this.queryParams).then((response) => { | ListDone(this.queryParams).then((response) => { | ||||
response.rows.map(res => { | response.rows.map(res => { | ||||
if(res.tableName?res.tableName.indexOf('house')>0:""){ | if(res.tableName?res.tableName.indexOf('house')>0:""){ | ||||
@@ -118,6 +118,13 @@ | |||||
console.log(item) | console.log(item) | ||||
let type = item.formData.processKey; | let type = item.formData.processKey; | ||||
switch (type) { | switch (type) { | ||||
case 'home_check': | |||||
case 'home_start': | |||||
this.$router.push({name:'approvalForm',query: {id:item.formData.ydjfsqId,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}}) | |||||
break; | |||||
case 'home_apply': | |||||
this.$router.push({name:'approvalForm',query: {id:item.formData.id,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}}) | |||||
break; | |||||
case 'baseApply': | case 'baseApply': | ||||
case 'landscope': | case 'landscope': | ||||
case 'accepting': | case 'accepting': | ||||