Conflicts: config/index.jswulanhaote
| @@ -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", | ||||
| @@ -5662,6 +5676,11 @@ | |||||
| "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", | ||||
| "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" | ||||
| }, | }, | ||||
| "jquery": { | |||||
| "version": "3.6.0", | |||||
| "resolved": "https://registry.npm.taobao.org/jquery/download/jquery-3.6.0.tgz?cache=0&sync_timestamp=1614705639458&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjquery%2Fdownload%2Fjquery-3.6.0.tgz", | |||||
| "integrity": "sha1-xyoJ8Vwb3OFC9J2/EXC9+K2sJHA=" | |||||
| }, | |||||
| "js-base64": { | "js-base64": { | ||||
| "version": "2.6.4", | "version": "2.6.4", | ||||
| "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", | "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", | ||||
| @@ -6301,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", | ||||
| @@ -9759,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,6 +11,8 @@ | |||||
| }, | }, | ||||
| "dependencies": { | "dependencies": { | ||||
| "axios": "^0.21.1", | "axios": "^0.21.1", | ||||
| "jquery": "^3.6.0", | |||||
| "global": "^4.4.0", | |||||
| "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" | ||||
| @@ -1,6 +1,46 @@ | |||||
| <template> | <template> | ||||
| <div class="app-container" @touchmove.prevent> | |||||
| <div class="app-container"> | |||||
| <div class="map_area"></div> | <div class="map_area"></div> | ||||
| <!--列表 定位--> | |||||
| <div class="rightIcon_wrap"> | |||||
| <div class="positioning_wrap"> | |||||
| <div class="icon"></div> | |||||
| </div> | |||||
| <div class="selectionIcon_wrap" @click="selectionPush"> | |||||
| <div class="icon"></div> | |||||
| <div class="text">列表</div> | |||||
| </div> | |||||
| </div> | |||||
| <!--列表拉取详情--> | |||||
| <div class="homesteadList_wrap"> | |||||
| <div class="title_m"> | |||||
| <div class="more_icon" @click="homesteadListShrink"></div> | |||||
| <div class="name">宅基地列表</div> | |||||
| </div> | |||||
| <div class="main_m"> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="name_text">孙全礼</div> | |||||
| <div class="square_text">80㎡</div> | |||||
| <div class="operation_mian"> | |||||
| <div class="describe yph">已盘活</div> | |||||
| </div> | |||||
| </div> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="name_text">杜永俭</div> | |||||
| <div class="square_text">130㎡</div> | |||||
| <div class="operation_mian"> | |||||
| <div class="describe dlzdph">待流转待盘活</div> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="footerBtn_wrap"> | |||||
| <div class="options active">农房</div> | |||||
| <div class="options">农地</div> | |||||
| </div> | |||||
| </div> | |||||
| <!--选择地址--> | <!--选择地址--> | ||||
| <div class="address_wrap"> | <div class="address_wrap"> | ||||
| <div class="address_item"> | <div class="address_item"> | ||||
| @@ -29,16 +69,45 @@ | |||||
| </div> | </div> | ||||
| <div class="address_item"> | <div class="address_item"> | ||||
| <div class="portrait"></div> | <div class="portrait"></div> | ||||
| <div class="name">南郊村南郊村</div> | |||||
| <div class="name">南郊村</div> | |||||
| </div> | </div> | ||||
| <div class="address_item more"> | <div class="address_item more"> | ||||
| <div class="portrait"></div> | <div class="portrait"></div> | ||||
| <div class="name"></div> | |||||
| <div class="name" @click="addressPush"></div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <!--搜索栏目--> | <!--搜索栏目--> | ||||
| <div class="searchBar_wrap"> | <div class="searchBar_wrap"> | ||||
| <div class="actionBar_wrap" v-if="searchBarOperVisbile"> | |||||
| <div class="m_list"> | |||||
| <div class="tensile active"><div class="icon"></div></div> | |||||
| </div> | |||||
| <div class="m_list"> | |||||
| <div class="positioning"> | |||||
| <div class="icon"></div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="m_list"> | |||||
| <div class="spacing"> | |||||
| <div class="icon"></div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="m_list"> | |||||
| <div class="scale"> | |||||
| <div class="icon"></div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="m_list"> | |||||
| <div class="closes gray" @click="searchBarOperFun('false')"> | |||||
| <div class="icon"></div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="m_list"> | |||||
| <div class="correct"></div> | |||||
| </div> | |||||
| </div> | |||||
| <div class="searchBar_area"> | <div class="searchBar_area"> | ||||
| <div class="bar_icon"></div> | <div class="bar_icon"></div> | ||||
| <div class="bar_ipt"> | <div class="bar_ipt"> | ||||
| @@ -46,7 +115,7 @@ | |||||
| </div> | </div> | ||||
| <div class="bar_text">搜索</div> | <div class="bar_text">搜索</div> | ||||
| </div> | </div> | ||||
| <div class="searchBar_more"></div> | |||||
| <div class="searchBar_more" @click="searchBarOperFun('true')"></div> | |||||
| </div> | </div> | ||||
| <!--点击房地-显示的搜索---> | <!--点击房地-显示的搜索---> | ||||
| @@ -181,122 +250,237 @@ | |||||
| <div class="landHomesteadEdit_wrap"> | <div class="landHomesteadEdit_wrap"> | ||||
| <div class="content_mian"> | <div class="content_mian"> | ||||
| <div class="info_title">录入宗地信息</div> | <div class="info_title">录入宗地信息</div> | ||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s50 mr50"> | |||||
| <div class="title_m">农房编号</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="请输入农房编号" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| <div class="flex_main"> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s50 mr50"> | |||||
| <div class="title_m">农房编号</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="农房编号" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s50"> | |||||
| <div class="title_m">房屋所有人名称</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="房屋所有人名称" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="number_s50"> | |||||
| <div class="title_m">房屋所有人名称</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="请输入房屋所有人名称" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s60 mr50"> | |||||
| <div class="title_m">地址</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="地址" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s40"> | |||||
| <div class="title_m">农房权属</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="农房权属" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| /> | |||||
| </van-popup> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s60 mr50"> | |||||
| <div class="title_m">地址</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="请输入地址" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">是否有审批手续</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="审批手续" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| /> | |||||
| </van-popup> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">建筑面积</div> | |||||
| <div class="input_m about"> | |||||
| <span class="about_symbol">≈</span> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="建筑面积" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s30"> | |||||
| <div class="title_m">现状情况</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="现状情况" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| /> | |||||
| </van-popup> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="number_s40"> | |||||
| <div class="title_m">农房权属</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="选择农房权属" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s50 mr50"> | |||||
| <div class="title_m">房屋所有权证号</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="房屋所有权证号" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s50"> | |||||
| <div class="title_m">土地证号</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="土地证号" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | /> | ||||
| </van-popup> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">是否有审批手续</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="审批手续" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">土地性质</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="土地性质" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | /> | ||||
| </van-popup> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">土地面积</div> | |||||
| <div class="input_m about"> | |||||
| <span class="about_symbol">≈</span> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="土地面积" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s30"> | |||||
| <div class="title_m">是否有流转意向</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="是否有流转意向" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| /> | |||||
| </van-popup> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="number_s35 mr50"> | |||||
| <div class="title_m">建筑面积</div> | |||||
| <div class="input_m about"> | |||||
| <span class="about_symbol">≈</span> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="建筑面积" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s50 mr50"> | |||||
| <div class="title_m">租赁人</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="租赁人" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="number_s50"> | |||||
| <div class="title_m">租赁年限</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="租赁年限" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="number_s30"> | |||||
| <div class="title_m">现状情况</div> | |||||
| <div class="input_m select"> | |||||
| <i class="dropDown_icon"></i> | |||||
| <van-field | |||||
| v-model="message" | |||||
| readonly | |||||
| clickable | |||||
| name="picker" | |||||
| placeholder="现状情况" | |||||
| class="landHomesteadEdit_input" | |||||
| @click="showPicker = true" | |||||
| /> | |||||
| <van-popup v-model="showPicker" position="bottom"> | |||||
| <van-picker | |||||
| show-toolbar | |||||
| :columns="columns" | |||||
| @confirm="onConfirm" | |||||
| @cancel="showPicker = false" | |||||
| <!--1--> | |||||
| <div class="flex_block"> | |||||
| <div class="number_s100"> | |||||
| <div class="title_m">租赁人</div> | |||||
| <div class="input_m"> | |||||
| <van-field | |||||
| v-model="message" | |||||
| placeholder="租赁人" | |||||
| class="landHomesteadEdit_input" | |||||
| /> | /> | ||||
| </van-popup> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <!--2--> | |||||
| <div class="uploadPicturesFlex_block"> | |||||
| <div class="title_m">上传图片</div> | |||||
| <div class="main_m"> | |||||
| <van-uploader v-model="fileList" multiple :max-count="2" /> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -306,21 +490,85 @@ | |||||
| <div class="save">保存</div> | <div class="save">保存</div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <!--农地农房选择--> | |||||
| <div class="farmlandEditSwitch_wrap"> | |||||
| <div class="mains"> | |||||
| <div class="close_btn"></div> | |||||
| <div class="farmhouse"> | |||||
| <div class="icons"></div> | |||||
| <p class="names">农房</p> | |||||
| </div> | |||||
| <div class="farmland"> | |||||
| <div class="icons"></div> | |||||
| <p class="names">农地</p> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </div> | </div> | ||||
| </template> | </template> | ||||
| <script> | <script> | ||||
| import $ from "jquery"; | |||||
| export default { | export default { | ||||
| name: "homesteadLogin", | name: "homesteadLogin", | ||||
| data() { | data() { | ||||
| return { | return { | ||||
| //搜索栏目-操作栏显隐 | |||||
| searchBarOperVisbile: false, | |||||
| //以下删 | |||||
| message: "", | message: "", | ||||
| showPicker: false, | showPicker: false, | ||||
| columns: ["杭州", "宁波", "温州", "嘉兴", "湖州"], | columns: ["杭州", "宁波", "温州", "嘉兴", "湖州"], | ||||
| fileList: [], | |||||
| }; | }; | ||||
| }, | }, | ||||
| mounted() {}, | mounted() {}, | ||||
| methods: { | methods: { | ||||
| searchBarOperFun(statue) { | |||||
| if (statue == "true") { | |||||
| this.searchBarOperVisbile = true; | |||||
| } else { | |||||
| this.searchBarOperVisbile = false; | |||||
| } | |||||
| }, | |||||
| /*右侧列表 --展开收缩*/ | |||||
| selectionPush() { | |||||
| $(".homesteadList_wrap").animate( | |||||
| { | |||||
| right: "0", | |||||
| }, | |||||
| 300 | |||||
| ); | |||||
| }, | |||||
| homesteadListShrink() { | |||||
| $(".homesteadList_wrap").animate( | |||||
| { | |||||
| right: "-300px", | |||||
| }, | |||||
| 300 | |||||
| ); | |||||
| }, | |||||
| /*点击顶部村庄--伸缩样式*/ | |||||
| addressPush() { | |||||
| let addressWrapBlock = $(".address_wrap .address_item.more .name"); | |||||
| let lefValue = 0; | |||||
| if (addressWrapBlock.hasClass("shrink")) { | |||||
| addressWrapBlock.removeClass("shrink"); | |||||
| lefValue = "-40px"; | |||||
| } else { | |||||
| addressWrapBlock.addClass("shrink"); | |||||
| lefValue = "8px"; | |||||
| } | |||||
| $(".address_wrap").animate( | |||||
| { | |||||
| left: lefValue, | |||||
| }, | |||||
| 300 | |||||
| ); | |||||
| }, | |||||
| /*以下删*/ | |||||
| onConfirm(time) { | onConfirm(time) { | ||||
| this.message = time; | this.message = time; | ||||
| this.showPicker = false; | this.showPicker = false; | ||||
| @@ -333,6 +581,138 @@ export default { | |||||
| width: 100vw; | width: 100vw; | ||||
| height: 100vh; | height: 100vh; | ||||
| position: relative; | position: relative; | ||||
| .rightIcon_wrap { | |||||
| position: absolute; | |||||
| right: 16px; | |||||
| bottom: 160px; | |||||
| .selectionIcon_wrap { | |||||
| width: 74px; | |||||
| background: #fff; | |||||
| border-radius: 10px; | |||||
| padding: 14px 0; | |||||
| .icon { | |||||
| width: 38px; | |||||
| height: 38px; | |||||
| background: url("../../assets/images/homestead/selection_icon.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| margin: 0 auto 4px; | |||||
| } | |||||
| .text { | |||||
| font-size: 24px; | |||||
| text-align: center; | |||||
| } | |||||
| } | |||||
| .positioning_wrap { | |||||
| width: 74px; | |||||
| background: #fff; | |||||
| margin-bottom: 16px; | |||||
| border-radius: 10px; | |||||
| height: 74px; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中*/ | |||||
| .icon { | |||||
| width: 38px; | |||||
| height: 38px; | |||||
| background: url("../../assets/images/homestead/positioning_icon.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| margin: 0 auto; | |||||
| } | |||||
| } | |||||
| } | |||||
| .homesteadList_wrap { | |||||
| // display: none; | |||||
| display: flex; | |||||
| position: absolute; | |||||
| right: -536px; | |||||
| top: 20px; | |||||
| bottom: 160px; | |||||
| width: 536px; | |||||
| background: #fff; | |||||
| z-index: 999; | |||||
| border-top-left-radius: 15px; | |||||
| border-bottom-left-radius: 15px; | |||||
| flex-direction: column; | |||||
| .title_m { | |||||
| color: #333; | |||||
| line-height: 36px; | |||||
| padding: 20px 40px 32px; | |||||
| .name { | |||||
| font-size: 40px; | |||||
| line-height: 42px; | |||||
| height: 42px; | |||||
| } | |||||
| .more_icon { | |||||
| width: 38px; | |||||
| height: 38px; | |||||
| background: url("../../assets/images/homestead/selectionNext_icon.png") | |||||
| no-repeat; | |||||
| float: right; | |||||
| margin-top: 2px; | |||||
| } | |||||
| } | |||||
| .main_m { | |||||
| overflow-y: auto; | |||||
| padding: 0 40px; | |||||
| // height: 300px; | |||||
| flex: 1; | |||||
| .flex_block { | |||||
| height: 70px; | |||||
| display: flex; | |||||
| // justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| .name_text { | |||||
| font-size: 34px; | |||||
| flex: 1; | |||||
| } | |||||
| .square_text { | |||||
| font-size: 34px; | |||||
| flex: 0.8; | |||||
| } | |||||
| .operation_mian { | |||||
| flex: 0 0 150px; | |||||
| .describe { | |||||
| font-size: 20px; | |||||
| padding: 6px 12px; | |||||
| float: right; | |||||
| color: #fff; | |||||
| &.yph { | |||||
| background: #3cbf5b; | |||||
| border-radius: 30px; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .footerBtn_wrap { | |||||
| flex: 0 0 90px; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| .options { | |||||
| flex: 1; | |||||
| font-size: 38px; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| height: 90px; | |||||
| &:first-child { | |||||
| border-bottom-left-radius: 15px; | |||||
| } | |||||
| &.active { | |||||
| background: #3cbf5b; | |||||
| color: #fff; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .map_area { | .map_area { | ||||
| width: 100vw; | width: 100vw; | ||||
| height: 100vh; | height: 100vh; | ||||
| @@ -345,7 +725,8 @@ export default { | |||||
| position: fixed; | position: fixed; | ||||
| z-index: 9; | z-index: 9; | ||||
| top: 24px; | top: 24px; | ||||
| left: 16px; | |||||
| // left: 16px; | |||||
| left: -80px; | |||||
| display: flex; | display: flex; | ||||
| .address_item { | .address_item { | ||||
| display: flex; | display: flex; | ||||
| @@ -379,6 +760,9 @@ export default { | |||||
| width: 40px; | width: 40px; | ||||
| height: 40px; | height: 40px; | ||||
| padding: 0; | padding: 0; | ||||
| &.shrink { | |||||
| transform: rotate(180deg); | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| .address_suspension { | .address_suspension { | ||||
| @@ -403,8 +787,8 @@ export default { | |||||
| } | } | ||||
| } | } | ||||
| .searchBar_wrap { | .searchBar_wrap { | ||||
| display: none; | |||||
| // display: flex; | |||||
| // display: none; | |||||
| display: flex; | |||||
| position: fixed; | position: fixed; | ||||
| bottom: 0; | bottom: 0; | ||||
| left: 0; | left: 0; | ||||
| @@ -413,6 +797,117 @@ export default { | |||||
| background: #fff; | background: #fff; | ||||
| border-top-left-radius: 15px; | border-top-left-radius: 15px; | ||||
| border-top-right-radius: 15px; | border-top-right-radius: 15px; | ||||
| .actionBar_wrap { | |||||
| display: flex; | |||||
| position: absolute; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 100%; | |||||
| height: 100%; | |||||
| background: #fff; | |||||
| border-top-left-radius: 15px; | |||||
| border-top-right-radius: 15px; | |||||
| .m_list { | |||||
| flex: 1; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| .tensile, | |||||
| .positioning, | |||||
| .spacing, | |||||
| .scale { | |||||
| width: 76px; | |||||
| height: 72px; | |||||
| background: #ffffff; | |||||
| border-radius: 8px; | |||||
| box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.16); | |||||
| .icon { | |||||
| width: 76px; | |||||
| height: 72px; | |||||
| } | |||||
| &.active { | |||||
| background: #333; | |||||
| &.tensile { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/tensile_active.png") | |||||
| center center no-repeat; | |||||
| background-size: 38px 50px; | |||||
| } | |||||
| } | |||||
| &.positioning { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/positioning_active.png") | |||||
| center center no-repeat; | |||||
| background-size: 38px 48px; | |||||
| } | |||||
| } | |||||
| &.spacing { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/spacing_active.png") | |||||
| center center no-repeat; | |||||
| background-size: 46px 46px; | |||||
| } | |||||
| } | |||||
| &.scale { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/scale_active.png") | |||||
| center center no-repeat; | |||||
| background-size: 48px 48px; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .tensile { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/tensile.png") | |||||
| center center no-repeat; | |||||
| background-size: 38px 50px; | |||||
| } | |||||
| } | |||||
| .positioning { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/positioning.png") | |||||
| center center no-repeat; | |||||
| background-size: 38px 48px; | |||||
| } | |||||
| } | |||||
| .spacing { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/spacing.png") | |||||
| center center no-repeat; | |||||
| background-size: 46px 46px; | |||||
| } | |||||
| } | |||||
| .scale { | |||||
| .icon { | |||||
| background: url("../../assets/images/homestead/operation/scale.png") | |||||
| center center no-repeat; | |||||
| background-size: 48px 48px; | |||||
| } | |||||
| } | |||||
| .closes { | |||||
| background: url("../../assets/images/homestead/searchBar_close.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| width: 72px; | |||||
| height: 72px; | |||||
| &.gray { | |||||
| background: url("../../assets/images/homestead/searchBar_close_gray.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| } | |||||
| } | |||||
| .correct { | |||||
| background: url("../../assets/images/homestead/searchBar_save.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| width: 72px; | |||||
| height: 72px; | |||||
| } | |||||
| } | |||||
| } | |||||
| .searchBar_area { | .searchBar_area { | ||||
| flex: 1; | flex: 1; | ||||
| height: 80px; | height: 80px; | ||||
| @@ -690,7 +1185,8 @@ export default { | |||||
| } | } | ||||
| } | } | ||||
| .landHomesteadEdit_wrap { | .landHomesteadEdit_wrap { | ||||
| display: flex; | |||||
| display: none; | |||||
| // display: flex; | |||||
| position: absolute; | position: absolute; | ||||
| left: 0; | left: 0; | ||||
| bottom: 0; | bottom: 0; | ||||
| @@ -700,7 +1196,7 @@ export default { | |||||
| .content_mian { | .content_mian { | ||||
| flex: 1; | flex: 1; | ||||
| margin: 0 16px; | margin: 0 16px; | ||||
| padding: 28px 40px 28px 40px; | |||||
| padding: 28px 25px 28px 40px; | |||||
| background: #fff; | background: #fff; | ||||
| border-top-left-radius: 15px; | border-top-left-radius: 15px; | ||||
| border-top-right-radius: 15px; | border-top-right-radius: 15px; | ||||
| @@ -714,6 +1210,11 @@ export default { | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | align-items: center; /* 子元素相对父元素垂直居中 */ | ||||
| color: #333; | color: #333; | ||||
| } | } | ||||
| .flex_main { | |||||
| height: 890px; | |||||
| padding-right: 15px; | |||||
| overflow-y: auto; | |||||
| } | |||||
| .flex_block { | .flex_block { | ||||
| height: 100px; | height: 100px; | ||||
| margin-bottom: 20px; | margin-bottom: 20px; | ||||
| @@ -723,6 +1224,12 @@ export default { | |||||
| float: left; | float: left; | ||||
| flex-direction: column; | flex-direction: column; | ||||
| } | } | ||||
| .number_s100 { | |||||
| width: 100%; | |||||
| float: left; | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| } | |||||
| .number_s60 { | .number_s60 { | ||||
| // flex: 0.6; | // flex: 0.6; | ||||
| width: 60%; | width: 60%; | ||||
| @@ -805,6 +1312,20 @@ export default { | |||||
| padding-right: 50px; | padding-right: 50px; | ||||
| } | } | ||||
| } | } | ||||
| .uploadPicturesFlex_block { | |||||
| .title_m { | |||||
| font-size: 28px; | |||||
| flex: 0 0 50px; | |||||
| white-space: nowrap; | |||||
| text-overflow: ellipsis; | |||||
| overflow: hidden; | |||||
| word-break: break-all; | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| margin-bottom: 20px; | |||||
| } | |||||
| .main_m { | |||||
| } | |||||
| } | |||||
| } | } | ||||
| .footer_main { | .footer_main { | ||||
| flex: 0 0 120px; | flex: 0 0 120px; | ||||
| @@ -830,6 +1351,89 @@ export default { | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| .farmlandEditSwitch_wrap { | |||||
| display: none; | |||||
| width: 100vw; | |||||
| height: 100vh; | |||||
| background: url("../../assets/images/homestead/farmlandEditSwitch_bg.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| position: absolute; | |||||
| left: 0; | |||||
| top: 0; | |||||
| z-index: 1001; | |||||
| .mains { | |||||
| width: 544px; | |||||
| height: 480px; | |||||
| background: #fff; | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| top: 50%; | |||||
| margin: -272px 0 0 -240px; | |||||
| z-index: 1002; | |||||
| border-radius: 30px; | |||||
| padding: 0 30px; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| .close_btn { | |||||
| position: absolute; | |||||
| width: 28px; | |||||
| height: 28px; | |||||
| background: url("../../assets/images/homestead/farmlandEditSwitch_close.png") | |||||
| no-repeat; | |||||
| background-size: 100% 100%; | |||||
| right: 40px; | |||||
| top: 40px; | |||||
| } | |||||
| .farmhouse { | |||||
| flex: 1; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| } | |||||
| .farmland { | |||||
| flex: 1; | |||||
| display: flex; | |||||
| justify-content: center; /* 相对父元素水平居中 */ | |||||
| align-items: center; /* 子元素相对父元素垂直居中 */ | |||||
| } | |||||
| .farmhouse, | |||||
| .farmland { | |||||
| flex-direction: column; | |||||
| .icons { | |||||
| width: 146px; | |||||
| height: 146px; | |||||
| margin-bottom: 14px; | |||||
| } | |||||
| .names { | |||||
| font-size: 40px; | |||||
| color: #3cbf5b; | |||||
| } | |||||
| } | |||||
| .farmhouse { | |||||
| .icons { | |||||
| background: url("../../assets/images/homestead/nf.png") no-repeat; | |||||
| background-size: 100% 100%; | |||||
| } | |||||
| } | |||||
| .farmland { | |||||
| .icons { | |||||
| background: url("../../assets/images/homestead/nd.png") no-repeat; | |||||
| background-size: 100% 100%; | |||||
| } | |||||
| } | |||||
| // <div class="farmhouse"> | |||||
| // <div class="icons"></div> | |||||
| // <p class="names">农房</p> | |||||
| // </div> | |||||
| // <div class="farmland"> | |||||
| // <div class="icons"></div> | |||||
| // <p class="names">农地</p> | |||||
| // </div> | |||||
| } | |||||
| } | |||||
| } | } | ||||
| ::-webkit-scrollbar { | ::-webkit-scrollbar { | ||||
| @@ -837,23 +1441,23 @@ export default { | |||||
| } | } | ||||
| ::-webkit-scrollbar:vertical { | ::-webkit-scrollbar:vertical { | ||||
| width: 8px; | |||||
| border-radius: 8px; | |||||
| width: 10px; | |||||
| border-radius: 10px; | |||||
| } | } | ||||
| ::-webkit-scrollbar:horizontal { | ::-webkit-scrollbar:horizontal { | ||||
| height: 8px; | |||||
| border-radius: 8px; | |||||
| height: 10px; | |||||
| border-radius: 10px; | |||||
| } | } | ||||
| ::-webkit-scrollbar-thumb { | ::-webkit-scrollbar-thumb { | ||||
| background-color: #9f9f9f; | |||||
| border-radius: 8px; | |||||
| border: 1px solid #ffffff; | |||||
| background-color: #eee; | |||||
| border-radius: 10px; | |||||
| border: 3px solid #ffffff; | |||||
| } | } | ||||
| ::-webkit-scrollbar-track { | ::-webkit-scrollbar-track { | ||||
| border-radius: 8px; | |||||
| border-radius: 10px; | |||||
| background-color: #ffffff; | background-color: #ffffff; | ||||
| } | } | ||||
| </style> | </style> | ||||
| @@ -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; | ||||