750 lines
20 KiB
Vue
750 lines
20 KiB
Vue
<template>
|
|
<view class="whole">
|
|
<view class="addrbox">
|
|
<view class="item" v-if="loading">
|
|
<view class="icon ji">寄</view>
|
|
<view v-if="addressList.length != 0" class="addr addr1" @click="showAddr = true">
|
|
<view class="box">
|
|
<view class="tit">{{sender.name || ''}} {{sender.mobile || ''}}</view>
|
|
<text>{{sender.province && sender.province.name || ''}}{{sender.city && sender.city.name || ''}}{{sender.area && sender.area.name || ''}}{{sender.address || ''}}</text>
|
|
</view>
|
|
<up-icon name="arrow-right" />
|
|
</view>
|
|
<view v-else class="empty" @click="toAddress()">
|
|
<text>您还没有地址信息</text>
|
|
<view class="add">去添加地址</view>
|
|
</view>
|
|
</view>
|
|
<view class="item">
|
|
<view class="icon">收</view>
|
|
<view class="addr">
|
|
<view class="box">
|
|
<view class="tit">{{refundInfo.refund_address_name}} {{refundInfo.refund_address_mobile || refundInfo.refund_address_tel}}</view>
|
|
<text>{{refundInfo.refund_address_province_name}}{{refundInfo.refund_address_city_name}}{{refundInfo.refund_address_area_name}}{{refundInfo.refund_address_detail}}</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
|
|
<view class="timebox" @click="showSendType = true">
|
|
<view>寄件类型
|
|
<text v-if="sendType === ''">请选择寄件类型</text>
|
|
<text v-else>{{sendTypeObj[sendType]}}</text>
|
|
</view>
|
|
<up-icon name="arrow-right" />
|
|
</view>
|
|
|
|
<view class="timebox" @click="openTime()">
|
|
<view>上门时间
|
|
<text v-if="dateIndex === '' || timeIndex === ''">请选择上门取件时间</text>
|
|
<text v-else>{{dateList[dateIndex]}} {{timeList[timeIndex]}}</text>
|
|
</view>
|
|
<up-icon name="arrow-right" />
|
|
</view>
|
|
<view class="bottom">
|
|
<view class="btn" @click="toSendDetail()">立即提交</view>
|
|
</view>
|
|
|
|
|
|
<!-- 寄件类型 -->
|
|
<up-popup :show="showSendType" :round="10" mode="bottom" close-on-click-overlay closeable @close="showSendType = false">
|
|
<view class="reasonbox">
|
|
<view class="title">请选择寄件类型</view>
|
|
<view class="box">
|
|
<view class="row" v-for="(item, index) in sendTypeList" @click="selectSendType(item.id)">
|
|
<view class="tit">{{item.name}}</view>
|
|
<span v-if="sendType === item.id" class="iconfont icon-checked"></span>
|
|
<span v-else class="iconfont icon-circle"></span>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</up-popup>
|
|
|
|
<!-- 选择寄件地址 -->
|
|
<up-popup v-model:show="showAddr" :round="10" mode="bottom" close-on-click-overlay closeable @close="showAddr = false">
|
|
<view class="typebox">
|
|
<view class="title">选择寄件地址</view>
|
|
<view class="box">
|
|
<view class="row" v-for="item in addressList" @click="selectAddr(item)">
|
|
<view>
|
|
<view class="tit">{{item.name}} {{item.mobile}}</view>
|
|
<text>{{item.province.name}}{{item.city.name}}{{item.area.name}}{{item.address}}</text>
|
|
</view>
|
|
<span v-if="sender.id === item.id" class="iconfont icon-checked"></span>
|
|
<span v-else class="iconfont icon-circle"></span>
|
|
</view>
|
|
</view>
|
|
<view class="btn" @click="toAddress()">添加地址</view>
|
|
</view>
|
|
</up-popup>
|
|
|
|
<!-- 选择上门时间 -->
|
|
<up-popup v-model:show="showTime" :round="10" mode="bottom" close-on-click-overlay closeable @close="closeTime()">
|
|
<view class="timepopup">
|
|
<view class="title">选择上门时间</view>
|
|
<view class="box">
|
|
<view class="date">
|
|
<view class="row"
|
|
v-for="(it, index) in dateList" :key="index"
|
|
@click="selectDate(it, index)"
|
|
:class="index === dateIndex ? 'select': ''">{{it}}
|
|
</view>
|
|
</view>
|
|
<view class="time">
|
|
<view class="row"
|
|
v-for="(it, index) in timeList" :key="index"
|
|
@click="selectTime(it, index)"
|
|
:class="index === timeIndex ? 'select': ''"
|
|
>
|
|
<text>{{it}}</text>
|
|
<up-icon v-if="index === timeIndex" name="checkbox-mark" :color="Color" />
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</up-popup>
|
|
|
|
<up-modal
|
|
:show="showTips"
|
|
title="您好,您有多个收件地址"
|
|
confirmText="确认"
|
|
cancelText="返回修改"
|
|
:confirmColor="Color"
|
|
:showCancelButton="true"
|
|
content="请确认取件地址是否正确"
|
|
@confirm="confirmBack()"
|
|
@cancel="showTips = false">
|
|
</up-modal>
|
|
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import { ref, reactive, toRefs, watch } from 'vue'
|
|
import { get, post } from '@/api/request.js'
|
|
import { showToast, getShopInfo } from '@/components/common.js'
|
|
import { sendTypeObj, sendTypeList } from '@/utils/list.js'
|
|
export default {
|
|
setup() {
|
|
const data = reactive({
|
|
refund_id: '',
|
|
pickup_id: '',
|
|
sender: {
|
|
province: {},
|
|
city: {},
|
|
area: {}
|
|
},
|
|
refundInfo: {},
|
|
addressList: [],
|
|
showTime: false,
|
|
showAddr: false,
|
|
dateList: [],
|
|
timeObj: {},
|
|
timeList: [],
|
|
dateIndex: '',
|
|
timeIndex: '',
|
|
sendType: '',
|
|
showSendType: false,
|
|
tempData: [],
|
|
loading: false,
|
|
pickTimeObj: {
|
|
date: '',
|
|
start: '',
|
|
end: ''
|
|
},
|
|
Color: uni.getStorageSync('theme_color'),
|
|
showTips: false,
|
|
item_ids: [],
|
|
driver: '',
|
|
puInfo: {}
|
|
})
|
|
|
|
async function getAddressList() {
|
|
await get('/api/v1/address').then((res) => {
|
|
if(!data.pickup_id) {
|
|
data.sender = res.data && JSON.parse(JSON.stringify(res.data[0])) || {}
|
|
res.data.forEach((item) => {
|
|
if (item.is_default === 1) {
|
|
data.sender = JSON.parse(JSON.stringify(item))
|
|
}
|
|
})
|
|
}
|
|
data.addressList = res.data
|
|
data.loading = true
|
|
}).catch(() => {
|
|
data.loading = true
|
|
})
|
|
}
|
|
|
|
// 获取订单信息
|
|
async function getRefundInfo() {
|
|
await get(`/api/v1/orderRefundApply/${data.refund_id}`).then((res) => {
|
|
data.refundInfo = res.data
|
|
|
|
res.data.refunds.forEach((it) => {
|
|
data.item_ids.push({
|
|
order_item_id: it.order_item_id,
|
|
number: 1
|
|
})
|
|
})
|
|
})
|
|
}
|
|
|
|
// 获取寄货时间
|
|
async function getSendTime(type = '') {
|
|
data.dateList = []
|
|
data.timeList = []
|
|
data.timeObj = {}
|
|
data.dateIndex = ''
|
|
data.timeIndex = ''
|
|
if(data.driver == 'jd') {
|
|
let params = {
|
|
sender: {
|
|
name: data.sender.name,
|
|
mobile: data.sender.mobile,
|
|
province_name: data.sender.province.name,
|
|
province_id: data.sender.province_id,
|
|
city_name: data.sender.city.name,
|
|
city_id: data.sender.area_id,
|
|
area_name: data.sender.area.name,
|
|
area_id: data.sender.area_id,
|
|
address_detail: data.sender.address
|
|
},
|
|
receiver: {
|
|
name: data.refundInfo.refund_address_name,
|
|
mobile: data.refundInfo.refund_address_mobile,
|
|
province_name: data.refundInfo.refund_address_province_name,
|
|
province_id: data.refundInfo.refund_address_province_id,
|
|
city_name: data.refundInfo.refund_address_city_name,
|
|
city_id: data.refundInfo.refund_address_city_id,
|
|
area_name: data.refundInfo.refund_address_area_name,
|
|
area_id: data.refundInfo.refund_address_area_id,
|
|
address_detail: data.refundInfo.refund_address_detail
|
|
},
|
|
driver: data.driver,
|
|
consign_type: data.sendType || 1,
|
|
weight: 1,
|
|
order_item_ids: data.item_ids,
|
|
use_mode: 0
|
|
}
|
|
await post('/api/v1/pickup/check/price', params).then((res) => {
|
|
if(res.data.pickupSliceTimes && res.data.pickupSliceTimes.length) {
|
|
let List = JSON.parse(JSON.stringify(res.data.pickupSliceTimes))
|
|
List.reverse()
|
|
List.forEach((item) => {
|
|
data.dateList.push(item.dateKey)
|
|
data.timeObj[item.dateKey] = []
|
|
item.pickupSliceTimes.forEach((it) => {
|
|
data.timeObj[item.dateKey].push(it.startTime + '-' + it.endTime)
|
|
})
|
|
})
|
|
data.timeList = data.timeObj[data.dateList[0]] || []
|
|
if(data.pickup_id && type) {
|
|
data.dateIndex = data.dateList.indexOf(data.pickTimeObj.date)
|
|
data.timeList = data.timeObj[data.pickTimeObj.date] || []
|
|
data.timeIndex = data.timeList.indexOf(data.pickTimeObj.start + '-' + data.pickTimeObj.end)
|
|
if(data.dateIndex == -1 || data.timeIndex == -1) {
|
|
data.dateIndex = data.timeIndex = ''
|
|
data.timeList = data.timeObj[data.dateList[0]] || []
|
|
}
|
|
}
|
|
}
|
|
})
|
|
} else {
|
|
let params = {
|
|
sender: {
|
|
province_name: data.sender.province.name,
|
|
city_name: data.sender.city.name,
|
|
area_name: data.sender.area.name,
|
|
address_detail: data.sender.address
|
|
},
|
|
receiver: {
|
|
province_name: data.refundInfo.refund_address_province_name,
|
|
city_name: data.refundInfo.refund_address_city_name,
|
|
area_name: data.refundInfo.refund_address_area_name,
|
|
address_detail: data.refundInfo.refund_address_detail
|
|
}
|
|
}
|
|
await post('/api/v1/pickup/check/area', params).then((res) => {
|
|
res.data.forEach((item) => {
|
|
let date = item.start_time.split(' ')[0] // 2022-09-26
|
|
let start = item.start_time.split(' ')[1] // 15:00:00
|
|
let end = item.end_time.split(' ')[1] // 17:00:00
|
|
if (data.dateList.indexOf(date) === -1) {
|
|
data.dateList.push(date)
|
|
data.timeObj[date] = []
|
|
data.timeObj[date].push(start + '-' + end)
|
|
} else {
|
|
data.timeObj[date].push(start + '-' + end)
|
|
}
|
|
})
|
|
data.timeList = data.timeObj[data.dateList[0]] || []
|
|
if(data.pickup_id && type) {
|
|
data.dateIndex = data.dateList.indexOf(data.pickTimeObj.date)
|
|
data.timeList = data.timeObj[data.pickTimeObj.date] || []
|
|
data.timeIndex = data.timeList.indexOf(data.pickTimeObj.start + '-' + data.pickTimeObj.end)
|
|
if(data.dateIndex == -1 || data.timeIndex == -1) {
|
|
data.dateIndex = data.timeIndex = ''
|
|
data.timeList = data.timeObj[data.dateList[0]] || []
|
|
}
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
async function selectAddr(item) {
|
|
data.sender = item
|
|
await getSendTime()
|
|
data.showAddr = false
|
|
}
|
|
|
|
function openTime() {
|
|
if(Object.keys(data.sender).length === 0) {
|
|
showToast('请先添加寄件地址')
|
|
return false
|
|
}
|
|
data.showTime = true
|
|
}
|
|
|
|
function selectDate(it ,index) {
|
|
data.dateIndex = index
|
|
data.timeList = data.timeObj[data.dateList[data.dateIndex]]
|
|
}
|
|
|
|
function selectTime(it ,index) {
|
|
if(data.dateIndex === '') {
|
|
data.dateIndex = 0
|
|
}
|
|
data.timeIndex = index
|
|
data.showTime = false
|
|
}
|
|
|
|
function toAddress() {
|
|
data.showAddr = false
|
|
uni.navigateTo({
|
|
url: '/pages/address/info/index'
|
|
})
|
|
}
|
|
|
|
// 如果是修改寄件,获取寄件详情
|
|
function getPickupInfo() {
|
|
get(`/api/v1/pickup/${data.pickup_id}`).then((res) => {
|
|
data.puInfo = res.data
|
|
// 寄件人信息
|
|
data.sender.name = res.data.sender_name
|
|
data.sender.mobile = res.data.sender_mobile
|
|
data.sender.province.name = res.data.sender_province_name
|
|
data.sender.province_id = res.data.sender_province_id
|
|
data.sender.city.name = res.data.sender_city_name
|
|
data.sender.city_id = res.data.sender_city_id
|
|
data.sender.area.name = res.data.sender_area_name
|
|
data.sender.area_id = res.data.sender_area_id
|
|
data.sender.address = res.data.sender_address_detail
|
|
// 收件人信息
|
|
data.refundInfo.refund_address_province_id = res.data.receiver_province_id
|
|
data.refundInfo.refund_address_city_id = res.data.receiver_city_id
|
|
data.refundInfo.refund_address_name = res.data.receiver_name
|
|
data.refundInfo.refund_address_area_id = res.data.receiver_area_id
|
|
data.refundInfo.refund_address_mobile = res.data.receiver_mobile
|
|
data.refundInfo.refund_address_tel = res.data.receiver_tel
|
|
data.refundInfo.refund_address_province_name = res.data.receiver_province_name
|
|
data.refundInfo.refund_address_city_name = res.data.receiver_city_name
|
|
data.refundInfo.refund_address_area_name = res.data.receiver_area_name
|
|
data.refundInfo.refund_address_detail = res.data.receiver_address_detail
|
|
|
|
data.sendType = res.data.consign_type
|
|
data.pickTimeObj.date = res.data.start_date.split(' ')[0]
|
|
data.pickTimeObj.start = res.data.start_date.split(' ')[1]
|
|
data.pickTimeObj.end = res.data.end_date.split(' ')[1]
|
|
|
|
})
|
|
}
|
|
|
|
function toSendDetail() {
|
|
if(data.sendType === '') {
|
|
showToast('请选择寄件类型')
|
|
return false
|
|
}
|
|
if(data.dateIndex === '' || data.timeIndex === '') {
|
|
showToast('请选择上门取件时间')
|
|
return false
|
|
}
|
|
if(data.addressList.length > 1) {
|
|
data.showTips = true
|
|
} else {
|
|
confirmBack()
|
|
}
|
|
}
|
|
|
|
function confirmBack() {
|
|
uni.showLoading({
|
|
title: '正在提交...',
|
|
mask: true
|
|
})
|
|
let params = {
|
|
order_refund_apply_id: data.refund_id,
|
|
start_date: data.dateList[data.dateIndex] + ' ' + data.timeList[data.timeIndex].split('-')[0],
|
|
end_date: data.dateList[data.dateIndex] + ' ' + data.timeList[data.timeIndex].split('-')[1],
|
|
consign_type: data.sendType,
|
|
sender: {
|
|
address: '',
|
|
province_id: data.sender.province_id,
|
|
city_id: data.sender.city_id,
|
|
name: data.sender.name,
|
|
area_id: data.sender.area_id,
|
|
mobile: data.sender.mobile,
|
|
tel: '',
|
|
province_name: data.sender.province.name,
|
|
city_name: data.sender.city.name,
|
|
area_name: data.sender.area.name,
|
|
address_detail: data.sender.address
|
|
},
|
|
receiver: {
|
|
address: '',
|
|
province_id: data.refundInfo.refund_address_province_id,
|
|
city_id: data.refundInfo.refund_address_city_id,
|
|
name: data.refundInfo.refund_address_name,
|
|
area_id: data.refundInfo.refund_address_area_id,
|
|
mobile: data.refundInfo.refund_address_mobile,
|
|
tel: data.refundInfo.refund_address_tel,
|
|
province_name: data.refundInfo.refund_address_province_name,
|
|
city_name: data.refundInfo.refund_address_city_name,
|
|
area_name: data.refundInfo.refund_address_area_name,
|
|
address_detail: data.refundInfo.refund_address_detail
|
|
},
|
|
driver: data.driver
|
|
}
|
|
if(data.pickup_id) {
|
|
post('/api/v1/pickup/' + data.pickup_id, params, 'PUT').then((res) => {
|
|
uni.hideLoading()
|
|
wx.navigateBack({
|
|
delta: 1
|
|
})
|
|
})
|
|
} else {
|
|
post('/api/v1/pickup', params).then((res) => {
|
|
uni.hideLoading()
|
|
wx.navigateBack({
|
|
delta: 1
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
function selectSendType(id) {
|
|
data.sendType = id
|
|
data.showSendType = false
|
|
}
|
|
|
|
const address = ref(null)
|
|
watch(address, (newValue, oldValue) => {
|
|
get('/api/v1/address').then((res) => {
|
|
res.data.forEach((item) => {
|
|
if (item.id === newValue.id) {
|
|
data.sender = item
|
|
}
|
|
})
|
|
data.addressList = res.data
|
|
})
|
|
})
|
|
|
|
watch(() => data.showTime, (next) => {
|
|
if(next) {
|
|
data.tempData = [data.dateIndex, data.timeIndex]
|
|
}
|
|
}, { deep: true, })
|
|
|
|
function closeTime() {
|
|
data.dateIndex = data.tempData[0]
|
|
data.timeIndex = data.tempData[1]
|
|
data.showTime = false
|
|
}
|
|
|
|
async function getStoreInfo() {
|
|
let res = await getShopInfo()
|
|
data.driver = res.pickup_default_type
|
|
if(data.pickup_id) {
|
|
data.driver = data.puInfo.driver
|
|
}
|
|
getSendTime('init')
|
|
}
|
|
|
|
return {
|
|
sendTypeObj,
|
|
sendTypeList,
|
|
...toRefs(data),
|
|
selectDate,
|
|
selectTime,
|
|
selectAddr,
|
|
openTime,
|
|
toAddress,
|
|
toSendDetail,
|
|
getAddressList,
|
|
getRefundInfo,
|
|
getSendTime,
|
|
selectSendType,
|
|
address,
|
|
closeTime,
|
|
getPickupInfo,
|
|
getStoreInfo,
|
|
confirmBack
|
|
}
|
|
},
|
|
async onLoad(options) {
|
|
uni.showLoading({
|
|
title: '加载中...',
|
|
mask: true
|
|
})
|
|
this.refund_id = options.refund_id
|
|
await this.getAddressList()
|
|
await this.getRefundInfo()
|
|
if(options.pickup_id) {
|
|
this.pickup_id = options.pickup_id
|
|
await this.getPickupInfo()
|
|
}
|
|
uni.hideLoading()
|
|
setTimeout(() => {
|
|
this.getStoreInfo()
|
|
}, 1500)
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.whole {
|
|
.addrbox{
|
|
padding: 0 30rpx;
|
|
background: #fff;
|
|
.item{
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
.addr{
|
|
width: calc(100% - 60rpx);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 30rpx 0;
|
|
&.addr1{
|
|
border-bottom: 1rpx solid #e5e5e5;
|
|
}
|
|
.box{
|
|
.tit{
|
|
color: #000;
|
|
font-size: 30rpx;
|
|
}
|
|
text{
|
|
color: #7B7B7B;
|
|
font-size: 26rpx;
|
|
}
|
|
}
|
|
}
|
|
.icon{
|
|
color: #fff;
|
|
font-size: 24rpx;
|
|
width: 40rpx;
|
|
height: 40rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: #7B7B7B;
|
|
border-radius: 50%;
|
|
&.ji{
|
|
background: #F14939;
|
|
position: relative;
|
|
&::after{
|
|
width: 0;
|
|
height: 100rpx;
|
|
content: '';
|
|
position: absolute;
|
|
border-left: 1rpx dashed #E5E5E5;
|
|
left: 20rpx;
|
|
top: 42rpx;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.empty{
|
|
width: calc(100% - 60rpx);
|
|
text-align: center;
|
|
padding: 10rpx 0;
|
|
text{
|
|
font-size: 24rpx;
|
|
color: #7B7B7B;
|
|
}
|
|
.add{
|
|
width: 60%;
|
|
margin: 20rpx auto 0;
|
|
height: 55rpx;
|
|
border: 1rpx dashed v-bind('Color');
|
|
font-size: 24rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
color: v-bind('Color');
|
|
}
|
|
}
|
|
}
|
|
.timebox{
|
|
font-size: 30rpx;
|
|
color: #7B7B7B;
|
|
padding: 40rpx 30rpx;
|
|
background: #fff;
|
|
margin-top: 20rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
text{
|
|
color: #000;
|
|
margin-left: 30rpx;
|
|
}
|
|
}
|
|
.bottom{
|
|
position: fixed;
|
|
left: 0;
|
|
bottom: 20rpx;
|
|
width: 100%;
|
|
padding: 0 30rpx;
|
|
z-index: 10;
|
|
box-sizing: border-box;
|
|
.btn{
|
|
height: 80rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 30rpx;
|
|
width: 100%;
|
|
color: #fff;
|
|
border-radius: 80rpx;
|
|
background: v-bind('Color');
|
|
}
|
|
}
|
|
}
|
|
|
|
// 寄件地址弹窗
|
|
.typebox{
|
|
padding: 0 30rpx 20rpx;
|
|
.title{
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
font-weight: bold;
|
|
padding: 30rpx 0;
|
|
border-bottom: 1rpx solid #E5E5E5;
|
|
}
|
|
.box{
|
|
min-height: 40vh;
|
|
max-height: 66vh;
|
|
overflow: auto;
|
|
padding-bottom: 70rpx;
|
|
.row{
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
border-bottom: 1rpx solid #E5E5E5;
|
|
padding: 20rpx 0;
|
|
.tit{
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
margin-bottom: 6rpx;
|
|
}
|
|
text{
|
|
font-size: 26rpx;
|
|
color: #999;
|
|
}
|
|
}
|
|
|
|
}
|
|
.btn{
|
|
height: 80rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 30rpx;
|
|
width: 100%;
|
|
border-radius: 80rpx;
|
|
box-sizing: border-box;
|
|
border: 1rpx solid v-bind('Color');
|
|
color: v-bind('Color');
|
|
background: #fff;
|
|
}
|
|
}
|
|
|
|
.timepopup{
|
|
padding: 0 30rpx;
|
|
.title{
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
font-weight: bold;
|
|
padding: 30rpx 0;
|
|
border-bottom: 1rpx solid #E5E5E5;
|
|
}
|
|
.box{
|
|
overflow: hidden;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
.date{
|
|
width: 200rpx;
|
|
height: 70vh;
|
|
overflow: auto;
|
|
.row{
|
|
padding: 30rpx 0;
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
&.select{
|
|
color: v-bind('Color');
|
|
}
|
|
}
|
|
}
|
|
.time{
|
|
width: calc(100% - 250rpx);
|
|
height: 70vh;
|
|
overflow: auto;
|
|
.row{
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 30rpx 0;
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
&.select{
|
|
color: v-bind('Color');
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.reasonbox{
|
|
padding: 0 30rpx;
|
|
min-height: 50vh;
|
|
.title{
|
|
font-size: 30rpx;
|
|
color: #303030;
|
|
font-weight: bold;
|
|
padding: 30rpx 0;
|
|
border-bottom: 1rpx solid #E5E5E5;
|
|
}
|
|
.box{
|
|
padding-bottom: 100rpx;
|
|
.row{
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 20rpx 0;
|
|
.tit{
|
|
font-size: 28rpx;
|
|
color: #707070;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.iconfont{
|
|
font-size: 20px;
|
|
}
|
|
.icon-checked{
|
|
color: v-bind('Color');
|
|
}
|
|
.icon-circle{
|
|
color: #999;
|
|
}
|
|
</style>
|