2023-09-25 11:01:50 +00:00
|
|
|
|
<template>
|
2024-12-11 01:31:41 +00:00
|
|
|
|
<div class="order-details">
|
|
|
|
|
<title-block
|
|
|
|
|
class="titile-d"
|
|
|
|
|
:title="type === 'detail' ? '详情' : '确认订单'"
|
|
|
|
|
>
|
|
|
|
|
<template #left>
|
|
|
|
|
<div>
|
|
|
|
|
<image
|
|
|
|
|
style="width: 112rpx; height: 52rpx"
|
|
|
|
|
src="https://cdns.fontree.cn/fonchain-main/prod/image/default/artwork/785cf885-c4c9-44b3-8155-4b39988c7ef8.png"
|
|
|
|
|
@click="back"
|
|
|
|
|
></image>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
</title-block>
|
|
|
|
|
<div class="content-list" v-if="listPaintings.length > 1">
|
|
|
|
|
<div class="wrap1">*请注意确认寄存结束时间</div>
|
|
|
|
|
<div class="wrap2">
|
|
|
|
|
<div class="wrap2_1" :style="{ height: `${listHeight}rpx` }">
|
|
|
|
|
<div
|
|
|
|
|
:class="[
|
|
|
|
|
'item',
|
|
|
|
|
index === currentIndex ? 'active' : ''
|
|
|
|
|
]"
|
|
|
|
|
@click="itemClick(index)"
|
|
|
|
|
v-for="(item, index) of listPaintings"
|
|
|
|
|
>
|
|
|
|
|
<div class="item_1">{{ index + 1 }}</div>
|
|
|
|
|
<div class="item_2">
|
|
|
|
|
<div class="item_2_1">
|
|
|
|
|
<img
|
|
|
|
|
:src="listPaintings[index].fileList1[0].url"
|
|
|
|
|
alt=""
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="item_2_2">
|
|
|
|
|
{{ listPaintings[index].artworkNum }}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="item_3">
|
|
|
|
|
{{ listPaintings[index].artworkName }}
|
|
|
|
|
</div>
|
|
|
|
|
<div class="item_4">
|
|
|
|
|
{{
|
|
|
|
|
listPaintings[index].warehouseID
|
|
|
|
|
? addressList.find(
|
|
|
|
|
(x) =>
|
|
|
|
|
x.ID ===
|
|
|
|
|
listPaintings[index].warehouseID
|
|
|
|
|
).address
|
|
|
|
|
: ''
|
|
|
|
|
}}
|
|
|
|
|
</div>
|
|
|
|
|
<div class="item_5">
|
|
|
|
|
{{ listPaintings[index].endAt }}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2_2" @click="expand">
|
|
|
|
|
<div
|
|
|
|
|
class="wrap2_2_1"
|
|
|
|
|
v-if="listPaintings.length > 2"
|
|
|
|
|
:style="{
|
|
|
|
|
transform: `${isExpand ? 'rotate(180deg)' : ''}`
|
|
|
|
|
}"
|
|
|
|
|
>
|
|
|
|
|
<img
|
|
|
|
|
src="https://cdns.fontree.cn/fonchain-main/prod/image/default/approval/13639162-2871-4187-abc5-71c2d9f01ac2.png"
|
|
|
|
|
alt=""
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2_2_2">
|
|
|
|
|
共计{{ listPaintings.length }}幅画作
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<scroll-view
|
|
|
|
|
class="content-center"
|
|
|
|
|
:style="{
|
|
|
|
|
marginTop: `${contentListHeight + 10}px`,
|
|
|
|
|
marginBottom: type === 'detail' ? '30rpx' : '180rpx'
|
|
|
|
|
}"
|
|
|
|
|
@scroll="scrollDetail"
|
|
|
|
|
:scroll-into-view="scrollId"
|
|
|
|
|
scroll-y="true"
|
|
|
|
|
>
|
|
|
|
|
<div
|
|
|
|
|
class="content-scroll"
|
|
|
|
|
v-for="(item, index) of listPaintings"
|
|
|
|
|
:id="`item-${index}`"
|
|
|
|
|
>
|
|
|
|
|
<div class="painting-name" v-if="listPaintings.length > 1">
|
|
|
|
|
<div class="wrap1">画作{{ index + 1 }}:</div>
|
|
|
|
|
<div
|
|
|
|
|
class="wrap2"
|
|
|
|
|
style="display: none"
|
|
|
|
|
@click="itemDelete"
|
|
|
|
|
>
|
|
|
|
|
删除
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content2">
|
|
|
|
|
<u-upload
|
|
|
|
|
:fileList="listPaintings[index].fileList1"
|
|
|
|
|
@afterRead="
|
|
|
|
|
(e) => {
|
|
|
|
|
afterRead(e, index)
|
|
|
|
|
}
|
|
|
|
|
"
|
|
|
|
|
@delete="
|
|
|
|
|
(e) => {
|
|
|
|
|
deletePic(e, index)
|
|
|
|
|
}
|
|
|
|
|
"
|
|
|
|
|
name="6"
|
|
|
|
|
multiple
|
|
|
|
|
:maxCount="1"
|
|
|
|
|
width="404rpx"
|
|
|
|
|
height="306rpx"
|
|
|
|
|
>
|
|
|
|
|
<div
|
|
|
|
|
style="
|
|
|
|
|
width: 404rpx;
|
|
|
|
|
height: 306rpx;
|
|
|
|
|
background: #000;
|
|
|
|
|
border-radius: 20rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
"
|
|
|
|
|
>
|
|
|
|
|
<div style="margin-bottom: 14rpx">
|
|
|
|
|
<image
|
|
|
|
|
style="width: 38.32rpx; height: 38.2rpx"
|
|
|
|
|
src="../../static/zu142@3x.png"
|
|
|
|
|
></image>
|
|
|
|
|
</div>
|
|
|
|
|
<div style="font-size: 32rpx; color: #fff">
|
|
|
|
|
上传画作图片
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</u-upload>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content3">
|
|
|
|
|
<div class="prompt">*扫描自动填入</div>
|
|
|
|
|
<div class="wrap1">
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">画作编号</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
disabled
|
|
|
|
|
v-model="listPaintings[index].artworkNum"
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请输入画作编号"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1_4"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">画作名称</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
disabled
|
|
|
|
|
v-model="listPaintings[index].artworkName"
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请输入画作名称"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1_4"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">画家名称</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
disabled
|
|
|
|
|
v-model="listPaintings[index].artistName"
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请输入画家名称"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1_4"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">画作平尺数</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
disabled
|
|
|
|
|
v-model="
|
|
|
|
|
listPaintings[index].artworkSquareSize
|
|
|
|
|
"
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请输入画作平尺数"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content4">
|
|
|
|
|
<div class="wrap1">
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">寄存地址</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
disabled
|
|
|
|
|
:value="
|
|
|
|
|
listPaintings[index].warehouseID
|
|
|
|
|
? addressList.find(
|
|
|
|
|
(x) =>
|
|
|
|
|
x.ID ===
|
|
|
|
|
listPaintings[index]
|
|
|
|
|
.warehouseID
|
|
|
|
|
).address
|
|
|
|
|
: ''
|
|
|
|
|
"
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请选择寄存地址"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1_4"></div>
|
|
|
|
|
<!-- <div class="wrap1_1_5">
|
2024-04-02 12:09:12 +00:00
|
|
|
|
<image src="../../static/zu611@3x.png"></image>
|
|
|
|
|
</div>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1_1">
|
|
|
|
|
<div class="wrap1_1_1">寄存时长</div>
|
|
|
|
|
<div class="wrap1_1_2"></div>
|
|
|
|
|
<div class="wrap1_1_3">
|
|
|
|
|
<input
|
|
|
|
|
style="color: #939393; font-size: 24rpx"
|
|
|
|
|
:value="listPaintings[index].endAt"
|
|
|
|
|
disabled
|
|
|
|
|
placeholder-style="color: #939393;font-size: 24rpx;"
|
|
|
|
|
placeholder="请选择寄存时长"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div class="wrap1_1_5">
|
2024-04-02 12:09:12 +00:00
|
|
|
|
<image src="../../static/zu612@3x.png"></image>
|
|
|
|
|
</div>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div class="content7" @click="addPainting">
|
2024-04-02 12:09:12 +00:00
|
|
|
|
<div class="wrap1">
|
|
|
|
|
<div class="horizontal"></div>
|
|
|
|
|
<div class="vertical"></div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2">添加</div>
|
|
|
|
|
</div>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
</div>
|
|
|
|
|
</scroll-view>
|
|
|
|
|
|
|
|
|
|
<div class="content5" v-if="type !== 'detail'">
|
|
|
|
|
<div
|
|
|
|
|
class="wrap4"
|
|
|
|
|
v-show="isExpand1"
|
|
|
|
|
:style="{ top: `-${152 * listPaintings.length}rpx` }"
|
|
|
|
|
>
|
|
|
|
|
<div class="item" v-for="(item, index) in listPaintings">
|
|
|
|
|
<div class="item_1">{{ index + 1 }}</div>
|
|
|
|
|
<div class="item_2">{{ item.artworkNum }}</div>
|
|
|
|
|
<div class="item_3">{{ item.artworkName }}</div>
|
|
|
|
|
<div class="item_4">¥ {{ item.expectedPayment }}</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div
|
|
|
|
|
class="wrap3"
|
|
|
|
|
@click="expand1"
|
|
|
|
|
:style="{ transform: `${isExpand1 ? '' : 'rotate(180deg)'}` }"
|
|
|
|
|
>
|
|
|
|
|
<img
|
|
|
|
|
src="https://cdns.fontree.cn/fonchain-main/prod/image/default/approval/13639162-2871-4187-abc5-71c2d9f01ac2.png"
|
|
|
|
|
alt=""
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap1">
|
|
|
|
|
<div class="wrap1_1">*仅微信付款</div>
|
|
|
|
|
<div class="wrap1_2">预计 ¥{{ totalMoney || '0' }}</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="wrap2" @click="signContract">付款</div>
|
|
|
|
|
</div>
|
|
|
|
|
<u-popup
|
|
|
|
|
:round="15"
|
|
|
|
|
:show="show_2"
|
|
|
|
|
mode="bottom"
|
|
|
|
|
@open="
|
|
|
|
|
() => {
|
|
|
|
|
show_2 = true
|
|
|
|
|
}
|
|
|
|
|
"
|
|
|
|
|
>
|
|
|
|
|
<div class="poup1">
|
|
|
|
|
<div class="content1">
|
|
|
|
|
<div class="wrap1">更换您的寄存地址</div>
|
|
|
|
|
<div @click="show_2 = false" class="wrap2">
|
|
|
|
|
<image
|
|
|
|
|
src="https://cdns.fontree.cn/fonchain-main/prod/image/default/artwork/d84593b3-10a8-4d86-be8c-b048b03b22c7.png"
|
|
|
|
|
></image>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content2"></div>
|
|
|
|
|
<div class="content3">
|
|
|
|
|
<div
|
|
|
|
|
v-for="(item, index) in addressList"
|
|
|
|
|
@click="selectAddress(item)"
|
|
|
|
|
:class="[
|
|
|
|
|
listPaintings[currentIndex].warehouseID === item.ID
|
|
|
|
|
? 'active'
|
|
|
|
|
: ''
|
|
|
|
|
]"
|
|
|
|
|
:key="index"
|
|
|
|
|
class="wrap1"
|
|
|
|
|
>
|
|
|
|
|
<div class="wrap1_1">{{ item.address }}</div>
|
|
|
|
|
<div class="wrap1_2">*剩余{{ item.leftNum }}位置</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div class="wrap1 active">
|
2024-04-02 09:11:42 +00:00
|
|
|
|
<div class="wrap1_1">某某某某某某某地方</div>
|
|
|
|
|
<div class="wrap1_2">剩余12位置</div>
|
|
|
|
|
</div>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
<!-- <div class="wrap1 disabled">
|
2024-04-02 09:11:42 +00:00
|
|
|
|
<div class="wrap1_1">某某某某某某某地方</div>
|
|
|
|
|
<div class="wrap1_2">*已满员</div>
|
|
|
|
|
</div>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
</div>
|
|
|
|
|
<div class="content2"></div>
|
|
|
|
|
<div class="content6" @click="confirmAddress">
|
|
|
|
|
<div class="wrap1">确定</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</u-popup>
|
|
|
|
|
|
|
|
|
|
<!-- <u-popup :round="15" :show="show_1" mode="bottom" @open="()=>{show_1=true}">
|
2024-04-02 09:11:42 +00:00
|
|
|
|
<div class="poup">
|
|
|
|
|
<div class="content1" style="margin-top: 20rpx">
|
|
|
|
|
<div class="wrap1">寄存时长</div>
|
|
|
|
|
<div @click="show_1=false" class="wrap2">
|
|
|
|
|
<image
|
|
|
|
|
src="https://cdns.fontree.cn/fonchain-main/prod/image/default/artwork/d84593b3-10a8-4d86-be8c-b048b03b22c7.png"></image>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content2"></div>
|
|
|
|
|
<div class="content7" @click="show = true">
|
|
|
|
|
<u-datetime-picker
|
|
|
|
|
:show="show"
|
|
|
|
|
@confirm="confirmDate"
|
|
|
|
|
mode="date"
|
|
|
|
|
@cancel="show=false"
|
|
|
|
|
:minDate="minDate"
|
|
|
|
|
></u-datetime-picker>
|
|
|
|
|
<u--input
|
|
|
|
|
readonly
|
|
|
|
|
placeholder="点击选择"
|
|
|
|
|
border="surround"
|
|
|
|
|
v-model="listPaintings[currentIndex].endAt"
|
|
|
|
|
></u--input>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!– <div class="content2"></div>
|
|
|
|
|
<div class="content4">起始日期</div>
|
|
|
|
|
<div class="content5">
|
|
|
|
|
<div class="wrap1">年份</div>
|
|
|
|
|
<div class="wrap2">月</div>
|
|
|
|
|
<div class="wrap3">日</div>
|
|
|
|
|
</div>–>
|
|
|
|
|
<!– <div style="margin-left: -30rpx;margin-right: -30rpx">
|
|
|
|
|
<picker-view indicator-class="test" :value="value" @change="changeData" class="picker-view">
|
|
|
|
|
<picker-view-column>
|
|
|
|
|
<view style="display: flex;align-items: center;justify-content: center" class="item"
|
|
|
|
|
:class="[isDateFont(item,0)?'fontDate':'']" v-for="(item,index) in years" :key="index">{{ item }}年
|
|
|
|
|
</view>
|
|
|
|
|
</picker-view-column>
|
|
|
|
|
<picker-view-column>
|
|
|
|
|
<view style="display: flex;align-items: center;justify-content: center" class="item"
|
|
|
|
|
:class="[isDateFont(item,1)?'fontDate':'']" v-for="(item,index) in months" :key="index">{{ item }}月
|
|
|
|
|
</view>
|
|
|
|
|
</picker-view-column>
|
|
|
|
|
<picker-view-column>
|
|
|
|
|
<view style="display: flex;align-items: center;justify-content: center" class="item"
|
|
|
|
|
:class="[isDateFont(item,2)?'fontDate':'']" v-for="(item,index) in days" :key="index">{{ item }}日
|
|
|
|
|
</view>
|
|
|
|
|
</picker-view-column>
|
|
|
|
|
</picker-view>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="content2"></div>–>
|
|
|
|
|
<div class="content6" @click="confirmCycle">
|
|
|
|
|
<div class="wrap1">确定</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</u-popup>-->
|
2024-12-11 01:31:41 +00:00
|
|
|
|
<u-picker
|
|
|
|
|
:show="show_1"
|
|
|
|
|
ref="uPicker"
|
|
|
|
|
:columns="columns"
|
|
|
|
|
@confirm="confirmDate"
|
|
|
|
|
@close="show_1 = false"
|
|
|
|
|
@change="changeHandler"
|
|
|
|
|
></u-picker>
|
|
|
|
|
<u-loading-page
|
|
|
|
|
bgColor="rgba(0,0,0,0.5)"
|
|
|
|
|
:loading="loading"
|
|
|
|
|
loading-text="正在调起微信付款..."
|
|
|
|
|
></u-loading-page>
|
|
|
|
|
</div>
|
2023-09-25 11:01:50 +00:00
|
|
|
|
</template>
|
|
|
|
|
<script>
|
2024-12-11 01:31:41 +00:00
|
|
|
|
import http from '@/http/api'
|
|
|
|
|
import { postDataByParams } from '../../http/service'
|
|
|
|
|
import { type } from '../../uni_modules/uni-forms/components/uni-forms/utils'
|
2023-09-25 11:01:50 +00:00
|
|
|
|
|
|
|
|
|
export default {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
name: 'order-details',
|
|
|
|
|
data() {
|
|
|
|
|
const date = new Date()
|
|
|
|
|
const years = []
|
|
|
|
|
const year = date.getFullYear()
|
|
|
|
|
const months = []
|
|
|
|
|
const month = date.getMonth() + 1
|
|
|
|
|
const days = []
|
|
|
|
|
const day = date.getDate()
|
|
|
|
|
for (let i = 1990; i <= date.getFullYear(); i++) {
|
|
|
|
|
years.push(i)
|
|
|
|
|
}
|
|
|
|
|
for (let i = 1; i <= 12; i++) {
|
|
|
|
|
months.push(i)
|
|
|
|
|
}
|
|
|
|
|
for (let i = 1; i <= 31; i++) {
|
|
|
|
|
days.push(i)
|
|
|
|
|
}
|
|
|
|
|
return {
|
|
|
|
|
itemHeight: 0,
|
|
|
|
|
scrollId: 'item-0',
|
|
|
|
|
columns: [[180], ['*'], [1, 2, 3, 4, 5], ['='], [180]],
|
|
|
|
|
currentIndex: 0,
|
|
|
|
|
listPaintings: [
|
|
|
|
|
{
|
|
|
|
|
expectedPayment: '',
|
|
|
|
|
fileList1: [],
|
|
|
|
|
artworkNum: '',
|
|
|
|
|
artworkName: '',
|
|
|
|
|
artistName: '',
|
|
|
|
|
artworkSquareSize: '',
|
|
|
|
|
warehouseID: '',
|
|
|
|
|
endAt: ''
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
contentListHeight: 0,
|
|
|
|
|
isExpand: false,
|
|
|
|
|
isExpand1: false,
|
|
|
|
|
listHeight: 308,
|
|
|
|
|
minDate: '',
|
|
|
|
|
type: '',
|
|
|
|
|
show: false,
|
|
|
|
|
value1: '',
|
|
|
|
|
loading: false,
|
|
|
|
|
fileList1: [],
|
|
|
|
|
dayMoney: '',
|
|
|
|
|
expectedPayment: '',
|
|
|
|
|
warehouseID: '',
|
|
|
|
|
cycleId: '',
|
|
|
|
|
cycleList: [],
|
|
|
|
|
addressList: [],
|
|
|
|
|
info: {},
|
|
|
|
|
show_2: false,
|
|
|
|
|
data: [],
|
|
|
|
|
show_1: false,
|
|
|
|
|
title: 'picker-view',
|
|
|
|
|
years,
|
|
|
|
|
year,
|
|
|
|
|
months,
|
|
|
|
|
month,
|
|
|
|
|
days,
|
|
|
|
|
day,
|
|
|
|
|
value: [9999, month - 1, day - 1],
|
|
|
|
|
visible: true,
|
2024-12-11 02:26:58 +00:00
|
|
|
|
url: '',
|
|
|
|
|
status: 0
|
2024-12-11 01:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
computed: {
|
|
|
|
|
totalMoney() {
|
|
|
|
|
return this.listPaintings.reduce((total, item) => {
|
|
|
|
|
return total + Number(item.expectedPayment)
|
|
|
|
|
}, 0)
|
|
|
|
|
},
|
|
|
|
|
currentArtworkSquareSize() {
|
|
|
|
|
if (
|
|
|
|
|
this.currentIndex >= 0 &&
|
|
|
|
|
this.currentIndex < this.listPaintings.length
|
|
|
|
|
) {
|
|
|
|
|
return this.listPaintings[this.currentIndex].artworkSquareSize
|
|
|
|
|
}
|
|
|
|
|
return null
|
|
|
|
|
},
|
|
|
|
|
currentEndAt() {
|
|
|
|
|
if (
|
|
|
|
|
this.currentIndex >= 0 &&
|
|
|
|
|
this.currentIndex < this.listPaintings.length
|
|
|
|
|
) {
|
|
|
|
|
return this.listPaintings[this.currentIndex].endAt
|
|
|
|
|
}
|
|
|
|
|
return null
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
watch: {
|
|
|
|
|
currentArtworkSquareSize(newValue, oldValue) {
|
|
|
|
|
if (newValue !== oldValue) {
|
|
|
|
|
this.obtainAmount()
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
currentEndAt(newValue, oldValue) {
|
|
|
|
|
console.log(newValue, oldValue)
|
|
|
|
|
if (newValue !== oldValue) {
|
|
|
|
|
this.obtainAmount()
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
onLoad(load) {
|
|
|
|
|
if (load.url) {
|
|
|
|
|
this.url = load.url
|
|
|
|
|
this.getDetailUrl()
|
|
|
|
|
}
|
|
|
|
|
if (load.type === 'detail') {
|
|
|
|
|
this.getData()
|
|
|
|
|
this.type = load.type
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (load.type === 'scan') {
|
|
|
|
|
this.listPaintings = uni.getStorageSync('scanlist')?.map((x) => {
|
|
|
|
|
return {
|
|
|
|
|
...x,
|
|
|
|
|
expectedPayment: '',
|
|
|
|
|
warehouseID: '',
|
|
|
|
|
fileList1: [{ url: x.artworkImg }]
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
this.listPaintings = uni.getStorageSync('orderingInfo').listPaintings
|
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.getCycle()
|
|
|
|
|
if (this.$mp.query.url) {
|
|
|
|
|
this.url = this.$mp.query.url
|
|
|
|
|
this.getDetailUrl()
|
|
|
|
|
}
|
|
|
|
|
this.getAddress()
|
|
|
|
|
this.$nextTick(async () => {
|
|
|
|
|
this.itemHeight = await this.getElementHeight('.content-scroll')
|
|
|
|
|
this.getheight()
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
getElementHeight(selector) {
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
const query = uni.createSelectorQuery()
|
|
|
|
|
query
|
|
|
|
|
.select(selector)
|
|
|
|
|
.boundingClientRect((data) => {
|
|
|
|
|
if (data) {
|
|
|
|
|
resolve(data.height) // 成功获取高度时,通过 Promise 返回
|
|
|
|
|
} else {
|
|
|
|
|
reject(new Error('无法获取元素高度')) // 如果找不到元素或获取高度失败时,通过 Promise 返回错误
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
.exec()
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
async scrollDetail(event) {
|
|
|
|
|
const scrollTop = event.detail.scrollTop // 获取当前滚动位置
|
|
|
|
|
const totalHeight = this.listPaintings.length * this.itemHeight
|
|
|
|
|
const scrollPercent = (scrollTop / totalHeight) * 100
|
|
|
|
|
const index = Math.floor(scrollTop / this.itemHeight) // 计算索引
|
|
|
|
|
/* console.log(`滚动了 ${scrollPercent}%`);
|
2024-04-02 12:09:12 +00:00
|
|
|
|
console.log(`滚动到了第 ${index} 个元素的位置`);*/
|
2024-12-11 01:31:41 +00:00
|
|
|
|
this.currentIndex = index
|
|
|
|
|
},
|
|
|
|
|
async getData() {
|
|
|
|
|
const data1 = {
|
|
|
|
|
ID: Number(this.$mp.query.ID)
|
|
|
|
|
}
|
|
|
|
|
const res1 = await postDataByParams(
|
|
|
|
|
'/api/v2/warehouse/detail',
|
|
|
|
|
data1
|
|
|
|
|
)
|
|
|
|
|
if (res1.code === 200) {
|
|
|
|
|
this.info = res1.data
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
changeHandler(e) {
|
|
|
|
|
const {
|
|
|
|
|
columnIndex,
|
|
|
|
|
value,
|
|
|
|
|
values,
|
|
|
|
|
index,
|
|
|
|
|
picker = this.$refs.uPicker
|
|
|
|
|
} = e
|
|
|
|
|
if (columnIndex === 2) {
|
|
|
|
|
picker.setColumnValues(this.columns.length - 1, [
|
|
|
|
|
this.columns[2][e.index] * this.columns[0][0]
|
|
|
|
|
])
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
itemDelete() {
|
|
|
|
|
this.listPaintings.splice(this.currentIndex, 1)
|
|
|
|
|
this.currentIndex = 0
|
|
|
|
|
if (this.listPaintings.length === 1) {
|
|
|
|
|
this.contentListHeight = 0
|
|
|
|
|
}
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
this.getheight()
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
itemClick(index) {
|
|
|
|
|
this.scrollId = `item-${index}`
|
|
|
|
|
this.currentIndex = index
|
|
|
|
|
},
|
|
|
|
|
addPainting() {
|
|
|
|
|
this.listPaintings.push({
|
|
|
|
|
expectedPayment: '',
|
|
|
|
|
fileList1: [],
|
|
|
|
|
artworkNum: '',
|
|
|
|
|
artworkName: '',
|
|
|
|
|
artistName: '',
|
|
|
|
|
artworkSquareSize: '',
|
|
|
|
|
warehouseID: this.listPaintings[0].warehouseID,
|
|
|
|
|
endAt: this.listPaintings[0].endAt
|
|
|
|
|
})
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
this.getheight()
|
|
|
|
|
})
|
|
|
|
|
this.currentIndex = this.currentIndex + 1
|
|
|
|
|
},
|
|
|
|
|
getheight() {
|
|
|
|
|
let query = uni.createSelectorQuery().in(this)
|
|
|
|
|
query
|
|
|
|
|
.select('.content-list')
|
|
|
|
|
.boundingClientRect((data) => {
|
|
|
|
|
if (data) {
|
|
|
|
|
let query = uni.createSelectorQuery().in(this)
|
|
|
|
|
query
|
|
|
|
|
.select('.titile-d')
|
|
|
|
|
.boundingClientRect((data1) => {
|
|
|
|
|
if (data1) {
|
|
|
|
|
this.contentListHeight =
|
|
|
|
|
data.bottom - data1.bottom
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
.exec()
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
.exec()
|
|
|
|
|
},
|
|
|
|
|
expand1() {
|
|
|
|
|
this.isExpand1 = !this.isExpand1
|
|
|
|
|
},
|
|
|
|
|
expand() {
|
|
|
|
|
if (this.isExpand) {
|
|
|
|
|
this.listHeight = 154 * 2
|
|
|
|
|
} else {
|
|
|
|
|
this.listHeight =
|
|
|
|
|
154 *
|
|
|
|
|
(this.listPaintings.length <= 7
|
|
|
|
|
? this.listPaintings.length
|
|
|
|
|
: 7)
|
|
|
|
|
}
|
|
|
|
|
this.isExpand = !this.isExpand
|
|
|
|
|
},
|
|
|
|
|
timestampToDateString(timestamp) {
|
|
|
|
|
const date = new Date(timestamp) // 把时间戳乘以1000转换为Date对象需要的毫秒数
|
|
|
|
|
const year = date.getFullYear()
|
|
|
|
|
const month = ('0' + (date.getMonth() + 1)).slice(-2) // 月份是从0开始的,所以加1,用slice保证格式是2位数
|
|
|
|
|
const day = ('0' + date.getDate()).slice(-2) // 用slice保证格式是2位数
|
|
|
|
|
return year + '-' + month + '-' + day
|
|
|
|
|
},
|
|
|
|
|
confirmDate(data) {
|
|
|
|
|
this.listPaintings[this.currentIndex].endAt =
|
|
|
|
|
data.value[data.value.length - 1]
|
|
|
|
|
this.obtainAmount()
|
|
|
|
|
this.show_1 = false
|
|
|
|
|
},
|
|
|
|
|
openShow1() {
|
|
|
|
|
if (!this.listPaintings[this.currentIndex].artworkSquareSize) {
|
|
|
|
|
uni.showToast({
|
|
|
|
|
title: '请先填写画作平尺数',
|
|
|
|
|
duration: 2000,
|
|
|
|
|
icon: 'none'
|
|
|
|
|
})
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
this.show_1 = true
|
|
|
|
|
},
|
|
|
|
|
uploadFilePromise(url, type = null) {
|
|
|
|
|
return new Promise((resolve) => {
|
|
|
|
|
uni.uploadFile({
|
|
|
|
|
url: http.baseUrl + '/api/wxuser/uploadpic',
|
|
|
|
|
filePath: url,
|
|
|
|
|
name: 'file',
|
|
|
|
|
success: (res) => {
|
|
|
|
|
const { path } = JSON.parse(res.data).data
|
|
|
|
|
resolve(path)
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
deletePic() {
|
|
|
|
|
this.fileList1 = []
|
|
|
|
|
},
|
|
|
|
|
// 新增图片
|
|
|
|
|
async afterRead(event, index) {
|
|
|
|
|
// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
|
|
|
|
|
let lists = [].concat(event.file)
|
|
|
|
|
let fileListLen = this.listPaintings[index].fileList1.length
|
|
|
|
|
lists.map((item) => {
|
|
|
|
|
this.listPaintings[index].fileList1.push({
|
|
|
|
|
...item,
|
|
|
|
|
status: 'uploading',
|
|
|
|
|
message: '上传中'
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
for (let i = 0; i < lists.length; i++) {
|
|
|
|
|
const result = await this.uploadFilePromise(
|
|
|
|
|
lists[i].url,
|
|
|
|
|
'check'
|
|
|
|
|
)
|
|
|
|
|
let item = this.listPaintings[index].fileList1[fileListLen]
|
|
|
|
|
this.listPaintings[index].fileList1.splice(
|
|
|
|
|
fileListLen,
|
|
|
|
|
1,
|
|
|
|
|
Object.assign(item, {
|
|
|
|
|
status: 'success',
|
|
|
|
|
message: '',
|
|
|
|
|
url: result
|
|
|
|
|
})
|
|
|
|
|
)
|
|
|
|
|
fileListLen++
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
async signContract() {
|
|
|
|
|
this.loading = true
|
|
|
|
|
const data1 = {
|
|
|
|
|
batchId: uni.getStorageSync('orderingInfo').transactionId
|
|
|
|
|
}
|
|
|
|
|
const res1 = await postDataByParams(
|
|
|
|
|
'/api/v2/warehouse/create',
|
|
|
|
|
data1
|
|
|
|
|
)
|
2024-12-11 02:52:40 +00:00
|
|
|
|
if (res1.code === 200) {
|
|
|
|
|
uni.login({
|
|
|
|
|
provider: 'weixin',
|
|
|
|
|
success: async ({ code }) => {
|
|
|
|
|
console.log('code', code)
|
|
|
|
|
const res3 = await this.$api.login.getOpenId({ code })
|
|
|
|
|
if (res3.status === 0) {
|
|
|
|
|
const res2 = await postDataByParams(
|
|
|
|
|
'/api/v2/warehouse/paid',
|
|
|
|
|
{
|
|
|
|
|
ID: res1.data.ID
|
|
|
|
|
}
|
|
|
|
|
)
|
|
|
|
|
if (res2.code === 200) {
|
|
|
|
|
uni.requestPayment({
|
|
|
|
|
...res2.data,
|
|
|
|
|
fail: (res) => {
|
|
|
|
|
this.loading = false
|
|
|
|
|
},
|
|
|
|
|
success: () => {
|
|
|
|
|
this.loading = false
|
|
|
|
|
uni.navigateTo({
|
|
|
|
|
url: `/pages/paySuccess/paySuccess?ID=${res1.data.ID}`
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
this.$common.msgToast(res3.msg)
|
2024-12-11 01:31:41 +00:00
|
|
|
|
}
|
2024-12-11 02:52:40 +00:00
|
|
|
|
}
|
|
|
|
|
})
|
2024-12-11 01:31:41 +00:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
async obtainAmount() {
|
|
|
|
|
uni.setStorageSync(
|
|
|
|
|
'endAt',
|
|
|
|
|
new Date(
|
|
|
|
|
Date.now() +
|
|
|
|
|
this.listPaintings[this.currentIndex].endAt * 86400000
|
|
|
|
|
)
|
|
|
|
|
?.toISOString()
|
|
|
|
|
?.slice(0, 10)
|
|
|
|
|
)
|
|
|
|
|
const data = {
|
|
|
|
|
orders: [
|
|
|
|
|
{
|
|
|
|
|
artworkSquareSize: Number(
|
|
|
|
|
this.listPaintings[this.currentIndex]
|
|
|
|
|
.artworkSquareSize
|
|
|
|
|
),
|
|
|
|
|
endAt: new Date(
|
|
|
|
|
Date.now() +
|
|
|
|
|
this.listPaintings[this.currentIndex].endAt *
|
|
|
|
|
86400000
|
|
|
|
|
)
|
|
|
|
|
?.toISOString()
|
|
|
|
|
?.slice(0, 10)
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
const res = await postDataByParams(
|
|
|
|
|
'/api/v2/warehouse/calculate',
|
|
|
|
|
data
|
|
|
|
|
)
|
|
|
|
|
if (res.code === 200) {
|
|
|
|
|
this.listPaintings[this.currentIndex].expectedPayment =
|
|
|
|
|
res.data.orders?.[0]?.money
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
confirmCycle() {
|
|
|
|
|
this.show_1 = false
|
|
|
|
|
},
|
|
|
|
|
confirmAddress() {
|
|
|
|
|
this.show_2 = false
|
|
|
|
|
},
|
|
|
|
|
selectAddress(item) {
|
|
|
|
|
this.listPaintings[this.currentIndex].warehouseID = item.ID
|
|
|
|
|
},
|
|
|
|
|
selectionPeriod(item) {
|
|
|
|
|
this.cycleId = item.ID
|
|
|
|
|
},
|
|
|
|
|
async getCycle() {
|
|
|
|
|
const res = await postDataByParams('/api/warehouse/cycle')
|
|
|
|
|
if (res.code === 200) {
|
|
|
|
|
this.cycleList = res.data.data
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
async getAddress() {
|
|
|
|
|
const res = await postDataByParams('/api/warehouse/address')
|
|
|
|
|
if (res.code === 200) {
|
|
|
|
|
this.addressList = res.data.data
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
async getDetailUrl() {
|
|
|
|
|
const data = {
|
|
|
|
|
url: this.url
|
|
|
|
|
}
|
|
|
|
|
const res = await postDataByParams('/api/warehouse/ocr', data)
|
|
|
|
|
if (res.code === 200) {
|
|
|
|
|
this.info = res.data
|
|
|
|
|
this.fileList1 = [{ url: this.info.artworkImg }]
|
|
|
|
|
} else {
|
|
|
|
|
uni.showToast({
|
|
|
|
|
title: res.msg,
|
|
|
|
|
icon: 'none'
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
isDateFont(item, num) {
|
|
|
|
|
if (Array.isArray && this.data.length === 3) {
|
|
|
|
|
return this.data[num] === item
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
changeData(e) {
|
|
|
|
|
this.data = [
|
|
|
|
|
e.detail.value[0] + 1990,
|
|
|
|
|
e.detail.value[1] + 1,
|
|
|
|
|
e.detail.value[2] + 1
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
back() {
|
|
|
|
|
if (this.type === 'detail') {
|
|
|
|
|
uni.switchTab({ url: '/pages/home/index' })
|
|
|
|
|
} else {
|
|
|
|
|
uni.navigateBack({ delta: 2 })
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-09-25 11:01:50 +00:00
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<style scoped lang="scss">
|
2024-04-02 09:11:42 +00:00
|
|
|
|
.fontDate {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
color: #fff;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/deep/ .pickerSelected {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
color: #ffffff !important;
|
|
|
|
|
z-index: 2;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/deep/ .test {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
z-index: -1;
|
|
|
|
|
background: #a9d897;
|
|
|
|
|
color: #fff;
|
|
|
|
|
height: 62rpx;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
uni-picker-view {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
display: block;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
uni-picker-view .uni-picker-view-wrapper {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
display: flex;
|
|
|
|
|
position: relative;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
height: 100%;
|
|
|
|
|
background-color: white;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
uni-picker-view[hidden] {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
display: none;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
picker-view {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
width: 100%;
|
|
|
|
|
// height: 600upx;
|
|
|
|
|
height: 400rpx;
|
|
|
|
|
margin-top: 20 upx;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.item {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
line-height: 100 upx;
|
|
|
|
|
text-align: center;
|
2024-04-02 09:11:42 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.order-details {
|
2024-12-11 01:31:41 +00:00
|
|
|
|
background-image: url('https://cdns.fontree.cn/fonchain-main/prod/image/default/artwork/4fdc9a0f-d72a-46b6-a04d-ed56d5465213.png');
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
padding-left: 30rpx;
|
|
|
|
|
padding-right: 30rpx;
|
|
|
|
|
background-size: cover;
|
|
|
|
|
width: 100vw;
|
|
|
|
|
height: 100vh;
|
|
|
|
|
position: relative;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
.content-list {
|
|
|
|
|
top: 130rpx;
|
|
|
|
|
z-index: 999;
|
|
|
|
|
position: absolute;
|
|
|
|
|
width: 686rpx;
|
|
|
|
|
margin-top: 34rpx;
|
|
|
|
|
text-align: right;
|
|
|
|
|
.wrap1 {
|
|
|
|
|
margin-bottom: 10rpx;
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
color: rgba(78, 150, 77, 1);
|
|
|
|
|
}
|
|
|
|
|
.wrap2 {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
|
|
|
|
border-radius: 20rpx;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding-left: 18rpx;
|
|
|
|
|
padding-right: 32rpx;
|
|
|
|
|
.wrap2_2 {
|
|
|
|
|
height: 60rpx;
|
|
|
|
|
position: relative;
|
|
|
|
|
.wrap2_2_2 {
|
|
|
|
|
line-height: 60rpx;
|
|
|
|
|
color: rgba(118, 196, 88, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.wrap2_2_1 {
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: 50%;
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-size: cover;
|
|
|
|
|
img {
|
|
|
|
|
width: 30rpx;
|
|
|
|
|
height: 16rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.wrap2_1 {
|
|
|
|
|
z-index: 999;
|
|
|
|
|
overflow-y: scroll;
|
|
|
|
|
.item {
|
|
|
|
|
height: 154rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
padding-left: 10rpx;
|
|
|
|
|
padding-right: 10rpx;
|
|
|
|
|
&.active {
|
|
|
|
|
background-color: rgb(245, 251, 242);
|
|
|
|
|
}
|
|
|
|
|
.item_5 {
|
|
|
|
|
width: 134rpx;
|
|
|
|
|
color: rgba(98, 98, 98, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_4 {
|
|
|
|
|
margin-right: 28rpx;
|
|
|
|
|
width: 192rpx;
|
|
|
|
|
color: rgba(98, 98, 98, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_3 {
|
|
|
|
|
margin-right: 48rpx;
|
|
|
|
|
width: 78rpx;
|
|
|
|
|
color: rgba(98, 98, 98, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_2 {
|
|
|
|
|
margin-right: 24rpx;
|
|
|
|
|
width: 68rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
.item_2_2 {
|
|
|
|
|
color: rgba(147, 147, 147, 1);
|
|
|
|
|
font-size: 20rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_2_1 {
|
|
|
|
|
background-color: #000;
|
|
|
|
|
width: 68rpx;
|
|
|
|
|
height: 68rpx;
|
|
|
|
|
img {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.item_1 {
|
|
|
|
|
margin-right: 18rpx;
|
|
|
|
|
color: rgba(88, 166, 107, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
width: 36rpx;
|
|
|
|
|
height: 36rpx;
|
|
|
|
|
border: 5rpx solid rgba(118, 196, 88, 1);
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
background: transparent;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content5 {
|
|
|
|
|
align-items: center;
|
|
|
|
|
left: 0;
|
|
|
|
|
background: #fff;
|
|
|
|
|
width: 750rpx;
|
|
|
|
|
position: fixed;
|
|
|
|
|
bottom: 0;
|
|
|
|
|
height: 172rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
.wrap4 {
|
|
|
|
|
z-index: 999;
|
|
|
|
|
width: 100%;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
position: absolute;
|
|
|
|
|
.item {
|
|
|
|
|
height: 152rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
.item_4 {
|
|
|
|
|
margin-right: 64rpx;
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
color: rgba(118, 196, 88, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
.item_3 {
|
|
|
|
|
width: 100rpx;
|
|
|
|
|
margin-left: 48rpx;
|
|
|
|
|
color: rgba(98, 98, 98, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_2 {
|
|
|
|
|
width: 100rpx;
|
|
|
|
|
margin-left: 34rpx;
|
|
|
|
|
color: rgba(98, 98, 98, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
.item_1 {
|
|
|
|
|
margin-left: 56rpx;
|
|
|
|
|
color: rgba(88, 166, 107, 1);
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
width: 36rpx;
|
|
|
|
|
height: 36rpx;
|
|
|
|
|
border: 5rpx solid rgba(118, 196, 88, 1);
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
background: transparent;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.wrap3 {
|
|
|
|
|
margin-left: 32rpx;
|
|
|
|
|
img {
|
|
|
|
|
width: 30rpx;
|
|
|
|
|
height: 16rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.wrap2 {
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
width: 392rpx;
|
|
|
|
|
height: 56rpx;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
background: #76c458;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
margin-left: 18rpx;
|
|
|
|
|
margin-right: 70rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: start;
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
color: #939393;
|
|
|
|
|
font-size: 16rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_2 {
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
color: #76c458;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poup1 {
|
|
|
|
|
padding-top: 28rpx;
|
|
|
|
|
padding-left: 30rpx;
|
|
|
|
|
padding-right: 30rpx;
|
|
|
|
|
margin-bottom: 72rpx;
|
|
|
|
|
|
|
|
|
|
& > .content6 {
|
|
|
|
|
margin-top: 26rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
width: 436rpx;
|
|
|
|
|
height: 60rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
background: #76c458;
|
|
|
|
|
border-radius: 30rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content3 {
|
|
|
|
|
margin-bottom: 70rpx;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
margin-bottom: 18rpx;
|
|
|
|
|
border-radius: 32rpx;
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
border: 2px solid #76c458;
|
|
|
|
|
padding-left: 44rpx;
|
|
|
|
|
padding-right: 42rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.wrap1_2 {
|
|
|
|
|
color: #76c458;
|
|
|
|
|
font-size: 26rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
color: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&.disabled {
|
|
|
|
|
border: none;
|
|
|
|
|
background: #d8d8d8;
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_2 {
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 16rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&.active {
|
|
|
|
|
background: #76c458;
|
|
|
|
|
|
|
|
|
|
.wrap1_2 {
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 26rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content1 {
|
|
|
|
|
margin-bottom: 36rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
color: #000;
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap2 {
|
|
|
|
|
image {
|
|
|
|
|
width: 48rpx;
|
|
|
|
|
height: 48rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content2 {
|
|
|
|
|
margin-bottom: 36rpx;
|
|
|
|
|
height: 1rpx;
|
|
|
|
|
background: #626262;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poup {
|
|
|
|
|
margin-bottom: 72rpx;
|
|
|
|
|
padding-top: 28rpx;
|
|
|
|
|
padding-left: 30rpx;
|
|
|
|
|
padding-right: 30rpx;
|
|
|
|
|
& > .content7 {
|
|
|
|
|
}
|
|
|
|
|
& > .content3 {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
|
|
|
|
|
.wrap4 {
|
|
|
|
|
margin-bottom: 40rpx;
|
|
|
|
|
border-radius: 32rpx;
|
|
|
|
|
margin-top: 30rpx;
|
|
|
|
|
width: 220rpx;
|
|
|
|
|
height: 84rpx;
|
|
|
|
|
background: #d8d8d8;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
|
|
.wrap4_1 {
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap4_2 {
|
|
|
|
|
color: #be7e7e;
|
|
|
|
|
font-size: 16rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
flex-shrink: 0;
|
|
|
|
|
margin-right: 16rpx;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
border-radius: 32rpx;
|
|
|
|
|
border: 2rpx solid #76c458;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
width: 220rpx;
|
|
|
|
|
height: 84rpx;
|
|
|
|
|
|
|
|
|
|
&:nth-child(3) {
|
|
|
|
|
margin-right: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&.active {
|
|
|
|
|
color: #fff;
|
|
|
|
|
background: #76c458;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content6 {
|
|
|
|
|
margin-top: 26rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
width: 436rpx;
|
|
|
|
|
height: 60rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
background: #76c458;
|
|
|
|
|
border-radius: 30rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content5 {
|
|
|
|
|
margin-top: 36rpx;
|
|
|
|
|
height: 66rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
border-bottom: 1rpx solid #bababa;
|
|
|
|
|
border-top: 1rpx solid #bababa;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
flex-grow: 1;
|
|
|
|
|
color: #4e964d;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap2 {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
flex-grow: 1;
|
|
|
|
|
color: #4e964d;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap3 {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
flex-grow: 1;
|
|
|
|
|
color: #4e964d;
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content4 {
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
color: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content2 {
|
|
|
|
|
margin-bottom: 36rpx;
|
|
|
|
|
height: 1rpx;
|
|
|
|
|
background: #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content1 {
|
|
|
|
|
margin-bottom: 36rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
color: #000;
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap2 {
|
|
|
|
|
image {
|
|
|
|
|
width: 48rpx;
|
|
|
|
|
height: 48rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content-center {
|
|
|
|
|
overflow-y: scroll;
|
|
|
|
|
|
|
|
|
|
.content-scroll {
|
|
|
|
|
.painting-name {
|
|
|
|
|
margin-top: 48rpx;
|
|
|
|
|
align-items: center;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
.wrap1 {
|
|
|
|
|
color: rgba(0, 0, 0, 1);
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
.wrap2 {
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
color: rgba(118, 196, 88, 1);
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
width: 148rpx;
|
|
|
|
|
height: 56rpx;
|
|
|
|
|
border: 1px solid rgba(118, 196, 88, 1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
& > .content4 {
|
|
|
|
|
margin-bottom: 24rpx;
|
|
|
|
|
margin-top: 60rpx;
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
border: 1rpx dashed #dfe9f0;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
position: relative;
|
|
|
|
|
height: 114rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.wrap1_1_4 {
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translateX(-50%);
|
|
|
|
|
bottom: 0;
|
|
|
|
|
position: absolute;
|
|
|
|
|
height: 0;
|
|
|
|
|
width: 636rpx;
|
|
|
|
|
border-bottom: 0.5px solid #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1_5 {
|
|
|
|
|
right: 42rpx;
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
|
|
|
|
image {
|
|
|
|
|
width: 46.34rpx;
|
|
|
|
|
height: 20rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1_2 {
|
|
|
|
|
margin-right: 36rpx;
|
|
|
|
|
width: 0;
|
|
|
|
|
height: 66rpx;
|
|
|
|
|
border-left: 0.5px solid #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1_1 {
|
|
|
|
|
width: 210rpx;
|
|
|
|
|
padding-left: 32rpx;
|
|
|
|
|
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content3 {
|
|
|
|
|
margin-top: 60rpx;
|
|
|
|
|
|
|
|
|
|
.prompt {
|
|
|
|
|
color: #4e964d;
|
|
|
|
|
font-size: 16rpx;
|
|
|
|
|
margin-bottom: 4rpx;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
border: 1rpx dashed #dfe9f0;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
|
|
|
|
|
.wrap1_1 {
|
|
|
|
|
position: relative;
|
|
|
|
|
height: 114rpx;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
.wrap1_1_4 {
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translateX(-50%);
|
|
|
|
|
bottom: 0;
|
|
|
|
|
position: absolute;
|
|
|
|
|
height: 0;
|
|
|
|
|
width: 636rpx;
|
|
|
|
|
border-bottom: 0.5px solid #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1_2 {
|
|
|
|
|
margin-right: 36rpx;
|
|
|
|
|
width: 0;
|
|
|
|
|
height: 66rpx;
|
|
|
|
|
border-left: 0.5px solid #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1_1_1 {
|
|
|
|
|
width: 210rpx;
|
|
|
|
|
padding-left: 32rpx;
|
|
|
|
|
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
& > .content2 {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
|
|
|
|
image {
|
|
|
|
|
width: 404rpx;
|
|
|
|
|
height: 306rpx;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
& > .content7 {
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
border-radius: 40rpx;
|
|
|
|
|
width: 228rpx;
|
|
|
|
|
height: 56rpx;
|
|
|
|
|
border: 3rpx solid rgba(118, 196, 88, 1);
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
align-items: center;
|
|
|
|
|
.wrap2 {
|
|
|
|
|
color: rgba(118, 196, 88, 1);
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
}
|
|
|
|
|
.wrap1 {
|
|
|
|
|
margin-right: 20rpx;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
width: 32rpx;
|
|
|
|
|
height: 32rpx;
|
|
|
|
|
border: 3rpx solid rgba(118, 196, 88, 1);
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
background: transparent;
|
|
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
|
.horizontal {
|
|
|
|
|
position: absolute;
|
|
|
|
|
left: 50%;
|
|
|
|
|
top: 50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
width: 18rpx;
|
|
|
|
|
height: 2rpx;
|
|
|
|
|
background-color: rgba(118, 196, 88, 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.vertical {
|
|
|
|
|
position: absolute;
|
|
|
|
|
left: 50%;
|
|
|
|
|
top: 50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
width: 2rpx;
|
|
|
|
|
height: 18rpx;
|
|
|
|
|
background-color: rgba(118, 196, 88, 1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-09-25 11:01:50 +00:00
|
|
|
|
}
|
|
|
|
|
</style>
|