@@ -13,7 +13,7 @@ module.exports = { | |||||
"/dev-api": { | "/dev-api": { | ||||
// 请求的目标主机 | // 请求的目标主机 | ||||
//target: 'http://116.255.135.38:8081/nsgk_test/', | //target: 'http://116.255.135.38:8081/nsgk_test/', | ||||
target: 'http://192.168.31.47:8080/', | |||||
target: 'http://192.168.31.107:8080/', | |||||
changeOrigin: true, | changeOrigin: true, | ||||
pathRewrite: { | pathRewrite: { | ||||
'^/dev-api': '' | '^/dev-api': '' | ||||
@@ -3472,6 +3472,11 @@ | |||||
} | } | ||||
} | } | ||||
}, | }, | ||||
"dom-walk": { | |||||
"version": "0.1.2", | |||||
"resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", | |||||
"integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" | |||||
}, | |||||
"domain-browser": { | "domain-browser": { | ||||
"version": "1.2.0", | "version": "1.2.0", | ||||
"resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", | "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", | ||||
@@ -4612,6 +4617,15 @@ | |||||
"is-glob": "^4.0.1" | "is-glob": "^4.0.1" | ||||
} | } | ||||
}, | }, | ||||
"global": { | |||||
"version": "4.4.0", | |||||
"resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", | |||||
"integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", | |||||
"requires": { | |||||
"min-document": "^2.19.0", | |||||
"process": "^0.11.10" | |||||
} | |||||
}, | |||||
"globals": { | "globals": { | ||||
"version": "9.18.0", | "version": "9.18.0", | ||||
"resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", | ||||
@@ -6306,6 +6320,14 @@ | |||||
"integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", | "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", | ||||
"dev": true | "dev": true | ||||
}, | }, | ||||
"min-document": { | |||||
"version": "2.19.0", | |||||
"resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", | |||||
"integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", | |||||
"requires": { | |||||
"dom-walk": "^0.1.0" | |||||
} | |||||
}, | |||||
"minimalistic-assert": { | "minimalistic-assert": { | ||||
"version": "1.0.1", | "version": "1.0.1", | ||||
"resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", | "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", | ||||
@@ -9764,8 +9786,7 @@ | |||||
"process": { | "process": { | ||||
"version": "0.11.10", | "version": "0.11.10", | ||||
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", | "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", | ||||
"integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", | |||||
"dev": true | |||||
"integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" | |||||
}, | }, | ||||
"process-nextick-args": { | "process-nextick-args": { | ||||
"version": "2.0.1", | "version": "2.0.1", | ||||
@@ -11,7 +11,11 @@ | |||||
}, | }, | ||||
"dependencies": { | "dependencies": { | ||||
"axios": "^0.21.1", | "axios": "^0.21.1", | ||||
<<<<<<< HEAD | |||||
"jquery": "^3.6.0", | "jquery": "^3.6.0", | ||||
======= | |||||
"global": "^4.4.0", | |||||
>>>>>>> e0b10598d66107bf1e5143918ed011a0be798972 | |||||
"js-cookie": "^2.2.1", | "js-cookie": "^2.2.1", | ||||
"lib-flexible": "^0.3.2", | "lib-flexible": "^0.3.2", | ||||
"node-sass": "^5.0.0", | "node-sass": "^5.0.0", | ||||
@@ -52,6 +52,7 @@ export function getCodeImg() { | |||||
method: 'get' | method: 'get' | ||||
}) | }) | ||||
} | } | ||||
// 发送短信验证码 | // 发送短信验证码 | ||||
export function getSmsCode(mobile) { | export function getSmsCode(mobile) { | ||||
@@ -65,3 +66,4 @@ export function getSmsCode(mobile) { | |||||
data:data | data:data | ||||
}) | }) | ||||
} | } | ||||
@@ -11,8 +11,9 @@ export function getDeptList(id) { | |||||
//挂牌项目列表 | //挂牌项目列表 | ||||
export function getOutProjectList(data){ | export function getOutProjectList(data){ | ||||
return request({ | return request({ | ||||
url:'/transaction/website/outproject/list?deptId=&projectNumber=&', | |||||
url:'/transaction/website/outproject/list', | |||||
method:'get', | method:'get', | ||||
params:data | |||||
}) | }) | ||||
} | } | ||||
//挂牌项目详情 | //挂牌项目详情 | ||||
@@ -29,4 +29,12 @@ export function registerOn(memberName, idcard, mobile, smsCode,uuid) { | |||||
data: data | data: data | ||||
}) | }) | ||||
} | } | ||||
//注册 | |||||
export function userRegister(data) { | |||||
return request({ | |||||
url: '/transaction/website/addMember', | |||||
method: 'post', | |||||
data: data | |||||
}) | |||||
} | |||||
@@ -102,3 +102,45 @@ export function userDemand(query){ | |||||
data: query | data: query | ||||
}) | }) | ||||
} | } | ||||
//发布供求 | |||||
export function updateDemand(query){ | |||||
return request({ | |||||
url: '/transaction/demand', | |||||
method: 'put', | |||||
data: query | |||||
}) | |||||
} | |||||
//供求查询 | |||||
export function selectDemand(id){ | |||||
return request({ | |||||
url: '/transaction/demand/'+id, | |||||
method: 'get', | |||||
}) | |||||
} | |||||
//删除供求 | |||||
export function deleteSupply(id){ | |||||
return request({ | |||||
url: '/transaction/demand/'+id, | |||||
method: 'delete' | |||||
}) | |||||
} | |||||
// 展示图片 | |||||
export function showImg(id){ | |||||
return request({ | |||||
url: '/transaction/website/supplyDemand/showImg/id/'+id, | |||||
method: 'get', | |||||
}) | |||||
} | |||||
//我的竞价 | |||||
export function biddinglist(query){ | |||||
return request({ | |||||
url: '/transaction/outproject/biddinglist/member', | |||||
method: 'get', | |||||
params: query | |||||
}) | |||||
} |
@@ -11,6 +11,8 @@ import './config/flexible' | |||||
import store from './store/' | import store from './store/' | ||||
import './permission' // permission control | import './permission' // permission control | ||||
import global from '@/utils/global'; | |||||
import { getDicts } from "@/utils/data"; | import { getDicts } from "@/utils/data"; | ||||
import { selectDictLabel , onClickLeft , getNowFormatDate } from "@/utils/utils"; | import { selectDictLabel , onClickLeft , getNowFormatDate } from "@/utils/utils"; | ||||
@@ -19,6 +21,7 @@ Vue.prototype.getDicts = getDicts | |||||
Vue.prototype.selectDictLabel = selectDictLabel | Vue.prototype.selectDictLabel = selectDictLabel | ||||
Vue.prototype.onClickLeft = onClickLeft | Vue.prototype.onClickLeft = onClickLeft | ||||
Vue.prototype.getNowFormatDate = getNowFormatDate | Vue.prototype.getNowFormatDate = getNowFormatDate | ||||
Vue.prototype.global = global | |||||
// Vant 引用 | // Vant 引用 | ||||
import Vant from 'vant'; | import Vant from 'vant'; | ||||
@@ -6,8 +6,29 @@ import { getToken } from '@/utils/auth' | |||||
NProgress.configure({ showSpinner: false }) | NProgress.configure({ showSpinner: false }) | ||||
const whiteList = ['/index', '/login', '/auth-redirect', '/bind', '/register', '/news/index', '/notice/index', '/supply/index' | |||||
, '/interaction/index', '/register/index', '/register/registerType', '/register/userRegister', '/register/companyRegister', '/homestead/login', '/homestead/index'] | |||||
const whiteList = [ | |||||
'/index', | |||||
'/login', | |||||
'/auth-redirect', | |||||
'/bind', | |||||
'/register', | |||||
'/news/index', | |||||
'/news/newDetail', | |||||
'/notice/index', | |||||
'/supply/index', | |||||
'/interaction/index', | |||||
'/register/index', | |||||
'/register/registerType', | |||||
'/register/userRegister', | |||||
'/register/companyRegister', | |||||
'/biddingHall', | |||||
'/project', | |||||
'/policy', | |||||
'/policyDetail', | |||||
'/attestationDetail', | |||||
'/noticeDetail', | |||||
] | |||||
router.beforeEach((to, from, next) => { | router.beforeEach((to, from, next) => { | ||||
NProgress.start() | NProgress.start() | ||||
@@ -46,7 +67,7 @@ router.beforeEach((to, from, next) => { | |||||
next() | next() | ||||
} else { | } else { | ||||
next(`/login?redirect=${to.fullPath}`) // 否则全部重定向到登录页 | next(`/login?redirect=${to.fullPath}`) // 否则全部重定向到登录页 | ||||
//next('/index'); | |||||
//next('/index'); | |||||
NProgress.done() | NProgress.done() | ||||
} | } | ||||
} | } | ||||
@@ -81,7 +81,8 @@ export const constantRoutes = [ | |||||
path: '/biddingHall', | path: '/biddingHall', | ||||
name: 'biddingHall', | name: 'biddingHall', | ||||
meta: { | meta: { | ||||
title: '竞价大厅' | |||||
title: '竞价大厅', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/biddingHall'], resolve) | component: (resolve) => require(['@/views/biddingHall'], resolve) | ||||
}, | }, | ||||
@@ -106,7 +107,8 @@ export const constantRoutes = [ | |||||
path: '/news/index', | path: '/news/index', | ||||
name: 'news', | name: 'news', | ||||
meta: { | meta: { | ||||
title: '新闻资讯' | |||||
title: '新闻资讯', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/news/index'], resolve) | component: (resolve) => require(['@/views/news/index'], resolve) | ||||
}, | }, | ||||
@@ -114,7 +116,8 @@ export const constantRoutes = [ | |||||
path: '/news/newDetail', | path: '/news/newDetail', | ||||
name: 'newDetail', | name: 'newDetail', | ||||
meta: { | meta: { | ||||
title: '新闻详情' | |||||
title: '新闻详情', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/news/newDetail'], resolve) | component: (resolve) => require(['@/views/news/newDetail'], resolve) | ||||
}, | }, | ||||
@@ -122,7 +125,8 @@ export const constantRoutes = [ | |||||
path: '/notice/index', | path: '/notice/index', | ||||
name: 'notice', | name: 'notice', | ||||
meta: { | meta: { | ||||
title: '项目公告' | |||||
title: '项目公告', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/notice/index'], resolve) | component: (resolve) => require(['@/views/notice/index'], resolve) | ||||
}, | }, | ||||
@@ -130,7 +134,8 @@ export const constantRoutes = [ | |||||
path: '/supply/index', | path: '/supply/index', | ||||
name: 'supply', | name: 'supply', | ||||
meta: { | meta: { | ||||
title: '个人供求' | |||||
title: '个人供求', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/supply/index'], resolve) | component: (resolve) => require(['@/views/supply/index'], resolve) | ||||
}, | }, | ||||
@@ -138,7 +143,8 @@ export const constantRoutes = [ | |||||
path: '/interaction/index', | path: '/interaction/index', | ||||
name: 'interaction', | name: 'interaction', | ||||
meta: { | meta: { | ||||
title: '互动交流' | |||||
title: '互动交流', | |||||
hidden: true, | |||||
}, | }, | ||||
component: (resolve) => require(['@/views/interaction/index'], resolve) | component: (resolve) => require(['@/views/interaction/index'], resolve) | ||||
}, | }, | ||||
@@ -0,0 +1,8 @@ | |||||
const deptId = 100 ; | |||||
const severApi = 'http://192.168.31.107:8080'; | |||||
export default | |||||
{ | |||||
deptId,//区县ID | |||||
severApi,//全局API | |||||
} |
@@ -15,8 +15,13 @@ export function onClickLeft(){ | |||||
history.back(-1); | history.back(-1); | ||||
} | } | ||||
export function getNowFormatDate() { | |||||
var date = new Date(); | |||||
export function getNowFormatDate(time) { | |||||
var date; | |||||
if (!time){ | |||||
date = new Date(); | |||||
}else{ | |||||
date = time; | |||||
} | |||||
var seperator1 = "-"; | var seperator1 = "-"; | ||||
var seperator2 = ":"; | var seperator2 = ":"; | ||||
var month = date.getMonth() + 1; | var month = date.getMonth() + 1; | ||||
@@ -1,5 +1,12 @@ | |||||
<template> | <template> | ||||
<div> | <div> | ||||
<van-nav-bar | |||||
title="竞价大厅" | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="onClickLeft" | |||||
/> | |||||
<van-search | <van-search | ||||
v-model="value" | v-model="value" | ||||
shape="round" | shape="round" | ||||
@@ -8,7 +8,7 @@ | |||||
</van-row> | </van-row> | ||||
<van-swipe class="my-swipe" :autoplay="3000" height="180" indicator-color="white"> | <van-swipe class="my-swipe" :autoplay="3000" height="180" indicator-color="white"> | ||||
<van-swipe-item v-for="(item,index) in bannerList" :key="index"> | <van-swipe-item v-for="(item,index) in bannerList" :key="index"> | ||||
<van-image :src="item.img" height="180" /> | |||||
<van-image :src="item.img" height="180" @click="goDetail(item.id)" /> | |||||
<p class="bannerTit">{{item.title}}</p> | <p class="bannerTit">{{item.title}}</p> | ||||
</van-swipe-item> | </van-swipe-item> | ||||
</van-swipe> | </van-swipe> | ||||
@@ -18,7 +18,7 @@ | |||||
<van-image src="../../static/images/icon/icon_new.png" width="40" height="40" /> | <van-image src="../../static/images/icon/icon_new.png" width="40" height="40" /> | ||||
<p>新闻资讯</p> | <p>新闻资讯</p> | ||||
</van-grid-item> | </van-grid-item> | ||||
<van-grid-item> | |||||
<van-grid-item to="/biddingHall"> | |||||
<van-image src="../../static/images/icon/icon_bidding.png" width="40" height="40" /> | <van-image src="../../static/images/icon/icon_bidding.png" width="40" height="40" /> | ||||
<p>竞价大厅</p> | <p>竞价大厅</p> | ||||
</van-grid-item> | </van-grid-item> | ||||
@@ -49,17 +49,20 @@ | |||||
@load="getList()" | @load="getList()" | ||||
> | > | ||||
<!-- @load="newList"--> | <!-- @load="newList"--> | ||||
<van-cell v-for="item in newList" :key="item.id" :title="item.title" :label="item.newsTime"> | |||||
<van-cell v-for="item in newList" :key="item.id" :label="item.newsTime" :to="{name:'newDetail', query: {id:item.id}}"> | |||||
<!-- 使用 right-icon 插槽来自定义右侧图标 --> | <!-- 使用 right-icon 插槽来自定义右侧图标 --> | ||||
<template #title> | |||||
<p class="newContent">{{item.title}}</p> | |||||
</template> | |||||
<template #right-icon> | <template #right-icon> | ||||
<van-image :src="item.img" class="search-icon" width="30%" /> | |||||
<van-image :src="item.img" class="search-icon" width="30%" v-if="item.img" /> | |||||
<van-image src="../../static/images/zwtpxw.jpg" class="search-icon" width="30%" v-else/> | |||||
</template> | </template> | ||||
</van-cell> | </van-cell> | ||||
</van-list> | </van-list> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { newList } from "@/api/index"; | import { newList } from "@/api/index"; | ||||
export default { | export default { | ||||
@@ -100,6 +103,7 @@ export default { | |||||
this.newList[i].img = imgStrs[0].substr(10,(imgStrs[0].length-12)); | this.newList[i].img = imgStrs[0].substr(10,(imgStrs[0].length-12)); | ||||
} | } | ||||
} | } | ||||
console.log(this.newList) | |||||
if(this.newList.length >= response.total){ | if(this.newList.length >= response.total){ | ||||
this.finished = true; | this.finished = true; | ||||
return; | return; | ||||
@@ -122,6 +126,10 @@ export default { | |||||
} | } | ||||
this.loading = false; | this.loading = false; | ||||
}); | }); | ||||
}, | |||||
goDetail(id){ | |||||
console.log(id) | |||||
window.location = 'news/newDetail?id='+id; | |||||
} | } | ||||
}, | }, | ||||
}; | }; | ||||
@@ -166,6 +174,13 @@ export default { | |||||
text-align: left; | text-align: left; | ||||
color: #333333; | color: #333333; | ||||
} | } | ||||
.newContent{ | |||||
display: -webkit-box; | |||||
-webkit-box-orient: vertical; | |||||
-webkit-line-clamp: 2; | |||||
word-break: break-all; | |||||
overflow: hidden; | |||||
} | |||||
.search-icon { | .search-icon { | ||||
line-height: inherit; | line-height: inherit; | ||||
margin-left: 10px; | margin-left: 10px; | ||||
@@ -5,6 +5,7 @@ | |||||
left-arrow | left-arrow | ||||
fixed | fixed | ||||
placeholder | placeholder | ||||
@click-left="onClickLeft" | |||||
/> | /> | ||||
<van-list | <van-list | ||||
v-model="loading" | v-model="loading" | ||||
@@ -54,7 +55,9 @@ export default { | |||||
this.loading = true; | this.loading = true; | ||||
interactionList(this.queryParams).then(response => { | interactionList(this.queryParams).then(response => { | ||||
console.log(response) | console.log(response) | ||||
this.interactionList = response.rows; | |||||
for (var i = 0; i < response.rows.length; i++) { | |||||
this.interactionList.push(response.rows[i]); | |||||
} | |||||
if(this.interactionList.length >= response.total){ | if(this.interactionList.length >= response.total){ | ||||
this.finished = true; | this.finished = true; | ||||
return; | return; | ||||
@@ -1,10 +1,17 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | |||||
<div class="focus-logo"> | |||||
<img src="@/assets/images/login-logo.png" /> | |||||
<p class="describe">登录页</p> | |||||
<div class="app-container" :style="{height:height+'px'}"> | |||||
<van-nav-bar | |||||
title="登录" | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="onClickLeft" | |||||
/> | |||||
<div class="title"> | |||||
<p class="title_one">PROPERTY RIGHT</p> | |||||
<p class="title_two">TRANSACTION</p> | |||||
<p class="title_three">农村产权交易平台</p> | |||||
</div> | </div> | ||||
<div class="login-main"> | <div class="login-main"> | ||||
<ul class="head_nav clear"> | <ul class="head_nav clear"> | ||||
<li @click="isSmsLogin = false" :class="{ active: !isSmsLogin }"> | <li @click="isSmsLogin = false" :class="{ active: !isSmsLogin }"> | ||||
@@ -37,7 +44,7 @@ | |||||
clearable | clearable | ||||
label="验证码" | label="验证码" | ||||
placeholder="图形验证码" | placeholder="图形验证码" | ||||
> | > | ||||
<template #button> | <template #button> | ||||
<img class="code-img" :src="codeUrl" @click="getCode" /> | <img class="code-img" :src="codeUrl" @click="getCode" /> | ||||
@@ -85,15 +92,15 @@ | |||||
<div class="reveal-modal-con"> | <div class="reveal-modal-con"> | ||||
<div class="dd_txt"> | <div class="dd_txt"> | ||||
<router-link to="/register">注册账户</router-link> | |||||
</div> | |||||
<div class="other-login"> | |||||
<p class="desc">—— 更多登录方式 ——</p> | |||||
<p class="icon-other-logins"> | |||||
<router-link class="wx" to="/"></router-link> | |||||
<router-link class="rlsb" to="/"></router-link> | |||||
</p> | |||||
<router-link to="register/index">注册账户</router-link> | |||||
</div> | </div> | ||||
<!-- <div class="other-login">--> | |||||
<!-- <p class="desc">—— 更多登录方式 ——</p>--> | |||||
<!-- <p class="icon-other-logins">--> | |||||
<!-- <router-link class="wx" to="/"></router-link>--> | |||||
<!-- <router-link class="rlsb" to="/"></router-link>--> | |||||
<!-- </p>--> | |||||
<!-- </div>--> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
@@ -121,10 +128,12 @@ export default { | |||||
codeUrl: "", //验证码 | codeUrl: "", //验证码 | ||||
isSmsLogin: false, //是否手机验证码 | isSmsLogin: false, //是否手机验证码 | ||||
computeTime: 0, | computeTime: 0, | ||||
height:0 | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.getCode(); | this.getCode(); | ||||
this.height = document.body.clientHeight | |||||
//调用微信公众号方法 | //调用微信公众号方法 | ||||
// wx.config({ | // wx.config({ | ||||
// debug: true, // 开启调试模式, | // debug: true, // 开启调试模式, | ||||
@@ -228,7 +237,28 @@ export default { | |||||
<!-- Add "scoped" attribute to limit CSS to this component only --> | <!-- Add "scoped" attribute to limit CSS to this component only --> | ||||
<style scoped lang="scss"> | <style scoped lang="scss"> | ||||
.title{ | |||||
padding-top: 20%; | |||||
width: 88%; | |||||
margin: 0 auto; | |||||
} | |||||
.title_one{ | |||||
color: #666666; | |||||
font-size: 0.4rem; | |||||
} | |||||
.title_two{ | |||||
color: #007e72; | |||||
font-size: 0.6rem; | |||||
} | |||||
.title_three{ | |||||
color: #FFF; | |||||
font-size: 0.8rem; | |||||
} | |||||
.app-container { | .app-container { | ||||
background: url("../../static/images/index/registerBg.png") no-repeat; | |||||
background-size: 100% 100%; | |||||
width: 100%; | |||||
height: 100%; | |||||
.focus-logo { | .focus-logo { | ||||
width: 310px; | width: 310px; | ||||
margin: 0 auto 40px; | margin: 0 auto 40px; | ||||
@@ -252,6 +282,7 @@ export default { | |||||
overflow: hidden; | overflow: hidden; | ||||
border: 1px solid #ddd; | border: 1px solid #ddd; | ||||
padding-bottom:40px; | padding-bottom:40px; | ||||
margin-top: 0.4rem; | |||||
} | } | ||||
.head_nav { | .head_nav { | ||||
li { | li { | ||||
@@ -288,7 +319,7 @@ export default { | |||||
text-align: center; | text-align: center; | ||||
font-size: 28px; | font-size: 28px; | ||||
a { | a { | ||||
color: #666; | |||||
color: #FFF; | |||||
} | } | ||||
} | } | ||||
.other-login { | .other-login { | ||||
@@ -327,4 +358,4 @@ export default { | |||||
} | } | ||||
} | } | ||||
} | } | ||||
</style> | |||||
</style> |
@@ -17,7 +17,8 @@ | |||||
<van-cell v-for="item in newList" :key="item.id" :title="item.title" :label="item.newsTime" :to="{name:'newDetail', query: {id:item.id}}"> | <van-cell v-for="item in newList" :key="item.id" :title="item.title" :label="item.newsTime" :to="{name:'newDetail', query: {id:item.id}}"> | ||||
<!-- 使用 right-icon 插槽来自定义右侧图标 --> | <!-- 使用 right-icon 插槽来自定义右侧图标 --> | ||||
<template #right-icon> | <template #right-icon> | ||||
<van-image :src="item.img" class="search-icon" width="30%" style="margin-left: 10px;" /> | |||||
<van-image :src="item.img" class="search-icon" width="30%" style="margin-left: 10px;" v-if="item.img" /> | |||||
<van-image src="../../static/images/zwtpxw.jpg" class="search-icon" width="30%" v-else/> | |||||
</template> | </template> | ||||
</van-cell> | </van-cell> | ||||
</van-list> | </van-list> | ||||
@@ -1,6 +1,7 @@ | |||||
<template> | <template> | ||||
<div class="app-container"> | <div class="app-container"> | ||||
<van-search v-model="value" placeholder="请输入搜索关键词" @search="onSearch"/> | <van-search v-model="value" placeholder="请输入搜索关键词" @search="onSearch"/> | ||||
<van-dropdown-menu> | <van-dropdown-menu> | ||||
<van-dropdown-item v-model="value1" :options="projectTypeOption" @change="getList"/> | <van-dropdown-item v-model="value1" :options="projectTypeOption" @change="getList"/> | ||||
<van-dropdown-item :value="value2" :title="value2" ref="item"> | <van-dropdown-item :value="value2" :title="value2" ref="item"> | ||||
@@ -15,9 +16,10 @@ | |||||
</van-dropdown-item> | </van-dropdown-item> | ||||
<van-dropdown-item v-model="value3" :options="option3" @change="getList"/> | <van-dropdown-item v-model="value3" :options="option3" @change="getList"/> | ||||
</van-dropdown-menu> | </van-dropdown-menu> | ||||
<van-list v-model="loading" :finished="finished" finished-text="没有更多了"> | <van-list v-model="loading" :finished="finished" finished-text="没有更多了"> | ||||
<router-link :to="{path:'project/projectDetail',query:{id:item.id}}" v-for="(item,index) in infoList" :key="index"> | <router-link :to="{path:'project/projectDetail',query:{id:item.id}}" v-for="(item,index) in infoList" :key="index"> | ||||
<van-card :thumb="item.fileUrl?''+item.fileUrl:'../../static/images/index/projectImg.png'" > | |||||
<van-card :thumb="item.fileUrl?global.severApi+item.fileUrl:'../../static/images/zwtpxw.jpg'" > | |||||
<template #tags> | <template #tags> | ||||
<p class="title">【{{item.rollout}}】{{item.projectName}}</p> | <p class="title">【{{item.rollout}}】{{item.projectName}}</p> | ||||
<p class="type">{{ item.projectShowStatus }}</p> | <p class="type">{{ item.projectShowStatus }}</p> | ||||
@@ -35,7 +37,7 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import {getOutProjectList,getDeptList} from "../../api/project"; | |||||
import {getOutProjectList,getDeptList} from "@/api/project/index"; | |||||
export default { | export default { | ||||
name: "project", | name: "project", | ||||
@@ -43,7 +45,7 @@ export default { | |||||
return { | return { | ||||
value1: '', | value1: '', | ||||
value2: '标的物位置', | value2: '标的物位置', | ||||
activeId: 1, | |||||
activeId: this.global.deptId, | |||||
activeIndex: 0, | activeIndex: 0, | ||||
value3: '', | value3: '', | ||||
value:"", | value:"", | ||||
@@ -57,9 +59,11 @@ export default { | |||||
], | ], | ||||
option3: [ | option3: [ | ||||
{ text: '竞价状态', value: '' }, | { text: '竞价状态', value: '' }, | ||||
{ text: '全部', value: '全部' }, | |||||
{ text: '竞价中', value: '竞价中' }, | |||||
{ text: '竞价结束', value: '竞价结束' }, | |||||
{ text: '正在报名', value: '正在报名' }, | |||||
{ text: '等待竞价', value: '等待竞价' }, | |||||
{ text: '正在竞价', value: '正在竞价' }, | |||||
{ text: '等待成交', value: '等待成交' }, | |||||
{ text: '已经成交', value: '已经成交' }, | |||||
], | ], | ||||
//标的物类型 | //标的物类型 | ||||
projectTypeOption:[{text:'标的物类型',value:''}], | projectTypeOption:[{text:'标的物类型',value:''}], | ||||
@@ -72,6 +76,7 @@ export default { | |||||
}, | }, | ||||
created() { | created() { | ||||
this.getDicts("project_type").then(response => { | this.getDicts("project_type").then(response => { | ||||
console.log(response) | |||||
response.data.map(item => { | response.data.map(item => { | ||||
this.projectTypeOption.push({ value:item.dictCode, text: item.dictLabel}); | this.projectTypeOption.push({ value:item.dictCode, text: item.dictLabel}); | ||||
}); | }); | ||||
@@ -113,11 +118,13 @@ export default { | |||||
}, | }, | ||||
getList(){ | getList(){ | ||||
let queryDatas = { | let queryDatas = { | ||||
deptId: this.value1, | |||||
projectNumber:this.activeId, | |||||
deptId: this.activeId, | |||||
projectNumber:this.value1, | |||||
projectShowStatus:this.value3 | projectShowStatus:this.value3 | ||||
} | } | ||||
console.log(queryDatas) | |||||
getOutProjectList(queryDatas).then(response =>{ | getOutProjectList(queryDatas).then(response =>{ | ||||
console.log(response) | |||||
this.infoList = response.rows | this.infoList = response.rows | ||||
if(this.infoList.length>0){ | if(this.infoList.length>0){ | ||||
let newList = [] | let newList = [] | ||||
@@ -11,10 +11,10 @@ | |||||
<van-tab title="竞拍信息" title-style="font-size:12px;"> | <van-tab title="竞拍信息" title-style="font-size:12px;"> | ||||
<van-swipe class="my-swipe" height="235" indicator-color="white" @change="onChange"> | <van-swipe class="my-swipe" height="235" indicator-color="white" @change="onChange"> | ||||
<template v-if="detail.fileUrlList !== undefined &&detail.fileUrlList.length>0"> | <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?''+item.fileUrl:'../../static/images/index/banner.png'" height="235" /></van-swipe-item> | |||||
<van-swipe-item v-for="(item,index) in detail.fileUrlList" :key="index"><van-image :src="item.fileUrl?global.severApi+item.fileUrl:'../../static/images/zwtp.jpg'" height="235" /></van-swipe-item> | |||||
</template> | </template> | ||||
<template v-else> | <template v-else> | ||||
<van-swipe-item><van-image src="../../static/images/index/banner.png" height="235" /></van-swipe-item> | |||||
<van-swipe-item><van-image src="../../static/images/zwtp.jpg" height="235" /></van-swipe-item> | |||||
</template> | </template> | ||||
<template #indicator> | <template #indicator> | ||||
<div class="custom-indicator">{{ current + 1 }}/{{ detail.fileUrlList !== undefined &&detail.fileUrlList.length>0 ? detail.fileUrlList.length:1 }}</div> | <div class="custom-indicator">{{ current + 1 }}/{{ detail.fileUrlList !== undefined &&detail.fileUrlList.length>0 ? detail.fileUrlList.length:1 }}</div> | ||||
@@ -28,26 +28,26 @@ | |||||
<van-col span="24" class="title">【{{ detail.rollout }}】{{ detail.projectName }}</van-col> | <van-col span="24" class="title">【{{ detail.rollout }}】{{ detail.projectName }}</van-col> | ||||
</van-row> | </van-row> | ||||
<van-row> | <van-row> | ||||
<van-col span="4">{{ process }}</van-col> | |||||
<van-col span="20"><van-count-down :time="time" format="DD 天 HH 时 mm 分 ss 秒" /></van-col> | |||||
<van-col span="5">{{ process }}</van-col> | |||||
<van-col span="19"><van-count-down :time="time" format="DD 天 HH 时 mm 分 ss 秒" /></van-col> | |||||
</van-row> | </van-row> | ||||
<van-row> | <van-row> | ||||
<van-col span="4">挂牌价</van-col> | |||||
<van-col span="20" class="price"><span>{{detail.price}}</span> 元/亩/年</van-col> | |||||
<van-col span="5">挂牌价</van-col> | |||||
<van-col span="19" class="price"><span>{{detail.price}}</span> 元/亩/年</van-col> | |||||
</van-row> | </van-row> | ||||
<van-row> | <van-row> | ||||
<van-col span="4">保证金</van-col> | |||||
<van-col span="20" class="money"><span>{{ detail.deposit }}</span> 元</van-col> | |||||
<van-col span="5">保证金</van-col> | |||||
<van-col span="19" class="money"><span>{{ detail.deposit }}</span> 元</van-col> | |||||
</van-row> | </van-row> | ||||
</div> | </div> | ||||
<div class="lead"> | <div class="lead"> | ||||
<van-row > | <van-row > | ||||
<van-col span="3"><van-image src="../../static/images/icon/phone.png" style="vertical-align: text-top;" /></van-col> | |||||
<van-col span="2"><van-image src="../../static/images/icon/phone.png" style="vertical-align: text-top;" /></van-col> | |||||
<template v-if="biddinglistInformation!=undefined&&biddinglistInformation.length>0"> | <template v-if="biddinglistInformation!=undefined&&biddinglistInformation.length>0"> | ||||
<van-col span="4">{{biddinglistInformation[0].userName}}</van-col> | |||||
<van-col span="5">{{biddinglistInformation[0].userName}}</van-col> | |||||
<van-col span="4">{{biddinglistInformation[0].money}}元</van-col> | <van-col span="4">{{biddinglistInformation[0].money}}元</van-col> | ||||
<van-col span="4">领先</van-col> | <van-col span="4">领先</van-col> | ||||
<van-col span="8">{{biddinglistInformation[0].createTime}}</van-col> | |||||
<van-col span="9">{{biddinglistInformation[0].createTime}}</van-col> | |||||
</template> | </template> | ||||
</van-row> | </van-row> | ||||
</div> | </div> | ||||
@@ -1,34 +1,54 @@ | |||||
<template> | <template> | ||||
<div class="app-container" :style="{height:height+'px'}"> | <div class="app-container" :style="{height:height+'px'}"> | ||||
<van-nav-bar | <van-nav-bar | ||||
title="个人注册" | |||||
title="单位用户注册" | |||||
left-arrow | left-arrow | ||||
fixed | fixed | ||||
placeholder | placeholder | ||||
@click-left="onClickLeft" | |||||
/> | /> | ||||
<van-form> | |||||
<van-field v-model="tel" type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" /> | |||||
<van-form @submit="getSubmit"> | |||||
<van-field | <van-field | ||||
center | |||||
clearable | |||||
label="短信验证码" | |||||
placeholder="请输入短信验证码" | |||||
readonly | |||||
clickable | |||||
name="picker" | |||||
:value="value" | |||||
label="供求类型" | |||||
placeholder="点击选择供求类型" | |||||
@click="showPicker = true" | |||||
required | required | ||||
:rules="[{ required:true }]" | :rules="[{ required:true }]" | ||||
/> | |||||
<van-popup v-model="showPicker" position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="columns" | |||||
@confirm="onConfirm" | |||||
@cancel="showPicker = false" | |||||
/> | |||||
</van-popup> | |||||
<van-field v-model="form.phone" type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" /> | |||||
<van-field | |||||
v-model="form.code" | |||||
center | |||||
clearable | |||||
label="验证码" | |||||
placeholder="图形验证码" | |||||
required :rules="[{ required:true }]" | |||||
> | > | ||||
<template #button> | <template #button> | ||||
<van-button size="small" type="primary" native-type="button" :rules="[{ required:true }]">发送验证码</van-button> | |||||
<img class="code-img" :src="codeUrl" @click="getCode" /> | |||||
</template> | </template> | ||||
</van-field> | </van-field> | ||||
<van-field type="password" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field type="password" label="确认密码" placeholder="请再次输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.password" type="password" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="confirmPassWord" type="password" label="确认密码" placeholder="请再次输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field label="公司名称" placeholder="请输入公司名称" required :rules="[{ required:true }]"/> | |||||
<van-field label="负责人姓名" placeholder="请输入负责人姓名" required :rules="[{ required:true }]"/> | |||||
<van-field label="身份证号" placeholder="请输入法人身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field label="社会信用代码" placeholder="请输入公司的社会信用代码" required :rules="[{ required:true }]"/> | |||||
<van-field label="营业执照号" placeholder="请输入公司的营业执照号" required :rules="[{ required:true }]"/> | |||||
<van-field label="联系地址" placeholder="请输入联系地址" /> | |||||
<van-field v-model="form.companyName" label="公司名称" placeholder="请输入公司名称" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.realname" label="负责人姓名" placeholder="请输入负责人姓名" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.idCardNum" label="身份证号" placeholder="请输入法人身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.companyCode" label="社会信用代码" placeholder="请输入公司的社会信用代码" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.companyLicense" label="营业执照号" placeholder="请输入公司的营业执照号" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.address" label="联系地址" placeholder="请输入联系地址" /> | |||||
<div class="submit"> | <div class="submit"> | ||||
<p>我已阅读并同意<span>《农村产权交易信息服务平台会员注册协议》</span></p> | <p>我已阅读并同意<span>《农村产权交易信息服务平台会员注册协议》</span></p> | ||||
<van-button round block type="info" color="#007E72" native-type="submit">立即注册</van-button> | <van-button round block type="info" color="#007E72" native-type="submit">立即注册</van-button> | ||||
@@ -38,24 +58,72 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getCodeImg } from "@/api/login"; | |||||
import { userRegister } from "@/api/register/index"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "companyRegister", | |||||
data() { | data() { | ||||
return { | return { | ||||
height:0, | height:0, | ||||
tel:'' | |||||
tel:'', | |||||
value:'', | |||||
confirmPassWord:'', | |||||
showPicker: false, | |||||
columns:[], | |||||
form: { | |||||
phone: "", //账号 | |||||
code: "", //验证码 | |||||
password: "", //密码 | |||||
realname: "", //姓名 | |||||
idCardNum: "", //身份证号 | |||||
address: "", //地址 | |||||
uuid:'',//图形验证码ID | |||||
memberType:2, | |||||
economicType:1, | |||||
companyName:'', | |||||
companyLicense:'', | |||||
companyCode:'' | |||||
}, | |||||
codeUrl:'' | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.getCode(); | |||||
this.getDicts("economic_type").then(res => { | |||||
res.data.map(item => { | |||||
this.columns.push(item.dictLabel); | |||||
}); | |||||
}); | |||||
this.height = document.body.clientHeight | this.height = document.body.clientHeight | ||||
}, | }, | ||||
methods: {}, | |||||
methods: { | |||||
getCode() { | |||||
getCodeImg().then((res) => { | |||||
this.form.uuid = res.uuid; | |||||
this.codeUrl = "data:image/gif;base64," + res.img; | |||||
}); | |||||
}, | |||||
onConfirm(value, index) { | |||||
this.value = value; | |||||
this.showPicker = false; | |||||
this.form.supplyDemandType = index + 1 ; | |||||
}, | |||||
getSubmit(){ | |||||
console.log(this.form) | |||||
userRegister(this.form).then((res) => { | |||||
console.log(res) | |||||
}); | |||||
} | |||||
}, | |||||
}; | }; | ||||
</script> | </script> | ||||
<style scoped lang="scss"> | <style scoped lang="scss"> | ||||
.app-container { | .app-container { | ||||
background-color: #FFF; | background-color: #FFF; | ||||
.code-img { | |||||
width: 220px; | |||||
} | |||||
} | } | ||||
.submit{ | .submit{ | ||||
position: absolute; | position: absolute; | ||||
@@ -1,5 +1,12 @@ | |||||
<template> | <template> | ||||
<div class="app-container" :style="{height:height+'px'}"> | <div class="app-container" :style="{height:height+'px'}"> | ||||
<van-nav-bar | |||||
title="注册" | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="onClickLeft" | |||||
/> | |||||
<div class="title"> | <div class="title"> | ||||
<p class="title_one">PROPERTY RIGHT</p> | <p class="title_one">PROPERTY RIGHT</p> | ||||
<p class="title_two">TRANSACTION</p> | <p class="title_two">TRANSACTION</p> | ||||
@@ -106,25 +113,48 @@ | |||||
<p>农村产权交易网</p> | <p>农村产权交易网</p> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<van-form @submit="onSubmit"> | |||||
<div class="agree_box"> | <div class="agree_box"> | ||||
<label class="agree"><input type="checkbox">我已仔细阅读该须知,并同意该须知相关规定。</label> | |||||
<van-button round color="#007e72" block to="registerType">注册</van-button> | |||||
<van-field name="checkbox"> | |||||
<template #input> | |||||
<van-checkbox v-model="checkbox" checked-color="#007e72" shape="square"/><p style="color: #FFF;margin-left: 5px;">我已仔细阅读该须知,并同意该须知相关规定。</p> | |||||
</template> | |||||
</van-field> | |||||
</div> | </div> | ||||
<van-button native-type="submit" type="info" round color="#007e72" block style="width: 90%;margin:0 auto;">注册</van-button> | |||||
</van-form> | |||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import {Dialog} from "vant"; | |||||
export default { | export default { | ||||
name: "notice", | name: "notice", | ||||
data() { | data() { | ||||
return { | return { | ||||
height:0 | |||||
height:0, | |||||
checkbox:false | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.height = document.body.clientHeight | this.height = document.body.clientHeight | ||||
}, | }, | ||||
methods: {}, | |||||
methods: { | |||||
onSubmit(){ | |||||
console.log(this.checkbox); | |||||
if(this.checkbox == true){ | |||||
window.location='registerType'; | |||||
}else{ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '请选择同意协议', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}) | |||||
} | |||||
} | |||||
}, | |||||
}; | }; | ||||
</script> | </script> | ||||
@@ -136,7 +166,7 @@ export default { | |||||
height: 100%; | height: 100%; | ||||
} | } | ||||
.title{ | .title{ | ||||
padding-top: 30%; | |||||
padding-top: 20%; | |||||
width: 88%; | width: 88%; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
} | } | ||||
@@ -176,15 +206,12 @@ export default { | |||||
width: 90%; | width: 90%; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
margin-top: 0.4rem; | margin-top: 0.4rem; | ||||
margin-bottom: 15px; | |||||
} | } | ||||
.agree{ | |||||
color: #FFF; | |||||
margin-bottom:0.4rem; | |||||
display: block; | |||||
.van-cell{ | |||||
padding: 0; | |||||
background-color: transparent; | |||||
margin: 0 auto; | |||||
} | } | ||||
.agree_box input[type='checkbox']{ | |||||
margin-right: 5px; | |||||
position: relative; | |||||
top: 5px; | |||||
} | |||||
</style> | </style> |
@@ -1,5 +1,12 @@ | |||||
<template> | <template> | ||||
<div class="app-container" :style="{height:height+'px'}"> | <div class="app-container" :style="{height:height+'px'}"> | ||||
<van-nav-bar | |||||
title="注册" | |||||
left-arrow | |||||
fixed | |||||
placeholder | |||||
@click-left="onClickLeft" | |||||
/> | |||||
<div class="title"> | <div class="title"> | ||||
<p class="title_one">PROPERTY RIGHT</p> | <p class="title_one">PROPERTY RIGHT</p> | ||||
<p class="title_two">TRANSACTION</p> | <p class="title_two">TRANSACTION</p> | ||||
@@ -56,7 +63,7 @@ export default { | |||||
overflow: hidden; | overflow: hidden; | ||||
} | } | ||||
.title{ | .title{ | ||||
padding-top: 30%; | |||||
padding-top: 20%; | |||||
width: 88%; | width: 88%; | ||||
margin: 0 auto; | margin: 0 auto; | ||||
} | } | ||||
@@ -1,30 +1,44 @@ | |||||
<template> | <template> | ||||
<div class="app-container" :style="{height:height+'px'}"> | <div class="app-container" :style="{height:height+'px'}"> | ||||
<van-nav-bar | <van-nav-bar | ||||
title="个人注册" | |||||
title="个人用户注册" | |||||
left-arrow | left-arrow | ||||
fixed | fixed | ||||
placeholder | placeholder | ||||
@click-left="onClickLeft" | |||||
/> | /> | ||||
<van-form> | |||||
<van-field v-model="tel" type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" /> | |||||
<van-form @submit="getSubmit"> | |||||
<van-field v-model="form.phone" type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" /> | |||||
<!-- <van-field--> | |||||
<!-- center--> | |||||
<!-- clearable--> | |||||
<!-- label="短信验证码"--> | |||||
<!-- placeholder="请输入短信验证码"--> | |||||
<!-- required--> | |||||
<!-- v-model="form.sms"--> | |||||
<!-- :rules="[{ required:true }]"--> | |||||
<!-- >--> | |||||
<!-- <template #button>--> | |||||
<!-- <van-button size="small" type="primary" native-type="button" :rules="[{ required:true }]">发送验证码</van-button>--> | |||||
<!-- </template>--> | |||||
<!-- </van-field>--> | |||||
<van-field | <van-field | ||||
v-model="form.code" | |||||
center | center | ||||
clearable | clearable | ||||
label="短信验证码" | |||||
placeholder="请输入短信验证码" | |||||
required | |||||
:rules="[{ required:true }]" | |||||
label="验证码" | |||||
placeholder="图形验证码" | |||||
required :rules="[{ required:true }]" | |||||
> | > | ||||
<template #button> | <template #button> | ||||
<van-button size="small" type="primary" native-type="button" :rules="[{ required:true }]">发送验证码</van-button> | |||||
<img class="code-img" :src="codeUrl" @click="getCode" /> | |||||
</template> | </template> | ||||
</van-field> | </van-field> | ||||
<van-field type="password" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field type="password" label="确认密码" placeholder="请再次输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field label="姓名" placeholder="请输入姓名" required :rules="[{ required:true }]"/> | |||||
<van-field label="身份证号" placeholder="请输入身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field label="联系地址" placeholder="请输入联系地址" /> | |||||
<van-field v-model="form.password" type="password" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="confirmPassWord" type="password" label="确认密码" placeholder="请再次输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.realname" label="姓名" placeholder="请输入姓名" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.idCardNum" label="身份证号" placeholder="请输入身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.address" label="联系地址" placeholder="请输入联系地址" /> | |||||
<div class="submit"> | <div class="submit"> | ||||
<p>我已阅读并同意<span>《农村产权交易信息服务平台会员注册协议》</span></p> | <p>我已阅读并同意<span>《农村产权交易信息服务平台会员注册协议》</span></p> | ||||
<van-button round block type="info" color="#007E72" native-type="submit">立即注册</van-button> | <van-button round block type="info" color="#007E72" native-type="submit">立即注册</van-button> | ||||
@@ -34,24 +48,56 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getCodeImg } from "@/api/login"; | |||||
import { userRegister } from "@/api/register/index"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "userRegister", | |||||
data() { | data() { | ||||
return { | return { | ||||
height:0, | height:0, | ||||
tel:'' | |||||
tel:'', | |||||
confirmPassWord:'', | |||||
form: { | |||||
phone: "", //账号 | |||||
code: "", //验证码 | |||||
password: "", //密码 | |||||
realname: "", //姓名 | |||||
idCardNum: "", //身份证号 | |||||
address: "", //地址 | |||||
uuid:'',//图形验证码ID | |||||
memberType:1, | |||||
economicType:1 | |||||
}, | |||||
codeUrl:'' | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.getCode() | |||||
this.height = document.body.clientHeight | this.height = document.body.clientHeight | ||||
}, | }, | ||||
methods: {}, | |||||
methods: { | |||||
getCode() { | |||||
getCodeImg().then((res) => { | |||||
this.form.uuid = res.uuid; | |||||
this.codeUrl = "data:image/gif;base64," + res.img; | |||||
}); | |||||
}, | |||||
getSubmit(){ | |||||
console.log(this.form) | |||||
userRegister(this.form).then((res) => { | |||||
console.log(res) | |||||
}); | |||||
} | |||||
}, | |||||
}; | }; | ||||
</script> | </script> | ||||
<style scoped lang="scss"> | <style scoped lang="scss"> | ||||
.app-container { | .app-container { | ||||
background-color: #FFF; | background-color: #FFF; | ||||
.code-img { | |||||
width: 220px; | |||||
} | |||||
} | } | ||||
.submit{ | .submit{ | ||||
position: absolute; | position: absolute; | ||||
@@ -7,21 +7,37 @@ | |||||
placeholder | placeholder | ||||
@click-left="onClickLeft" | @click-left="onClickLeft" | ||||
/> | /> | ||||
<van-cell title="用户资料修改" to="userInformation" is-link icon="points" /> | |||||
<van-cell title="用户资料修改" @click="goInformation" to="userInformation" is-link icon="points" /> | |||||
<van-cell title="银行账户信息修改" to="bankInformation" is-link icon="credit-pay" /> | <van-cell title="银行账户信息修改" to="bankInformation" is-link icon="credit-pay" /> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getInfo } from "@/api/login/index"; | |||||
import { getMember , showUserImg } from "@/api/user/index"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "Setting", | |||||
data() { | data() { | ||||
return { | return { | ||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
getInfo().then(response => { | |||||
getMember(response.user.userId).then(response => { | |||||
this.memberType = response.data.memberType; | |||||
console.log(this.memberType) | |||||
}); | |||||
}); | |||||
}, | |||||
methods: { | |||||
goInformation(){ | |||||
if(this.memberType == 1){ | |||||
window.location = 'userInformation'; | |||||
}else{ | |||||
window.location = 'companyInformation'; | |||||
} | |||||
} | |||||
}, | }, | ||||
methods: {}, | |||||
}; | }; | ||||
</script> | </script> | ||||
@@ -5,57 +5,226 @@ | |||||
left-arrow | left-arrow | ||||
fixed | fixed | ||||
placeholder | placeholder | ||||
@click-left="onClickLeft" | |||||
/> | /> | ||||
<van-form> | |||||
<van-field value="15314031621" type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" > | |||||
<van-form @submit="submitForm"> | |||||
<van-field v-model="tel" readonly type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" > | |||||
<template #extra > | <template #extra > | ||||
<p style="color: #007e72">修改手机号</p> | <p style="color: #007e72">修改手机号</p> | ||||
</template> | </template> | ||||
</van-field> | </van-field> | ||||
<van-field value="15314031621" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/> | |||||
<van-field value="北京农燊高科" label="公司名称" placeholder="请输入公司名称" required :rules="[{ required:true }]"/> | |||||
<van-field value="庞东旭" label="负责人姓名" placeholder="请输入负责人姓名" required :rules="[{ required:true }]"/> | |||||
<van-field value="230381199705255156" label="身份证号" placeholder="请输入法人身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field value="1122334" label="社会信用代码" placeholder="请输入公司的社会信用代码" required :rules="[{ required:true }]"/> | |||||
<van-field value="私企" label="企业性质" placeholder="请输入企业性质" /> | |||||
<van-field value="软件程序开发" label="经营范围" placeholder="请输入经营范围" /> | |||||
<van-field value="2010.9-2020.5" label="经营期限" placeholder="请输入经营期限" /> | |||||
<van-field value="2010年9月10日" label="成立时间" placeholder="请输入成立时间" /> | |||||
<van-field value="2100万" label="注册资金" placeholder="请输入注册资金" /> | |||||
<van-field value="124578963" label="营业执照号" placeholder="请输入公司的营业执照号" required :rules="[{ required:true }]"/> | |||||
<van-field value="山东威海" label="联系地址" placeholder="请输入联系地址" /> | |||||
<!-- <van-field value="15314031621" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/>--> | |||||
<van-field v-model="userForm.companyName" label="公司名称" placeholder="请输入公司名称" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="userForm.realname" label="负责人姓名" placeholder="请输入负责人姓名" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="userForm.idCardNum" label="身份证号" placeholder="请输入法人身份证号" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="userForm.companyCode" label="社会信用代码" placeholder="请输入公司的社会信用代码" required :rules="[{ required:true }]"/> | |||||
<van-field | |||||
readonly | |||||
clickable | |||||
label="企业性质" | |||||
:value="companyNameValue" | |||||
placeholder="选择企业性质" | |||||
@click="showPickerPiker = true" | |||||
required :rules="[{ required:true }]" | |||||
/> | |||||
<van-popup v-model="showPickerPiker" round position="bottom"> | |||||
<van-picker | |||||
show-toolbar | |||||
:columns="companyNameList" | |||||
@cancel="showPickerPiker = false" | |||||
@confirm="onConfirmCompany" | |||||
/> | |||||
</van-popup> | |||||
<!-- <van-field v-model="userForm.companyNature" label="企业性质" placeholder="请输入企业性质" required :rules="[{ required:true }]" />--> | |||||
<van-field v-model="userForm.companyScope" label="经营范围" placeholder="请输入经营范围" required :rules="[{ required:true }]" /> | |||||
<van-field v-model="userForm.companyTimeLimit" label="经营期限" placeholder="请输入经营期限" required :rules="[{ required:true }]" /> | |||||
<van-field | |||||
readonly | |||||
clickable | |||||
label="成立时间" | |||||
:value="userForm.companySetupTime" | |||||
placeholder="选择成立时间" | |||||
@click="showPicker = true" | |||||
required :rules="[{ required:true }]" | |||||
/> | |||||
<van-popup v-model="showPicker" round position="bottom"> | |||||
<van-datetime-picker | |||||
v-model="currentDate" | |||||
type="date" | |||||
title="选择年月日" | |||||
:min-date="minDate" | |||||
:max-date="maxDate" | |||||
@cancel="showPicker = false" | |||||
@confirm="onConfirm" | |||||
/> | |||||
</van-popup> | |||||
<!-- <van-field v-model="userForm.companySetupTime" label="成立时间" placeholder="请输入成立时间" required :rules="[{ required:true }]" />--> | |||||
<van-field v-model="userForm.companyCapital" label="注册资金" placeholder="请输入注册资金" required :rules="[{ required:true }]" /> | |||||
<van-field v-model="userForm.companyLicense" label="营业执照号" placeholder="请输入公司的营业执照号" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="userForm.address" label="联系地址" placeholder="请输入联系地址" required :rules="[{ required:true }]" /> | |||||
<van-field name="uploader" label="上传相关附件"> | <van-field name="uploader" label="上传相关附件"> | ||||
<template #input> | <template #input> | ||||
<van-uploader :after-read="afterRead" v-model="fileList" multiple /> | |||||
<van-uploader :after-read="afterRead" :before-delete="deleteFile" v-model="fileList" multiple :max-count="5" /> | |||||
</template> | </template> | ||||
</van-field> | </van-field> | ||||
<p style="color: red; text-align: center;">*身份证照片、本人和身份证的合影</p> | <p style="color: red; text-align: center;">*身份证照片、本人和身份证的合影</p> | ||||
<div class="submit"> | <div class="submit"> | ||||
<van-button round block type="info" color="#007E72" native-type="submit" style="width: 90%;margin: 0 auto;">立即注册</van-button> | |||||
<van-button round block type="info" color="#007E72" native-type="submit" style="width: 90%;margin: 0 auto;">保存</van-button> | |||||
</div> | </div> | ||||
</van-form> | </van-form> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getInfo } from "@/api/login/index"; | |||||
import { getMember , base64Attach , userUpdate , showUserImg , deleteUserImg} from "@/api/user/index"; | |||||
import {Dialog} from "vant"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "companyInformation", | |||||
data() { | data() { | ||||
return { | return { | ||||
height:0, | height:0, | ||||
tel:'', | tel:'', | ||||
fileList:[] | |||||
showPicker: false, | |||||
showPickerPiker: false, | |||||
minDate: new Date(1900, 0, 1), | |||||
maxDate: new Date(), | |||||
currentDate: new Date(), | |||||
value:'', | |||||
companyNameValue:'', | |||||
fileList:[], | |||||
companyNameList:[], | |||||
form: { | |||||
files:[], | |||||
fileType:'', | |||||
bizPath:'transaction', | |||||
tableName:'t_transaction_member', | |||||
tableId:'' | |||||
}, | |||||
userForm:{ | |||||
companyName:'', | |||||
idCardNum:'', | |||||
realname:'', | |||||
companyCode:'', | |||||
companyName:'', | |||||
companyNature:'', | |||||
companyScope:'', | |||||
companyTimeLimit:'', | |||||
companySetupTime:'', | |||||
companyCapital:'', | |||||
companyLicense:'', | |||||
address:'', | |||||
}, | |||||
userInfo:[], | |||||
upLoadList:[] | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.height = document.body.clientHeight | this.height = document.body.clientHeight | ||||
this.getInfo() | |||||
this.getDicts("company_nature").then(res => { | |||||
console.log(res); | |||||
for (var i = 0 ; i < res.data.length ; i++ ){ | |||||
this.companyNameList.push(res.data[i].dictLabel) | |||||
} | |||||
//this.value = this.selectDictLabel(res.data,response.data.supplyDemandType); | |||||
}); | |||||
}, | }, | ||||
methods: { | methods: { | ||||
onConfirmCompany(value,index){ | |||||
console.log(value) | |||||
this.companyNameValue = value; | |||||
this.showPickerPiker = false; | |||||
this.userForm.companyNature = index+1 | |||||
console.log(this.userForm.companyName) | |||||
}, | |||||
onConfirm(value) { | |||||
this.userForm.companySetupTime = this.getNowFormatDate(value).substr(0,10); | |||||
console.log(new Date()) | |||||
this.showPicker = false; | |||||
}, | |||||
getInfo(){ | |||||
getInfo().then(response => { | |||||
getMember(response.user.userId).then(response => { | |||||
console.log(response) | |||||
this.userForm.companyName = response.data.companyName; | |||||
this.userForm.idCardNum = response.data.idCardNum; | |||||
this.userForm.realname = response.data.realname; | |||||
this.userForm.companyCode = response.data.companyCode; | |||||
this.userForm.companyName = response.data.companyName; | |||||
this.userForm.companyNature = response.data.companyNature; | |||||
this.userForm.companyScope = response.data.companyScope; | |||||
this.userForm.companyTimeLimit = response.data.companyTimeLimit; | |||||
this.userForm.companySetupTime = response.data.companySetupTime; | |||||
this.userForm.companyCapital = response.data.companyCapital; | |||||
this.userForm.companyLicense = response.data.companyLicense; | |||||
this.userForm.address = response.data.address; | |||||
this.tel = response.data.phone | |||||
this.getDicts("company_nature").then(res => { | |||||
console.log(res); | |||||
this.companyNameValue = this.selectDictLabel(res.data,response.data.companyNature); | |||||
}); | |||||
this.userForm.id = response.data.id; | |||||
this.form.tableId = response.data.id; | |||||
showUserImg(response.data.id).then(responseSecond => { | |||||
console.log(responseSecond) | |||||
this.form.files = responseSecond.data | |||||
for (var i = 0 ; i < responseSecond.data.length ; i++){ | |||||
this.fileList.push({url:this.global.severApi+responseSecond.data[i].fileUrl,id:responseSecond.data[i].id}) | |||||
} | |||||
}); | |||||
}); | |||||
}); | |||||
}, | |||||
afterRead(file) { | afterRead(file) { | ||||
// 此时可以自行将文件上传至服务器 | // 此时可以自行将文件上传至服务器 | ||||
console.log(this.fileList) | console.log(this.fileList) | ||||
console.log(file); | |||||
for ( var i = 0 ; i < this.fileList.length ; i++){ | |||||
console.log(this.fileList[i].url) | |||||
if(this.fileList[i].url == undefined&&this.fileList!='') { | |||||
this.fileList[i] = {url:this.fileList[i].content, id: '', isImage: true}; | |||||
} | |||||
} | |||||
}, | |||||
deleteFile(elIndex){ | |||||
if(elIndex.id != ''){ | |||||
deleteUserImg(elIndex.id).then(response => {}); | |||||
} | |||||
return (file, name) => { | |||||
let fileIndex = name.index | |||||
this.fileList[elIndex].splice(fileIndex, 1) | |||||
this.upLoadList[elIndex].splice(fileIndex, 1) | |||||
} | |||||
}, | }, | ||||
submitForm(){ | |||||
this.form.files = []; | |||||
userUpdate(this.userForm).then(response => { | |||||
var imgList = []; | |||||
console.log(this.fileList) | |||||
for (var i = 0 ; i < this.fileList.length ; i++){ | |||||
if(this.fileList[i].url.indexOf('http') == -1&&this.fileList!=''){ | |||||
this.form.files.push(this.fileList[i].url); | |||||
} | |||||
} | |||||
console.log(this.form.files) | |||||
base64Attach(this.form).then(responseSecond => { | |||||
if(response.code == 200 && responseSecond.code == 200){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '修改成功', | |||||
confirmButtonText: '确定', | |||||
}) | |||||
} | |||||
}); | |||||
}); | |||||
} | |||||
}, | }, | ||||
}; | }; | ||||
</script> | </script> | ||||
@@ -8,7 +8,7 @@ | |||||
@click-left="onClickLeft" | @click-left="onClickLeft" | ||||
/> | /> | ||||
<van-form @submit="submitForm"> | <van-form @submit="submitForm"> | ||||
<van-field v-model="userForm.phone" type="tel" label="手机号" placeholder="请输入手机号" readonly required :rules="[{ required:true }]" > | |||||
<van-field v-model="tel" readonly type="tel" label="手机号" placeholder="请输入手机号" readonly required :rules="[{ required:true }]" > | |||||
<template #extra > | <template #extra > | ||||
<p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p> | <p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p> | ||||
</template> | </template> | ||||
@@ -47,7 +47,6 @@ export default { | |||||
tableId:'' | tableId:'' | ||||
}, | }, | ||||
userForm:{ | userForm:{ | ||||
phone:'', | |||||
idCardNum:'', | idCardNum:'', | ||||
realname:'', | realname:'', | ||||
address:'', | address:'', | ||||
@@ -64,16 +63,17 @@ export default { | |||||
getInfo(){ | getInfo(){ | ||||
getInfo().then(response => { | getInfo().then(response => { | ||||
getMember(response.user.userId).then(response => { | getMember(response.user.userId).then(response => { | ||||
console.log(response) | |||||
this.userForm.idCardNum = response.data.idCardNum; | this.userForm.idCardNum = response.data.idCardNum; | ||||
this.userForm.realname = response.data.realname; | this.userForm.realname = response.data.realname; | ||||
this.userForm.address = response.data.address; | this.userForm.address = response.data.address; | ||||
this.userForm.phone = response.data.phone; | |||||
this.userForm.id = response.data.id; | this.userForm.id = response.data.id; | ||||
this.form.tableId = response.data.id; | this.form.tableId = response.data.id; | ||||
this.tel = response.data.phone | |||||
showUserImg(response.data.id).then(responseSecond => { | showUserImg(response.data.id).then(responseSecond => { | ||||
console.log(responseSecond) | console.log(responseSecond) | ||||
for (var i = 0 ; i < responseSecond.data.length ; i++){ | for (var i = 0 ; i < responseSecond.data.length ; i++){ | ||||
this.fileList.push({url:'http://116.255.135.38:8081/nsgk_test'+responseSecond.data[i].fileUrl,id:responseSecond.data[i].id}) | |||||
this.fileList.push({url:this.global.severApi+responseSecond.data[i].fileUrl,id:responseSecond.data[i].id}) | |||||
} | } | ||||
}); | }); | ||||
}); | }); | ||||
@@ -81,10 +81,17 @@ export default { | |||||
}, | }, | ||||
afterRead(file) { | afterRead(file) { | ||||
// 此时可以自行将文件上传至服务器 | // 此时可以自行将文件上传至服务器 | ||||
this.fileList[this.fileList.length-1] = {url:file.content,id:'',isImage: true}; | |||||
for ( var i = 0 ; i < this.fileList.length ; i++){ | |||||
console.log(this.fileList[i].url) | |||||
if(this.fileList[i].url == undefined&&this.fileList!='') { | |||||
this.fileList[i] = {url:this.fileList[i].content, id: '', isImage: true}; | |||||
} | |||||
} | |||||
}, | }, | ||||
deleteFile(elIndex){ | deleteFile(elIndex){ | ||||
deleteUserImg(elIndex.id).then(response => {}); | |||||
if(elIndex.id != ''){ | |||||
deleteUserImg(elIndex.id).then(response => {}); | |||||
} | |||||
return (file, name) => { | return (file, name) => { | ||||
let fileIndex = name.index | let fileIndex = name.index | ||||
this.fileList[elIndex].splice(fileIndex, 1) | this.fileList[elIndex].splice(fileIndex, 1) | ||||
@@ -122,10 +129,11 @@ export default { | |||||
background-color: #FFF; | background-color: #FFF; | ||||
} | } | ||||
.submit{ | .submit{ | ||||
position: absolute; | |||||
position: fixed; | |||||
bottom: 5%; | bottom: 5%; | ||||
width: 90%; | width: 90%; | ||||
left: 5%; | left: 5%; | ||||
background-color: #FFFFFF; | |||||
p{ | p{ | ||||
text-align: center; | text-align: center; | ||||
margin-bottom: 0.2rem; | margin-bottom: 0.2rem; | ||||
@@ -11,57 +11,98 @@ | |||||
v-model="loading" | v-model="loading" | ||||
:finished="finished" | :finished="finished" | ||||
finished-text="没有更多了" | finished-text="没有更多了" | ||||
@load="onLoad" | |||||
@load="getList" | |||||
class="biddingList" | class="biddingList" | ||||
> | > | ||||
<van-row> | |||||
<van-col span="11" style="font-size: 0.4rem;line-height: 0.65rem">管家堡乡张村张三丰500亩水田出租出</van-col> | |||||
<van-col span="13"> | |||||
<van-row class="row"> | |||||
<van-col span="9">距竞价结束</van-col> | |||||
<van-col span="15" class="col"><van-count-down :time="time" format="DD天HH时mm分ss秒" style="font-size: 0.2rem;color: #C21F3A" /></van-col> | |||||
</van-row> | |||||
<van-row class="row"> | |||||
<van-col span="9">当前价格</van-col> | |||||
<van-col span="15" class="col"><span>500</span>元/亩/年</van-col> | |||||
</van-row> | |||||
<van-row class="row" style="margin: 0;"> | |||||
<van-col span="9">我的出价</van-col> | |||||
<van-col span="15" class="col"><span>500</span>元/亩/年</van-col> | |||||
</van-row> | |||||
</van-col> | |||||
</van-row> | |||||
<van-divider :style="{borderColor:'#B4B4B4'}"/> | |||||
<van-cell v-for="(item , index) in biddinglist" :key="index"> | |||||
<van-row> | |||||
<van-col span="24" style="font-size: 0.4rem;margin-bottom: 0.1rem;">{{item.projectName}}</van-col> | |||||
</van-row> | |||||
<van-row> | |||||
<van-col span="24"> | |||||
<van-row class="row"> | |||||
<van-col span="4" style="font-size: 0.2rem;">当前价格</van-col> | |||||
<van-col span="8" class="col"><span>{{item.money}}</span>{{item.unit}}</van-col> | |||||
<van-col span="4" style="font-size: 0.2rem;">我的出价</van-col> | |||||
<van-col span="8" class="col"><span>{{item.memberMoney}}</span>{{item.unit}}</van-col> | |||||
</van-row> | |||||
<van-row class="row"> | |||||
<van-col span="5" style="font-size: 0.2rem;">距竞价结束</van-col> | |||||
<van-col span="19" class="col"> | |||||
<van-count-down :time="item.biddingStopTime" format="DD天HH时mm分ss秒" style="font-size: 0.2rem;color: #C21F3A;margin-top: 3px;" /> | |||||
</van-col> | |||||
</van-row> | |||||
</van-col> | |||||
</van-row> | |||||
</van-cell> | |||||
</van-list> | </van-list> | ||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getMember , biddinglist } from "@/api/user/index"; | |||||
import { getInfo } from "@/api/login/index"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "userBidding", | |||||
data() { | data() { | ||||
return { | return { | ||||
loading: false, | loading: false, | ||||
finished: true, | |||||
time: 30 * 60 * 60 * 1000, | |||||
finished: false, | |||||
biddinglist:[], | |||||
queryParams:{ | |||||
memberId:'', | |||||
pageNum:1, | |||||
pageSize:10 | |||||
} | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.getInfo(); | |||||
}, | |||||
methods: { | |||||
getInfo(){ | |||||
getInfo().then(response => { | |||||
getMember(response.user.userId).then(response => { | |||||
this.queryParams.memberId = response.data.id; | |||||
this.getList(); | |||||
}); | |||||
}); | |||||
}, | |||||
getList(){ | |||||
this.loading = true; | |||||
biddinglist(this.queryParams).then(response => { | |||||
console.log(response) | |||||
for (var i = 0; i < response.rows.length; i++) { | |||||
var nowTime = Date.parse(new Date()); | |||||
var timeTest = response.rows[i].biddingStopTime; | |||||
var endTimes=timeTest.substring(0,10).split('-'); | |||||
timeTest = endTimes[1]+'/'+endTimes[2]+'/'+endTimes[0]+' '+timeTest.substring(10,19); | |||||
var leftTime = Date.parse(timeTest)-nowTime; | |||||
response.rows[i].biddingStopTime = leftTime ; | |||||
this.biddinglist.push(response.rows[i]); | |||||
} | |||||
if(this.biddinglist.length >= response.total){ | |||||
this.finished = true; | |||||
this.loading = false; | |||||
return; | |||||
} | |||||
this.finished = true; | |||||
this.loading = false; | |||||
}); | |||||
}, | |||||
}, | }, | ||||
methods: {}, | |||||
}; | }; | ||||
</script> | </script> | ||||
<style scoped lang="scss"> | <style scoped lang="scss"> | ||||
.app-container { | .app-container { | ||||
background-color: #FFF; | |||||
} | } | ||||
.biddingList{ | .biddingList{ | ||||
padding: 0.5rem 2% 0; | |||||
.van-row{ | |||||
padding: 0 3%; | |||||
} | |||||
padding: 0 2%; | |||||
} | } | ||||
.row{ | .row{ | ||||
color: #666666; | color: #666666; | ||||
@@ -12,7 +12,7 @@ | |||||
/> | /> | ||||
</van-col> | </van-col> | ||||
<van-col span="17"> | <van-col span="17"> | ||||
<p>13306310001</p> | |||||
<p>{{phone}}</p> | |||||
<p onclick="window.location='accountSetting'">账户设置</p> | <p onclick="window.location='accountSetting'">账户设置</p> | ||||
</van-col> | </van-col> | ||||
</van-row> | </van-row> | ||||
@@ -22,25 +22,38 @@ | |||||
<van-cell title="我的咨询" is-link icon="service-o" to="userInteraction" /> | <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="bag-o" to="userSupply" /> | ||||
</div> | </div> | ||||
<van-button plain type="warning" class="loginOut" @click="loginOut">退出登录</van-button> | |||||
<van-button class="loginOut" color="linear-gradient(to right, #ff6034, #ee0a24)" @click="loginOut"> | |||||
退出登录 | |||||
</van-button> | |||||
</div> | </div> | ||||
</template> | </template> | ||||
<script> | <script> | ||||
import { logout } from "@/api/login/index"; | |||||
import { getMember , supplyList , deleteSupply} from "@/api/user/index"; | |||||
import { logout ,getInfo } from "@/api/login/index"; | |||||
export default { | export default { | ||||
name: "notice", | |||||
name: "user", | |||||
data() { | data() { | ||||
return { | return { | ||||
phone:'' | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
this.getInfo(); | |||||
}, | }, | ||||
methods: { | methods: { | ||||
loginOut(){ | loginOut(){ | ||||
logout().then(response => { | logout().then(response => { | ||||
location.reload(true); | |||||
}); | |||||
}, | |||||
getInfo(){ | |||||
getInfo().then(response => { | |||||
console.log(response) | console.log(response) | ||||
getMember(response.user.userId).then(response => { | |||||
console.log(response) | |||||
this.phone = response.data.phone; | |||||
}); | |||||
}); | }); | ||||
}, | }, | ||||
}, | }, | ||||
@@ -76,8 +89,5 @@ export default { | |||||
.loginOut{ | .loginOut{ | ||||
width: 94%; | width: 94%; | ||||
margin-left: 3%; | margin-left: 3%; | ||||
background-color: transparent; | |||||
color:red; | |||||
border-color: red; | |||||
} | } | ||||
</style> | </style> |
@@ -17,7 +17,6 @@ | |||||
:finished="finished" | :finished="finished" | ||||
finished-text="没有更多了" | finished-text="没有更多了" | ||||
style="margin-top: 10px;" | style="margin-top: 10px;" | ||||
@load="getList" | |||||
> | > | ||||
<van-cell icon="play" v-for="(item , index) in supplyList" v-if="item.supplyDemandType == 1" :key="index"> | <van-cell icon="play" v-for="(item , index) in supplyList" v-if="item.supplyDemandType == 1" :key="index"> | ||||
<template #title> | <template #title> | ||||
@@ -25,12 +24,12 @@ | |||||
</template> | </template> | ||||
<template #label> | <template #label> | ||||
联系电话:{{item.phone}} <p style="float: right;">发布时间:{{item.logintime}}</p> | 联系电话:{{item.phone}} <p style="float: right;">发布时间:{{item.logintime}}</p> | ||||
<van-row style="margin-top: 5px;"> | |||||
<van-row style="margin-top: 5px;" v-if="item.isAuditStatus == 'N'"> | |||||
<van-col span="16"></van-col> | <van-col span="16"></van-col> | ||||
<van-col span="4" style="color: #007E72;text-align: right;" @click="goAdd('update',item.id)" v-if="item.reply == null"> | <van-col span="4" style="color: #007E72;text-align: right;" @click="goAdd('update',item.id)" v-if="item.reply == null"> | ||||
<van-icon name="edit" size="15" style="top:3px"/>修改 | <van-icon name="edit" size="15" style="top:3px"/>修改 | ||||
</van-col> | </van-col> | ||||
<van-col span="4" style="color: #007E72;text-align: right;" @click="deleteInteraction(item.id)" v-if="item.reply == null"> | |||||
<van-col span="4" style="color: #007E72;text-align: right;" @click="deleteSupply(item.id)" v-if="item.reply == null"> | |||||
<van-icon name="delete-o" size="15" style="top:3px"/>删除 | <van-icon name="delete-o" size="15" style="top:3px"/>删除 | ||||
</van-col> | </van-col> | ||||
</van-row> | </van-row> | ||||
@@ -52,6 +51,15 @@ | |||||
</template> | </template> | ||||
<template #label> | <template #label> | ||||
联系电话:{{item.phone}} <p style="float: right;">发布时间:{{item.logintime}}</p> | 联系电话:{{item.phone}} <p style="float: right;">发布时间:{{item.logintime}}</p> | ||||
<van-row style="margin-top: 5px;" v-if="item.isAuditStatus == 'N'"> | |||||
<van-col span="16"></van-col> | |||||
<van-col span="4" style="color: #007E72;text-align: right;" @click="goAdd('update',item.id)" v-if="item.reply == null"> | |||||
<van-icon name="edit" size="15" style="top:3px"/>修改 | |||||
</van-col> | |||||
<van-col span="4" style="color: #007E72;text-align: right;" @click="deleteSupply(item.id)" v-if="item.reply == null"> | |||||
<van-icon name="delete-o" size="15" style="top:3px"/>删除 | |||||
</van-col> | |||||
</van-row> | |||||
</template> | </template> | ||||
</van-cell> | </van-cell> | ||||
</van-list> | </van-list> | ||||
@@ -61,8 +69,9 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getMember , supplyList } from "@/api/user/index"; | |||||
import { getMember , supplyList , deleteSupply} from "@/api/user/index"; | |||||
import { getInfo } from "@/api/login/index"; | import { getInfo } from "@/api/login/index"; | ||||
import {Dialog} from "vant"; | |||||
export default { | export default { | ||||
name: "userSupply", | name: "userSupply", | ||||
data() { | data() { | ||||
@@ -76,8 +85,6 @@ export default { | |||||
//查询参数 | //查询参数 | ||||
queryParams:{ | queryParams:{ | ||||
memberId:'', | memberId:'', | ||||
pageNum:1, | |||||
pageSize:10 | |||||
} | } | ||||
}; | }; | ||||
}, | }, | ||||
@@ -100,6 +107,7 @@ export default { | |||||
getInfo().then(response => { | getInfo().then(response => { | ||||
getMember(response.user.userId).then(response => { | getMember(response.user.userId).then(response => { | ||||
this.queryParams.memberId = response.data.id; | this.queryParams.memberId = response.data.id; | ||||
this.getList(); | |||||
}); | }); | ||||
}); | }); | ||||
}, | }, | ||||
@@ -110,14 +118,30 @@ export default { | |||||
for (var i = 0; i < response.rows.length; i++) { | for (var i = 0; i < response.rows.length; i++) { | ||||
this.supplyList.push(response.rows[i]); | this.supplyList.push(response.rows[i]); | ||||
} | } | ||||
if(this.supplyList.length >= response.total){ | |||||
this.finished = true; | |||||
return; | |||||
} | |||||
this.queryParams.pageNum += 1 ; | |||||
this.finished = true; | |||||
this.loading = false; | this.loading = false; | ||||
}); | }); | ||||
}, | }, | ||||
deleteSupply(id){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '是否删除?', | |||||
confirmButtonText: '确定', | |||||
}).then(() => { | |||||
deleteSupply(id).then(response => { | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '删除成功', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}).then(() => { | |||||
this.supplyList = []; | |||||
this.getList(); | |||||
}) | |||||
}); | |||||
}) | |||||
} | |||||
}, | }, | ||||
}; | }; | ||||
</script> | </script> |
@@ -13,9 +13,11 @@ | |||||
clickable | clickable | ||||
name="picker" | name="picker" | ||||
:value="value" | :value="value" | ||||
label="选择器" | |||||
placeholder="点击选择城市" | |||||
label="供求类型" | |||||
placeholder="点击选择供求类型" | |||||
@click="showPicker = true" | @click="showPicker = true" | ||||
required | |||||
:rules="[{ required:true }]" | |||||
/> | /> | ||||
<van-popup v-model="showPicker" position="bottom"> | <van-popup v-model="showPicker" position="bottom"> | ||||
<van-picker | <van-picker | ||||
@@ -25,11 +27,16 @@ | |||||
@cancel="showPicker = false" | @cancel="showPicker = false" | ||||
/> | /> | ||||
</van-popup> | </van-popup> | ||||
<van-field v-model="form.projectName" label="项目名称" placeholder="请输入标题" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.location" label="项目地址" placeholder="请输入标题" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.projectName" label="项目名称" placeholder="请输入项目名称" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.location" label="项目地址" placeholder="请输入项目地址" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.realname" label="姓名" placeholder="请输入姓名" required :rules="[{ required:true }]"/> | <van-field v-model="form.realname" label="姓名" placeholder="请输入姓名" required :rules="[{ required:true }]"/> | ||||
<van-field v-model="form.phone" label="联系电话" placeholder="请输入联系电话" required :rules="[{ required:true }]"/> | <van-field v-model="form.phone" label="联系电话" placeholder="请输入联系电话" required :rules="[{ required:true }]"/> | ||||
<van-field v-model="form.projectContent" label="项目详情" type="textarea" autosize placeholder="请输入咨询内容" required :rules="[{ required:true }]"/> | |||||
<van-field v-model="form.projectContent" label="项目详情" type="textarea" autosize placeholder="请输入项目详情" required :rules="[{ required:true }]"/> | |||||
<van-field name="uploader" label="上传相关附件" required :rules="[{ required:true }]"> | |||||
<template #input> | |||||
<van-uploader :after-read="afterRead" :before-delete="deleteFile" v-model="fileList" multiple :max-count="5" /> | |||||
</template> | |||||
</van-field> | |||||
<div class="submit"> | <div class="submit"> | ||||
<van-button round block type="info" color="#007E72" native-type="submit">发布</van-button> | <van-button round block type="info" color="#007E72" native-type="submit">发布</van-button> | ||||
</div> | </div> | ||||
@@ -38,7 +45,7 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import { getMember , userDemand , updateCommunicate , selectCommunicate } from "@/api/user/index"; | |||||
import { getMember , userDemand , updateDemand , selectDemand , base64Attach , showImg , deleteUserImg} from "@/api/user/index"; | |||||
import { getInfo } from "@/api/login/index"; | import { getInfo } from "@/api/login/index"; | ||||
import {Dialog} from "vant"; | import {Dialog} from "vant"; | ||||
export default { | export default { | ||||
@@ -50,6 +57,7 @@ export default { | |||||
value: '', | value: '', | ||||
showPicker: false, | showPicker: false, | ||||
columns:['供应','需求'], | columns:['供应','需求'], | ||||
fileList:[], | |||||
form:{ | form:{ | ||||
projectName:'', | projectName:'', | ||||
location:'', | location:'', | ||||
@@ -58,7 +66,16 @@ export default { | |||||
projectContent:'', | projectContent:'', | ||||
logintime:'', | logintime:'', | ||||
deptId:100, | deptId:100, | ||||
} | |||||
supplyDemandType:'' | |||||
}, | |||||
file:{ | |||||
tableName:'t_transaction_supply_demand', | |||||
tableId:'', | |||||
files:[], | |||||
fileType:'', | |||||
bizPath:'transaction' | |||||
}, | |||||
upLoadList:[] | |||||
}; | }; | ||||
}, | }, | ||||
created() { | created() { | ||||
@@ -73,10 +90,29 @@ export default { | |||||
} | } | ||||
}, | }, | ||||
methods: { | methods: { | ||||
afterRead(file) { | |||||
// 此时可以自行将文件上传至服务器 | |||||
for ( var i = 0 ; i < this.fileList.length ; i++){ | |||||
if(this.fileList[i].url == undefined&&this.fileList!='') { | |||||
this.fileList[i] = {url:this.fileList[i].content, id: '', isImage: true}; | |||||
} | |||||
} | |||||
}, | |||||
deleteFile(elIndex){ | |||||
// deleteUserImg(elIndex.id).then(response => {}); | |||||
if(elIndex.id != ''){ | |||||
deleteUserImg(elIndex.id).then(response => {}); | |||||
} | |||||
return (file, name) => { | |||||
let fileIndex = name.index | |||||
this.fileList[elIndex].splice(fileIndex, 1) | |||||
this.upLoadList[elIndex].splice(fileIndex, 1) | |||||
} | |||||
}, | |||||
onConfirm(value, index) { | onConfirm(value, index) { | ||||
this.value = value; | this.value = value; | ||||
this.showPicker = false; | this.showPicker = false; | ||||
Toast(`当前值:${value}, 当前索引:${index}`); | |||||
this.form.supplyDemandType = index + 1 ; | |||||
}, | }, | ||||
getInfo(){ | getInfo(){ | ||||
getInfo().then(response => { | getInfo().then(response => { | ||||
@@ -88,46 +124,68 @@ export default { | |||||
}); | }); | ||||
}, | }, | ||||
getInteraction(){ | getInteraction(){ | ||||
selectCommunicate(this.$route.query.id).then(response => { | |||||
this.form.content = response.data.content; | |||||
this.form.title = response.data.title; | |||||
this.form.realname = response.data.realname; | |||||
this.form.phone = response.data.phone; | |||||
this.form.id = this.$route.query.id; | |||||
selectDemand(this.$route.query.id).then(response => { | |||||
this.form.projectName = response.data.projectName; | |||||
this.form.location = response.data.location; | |||||
this.form.projectContent = response.data.projectContent; | |||||
this.form.realname = response.data.realname; | |||||
this.form.phone = response.data.phone; | |||||
this.form.id = this.$route.query.id; | |||||
this.form.supplyDemandType = response.data.supplyDemandType; | |||||
this.getDicts("supply_demand_type").then(res => { | |||||
this.value = this.selectDictLabel(res.data,response.data.supplyDemandType); | |||||
}); | |||||
showImg(response.data.id).then(responseSecond => { | |||||
for (var i = 0 ; i < responseSecond.data.length ; i++){ | |||||
this.fileList.push({url:this.global.severApi+responseSecond.data[i].fileUrl,id:responseSecond.data[i].id}) | |||||
} | |||||
}); | |||||
}); | }); | ||||
}, | }, | ||||
submitInteraction(){ | submitInteraction(){ | ||||
this.form.logintime = this.getNowFormatDate(); | this.form.logintime = this.getNowFormatDate(); | ||||
if(this.$route.query.type == 'update'){ | if(this.$route.query.type == 'update'){ | ||||
updateCommunicate(this.form).then(response => { | |||||
if (response.code == 200){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '修改成功', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}).then(() => { | |||||
self.location=document.referrer; | |||||
}) | |||||
this.file.tableId = this.$route.query.id ; | |||||
updateDemand(this.form).then(response => { | |||||
for (var i = 0 ; i < this.fileList.length ; i++){ | |||||
if(this.fileList[i].url.indexOf('http://') == -1&&this.fileList!=''){ | |||||
this.file.files.push(this.fileList[i].url); | |||||
} | |||||
} | } | ||||
base64Attach(this.file).then(response => { | |||||
if (response.code == 200){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '修改成功', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}).then(() => { | |||||
self.location=document.referrer; | |||||
}) | |||||
} | |||||
}); | |||||
}); | }); | ||||
}else{ | }else{ | ||||
userDemand(this.form).then(response => { | userDemand(this.form).then(response => { | ||||
if (response.code == 200){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '发布成功', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}).then(() => { | |||||
self.location=document.referrer; | |||||
}) | |||||
this.file.tableId = response.data; | |||||
for(var i = 0 ; i < this.fileList.length ; i++){ | |||||
this.file.files.push(this.fileList[i].url); | |||||
} | } | ||||
base64Attach(this.file).then(response => { | |||||
if (response.code == 200){ | |||||
Dialog.confirm({ | |||||
title: '系统提示', | |||||
message: '发布成功', | |||||
confirmButtonText: '确定', | |||||
showCancelButton:false | |||||
}).then(() => { | |||||
self.location=document.referrer; | |||||
}) | |||||
} | |||||
}); | |||||
}); | }); | ||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
}; | }; | ||||
</script> | </script> | ||||
@@ -137,10 +195,11 @@ export default { | |||||
background-color: #FFF; | background-color: #FFF; | ||||
} | } | ||||
.submit{ | .submit{ | ||||
position: absolute; | |||||
position: fixed; | |||||
bottom: 5%; | bottom: 5%; | ||||
width: 90%; | width: 90%; | ||||
left: 5%; | left: 5%; | ||||
background-color: #FFFFFF; | |||||
p{ | p{ | ||||
text-align: center; | text-align: center; | ||||
margin-bottom: 0.2rem; | margin-bottom: 0.2rem; | ||||