优化布局

This commit is contained in:
aihe 2023-12-05 22:16:45 +08:00
parent 539d2a9b53
commit 0e15991b1d
9 changed files with 792 additions and 345 deletions

View File

@ -0,0 +1,69 @@
<template>
<view class="pg-cont">
<view class="pg-header">
<slot name="header"></slot>
</view>
<view class="pg-body">
<view class="pgb-h-full">
<view style="height: 100%;min-height: 100%;overflow-y: auto;">
<slot name="body"></slot>
</view>
</view>
</view>
<view class="pg-footer">
<slot name="footer"></slot>
</view>
</view>
</template>
<script>
export default {
props: {
mode: {
default () {
return ''
}
}
},
data() {
return {
}
},
created() {
},
onHide() {
},
destroyed() {},
methods: {
}
}
</script>
<style scoped lang="scss">
.pg-cont{
display: flex;
flex-direction: column;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
.pgb-h-full{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
box-sizing: border-box;
}
.pg-body{
flex: 1;
position: relative;
}
</style>

View File

@ -38,14 +38,24 @@
"navigationStyle":"custom"
}
},
{
"path": "pages/post/post",
"style": {
"navigationBarTitleText": "上门取件"
}
},
{
"path": "pages/address/list",
"style": {
"navigationBarTitleText": "地址管理"
}
},
{
"path": "pages/address/edit",
"style": {
"navigationBarTitleText": "地址编辑"
}
},
{
"path": "pages/complaint/complaint",
"style": {

171
pages/address/edit.vue Normal file
View File

@ -0,0 +1,171 @@
<template>
<view style="position: relative;background-color: #fff;">
<view class="customer_nav_bar">
<!-- 这里是状态栏 -->
</view>
<image class="hdbg" :src="getCdnUrl(`sdg/hdbg.png`)"/>
<view class="pg-container">
<view class="header" >
<u-text size="40" :bold="true" text="探路物流 速运全球" color="#fff"></u-text>
<u-text margin="22rpx 0 0 0" size="24" :bold="true" text="省钱,省时,省力" color="#fff"></u-text>
<button class="btn-ljyy" type="primary">立即预约</button>
<view class="btnlist1">
<u-row>
<u-col v-for="(mbItem, mIndex) in mainBtnlist" span="6" align="center" @click="goto(mbItem.url)">
<view :class="'mb-item ' + (mIndex+1 == mainBtnlist.length ?'noborder': '') ">
<u-row align="center" justify="center">
<image class="tb1" style="width: 92rpx;height: 73rpx;" :src="mbItem.icon"/>
<view class="neirong">
<u-text size="32" :bold="true" color="#fff" :text="mbItem.title"></u-text>
<u-text size="22" margin="15rpx 0 0 0" color="#999" :text="mbItem.subTitle"></u-text>
</view>
</u-row>
</view>
</u-col>
</u-row>
</view>
</view>
<view class="pbody">
<view class="btnlist2">
<u-row gutter="20" custom-style="flex-wrap: wrap;">
<u-col v-for="tlItem in toolBtnlist" span="6">
<view style="margin: 0 0 20rpx 0;background: #F6F6F6;padding: 30rpx 28rpx;border-radius: 20rpx;position: relative;">
<u-row justify="between" >
<view class="neirong">
<u-text size="28" :bold="true" color="#0E0708" :text="tlItem.title"></u-text>
<u-text size="22" margin="15rpx 0 0 0" color="#999" :text="tlItem.subTitle"></u-text>
</view>
<image :src="tlItem.icon" style="height: 50rpx; width: 50rpx;" mode="aspectFit"/>
</u-row>
</view>
</u-col>
</u-row>
</view>
</view>
<view class="pfoot" >
<u-row justify="between">
<u-text size="24" color="#fff" text="关注探路者官方公众号,实时接收物流信息"></u-text>
<u-button type="primary" custom-style="width: 130rpx;border-radius: 30rpx;margin: 0;" size="mini">去登录</u-button>
</u-row>
</view>
</view>
</view>
</template>
<script>
import getCdnUrl from "@/common/getCdnUrl"
import { goto } from "@/common/untool"
export default {
props: {
// hasLeftWin: {
// type: Boolean
// }
},
data() {
return {
mainBtnlist: [
{ title: '下单寄件', subTitle: "上门揽件/寄仓库", icon: getCdnUrl(`sdg/btn-send.png`), url: 'post/post' },
{ title: '专属小哥', subTitle: "下单给专属业务员", icon: getCdnUrl(`sdg/btn-bindbr.png`), url: '' }
],
toolBtnlist: [
{ title: '进仓单', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-jcd.png`), url: '' },
{ title: '时效预估', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-sxyg.png`), url: '' },
{ title: '运费试算', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-shisuan.png`), url: '' },
{ title: '我的订单', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-dingdan.png`), url: '' },
{ title: '运单查询', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-yundan.png`), url: '' },
{ title: '地址簿', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-dizhi.png`), url: '' },
{ title: '网点查询', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-wangdain.png`), url: '' },
{ title: 'HSCODE', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-HS.png`), url: '' },
{ title: 'RECP', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-RE.png`), url: '' },
{ title: '扫码寄件', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-saoma.png`), url: '' },
{ title: '寄件须知', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-xuzhi.png`), url: '' },
]
}
},
onShareAppMessage() {
return {
title: '探路物流 速运全球',
// path: 'TODO'
}
},
methods: {
getCdnUrl,
goto
}
}
</script>
<style lang="scss">
@import '@/common/uni-nvue.scss';
</style>
<style scoped lang="scss">
.hdbg{
position: absolute;
top: 0;
z-index: 1;
width: 100%;
height: 720rpx;
}
.pg-container{
position: relative;
z-index: 2;
overflow-x: hidden;
}
.header{
padding: 0 28rpx;
.btn-ljyy{
margin-left: 0;
width: 144rpx;
margin-top: 40rpx;
box-sizing: content-box;
background: #FFF;
border-radius: 21rpx;
font-size: 24rpx;
color: #B12D29;
padding: 8rpx 0;
text-align: center;
line-height: normal;
border: 0;
&::after{
border: 0;
}
}
.btnlist1 {
margin-top: 38rpx;
background: linear-gradient(0deg, #1D1818 0%, #0E0708 100%);
border-radius: 30rpx 30rpx 0rpx 0rpx;
padding: 36rpx 24rpx 22rpx 24rpx;
}
}
.mb-item{
width: 100%;
position: relative;
border-right: 2rpx solid rgba(255,255,255,0.5);
&.noborder{
border-right: 0;
}
}
.pbody{
background: #FFFFFF;
border-radius: 30rpx;
padding: 40rpx 28rpx 100rpx 28rpx;
.btnlist2{
.neirong{
margin-left: 22rpx;
}
}
}
.pfoot {
position: fixed;
bottom: 20rpx;
left: 28rpx;
right: 28rpx;
padding: 20rpx 8rpx 20rpx 26rpx;
background: #0E0708;
border-radius: 36rpx;
}
</style>

171
pages/address/list.vue Normal file
View File

@ -0,0 +1,171 @@
<template>
<view style="position: relative;background-color: #fff;">
<view class="customer_nav_bar">
<!-- 这里是状态栏 -->
</view>
<image class="hdbg" :src="getCdnUrl(`sdg/hdbg.png`)"/>
<view class="pg-container">
<view class="header" >
<u-text size="40" :bold="true" text="探路物流 速运全球" color="#fff"></u-text>
<u-text margin="22rpx 0 0 0" size="24" :bold="true" text="省钱,省时,省力" color="#fff"></u-text>
<button class="btn-ljyy" type="primary">立即预约</button>
<view class="btnlist1">
<u-row>
<u-col v-for="(mbItem, mIndex) in mainBtnlist" span="6" align="center" @click="goto(mbItem.url)">
<view :class="'mb-item ' + (mIndex+1 == mainBtnlist.length ?'noborder': '') ">
<u-row align="center" justify="center">
<image class="tb1" style="width: 92rpx;height: 73rpx;" :src="mbItem.icon"/>
<view class="neirong">
<u-text size="32" :bold="true" color="#fff" :text="mbItem.title"></u-text>
<u-text size="22" margin="15rpx 0 0 0" color="#999" :text="mbItem.subTitle"></u-text>
</view>
</u-row>
</view>
</u-col>
</u-row>
</view>
</view>
<view class="pbody">
<view class="btnlist2">
<u-row gutter="20" custom-style="flex-wrap: wrap;">
<u-col v-for="tlItem in toolBtnlist" span="6">
<view style="margin: 0 0 20rpx 0;background: #F6F6F6;padding: 30rpx 28rpx;border-radius: 20rpx;position: relative;">
<u-row justify="between" >
<view class="neirong">
<u-text size="28" :bold="true" color="#0E0708" :text="tlItem.title"></u-text>
<u-text size="22" margin="15rpx 0 0 0" color="#999" :text="tlItem.subTitle"></u-text>
</view>
<image :src="tlItem.icon" style="height: 50rpx; width: 50rpx;" mode="aspectFit"/>
</u-row>
</view>
</u-col>
</u-row>
</view>
</view>
<view class="pfoot" >
<u-row justify="between">
<u-text size="24" color="#fff" text="关注探路者官方公众号,实时接收物流信息"></u-text>
<u-button type="primary" custom-style="width: 130rpx;border-radius: 30rpx;margin: 0;" size="mini">去登录</u-button>
</u-row>
</view>
</view>
</view>
</template>
<script>
import getCdnUrl from "@/common/getCdnUrl"
import { goto } from "@/common/untool"
export default {
props: {
// hasLeftWin: {
// type: Boolean
// }
},
data() {
return {
mainBtnlist: [
{ title: '下单寄件', subTitle: "上门揽件/寄仓库", icon: getCdnUrl(`sdg/btn-send.png`), url: 'post/post' },
{ title: '专属小哥', subTitle: "下单给专属业务员", icon: getCdnUrl(`sdg/btn-bindbr.png`), url: '' }
],
toolBtnlist: [
{ title: '进仓单', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-jcd.png`), url: '' },
{ title: '时效预估', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-sxyg.png`), url: '' },
{ title: '运费试算', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-shisuan.png`), url: '' },
{ title: '我的订单', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-dingdan.png`), url: '' },
{ title: '运单查询', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-yundan.png`), url: '' },
{ title: '地址簿', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-dizhi.png`), url: '' },
{ title: '网点查询', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-wangdain.png`), url: '' },
{ title: 'HSCODE', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-HS.png`), url: '' },
{ title: 'RECP', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-RE.png`), url: '' },
{ title: '扫码寄件', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-saoma.png`), url: '' },
{ title: '寄件须知', subTitle: "这里是短语简介", icon: getCdnUrl(`sdg/t-xuzhi.png`), url: '' },
]
}
},
onShareAppMessage() {
return {
title: '探路物流 速运全球',
// path: 'TODO'
}
},
methods: {
getCdnUrl,
goto
}
}
</script>
<style lang="scss">
@import '@/common/uni-nvue.scss';
</style>
<style scoped lang="scss">
.hdbg{
position: absolute;
top: 0;
z-index: 1;
width: 100%;
height: 720rpx;
}
.pg-container{
position: relative;
z-index: 2;
overflow-x: hidden;
}
.header{
padding: 0 28rpx;
.btn-ljyy{
margin-left: 0;
width: 144rpx;
margin-top: 40rpx;
box-sizing: content-box;
background: #FFF;
border-radius: 21rpx;
font-size: 24rpx;
color: #B12D29;
padding: 8rpx 0;
text-align: center;
line-height: normal;
border: 0;
&::after{
border: 0;
}
}
.btnlist1 {
margin-top: 38rpx;
background: linear-gradient(0deg, #1D1818 0%, #0E0708 100%);
border-radius: 30rpx 30rpx 0rpx 0rpx;
padding: 36rpx 24rpx 22rpx 24rpx;
}
}
.mb-item{
width: 100%;
position: relative;
border-right: 2rpx solid rgba(255,255,255,0.5);
&.noborder{
border-right: 0;
}
}
.pbody{
background: #FFFFFF;
border-radius: 30rpx;
padding: 40rpx 28rpx 100rpx 28rpx;
.btnlist2{
.neirong{
margin-left: 22rpx;
}
}
}
.pfoot {
position: fixed;
bottom: 20rpx;
left: 28rpx;
right: 28rpx;
padding: 20rpx 8rpx 20rpx 26rpx;
background: #0E0708;
border-radius: 36rpx;
}
</style>

View File

@ -38,7 +38,7 @@
</script>
<style lang="scss">
@import '../../common/uni-nvue.scss';
@import '@/common/uni-nvue.scss';
page{
background: #F5F7F9;
}

View File

@ -1,230 +1,249 @@
<template>
<view style="display: flex;height: 100%;flex-direction: column;">
<view class="pos-rlt" style="flex: 1;">
<view class="pos-abt-all" style="overflow-y: auto;">
<view class="com-jianju pos-rlt pb-30" style="padding-top: 2rpx;">
<view class="blcok" style="background-color: #0E0708;">
<u-row>
<image class="mr-20" style="height: 28rpx;width: 34rpx;" :src="getCdnUrl(`post/gangbo.png`)"></image>
<u-text size="24" color="#fff" text="下单后会有业务员及时联系您,请保持电话畅通!"></u-text>
</u-row>
</view>
<view class="blcok-white">
<view>
<u-row custom-style="position:relative;" align="top" justify="between">
<view>
<image style="height: 50rpx;width: 42rpx;" :src="getCdnUrl(`post/ji.png`)"></image>
</view>
<view style="flex: 1;padding: 0 30rpx;">
<u-text text="寄件人信息" size="28" :bold="true"></u-text>
<view style="margin: 8rpx 0 0 0;">
<u-text text="请新建您的寄件地址信息" size="22" color="#999"></u-text>
</view>
</view>
<view class="flex-column-center">
<image style="height: 32rpx;width: 28rpx;" :src="getCdnUrl(`post/adress.png`)"></image>
<u-text align="center" text="地址薄" size="22" :bold="true" margin="8rpx 0 0 0"></u-text>
</view>
<view style="position: absolute;left: 20rpx;bottom: -20rpx;top: 46rpx;">
<u-line custom-style="height:100%;" direction="col" dashed="true"></u-line>
</view>
</u-row>
<view style="padding-left: 76rpx;">
<u-line margin="20rpx 0"></u-line>
</view>
<u-row custom-style="position:relative;" align="top" justify="between">
<view style="position: absolute;left: 20rpx;top: -20rpx;bottom: 100%;">
<u-line custom-style="height:100%;" direction="col" dashed="true"></u-line>
</view>
<view>
<image style="height: 50rpx;width: 42rpx;" :src="getCdnUrl(`post/shou.png`)"></image>
</view>
<view class="pr-30 pl-30" style="flex: 1;">
<u-text text="收件人信息" size="28" :bold="true"></u-text>
<view style="margin: 8rpx 0 0 0;">
<u-text text="请填写收件人国家、姓名,电话" size="22" color="#999"></u-text>
</view>
</view>
<view class="flex-column-center">
<image style="height: 32rpx;width: 28rpx;" :src="getCdnUrl(`post/adress.png`)"></image>
<u-text align="center" text="地址薄" size="22" :bold="true" margin="8rpx 0 0 0"></u-text>
</view>
</u-row>
</view>
</view>
<view class="blcok-white">
<view style="width: 80%;">
<tpx-tabs :list="sendTypeList" v-model:value="submitParam.type"
@tabchange="(val)=> { }"
>
</tpx-tabs>
</view>
<view >
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="目的国" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="柬埔寨"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="选择线路" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999" text="请选择"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="货物信息(必填)" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999" text="填写物品信息"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="重量/体积" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999" text="填写重量体积"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="期望上门时间 " size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="1小时内"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view style="padding: 30rpx 0;border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="付款方式" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="1现金/月结"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
</view>
</view>
<view class="com-section mt-30">产品类型</view>
<view class="blcok-white yunf-list">
<view class="yunf-item active">
<u-row justify="between">
<u-col span="8">
<u-text text="柬埔寨-国际特快" size="28" :bold="true"></u-text>
<u-text margin="6rpx" text="1-2工作日 ¥80元起" size="22" color="#999"></u-text>
</u-col>
<u-col span="4">
<u-text align="right" text="运费预估" size="22" color="#999"></u-text>
<u-text align="right" margin="6rpx" text="32" size="22" :bold="true" mode="price" color="#B12D29"></u-text>
</u-col>
</u-row>
</view>
<view class="yunf-item">
<u-row justify="between">
<u-col span="8">
<u-text text="柬埔寨-国际特快" size="28" :bold="true"></u-text>
<u-text margin="6rpx" text="1-2工作日 ¥80元起" size="22" color="#999"></u-text>
</u-col>
<u-col span="4">
<u-text align="right" text="运费预估" size="22" color="#999"></u-text>
<u-text align="right" margin="6rpx" text="32" size="22" :bold="true" mode="price" color="#B12D29"></u-text>
</u-col>
</u-row>
</view>
</view>
<view class="com-section mt-30">给快递员捎话</view>
<view class="blcok-white">
<view class="smp-tag" v-for="(item, index) in tipsList">
<u-tag :text="`${item.title}`" :plain="!item.checked" type="info" shape="circle" :bg-color="`${item.checked?'#de524e':''}`"
@click="handleCheckBoxClick(item)">
</u-tag>
</view>
<u-textarea v-model="submitParam.otherDes" border="surround" height="160" placeholder="其他说明" maxlength="50" count></u-textarea>
<u-line margin="20rpx 0 10rpx 0"></u-line>
<u-row justify="between">
<u-text text="您的专属快递员" size="22" color="#999"></u-text>
<u-row>
<u-text text="李晓" size="28" :bold="true" margin="0 30rpx 0 0"></u-text>
<view>
<u-avatar size="50" :src="''"></u-avatar>
</view>
</u-row>
</u-row>
</view>
</view>
</view>
</view>
<view class="pos-rlt blcok-white" style="border-radius: 0;margin-top: 0;">
<u-row justify="between">
<view>
<u-row align="top">
<u-checkbox size="22" labelSize="22" v-model="agreePrivateRule" label="我已同意接受" label-color=":#999" activeColor="#B12D29"
custom-style="margin-bottom: 10rpx;"
></u-checkbox>
<view class="pl-10" style="padding-top: 6rpx;">
<u-text text="《快件运单契约条款》" size="22" ></u-text>
</view>
</u-row>
<tpx-layout>
<template v-slot:body>
<view class="com-jianju pos-rlt pb-30" style="padding-top: 2rpx;">
<view class="blcok" style="background-color: #0E0708;">
<u-row>
<view class="mr-10">
<u-text text="预估" :bold="true" size="28" ></u-text>
</view>
<u-text :text="80" mode="price" color="#B12D29" :bold="true" size="28" ></u-text>
<image class="mr-20" style="height: 28rpx;width: 34rpx;"
:src="getCdnUrl(`post/gangbo.png`)"></image>
<u-text size="24" color="#fff" text="下单后会有业务员及时联系您,请保持电话畅通!"></u-text>
</u-row>
<u-text margin="10rpx 0 0 0" text="温馨提示:具体费用以快递小哥核实为准" color="#999" size="22" ></u-text>
</view>
<u-row>
<u-button size="large" shape="circle" custom-style="width: 200rpx;height:80rpx;font-size: 30rpx;" type="primary">下单</u-button>
<view class="blcok-white">
<view>
<u-row @click="handleAddressChoose(1)" custom-style="position:relative;" align="top"
justify="between">
<view>
<image style="height: 50rpx;width: 42rpx;" :src="getCdnUrl(`post/ji.png`)"></image>
</view>
<view style="flex: 1;padding: 0 30rpx;">
<u-text text="寄件人信息" size="28" :bold="true"></u-text>
<view style="margin: 8rpx 0 0 0;">
<u-text text="请新建您的寄件地址信息" size="22" color="#999"></u-text>
</view>
</view>
<view class="flex-column-center">
<image style="height: 32rpx;width: 28rpx;" :src="getCdnUrl(`post/adress.png`)">
</image>
<u-text align="center" text="地址薄" size="22" :bold="true"
margin="8rpx 0 0 0"></u-text>
</view>
<view style="position: absolute;left: 20rpx;bottom: -20rpx;top: 46rpx;">
<u-line custom-style="height:100%;" direction="col" dashed="true"></u-line>
</view>
</u-row>
<view style="padding-left: 76rpx;">
<u-line margin="20rpx 0"></u-line>
</view>
<u-row @click="handleAddressChoose(2)" custom-style="position:relative;" align="top"
justify="between">
<view style="position: absolute;left: 20rpx;top: -20rpx;bottom: 100%;">
<u-line custom-style="height:100%;" direction="col" dashed="true"></u-line>
</view>
<view>
<image style="height: 50rpx;width: 42rpx;" :src="getCdnUrl(`post/shou.png`)">
</image>
</view>
<view class="pr-30 pl-30" style="flex: 1;">
<u-text text="收件人信息" size="28" :bold="true"></u-text>
<view style="margin: 8rpx 0 0 0;">
<u-text text="请填写收件人国家、姓名,电话" size="22" color="#999"></u-text>
</view>
</view>
<view class="flex-column-center">
<image style="height: 32rpx;width: 28rpx;" :src="getCdnUrl(`post/adress.png`)">
</image>
<u-text align="center" text="地址薄" size="22" :bold="true"
margin="8rpx 0 0 0"></u-text>
</view>
</u-row>
</view>
</view>
<view class="blcok-white">
<view style="width: 80%;">
<tpx-tabs :list="sendTypeList" v-model:value="submitParam.type" @tabchange="(val)=> { }">
</tpx-tabs>
</view>
<view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="目的国" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="柬埔寨"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="选择线路" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999"
text="请选择"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="货物信息(必填)" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999"
text="填写物品信息"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="重量/体积" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" color="#999"
text="填写重量体积"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view class="pt-30 pb-30" style="border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="期望上门时间 " size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="1小时内"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
<view style="padding: 30rpx 0;border-bottom: 2rpx solid #F6F6F6;;">
<u-row>
<view>
<u-text text="付款方式" size="28" :bold="true"></u-text>
</view>
<u-row custom-style="flex: 1;" justify="end" align="center">
<u-text align="right" margin="0 12rpx 0 0" size="22" text="1现金/月结"></u-text>
<u-icon size="22" name="arrow-right" color="#333"></u-icon>
</u-row>
</u-row>
</view>
</view>
</view>
<view class="com-section mt-30">产品类型</view>
<view class="blcok-white yunf-list">
<view class="yunf-item active">
<u-row justify="between">
<u-col span="8">
<u-text text="柬埔寨-国际特快" size="28" :bold="true"></u-text>
<u-text margin="6rpx" text="1-2工作日 ¥80元起" size="22" color="#999"></u-text>
</u-col>
<u-col span="4">
<u-text align="right" text="运费预估" size="22" color="#999"></u-text>
<u-text align="right" margin="6rpx" text="32" size="22" :bold="true" mode="price"
color="#B12D29"></u-text>
</u-col>
</u-row>
</view>
<view class="yunf-item">
<u-row justify="between">
<u-col span="8">
<u-text text="柬埔寨-国际特快" size="28" :bold="true"></u-text>
<u-text margin="6rpx" text="1-2工作日 ¥80元起" size="22" color="#999"></u-text>
</u-col>
<u-col span="4">
<u-text align="right" text="运费预估" size="22" color="#999"></u-text>
<u-text align="right" margin="6rpx" text="32" size="22" :bold="true" mode="price"
color="#B12D29"></u-text>
</u-col>
</u-row>
</view>
</view>
<view class="com-section mt-30">给快递员捎话</view>
<view class="blcok-white">
<view class="smp-tag" v-for="(item, index) in tipsList">
<u-tag :text="`${item.title}`" :plain="!item.checked" type="info" shape="circle"
:bg-color="`${item.checked?'#de524e':''}`" @click="handleCheckBoxClick(item)">
</u-tag>
</view>
<u-textarea v-model="submitParam.otherDes" border="surround" height="160" placeholder="其他说明"
maxlength="50" count></u-textarea>
<u-line margin="20rpx 0 10rpx 0"></u-line>
<u-row justify="between">
<u-text text="您的专属快递员" size="22" color="#999"></u-text>
<u-row>
<u-text text="李晓" size="28" :bold="true" margin="0 30rpx 0 0"></u-text>
<view>
<u-avatar size="50" :src="''"></u-avatar>
</view>
</u-row>
</u-row>
</view>
</view>
</template>
<template v-slot:footer>
<view class="pos-rlt blcok-white" style="border-radius: 0;margin-top: 0;">
<u-row justify="between">
<view>
<u-row align="top">
<u-checkbox size="22" labelSize="22" v-model="agreePrivateRule" label="我已同意接受"
label-color=":#999" activeColor="#B12D29"
custom-style="margin-bottom: 10rpx;"></u-checkbox>
<view class="pl-10" style="padding-top: 6rpx;">
<u-text text="《快件运单契约条款》" size="22"></u-text>
</view>
</u-row>
<u-row>
<view class="mr-10">
<u-text text="预估" :bold="true" size="28"></u-text>
</view>
<u-text :text="80" mode="price" color="#B12D29" :bold="true" size="28"></u-text>
</u-row>
<u-text margin="10rpx 0 0 0" text="温馨提示:具体费用以快递小哥核实为准" color="#999" size="22"></u-text>
</view>
<u-row>
<u-button size="large" shape="circle"
custom-style="width: 200rpx;height:80rpx;font-size: 30rpx;" type="primary">下单</u-button>
</u-row>
</u-row>
</u-row>
</view>
</view>
<!-- 日历 -->
<!-- @close="handleSwitchCladar()" -->
<u-calendar title="请选择日期范围" color="#B12D29" rowHeight="90" closeOnClickOverlay :show="showCladar" :defaultDate="''" @confirm="handleClaOk" @close="handleSwitchCladar"
></u-calendar>
</view>
</template>
</tpx-layout>
</template>
<script>
import getCdnUrl from "@/common/getCdnUrl"
import { ordStaEnum, ordStatusList, payTypeEnum, payTypeList, dlvTypeEnum, dlvTypeList, dateTypeEnum, dateTypeList } from "@/common/enum"
import {
ordStaEnum,
ordStatusList,
payTypeEnum,
payTypeList,
dlvTypeEnum,
dlvTypeList,
dateTypeEnum,
dateTypeList
} from "@/common/enum"
import {
goto
} from "@/common/untool"
export default {
props: {
// hasLeftWin: {
@ -232,19 +251,35 @@
// }
},
computed: {
},
data() {
return {
sendTypeList: [
{ title: '上门取件', val: 1},
{ title: '仓库收货', val: 2},
{ title: '整柜提货', val: 3}
sendTypeList: [{
title: '上门取件',
val: 1
},
{
title: '仓库收货',
val: 2
},
{
title: '整柜提货',
val: 3
}
],
tipsList: [
{ title: '请带纸箱', val: 3},
{ title: '需要爬楼', val: 3},
{ title: '来前电话', val: 3},
tipsList: [{
title: '请带纸箱',
val: 3
},
{
title: '需要爬楼',
val: 3
},
{
title: '来前电话',
val: 3
},
],
showCladar: false,
agreePrivateRule: false,
@ -264,26 +299,29 @@
this.initData();
},
onUnload() {
},
methods: {
getCdnUrl,
initData(){
initData() {
// uni.showLoading({
// title: '加载中'
// });
},
handleAddressChoose(type) { // 1 寄件地址 2收件地址
goto(`address/list?tab=${type}`)
},
handleSwitchCladar() {
this.showCladar = !this.showCladar
if(!this.showCladar) {
if (!this.showCladar) {
}
},
handleSendTypeChange(item) {
},
handleCheckBoxClick(item, key){
handleCheckBoxClick(item, key) {
item.checked = !item.checked
},
}
@ -291,7 +329,7 @@
</script>
<style lang="scss">
@import '../../common/uni-nvue.scss';
@import '@/common/uni-nvue.scss';
page {
background-color: #F6F6F6;
@ -299,18 +337,18 @@
}
</style>
<style scoped lang="scss">
.yunf-item{
.yunf-item {
margin-bottom: 20rpx;
padding: 30rpx;
background: #F6F6F6;
border-radius: 20rpx;
&.active{
&.active {
border: 2rpx solid $uni-color-primary;
}
&:last-child{
&:last-child {
margin-bottom: 0;
}
}
</style>

View File

@ -100,7 +100,7 @@
</script>
<style lang="scss">
@import '../../../common/uni-nvue.scss';
@import '@/common/uni-nvue.scss';
</style>
<style scoped lang="scss">
page{

View File

@ -1,98 +1,96 @@
<template>
<view class="pg-cont">
<view class="customer_nav_bar">
<view class="com-jianju" style="width: 490rpx;">
<!-- 关键字搜索框 -->
<u-search placeholder="请输入运单号/订单号" v-model="searchParam.keyword" height="56" search-icon-size="40"
:clearabled="true" @change="(e)=> { handleSearchParamChange() }" :show-action="false"></u-search>
</view>
<view class="com-jianju" style="padding-top: 40rpx;">
<u-row justify="between" align="top">
<u-col span="9">
<!-- 订单状态 -->
<tpx-tabs :list="ordStatusList" v-model:value="searchParam.ordStatus"
@tabchange="(val)=> { handleSearchParamChange() }" mode="info"
>
(<text>0</text>)
</tpx-tabs>
</u-col>
<u-col span="2">
<!-- 更多查询条件 -->
<u-button @click="handleSearchMoreBtn()" :hairline="false" shape="circle" size="mini" custom-style="border-radius: 23rpx;">
<u-row justify="center">
<view :style="'padding-right: 4rpx;white-space: nowrap;' + (hasExtSchParam?'color: #B12D29;':'color: #666;')">
{{hasExtSchParam?'已':''}}筛选
</view>
<u-icon :name="showSearchMore?'arrow-up-fill':'arrow-down-fill'"
:color="(hasExtSchParam?'#B12D29':'color: #666')" size="18" custom-style="margin-top: 2rpx;"
></u-icon>
</u-row>
</u-button>
</u-col>
</u-row>
</view>
<!-- 状态搜索 -->
<view v-if="showSearchMore" class="search-more-panel">
<view class="smp-body slideInDown animated fast">
<view class="smp-content">
<view class="pos-abt-all" style="overflow-y: auto;">
<view style="padding: 0 0 30rpx 0">
<view>
<u-text text="快递状态" size="28" :bold="true" margin="0 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(dItem, dIndex) in dlvTypeList">
<u-tag :text="`${dItem.title}`" :plain="!dItem.checked" type="info" shape="circle" :bg-color="`${dItem.checked?'#de524e':''}`" :name="dIndex"
@click="handleCheckBoxClick(dItem)">
</u-tag>
<tpx-layout>
<template v-slot:header>
<view class="customer_nav_bar">
<view class="com-jianju" style="width: 490rpx;">
<!-- 关键字搜索框 -->
<u-search placeholder="请输入运单号/订单号" v-model="searchParam.keyword" height="56" search-icon-size="40"
:clearabled="true" @change="(e)=> { handleSearchParamChange() }" :show-action="false"></u-search>
</view>
<view class="com-jianju" style="padding-top: 40rpx;">
<u-row justify="between" align="top">
<u-col span="9">
<!-- 订单状态 -->
<tpx-tabs :list="ordStatusList" v-model:value="searchParam.ordStatus"
@tabchange="(val)=> { handleSearchParamChange() }" mode="info"
>
(<text>0</text>)
</tpx-tabs>
</u-col>
<u-col span="2">
<!-- 更多查询条件 -->
<u-button @click="handleSearchMoreBtn()" :hairline="false" shape="circle" size="mini" custom-style="border-radius: 23rpx;">
<u-row justify="center">
<view :style="'padding-right: 4rpx;white-space: nowrap;' + (hasExtSchParam?'color: #B12D29;':'color: #666;')">
{{hasExtSchParam?'已':''}}筛选
</view>
</view>
<view>
<u-text text="付款方式" size="28" :bold="true" margin="20rpx 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(pItem, pIndex) in payTypeList">
<u-tag :text="`${pItem.title}`" :plain="!pItem.checked" type="info" shape="circle" :bg-color="`${pItem.checked?'#de524e':''}`" :name="pIndex"
@click="handleCheckBoxClick(pItem)">
</u-tag>
</view>
</view>
<view>
<u-text text="时间范围" size="28" :bold="true" margin="20rpx 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(daItem, daIndex) in dateTypeList"
v-show="!(tmpSearchParam.date && dateTypeEnum.custom == daItem.val)"
>
<u-tag
:text="`${daItem.title}`" :plain="!(daItem.val == tmpSearchParam.dateType)" type="info" shape="circle" :bg-color="`${daItem.val == tmpSearchParam.dateType?'#de524e':''}`"
@click="handleCheckDate(daItem)">
</u-tag>
</view>
<view v-if="tmpSearchParam.date" class="smp-tag" style="display: block;">
<view style="display: inline-block;">
<u-tag :text="`${tmpSearchParam.date}`" :plain="false" type="info" shape="circle" :bg-color="`#de524e`"
@click="handleSwitchCladar()">
<u-icon :name="showSearchMore?'arrow-up-fill':'arrow-down-fill'"
:color="(hasExtSchParam?'#B12D29':'color: #666')" size="18" custom-style="margin-top: 2rpx;"
></u-icon>
</u-row>
</u-button>
</u-col>
</u-row>
</view>
<!-- 状态搜索 -->
<view v-if="showSearchMore" class="search-more-panel">
<view class="smp-body slideInDown animated fast">
<view class="smp-content">
<view class="pos-abt-all" style="overflow-y: auto;">
<view style="padding: 0 0 30rpx 0">
<view>
<u-text text="快递状态" size="28" :bold="true" margin="0 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(dItem, dIndex) in dlvTypeList">
<u-tag :text="`${dItem.title}`" :plain="!dItem.checked" type="info" shape="circle" :bg-color="`${dItem.checked?'#de524e':''}`" :name="dIndex"
@click="handleCheckBoxClick(dItem)">
</u-tag>
</view>
</view>
<view>
<u-text text="付款方式" size="28" :bold="true" margin="20rpx 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(pItem, pIndex) in payTypeList">
<u-tag :text="`${pItem.title}`" :plain="!pItem.checked" type="info" shape="circle" :bg-color="`${pItem.checked?'#de524e':''}`" :name="pIndex"
@click="handleCheckBoxClick(pItem)">
</u-tag>
</view>
</view>
<view>
<u-text text="时间范围" size="28" :bold="true" margin="20rpx 0 20rpx 0"></u-text>
<view class="smp-tag" v-for="(daItem, daIndex) in dateTypeList"
v-show="!(tmpSearchParam.date && dateTypeEnum.custom == daItem.val)"
>
<u-tag
:text="`${daItem.title}`" :plain="!(daItem.val == tmpSearchParam.dateType)" type="info" shape="circle" :bg-color="`${daItem.val == tmpSearchParam.dateType?'#de524e':''}`"
@click="handleCheckDate(daItem)">
</u-tag>
</view>
<view v-if="tmpSearchParam.date" class="smp-tag" style="display: block;">
<view style="display: inline-block;">
<u-tag :text="`${tmpSearchParam.date}`" :plain="false" type="info" shape="circle" :bg-color="`#de524e`"
@click="handleSwitchCladar()">
</u-tag>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="smp-foot">
<u-row gutter="20" justify="between">
<u-button @click="handleResetTempSearch()" shape="circle">重置</u-button>
<view style="width: 40rpx;"></view>
<u-button @click="handleConfirmTempSearch()" shape="circle" type="primary">确认</u-button>
</u-row>
<view class="smp-foot">
<u-row gutter="20" justify="between">
<u-button @click="handleResetTempSearch()" shape="circle">重置</u-button>
<view style="width: 40rpx;"></view>
<u-button @click="handleConfirmTempSearch()" shape="circle" type="primary">确认</u-button>
</u-row>
</view>
</view>
</view>
</view>
</view>
<view class="pg-body">
</template>
<template v-slot:body>
<scroll-view :scroll-y="true" @scrolltolower="onScrollBottom()" class="pos-abt-all"
>
<view class="pgb-cont">
@ -164,13 +162,14 @@
</view>
</view>
</scroll-view>
</view>
</view>
</template>
</tpx-layout>
<!-- 日历 -->
<!-- @close="handleSwitchCladar()" -->
<u-calendar title="请选择日期范围" color="#B12D29" mode="range" rowHeight="90" closeOnClickOverlay :show="showCladar" :defaultDate="tmpSearchParam.date.split('~')" @confirm="handleClaOk" @close="handleSwitchCladar"
></u-calendar>
</template>
<script>
import getCdnUrl from "@/common/getCdnUrl"
@ -316,13 +315,11 @@
</script>
<style lang="scss">
@import '../../../common/uni-nvue.scss';
@import '@/common/uni-nvue.scss';
page {
background-color: #F6F6F6;
height: 100% !important;
}
.customer_nav_bar {
// padding-top: --status-bar-height;
padding-top: 80rpx;
@ -331,15 +328,6 @@
}
</style>
<style scoped lang="scss">
.pg-cont{
height: 100%;
display: flex;
flex-direction: column;
}
.pg-body{
position: relative;
flex: 1;
}
.pgb-cont{
padding: 30rpx;
}

View File

@ -97,7 +97,7 @@
</script>
<style lang="scss">
@import '../../../common/uni-nvue.scss';
@import '@/common/uni-nvue.scss';
</style>
<style scoped lang="scss">
.hdbg{