From 978b3ffeb7ce60eaa3f0de7b1bb495a31ab14350 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Thu, 16 Nov 2023 22:59:26 +0800 Subject: [PATCH 01/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E9=A1=B5=E8=8E=B7=E5=8F=96=E8=A1=8C=E4=B8=9A=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/publish/publishTransfer/publishTransfer.vue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index de83147..757e576 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -1,11 +1,12 @@ @@ -22,6 +22,7 @@ data() { return { radius: '', + showShop: false, scaleM: [{ scale: 3, milo: 1000000 @@ -82,29 +83,40 @@ } ], scale: '', - lat: '30.48772', //纬度 - lng: '104.080145', //经度 - marker: [{ //用户当前位置 - id: 1, - latitude: 30.48772, - longitude: 104.080145, - iconPath: '../../../static/map/sp_icon_dw.png', - width: '58rpx', - height: '72rpx', - rotate: 0, - alpha: 1 - }, - //周围标记点 - { - id: 2, - latitude: 30.488573, - longitude: 104.081248, - // iconPath: '../../../static/map/sp_icon_dw.png', - width: '58rpx', - height: '72rpx', - rotate: 0, - alpha: 1 - } + lat: uni.getStorageSync('latitude'), //纬度 + lng: uni.getStorageSync('longitude'), //经度 + marker: [ + // { //用户当前位置 + // id: 1, + // latitude: uni.getStorageSync('latitude'), + // longitude: uni.getStorageSync('longitude'), + // // iconPath: '../../../static/map/sp_icon_hdw.png', + // width: '58rpx', + // height: '72rpx', + // rotate: 0, + // alpha: 1 + // }, + // { //用户当前位置 + // id: 2, + // latitude: 30.48772, + // longitude: 104.080145, + // iconPath: '../../../static/map/sp_icon_dw.png', + // width: '58rpx', + // height: '72rpx', + // rotate: 0, + // alpha: 1 + // }, + // //周围标记点 + // { + // id: 2, + // latitude: 30.488573, + // longitude: 104.081248, + // // iconPath: '../../../static/map/sp_icon_dw.png', + // width: '58rpx', + // height: '72rpx', + // rotate: 0, + // alpha: 1 + // } ], shopList: { shopid: 1, @@ -149,9 +161,9 @@ }, watch: { scale(newVal, oldVal) { - console.log('thisscale',newVal, Math.round(newVal)); - let ra='' - this.scaleM.forEach(item => { + console.log('thisscale', newVal, Math.round(newVal)); + let ra = '' + this.scaleM.forEach(item => { if (item.scale == Math.round(newVal)) { ra = item.milo } @@ -168,35 +180,62 @@ } }, created() { - this.getMapList() + // this.getMapList() }, methods: { + getDetail(type, id) { + this.$api.getShopDetail(type, id).then(res => { + console.log('详情', res); + const data = res.data.data + if (res.data.code == 1) { + this.shopList = { + shopid: 1, + imageUrl: this.$api.imgUrl + data.pics, + title: data.tt, + promotionNum: data.num, + price: data.zujin, + date: '2023-11-02', + pos: data.area1, + exactPos: data.address, + sqr: data.mianji, + zrfText: "转让费:" + data.zhuanrangfei, + category: data.trade, + uname: data.lianxiren, + phoneNum: data.mobile, + } + // data.pics = [this.$api.imgUrl + data.pics] + // this.shopInfo = data + } + }) + }, handleRegionChange(e) { console.log('地图缩放层级变化, 只能监听拖拽, 不能监听缩放', e); }, getMapList(radius) { - console.log('this.radius',radius); + console.log('longitude', uni.getStorageSync('longitude')); + console.log('latitude', uni.getStorageSync('latitude')); const realData = { longitude: uni.getStorageSync('longitude'), latitude: uni.getStorageSync('latitude'), - radius: 100 + radius: radius * 1000 } + console.log('realData.radius', realData.radius); const mockData = { longitude: 23.40, latitude: 116.38, radius: 1111111111 } - this.$api.getMap(mockData).then(res => { + this.$api.getMap(realData).then(res => { console.log('getMap', res); let obj = {} let arr = [] - if (res.statusCode === 200) { + if (res.data.code == 1) { res.data.data.forEach(item => { obj = { id: parseInt(item.id), latitude: item.lat, longitude: item.lng, - // iconPath: '../../../static/map/sp_icon_dw.png', + iconPath: '../../../static/map/sp_icon_dw.png', width: '58rpx', height: '72rpx', rotate: 0, @@ -204,7 +243,18 @@ } arr.push(obj) }) - // this.marker=arr + this.marker = [{ //用户当前位置 + id: 1, + latitude: realData.latitude, + longitude: realData.longitude, + iconPath: '../../../static/map/sp_icon_hdw.png', + width: '58rpx', + height: '72rpx', + rotate: 0, + alpha: 1 + }, + ...arr, + ] console.log('this.marker', this.marker); } }) @@ -212,12 +262,18 @@ // 图标点击 markerClick(e) { console.log('标记点击', e); + this.showShop = true let markerId = e.markerId; //点击标记点, 获取id, 查询店铺详情, 展示在下方 + this.getDetail(1, markerId) this.marker.forEach(item => { if (markerId === item.id) { - item.iconPath = "" + item.iconPath = "../../../static/map/sp_icon_hdw.png" + item.width = '58rpx' + item.height = '72rpx' } else { item.iconPath = "../../../static/map/sp_icon_dw.png" + item.width = '58rpx' + item.height = '72rpx' } }) }, From bfc5ce65656f292178fc7013b91d1e64da0a4fdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=93=E6=B4=81?= <209192278@qq.com> Date: Sat, 18 Nov 2023 14:55:02 +0800 Subject: [PATCH 04/20] =?UTF-8?q?=E9=82=93=E6=B4=81=20:=20=E5=9C=B0?= =?UTF-8?q?=E5=9B=BE=E5=95=86=E9=93=BA=E5=B1=95=E7=A4=BA=E7=BB=86=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/index/map/map.vue | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/pages/index/map/map.vue b/pages/index/map/map.vue index b2f59ce..dcb29b4 100644 --- a/pages/index/map/map.vue +++ b/pages/index/map/map.vue @@ -188,21 +188,22 @@ console.log('详情', res); const data = res.data.data if (res.data.code == 1) { - this.shopList = { - shopid: 1, - imageUrl: this.$api.imgUrl + data.pics, - title: data.tt, - promotionNum: data.num, - price: data.zujin, - date: '2023-11-02', - pos: data.area1, - exactPos: data.address, - sqr: data.mianji, - zrfText: "转让费:" + data.zhuanrangfei, - category: data.trade, - uname: data.lianxiren, - phoneNum: data.mobile, - } + this.shopList = data + // { + // shopid: 1, + // pics: this.$api.imgUrl + data.pics, + // tt: data.tt, + // num: data.num, + // zujin: data.zujin, + // date: data.update_time, + // area1: data.area1, + // address: data.address, + // mianji: data.mianji, + // zhuanrangfei: "转让费:" + data.zhuanrangfei, + // trade: data.trade, + // lianxiren: data.lianxiren, + // mobile: data.mobile, + // } // data.pics = [this.$api.imgUrl + data.pics] // this.shopInfo = data } From 7d26156f1502fc485e3e6eca3b312e9dbdee7046 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 15:48:27 +0800 Subject: [PATCH 05/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E8=BD=AC=E8=AE=A9=E6=8E=A5=E5=8F=A3=E7=BB=91=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../publishTransfer/publishTransfer.vue | 102 +++++++++--------- 1 file changed, 52 insertions(+), 50 deletions(-) diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index 05c6906..222cba0 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -2,8 +2,8 @@ - - 发布房源图片({{ShopInfomation.count}}/5) + + 发布房源图片(0/5) @@ -19,45 +19,45 @@ - - + - - {{form.trade}} + + {{form.business}} 请选择店铺行业 + v-model="form.business" @confirm="tradeConfirm"> - - {{form.karma}} + + {{form.commercial}} 请选择店铺业态 + v-model="form.commercial" @confirm="karmaConfirm"> - - + + - - + + - - + + - - + + - - + + @@ -72,25 +72,23 @@ data() { return { regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], - ShopInfomation: { - city: '', - area: '', - count: 0, - - }, form: { title: '', region: '', - place: '', - trade: '', - karma: '', - size: '', + address: '', + business: '', + commercial: '', + area: '', rent: '', - sell: '', - name: '', - call: '', - introduce: '' + transferFee: '', + mobile: '', + content: '', + images:[], + longitude:'', + latitude:'', + id:'', + }, Classcolumns: [], ClassCheckId:'', @@ -105,37 +103,37 @@ message: '请输入标题', trigger: ['change', 'blur'] }], - 'trade': [{ + 'business': [{ required: true, message: '请选择行业', - trigger: ['change', 'blur'] + trigger: ['change'] }], 'region': [{ required: true, message: '请选择地区', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'karma': [{ + 'commercial': [{ required: true, message: '请选择业态', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'name': [{ + 'contact': [{ required: true, message: '请输入姓名', trigger: ['change', 'blur'] }], - 'sell': [{ + 'transferFee': [{ required: true, message: '请输入转让金', trigger: ['change', 'blur'] }], - 'introduce': [{ + 'content': [{ required: true, message: '请输入介绍', trigger: ['change', 'blur'] }], - 'size': [{ + 'area': [{ required: true, message: '请输入面积', trigger: ['change', 'blur'] @@ -145,12 +143,12 @@ message: '请输入租金', trigger: ['change', 'blur'] }], - 'place': [{ + 'address': [{ required: true, message: '请输入地址', trigger: ['change', 'blur'] }], - 'call':[{ + 'mobile':[{ required: true, message: '请输入电话号码', }, @@ -179,7 +177,9 @@ this.$refs.uForm.validate().then(res => { console.log("提交表单信息:" + JSON.stringify(this.form)) uni.$u.toast('发布成功') - // 调用服务端入表接口W + this.$api.publishTransfer(this.form).then(res => { + console.log(res); + }) }).catch(errors => { console.log("失败信息:" + JSON.stringify(errors)) // uni.$u.toast('校验失败') @@ -196,8 +196,10 @@ that.$api.key, success(res) { console.log('diz', res.data.result.location); - console.log('lat', res.data.result.location.lat); - console.log('lng', res.data.result.location.lng); + // console.log('lat', res.data.result.location.lat); + that.form.latitude = res.data.result.location.lat + // console.log('lng', res.data.result.location.lng); + that.form.longitude = res.data.result.location.lng }, fail(err) { console.log('请求区域失败:', err); @@ -206,7 +208,7 @@ }, tradeConfirm(e){ this.show2 = false - this.form.trade = e.value[0] + this.form.business = e.value[0] this.ClassCheckId = this.pid[e.indexs[0]] this.$api.getClassList(this.ClassCheckId).then(res => { // console.log(res); @@ -217,7 +219,7 @@ }, karmaConfirm(e){ this.show3 = false - this.form.karma = e.value[0] + this.form.commercial = e.value[0] }, regionConfirm(e){ this.show1 = false From 3ea952742a877a2c5909d465893be59be0ecc116 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 15:49:18 +0800 Subject: [PATCH 06/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=BA=97?= =?UTF-8?q?=E9=93=BA=E8=BD=AC=E8=AE=A9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/service/request.js b/service/request.js index ba79d04..b34e004 100644 --- a/service/request.js +++ b/service/request.js @@ -239,6 +239,13 @@ const apiService = { resolve(service.post(url)) }) }, + //发布店铺转让 + publishTransfer(data){ + const url = `/shop/transfer/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, } export { apiService, From 54179757231c40cfea974b6d259df11dd9a687c4 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:15:14 +0800 Subject: [PATCH 07/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E5=BA=97=E9=93=BA=E8=BD=AC=E8=AE=A9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/service/request.js b/service/request.js index b34e004..d122fbb 100644 --- a/service/request.js +++ b/service/request.js @@ -1,5 +1,4 @@ const serverHost = 'https://spsp.feashow.com/api' //http://xx.xxx.xx - const service = { get(url, data) { const header = {} @@ -239,6 +238,21 @@ const apiService = { resolve(service.post(url)) }) }, + //招募合伙 + toBePartner(data){ + const url = `/center/partner` + return new Promise((resolve,reject) => { + console.log(data); + resolve(service.post(url,data)) + }) + }, + //获取商铺列表 + getShopList(query){ + const url = `/shop/alllist${query}` + return new Promise((resolve,reject) => { + resolve(service.get(url)) + }) + }, //发布店铺转让 publishTransfer(data){ const url = `/shop/transfer/` From a1ed1ec45d14e9afdd69f3e8b6cd1f6916864c61 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:19:40 +0800 Subject: [PATCH 08/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E5=BA=97=E9=93=BA=E8=BD=AC=E8=AE=A9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 7 ------- 1 file changed, 7 deletions(-) diff --git a/service/request.js b/service/request.js index d122fbb..e66473b 100644 --- a/service/request.js +++ b/service/request.js @@ -246,13 +246,6 @@ const apiService = { resolve(service.post(url,data)) }) }, - //获取商铺列表 - getShopList(query){ - const url = `/shop/alllist${query}` - return new Promise((resolve,reject) => { - resolve(service.get(url)) - }) - }, //发布店铺转让 publishTransfer(data){ const url = `/shop/transfer/` From 13861d2343145e0e6945a7b6a2e76b64323f948a Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:28:26 +0800 Subject: [PATCH 09/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E9=A1=B5=E5=A4=84=E7=90=86=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/my/my.vue | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pages/my/my.vue b/pages/my/my.vue index b3583a0..b6b1059 100644 --- a/pages/my/my.vue +++ b/pages/my/my.vue @@ -105,6 +105,18 @@ } }) } + //---------页面调用接口示例------------ + getInfo() { + this.$api.getUser().then(res => { + var data = res.data.data + if (data) { + console.log(data); + this.src = this.$api.imgUrl + data.avatar + this.username = data.nickname + this.account = data.sn + } + }) + } } } From 066470b4e6980d238f0a89f1c8fddc19cf70b31f Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:34:18 +0800 Subject: [PATCH 10/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=A4=84?= =?UTF-8?q?=E7=90=86=E5=90=88=E5=B9=B6=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/service/request.js b/service/request.js index e66473b..1a1f005 100644 --- a/service/request.js +++ b/service/request.js @@ -1,4 +1,5 @@ const serverHost = 'https://spsp.feashow.com/api' //http://xx.xxx.xx + const service = { get(url, data) { const header = {} @@ -246,6 +247,14 @@ const apiService = { resolve(service.post(url,data)) }) }, + //获取商铺列表 + getShopList(query){ + const url = `/shop/alllist${query}` + return new Promise((resolve,reject) => { + resolve(service.get(url)) + }) + } + }, //发布店铺转让 publishTransfer(data){ const url = `/shop/transfer/` From 2ad16186de54d884639269097717107a9e0abefe Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:36:37 +0800 Subject: [PATCH 11/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=A4=84?= =?UTF-8?q?=E7=90=86=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/service/request.js b/service/request.js index 1a1f005..f94f20d 100644 --- a/service/request.js +++ b/service/request.js @@ -1,5 +1,4 @@ const serverHost = 'https://spsp.feashow.com/api' //http://xx.xxx.xx - const service = { get(url, data) { const header = {} @@ -253,15 +252,14 @@ const apiService = { return new Promise((resolve,reject) => { resolve(service.get(url)) }) - } }, //发布店铺转让 - publishTransfer(data){ - const url = `/shop/transfer/` - return new Promise((resolve, reject) => { - resolve(service.post(url, data)) - }) - }, + publishTransfer(data){ + const url = `/shop/transfer/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, } export { apiService, From b2cc582bba003e57b6cf6046ce3269aa59c390d8 Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 16:41:52 +0800 Subject: [PATCH 12/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=90=88?= =?UTF-8?q?=E5=B9=B6=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/request.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/service/request.js b/service/request.js index f94f20d..d122fbb 100644 --- a/service/request.js +++ b/service/request.js @@ -254,12 +254,12 @@ const apiService = { }) }, //发布店铺转让 - publishTransfer(data){ - const url = `/shop/transfer/` - return new Promise((resolve, reject) => { - resolve(service.post(url, data)) - }) - }, + publishTransfer(data){ + const url = `/shop/transfer/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, } export { apiService, From cbe7bdf60a91dc06e1918fcffdc780bdc69e9b0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=93=E6=B4=81?= <209192278@qq.com> Date: Sat, 18 Nov 2023 18:35:59 +0800 Subject: [PATCH 13/20] =?UTF-8?q?=E9=82=93=E6=B4=81=20:=20=E6=8B=9B?= =?UTF-8?q?=E5=8B=9F=E5=90=88=E4=BC=99=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/Partnerships/Partnerships.vue | 205 +++++++++++++----- pages/my/my.vue | 20 +- .../publishTransfer/publishTransfer.vue | 170 +++++++++++---- static/my/hz_bj.png | Bin 0 -> 18871 bytes static/my/wo_icon_hhr.png | Bin 0 -> 4324 bytes 5 files changed, 281 insertions(+), 114 deletions(-) create mode 100644 static/my/hz_bj.png create mode 100644 static/my/wo_icon_hhr.png diff --git a/pages/Partnerships/Partnerships.vue b/pages/Partnerships/Partnerships.vue index e9c6783..47b0602 100644 --- a/pages/Partnerships/Partnerships.vue +++ b/pages/Partnerships/Partnerships.vue @@ -1,90 +1,189 @@ - + \ No newline at end of file diff --git a/pages/my/my.vue b/pages/my/my.vue index 1815acf..d7fbc01 100644 --- a/pages/my/my.vue +++ b/pages/my/my.vue @@ -7,6 +7,8 @@ {{username}} + 账号:{{account}} @@ -47,6 +49,7 @@ src: 'https://cdn.uviewui.com/uview/album/2.jpg', account: '', username: '', + member: '', isLoad: true } }, @@ -102,19 +105,10 @@ if (data) { this.src = this.$api.imgUrl + data.avatar this.username = data.nickname + this.member = data.member this.account = data.sn - } - }) - } - //---------页面调用接口示例------------ - getInfo() { - this.$api.getUser().then(res => { - var data = res.data.data - if (data) { - console.log(data); - this.src = this.$api.imgUrl + data.avatar - this.username = data.nickname - this.account = data.sn + uni.setStorageSync("uid", data.user_id) + uni.setStorageSync("member", data.member) } }) } @@ -132,7 +126,7 @@ justify-content: center; align-items: center; flex-direction: column; - gap: 10rpx; + // gap: 10rpx; .profile-bgi { position: absolute; diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index 222cba0..8c88826 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -2,17 +2,22 @@ - - 发布房源图片(0/5) + + + + + 发布房源图片({{imageLength}}/5}) - - + - + {{form.region}} 请选择所属区域 - + @@ -23,14 +28,15 @@ - + {{form.business}} 请选择店铺行业 - + {{form.commercial}} @@ -38,8 +44,8 @@ - + @@ -48,7 +54,8 @@ - + @@ -71,6 +78,8 @@ export default { data() { return { + imageLength: '0', + fileList1: [], regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], form: { @@ -84,16 +93,16 @@ transferFee: '', mobile: '', content: '', - images:[], - longitude:'', - latitude:'', - id:'', - + images: [], + longitude: '', + latitude: '', + id: '', + }, Classcolumns: [], - ClassCheckId:'', + ClassCheckId: '', Karmacolumns: [], - pid:[], + pid: [], show1: false, show2: false, show3: false, @@ -148,32 +157,91 @@ message: '请输入地址', trigger: ['change', 'blur'] }], - 'mobile':[{ - required: true, - message: '请输入电话号码', - }, - { - validator: (rule, value, callback) => { - if(value) { - return this.$u.test.mobile(value); - } else { - return true - } + 'mobile': [{ + required: true, + message: '请输入电话号码', }, - message: '号码不正确', - trigger: ['change','blur'], - }] + { + validator: (rule, value, callback) => { + if (value) { + return this.$u.test.mobile(value); + } else { + return true + } + }, + message: '号码不正确', + trigger: ['change', 'blur'], + } + ] }, } }, methods: { + // 删除图片 + deletePic(event) { + this[`fileList${event.name}`].splice(event.index, 1) + }, + preview(e) { + console.log('预览', e); + }, + // 新增图片 + async afterRead(event) { + // 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式 + let lists = [].concat(event.file) + let fileListLen = this[`fileList${event.name}`].length + lists.map((item) => { + this[`fileList${event.name}`].push({ + ...item, + status: 'uploading', + message: '上传中' + }) + }) + for (let i = 0; i < lists.length; i++) { + console.log('lists[i].url', lists[i].url); + const result = await this.uploadFilePromise(lists[i].url) + console.log('result', result); + let item = this[`fileList${event.name}`][fileListLen] + this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, { + status: 'success', + message: '', + url: result + })) + fileListLen++ + this.imageLength = fileListLen + } + }, + uploadFilePromise(filePath) { + return new Promise((resolve, reject) => { + const token = uni.getStorageSync('loginToken') + const a = uni.uploadFile({ + url: this.$api.uploadImgUrl, + filePath: filePath, + name: 'file', + header: { + "Content-Type": "multipart/form-data", + 'Authorization': token + }, + success: (res) => { + resolve(JSON.parse(res.data).data.url) + } + }); + }) + }, handleSearchAddress() { uni.navigateTo({ url: '/pages/publish/chooseAddress/chooseAddress' }) }, submit() { + const temp = [] + if (this.fileList1.length > 0) { + this.fileList1.map(item => { + const url = item.url + temp.push(url.replace(this.imgUrl + '/', '')) + }) + } + console.log('images---', temp.join(',')); this.$refs.uForm.validate().then(res => { console.log("提交表单信息:" + JSON.stringify(this.form)) uni.$u.toast('发布成功') @@ -206,32 +274,32 @@ } }) }, - tradeConfirm(e){ + tradeConfirm(e) { this.show2 = false this.form.business = e.value[0] this.ClassCheckId = this.pid[e.indexs[0]] this.$api.getClassList(this.ClassCheckId).then(res => { // console.log(res); this.Karmacolumns = res.data.data.map((item) => { - return item = item.name - }) + return item = item.name + }) }) }, - karmaConfirm(e){ + karmaConfirm(e) { this.show3 = false this.form.commercial = e.value[0] }, - regionConfirm(e){ + regionConfirm(e) { this.show1 = false this.form.region = e.value[0] }, }, onReady() { this.$refs.uForm.setRules(this.rules) - + }, onLoad() { - this.$api.getClassList().then(res =>{ + this.$api.getClassList().then(res => { // console.log(res.data.data.length); this.Classcolumns = res.data.data.map((item) => { return item = item.name @@ -239,15 +307,15 @@ this.pid = res.data.data.map((item) => { return item = item.id }) - + }) }, - computed:{ - isChecked(index){ - if(index.length > 0) - return true; + computed: { + isChecked(index) { + if (index.length > 0) + return true; else - return false; + return false; } } } @@ -274,8 +342,12 @@ justify-content: center; align-items: center; background-color: #F8F8F8; - height: 300rpx; + + // height: 300rpx; // margin-right: 20px; + .count { + margin-bottom: 30px; + } } .submit-btn { @@ -297,12 +369,14 @@ font-weight: 1px; color: #c1c4c7; } - .checkedtext{ + + .checkedtext { margin-top: 5rpx; font-size: 28rpx; font-weight: 1px; border-style: none; } + .picker { display: flex; justify-content: space-between; diff --git a/static/my/hz_bj.png b/static/my/hz_bj.png new file mode 100644 index 0000000000000000000000000000000000000000..03b04f98e95e80fc596b88210700c104d2e3d4b4 GIT binary patch literal 18871 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 KMNUMnLSTXuj2^oH literal 0 HcmV?d00001 diff --git a/static/my/wo_icon_hhr.png b/static/my/wo_icon_hhr.png new file mode 100644 index 0000000000000000000000000000000000000000..a5fabf84e1ae505941dd199fbe06c5ba5a9f22c6 GIT binary patch literal 4324 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 Date: Sat, 18 Nov 2023 19:59:39 +0800 Subject: [PATCH 14/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E6=9C=AC?= =?UTF-8?q?=E5=9C=B0=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/Partnerships/Partnerships.vue | 205 +++++++++++++----- pages/my/my.vue | 21 +- .../publishTransfer/publishTransfer.vue | 173 ++++++++++----- static/my/hz_bj.png | Bin 0 -> 18871 bytes static/my/wo_icon_hhr.png | Bin 0 -> 4324 bytes 5 files changed, 284 insertions(+), 115 deletions(-) create mode 100644 static/my/hz_bj.png create mode 100644 static/my/wo_icon_hhr.png diff --git a/pages/Partnerships/Partnerships.vue b/pages/Partnerships/Partnerships.vue index e9c6783..47b0602 100644 --- a/pages/Partnerships/Partnerships.vue +++ b/pages/Partnerships/Partnerships.vue @@ -1,90 +1,189 @@ - + \ No newline at end of file diff --git a/pages/my/my.vue b/pages/my/my.vue index 1815acf..13cf11a 100644 --- a/pages/my/my.vue +++ b/pages/my/my.vue @@ -7,6 +7,8 @@ {{username}} + 账号:{{account}} @@ -47,6 +49,7 @@ src: 'https://cdn.uviewui.com/uview/album/2.jpg', account: '', username: '', + member: '', isLoad: true } }, @@ -102,22 +105,14 @@ if (data) { this.src = this.$api.imgUrl + data.avatar this.username = data.nickname + this.member = data.member this.account = data.sn + uni.setStorageSync("uid", data.user_id) + uni.setStorageSync("member", data.member) } }) } - //---------页面调用接口示例------------ - getInfo() { - this.$api.getUser().then(res => { - var data = res.data.data - if (data) { - console.log(data); - this.src = this.$api.imgUrl + data.avatar - this.username = data.nickname - this.account = data.sn - } - }) - } + } } @@ -132,7 +127,7 @@ justify-content: center; align-items: center; flex-direction: column; - gap: 10rpx; + // gap: 10rpx; .profile-bgi { position: absolute; diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index 222cba0..2e5a307 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -2,17 +2,23 @@ - - 发布房源图片(0/5) + + + + + 发布房源图片({{imageLength}}/5}) - - - - + + + + {{form.region}} 请选择所属区域 - + @@ -23,14 +29,15 @@ - + {{form.business}} 请选择店铺行业 - + {{form.commercial}} @@ -38,8 +45,8 @@ - + @@ -48,7 +55,8 @@ - + @@ -71,6 +79,8 @@ export default { data() { return { + imageLength: '0', + fileList1: [], regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], form: { @@ -84,16 +94,16 @@ transferFee: '', mobile: '', content: '', - images:[], - longitude:'', - latitude:'', - id:'', - + images: [], + longitude: '', + latitude: '', + id: '', + }, Classcolumns: [], - ClassCheckId:'', + ClassCheckId: '', Karmacolumns: [], - pid:[], + pid: [], show1: false, show2: false, show3: false, @@ -148,32 +158,91 @@ message: '请输入地址', trigger: ['change', 'blur'] }], - 'mobile':[{ - required: true, - message: '请输入电话号码', - }, - { - validator: (rule, value, callback) => { - if(value) { - return this.$u.test.mobile(value); - } else { - return true - } + 'mobile': [{ + required: true, + message: '请输入电话号码', }, - message: '号码不正确', - trigger: ['change','blur'], - }] + { + validator: (rule, value, callback) => { + if (value) { + return this.$u.test.mobile(value); + } else { + return true + } + }, + message: '号码不正确', + trigger: ['change', 'blur'], + } + ] }, } }, methods: { + // 删除图片 + deletePic(event) { + this[`fileList${event.name}`].splice(event.index, 1) + }, + preview(e) { + console.log('预览', e); + }, + // 新增图片 + async afterRead(event) { + // 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式 + let lists = [].concat(event.file) + let fileListLen = this[`fileList${event.name}`].length + lists.map((item) => { + this[`fileList${event.name}`].push({ + ...item, + status: 'uploading', + message: '上传中' + }) + }) + for (let i = 0; i < lists.length; i++) { + console.log('lists[i].url', lists[i].url); + const result = await this.uploadFilePromise(lists[i].url) + console.log('result', result); + let item = this[`fileList${event.name}`][fileListLen] + this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, { + status: 'success', + message: '', + url: result + })) + fileListLen++ + this.imageLength = fileListLen + } + }, + uploadFilePromise(filePath) { + return new Promise((resolve, reject) => { + const token = uni.getStorageSync('loginToken') + const a = uni.uploadFile({ + url: this.$api.uploadImgUrl, + filePath: filePath, + name: 'file', + header: { + "Content-Type": "multipart/form-data", + 'Authorization': token + }, + success: (res) => { + resolve(JSON.parse(res.data).data.url) + } + }); + }) + }, handleSearchAddress() { uni.navigateTo({ url: '/pages/publish/chooseAddress/chooseAddress' }) }, submit() { + const temp = [] + if (this.fileList1.length > 0) { + this.fileList1.map(item => { + const url = item.url + temp.push(url.replace(this.imgUrl + '/', '')) + }) + } + console.log('images---', temp.join(',')); this.$refs.uForm.validate().then(res => { console.log("提交表单信息:" + JSON.stringify(this.form)) uni.$u.toast('发布成功') @@ -206,32 +275,32 @@ } }) }, - tradeConfirm(e){ + tradeConfirm(e) { this.show2 = false this.form.business = e.value[0] this.ClassCheckId = this.pid[e.indexs[0]] this.$api.getClassList(this.ClassCheckId).then(res => { // console.log(res); this.Karmacolumns = res.data.data.map((item) => { - return item = item.name - }) + return item = item.name + }) }) }, - karmaConfirm(e){ + karmaConfirm(e) { this.show3 = false this.form.commercial = e.value[0] }, - regionConfirm(e){ + regionConfirm(e) { this.show1 = false this.form.region = e.value[0] }, }, onReady() { this.$refs.uForm.setRules(this.rules) - + }, onLoad() { - this.$api.getClassList().then(res =>{ + this.$api.getClassList().then(res => { // console.log(res.data.data.length); this.Classcolumns = res.data.data.map((item) => { return item = item.name @@ -239,15 +308,15 @@ this.pid = res.data.data.map((item) => { return item = item.id }) - + }) }, - computed:{ - isChecked(index){ - if(index.length > 0) - return true; + computed: { + isChecked(index) { + if (index.length > 0) + return true; else - return false; + return false; } } } @@ -274,7 +343,11 @@ justify-content: center; align-items: center; background-color: #F8F8F8; - height: 300rpx; + + // height: 300rpx; + .count { + margin-bottom: 30px; + } // margin-right: 20px; } @@ -297,12 +370,14 @@ font-weight: 1px; color: #c1c4c7; } - .checkedtext{ + + .checkedtext { margin-top: 5rpx; font-size: 28rpx; font-weight: 1px; border-style: none; } + .picker { display: flex; justify-content: space-between; diff --git a/static/my/hz_bj.png b/static/my/hz_bj.png new file mode 100644 index 0000000000000000000000000000000000000000..03b04f98e95e80fc596b88210700c104d2e3d4b4 GIT binary patch literal 18871 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 KMNUMnLSTXuj2^oH literal 0 HcmV?d00001 diff --git a/static/my/wo_icon_hhr.png b/static/my/wo_icon_hhr.png new file mode 100644 index 0000000000000000000000000000000000000000..a5fabf84e1ae505941dd199fbe06c5ba5a9f22c6 GIT binary patch literal 4324 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 Date: Sat, 18 Nov 2023 20:46:43 +0800 Subject: [PATCH 15/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E6=8E=A5=E5=8F=A3=E7=BB=91=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../publish/publishAddress/publishAddress.vue | 263 ++++++++---- .../publishInvestment/publishInvestment.vue | 276 +++++++------ pages/publish/publishRent/publishRent.vue | 385 ++++++++++++------ .../publishTransfer/publishTransfer.vue | 6 +- service/request.js | 21 + 5 files changed, 626 insertions(+), 325 deletions(-) diff --git a/pages/publish/publishAddress/publishAddress.vue b/pages/publish/publishAddress/publishAddress.vue index 309985f..99f694b 100644 --- a/pages/publish/publishAddress/publishAddress.vue +++ b/pages/publish/publishAddress/publishAddress.vue @@ -2,53 +2,58 @@ - + - + {{form.region}} 请选择所属区域 - + - - {{form.trade}} + + + + + {{form.business}} 请选择行业 - + - - {{form.karma}} + + {{form.commercial}} 请选择业态 - + - - + + - + - - + + - - + + - - - - - + + @@ -62,31 +67,31 @@ export default { data() { return { + imageLength: '0', + fileList1: [], regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], - ShopInfomation: { - city: '', - area: '', - count: 0, - - }, form: { title: '', region: '', - place: '', - trade: '', - karma: '', - size: '', + address: '', + business: '', + commercial: '', + transferFee:'', rent: '', - sell: '', - name: '', - call: '', - introduce: '' + contact:'', + mobile: '', + content: '', + // images: [], + longitude: '', + latitude: '', + id: '', + }, Classcolumns: [], - ClassCheckId:'', + ClassCheckId: '', Karmacolumns: [], - pid:[], + pid: [], show1: false, show2: false, show3: false, @@ -96,37 +101,37 @@ message: '请输入标题', trigger: ['change', 'blur'] }], - 'trade': [{ + 'business': [{ required: true, message: '请选择行业', - trigger: ['change', 'blur'] + trigger: ['change'] }], 'region': [{ required: true, message: '请选择地区', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'karma': [{ + 'commercial': [{ required: true, message: '请选择业态', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'name': [{ - required: true, - message: '请输入姓名', - trigger: ['change', 'blur'] - }], - 'sell': [{ + 'transferFee': [{ required: true, message: '请输入转让金', trigger: ['change', 'blur'] }], - 'introduce': [{ + 'contact': [{ + required: true, + message: '请输入姓名', + trigger: ['change', 'blur'] + }], + 'content': [{ required: true, message: '请输入介绍', trigger: ['change', 'blur'] }], - 'size': [{ + 'area': [{ required: true, message: '请输入面积', trigger: ['change', 'blur'] @@ -136,72 +141,154 @@ message: '请输入租金', trigger: ['change', 'blur'] }], - 'place': [{ + 'address': [{ required: true, message: '请输入地址', trigger: ['change', 'blur'] }], - 'call':[{ - required: true, - message: '请输入电话号码', - }, - { - validator: (rule, value, callback) => { - if(value) { - return this.$u.test.mobile(value); - } else { - return true - } + 'mobile': [{ + required: true, + message: '请输入电话号码', }, - message: '号码不正确', - trigger: ['change','blur'], - }] + { + validator: (rule, value, callback) => { + if (value) { + return this.$u.test.mobile(value); + } else { + return true + } + }, + message: '号码不正确', + trigger: ['change', 'blur'], + } + ] }, } }, methods: { + // 删除图片 + deletePic(event) { + this[`fileList${event.name}`].splice(event.index, 1) + }, + preview(e) { + console.log('预览', e); + }, + // 新增图片 + async afterRead(event) { + // 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式 + let lists = [].concat(event.file) + let fileListLen = this[`fileList${event.name}`].length + lists.map((item) => { + this[`fileList${event.name}`].push({ + ...item, + status: 'uploading', + message: '上传中' + }) + }) + for (let i = 0; i < lists.length; i++) { + console.log('lists[i].url', lists[i].url); + const result = await this.uploadFilePromise(lists[i].url) + console.log('result', result); + let item = this[`fileList${event.name}`][fileListLen] + this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, { + status: 'success', + message: '', + url: result + })) + fileListLen++ + this.imageLength = fileListLen + } + }, + uploadFilePromise(filePath) { + return new Promise((resolve, reject) => { + const token = uni.getStorageSync('loginToken') + const a = uni.uploadFile({ + url: this.$api.uploadImgUrl, + filePath: filePath, + name: 'file', + header: { + "Content-Type": "multipart/form-data", + 'Authorization': token + }, + success: (res) => { + resolve(JSON.parse(res.data).data.url) + } + }); + }) + }, handleSearchAddress() { uni.navigateTo({ url: '/pages/publish/chooseAddress/chooseAddress' }) }, submit() { + const temp = [] + if (this.fileList1.length > 0) { + this.fileList1.map(item => { + const url = item.url + temp.push(url.replace(this.imgUrl + '/', '')) + }) + } + console.log('images---', temp.join(',')); this.$refs.uForm.validate().then(res => { console.log("提交表单信息:" + JSON.stringify(this.form)) uni.$u.toast('发布成功') - // 调用服务端入表接口W + this.$api.publishRent(this.form).then(res => { + console.log(res); + }) }).catch(errors => { console.log("失败信息:" + JSON.stringify(errors)) // uni.$u.toast('校验失败') }) }, - tradeConfirm(e){ + changeAddress(e) { + // console.log('changeAddress', e); + this.getAddressList(e) + }, + getAddressList(value) { + var that = this + uni.request({ + url: 'https://apis.map.qq.com/ws/geocoder/v1/?address=' + value + '&key=' + + that.$api.key, + success(res) { + console.log('diz', res.data.result.location); + // console.log('lat', res.data.result.location.lat); + that.form.latitude = res.data.result.location.lat + // console.log('lng', res.data.result.location.lng); + that.form.longitude = res.data.result.location.lng + }, + fail(err) { + console.log('请求区域失败:', err); + } + }) + }, + tradeConfirm(e) { this.show2 = false - this.form.trade = e.value[0] + this.form.business = e.value[0] this.ClassCheckId = this.pid[e.indexs[0]] this.$api.getClassList(this.ClassCheckId).then(res => { // console.log(res); this.Karmacolumns = res.data.data.map((item) => { - return item = item.name - }) + return item = item.name + }) }) }, - karmaConfirm(e){ + karmaConfirm(e) { this.show3 = false - this.form.karma = e.value[0] + this.form.commercial = e.value[0] }, - regionConfirm(e){ + regionConfirm(e) { this.show1 = false this.form.region = e.value[0] }, }, onReady() { this.$refs.uForm.setRules(this.rules) - + }, onLoad() { - this.$api.getClassList().then(res =>{ + this.$api.getClassList().then(res => { // console.log(res.data.data.length); this.Classcolumns = res.data.data.map((item) => { return item = item.name @@ -209,15 +296,15 @@ this.pid = res.data.data.map((item) => { return item = item.id }) - + }) }, - computed:{ - isChecked(index){ - if(index.length > 0) - return true; + computed: { + isChecked(index) { + if (index.length > 0) + return true; else - return false; + return false; } } } @@ -244,7 +331,11 @@ justify-content: center; align-items: center; background-color: #F8F8F8; - height: 300rpx; + + // height: 300rpx; + .count { + margin-bottom: 30px; + } // margin-right: 20px; } @@ -267,12 +358,14 @@ font-weight: 1px; color: #c1c4c7; } - .checkedtext{ + + .checkedtext { margin-top: 5rpx; font-size: 28rpx; font-weight: 1px; border-style: none; } + .picker { display: flex; justify-content: space-between; diff --git a/pages/publish/publishInvestment/publishInvestment.vue b/pages/publish/publishInvestment/publishInvestment.vue index 6160647..f648351 100644 --- a/pages/publish/publishInvestment/publishInvestment.vue +++ b/pages/publish/publishInvestment/publishInvestment.vue @@ -2,52 +2,50 @@ - - 发布房源图片({{ShopInfomation.count}}/5) + + + + + 发布房源图片({{imageLength}}/5) - - + + - - - - + {{form.region}} 请选择所属区域 - + - - {{form.trade}} - 请选择行业 + + + + + {{form.business}} + 请选择项目行业 - + - - {{form.karma}} - 请选择业态 - - - - + + - - + + - - - - - + + @@ -61,31 +59,28 @@ export default { data() { return { + imageLength: '0', + fileList1: [], regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], - ShopInfomation: { - city: '', - area: '', - count: 0, - - }, form: { title: '', region: '', - place: '', - trade: '', - karma: '', - size: '', - rent: '', - sell: '', - name: '', - call: '', - introduce: '' + address: '', + business: '', + mobile: '', + contact:'', + content: '', + images: [], + longitude: '', + latitude: '', + id: '', + }, Classcolumns: [], - ClassCheckId:'', + ClassCheckId: '', Karmacolumns: [], - pid:[], + pid: [], show1: false, show2: false, show3: false, @@ -95,76 +90,127 @@ message: '请输入标题', trigger: ['change', 'blur'] }], - 'trade': [{ + 'business': [{ required: true, message: '请选择行业', - trigger: ['change', 'blur'] + trigger: ['change'] }], 'region': [{ required: true, message: '请选择地区', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'karma': [{ - required: true, - message: '请选择业态', - trigger: ['change', 'blur'] - }], - 'name': [{ + 'contact': [{ required: true, message: '请输入姓名', trigger: ['change', 'blur'] }], - 'sell': [{ - required: true, - message: '请输入转让金', - trigger: ['change', 'blur'] - }], - 'introduce': [{ + 'content': [{ required: true, message: '请输入介绍', trigger: ['change', 'blur'] }], - 'size': [{ - required: true, - message: '请输入面积', - trigger: ['change', 'blur'] - }], - 'rent': [{ - required: true, - message: '请输入租金', - trigger: ['change', 'blur'] - }], - 'place': [{ + 'address': [{ required: true, message: '请输入地址', trigger: ['change', 'blur'] }], - 'call':[{ - required: true, - message: '请输入电话号码', - }, - { - validator: (rule, value, callback) => { - if(value) { - return this.$u.test.mobile(value); - } else { - return true - } + 'mobile': [{ + required: true, + message: '请输入电话号码', }, - message: '号码不正确', - trigger: ['change','blur'], - }] + { + validator: (rule, value, callback) => { + if (value) { + return this.$u.test.mobile(value); + } else { + return true + } + }, + message: '号码不正确', + trigger: ['change', 'blur'], + } + ] }, } }, methods: { + // 删除图片 + deletePic(event) { + this[`fileList${event.name}`].splice(event.index, 1) + }, + preview(e) { + console.log('预览', e); + }, + // 新增图片 + async afterRead(event) { + // 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式 + let lists = [].concat(event.file) + let fileListLen = this[`fileList${event.name}`].length + lists.map((item) => { + this[`fileList${event.name}`].push({ + ...item, + status: 'uploading', + message: '上传中' + }) + }) + for (let i = 0; i < lists.length; i++) { + console.log('lists[i].url', lists[i].url); + const result = await this.uploadFilePromise(lists[i].url) + console.log('result', result); + let item = this[`fileList${event.name}`][fileListLen] + this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, { + status: 'success', + message: '', + url: result + })) + fileListLen++ + this.imageLength = fileListLen + } + }, + uploadFilePromise(filePath) { + return new Promise((resolve, reject) => { + const token = uni.getStorageSync('loginToken') + const a = uni.uploadFile({ + url: this.$api.uploadImgUrl, + filePath: filePath, + name: 'file', + header: { + "Content-Type": "multipart/form-data", + 'Authorization': token + }, + success: (res) => { + resolve(JSON.parse(res.data).data.url) + } + }); + }) + }, handleSearchAddress() { uni.navigateTo({ url: '/pages/publish/chooseAddress/chooseAddress' }) }, + submit() { + const temp = [] + if (this.fileList1.length > 0) { + this.fileList1.map(item => { + const url = item.url + temp.push(url.replace(this.imgUrl + '/', '')) + }) + } + console.log('images---', temp.join(',')); + this.$refs.uForm.validate().then(res => { + console.log("提交表单信息:" + JSON.stringify(this.form)) + uni.$u.toast('发布成功') + this.$api.publishRent(this.form).then(res => { + console.log(res); + }) + }).catch(errors => { + console.log("失败信息:" + JSON.stringify(errors)) + // uni.$u.toast('校验失败') + }) + }, changeAddress(e) { // console.log('changeAddress', e); this.getAddressList(e) @@ -176,50 +222,42 @@ that.$api.key, success(res) { console.log('diz', res.data.result.location); - console.log('lat', res.data.result.location.lat); - console.log('lng', res.data.result.location.lng); + // console.log('lat', res.data.result.location.lat); + that.form.latitude = res.data.result.location.lat + // console.log('lng', res.data.result.location.lng); + that.form.longitude = res.data.result.location.lng }, fail(err) { console.log('请求区域失败:', err); } }) }, - submit() { - this.$refs.uForm.validate().then(res => { - console.log("提交表单信息:" + JSON.stringify(this.form)) - uni.$u.toast('发布成功') - // 调用服务端入表接口W - }).catch(errors => { - console.log("失败信息:" + JSON.stringify(errors)) - // uni.$u.toast('校验失败') - }) - }, - tradeConfirm(e){ + tradeConfirm(e) { this.show2 = false - this.form.trade = e.value[0] + this.form.business = e.value[0] this.ClassCheckId = this.pid[e.indexs[0]] this.$api.getClassList(this.ClassCheckId).then(res => { // console.log(res); this.Karmacolumns = res.data.data.map((item) => { - return item = item.name - }) + return item = item.name + }) }) }, - karmaConfirm(e){ + karmaConfirm(e) { this.show3 = false - this.form.karma = e.value[0] + this.form.commercial = e.value[0] }, - regionConfirm(e){ + regionConfirm(e) { this.show1 = false this.form.region = e.value[0] }, }, onReady() { this.$refs.uForm.setRules(this.rules) - + }, onLoad() { - this.$api.getClassList().then(res =>{ + this.$api.getClassList().then(res => { // console.log(res.data.data.length); this.Classcolumns = res.data.data.map((item) => { return item = item.name @@ -227,15 +265,15 @@ this.pid = res.data.data.map((item) => { return item = item.id }) - + }) }, - computed:{ - isChecked(index){ - if(index.length > 0) - return true; + computed: { + isChecked(index) { + if (index.length > 0) + return true; else - return false; + return false; } } } @@ -262,7 +300,11 @@ justify-content: center; align-items: center; background-color: #F8F8F8; - height: 300rpx; + + // height: 300rpx; + .count { + margin-bottom: 30px; + } // margin-right: 20px; } @@ -285,12 +327,14 @@ font-weight: 1px; color: #c1c4c7; } - .checkedtext{ + + .checkedtext { margin-top: 5rpx; font-size: 28rpx; font-weight: 1px; border-style: none; } + .picker { display: flex; justify-content: space-between; diff --git a/pages/publish/publishRent/publishRent.vue b/pages/publish/publishRent/publishRent.vue index 6670fde..fd4ed8d 100644 --- a/pages/publish/publishRent/publishRent.vue +++ b/pages/publish/publishRent/publishRent.vue @@ -2,54 +2,71 @@ - - 发布店铺图片({{ShopInfomation.count}}/5) + + + + + 发布房源图片({{imageLength}}/5) - - - - - - {{form.region}} - 请选择所属区域 - - - - - - - - - - - {{form.trade}} - 请选择店铺行业 - - - - - - - - - - - - - - - - - - - - - - - 发布 - + + + + + {{form.region}} + 请选择所属区域 + + + + + + + + + + + {{form.business}} + 请选择店铺行业 + + + + + + + {{form.commercial}} + 请选择店铺业态 + + + + + + + + + + + + + + + + + + + + + + + 发布 + @@ -57,56 +74,66 @@ export default { data() { return { - regionColumns:[JSON.parse(uni.getStorageSync('regionList'))]||[], - ShopInfomation:{ - city:'', - area:'', - count:0, - - }, - + imageLength: '0', + fileList1: [], + regionColumns: [JSON.parse(uni.getStorageSync('regionList'))] || [], + form: { title: '', region: '', - place: '', - trade: '', - size: '', + address: '', + business: '', + commercial: '', + area: '', rent: '', - name: '', - call: '', - introduce: '' + contact:'', + mobile: '', + content: '', + images: [], + longitude: '', + latitude: '', + id: '', + }, - Classcolumns:[], - show1:false, - show2:false, - show3:false, + Classcolumns: [], + ClassCheckId: '', + Karmacolumns: [], + pid: [], + show1: false, + show2: false, + show3: false, rules: { 'title': [{ required: true, message: '请输入标题', trigger: ['change', 'blur'] }], - 'trade': [{ + 'business': [{ required: true, message: '请选择行业', - trigger: ['change', 'blur'] + trigger: ['change'] }], 'region': [{ required: true, message: '请选择地区', - trigger: ['change', 'blur'] + trigger: ['change'] }], - 'name': [{ + 'commercial': [{ + required: true, + message: '请选择业态', + trigger: ['change'] + }], + 'contact': [{ required: true, message: '请输入姓名', trigger: ['change', 'blur'] }], - 'introduce': [{ + 'content': [{ required: true, message: '请输入介绍', trigger: ['change', 'blur'] }], - 'size': [{ + 'area': [{ required: true, message: '请输入面积', trigger: ['change', 'blur'] @@ -116,123 +143,239 @@ message: '请输入租金', trigger: ['change', 'blur'] }], - 'place': [{ + 'address': [{ required: true, message: '请输入地址', trigger: ['change', 'blur'] }], - 'call':[{ - required: true, - message: '请输入电话号码', - }, - { - validator: (rule, value, callback) => { - if(value) { - return this.$u.test.mobile(value); - } else { - return true - } + 'mobile': [{ + required: true, + message: '请输入电话号码', }, - message: '号码不正确', - trigger: ['change','blur'], - }] - + { + validator: (rule, value, callback) => { + if (value) { + return this.$u.test.mobile(value); + } else { + return true + } + }, + message: '号码不正确', + trigger: ['change', 'blur'], + } + ] + }, } - }, methods: { - confirmArea(e) { - this.ShopInfomation.city = e.value[0] - this.ShopInfomation.area = e.value[1] - this.show1 = false + // 删除图片 + deletePic(event) { + this[`fileList${event.name}`].splice(event.index, 1) + }, + preview(e) { + console.log('预览', e); + }, + // 新增图片 + async afterRead(event) { + // 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式 + let lists = [].concat(event.file) + let fileListLen = this[`fileList${event.name}`].length + lists.map((item) => { + this[`fileList${event.name}`].push({ + ...item, + status: 'uploading', + message: '上传中' + }) + }) + for (let i = 0; i < lists.length; i++) { + console.log('lists[i].url', lists[i].url); + const result = await this.uploadFilePromise(lists[i].url) + console.log('result', result); + let item = this[`fileList${event.name}`][fileListLen] + this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, { + status: 'success', + message: '', + url: result + })) + fileListLen++ + this.imageLength = fileListLen + } + }, + uploadFilePromise(filePath) { + return new Promise((resolve, reject) => { + const token = uni.getStorageSync('loginToken') + const a = uni.uploadFile({ + url: this.$api.uploadImgUrl, + filePath: filePath, + name: 'file', + header: { + "Content-Type": "multipart/form-data", + 'Authorization': token }, + success: (res) => { + resolve(JSON.parse(res.data).data.url) + } + }); + }) + }, + handleSearchAddress() { + uni.navigateTo({ + url: '/pages/publish/chooseAddress/chooseAddress' + }) + }, submit() { + const temp = [] + if (this.fileList1.length > 0) { + this.fileList1.map(item => { + const url = item.url + temp.push(url.replace(this.imgUrl + '/', '')) + }) + } + console.log('images---', temp.join(',')); this.$refs.uForm.validate().then(res => { console.log("提交表单信息:" + JSON.stringify(this.form)) uni.$u.toast('发布成功') - // 调用服务端入表接口W + this.$api.publishRent(this.form).then(res => { + console.log(res); + }) }).catch(errors => { console.log("失败信息:" + JSON.stringify(errors)) // uni.$u.toast('校验失败') }) }, - tradeConfirm(e){ - this.show2 = false - this.form.trade = e.value[0] + changeAddress(e) { + // console.log('changeAddress', e); + this.getAddressList(e) }, - regionConfirm(e){ + getAddressList(value) { + var that = this + uni.request({ + url: 'https://apis.map.qq.com/ws/geocoder/v1/?address=' + value + '&key=' + + that.$api.key, + success(res) { + console.log('diz', res.data.result.location); + // console.log('lat', res.data.result.location.lat); + that.form.latitude = res.data.result.location.lat + // console.log('lng', res.data.result.location.lng); + that.form.longitude = res.data.result.location.lng + }, + fail(err) { + console.log('请求区域失败:', err); + } + }) + }, + tradeConfirm(e) { + this.show2 = false + this.form.business = e.value[0] + this.ClassCheckId = this.pid[e.indexs[0]] + this.$api.getClassList(this.ClassCheckId).then(res => { + // console.log(res); + this.Karmacolumns = res.data.data.map((item) => { + return item = item.name + }) + }) + }, + karmaConfirm(e) { + this.show3 = false + this.form.commercial = e.value[0] + }, + regionConfirm(e) { this.show1 = false this.form.region = e.value[0] - } + }, + }, + onReady() { + this.$refs.uForm.setRules(this.rules) + }, onLoad() { - this.$api.getClassList().then(res =>{ + this.$api.getClassList().then(res => { // console.log(res.data.data.length); this.Classcolumns = res.data.data.map((item) => { return item = item.name }) + this.pid = res.data.data.map((item) => { + return item = item.id + }) + }) }, - onReady() { - this.$refs.uForm.setRules(this.rules) - - }, + computed: { + isChecked(index) { + if (index.length > 0) + return true; + else + return false; + } + } } + \ No newline at end of file diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index 2e5a307..3f21567 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -7,9 +7,8 @@ multiple :maxCount="5" :on-preview="preview"> - 发布房源图片({{imageLength}}/5}) + 发布房源图片({{imageLength}}/5) - @@ -92,13 +91,14 @@ area: '', rent: '', transferFee: '', + contact:'', mobile: '', content: '', images: [], longitude: '', latitude: '', id: '', - + }, Classcolumns: [], ClassCheckId: '', diff --git a/service/request.js b/service/request.js index d122fbb..fc49d84 100644 --- a/service/request.js +++ b/service/request.js @@ -260,6 +260,27 @@ const apiService = { resolve(service.post(url, data)) }) }, + //发布店铺出租 + publishRent(data){ + const url = `/shop/rent/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, + //发布找店地址 + publishAddress(data){ + const url = `/shop/selection/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, + //发布项目招商 + publishInvestment(data){ + const url = `/shop/investment/` + return new Promise((resolve, reject) => { + resolve(service.post(url, data)) + }) + }, } export { apiService, From 2fa63fa1e9e82b3a9e8d07294a1837c66db6b41f Mon Sep 17 00:00:00 2001 From: hot777zz <912275990@qq.com> Date: Sat, 18 Nov 2023 21:07:30 +0800 Subject: [PATCH 16/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=86=B2?= =?UTF-8?q?=E7=AA=81=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/publish/publishTransfer/publishTransfer.vue | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pages/publish/publishTransfer/publishTransfer.vue b/pages/publish/publishTransfer/publishTransfer.vue index 3f21567..36451e1 100644 --- a/pages/publish/publishTransfer/publishTransfer.vue +++ b/pages/publish/publishTransfer/publishTransfer.vue @@ -7,7 +7,7 @@ multiple :maxCount="5" :on-preview="preview"> - 发布房源图片({{imageLength}}/5) + 发布房源图片({{imageLength}}/5}) Date: Sat, 18 Nov 2023 21:12:33 +0800 Subject: [PATCH 17/20] =?UTF-8?q?=E6=A2=81=E8=88=AA=EF=BC=9A=E5=86=B2?= =?UTF-8?q?=E7=AA=81=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/Partnerships/Partnerships.vue | 2 +- pages/my/my.vue | 3 --- pages/publish/publishTransfer/publishTransfer.vue | 12 ------------ 3 files changed, 1 insertion(+), 16 deletions(-) diff --git a/pages/Partnerships/Partnerships.vue b/pages/Partnerships/Partnerships.vue index 47b0602..b2a9373 100644 --- a/pages/Partnerships/Partnerships.vue +++ b/pages/Partnerships/Partnerships.vue @@ -1,4 +1,4 @@ -