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