@@ -242,19 +242,24 @@ export default { | |||
}); | |||
getDeptList().then(response => { | |||
response.data.map(item => { | |||
getDeptList(item.deptId).then(res => { | |||
this.deptListOption.push({text: item.deptName,children: [],id:item.deptId}) | |||
}); | |||
console.log(this.deptListOption) | |||
if(response.data.length > 0){ | |||
getDeptList(response.data[0].deptId).then(res => { | |||
let list = [] | |||
res.data.map(i =>{ | |||
list.push({text:i.deptName,children:[],id:i.deptId}) | |||
}) | |||
if(list.length==0){ | |||
list.push({text:item.deptName,id:item.deptId}) | |||
list.push({text:response.data[0].deptName,id:response.data[0].deptId}) | |||
}else{ | |||
this.deptListOption.push({ text: item.deptName,children: list}); | |||
this.$set(this.deptListOption[0], "children", list); | |||
} | |||
}); | |||
}); | |||
} | |||
}); | |||
}, | |||
methods:{ | |||
@@ -317,7 +322,18 @@ export default { | |||
}); | |||
}, | |||
clickNav(index){ | |||
console.log(index) | |||
getDeptList(this.deptListOption[index].id).then(res => { | |||
let list = [] | |||
res.data.map(i =>{ | |||
list.push({text:i.deptName,children:[],id:i.deptId}) | |||
}) | |||
if(list.length==0){ | |||
list.push({text:this.deptListOption[index].deptName,id:this.deptListOption[index].id}) | |||
}else{ | |||
this.$set(this.deptListOption[index], "children", list); | |||
} | |||
}); | |||
}, | |||
clickItem(data){ | |||
console.log(data) | |||
@@ -110,17 +110,17 @@ | |||
}, | |||
created() { | |||
this.getUserInfo(); | |||
this.getList(); | |||
}, | |||
methods: { | |||
getUserInfo() { | |||
getInfo().then(response => { | |||
this.nickName = response.user.nickName; | |||
this.phone = response.user.phonenumber; | |||
this.getList(response.user.userId); | |||
}); | |||
}, | |||
getList(){ | |||
listSurveyTask().then(response => { | |||
getList(userId){ | |||
listSurveyTask({userId: userId}).then(response => { | |||
this.surveyTask = response.data; | |||
}); | |||
}, | |||
@@ -61,7 +61,7 @@ | |||
<div class="opera_btn view" v-if="surveyStatus === '2'" @click="handleViewRemark(item.id)"> | |||
<p>挂起原因</p> | |||
</div> | |||
<div class="opera_btn delete" v-if="taskStatus === '2'" @click="deleteContractor(item.id, index)"> | |||
<div class="opera_btn delete" v-if="taskStatus === '2' && surveyStatus !== '3'" @click="deleteContractor(item.id, index)"> | |||
<p>删除</p> | |||
</div> | |||
</div> | |||
@@ -204,7 +204,7 @@ | |||
} | |||
.tb{ | |||
font-size: 12px; | |||
font-size: .35rem; | |||
color: #ff8900; | |||
background: #daf6e7; | |||
border: 1px solid #d7be6e; | |||
@@ -19,7 +19,7 @@ | |||
> | |||
<van-cell v-for="(item,index) in noticeList" icon="play" :key="index" :title="item.projectName" :to="{name:'noticeDetail', query: {id:item.id}}"> | |||
<template #label> | |||
项目编号:{{item.projectCode}} <p style="float: right;">{{item.contractDate}}</p> | |||
项目编号:{{item.projectCode}} <p style="float: right;">{{item.dealTime.substr(0,10)}}</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
@@ -140,53 +140,73 @@ export default { | |||
getList(){ | |||
this.loading = true; | |||
noticeList(this.queryParams).then(response => { | |||
this.noticeList = response.rows; | |||
response.rows.forEach(res=>{ | |||
this.noticeList.push(res); | |||
}) | |||
if(this.noticeList.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryParams.pageNum += 1 ; | |||
} | |||
this.queryParams.pageNum += 1 ; | |||
this.loading = false; | |||
// if(this.noticeList.length >= response.total){ | |||
// this.finished = true; | |||
// this.loading = false; | |||
// return; | |||
// } | |||
// this.queryParams.pageNum += 1 ; | |||
// this.loading = false; | |||
}); | |||
}, | |||
//鉴证公告集合 | |||
getAttestationList(){ | |||
this.attestationLoading = true; | |||
Attestation(this.attestationQueryParams).then(response => { | |||
this.attestationList = response.rows; | |||
console.log(response.rows) | |||
response.rows.forEach(res=>{ | |||
this.attestationList.push(res); | |||
}) | |||
if(this.attestationList.length >= response.total){ | |||
this.attestationFinished = true; | |||
return; | |||
}else{ | |||
this.attestationLoading = false; | |||
this.attestationQueryParams.pageNum += 1 ; | |||
} | |||
this.queryParams.pageNum += 1 ; | |||
this.attestationLoading = false; | |||
}); | |||
}, | |||
//招标公告集合 | |||
getinviteTendersList(){ | |||
this.inviteTendersLoading = true; | |||
tenderList(this.inviteTendersQueryParams).then(response => { | |||
this.inviteTendersList = response.rows; | |||
response.rows.forEach(res=>{ | |||
this.inviteTendersList.push(res); | |||
}) | |||
if(this.inviteTendersList.length >= response.total){ | |||
this.inviteTendersFinished = true; | |||
return; | |||
}else{ | |||
this.inviteTendersLoading = false; | |||
this.inviteTendersQueryParams.pageNum += 1 ; | |||
} | |||
this.inviteTendersQueryParams.pageNum += 1 ; | |||
this.inviteTendersLoading = false; | |||
}); | |||
}, | |||
//招标公告集合 | |||
getwinTheBiddingList(){ | |||
this.winTheBiddingLoading = true; | |||
winList(this.winTheBiddingQueryParams).then(response => { | |||
this.winTheBiddingList = response.rows; | |||
response.rows.forEach(res=>{ | |||
this.winTheBiddingList.push(res); | |||
}) | |||
if(this.winTheBiddingList.length >= response.total){ | |||
this.winTheBiddingFinished = true; | |||
return; | |||
}else{ | |||
this.winTheBiddingLoading = false; | |||
this.winTheBiddingQueryParams.pageNum += 1 ; | |||
} | |||
this.winTheBiddingQueryParams.pageNum += 1 ; | |||
this.winTheBiddingLoading = false; | |||
}); | |||
}, | |||
}, | |||
@@ -18,7 +18,7 @@ | |||
</van-dropdown-item> | |||
<van-dropdown-item v-model="value3" :options="option3" @change="getList"/> | |||
</van-dropdown-menu> | |||
<van-list v-model="loading" :finished="finished" finished-text="没有更多了"> | |||
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="getList"> | |||
<router-link :to="{path:'project/projectDetail',query:{id:item.id}}" v-for="(item,index) in infoList" :key="index"> | |||
<van-card :thumb="item.fileUrl?'/api'+item.fileUrl:'../../static/images/zwtpxw.jpg'" > | |||
<template #tags> | |||
@@ -87,11 +87,11 @@ export default { | |||
//是否显示加载 | |||
loading: false, | |||
//是否滚动到底部 | |||
finished: true, | |||
finished: false, | |||
//是否显示加载 | |||
loading1: false, | |||
//是否滚动到底部 | |||
finished1: true, | |||
finished1: false, | |||
option1: [ | |||
], | |||
option2: [ | |||
@@ -112,6 +112,19 @@ export default { | |||
input: '', | |||
infoList:[], | |||
infoList1:[], | |||
queryDatas : { | |||
deptId: this.activeId, | |||
projectNumber:this.value1, | |||
projectShowStatus:this.value3, | |||
pageNum:1, | |||
pageSize:10 | |||
}, | |||
queryNeedDatas : { | |||
deptId: this.activeId, | |||
projectNumber:this.value1, | |||
pageNum:1, | |||
pageSize:10 | |||
} | |||
}; | |||
}, | |||
created() { | |||
@@ -123,18 +136,25 @@ export default { | |||
}); | |||
getDeptList().then(response => { | |||
response.data.map(item => { | |||
getDeptList(item.deptId).then(res => { | |||
this.deptListOption.push({text: item.deptName,children: [],id:item.deptId}) | |||
}); | |||
console.log(this.deptListOption) | |||
if(response.data.length > 0){ | |||
getDeptList(response.data[0].deptId).then(res => { | |||
let list = [] | |||
res.data.map(i =>{ | |||
list.push({text:i.deptName,children:[],id:i.deptId}) | |||
}) | |||
if(list.length==0){ | |||
list.push({text:item.deptName,id:item.deptId}) | |||
list.push({text:response.data[0].deptName,id:response.data[0].deptId}) | |||
}else{ | |||
this.deptListOption.push({ text: item.deptName,children: list}); | |||
this.$set(this.deptListOption[0], "children", list); | |||
} | |||
}); | |||
}); | |||
} | |||
}); | |||
this.getList(); | |||
}, | |||
@@ -166,42 +186,66 @@ export default { | |||
}, | |||
getList(){ | |||
console.log(this.value1) | |||
let queryDatas = { | |||
deptId: this.activeId, | |||
projectNumber:this.value1, | |||
projectShowStatus:this.value3 | |||
} | |||
console.log(queryDatas) | |||
getOutProjectList(queryDatas).then(response =>{ | |||
console.log(response) | |||
this.infoList = response.rows | |||
if(this.infoList.length>0){ | |||
let newList = [] | |||
for(let j = 0 ;j<this.infoList.length;j++){ | |||
if(this.infoList[j].projectName.indexOf(this.value)>-1){ | |||
newList.push(this.infoList[j]); | |||
} | |||
} | |||
this.infoList = newList | |||
console.log(this.infoList) | |||
this.loading = true; | |||
getOutProjectList(this.queryDatas).then(response =>{ | |||
// console.log(response) | |||
// this.infoList = response.rows | |||
// if(this.infoList.length>0){ | |||
// let newList = [] | |||
// for(let j = 0 ;j<this.infoList.length;j++){ | |||
// if(this.infoList[j].projectName.indexOf(this.value)>-1){ | |||
// newList.push(this.infoList[j]); | |||
// } | |||
// } | |||
// this.infoList = newList | |||
// console.log(this.infoList) | |||
// } | |||
response.rows.forEach(res=>{ | |||
this.infoList.push(res); | |||
}) | |||
if(this.infoList.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryDatas.pageNum += 1 ; | |||
} | |||
}); | |||
}, | |||
getNeedProjectList(){ | |||
let queryDatas = { | |||
deptId: this.activeId, | |||
projectNumber:this.value1, | |||
} | |||
console.log(queryDatas) | |||
needProjectList(queryDatas).then(response =>{ | |||
console.log(response) | |||
this.infoList1 = response.rows | |||
this.loading1 = true; | |||
needProjectList(this.queryNeedDatas).then(response =>{ | |||
response.rows.forEach(res=>{ | |||
this.infoList1.push(res); | |||
}) | |||
if(this.infoList1.length >= response.total){ | |||
this.finished1 = true; | |||
return; | |||
}else{ | |||
this.loading1 = false; | |||
this.queryNeedDatas.pageNum += 1 ; | |||
} | |||
}); | |||
}, | |||
clickNav(index){ | |||
console.log(index) | |||
getDeptList(this.deptListOption[index].id).then(res => { | |||
let list = [] | |||
res.data.map(i =>{ | |||
list.push({text:i.deptName,children:[],id:i.deptId}) | |||
}) | |||
if(list.length==0){ | |||
list.push({text:this.deptListOption[index].deptName,id:this.deptListOption[index].id}) | |||
}else{ | |||
this.$set(this.deptListOption[index], "children", list); | |||
} | |||
}); | |||
}, | |||
clickItem(data){ | |||
console.log('clickItem') | |||
if(data.text==this.value2){ | |||
this.activeId=1 | |||
this.value2='标的物位置' | |||
@@ -9,17 +9,17 @@ | |||
/> | |||
<van-tabs scrollspy sticky color="#007b76" > | |||
<van-tab title="竞拍信息" title-style="font-size:12px;"> | |||
<van-swipe class="my-swipe" height="235" indicator-color="white" @change="onChange"> | |||
<template v-if="detail.fileUrlList !== undefined &&detail.fileUrlList.length>0"> | |||
<van-swipe-item v-for="(item,index) in detail.fileUrlList" :key="index"><van-image :src="item.fileUrl?'/api'+item.fileUrl:'../../static/images/zwtp.jpg'" height="235" /></van-swipe-item> | |||
</template> | |||
<template v-else> | |||
<van-swipe-item><van-image src="../../static/images/zwtp.jpg" height="235" /></van-swipe-item> | |||
</template> | |||
<template #indicator> | |||
<div class="custom-indicator">{{ current + 1 }}/{{ detail.fileUrlList !== undefined &&detail.fileUrlList.length>0 ? detail.fileUrlList.length:1 }}</div> | |||
</template> | |||
</van-swipe> | |||
<!-- <van-swipe class="my-swipe" height="235" indicator-color="white" @change="onChange">--> | |||
<!-- <template v-if="detail.fileUrlList !== undefined &&detail.fileUrlList.length>0">--> | |||
<!-- <van-swipe-item v-for="(item,index) in detail.fileUrlList" :key="index"><van-image :src="item.fileUrl?'/api'+item.fileUrl:'../../static/images/zwtp.jpg'" height="235" /></van-swipe-item>--> | |||
<!-- </template>--> | |||
<!-- <template v-else>--> | |||
<!-- <van-swipe-item><van-image src="../../static/images/zwtp.jpg" height="235" /></van-swipe-item>--> | |||
<!-- </template>--> | |||
<!-- <template #indicator>--> | |||
<!-- <div class="custom-indicator">{{ current + 1 }}/{{ detail.fileUrlList !== undefined &&detail.fileUrlList.length>0 ? detail.fileUrlList.length:1 }}</div>--> | |||
<!-- </template>--> | |||
<!-- </van-swipe>--> | |||
<van-notice-bar color="#fff" background="#007E72" left-icon="clock-o"> | |||
{{ process }}    {{tip}} | |||
</van-notice-bar> | |||
@@ -285,7 +285,7 @@ export default { | |||
userId:"", | |||
timeConfig:'', | |||
biddinglistInformationLength:0, | |||
biddingTimeType:0, | |||
biddingTimeType:2, | |||
isFirst:'', | |||
timer:null | |||
}; | |||
@@ -327,8 +327,28 @@ export default { | |||
methods: { | |||
goSignUp(){ | |||
getInfo().then(response => { | |||
getMember(response.user.userId).then(response => { | |||
if (response.data.auditStatus == 'Y'){ | |||
getMember(response.user.userId).then(resresponse => { | |||
let data= { | |||
projectId:this.id, | |||
memberId:resresponse.data.id, | |||
}; | |||
var isSign; | |||
getSignup(data).then(r =>{ | |||
if(r.data=="1"){ | |||
isSign=true | |||
} | |||
}) | |||
if (resresponse.data.auditStatus == 'Y'){ | |||
if (isSign){ | |||
this.$toast({ | |||
icon: 'error', // 找到自己需要的图标 | |||
message: '已报名,请耐心等待审核结果!', | |||
duration:"2000", | |||
onClose:function(){ | |||
} | |||
}) | |||
return; | |||
} | |||
this.$router.push( | |||
{ | |||
path: 'signUp', | |||
@@ -36,7 +36,7 @@ | |||
<template #right> | |||
<div class="operation"> | |||
<!-- delete 删除 edit编辑 view查看 list榜单 --> | |||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.firstIsSign =='否' " @click="openPopup(item.id)"> | |||
<div class="opera_btn" v-if="item.signingMode == '线上' && item.attachement != null && item.firstIsSign =='否'" @click="openPopup(item.id)"> | |||
<img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35"> | |||
<p>签名</p> | |||
</div> | |||
@@ -2,12 +2,10 @@ | |||
<div class="app-container"> | |||
<van-nav-bar | |||
title="我的报名" | |||
right-text="发布" | |||
left-arrow | |||
fixed | |||
placeholder | |||
@click-left="goClickLeft" | |||
@click-right="goAdd" | |||
/> | |||
<van-list | |||
v-model="loading" | |||
@@ -17,11 +15,17 @@ | |||
> | |||
<van-cell icon="play" v-for="(item , index) in supplyList" :key="index" :to="{path:'project/projectDetail',query:{id:item.projectId}}"> | |||
<template #title> | |||
<span :style="{color:item.depositStatus == '1' ? '#007E72':'#c21F3a'}">{{item.depositStatus == '1' ? '报名成功':'报名失败'}}</span> {{item.projectName}} | |||
{{item.projectName}} | |||
</template> | |||
<template #label> | |||
<p>报名状态:<span :style="{color:item.depositStatus == '1' ? '#007E72':'#c21F3a'}">{{item.depositStatus}}</span></p> | |||
<p>开始时间:{{item.biddingStartTime}}</p> | |||
<p>结束时间:{{item.biddingStopTime}}</p> | |||
<p>距<span style="margin: 0 0.5em">结</span>束: | |||
<van-count-down :time="item.endTime"> | |||
<template #default="timeData">{{timeData.days}}天{{timeData.hours}}时{{timeData.minutes}}分{{timeData.seconds}}秒</template> | |||
</van-count-down> | |||
</p> | |||
</template> | |||
</van-cell> | |||
</van-list> | |||
@@ -45,10 +49,15 @@ export default { | |||
//查询参数 | |||
queryParams:{ | |||
memberId:'', | |||
} | |||
}, | |||
depositStatusOptions:[] | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("deposit_status").then(rr => { | |||
this.depositStatusOptions = rr.data; | |||
// this.accountType = this.selectDictLabel(this.depositStatusOptions,res.data.accountType); | |||
}); | |||
this.getInfo(); | |||
}, | |||
methods: { | |||
@@ -76,6 +85,8 @@ export default { | |||
getSignupByMemberId(this.queryParams).then(response => { | |||
console.log(response) | |||
for (var i = 0; i < response.rows.length; i++) { | |||
response.rows[i].endTime = new Date(response.rows[i].biddingStopTime) - new Date(); | |||
response.rows[i].depositStatus = this.selectDictLabel(this.depositStatusOptions,response.rows[i].depositStatus); | |||
this.supplyList.push(response.rows[i]); | |||
} | |||
this.finished = true; | |||
@@ -105,3 +116,12 @@ export default { | |||
}, | |||
}; | |||
</script> | |||
<style scoped lang="scss"> | |||
.van-count-down{ | |||
color: #969799; | |||
font-size: 0.32rem; | |||
line-height: 0.48rem; | |||
display: inline-block; | |||
} | |||
</style> |
@@ -22,10 +22,10 @@ | |||
</van-row> | |||
</div> | |||
<div style="width: 96%;transform: translateY(-18%);margin: 0 auto;border-radius: 0.4rem;overflow: hidden;"> | |||
<van-cell title="我的报名" is-link icon="balance-list-o" to="application" /> | |||
<van-cell title="我的竞价" is-link icon="bar-chart-o" to="bidding" /> | |||
<van-cell title="我的咨询" is-link icon="service-o" to="userInteraction" /> | |||
<van-cell title="我的供求" is-link icon="bag-o" to="userSupply" /> | |||
<van-cell title="我的报名" is-link icon="balance-list-o" to="application" /> | |||
<van-cell title="合同网签" is-link icon="orders-o" to="/user/signature/signatureList" /> | |||
</div> | |||
<van-button class="loginOut" round color="#007E72" @click="loginOut"> | |||
@@ -35,7 +35,7 @@ | |||
<template #right> | |||
<div class="operation"> | |||
<!-- delete 删除 edit编辑 view查看 list榜单 --> | |||
<div class="opera_btn" @click="openPopup(item.id)" v-if="item.signingMode == '线上' && item.secondIsSign =='否' "> | |||
<div class="opera_btn" @click="openPopup(item.id)" v-if="item.signingMode == '线上' && item.attachement != null && item.secondIsSign =='否' "> | |||
<img src="../../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35"> | |||
<p>签名</p> | |||
</div> | |||