@@ -111,6 +111,46 @@ export function contractionList(query) { | |||
params: query | |||
}) | |||
} | |||
// 查询合同结款计划列表 | |||
export function listPlan(query) { | |||
return request({ | |||
url: '/contraction/plan/list', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 新增合同结款计划 | |||
export function addPlan(data) { | |||
return request({ | |||
url: '/contraction/plan/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 修改合同结款计划 | |||
export function updatePlan(data) { | |||
return request({ | |||
url: '/contraction/plan/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 删除合同结款计划 | |||
export function delPlan(id) { | |||
return request({ | |||
url: '/contraction/plan/remove/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 查询合同结款计划详细 | |||
export function getPlan(id) { | |||
return request({ | |||
url: '/contraction/plan/get/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 新增固定资产 | |||
export function addPermanent(data) { | |||
return request({ | |||
@@ -3407,6 +3407,33 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/informationEdit'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 新增结款计划 | |||
path: '/sunVillage_info/informationFunPlanAdd', | |||
name: 'sunVillageInfoinformationFunPlanAdd', | |||
meta: { | |||
title: '新增结款计划', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/informationFunPlanAdd'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 结款计划列表 | |||
path: '/sunVillage_info/informationFunPlan', | |||
name: 'sunVillageInfoInformationFunPlan', | |||
meta: { | |||
title: '结款计划', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/informationFunPlan'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 结款计划修改 | |||
path: '/sunVillage_info/informationFunPlanEdit', | |||
name: 'sunVillageInfoInformationFunPlanEdit', | |||
meta: { | |||
title: '修改结款计划', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/informationFunPlanEdit'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 合同信息 | |||
path: '/sunVillage_info/details', | |||
name: 'sunVillageInfoDetails', | |||
@@ -69,36 +69,41 @@ | |||
<van-checkbox v-model="checked" @change="checkChange">仅我</van-checkbox> | |||
</div> | |||
</div> | |||
<div v-if="active==1" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;"> | |||
<van-list | |||
v-model:loading="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
:immediate-check="false" | |||
@load="onRefreshtask" | |||
> | |||
<van-cell v-for="(item,index) in totalList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
<div style="margin-top: 50px;"> | |||
<van-sticky style="margin-top: 20px;"> | |||
<van-search v-model="rwmcValue" placeholder="请输入任务名称" @search="onSearch" ></van-search> | |||
</van-sticky> | |||
</div> | |||
<div v-if="active==1" style="height:calc( 100vh - 350px);margin-top: 5%;overflow-y:auto;"> | |||
<van-list | |||
v-model:loading="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
:immediate-check="false" | |||
@load="onRefreshtask" | |||
> | |||
<van-cell v-for="(item,index) in totalList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;"> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
</div> | |||
<div v-if="active==2" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;"> | |||
@@ -109,28 +114,28 @@ | |||
:immediate-check="false" | |||
@load="onRefreshtask" | |||
> | |||
<van-cell v-for="(item,index) in doneList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
<van-cell v-for="(item,index) in doneList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;"> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
</div> | |||
<div v-if="active==3" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;"> | |||
@@ -141,27 +146,27 @@ | |||
:immediate-check="false" | |||
@load="onRefreshtask" | |||
> | |||
<van-cell v-for="(item,index) in todoList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
<van-cell v-for="(item,index) in todoList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px; | |||
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;"> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
<template #title> | |||
<div>{{item.rwmc}} <span :style="{'color':chooseColor(item),'background':chooseColor2(item),'display':'inline-block','padding':'4px 2px','line-height':'1','border-radius':'5px'}">{{item.zjdwcsl}}/{{item.zjdsl}}</span></div> | |||
</template> | |||
<template #default> | |||
<van-circle | |||
v-model="item.zjdslz" | |||
:rate="chooseNum(item)" | |||
:stroke-width="100" | |||
:speed="100" | |||
size="70%" | |||
layer-color="#ebedf0" | |||
:text="item.zjdwcsl!=0?(item.zjdwcsl == item.zjdsl?100+'%':( Math.round(((item.zjdwcsl/item.zjdsl)*100)))+'%'):0+'%'" | |||
/> | |||
</template> | |||
<template #label> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="clock" color="#22b7f2" style="margin-right:5px;"/>{{item.jhkssj}}~{{item.jhjssj}}</p> | |||
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
</div> | |||
@@ -177,379 +182,391 @@ | |||
import {Dialog} from "vant"; | |||
import {sysConfig} from "../../api/homesteadSurvey"; | |||
import axios from "axios"; | |||
export default { | |||
name: "homesteadIndex", | |||
components: { | |||
CircleProccess | |||
}, | |||
data() { | |||
return { | |||
currentRate1:0, | |||
currentRate2:0, | |||
currentRate3:0, | |||
active: 1, | |||
show: false, | |||
loading: false, | |||
finished: false, | |||
checked:true, | |||
zjdsl:100, | |||
height:200, | |||
phone:null, | |||
activeKey:0, | |||
currentRate: 0, | |||
deptName:"全部乡镇", | |||
showDropList:false, | |||
total:0, | |||
totalList:[], | |||
xzList:[], | |||
done:0, | |||
doneList:[], | |||
todo:0, | |||
todoList:[], | |||
gradientColor:{ | |||
}, | |||
// 查询参数 | |||
queryParams: { | |||
rwwczt: null, | |||
rwfbzt:"PUBLISHED", | |||
rwzxr:null | |||
}, | |||
nickName:"", | |||
text:0, | |||
isLoadingtask:false, | |||
countqb:1, | |||
countyhc:1, | |||
countwhc:1, | |||
export default { | |||
name: "homesteadIndex", | |||
components: { | |||
CircleProccess | |||
}, | |||
data() { | |||
return { | |||
currentRate1:0, | |||
currentRate2:0, | |||
currentRate3:0, | |||
active: 1, | |||
show: false, | |||
loading: false, | |||
finished: false, | |||
checked:true, | |||
rwmcValue:"", | |||
zjdsl:100, | |||
height:200, | |||
phone:null, | |||
activeKey:0, | |||
currentRate: 0, | |||
deptName:"全部乡镇", | |||
showDropList:false, | |||
total:0, | |||
totalList:[], | |||
xzList:[], | |||
done:0, | |||
doneList:[], | |||
todo:0, | |||
todoList:[], | |||
gradientColor:{ | |||
//当前用户级别 | |||
businessLevel:1, | |||
// 字典列表json | |||
dictTypeList:null, | |||
}; | |||
}, | |||
created(){ | |||
if(this.checked){ | |||
setTimeout(() => { | |||
let userId = this.$store.state.user.userId; | |||
console.info(userId); | |||
this.nickName = this.$store.state.user.nickName; | |||
this.$set(this.queryParams, "rwzxr", userId); | |||
this.$set(this.queryParams, "params", {deptId:100}); | |||
this.getList(); | |||
},1000) | |||
}else{ | |||
}, | |||
// 查询参数 | |||
queryParams: { | |||
rwwczt: null, | |||
rwfbzt:"PUBLISHED", | |||
rwzxr:null | |||
}, | |||
nickName:"", | |||
text:0, | |||
isLoadingtask:false, | |||
countqb:1, | |||
countyhc:1, | |||
countwhc:1, | |||
this.$set(this.queryParams, "rwzxr", null); | |||
//当前用户级别 | |||
businessLevel:1, | |||
// 字典列表json | |||
dictTypeList:null, | |||
}; | |||
}, | |||
created(){ | |||
if(this.checked){ | |||
setTimeout(() => { | |||
let userId = this.$store.state.user.userId; | |||
console.info(userId); | |||
this.nickName = this.$store.state.user.nickName; | |||
this.$set(this.queryParams, "rwzxr", userId); | |||
this.$set(this.queryParams, "params", {deptId:100}); | |||
this.getList(); | |||
} | |||
getTownInfo(100).then(response => { | |||
this.xzList = response.data | |||
let qbxz = {deptId:100,deptName:"全部乡镇"} | |||
this.xzList.unshift(qbxz); | |||
}) | |||
},1000) | |||
}else{ | |||
axios.get('../static/dictyType.json').then(res => { | |||
this.dictTypeList = res.data | |||
}) | |||
this.$set(this.queryParams, "rwzxr", null); | |||
this.getList(); | |||
} | |||
getTownInfo(100).then(response => { | |||
this.xzList = response.data | |||
let qbxz = {deptId:100,deptName:"全部乡镇"} | |||
this.xzList.unshift(qbxz); | |||
}) | |||
}, | |||
mounted(){ | |||
axios.get('../static/dictyType.json').then(res => { | |||
this.dictTypeList = res.data | |||
}) | |||
// 监听屏幕方向 | |||
let self = this; | |||
window.addEventListener( | |||
"onorientationchange" in window ? "orientationchange" : "resize", | |||
function() { | |||
if (window.orientation === 90 || window.orientation === -90) { | |||
// 横屏 | |||
} | |||
}, | |||
false | |||
); | |||
if(this.$cookies.get("url")==null||this.$cookies.get("url")==""){ | |||
this.getBaseUrl() | |||
} | |||
}, | |||
methods: { | |||
getBaseUrl(){ | |||
let params={ | |||
configKey: "system.attachment.url"} | |||
sysConfig(params).then(response => { | |||
this.$cookies.set("url",response.rows[0].configValue) | |||
}) | |||
}, | |||
qiehuan(deptId){ | |||
changeDept(deptId).then(response => { | |||
this.$router.push({name:'homesteadList'}) | |||
}); | |||
}, | |||
chooseNum(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100); | |||
if(a === "NaN"){ | |||
return a = 0 | |||
}else{ | |||
return a = Math.round(a); | |||
}, | |||
mounted(){ | |||
// 监听屏幕方向 | |||
let self = this; | |||
window.addEventListener( | |||
"onorientationchange" in window ? "orientationchange" : "resize", | |||
function() { | |||
if (window.orientation === 90 || window.orientation === -90) { | |||
// 横屏 | |||
} | |||
}, | |||
chooseColor(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100).toFixed() | |||
if(a === "NaN" || a < 50){ | |||
return '#FA5353' | |||
}else if(a < 100){ | |||
return '#22B7F2' | |||
}else{ | |||
return '#85d824' | |||
} | |||
return '#FA5353' | |||
}, | |||
chooseColor2(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100).toFixed() | |||
if(a === "NaN" || a < 50){ | |||
return 'rgba(250,83,83,0.22)' | |||
}else if(a < 100){ | |||
return 'rgba(34,183,242,0.22)' | |||
}else{ | |||
return 'rgba(122,201,67,0.22)' | |||
} | |||
false | |||
); | |||
if(this.$cookies.get("url")==null||this.$cookies.get("url")==""){ | |||
this.getBaseUrl() | |||
} | |||
}, | |||
methods: { | |||
onSearch(){ | |||
// this.finished = false; | |||
// this.loading = false; | |||
// this.totalList = [] | |||
// this.doneList = []; | |||
// this.todoList = []; | |||
this.$set(this.queryParams, "rwmc", this.rwmcValue); | |||
this.checkBadge(); | |||
}, | |||
getBaseUrl(){ | |||
let params={ | |||
configKey: "system.attachment.url"} | |||
sysConfig(params).then(response => { | |||
this.$cookies.set("url",response.rows[0].configValue) | |||
}) | |||
}, | |||
qiehuan(deptId){ | |||
changeDept(deptId).then(response => { | |||
this.$router.push({name:'homesteadList'}) | |||
}); | |||
}, | |||
chooseNum(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100); | |||
if(a === "NaN"){ | |||
return a = 0 | |||
}else{ | |||
return a = Math.round(a); | |||
} | |||
}, | |||
chooseColor(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100).toFixed() | |||
if(a === "NaN" || a < 50){ | |||
return '#FA5353' | |||
}, | |||
onRefreshtask(){ | |||
this.isLoadingtask = false; | |||
let _this = this | |||
if(this.active==1 && this.loading ){ | |||
let params = { | |||
"rwfbzt":"PUBLISHED", | |||
"params":this.queryParams.params, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countyhc+1, | |||
"pageSize":4, | |||
} | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
listTask(params).then((response) => { | |||
if(response.rows.length>0&&this.totalList.length<response.total){ | |||
response.rows.map(function(item) { | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
_this.totalList.push(item) | |||
}) | |||
this.countyhc++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true; | |||
} | |||
}); | |||
}else if(this.active==2 && this.loading){ | |||
let params = { | |||
"rwwczt": "PUBLISHED", | |||
"rwfbzt":"PUBLISHED", | |||
"params":this.queryParams.params, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countwhc+1, | |||
"pageSize":4, | |||
} | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
listTask(params).then((response) => { | |||
if(response.rows.lenght>0&&this.doneList.length<response.total){ | |||
response.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
_this.doneList.push(item) | |||
}) | |||
this.countwhc++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true; | |||
} | |||
}); | |||
}else if(this.active==3 && this.loading){ | |||
let params = { | |||
"rwwczt": "UNFINISHED", | |||
"rwfbzt":"PUBLISHED", | |||
"params":this.queryParams.params, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countqb+1, | |||
"pageSize":4, | |||
} | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
listTask(params).then((response) => { | |||
if(response.rows.length>0&&this.todoList.length<response.total){ | |||
response.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
_this.todoList.push(item); | |||
}) | |||
this.countqb++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true | |||
} | |||
}); | |||
}else if(a < 100){ | |||
return '#22B7F2' | |||
}else{ | |||
return '#85d824' | |||
} | |||
return '#FA5353' | |||
}, | |||
chooseColor2(item){ | |||
let a = ((item.zjdwcsl/item.zjdsl)*100).toFixed() | |||
if(a === "NaN" || a < 50){ | |||
return 'rgba(250,83,83,0.22)' | |||
}else if(a < 100){ | |||
return 'rgba(34,183,242,0.22)' | |||
}else{ | |||
return 'rgba(122,201,67,0.22)' | |||
} | |||
return '#FA5353' | |||
}, | |||
onRefreshtask(){ | |||
this.isLoadingtask = false; | |||
let _this = this | |||
if(this.active==1 && this.loading ){ | |||
let params = { | |||
"rwfbzt":"PUBLISHED", | |||
"params":this.queryParams.params, | |||
"rwmc":this.rwmcValue, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countyhc+1, | |||
"pageSize":4, | |||
} | |||
}, | |||
checkChange(e){ | |||
if(e){ | |||
let userId = this.$store.state.user.userId; | |||
this.$set(this.queryParams, "rwzxr", userId); | |||
this.getList(); | |||
}else{ | |||
this.$set(this.queryParams, "rwzxr", null); | |||
this.getList(); | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
}, | |||
setCookies(item){ | |||
/* if(this.$cookies.get("upload")==null||this.$cookies.get("upload")==0){ | |||
Dialog.confirm({ | |||
title: '提示', | |||
message: '当前未选择批量上传,可能会由于网络原因上传图片缓慢,是否继续?', | |||
}) | |||
.then(() => { | |||
// on confirm | |||
this.$router.push({name:'homesteadList'}) | |||
this.$cookies.set("item",JSON.stringify(item)); | |||
listTask(params).then((response) => { | |||
if(response.rows.length>0&&this.totalList.length<response.total){ | |||
response.rows.map(function(item) { | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
_this.totalList.push(item) | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}else{ | |||
this.$router.push({name:'homesteadList'}) | |||
this.$cookies.set("item",JSON.stringify(item)); | |||
}*/ | |||
let userId = this.$store.state.user.userId; | |||
// let businessLevel = this.$store.getters.businessLevel; | |||
let status = false; | |||
if(item.rwzxrIds != null && item.rwzxrIds !== ""){ | |||
let ids = item.rwzxrIds.split(","); | |||
ids.forEach(function(id){ | |||
if(userId === parseInt(id)){ | |||
status = true; | |||
} | |||
}); | |||
} | |||
if(status){ | |||
localStorage.setItem("surveyItem",JSON.stringify(item)); | |||
this.qiehuan(item.deptId); | |||
}else{ | |||
this.$dialog.alert({ | |||
message: "没有该任务的调查权限!", | |||
}); | |||
} | |||
}, | |||
queryAllxz(){ | |||
if (this.showDropList) { | |||
this.showDropList = false; // div显示会阻挡下边的选择框和输入框,showDropList控制下拉框是否显示 | |||
} else { | |||
this.showDropList = true; | |||
this.countyhc++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true; | |||
} | |||
}); | |||
}else if(this.active==2 && this.loading){ | |||
let params = { | |||
"rwwczt": "PUBLISHED", | |||
"rwfbzt":"PUBLISHED", | |||
"rwmc":this.rwmcValue, | |||
"params":this.queryParams.params, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countwhc+1, | |||
"pageSize":4, | |||
} | |||
}, | |||
xzChange(val){ | |||
this.deptName = val.deptName; | |||
this.showDropList = false; | |||
this.$set(this.queryParams, "deptId", null); | |||
if(val.deptId != 100){ | |||
this.$set(this.queryParams, "parentId", val.deptId); | |||
this.$set(this.queryParams, "params", {deptId:null}); | |||
}else{ | |||
this.$set(this.queryParams, "parentId", null); | |||
this.$set(this.queryParams, "params", {deptId:val.deptId}); | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
this.getList(); | |||
}, | |||
checkBadge(){ | |||
this.finished = false; | |||
this.loading = false; | |||
this.totalList = [] | |||
this.doneList = []; | |||
this.todoList = []; | |||
this.getList(); | |||
}, | |||
getList() { | |||
this.totalList = [] | |||
this.doneList = []; | |||
this.todoList = []; | |||
this.countqb = 1; | |||
this.countyhc = 1; | |||
this.countwhc = 1; | |||
this.finished = false; | |||
this.loading = false; | |||
if(this.active==1) { | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "rwwczt", null); | |||
this.$set(this.queryParams, "pageNum", this.countyhc); | |||
this.$set(this.queryParams, "pageSize", 4); | |||
mobileList(this.queryParams).then(response => { | |||
this.done = response.wcs; | |||
this.todo = response.dcs; | |||
this.total = response.tableDataInfo.total; | |||
this.totalList = response.tableDataInfo.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
}); | |||
}); | |||
}else if(this.active==2) { | |||
this.$set(this.queryParams, "rwwczt", "FINISHED"); | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "pageNum", this.countwhc); | |||
mobileList(this.queryParams).then(response => { | |||
this.total = response.wcs; | |||
this.todo = response.dcs; | |||
this.done = response.tableDataInfo.total; | |||
this.doneList = response.tableDataInfo.rows.map(function(item){ | |||
listTask(params).then((response) => { | |||
if(response.rows.lenght>0&&this.doneList.length<response.total){ | |||
response.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
_this.doneList.push(item) | |||
}) | |||
}); | |||
}else{ | |||
this.$set(this.queryParams, "rwwczt", "UNFINISHED"); | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "pageNum", this.countqb); | |||
mobileList(this.queryParams).then(response => { | |||
this.total = response.wcs; | |||
this.done = response.dcs; | |||
this.todo = response.tableDataInfo.total; | |||
this.todoList = response.tableDataInfo.rows.map(function(item){ | |||
this.countwhc++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true; | |||
} | |||
}); | |||
}else if(this.active==3 && this.loading){ | |||
let params = { | |||
"rwwczt": "UNFINISHED", | |||
"rwfbzt":"PUBLISHED", | |||
"rwmc":this.rwmcValue, | |||
"params":this.queryParams.params, | |||
"parentId":this.queryParams.parentId, | |||
"pageNum": this.countqb+1, | |||
"pageSize":4, | |||
} | |||
if(this.queryParams.rwzxr != null){ | |||
params.rwzxr = this.queryParams.rwzxr; | |||
} | |||
listTask(params).then((response) => { | |||
if(response.rows.length>0&&this.todoList.length<response.total){ | |||
response.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
_this.todoList.push(item); | |||
}) | |||
this.countqb++ | |||
this.loading = false; | |||
}else{ | |||
this.finished = true | |||
} | |||
}); | |||
} | |||
}, | |||
checkChange(e){ | |||
if(e){ | |||
let userId = this.$store.state.user.userId; | |||
this.$set(this.queryParams, "rwzxr", userId); | |||
this.getList(); | |||
}else{ | |||
this.$set(this.queryParams, "rwzxr", null); | |||
this.getList(); | |||
} | |||
}, | |||
setCookies(item){ | |||
/* if(this.$cookies.get("upload")==null||this.$cookies.get("upload")==0){ | |||
Dialog.confirm({ | |||
title: '提示', | |||
message: '当前未选择批量上传,可能会由于网络原因上传图片缓慢,是否继续?', | |||
}) | |||
.then(() => { | |||
// on confirm | |||
this.$router.push({name:'homesteadList'}) | |||
this.$cookies.set("item",JSON.stringify(item)); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}else{ | |||
this.$router.push({name:'homesteadList'}) | |||
this.$cookies.set("item",JSON.stringify(item)); | |||
}*/ | |||
let userId = this.$store.state.user.userId; | |||
// let businessLevel = this.$store.getters.businessLevel; | |||
let status = false; | |||
if(item.rwzxrIds != null && item.rwzxrIds !== ""){ | |||
let ids = item.rwzxrIds.split(","); | |||
ids.forEach(function(id){ | |||
if(userId === parseInt(id)){ | |||
status = true; | |||
} | |||
}); | |||
} | |||
if(status){ | |||
localStorage.setItem("surveyItem",JSON.stringify(item)); | |||
this.qiehuan(item.deptId); | |||
}else{ | |||
this.$dialog.alert({ | |||
message: "没有该任务的调查权限!", | |||
}); | |||
} | |||
}, | |||
queryAllxz(){ | |||
if (this.showDropList) { | |||
this.showDropList = false; // div显示会阻挡下边的选择框和输入框,showDropList控制下拉框是否显示 | |||
} else { | |||
this.showDropList = true; | |||
} | |||
}, | |||
xzChange(val){ | |||
this.deptName = val.deptName; | |||
this.showDropList = false; | |||
this.$set(this.queryParams, "deptId", null); | |||
if(val.deptId != 100){ | |||
this.$set(this.queryParams, "parentId", val.deptId); | |||
this.$set(this.queryParams, "params", {deptId:null}); | |||
}else{ | |||
this.$set(this.queryParams, "parentId", null); | |||
this.$set(this.queryParams, "params", {deptId:val.deptId}); | |||
} | |||
this.getList(); | |||
}, | |||
checkBadge(){ | |||
// this.finished = false; | |||
// this.loading = false; | |||
// this.totalList = [] | |||
// this.doneList = []; | |||
// this.todoList = []; | |||
this.getList(); | |||
}, | |||
getList() { | |||
this.totalList = [] | |||
this.doneList = []; | |||
this.todoList = []; | |||
this.countqb = 1; | |||
this.countyhc = 1; | |||
this.countwhc = 1; | |||
this.finished = false; | |||
this.loading = false; | |||
if(this.active==1) { | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "rwwczt", null); | |||
this.$set(this.queryParams, "pageNum", this.countyhc); | |||
this.$set(this.queryParams, "pageSize", 4); | |||
mobileList(this.queryParams).then(response => { | |||
this.done = response.wcs; | |||
this.todo = response.dcs; | |||
this.total = response.tableDataInfo.total; | |||
this.totalList = response.tableDataInfo.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
}); | |||
} | |||
}); | |||
}else if(this.active==2) { | |||
this.$set(this.queryParams, "rwwczt", "FINISHED"); | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "pageNum", this.countwhc); | |||
mobileList(this.queryParams).then(response => { | |||
this.total = response.wcs; | |||
this.todo = response.dcs; | |||
this.done = response.tableDataInfo.total; | |||
this.doneList = response.tableDataInfo.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
}) | |||
}); | |||
}else{ | |||
this.$set(this.queryParams, "rwwczt", "UNFINISHED"); | |||
this.$set(this.queryParams, "rwfbzt", "PUBLISHED"); | |||
this.$set(this.queryParams, "pageNum", this.countqb); | |||
mobileList(this.queryParams).then(response => { | |||
this.total = response.wcs; | |||
this.done = response.dcs; | |||
this.todo = response.tableDataInfo.total; | |||
this.todoList = response.tableDataInfo.rows.map(function(item){ | |||
if(item.zjdwcsl === 0){ | |||
item.zjdslz = 0; | |||
}else{ | |||
item.zjdslz = 100; | |||
} | |||
return item; | |||
}) | |||
}); | |||
} | |||
}, | |||
gotoLink(){ | |||
this.$router.push('/homesteadSurvey/settle') | |||
}, | |||
}, | |||
} | |||
gotoLink(){ | |||
this.$router.push('/homesteadSurvey/settle') | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped> | |||
@@ -67,18 +67,40 @@ | |||
:rules="[{ required: true }]" | |||
required | |||
/> | |||
<field-select | |||
<!-- <field-select--> | |||
<!-- v-if="!showHzxx"--> | |||
<!-- v-model="form.nhdm"--> | |||
<!-- label="农户代码"--> | |||
<!-- value-key="xm"--> | |||
<!-- placeholder="选择农户代码"--> | |||
<!-- :columns = "nhdmOptions"--> | |||
<!-- @confirm="onnhdmChanged"--> | |||
<!-- :on-remote-response="'data'"--> | |||
<!-- :rules="[{ required: true }]"--> | |||
<!-- required--> | |||
<!-- />--> | |||
<van-field | |||
v-if="!showHzxx" | |||
v-model="form.nhdm" | |||
label="农户代码" | |||
value-key="xm" | |||
placeholder="选择农户代码" | |||
:columns = "nhdmOptions" | |||
@confirm="onnhdmChanged" | |||
:on-remote-response="'data'" | |||
clickable | |||
:rules="[{ required: true }]" | |||
required | |||
label="农户代码" | |||
placeholder="选择农户代码" | |||
v-model="form.nhdm" | |||
@click="shownhdm = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="shownhdm" position="bottom"> | |||
<van-search v-model="nhdmSearch" placeholder="请输入搜索关键词" @input="onSearch"/> | |||
<van-picker | |||
show-toolbar | |||
:columns="newList" | |||
value-key="xm" | |||
@confirm="onnhdmChanged" | |||
@cancel="shownhdm = false" | |||
/> | |||
</van-popup> | |||
<van-field | |||
input-align="right" | |||
v-model="form.xm" | |||
@@ -316,7 +338,11 @@ export default { | |||
permission:false, | |||
yhzgxOperate:false, | |||
nhdmOptions:null, | |||
nhdmSearch:null, | |||
newList:[], | |||
newListTwo:[], | |||
showHzxx:false, | |||
shownhdm:false, | |||
// 使用权人列表 | |||
syqrlist:[ | |||
{ | |||
@@ -375,8 +401,23 @@ export default { | |||
item.xm = item.xm +"-"+ item.nhdm; | |||
return {xm:item.xm,nhdm:item.nhdm} | |||
}); | |||
this.newList = this.nhdmOptions; | |||
this.newListTwo = this.nhdmOptions; | |||
}); | |||
}, | |||
onSearch(val) { | |||
if(this.nhdmOptions.length>0){ | |||
this.newList = [] | |||
for(let j = 0 ;j<this.nhdmOptions.length;j++){ | |||
if(this.nhdmOptions[j].xm.indexOf(val)>-1){ | |||
this.newList.push(this.nhdmOptions[j]); | |||
} | |||
} | |||
} | |||
if(val==""){ | |||
this.newList = this.newListTwo; | |||
} | |||
}, | |||
submitzjd(){ | |||
this.$refs.form.validate().then(() => { | |||
if(this.form.id == null){ | |||
@@ -138,6 +138,7 @@ | |||
/> | |||
<van-field | |||
readonly | |||
input-align="right" | |||
v-model="form.shyqrdbxm" | |||
name="代表姓名" | |||
@@ -42,6 +42,7 @@ | |||
<div @click="handleDelete(item,index)" style="background-color: #ee0a24;height: 100%">删除</div> | |||
<router-link :to="{name:'sunVillageInfoInformationEdit',query:{id:item.id}}" style="background-color: #07c160">修改</router-link> | |||
<div @click="openLoader(item.id,0)" style="background-color: rgba(98,173,102,0.2);color: #62AD66;">附件</div> | |||
<router-link :to="{name:'sunVillageInfoInformationFunPlan',query:{id:item.id}}" style="background-color: #4169E1;">结款</router-link> | |||
</template> | |||
</van-swipe-cell> | |||
</van-list> | |||
@@ -0,0 +1,388 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
结款计划 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
<div class="add_btn" @click="goAdd"></div> | |||
</div> | |||
<div class="search_info"> | |||
<!-- <div class="search_block"> | |||
<i class="icon"></i> | |||
<input type="text" class="ipt" placeholder="搜索" v-model="queryParams.orderNum" @input="getSearchList"> | |||
</div>--> | |||
<div class="total">共{{listLength}}个结款计划</div> | |||
</div> | |||
<div class="list_main"> | |||
<van-list | |||
v-model="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
@load="getList" | |||
> | |||
<!--1--> | |||
<van-swipe-cell right-width="150" class="item" v-for="(item,index) in applicationList" :key="index"> | |||
<div class="item_box"> | |||
<div class="head_block"> | |||
<i class="icon"></i> | |||
<div class="title">结款序号{{item.orderNum}}</div> | |||
</div> | |||
<div class="order_block"> | |||
<div class="order">{{item.collectionPay}}</div> | |||
<div :class="{'describe':true,'suspend':item.planStatus == '待结款','normal':item.planStatus == '已结款','undo':item.planStatus == '已作废'}">{{item.planStatus}}<i class="icon"></i></div> | |||
</div> | |||
<div class="function_block"> | |||
<div class="value">结款金额<span class="amount">¥{{item.settlementAmount}}</span></div> | |||
<div class="startStop_time"> | |||
<div class="time">结款日期{{item.settlementDate}}</div> | |||
</div> | |||
</div> | |||
</div> | |||
<template #right> | |||
<div @click="handleDelete(item,index)" style="background-color: #ee0a24;height: 100%" v-if="item.params.planStatus !=='2'">删除</div> | |||
<router-link :to="{name:'sunVillageInfoInformationFunPlanEdit',query:{id:item.id}}" style="background-color: #07c160" v-if="item.params.planStatus !=='2'">修改</router-link> | |||
</template> | |||
</van-swipe-cell> | |||
</van-list> | |||
</div> | |||
</div> | |||
</template> | |||
<script> | |||
import { listPlan , delPlan } from "@/api/sunVillage_info/fixedAssets"; | |||
import request from '@/utils/request' | |||
export default { | |||
name: "informationFunPlan", | |||
data() { | |||
return { | |||
applicationList:[], | |||
applicationListSecond:[], | |||
assetStatusOptions:[], | |||
auditStatus:[], | |||
loading: false, | |||
finished: false, | |||
show: false, | |||
fileList:[], | |||
listLength:'0', | |||
searchInput:'', | |||
contractionId:'', | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
orderNum:'', | |||
contractionId:'', | |||
}, | |||
uploadFiles1:[], | |||
projectId:'', | |||
projectIndex:'' | |||
}; | |||
}, | |||
created() { | |||
this.houseGetDicts("plan_status").then((response) => { | |||
this.planStatusOptions = response.data; | |||
}); | |||
this.houseGetDicts("collection_pay").then((response) => { | |||
this.collectionPayOptions = response.data; | |||
}); | |||
this.contractionId = this.$route.query.id; | |||
}, | |||
methods: { | |||
getList(){ | |||
setTimeout(() => { | |||
this.queryParams.contractionId =this.contractionId; | |||
listPlan(this.queryParams).then(response => { | |||
this.listLength = response.total; | |||
for (var i = 0; i < response.rows.length; i++) { | |||
response.rows[i].planStatus = this.selectDictLabel(this.planStatusOptions, response.rows[i].planStatus); | |||
response.rows[i].collectionPay = this.selectDictLabel(this.collectionPayOptions, response.rows[i].collectionPay); | |||
response.rows[i].totalAmount = Number(response.rows[i].totalAmount ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { return $1 + ","; }).replace(/\.$/, "") | |||
this.applicationList.push(response.rows[i]); | |||
// this.applicationListSecond.push(response.rows[i]); | |||
} | |||
if(this.applicationList.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryParams.pageNum += 1 ; | |||
} | |||
}); | |||
}, 1000); | |||
}, | |||
getSearchList(){ | |||
this.applicationList = []; | |||
this.queryParams.pageNum = 1; | |||
this.getList(); | |||
}, | |||
/** 删除按钮操作 */ | |||
handleDelete(row,index) { | |||
const ids = row.id || this.ids; | |||
this.$dialog.alert( | |||
{ | |||
message:'是否确认删除结款计划?', | |||
title:"警告", | |||
showCancelButton:true, | |||
confirmButtonText: "确定", | |||
cancelButtonText: "取消", | |||
} | |||
) | |||
.then(function () { | |||
return delPlan(ids); | |||
}) | |||
.then(() => { | |||
this.applicationList.splice(index, 1); | |||
this.$notify({ type: 'success', message: '删除成功' }); | |||
}); | |||
}, | |||
goAdd() { | |||
this.$router.push({ path: '/sunVillage_info/informationFunPlanAdd', query: { contractionId: this.contractionId } }); | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.search_info{ | |||
padding:20px 23px; | |||
display: flex; | |||
.search_block{ | |||
height: 59px; | |||
width: 535px; | |||
border-radius: 59px; | |||
background: #fff; | |||
display: flex; | |||
border:2px solid #3494ff; | |||
padding-right: 35px; | |||
align-items: center; | |||
.icon{ | |||
width: 30px; | |||
height: 30px; | |||
background: url('../../assets/images/sunVillage_info/fixedAssets_icon_1.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
margin:0 8px 0 26px; | |||
} | |||
.ipt{ | |||
flex: 1; | |||
font-size: 26px; | |||
background: none; | |||
border:0 none; | |||
line-height: 59px; | |||
} | |||
} | |||
.total{ | |||
flex: 1; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
font-size: 26px; | |||
color: #858585; | |||
} | |||
} | |||
.list_main{ | |||
padding:0 22px; | |||
.item{ | |||
height: 207px; | |||
border-radius: 30px; | |||
background: #fff; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
margin-bottom: 20px; | |||
.item_box{ | |||
padding:25px 32px; | |||
} | |||
.head_block{ | |||
height: 56px; | |||
display: flex; | |||
align-items: center; | |||
width: 100%; | |||
.icon{ | |||
width: 34px; | |||
height: 30px; | |||
background: url('../../assets/images/sunVillage_info/fixedAssets_icon_5.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
margin-right: 12px; | |||
} | |||
.title{ | |||
flex:1; | |||
font-size: 32px; | |||
color: #252525; | |||
overflow: hidden; | |||
text-overflow: ellipsis; | |||
white-space: nowrap; | |||
padding-right: 20px; | |||
} | |||
} | |||
.order_block{ | |||
height: 50px; | |||
display: flex; | |||
align-items: center; | |||
width: 100%; | |||
.order{ | |||
flex: 1; | |||
font-size: 26px; | |||
color: #252525; | |||
} | |||
.describe{ | |||
font-size: 26px; | |||
display: flex; | |||
align-items: center; | |||
&.suspend{ | |||
color: #f69600; | |||
.icon{ | |||
width: 27px; | |||
height: 26px; | |||
background: url('../../assets/images/sunVillage_info/information_icon_1.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
margin-left: 15px; | |||
} | |||
} | |||
&.normal{ | |||
color: #69c100; | |||
.icon{ | |||
width: 32px; | |||
height: 26px; | |||
background: url('../../assets/images/sunVillage_info/information_icon_2.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
margin-left: 15px; | |||
} | |||
} | |||
&.undo{ | |||
color: #858585; | |||
.icon{ | |||
width: 27px; | |||
height: 26px; | |||
background: url('../../assets/images/sunVillage_info/information_icon_3.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
margin-left: 15px; | |||
} | |||
} | |||
} | |||
} | |||
.function_block{ | |||
height: 50px; | |||
display: flex; | |||
align-items: center; | |||
width: 100%; | |||
.value{ | |||
flex: 1; | |||
font-size: 24px; | |||
color: #252525; | |||
.amount{ | |||
color: #eb1616; | |||
} | |||
} | |||
.startStop_time{ | |||
display: flex; | |||
align-items: center; | |||
.time{ | |||
display: flex; | |||
align-items: center; | |||
font-size: 24px; | |||
color: #002022; | |||
margin-left: 25px; | |||
.unim{ | |||
width: 32px; | |||
height: 32px; | |||
font-size: 22px; | |||
color: #fff; | |||
text-align: center; | |||
line-height: 32px; | |||
border-radius: 6px; | |||
margin-right: 8px; | |||
&.start{background: #3e7df2;} | |||
&.stop{background: #eb1616;} | |||
} | |||
} | |||
} | |||
} | |||
// <div class="function_block"> | |||
// <div class="value">合同金额<span class="amount">¥199.00</span></div> | |||
// <div class="startStop_time"> | |||
// <div class="time"><div class="unim">起</div>2022.05.04</div> | |||
// <div class="time"><div class="unim">起</div>2022.05.04</div> | |||
// </div> | |||
// </div> | |||
} | |||
} | |||
.bottom_tips{ | |||
font-size: 24px; | |||
color: #a7a6a6; | |||
text-align: center; | |||
margin-top: 32px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_8.png') center center no-repeat; | |||
background-size: 260px 2px; | |||
.xs{ | |||
padding:0 8px; | |||
background: #e9e9e9; | |||
} | |||
} | |||
/deep/ .van-swipe-cell__right{ | |||
display: flex; | |||
align-items: center; | |||
width: 150PX; | |||
margin-left: 5PX; | |||
a,div{ | |||
margin: 0; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
color: #ffffff; | |||
font-size: 14PX; | |||
height: 100%; | |||
flex: 1; | |||
} | |||
} | |||
} | |||
</style> |
@@ -0,0 +1,254 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
新增结款计划 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<van-form @submit="onSubmit"> | |||
<div class="list_main"> | |||
<div class="titBox"> | |||
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/> | |||
<p class="tit">结款计划</p> | |||
</div> | |||
<!-- <van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />--> | |||
<van-field v-model="form.code" label="合同编码" placeholder="合同编码" input-align="right" disabled /> | |||
<van-field v-model="form.name" label="合同名称" placeholder="合同名称" input-align="right" :border="false" disabled /> | |||
<van-field v-model="form.secondParty" label="乙方" placeholder="乙方" input-align="right" :border="false" disabled /> | |||
<van-field v-model="collectionPay" @click="showCollectionPay = false" label="收付款" placeholder="收付款" input-align="right" :border="false" disabled/> | |||
<van-popup v-model="showCollectionPay" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="collectionPayOptions" | |||
@confirm="onConfirmCollectionPay" | |||
@cancel="showCollectionPay = false"/> | |||
</van-popup> | |||
<van-field v-model="form.orderNum" label="结款序号" placeholder="结款序号" input-align="right" type="digit" :border="false" /> | |||
<van-field v-model="form.settlementDate" clickable label="结款日期" placeholder="请选择" @click="showSettlementDate = true" input-align="right" right-icon="arrow-down" label-width="auto" required :border="false"/> | |||
<van-popup v-model="showSettlementDate" position="bottom"> | |||
<van-datetime-picker v-model="settlementDate" type="date" title="选择年月日" @confirm="onConfirmSettlementDate" @cancel="showSettlementDate = false"/> | |||
</van-popup> | |||
<van-field v-model="form.settlementAmount" label="结款金额" type="number" required placeholder="结款金额" input-align="right" :border="false" /> | |||
<van-field v-model="planStatus" @click="showPlanStatus = false" label="结款状态" input-align="right" :border="false" disabled /> | |||
<van-popup v-model="showPlanStatus" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="planStatusOptions" | |||
@confirm="onConfirmPlanStatus" | |||
@cancel="showPlanStatus = false" | |||
disabled/> | |||
</van-popup> | |||
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | |||
</div> | |||
<div style="margin: 16px auto;width: 50%;"> | |||
<van-button round block type="primary" native-type="submit"> | |||
保存 | |||
</van-button> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import {addPlan, getInfo} from "@/api/sunVillage_info/fixedAssets"; | |||
export default { | |||
name: "informationFunPlanAdd", | |||
data() { | |||
return { | |||
assetStatusOptions:[], | |||
auditStatus:[], | |||
loading: false, | |||
finished: false, | |||
listLength:'0', | |||
searchInput:'', | |||
contractionId:'', | |||
form:{ | |||
contractionId:'', | |||
code:'', | |||
name:'', | |||
secondParty:'', | |||
collectionPay:'', | |||
planStatus:'1', | |||
orderNum:'', | |||
settlementDate:'', | |||
settlementAmount:'', | |||
remark:'', | |||
}, | |||
queryParams:{ | |||
/* pageNum:1, | |||
pageSize:10, | |||
orderByColumn:'createTime', | |||
isAsc:'desc', | |||
name:'',*/ | |||
contractionId:'', | |||
}, | |||
//收款日期 | |||
settlementDate:new Date(), | |||
showSettlementDate:false, | |||
//结款状态 | |||
planStatus:'待付款', | |||
showPlanStatus:false, | |||
planStatusOptions:[], | |||
//收付款 | |||
collectionPay:'收款', | |||
showCollectionPay:false, | |||
collectionPayOptions:[], | |||
// rules: { | |||
// settlementAmount: [ | |||
// { required: true, message: '请输入结款金额' }, | |||
// ] | |||
// }, | |||
}; | |||
}, | |||
created() { | |||
this.houseGetDicts("plan_status").then((response) => { | |||
for(var i = 0 ; i < response.data.length ; i++){ | |||
this.planStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue}); | |||
} | |||
}); | |||
this.houseGetDicts("collection_pay").then((response) => { | |||
for(var i = 0 ; i < response.data.length ; i++){ | |||
this.collectionPayOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue}); | |||
} | |||
}); | |||
/* this.houseGetDicts("plan_status").then((response) => { | |||
this.planStatusOptions = response.data; | |||
}); | |||
this.houseGetDicts("collection_pay").then((response) => { | |||
this.collectionPayOptions = response.data; | |||
});*/ | |||
this.getDetail(this.$route.query.contractionId) | |||
this.contractionId = this.$route.query.contractionId; | |||
}, | |||
methods: { | |||
getDetail(id){ | |||
getInfo(id).then(response => { | |||
this.form.contractionId = response.data.id; | |||
this.form.code = response.data.code; | |||
this.form.name = response.data.name; | |||
this.form.secondParty = response.data.secondParty; | |||
this.form.planStatus = '1'; | |||
this.form.collectionPay = response.data.collectionPay; | |||
}); | |||
}, | |||
onConfirmPlanStatus(data){ | |||
this.planStatus = data.text; | |||
this.form.planStatus = data.value; | |||
this.showPlanStatus = false; | |||
}, | |||
onConfirmCollectionPay(data){ | |||
this.collectionPay = data.text; | |||
this.form.collectionPay = data.value; | |||
this.showCollectionPay = false; | |||
}, | |||
onConfirmSettlementDate(data){ | |||
this.form.settlementDate = this.format(data,'yyyy-MM-dd'); | |||
this.settlementDate = data; | |||
this.showSettlementDate = false; | |||
}, | |||
onSubmit(){ | |||
this.form.contractionId = this.contractionId; | |||
addPlan(this.form).then((response) => { | |||
if (response.code == 200){ | |||
this.$notify({ type: 'success', message: '新增成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
} | |||
}); | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-button--primary{ | |||
background: url("../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||
background-size: 100% 100%; | |||
border: none; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.list_main{ | |||
padding:25px; | |||
background: #ffffff; | |||
width: 94%; | |||
margin: 25px auto 0; | |||
border-radius: 15PX; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
} | |||
.titBox{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.tit{ | |||
font-size: 36px; | |||
font-weight: bold; | |||
} | |||
/deep/ .van-cell{ | |||
padding-left: 0!important; | |||
padding-right: 0!important; | |||
padding-bottom: 0!important; | |||
} | |||
/deep/ .van-field__label{ | |||
padding-left: 10PX; | |||
width: 8.2em; | |||
} | |||
/deep/ .van-cell--required::before{ | |||
left: 0; | |||
} | |||
/deep/ .van-field--disabled .van-field__label { | |||
color: #646566; | |||
} | |||
} | |||
</style> |
@@ -0,0 +1,247 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
修改结款计划 | |||
<div class="return_btn" @click="onClickLeft"></div> | |||
</div> | |||
<van-form @submit="onSubmit"> | |||
<div class="list_main"> | |||
<div class="titBox"> | |||
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/> | |||
<p class="tit">结款计划</p> | |||
</div> | |||
<!-- <van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />--> | |||
<van-field v-model="form.code" label="合同编码" placeholder="合同编码" input-align="right" disabled /> | |||
<van-field v-model="form.name" label="合同名称" placeholder="合同名称" input-align="right" :border="false" disabled /> | |||
<van-field v-model="form.secondParty" label="乙方" placeholder="乙方" input-align="right" :border="false" disabled /> | |||
<van-field v-model="collectionPay" @click="showCollectionPay = false" label="收付款" placeholder="收付款" input-align="right" :border="false" disabled /> | |||
<van-popup v-model="showCollectionPay" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="collectionPayOptions" | |||
@confirm="onConfirmCollectionPay" | |||
@cancel="showCollectionPay = false"/> | |||
</van-popup> | |||
<van-field v-model="form.orderNum" label="结款序号" placeholder="结款序号" input-align="right" :border="false" /> | |||
<van-field v-model="form.settlementDate" clickable label="结款日期" placeholder="请选择" @click="showSettlementDate = true" input-align="right" right-icon="arrow-down" label-width="auto" required :border="false"/> | |||
<van-popup v-model="showSettlementDate" position="bottom"> | |||
<van-datetime-picker v-model="settlementDate" type="date" title="选择年月日" @confirm="onConfirmSettlementDate" @cancel="showSettlementDate = false"/> | |||
</van-popup> | |||
<van-field v-model="form.settlementAmount" label="结款金额" placeholder="结款金额" required input-align="right" :border="false" /> | |||
<van-field v-model="planStatus" @click="showPlanStatus = false" label="结款状态" input-align="right" :border="false" disabled /> | |||
<van-popup v-model="showPlanStatus" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="planStatusOptions" | |||
@confirm="onConfirmPlanStatus" | |||
@cancel="showPlanStatus = false"/> | |||
</van-popup> | |||
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | |||
</div> | |||
<div style="margin: 16px auto;width: 50%;"> | |||
<van-button round block type="primary" native-type="submit"> | |||
保存 | |||
</van-button> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import {updatePlan, getPlan} from "@/api/sunVillage_info/fixedAssets"; | |||
export default { | |||
name: "informationFunPlanEdit", | |||
data() { | |||
return { | |||
assetStatusOptions:[], | |||
auditStatus:[], | |||
loading: false, | |||
finished: false, | |||
listLength:'0', | |||
searchInput:'', | |||
contractionId:'', | |||
form:{ | |||
contractionId:'', | |||
code:'', | |||
name:'', | |||
secondParty:'', | |||
collectionPay:'', | |||
planStatus:'1', | |||
orderNum:'', | |||
settlementDate:'', | |||
settlementAmount:'', | |||
remark:'', | |||
}, | |||
queryParams:{ | |||
/* pageNum:1, | |||
pageSize:10, | |||
orderByColumn:'createTime', | |||
isAsc:'desc', | |||
name:'',*/ | |||
contractionId:'', | |||
}, | |||
//收款日期 | |||
settlementDate:new Date(), | |||
showSettlementDate:false, | |||
//结款状态 | |||
planStatus:'待付款', | |||
showPlanStatus:false, | |||
planStatusOptions:[], | |||
//收付款 | |||
collectionPay:'收款', | |||
showCollectionPay:false, | |||
collectionPayOptions:[], | |||
// rules: { | |||
// settlementAmount: [ | |||
// { required: true, message: '请输入结款金额' }, | |||
// ] | |||
// }, | |||
}; | |||
}, | |||
created() { | |||
this.houseGetDicts("plan_status").then((response) => { | |||
for(var i = 0 ; i < response.data.length ; i++){ | |||
this.planStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue}); | |||
} | |||
}); | |||
this.houseGetDicts("collection_pay").then((response) => { | |||
for(var i = 0 ; i < response.data.length ; i++){ | |||
this.collectionPayOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue}); | |||
} | |||
}); | |||
/* this.houseGetDicts("plan_status").then((response) => { | |||
this.planStatusOptions = response.data; | |||
}); | |||
this.houseGetDicts("collection_pay").then((response) => { | |||
this.collectionPayOptions = response.data; | |||
});*/ | |||
this.getDetail(this.$route.query.id) | |||
this.contractionId = this.$route.query.id; | |||
}, | |||
methods: { | |||
getDetail(id){ | |||
getPlan(id).then(response => { | |||
this.form = response.data | |||
}); | |||
}, | |||
onConfirmPlanStatus(data){ | |||
this.planStatus = data.text; | |||
this.form.planStatus = data.value; | |||
this.showPlanStatus = false; | |||
}, | |||
onConfirmCollectionPay(data){ | |||
this.collectionPay = data.text; | |||
this.form.collectionPay = data.value; | |||
this.showCollectionPay = false; | |||
}, | |||
onConfirmSettlementDate(data){ | |||
this.form.settlementDate = this.format(data,'yyyy-MM-dd'); | |||
this.settlementDate = data; | |||
this.showSettlementDate = false; | |||
}, | |||
onSubmit(){ | |||
updatePlan(this.form).then((response) => { | |||
if (response.code == 200){ | |||
this.$notify({ type: 'success', message: '修改成功' }); | |||
setTimeout(function(){ | |||
history.back(-1); | |||
},2000) | |||
} | |||
}); | |||
} | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-button--primary{ | |||
background: url("../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||
background-size: 100% 100%; | |||
border: none; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.list_main{ | |||
padding:25px; | |||
background: #ffffff; | |||
width: 94%; | |||
margin: 25px auto 0; | |||
border-radius: 15PX; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
} | |||
.titBox{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.tit{ | |||
font-size: 36px; | |||
font-weight: bold; | |||
} | |||
/deep/ .van-cell{ | |||
padding-left: 0!important; | |||
padding-right: 0!important; | |||
padding-bottom: 0!important; | |||
} | |||
/deep/ .van-field__label{ | |||
padding-left: 10PX; | |||
width: 8.2em; | |||
} | |||
/deep/ .van-cell--required::before{ | |||
left: 0; | |||
} | |||
/deep/ .van-field--disabled .van-field__label { | |||
color: #646566; | |||
} | |||
} | |||
</style> |