225 lines
11 KiB
Plaintext
225 lines
11 KiB
Plaintext
<view class="custom-scroll-view">
|
||
<view>
|
||
<view style="height:{{statusBarHeight}}px" class="status-bar"></view>
|
||
<view class="nav-bar">
|
||
<image src="/assets/icon/left-panel-btn.png" class="left-btn" bind:tap="openLeftPanel"/>
|
||
<!-- <view class="community">
|
||
<image class="icon" src="/assets/icon/community.png"/>
|
||
<label>{{userInfo.community_name}}</label>
|
||
</view> -->
|
||
<view class="loop-order-switch">
|
||
<label>语音播报</label>
|
||
<view class="weui-loading" wx:if="{{bgNoticeLoadResult.loading}}"></view>
|
||
<view class="retry" wx:elif="{{bgNoticeLoadResult.error}}" bind:tap="bgNoticeRetry">重试</view>
|
||
<switch wx:else class="switch" checked="{{isStartLoopOrder}}" bindchange="loopOrderChange"/>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="head {{pager.loading?'loading':''}}">
|
||
<view class="item {{statusDetailKey==key?'current':''}}" wx:for="{{statusDetail}}"
|
||
wx:for-index="key" wx:key="key" bind:tap="setStatus" data-item="{{item}}">
|
||
<view class="red-bubble"
|
||
wx:if="{{item.key==statusDetail.created.key&&unReadOrderCount>0}}">
|
||
{{unReadOrderCount}}
|
||
</view>
|
||
{{item.text}}({{item.value}})
|
||
</view>
|
||
</view>
|
||
<view class="building {{pager.loading?'loading':''}}">
|
||
<view class="item {{index==buildingIndex?'current':''}}"
|
||
wx:for="{{buildingList}}" wx:key="index" bind:tap="setBuilding"
|
||
data-item="{{item}}" data-index="{{index}}">
|
||
{{item.building_name}}({{item.order_count}})
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<list-view class="package-list main" bind:refresh="refreshList"
|
||
bind:loadMore="loadList" refresher-triggered="{{pager.refreshTrigger}}"
|
||
show-load-more="{{!(list.length==0&&pager.loadAll)}}"
|
||
loading="{{pager.loading}}" load-all="{{pager.loadAll}}">
|
||
<view wx:for="{{list}}" wx:key="index"
|
||
class="item {{item.status==orderStatus.unpaid||item.status==orderStatus.completed?'no-btns':''}} {{item.is_first_order?'is-new-order':''}} {{item.order_additional_fees.length>0?'has-markup':''}}">
|
||
<view bind:tap="navToOrderDetail" data-id="{{item.orderid}}" >
|
||
<view class="item-head">
|
||
<view class="tag">代取快递</view>
|
||
<view class="deliver-time">
|
||
期望送达<label class="time">{{item.delivery_time}}</label>
|
||
</view>
|
||
</view>
|
||
<view class="station-list">
|
||
<view class="sl-item" wx:for="{{item.packages}}" wx:key="index" wx:for-item="pItem" wx:for-index="pIndex">
|
||
<view class="name">
|
||
<view class="text">{{pItem.station_name}}</view>
|
||
<view class="count">{{pItem.pickup_codes.length}} 件</view>
|
||
</view>
|
||
<view class="received-status {{item.status==orderStatus.received&&!pItem.receivedAll?'done':''}}" wx:if="{{item.status!=orderStatus.created}}">
|
||
{{
|
||
item.status==orderStatus.received?(pItem.receivedAll?'已取件':'待取件'):
|
||
item.status==orderStatus.delivering?'已取件':''
|
||
}}
|
||
</view>
|
||
</view>
|
||
<view class="sl-item" wx:if="{{item.pickup_images&&item.pickup_images.length>0}}">
|
||
<view class="name">图片取件 {{item.pickup_images_count}} 件</view>
|
||
</view>
|
||
</view>
|
||
<view class="address">
|
||
<view class="title">
|
||
{{item.address.community_name}}
|
||
{{item.address.building_name}}
|
||
{{item.address.address_detail}}
|
||
</view>
|
||
<view class="sub-title">
|
||
{{item.address.name}}{{genderKV[item.address.gender]}}:{{item.address.phone}}丨{{deliverStatusKV[item.delivery_method]}}
|
||
</view>
|
||
</view>
|
||
<view class="markup" wx:if="{{item.order_additional_fees.length>0}}">
|
||
<view class="mu-item" wx:for="{{item.order_additional_fees}}"
|
||
wx:for-item="mItem" wx:key="index">
|
||
【<label class="bold">{{markupStatusKV[mItem.result]}}</label>】加价金额:<label class="bold">{{mItem.additional_fee_amount}}元</label>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<view class="btns" wx:if="{{item.status==orderStatus.created}}">
|
||
<button disabled="{{item.receiving}}" class="button more-btn" plain
|
||
capture-catch:tap="showMoreAS" data-item="{{item}}" data-index="{{index}}">
|
||
<view class="icon"></view>
|
||
</button>
|
||
<swipe-button class="swipe-button" loading="{{item.receiving}}" bind:done="getOrder"
|
||
data-item="{{item}}" data-index="{{index}}" button-text="我要接单"
|
||
button-loading-text="接单中..." capture-catch:tap="emptyFun"/>
|
||
</view>
|
||
<view class="btns" wx:if="{{item.status==orderStatus.received}}">
|
||
<button disabled="{{item.receiving}}" class="button more-btn" plain
|
||
capture-catch:tap="showMoreAS" data-item="{{item}}" data-index="{{index}}">
|
||
<view class="icon"></view>
|
||
</button>
|
||
<swipe-button class="swipe-button" loading="{{item.receiving}}" bind:done="receivedOrder"
|
||
data-item="{{item}}" data-index="{{index}}" button-text="我已取货"
|
||
button-loading-text="取货中..." capture-catch:tap="emptyFun"/>
|
||
</view>
|
||
<view class="btns" wx:if="{{item.status==orderStatus.delivering}}">
|
||
<!-- <button class="button concat-user-btn" capture-catch:tap="concatUser"
|
||
data-item="{{item}}">
|
||
<image class="icon" src="/assets/icon/phone.png"></image>
|
||
<label>联系用户</label>
|
||
</button> -->
|
||
<button disabled="{{item.receiving}}" class="button more-btn" plain
|
||
capture-catch:tap="showMoreAS" data-item="{{item}}" data-index="{{index}}">
|
||
<view class="icon"></view>
|
||
</button>
|
||
<button type="primary" class="confirm-send-btn"
|
||
capture-catch:tap="confirmSend" data-item="{{item}}">我已送达</button>
|
||
</view>
|
||
</view>
|
||
<view class="list-empty" wx:if="{{list.length==0&&pager.loadAll}}">
|
||
<image class="icon" src="/assets/icon/list-empty.png"/>
|
||
<view class="title">暂无跑腿订单</view>
|
||
</view>
|
||
</list-view>
|
||
</view>
|
||
|
||
<page-container wx:if="{{isShowConfirm}}" model:show="{{isShowConfirm}}" position="bottom"
|
||
round class="confirm-sending" close-on-slide-down>
|
||
<view class="content">
|
||
<view class="title">拍照留证</view>
|
||
<view class="sub-title">当用户要求把包裹放在门口请拍照上传留证</view>
|
||
<view class="sub-title">拍摄时请把门牌号和包裹数量整体拍照</view>
|
||
<view class="photos">
|
||
<view class="item {{item.loading?'current':''}}" wx:for="{{tempImgs}}" wx:key="index">
|
||
<image class="image" src="{{item.tempFilePath}}"/>
|
||
<progress wx:if="{{!item.uploaded}}" class="progress" percent="{{item.progress}}" stroke-width="4"/>
|
||
<view class="close-area" bind:tap="removeImage" data-index="{{index}}">
|
||
<image src="/assets/icon/close-btn.png" class="icon"/>
|
||
</view>
|
||
</view>
|
||
<view class="take-photo item" bind:tap="chooseImage"
|
||
wx:if="{{tempImgs.length<maxChooseImgCount}}">
|
||
<image class="icon" src="/assets/icon/camera.png"/>
|
||
<view class="title">点击拍照</view>
|
||
</view>
|
||
</view>
|
||
<button disabled="{{completing}}" class="button" type="primary" bind:tap="uploadAndConfirmSend">我已送达</button>
|
||
</view>
|
||
</page-container>
|
||
|
||
<view class="left-panel-mask" wx:if="{{isShowLeftPanel}}"
|
||
style="opacity:{{isShowLeftPanelMask?1:0}};" bind:tap="closeLeftPanel"></view>
|
||
<movable-area class="left-move-view" wx:if="{{isShowLeftPanel}}">
|
||
<movable-view class="left-panel" x="{{leftPanelMoveViewX}}rpx"
|
||
style="padding-top:{{snBarHeight}}px;"
|
||
direction="horizontal" damping="50" bindchange="leftPanelMove"
|
||
capture-catch:touchcancel="leftPanelMoveCancel"
|
||
capture-catch:touchend="leftPanelMoveCancel">
|
||
|
||
<scroll-view scroll-y style="height:calc(100vh - {{snBarHeight}}px)" refresher-enabled
|
||
bindrefresherrefresh="getUserInfo" refresher-triggered="{{userInfoTrigger}}" class="scroll-view"
|
||
show-scrollbar="{{false}}" enhanced show-scrollbar="{{false}}">
|
||
<view class="page-container user-info">
|
||
<image class="avatar" src="{{userInfo.optimized_avatar||'/assets/icon/avatar.png'}}" bind:tap="navToUserInfo"/>
|
||
<view class="name">{{userInfo.nickname}}</view>
|
||
<view class="phone">{{userInfo.phone}}</view>
|
||
<view class="community-name">{{userInfo.community_name}}</view>
|
||
<view class="spliter"></view>
|
||
<view class="order-info">
|
||
<view class="item">
|
||
<view class="key">总量订单</view>
|
||
<view class="value">{{orderSummary.total_count}}</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="key">昨日订单</view>
|
||
<view class="value">{{orderSummary.yesterday_count}}</view>
|
||
</view>
|
||
<view class="item">
|
||
<view class="key">今日订单</view>
|
||
<view class="value">{{orderSummary.today_count}}</view>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="page-container income">
|
||
<navigator url="/pages/user/info/index" class="item">
|
||
<view class="key">
|
||
<label>账户余额</label>
|
||
<image class="icon" src="/assets/icon/right-arrow-small.png"/>
|
||
</view>
|
||
<view class="value">{{summary.balance}}</view>
|
||
</navigator>
|
||
<view class="spliter"></view>
|
||
<navigator url="/pages/user/income/index" class="item">
|
||
<view class="key">
|
||
<label>今日收益</label>
|
||
<image class="icon" src="/assets/icon/right-arrow-small.png"/>
|
||
</view>
|
||
<view class="value">{{summary.today_income}}</view>
|
||
</navigator>
|
||
</view>
|
||
|
||
<view class="page-container actions">
|
||
<button class="item button" open-type="contact">
|
||
<image class="icon" src="/assets/icon/service.png"/>
|
||
<view>在线客服</view>
|
||
</button>
|
||
<navigator url="/pages/user/password/index" class="item">
|
||
<image class="icon" src="/assets/icon/password.png"/>
|
||
<view>修改密码</view>
|
||
</navigator>
|
||
<view class="item" bind:tap="navToAgreement">
|
||
<image class="icon" src="/assets/icon/agreement.png"/>
|
||
<view>用户协议</view>
|
||
</view>
|
||
</view>
|
||
|
||
<button type="primary" class="logout-btn" bind:tap="logout">退出登录</button>
|
||
</scroll-view>
|
||
</movable-view>
|
||
</movable-area>
|
||
|
||
|
||
<modal-view titleText="取消订单需联系客户说明原因" editable content-placeholder="请输入退单原因" bind:ok="refund" model:show="{{isShowRefundConfirm}}" titleTextCenter="{{false}}" editRequired/>
|
||
|
||
<mark-up id="markupView" class="mark-up" bind:success="refreshCurrentList"/>
|
||
|
||
<background-notice bind:onTrigger="findNewOrder" id="orderBackgroundNotice"
|
||
start="{{isStartLoopOrder}}" bind:initSuccess="bgNoticeSuccess"
|
||
bind:initError="bgNoticeError" bind:stop="stopBGNotice"/> |