204 lines
6.0 KiB
Vue
204 lines
6.0 KiB
Vue
<!-- 申请退货退款 -->
|
||
<template>
|
||
<view class="jy-return-refund">
|
||
<!-- 商品信息 -->
|
||
<JyCommodityInformation :showType="1" class="mb20"></JyCommodityInformation>
|
||
<uni-section>
|
||
<template v-slot:decoration>
|
||
<text class="decoration">申请类型</text>
|
||
</template>
|
||
<template v-slot:content>
|
||
<text class="content">我要退款(无需退货)</text>
|
||
</template>
|
||
<template v-slot:right>
|
||
<uni-icons type="right"></uni-icons>
|
||
</template>
|
||
</uni-section>
|
||
<uni-section class="mb20" @click="reasonPopup.open()">
|
||
<template v-slot:decoration>
|
||
<text class="decoration">申请原因</text>
|
||
</template>
|
||
<template v-slot:content>
|
||
<text :class="['content', !postData.reason && 'noContent']">{{ postData.reason ? postData.reason :
|
||
'点击选择申请原因' }}</text>
|
||
</template>
|
||
<template v-slot:right>
|
||
<uni-icons type="right"></uni-icons>
|
||
</template>
|
||
</uni-section>
|
||
<uni-section class="application_amount mb20">
|
||
<template v-slot:content>
|
||
<view class="jy-return-type">
|
||
<text class="decoration">申请金额</text>
|
||
<view class="df">
|
||
<text>¥</text>
|
||
<uni-easyinput v-if="!disabled" v-model="postData.priceNum" type="number"
|
||
:disabled="disabled"></uni-easyinput>
|
||
<text v-else>{{ postData.priceNum }}</text>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
<template v-slot:right>
|
||
<uni-icons type="compose" @click="changeDisabled">{{ disabled ? '修改金额' : '确定修改' }}</uni-icons>
|
||
</template>
|
||
</uni-section>
|
||
<uni-section class="mb20">
|
||
<template v-slot:decoration>
|
||
<view class="jy-return-type" style="width: 100%;">
|
||
<text class="decoration">申请说明</text>
|
||
<view>
|
||
<uni-easyinput type="textarea" autoHeight :inputBorder="false" v-model="value"
|
||
placeholder="必填,请您详细填写申请说明" maxlength="300"></uni-easyinput>
|
||
<uni-file-picker limit="9" class="uni-file-picker" :imageStyles="{
|
||
width: '150rpx',
|
||
height: '150rpx'
|
||
}">
|
||
<template v-slot:default>
|
||
<image class="wh150" :src="shopUploadImage" mode="aspectFill"></image>
|
||
</template>
|
||
</uni-file-picker>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
</uni-section>
|
||
<uni-section>
|
||
<template v-slot:decoration>
|
||
<text class="decoration">联系电话</text>
|
||
</template>
|
||
<template v-slot:content>
|
||
<text class="decoration">123123213</text>
|
||
</template>
|
||
</uni-section>
|
||
</view>
|
||
<uni-popup ref="reasonPopup" type="bottom">
|
||
<view class="reason-popup f1 bfff pr">
|
||
<view class="title">
|
||
<text>请选择申请原因</text>
|
||
</view>
|
||
<view class="close-btn" @click="reasonPopup.close()">×</view>
|
||
<view class="reason-list" v-for="item in reasonList" @click="selectReason(item)">
|
||
<text class="label">{{ item.label }}</text>
|
||
</view>
|
||
</view>
|
||
</uni-popup>
|
||
<JyBottomBtn @click="postApi">提交申请</JyBottomBtn>
|
||
</template>
|
||
|
||
<script setup>
|
||
import { ref, reactive } from 'vue'
|
||
import JyCommodityInformation from '@/components/public/jy-commodity-information'
|
||
import shopUploadImage from '@/static/shop-upload-image.png'
|
||
import JyBottomBtn from '@/components/public/jy-bottom-button'
|
||
const value = ref(null)
|
||
const reasonPopup = ref(null)
|
||
const disabled = ref(true)
|
||
const postData = reactive({
|
||
reason: '',
|
||
priceNum: 5.99,
|
||
content: ''
|
||
})
|
||
const postApi = () => {
|
||
console.log('我是提交');
|
||
}
|
||
const selectReason = (val) => {
|
||
postData.reason = val.label
|
||
reasonPopup.value.close()
|
||
}
|
||
const reasonList = [
|
||
{ label: '缺货' },
|
||
{ label: '不想要了' },
|
||
{ label: '价格太贵' },
|
||
{ label: '其他' },
|
||
]
|
||
const changeDisabled = () => {
|
||
disabled.value = !disabled.value
|
||
if (postData.priceNum === null) {
|
||
postData.priceNum = 5.99
|
||
}
|
||
}
|
||
</script>
|
||
<style scoped lang="scss">
|
||
.jy-return-refund {
|
||
padding-bottom: 200rpx;
|
||
}
|
||
|
||
.decoration {
|
||
font-size: 30rpx;
|
||
color: #1D2129;
|
||
margin-right: 40rpx;
|
||
}
|
||
|
||
.content {
|
||
color: #333333;
|
||
font-size: 28rpx;
|
||
font-weight: 600;
|
||
}
|
||
|
||
.noContent {
|
||
color: #999999;
|
||
font-size: 28rpx;
|
||
}
|
||
|
||
.jy-return-type {
|
||
font-size: 48rpx;
|
||
color: #333333;
|
||
}
|
||
|
||
.application_amount {
|
||
::v-deep .uni-section-header {
|
||
align-items: flex-end;
|
||
}
|
||
}
|
||
|
||
::v-deep .file-picker__box-content {
|
||
border: none !important;
|
||
margin: 0;
|
||
}
|
||
|
||
::v-deep .uni-file-picker {
|
||
padding: none;
|
||
}
|
||
|
||
.uni-file-picker {
|
||
background: #ffffff;
|
||
padding: 24rpx 20rpx;
|
||
}
|
||
|
||
.reason-popup {
|
||
width: 100%;
|
||
height: 800rpx;
|
||
// 上面两个圆角
|
||
border-radius: 30rpx 30rpx 0 0;
|
||
|
||
.reason-list {
|
||
padding: 16rpx 24rpx;
|
||
}
|
||
|
||
.title {
|
||
width: 100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
padding: 20rpx 0;
|
||
// 底部边框显示
|
||
color: #3D3D3D;
|
||
font-weight: 600;
|
||
font-size: 32rpx;
|
||
}
|
||
|
||
.close-btn {
|
||
position: absolute;
|
||
top: 40rpx;
|
||
right: 40rpx;
|
||
height: 52rpx;
|
||
line-height: 52rpx;
|
||
width: 52rpx;
|
||
color: #999999;
|
||
font-size: 40rpx;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
transform: translate(50%, -50%);
|
||
}
|
||
}
|
||
</style> |