| @@ -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': | ||||