diff --git a/pages/app/sign.vue b/pages/app/sign.vue index 043d45b..5c719bc 100644 --- a/pages/app/sign.vue +++ b/pages/app/sign.vue @@ -68,8 +68,8 @@ + - @@ -572,15 +572,16 @@ position: relative; .sign-list { - width: 86%; margin: 0 auto; padding: 20px; background: white; + margin: 0 7px; border-radius: 18px; .new-top { display: flex; justify-content: space-between; + margin: 0 10px; margin-bottom: 10px; .left { @@ -612,12 +613,20 @@ } .new-bottom { - width: 100%; + display: grid; + margin-top: 5px; + // grid-template-columns: repeat(auto-fill, 22%); + grid-template-columns: repeat(4, 1fr); + grid-template-rows: 100px; + grid-auto-rows: 100px; + justify-content: center; + grid-gap: 5px; + padding: 5px; .new-l { - padding: 5px; + // padding: 5px; float: left; - width: 21.9%; + width: 100%; .new-list { padding: 5px 5px; @@ -680,10 +689,10 @@ .new-7 { position: relative; - width: 134px; + width: 178%; padding: 5px 10px; padding-bottom: 0; - height: 80px; + height: 80%; display: flex; flex-wrap: wrap; diff --git a/pages/goods/seckill.vue b/pages/goods/seckill.vue index 974c6b1..87a8f4f 100644 --- a/pages/goods/seckill.vue +++ b/pages/goods/seckill.vue @@ -19,11 +19,11 @@ + + + + 秒杀价 + --> 秒杀价 {{ fen2yuan(state.selectedSku.price || state.goodsInfo.price) }} diff --git a/pages/pay/index.vue b/pages/pay/index.vue index 3418435..cd4cc60 100644 --- a/pages/pay/index.vue +++ b/pages/pay/index.vue @@ -1,290 +1,326 @@ + .save-btn { + width: 710rpx; + height: 80rpx; + border-radius: 40rpx; + background: linear-gradient(90deg, var(--ui-BG-Main), var(--ui-BG-Main-gradient)); + color: $white; + } + + .disabled-btn { + background: #e5e5e5; + color: #999999; + } + + .past-due-btn { + width: 710rpx; + height: 80rpx; + border-radius: 40rpx; + background-color: #999; + color: #fff; + } + } + \ No newline at end of file diff --git a/pages/reservation_record/reservation_record.vue b/pages/reservation_record/reservation_record.vue index b127351..5c2d75d 100644 --- a/pages/reservation_record/reservation_record.vue +++ b/pages/reservation_record/reservation_record.vue @@ -5,17 +5,18 @@ 预约信息 - 订单日期:{{ sheep.$helper.timeFormat(item.createTime, 'yyyy-mm-dd') }} + 订单日期:{{ sheep.$helper.timeFormat(item.creatTime, 'yyyy-mm-dd') }} - 预约姓名:{{ item.technicianName }} - 预约电话:{{ item.memberphone }} + 预约姓名:{{ item.name }} + 预约电话:{{ item.phone }} 预约时间:{{ sheep.$helper.timeFormat(item.reAddTime, 'yyyy-mm-dd') }} - 门店名称:{{ item.brandName }} -
+ class="title">{{ item.days }} + 项目名称:{{ item.projectName }} + 项目套餐:{{ item.technicianName }} + 备注留言:{{ item.remark }} @@ -68,16 +69,17 @@ // 定义方法 function getList() { request({ - url: `${baseUrl}${apiPath}/h5/reservation/list`, + url: `${baseUrl}${apiPath}/h5/reservation/reservationInfo`, method: 'GET', - params: { - userId: memberId.value, - }, + // params: { + // userId: memberId.value, + // }, custom: { showLoading: false, }, }).then((res) => { - reservationList.value = res.data.list; + console.log(res,"-------------") + reservationList.value = res.data; }); } diff --git a/pages/subscribe/subscribe.vue b/pages/subscribe/subscribe.vue index afa9732..2857474 100644 --- a/pages/subscribe/subscribe.vue +++ b/pages/subscribe/subscribe.vue @@ -32,46 +32,6 @@ - - - - - - - - - - - - - 关于UI视觉设计方案需求评审 - - - - - - - 关于UI视觉设计方案需求评审 - - - - - - - 关于UI视觉设计方案需求评审 - - - - 套餐选择 - + {{ll3}} @@ -96,15 +56,9 @@ - - {{ item.formattedDate }} - {{ item.weekday }} - - - - {{ item.formattedDate }} - {{ item.weekday }} + + {{ item.days.slice(5) }} + {{ item.week }} @@ -119,23 +73,13 @@ - - - - {{ item.str }} - + + + + {{ item.timeQuantum }} - - - 约满
- {{ item.str }} - -
-
- - - {{ item.str }} - + 剩余{{item.residueNumber}}
@@ -151,43 +95,20 @@ - 姓名: + 姓名: - 电话: + 电话:
- + 立即预约 - - - - - - - - - {{ item.technicianName }} - {{item.typeName}} - - - - -
- 服务范围 - - 介绍 - -
-
- -
-
-
@@ -234,10 +155,15 @@ brandList: [], //门店列表数据 brandList2: [], //项目列表数据 brandList3: [], //套餐列表数据 - brandNameList: [],//门店列表 - brandNameList2: [],//项目列表 - brandNameList3: [],//套餐列表 - brandId: "",//门店当前选中id + brandList4: [], //时段列表数据 + brandNameList: [], //门店列表 + brandNameList2: [], //项目列表 + brandNameList3: [], //套餐列表 + brandId: "", //门店当前选中id + brandId2: "", //项目当前选中id + brandId3: "", //套餐当前选中id + brandId4: "", //预约日期当前选中id + brandId5: "", //时段当前选中id brandName: "", selectedDayIndex: 0, selecttypeIndex: 0, @@ -246,46 +172,63 @@ ll: '请选择', ll2: '请选择', ll3: '请选择', - gg: '请选择' + gg: '请选择', + dateIndex: '', //时间的状态 + name: '', + phone: '' }; }, created() { this.isLogin = computed(() => sheep.$store('user').isLogin); this.memberId = computed(() => sheep.$store('user').userInfo).value.id - this.brandlists();//调用门店列表 - // this.brandlists2();//调用项目列表 - // this.brandlists3();//调用套餐列表 - this.generateDateList(); - this.addDate = this.dateList[0].addDate; - this.gettypeList(); - console.log(apiPath, baseUrl, "import.meta.env.SHOPRO_API_PATH") - + this.brandlists(); //调用门店列表 + }, methods: { onClinicChange(event) { + + this.brandId = '' + this.brandId2 = '' + this.brandId3 = '' + this.brandId4 = '' + this.brandId5 = '' + this.name = '' + this.phone = '' + this.ll2 = '请选择' + this.ll3 = '请选择' + this.brandNameList2 = [] + this.brandNameList3 = [] + this.dateList = [] + this.brandList3 = [] + const selectedClinicIndex = event.detail.value; this.selectedClinicIndex = selectedClinicIndex; this.ll = this.brandList[selectedClinicIndex].name - // console.log("dddddddddddd") - // this.ll = this.brandList.list[selectedClinicIndex].name this.brandId = this.brandList[selectedClinicIndex].id this.brandlists2(); }, onClinicChange2(event) { + const selectedClinicIndex = event.detail.value; this.selectedClinicIndex2 = selectedClinicIndex; this.ll2 = this.brandList2[selectedClinicIndex].name - // this.brandId = this.brandList.list[selectedClinicIndex].id - console.log("------onClinicChange2------") - // this.ll = this.brandList.list[selectedClinicIndex].name - // this.technicianList(); + this.brandId2 = this.brandList2[selectedClinicIndex].id + this.setDate(); + this.brandlists3(); + }, + onClinicChange3(event) { + + + const selectedClinicIndex = event.detail.value; + this.selectedClinicIndex3 = selectedClinicIndex; + this.ll3 = this.brandList3[selectedClinicIndex].name + this.brandId3 = this.brandList3[selectedClinicIndex].id }, ontype(event) { const selecttypeIndex = event.detail.value; this.selecttypeIndex = selecttypeIndex; this.typename = this.typeList[selecttypeIndex].dictValue this.type = this.typeList[selecttypeIndex].value - console.log(this.type, "this.type") this.gg = this.typeList[selecttypeIndex].label this.technicianList(); }, @@ -306,6 +249,8 @@ }, // 查询项目列表 brandlists2() { + this.brandNameList2 = []; + this.brandList2 = []; request({ url: `${baseUrl}${apiPath}/h5/project/getProject`, method: 'GET', @@ -316,231 +261,134 @@ showLoading: false, }, }).then((res) => { - // this.brandList2 = res.data - console.log(res,"------brandList2------") - // for (var i = 0; i < this.brandList2.length; i++) { - // this.brandNameList2.push(this.brandList2[i].name) - // } + this.brandList2 = res.data + for (var i = 0; i < this.brandList2.length; i++) { + this.brandNameList2.push(this.brandList2[i].name) + } }); }, - // 查询套餐列表 - brandlists3() { + // 查询日期列表 + setDate() { request({ - url: `${baseUrl}${apiPath}/h5/technician/getTecchnician`, + url: `${baseUrl}${apiPath}/h5/projectday/getProjectday`, method: 'GET', + params: { + id: this.brandId2 + }, custom: { showLoading: false, }, }).then((res) => { + this.dateList = res.data; + }); + }, + // 查询套餐列表 + brandlists3() { + this.brandList3 = [] + this.brandNameList3 = [] + request({ + url: `${baseUrl}${apiPath}/h5/technician/getTechnician`, + method: 'GET', + params: { + id: this.brandId2 + }, + custom: { + showLoading: false, + }, + }).then((res) => { + if(res){ + + } + console.log(this.brandList3,"------brandList3---------"); + console.log(res,"------brandList3---------"); this.brandList3 = res.data for (var i = 0; i < this.brandList3.length; i++) { this.brandNameList3.push(this.brandList3[i].name) } }); }, - gettypeList() { + // 查询预约时段列表 + brandlists4() { request({ - url: `${baseUrl}${apiPath}/h5/reservation/type`, - method: 'GET', - custom: { - showLoading: false, - }, - }).then((res) => { - console.log(res, "typeListtypeList") - this.typeList = res.data - for (var i = 0; i < this.typeList.length; i++) { - this.typenameList.push(this.typeList[i].label); - } - console.log(this.typenameList) - }); - }, - // 查询医生列表 - technicianList() { - console.log("有没有进来technicianList"); - this.techid = null, - this.serviceTime = [] - this.hsstr = "" - request({ - url: `${baseUrl}${apiPath}/h5/technician/list`, + url: `${baseUrl}${apiPath}/h5/configuration/getConfiguration`, method: 'GET', params: { - type: this.type, - brandId: this.brandId + projectdayId: this.brandId4, + technicianId: this.brandId3 }, custom: { showLoading: false, }, }).then((res) => { - console.log(res) - this.techList = res.data.list - console.log(this.techList) - if (this.techList.length > 0) { - this.techid = this.techList[0].id - var item = { - id: this.techid - } - this.onradio(item); - } - - console.log(this.techList) + this.brandList4 = res.data }); }, - - onradio(item) { - this.techid = item.id - this.serviceTime = [] - this.hsstr = "" - request({ - url: `${baseUrl}${apiPath}/h5/technician/h5xq`, - method: 'GET', - params: { - addDate: this.addDate, - id: this.techid - }, - custom: { - showLoading: false, - }, - }).then((res) => { - console.log(res); - var serviceTime = JSON.parse(res.data.serviceTime) - console.log(serviceTime, "serviceTimeserviceTimeserviceTime") - if (serviceTime) { - for (let i = 0; i < serviceTime.length; i++) { - console.log(serviceTime[i].end) - console.log(serviceTime[i].start) - console.log(serviceTime[i].ym) - if (serviceTime[i].end && serviceTime[i].start) { - this.sjd = {}, - this.sjd.str = serviceTime[i].start.toString() + "-" + serviceTime[ - i].end.toString() - this.sjd.ym = serviceTime[i].ym - this.serviceTime.push(this.sjd) - } - } - } - console.log(this.serviceTime, "this.serviceTime") - }); - - - }, - selectDay(index) { - this.selectedDayIndex = index; - }, - handleSwiperChange(event) { - this.selectedDayIndex = event.mp.detail.current; - }, - formatDate(date) { - const options = { - month: "2-digit", - day: "2-digit" - }; - return date.toLocaleDateString("en-US", options); - }, - handleSubmit() { - this.memberId = computed(() => sheep.$store('user').userInfo).value.id - if (!this.memberId) { - if (sheep.$platform.name === 'WechatMiniProgram') { - // showAuthModal('wechatMiniLogin') - return; - } - showAuthModal('accountLogin') + // 提交表单接口 + brandlists9() { + if (!this.brandId) { + sheep.$helper.toast('请选择门店') + } else if (!this.brandId2) { + sheep.$helper.toast('请选择项目') + } else if (!this.brandId3) { + sheep.$helper.toast('请选择套餐') + } else if (!this.brandId4) { + sheep.$helper.toast('请选择预约日期') + } else if (!this.brandId5) { + sheep.$helper.toast('请选择预约时段') + } else if (!this.name) { + sheep.$helper.toast('请填写姓名') + } else if (!this.phone) { + sheep.$helper.toast('请填写电话') } else { - this.memberId = computed(() => sheep.$store('user').userInfo).value.id - if (!this.brandId) { - sheep.$helper.toast('请选择医馆') - } else if (!this.techid) { - sheep.$helper.toast('请选择技师') - } else if (!this.addDate) { - sheep.$helper.toast('请选择预约时间') - } else if (!this.hsstr) { - sheep.$helper.toast('请选择预约时间段') - } else if (this.memberId) { - request({ - url: `${baseUrl}/app-api/h5/reservation/add`, - method: 'post', - params: { - type: this.type, - brandId: this.brandId, - technicianId: this.techid, - reAddTime: this.addDate, - hsstr: this.hsstr, - userId: this.memberId, - }, - custom: { - showLoading: false, - }, - }).then((res) => { - uni.showModal({ - title: '预约提示', - content: '预约成功!', - success: function(res) { - if (res.confirm) { - uni.switchTab({ - url: '/pages/index/user' - }); - } else { - uni.switchTab({ - url: '/pages/index/user' - }); - } - } - }); - }); - - - } - } - - - - console.log("立即预约"); - }, - - - generateDateList() { - const weekDays = ['周日', '周一', '周二', '周三', '周四', '周五', '周六']; - const today = new Date(); - for (let i = 0; i < 7; i++) { - const date = new Date(today); - date.setDate(date.getDate() + i); - const formattedDate = - // `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`; - `${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`; - const weekday = weekDays[date.getDay()]; - const addDate = - `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`; - this.dateList.push({ - date, - formattedDate, - addDate, - weekday + request({ + url: `${baseUrl}${apiPath}/h5/reservation/addReservation`, + method: 'GET', + params: { + brandId: this.brandId, + projectId: this.brandId2, + technicianId: this.brandId3, + projectdayId: this.brandId4, + timeId: this.brandId5, + name: this.name, + phone: this.phone + }, + custom: { + showLoading: false, + }, + }).then((res) => { + if (res.code == 0) { + sheep.$helper.toast('提交成功'); + sheep.$router.go('/pages/index/user') + } }); + + } + }, + // 删除前五位数字 + delete(val) {}, + //查看时段接口 selectDate(index) { - this.addDate = this.dateList[index].addDate - if (this.techid) { - var item = { - id: this.techid - } - this.onradio(item); + console.log(this.brandList3, "brandList3") + if(this.brandId3 == ''){ + sheep.$helper.toast('请先选择套餐') + return; } - - // 处理选中日期的逻辑,例如触发事件、更新状态等 - console.log('Selected date:', this.addDate); + this.dateIndex = index; + this.brandId4 = this.dateList[index].id; + this.brandlists4(); }, - selecthsstr(index) { - console.log(this.serviceTime[index].str) - console.log(this.serviceTime[index].ym) - if (this.serviceTime[index].ym === "true") { - - } else if (this.serviceTime[index].ym === "false") { - this.hsstr = this.serviceTime[index].str + selecthsstr(index, status) { + if (status == 0) { + this.brandId5 = ''; + console.log('this.brandId5', this.brandId5); + sheep.$helper.toast('该时间段已约满') + return; } - - // 处理选中日期的逻辑,例如触发事件、更新状态等 - console.log('this.serviceTimesss:', this.serviceTime[index].ym); - }, + this.brandId5 = this.brandList4[index].id; + console.log('this.brandId5', this.brandId5); + } }, }; @@ -728,21 +576,27 @@ border-radius: 6px; &.on { - background: rgb(0, 149, 248); + background: #e4f1ff; .date-itemstr { // background-color: #ff5541; - .weekday { - color: white; - } + .weekday {} } } + &.hui { + user-select: none; + background: #f6f6f6; + } + .date-itemstr { // background-color: #ff5541; - .weekday {} + .weekday { + color: black; + font-size: 8px; + } } .new-jk { @@ -776,17 +630,23 @@ flex-direction: column; align-items: center; + &:hover { // background-color: #ff5541; } + &.on { + background-color: rgba(228, 241, 255); + border: 1px solid rgba(3, 150, 248); + } + .date { font-size: 8px; } .weekday { margin-top: 5px; - font-size: 10px; + font-size: 8px; color: #666; } } diff --git a/pages/user/user_vip/list.vue b/pages/user/user_vip/list.vue index 62667be..48fa8b9 100644 --- a/pages/user/user_vip/list.vue +++ b/pages/user/user_vip/list.vue @@ -15,14 +15,14 @@
您与众悦e家商场的第101天 - 开通即享会员权益 + 开通即享会员权益
- - 开通会员 + + 立即开通 - + 当前卡片:{{userInfo.cardName}}
- 试用会员 - 开通会员 - 有效期至 - 2024-10-24 + + 开通会员 + 有效期至 + {{userInfo.cardExpirationTime}} @@ -72,12 +72,12 @@ 购买即视为同意《会员用户协议 - + 立即试用 - + @@ -99,7 +99,7 @@ const userInfo = computed(() => sheep.$store('user').userInfo); const vipList = ref([]); const vipList2 = ref([]); - const valVip = ref([]); + const valVip = ref(88888); const nameVip = ref([]); // 定义方法 function getList() { @@ -124,6 +124,7 @@ function vipFun(index,name) { valVip.value = index data.cardName = name + console.log(index,name,"name") } // beclick @@ -138,9 +139,14 @@ }, }).then((res) => { console.log(res,"-----------试用---------------") - if(res.code == 200){ - sheep.$helper.toast('试用开通成功'); - sheep.$router.go('/pages/index/user') + if(res.code == 0){ + if(data.cardName == "试用"){ + sheep.$helper.toast('试用开通成功'); + sheep.$router.go('/pages/index/user') + }else{ + sheep.$router.go('/pages/pay/index', { id: res.data.payOrderId,type:'vip',vipid: res.data.id,cardName: data.cardName }) + } + }else{ sheep.$helper.toast(res.msg); } @@ -178,7 +184,12 @@ height: 200px; // background: rgba(57, 55, 54); position: relative; - + .vipLv{ + position:absolute; + bottom: 93px; + right: 10%; + color: #8a745c; + } .img { width: 100%; height: 100%; diff --git a/pages/user/wallet/score.vue b/pages/user/wallet/score.vue index 8893bc0..238b28a 100644 --- a/pages/user/wallet/score.vue +++ b/pages/user/wallet/score.vue @@ -1,12 +1,26 @@