完善管理套餐页面

This commit is contained in:
wangxiaowei
2025-12-14 19:29:40 +08:00
parent 19542eaf50
commit caa835bb70
3 changed files with 237 additions and 96 deletions

View File

@ -6,7 +6,7 @@
}</route>
<template>
<view class="">
<view class="pb-180rpx">
<!-- 改价弹窗 -->
<wd-popup v-model="showExpireTimePooup" lock-scroll custom-style="border-radius: 32rpx 32rpx 0rpx 0rpx;background-color: #F8F9FA;" position="bottom">
<view class="relative pb-56rpx">
@ -17,17 +17,33 @@
<view class="text-36rpx text-[#121212] leading-50rpx text-center pt-50rpx pb-40rpx">团购有效期</view>
<view class="bg-white mx-30rpx rounded-10rpx px-30rpx py-32rpx">
<wd-radio-group v-model="form.type" size="large" shape="dot" checked-color="#4C9F44" >
<wd-radio :value="1" border>
<view class="leading-36rpx font-400 text-30rpx ml-12rpx mr-60rpx">指定天数内有效</view>
</wd-radio>
<wd-radio :value="2" border>
<view class="leading-36rpx font-400 text-30rpx ml-12rpx">指定时间段内有效</view>
</wd-radio>
</wd-radio-group>
<view class="">
<view class="flex items-center">
<wd-img width="48rpx" height="48rpx" :src="chekcedType == 1 ? `${OSS}icon/icon_pay_success.png` : `${OSS}icon/icon_no_checked.png`"></wd-img>
<view class="font-bold text-28rpx leading-40rpx text-[#303133] ml-40rpx">指定天数内有效</view>
</view>
<view class="flex items-center ml-84rpx mt-20rpx">
<view class="font-400 text-28rpx text-[#303133] leading-40rpx">用户购买</view>
<view class="mx-28rpx">
<wd-input-number v-model="exprireDay" @change="Add.handleChangeExpirseDay" :min="1"/>
</view>
<view class="">天内有效</view>
</view>
</view>
</view>
<view class="bg-white mx-30rpx rounded-10rpx px-30rpx py-32rpx">
<view class="">
<view class="flex items-center">
<wd-img width="48rpx" height="48rpx" :src="chekcedType == 1 ? `${OSS}icon/icon_pay_success.png` : `${OSS}icon/icon_no_checked.png`"></wd-img>
<view class="font-bold text-28rpx leading-40rpx text-[#303133] ml-40rpx">指定时间段内有效</view>
</view>
<view class="flex items0-center ml-60rpx" >
<wd-calendar type="daterange" v-model="value" @confirm="Add.handleConfirmRangeTime" />
</view>
</view>
</view>
<view class="font-400 mx-48rpx h-90rpx leading-90rpx rounded-8rpx text-center mt-80rpx text-[#fff] bg-[#4C9F44] text-30rpx font-400" @click="">确定</view>
</view>
</wd-popup>
@ -228,6 +244,7 @@
<view v-if="tab == 3">
<view class="font-bold text-34rpx text-[#303133] leading-48rpx mb-30rpx">购买须知</view>
<view class="mb-28rpx">
<!-- 团购有效期 -->
<view class="mr-30rpx" @click="showExpireTimePooup = true">
<view class="flex items-center mb-20rpx w-[100%]">
<view class="flex items-center justify-between w-[100%]">
@ -252,18 +269,66 @@
</view>
</view>
<view class="mr-30rpx mt-30rpx">
<view class="flex items-center mb-20rpx w-[100%]">
<view class="text-30rpx leading-44rpx text-#303133 mr-10rpx font-bold">其他说明</view>
<!-- 适用包间 -->
<view class="mt-28rpx">
<view class="flex items-center mb-20rpx">
<view class="text-30rpx leading-44rpx text-#303133 mr-10rpx font-bold">适用包间</view>
<view class="flex items-center">
<wd-img width="16rpx" height="16rpx" :src="`${OSS}icon/icon_validate.png`"></wd-img>
</view>
</view>
<wd-input no-border placeholder="请输入全部适用或是指定包间名称"
custom-class="!bg-[#F6F7F8] !rounded-16rpx !px-28rpx !py-20rpx"></wd-input>
</view>
<!-- 适用时长 -->
<view class="mt-28rpx">
<view class="flex items-center mb-20rpx">
<view class="text-30rpx leading-44rpx text-#303133 mr-10rpx font-bold">适用时长</view>
<view class="flex items-center">
<wd-img width="16rpx" height="16rpx" :src="`${OSS}icon/icon_validate.png`"></wd-img>
</view>
</view>
<wd-input no-border placeholder="请输入适用时长"
custom-class="!bg-[#F6F7F8] !rounded-16rpx !px-28rpx !py-20rpx">
<template #suffix>
小时
</template>
</wd-input>
</view>
<!-- 使用人数 -->
<view class="mt-28rpx">
<view class="flex items-center mb-20rpx">
<view class="text-30rpx leading-44rpx text-#303133 mr-10rpx font-bold">使用人数</view>
<view class="flex items-center">
<wd-img width="16rpx" height="16rpx" :src="`${OSS}icon/icon_validate.png`"></wd-img>
</view>
</view>
<wd-input no-border placeholder="请输入使用人数,如每张团购券不限使用人数"
custom-class="!bg-[#F6F7F8] !rounded-16rpx !px-28rpx !py-20rpx"></wd-input>
</view>
<!-- 退改说明 -->
<view class="mt-28rpx add-textarea">
<view class="flex items-center">
<view class="text-32rpx leading-44rpx text-#303133 mr-10rpx font-bold">退改说明</view>
<view class="flex items-center">
<wd-img width="16rpx" height="16rpx" :src="`${OSS}icon/icon_validate.png`"></wd-img>
</view>
</view>
<wd-textarea v-model="form.name"
custom-class='!rounded-18rpx !border-2rpx !border-[#EFF0EF] !bg-[#F8F9FA] !mt-20rpx'
custom-textarea-class='!bg-[#F8F9FA]' />
custom-textarea-class='!bg-[#F8F9FA]'/>
</view>
</view>
</view>
</view>
<view class="w-full fixed bottom-0 left-0 right-0 bg-white h-152rpx">
<view class="flex items-center justify-center text-32rpx leading-44rpx leading-90rpx text-center !mt-34rpx">
<wd-button custom-class="!text-32rpx !w-630rpx !h-90rpx !bg-[#4C9F44] !rounded-8rpx !text-[#fff]" @click="router.navigateTo('/bundle/setmeal/add?type=add')">发布</wd-button>
</view>
</view>
</view>
</template>
@ -301,6 +366,10 @@
// 团购有效期
const showExpireTimePooup = ref<boolean>(false)
const chekcedType = ref<number>(1)
const exprireDay = ref<number>(1)
const startTime = ref<number>(Date.now())
const endTime = ref<number>(Date.now())
onLoad((args) => {
// TODO 如果是编辑页面咋额
@ -325,6 +394,22 @@
handleUploadFile: (event: any) => {
fileList.value = event.fileList
},
/**
* 有效期天数
*/
handleChangeExpirseDay: () => {
},
/**
* 选择范围指定日期
*/
handleConfirmRangeTime: (date: {value: number[]}) => {
console.log("🚀 ~ date:", date)
startTime.value = date.value[0]
endTime.value = date.value[1]
}
}
</script>

View File

@ -1,6 +1,6 @@
{
"name": "茶址",
"appid": "__UNI__D1E5001",
"name": "",
"appid": "",
"description": "",
"versionName": "1.0.0",
"versionCode": "100",
@ -18,93 +18,22 @@
"modules": {},
"distribute": {
"android": {
"permissions": [
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"minSdkVersion": 30,
"targetSdkVersion": 30,
"abiFilters": [
"armeabi-v7a",
"arm64-v8a"
]
"permissions": []
},
"ios": {},
"sdkConfigs": {},
"icons": {
"android": {
"hdpi": "static/app/icons/72x72.png",
"xhdpi": "static/app/icons/96x96.png",
"xxhdpi": "static/app/icons/144x144.png",
"xxxhdpi": "static/app/icons/192x192.png"
},
"ios": {
"appstore": "static/app/icons/1024x1024.png",
"ipad": {
"app": "static/app/icons/76x76.png",
"app@2x": "static/app/icons/152x152.png",
"notification": "static/app/icons/20x20.png",
"notification@2x": "static/app/icons/40x40.png",
"proapp@2x": "static/app/icons/167x167.png",
"settings": "static/app/icons/29x29.png",
"settings@2x": "static/app/icons/58x58.png",
"spotlight": "static/app/icons/40x40.png",
"spotlight@2x": "static/app/icons/80x80.png"
},
"iphone": {
"app@2x": "static/app/icons/120x120.png",
"app@3x": "static/app/icons/180x180.png",
"notification@2x": "static/app/icons/40x40.png",
"notification@3x": "static/app/icons/60x60.png",
"settings@2x": "static/app/icons/58x58.png",
"settings@3x": "static/app/icons/87x87.png",
"spotlight@2x": "static/app/icons/80x80.png",
"spotlight@3x": "static/app/icons/120x120.png"
}
}
}
},
"compatible": {
"ignoreVersion": true
"sdkConfigs": {}
}
},
"quickapp": {},
"mp-weixin": {
"appid": "wx63e106209b842919",
"appid": "",
"setting": {
"urlCheck": false,
"es6": true,
"minified": true
"urlCheck": false
},
"usingComponents": true,
"requiredPrivateInfos": [
"getLocation"
],
"optimization": {
"subPackages": true
},
"permission": {
"scope.userLocation": {
"desc": "我们需要获取您的位置,以方便推荐附近茶室给您"
}
}
"usingComponents": true
},
"mp-alipay": {
"usingComponents": true,
"styleIsolation": "shared"
"usingComponents": true
},
"mp-baidu": {
"usingComponents": true
@ -116,7 +45,126 @@
"enable": false
},
"vueVersion": "3",
"h5": {
"router": {}
"default": {
"name": "茶址",
"appid": "__UNI__D1E5001",
"description": "",
"versionName": "1.0.0",
"versionCode": "100",
"transformPx": false,
"h5": {
"router": {}
},
"app-plus": {
"usingComponents": true,
"nvueStyleCompiler": "uni-app",
"compilerVersion": 3,
"compatible": {
"ignoreVersion": true
},
"splashscreen": {
"alwaysShowBeforeRender": true,
"waiting": true,
"autoclose": true,
"delay": 0
},
"modules": {},
"distribute": {
"android": {
"minSdkVersion": 30,
"targetSdkVersion": 30,
"abiFilters": [
"armeabi-v7a",
"arm64-v8a"
],
"permissions": [
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
]
},
"ios": {},
"sdkConfigs": {},
"icons": {
"android": {
"hdpi": "static/app/icons/72x72.png",
"xhdpi": "static/app/icons/96x96.png",
"xxhdpi": "static/app/icons/144x144.png",
"xxxhdpi": "static/app/icons/192x192.png"
},
"ios": {
"appstore": "static/app/icons/1024x1024.png",
"ipad": {
"app": "static/app/icons/76x76.png",
"app@2x": "static/app/icons/152x152.png",
"notification": "static/app/icons/20x20.png",
"notification@2x": "static/app/icons/40x40.png",
"proapp@2x": "static/app/icons/167x167.png",
"settings": "static/app/icons/29x29.png",
"settings@2x": "static/app/icons/58x58.png",
"spotlight": "static/app/icons/40x40.png",
"spotlight@2x": "static/app/icons/80x80.png"
},
"iphone": {
"app@2x": "static/app/icons/120x120.png",
"app@3x": "static/app/icons/180x180.png",
"notification@2x": "static/app/icons/40x40.png",
"notification@3x": "static/app/icons/60x60.png",
"settings@2x": "static/app/icons/58x58.png",
"settings@3x": "static/app/icons/87x87.png",
"spotlight@2x": "static/app/icons/80x80.png",
"spotlight@3x": "static/app/icons/120x120.png"
}
}
}
}
},
"quickapp": {},
"mp-weixin": {
"appid": "wx63e106209b842919",
"setting": {
"urlCheck": false,
"es6": true,
"minified": true
},
"requiredPrivateInfos": [
"getLocation"
],
"optimization": {
"subPackages": true
},
"usingComponents": true,
"permission": {
"scope.userLocation": {
"desc": "我们需要获取您的位置,以方便推荐附近茶室给您"
}
}
},
"mp-alipay": {
"usingComponents": true,
"styleIsolation": "shared"
},
"mp-baidu": {
"usingComponents": true
},
"mp-toutiao": {
"usingComponents": true
},
"uniStatistics": {
"enable": false
},
"vueVersion": "3"
}
}

View File

@ -275,6 +275,14 @@
"navigationStyle": "custom"
}
},
{
"path": "setmeal/add",
"type": "page",
"layout": "default",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "setmeal/setmeal",
"type": "page",