From 9244c3215d716ad91ff13b8bc57390a02ac7983f Mon Sep 17 00:00:00 2001 From: LinCyJang Date: Fri, 10 Oct 2025 23:42:37 +0800 Subject: [PATCH] =?UTF-8?q?Feat=EF=BC=9A=E7=AE=A1=E5=AE=B6=E5=85=A5?= =?UTF-8?q?=E9=A9=BB(=E5=B0=8F=E7=A8=8B=E5=BA=8F)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/join.js | 21 + pages.json | 7 + pkg_join/views/index.vue | 16 + pkg_join/views/travelResidence.vue | 721 +++++++++++++++++++++++++++++ utils/index.js | 30 ++ 5 files changed, 795 insertions(+) create mode 100644 pkg_join/views/travelResidence.vue diff --git a/api/join.js b/api/join.js index d8b6d8c..253f96a 100644 --- a/api/join.js +++ b/api/join.js @@ -64,3 +64,24 @@ export function removeApply() { export function getHotelInfo(params) { return request.get("merchantApply/info/hotel", params, {login: true}) } + +/** + * 旅居管家入驻申请详情 + */ +export function getTravelInfo(params) { + return request.get("merchantApply/info/travel", params, {login: true}) +} + +/** + * 提交旅居管家入驻申请 + */ +export function saveTravel(params) { + return request.post("/merchantApply/travel/submit", params, {login: true}) +} + +/** + * 旅居管家申请草稿保存 + */ +export function saveTravelDraft(params) { + return request.post("/merchantApply/travel/saveDraft", params, {login: true}) +} diff --git a/pages.json b/pages.json index b8deb7a..eb09bbd 100644 --- a/pages.json +++ b/pages.json @@ -550,6 +550,13 @@ "style": { "navigationBarTitleText": "采购批发商入驻" } + }, + { + "path": "views/travelResidence", + "style": { + "navigationBarTitleText": "旅居管家入驻", + "navigationBarBackgroundColor": "#FFFFFF" + } } ] }, diff --git a/pkg_join/views/index.vue b/pkg_join/views/index.vue index 6cfc395..4922e88 100644 --- a/pkg_join/views/index.vue +++ b/pkg_join/views/index.vue @@ -32,6 +32,12 @@ mode="widthFix" @click="goto('wholesaler')" /> + @@ -68,6 +74,16 @@ export default { }) }, methods: { + /** + * 跳转旅游 residences + */ + toTravelResidence() { + this.$yrouter.push('/pkg_join/views/travelResidence?partnerId=' + this.partnerId) + }, + /** + * 跳转 + * @param {string} target - 目标页面 + */ goto(target) { switch (target) { case 'goods_supplier': diff --git a/pkg_join/views/travelResidence.vue b/pkg_join/views/travelResidence.vue new file mode 100644 index 0000000..68a3ad3 --- /dev/null +++ b/pkg_join/views/travelResidence.vue @@ -0,0 +1,721 @@ + + + + + + \ No newline at end of file diff --git a/utils/index.js b/utils/index.js index dab02a6..86debbe 100644 --- a/utils/index.js +++ b/utils/index.js @@ -1199,3 +1199,33 @@ export function uploadImage(imgPath, callback) { } }); } + +export function uploadVideo(videoPath, callback) { + uni.showLoading({ + title: "视频上传中", + mask: true + }); + uni.uploadFile({ + url: `${VUE_APP_API_URL}/api/upload`, + filePath: videoPath, + header: { + Authorization: "Bearer " + store.getters.token + }, + name: "file", + success: res => { + if (callback) { + callback(JSON.parse(res.data).link) + } + }, + fail: err => { + uni.showToast({ + title: "上传视频失败" + err, + icon: "none", + duration: 2000 + }); + }, + complete: res => { + uni.hideLoading() + } + }); +}