From 4c56f0b755cc2cd0bce090854528cce2cbebd774 Mon Sep 17 00:00:00 2001 From: xy <271556543@qq.com> Date: Fri, 22 Nov 2024 17:52:57 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- component/CitySelect/city-select.vue | 18 +- component/CitySelect/citys.js | 3 - package_sub/ServiceObject/ServiceObject.vue | 72 ++ package_sub/pages/AddOrder/AddOrder.vue | 677 ++++++++++++++++-- package_sub/pages/ServiceList/ServiceList.vue | 4 +- pages.json | 6 + pages/CitySelect/CitySelect.vue | 105 +-- pages/index/index.vue | 4 +- pages/order/order.vue | 111 +-- store/index.js | 6 +- uni.scss | 4 +- uview-ui/theme.scss | 4 +- 12 files changed, 830 insertions(+), 184 deletions(-) create mode 100644 package_sub/ServiceObject/ServiceObject.vue diff --git a/component/CitySelect/city-select.vue b/component/CitySelect/city-select.vue index 9efc2aa..75782a9 100644 --- a/component/CitySelect/city-select.vue +++ b/component/CitySelect/city-select.vue @@ -7,16 +7,14 @@ 当前定位城市 - {{ activeCity[formatName] }} + {{ activeCity[formatName] || '定位失败' }} - + 更新定位 - + 热门城市 @@ -403,6 +401,12 @@ $theme-color: #ca2328; overflow: hidden; width: 100vw; + .refresh-block { + color: $theme-color; + line-height: vww(31); + float: right; + padding-right: vww(23); + } .hot-item { float: left; padding: 0 vww(5); diff --git a/component/CitySelect/citys.js b/component/CitySelect/citys.js index d4c7269..e342fd1 100644 --- a/component/CitySelect/citys.js +++ b/component/CitySelect/citys.js @@ -229,9 +229,6 @@ export default [{ }, { 'cityCode': '320400', 'cityName': '常州市' -}, { - 'cityCode': '320500', - 'cityName': '苏州市' }, { 'cityCode': '320600', 'cityName': '南通市' diff --git a/package_sub/ServiceObject/ServiceObject.vue b/package_sub/ServiceObject/ServiceObject.vue new file mode 100644 index 0000000..b19c897 --- /dev/null +++ b/package_sub/ServiceObject/ServiceObject.vue @@ -0,0 +1,72 @@ + + + + + + + diff --git a/package_sub/pages/AddOrder/AddOrder.vue b/package_sub/pages/AddOrder/AddOrder.vue index f0dcc10..d335673 100644 --- a/package_sub/pages/AddOrder/AddOrder.vue +++ b/package_sub/pages/AddOrder/AddOrder.vue @@ -15,89 +15,259 @@ - - - - + + + + + - - 专享半天陪诊 - + + 专享半天陪诊 + - - - 更换服务 + + + 更换服务 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 任意 + + + + + + + + 上传资料 + (就诊卡、病例等) + + + 点击查看示例 + + + + + + + + 其他服务需求 + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 任意 - - + + + + + + + + + 医康养 就医省心 + 期待下次为您服务 + + + + 订单已完成 + - - - - 上传资料 - (就诊卡、病例等) + + + 预约信息 + + + + + 就诊城市 + + + 苏州 + +
+ + + 就诊医院 + + + 苏打附属 + +
+ + + 就诊时间 - - 点击查看示例 + + 2024-11-22 + +
+ + + 预约人 + + + xxx + +
+ + + 预约人电话 + + + 18888888888 + +
+ + + 陪诊师性别 + + + 都可以 + +
+ + + 服务需求 + + + 无
-
- - - 其他服务需求 + + + 就诊人信息 + + + + + 姓名 + + + aa + +
+ + + 性别 + + + 女 + +
+ + + 年龄 + + + 55岁 + +
+ + + 手机号 + + + 15555555555 + +
+ + + 行动能力 + + + 无障碍 +
- - -
-
- - - 我已认真阅读预约相关 - 《服务条款同意书》 - + + + 订单信息 + + + + + 服务内容 + + + 专享半天陪诊 + +
+ + + 服务标价 + + + ¥ 288 + +
+ + + 订单金额 + + + ¥ 288 + +
+ + + 订单编号 + + + PZ2024111855448048 + +
+ + + 下单日期 + + + 2024-11-18 17:48:47 + +
+
@@ -107,13 +277,129 @@ ¥ 600.00
- 立即支付 + 立即支付 - + + + + + + + + + 专享半天陪诊 + + + + ¥600 + + + + - + + + + + + + + + ¥600.00 + 专享半天陪诊 + + + + + + 平台保障 + + + + + + + + + + 半天陪诊·3次卡 + + + ¥ 600 + + + + + 本次预约可直接抵扣1次 + + 低至¥246/次 + + + + + + + + 平台保障 + + + + + 陪诊服务险 + + ¥ 600 + + + + + + + + 本单优惠 + + + + + 请选择优惠券 + + + + + + + + 新人优惠券 20元 服务满1元可用 + + + + + + 无忧赠险保障 + + -¥25 + + + + + + + 我已认真阅读预约相关 + 《服务条款同意书》 + + + + + @@ -181,12 +467,19 @@ export default { rules: {}, fileList: [], action: '', - isAuth: false + isAuth: false, // + + // pay popup + isShowPayPopup: false, }; }, methods: { - next () { + pay () { + if (!this.isShowPayPopup) { + this.isShowPayPopup = true + return + } if (!this.isAuth && this.currentStep === 0) { this.$refs.uTips.show({ title: '请认真阅读《服务条款同意书》', @@ -195,7 +488,8 @@ export default { }) return } - this.currentStep++ + this.isShowPayPopup = false + this.currentStep = 3 } }, onReady() { @@ -204,6 +498,159 @@ export default { } + diff --git a/package_sub/pages/ServiceList/ServiceList.vue b/package_sub/pages/ServiceList/ServiceList.vue index 729cbe1..b51cc20 100644 --- a/package_sub/pages/ServiceList/ServiceList.vue +++ b/package_sub/pages/ServiceList/ServiceList.vue @@ -56,7 +56,9 @@ export default { }; }, mounted() { - this.$store.dispatch('getLocation') + if (this.$store.state.vuex_location !== 2) { + this.$store.dispatch('getLocation') + } }, methods: { toOrder(item) { diff --git a/pages.json b/pages.json index e6fc242..a299864 100644 --- a/pages.json +++ b/pages.json @@ -58,6 +58,12 @@ "navigationBarTitleText": "服务项目", "enablePullDownRefresh": true } + }, + { + "path": "ServiceObject/ServiceObject", + "style": { + "navigationBarTitleText": "服务对象" + } } ] } diff --git a/pages/CitySelect/CitySelect.vue b/pages/CitySelect/CitySelect.vue index 2fe474f..5f4d901 100644 --- a/pages/CitySelect/CitySelect.vue +++ b/pages/CitySelect/CitySelect.vue @@ -1,25 +1,25 @@ - + diff --git a/pages/index/index.vue b/pages/index/index.vue index 0aba48a..41bd0ac 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -216,7 +216,9 @@ export default { }, mounted() { this.getElScrollTop() - this.$store.dispatch('getLocation') + if (this.$store.state.vuex_location.status !== 2) { + this.$store.dispatch('getLocation') + } }, created() { this.menuButtonRight = diff --git a/pages/order/order.vue b/pages/order/order.vue index e9809f9..5436737 100644 --- a/pages/order/order.vue +++ b/pages/order/order.vue @@ -17,58 +17,68 @@ - - - - 专享半天陪诊 - 待支付 - - - - - + + + + + 专享半天陪诊 + 待支付 - - ¥600 - 订单号 PZ2024111855448048 - - + + + + - - - 就诊城市 - 苏州 - - - 就诊医院 - 苏大附属 + + ¥600 + 订单号 PZ2024111855448048 + - - 就诊人 - 萍萍 - - - 就诊时间 - 2024-12-18 17:00 - - - - - 下单时间: - 2024-11-18 17:48:47 + + + 就诊城市 + 苏州 + + + 就诊医院 + 苏大附属 + + + 就诊人 + 萍萍 + + + 就诊时间 + 2024-12-18 17:00 + - 立即支付 + + + 下单时间: + 2024-11-18 17:48:47 + + + 立即支付 + + + - + + + @@ -97,7 +107,6 @@ - @@ -144,20 +153,29 @@ export default { swiperCurrent: 0, tabsHeight: 0, dx: 0, + scrollTop: [], loadStatus: [], + refresherStatus: [], }; }, onLoad() { }, created() { - this.loadStatus = Array.from({ length: this.tabs.length },_ => 'loadmore') + for(let i = 0;i < this.tabs.length;i++) { + this.refresherStatus.push(false) + this.loadStatus.push('loadmore') + } }, computed: { }, methods: { reachBottom() { // 此tab为空数据 + this.loadStatus.splice(this.current,1,"loading") + setTimeout(() => { + this.loadStatus.splice(this.current,1,"nomore") + }, 2000) }, // tab栏切换 change(index) { @@ -183,7 +201,18 @@ page {