庞东旭 1 vuosi sitten
vanhempi
commit
10a310b728
9 muutettua tiedostoa jossa 1437 lisäystä ja 421 poistoa
  1. +40
    -0
      src/api/sunVillage_info/fixedAssets.js
  2. +27
    -0
      src/router/index.js
  3. +430
    -413
      src/views/homesteadSurvey/index.vue
  4. +49
    -8
      src/views/homesteadSurvey/nhcyAdd.vue
  5. +1
    -0
      src/views/homesteadSurvey/shyqrAdd.vue
  6. +1
    -0
      src/views/sunVillage_info/information.vue
  7. +388
    -0
      src/views/sunVillage_info/informationFunPlan.vue
  8. +254
    -0
      src/views/sunVillage_info/informationFunPlanAdd.vue
  9. +247
    -0
      src/views/sunVillage_info/informationFunPlanEdit.vue

+ 40
- 0
src/api/sunVillage_info/fixedAssets.js Näytä tiedosto

@@ -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({


+ 27
- 0
src/router/index.js Näytä tiedosto

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


+ 430
- 413
src/views/homesteadSurvey/index.vue Näytä tiedosto

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


+ 49
- 8
src/views/homesteadSurvey/nhcyAdd.vue Näytä tiedosto

@@ -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){


+ 1
- 0
src/views/homesteadSurvey/shyqrAdd.vue Näytä tiedosto

@@ -138,6 +138,7 @@
/>

<van-field
readonly
input-align="right"
v-model="form.shyqrdbxm"
name="代表姓名"


+ 1
- 0
src/views/sunVillage_info/information.vue Näytä tiedosto

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


+ 388
- 0
src/views/sunVillage_info/informationFunPlan.vue Näytä tiedosto

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

+ 254
- 0
src/views/sunVillage_info/informationFunPlanAdd.vue Näytä tiedosto

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

+ 247
- 0
src/views/sunVillage_info/informationFunPlanEdit.vue Näytä tiedosto

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

Ladataan…
Peruuta
Tallenna