diff --git a/pages/news/user/withdrawal.vue b/pages/news/user/withdrawal.vue index b4bd421..eb76b07 100644 --- a/pages/news/user/withdrawal.vue +++ b/pages/news/user/withdrawal.vue @@ -13,7 +13,7 @@ <view class="a"> <view class="l">提现金</view> <view class="r"> - <view class="p">¥<input type="number" placeholder="请输入金额" /></view> + <view class="p">¥<input type="number" v-model="obj.money" placeholder="请输入金额" /></view> <view class="w">全部提现</view> </view> </view> @@ -21,31 +21,37 @@ <view class="item"> <view class="l">姓名:</view> <view class="r"> - <input type="text" placeholder="请输入姓名" /> + <input type="text" v-model="obj.bank_name" placeholder="请输入姓名" /> </view> </view> <view class="item"> <view class="l">身份证号:</view> <view class="r"> - <input type="text" placeholder="请输入身份证号" /> + <input type="text" v-model="obj.money" placeholder="请输入身份证号" /> </view> </view> <view class="item"> <view class="l">银行卡号:</view> <view class="r"> - <input type="number" placeholder="请输入银行卡号" /> + <input type="number" v-model="obj.bank_card" placeholder="请输入银行卡号" /> + </view> + </view> + <view class="item"> + <view class="l">开户行名称:</view> + <view class="r"> + <input type="number" v-model="obj.bank_account" placeholder="请输入银行卡号" /> </view> </view> <view class="item"> <view class="l">银行预留手机号:</view> <view class="r"> - <input type="number" placeholder="请输入银行预留手机号" /> + <input type="number" v-model="obj.money" placeholder="请输入银行预留手机号" /> </view> </view> <view class="item"> <view class="l">验证码:</view> <view class="r"> - <input type="number" placeholder="请输入验证码" /> + <input type="number" v-model="obj.money" placeholder="请输入验证码" /> <view class="code">获取验证码</view> </view> </view> @@ -131,7 +137,9 @@ alipay_name:'',//陈旭 支付宝姓名(仅提现方式为支付宝) bank_name:'',//开户姓名(仅提现方式为银行卡) bank_card:'',//银行卡号(仅提现方式为银行卡) - bank_account:'',//开户行名称/地址(仅提现方式为银行卡)} + bank_account:'',//开户行名称/地址(仅提现方式为银行卡) + bank_phone:'' + } }; }, onLoad() { diff --git a/pages/order/index - 副本2021-1-19.vue b/pages/order/index - 副本2021-1-19.vue deleted file mode 100644 index d278668..0000000 --- a/pages/order/index - 副本2021-1-19.vue +++ /dev/null @@ -1,523 +0,0 @@ -<template> - <view class="container" :style="appThemeStyle"> - <mescroll-body ref="mescrollRef" :sticky="true" @init="mescrollInit" :down="{ native: true }" @down="downCallback" :up="upOption" - @up="upCallback"> - <!-- tab栏 --> - <u-tabs :list="tabs" :is-scroll="false" :current="curTab" :active-color="appTheme.mainBg" :duration="0.2" @change="onChangeTab" /> - <!-- 订单列表 --> - <view class="order-list"> - <view class="order-item" v-for="(item, index) in list.data" :key="index"> - <view class="item-top"> - <view class="item-top-left"> - <text class="order-time">{{ item.create_time }}</text> - </view> - <view class="item-top-right"> - <text class="state-text">{{ item.state_text }}</text> - </view> - </view> - <!-- 商品列表 --> - <view class="goods-list" @click="handleTargetDetail(item.order_id)"> - <view class="goods-item" v-for="(goods, idx) in item.goods" :key="idx"> - <!-- 商品图片 --> - <view class="goods-image"> - <image class="image" :src="goods.goods_image" mode="scaleToFill"></image> - </view> - <!-- 商品信息 --> - <view class="goods-content"> - <view class="goods-title"><text class="twoline-hide">{{ goods.goods_name }}</text></view> - <view class="goods-props clearfix"> - <view class="goods-props-item" v-for="(props, idx) in goods.goods_props" :key="idx"> - <text>{{ props.value.name }}</text> - </view> - </view> - </view> - <!-- 交易信息 --> - <view class="goods-trade"> - <view class="goods-price"> - <text class="unit">¥</text> - <text class="value">{{ goods.is_user_grade ? goods.grade_goods_price : goods.goods_price }}</text> - </view> - <view class="goods-num"> - <text>×{{ goods.total_num }}</text> - </view> - </view> - </view> - </view> - <!-- 订单合计 --> - <view class="order-total"> - <text>共{{ item.total_num }}件商品,总金额</text> - <text class="unit">¥</text> - <text class="money">{{ item.pay_price }}</text> - </view> - <!-- 订单操作 --> - <view v-if="item.order_status != OrderStatusEnum.CANCELLED.value" class="order-handle"> - <view class="btn-group clearfix"> - <!-- 未支付取消订单 --> - <block v-if="item.pay_status == PayStatusEnum.PENDING.value"> - <view class="btn-item" @click="onCancel(item.order_id)">取消</view> - </block> - <!-- 已支付进行中的订单 --> - <block v-if="item.order_status != OrderStatusEnum.APPLY_CANCEL.value"> - <block v-if="item.pay_status == PayStatusEnum.SUCCESS.value && item.delivery_status == DeliveryStatusEnum.NOT_DELIVERED.value"> - <view class="btn-item" @click="onCancel(item.order_id)">申请取消</view> - </block> - <!-- 订单核销码 --> - <block v-if="item.pay_status == PayStatusEnum.SUCCESS.value && item.delivery_type == DeliveryTypeEnum.EXTRACT.value - && item.delivery_status == DeliveryStatusEnum.NOT_DELIVERED.value"> - <view class="btn-item active" @click="onExtractQRCode(item.order_id)"> - <text class="iconfont icon-qr-extract"></text> - <text class="m-l-10">核销码</text> - </view> - </block> - </block> - <!-- 已申请取消 --> - <view v-else class="f-28 col-8">取消申请中</view> - <!-- 未支付的订单 --> - <block v-if="item.pay_status == PayStatusEnum.PENDING.value"> - <view class="btn-item active" @click="onPay(item.order_id)">去支付</view> - </block> - <!-- 确认收货 --> - <block v-if="item.delivery_status == DeliveryStatusEnum.DELIVERED.value && item.receipt_status == ReceiptStatusEnum.NOT_RECEIVED.value"> - <view class="btn-item active" @click="onReceipt(item.order_id)">确认收货</view> - </block> - <!-- 订单评价 --> - <block v-if="item.order_status == OrderStatusEnum.COMPLETED.value && item.is_comment == 0"> - <view class="btn-item" @click="handleTargetComment(item.order_id)">评价</view> - </block> - </view> - </view> - </view> - </view> - </mescroll-body> - <!-- 核销二维码弹窗 --> - <u-popup v-model="showQRCodePopup" mode="center" border-radius="26" :closeable="true"> - <view class="qrcode-popup"> - <view class="title">自提核销二维码</view> - <view class="pop-content"> - <image v-if="qrcodeImage" class="image" :src="qrcodeImage"></image> - </view> - </view> - </u-popup> - </view> -</template> - -<script> - import { - DeliveryStatusEnum, - DeliveryTypeEnum, - OrderStatusEnum, - PayStatusEnum, - ReceiptStatusEnum - } from '@/common/enum/order' - import MescrollMixin from '@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins' - import { getEmptyPaginateObj, getMoreListData } from '@/core/app' - import * as OrderApi from '@/api/order' - - // 每页记录数量 - const pageSize = 15 - - // tab栏数据 - const tabs = [{ - name: `全部`, - value: 'all' - }, { - name: `待支付`, - value: 'payment' - }, { - name: `待发货`, - value: 'delivery' - }, { - name: `待收货`, - value: 'received' - }, { - name: `待评价`, - value: 'comment' - }] - - export default { - mixins: [MescrollMixin], - data() { - return { - // 枚举类 - DeliveryStatusEnum, - DeliveryTypeEnum, - OrderStatusEnum, - PayStatusEnum, - ReceiptStatusEnum, - - // 当前页面参数 - options: { dataType: 'all' }, - // tab栏数据 - tabs, - // 当前标签索引 - curTab: 0, - // 订单列表数据 - list: getEmptyPaginateObj(), - - // 上拉加载配置 - upOption: { - // 首次自动执行 - auto: true, - // 每页数据的数量; 默认10 - page: { size: pageSize }, - // 数量要大于4条才显示无更多数据 - noMoreSize: 4, - // 空布局 - empty: { - tip: '亲,暂无订单记录' - } - }, - // 控制onShow事件是否刷新订单列表 - canReset: false, - // 核销二维码弹窗 - showQRCodePopup: false, - // 核销二维码图片url (通过后端获取) - qrcodeImage: '', - } - }, - - /** - * 生命周期函数--监听页面加载 - */ - onLoad(options) { - // 初始化当前选中的标签 - this.initCurTab(options) - // 注册全局事件订阅: 是否刷新订单列表 - uni.$on('syncRefresh', canReset => { - this.canReset = canReset - }) - }, - - /** - * 生命周期函数--监听页面显示 - */ - onShow() { - this.canReset && this.onRefreshList() - this.canReset = false - }, - - /** - * 生命周期函数--监听页面的卸载 - */ - onUnload() { - // 卸载全局事件订阅 - uni.$off('syncRefresh') - }, - - methods: { - - // 初始化当前选中的标签 - initCurTab(options) { - const app = this - if (options.dataType) { - const index = app.tabs.findIndex(item => item.value == options.dataType) - app.curTab = index > -1 ? index : 0 - } - }, - - /** - * 上拉加载的回调 (页面初始化时也会执行一次) - * 其中page.num:当前页 从1开始, page.size:每页数据条数,默认10 - * @param {Object} page - */ - upCallback(page) { - const app = this - // 设置列表数据 - app.getOrderList(page.num) - .then(list => { - const curPageLen = list.data.length - const totalSize = list.data.total - app.mescroll.endBySize(curPageLen, totalSize) - }) - .catch(() => app.mescroll.endErr()) - }, - - // 获取订单列表 - getOrderList(pageNo = 1) { - const app = this - return new Promise((resolve, reject) => { - OrderApi.list({ dataType: app.getTabValue(), page: pageNo }, { load: false }) - .then(result => { - // 合并新数据 - const newList = app.initList(result.data.list) - app.list.data = getMoreListData(newList, app.list, pageNo) - resolve(newList) - }) - }) - }, - - // 初始化订单列表数据 - initList(newList) { - newList.data.forEach(item => { - item.total_num = 0 - item.goods.forEach(goods => { - item.total_num += goods.total_num - }) - }) - return newList - }, - - // 获取当前标签项的值 - getTabValue() { - return this.tabs[this.curTab].value - }, - - // 切换标签项 - onChangeTab(index) { - const app = this - // 设置当前选中的标签 - app.curTab = index - // 刷新订单列表 - app.onRefreshList() - }, - - // 刷新订单列表 - onRefreshList() { - this.list = getEmptyPaginateObj() - setTimeout(() => { - this.mescroll.resetUpScroll() - }, 120) - }, - - // 取消订单 - onCancel(orderId) { - const app = this - uni.showModal({ - title: '友情提示', - content: '确认要取消该订单吗?', - success(o) { - if (o.confirm) { - OrderApi.cancel(orderId) - .then(result => { - // 显示成功信息 - app.$toast(result.message) - // 刷新订单列表 - app.onRefreshList() - }) - } - } - }); - }, - - // 确认收货 - onReceipt(orderId) { - const app = this - uni.showModal({ - title: '友情提示', - content: '确认收到商品了吗?', - success(o) { - if (o.confirm) { - OrderApi.receipt(orderId) - .then(result => { - // 显示成功信息 - app.$success(result.message) - // 刷新订单列表 - app.onRefreshList() - }) - } - } - }); - }, - - // 获取核销二维码 - onExtractQRCode(orderId) { - const app = this - OrderApi.extractQrcode(orderId, { channel: app.platform }) - .then(result => { - app.qrcodeImage = result.data.qrcode - app.showQRCodePopup = true - }) - }, - - // 点击去支付 - onPay(orderId) { - this.$navTo('pages/checkout/cashier/index', { orderId }) - }, - - // 跳转到订单详情页 - handleTargetDetail(orderId) { - this.$navTo('pages/order/detail', { orderId }) - }, - - // 跳转到订单评价页 - handleTargetComment(orderId) { - this.$navTo('pages/order/comment/index', { orderId }) - } - - }, - - } -</script> - -<style lang="scss" scoped> - // 项目内容 - .order-item { - margin: 20rpx auto 20rpx auto; - padding: 30rpx 30rpx; - width: 94%; - box-shadow: 0 1rpx 5rpx 0px rgba(0, 0, 0, 0.05); - border-radius: 16rpx; - background: #fff; - } - - // 项目顶部 - .item-top { - display: flex; - justify-content: space-between; - font-size: 26rpx; - margin-bottom: 40rpx; - - .order-time { - color: #777; - } - - .state-text { - color: $main-bg; - } - } - - // 商品列表 - .goods-list { - - // 商品项 - .goods-item { - display: flex; - margin-bottom: 40rpx; - - // 商品图片 - .goods-image { - width: 180rpx; - height: 180rpx; - - .image { - display: block; - width: 100%; - height: 100%; - border-radius: 8rpx; - } - } - - // 商品内容 - .goods-content { - flex: 1; - padding-left: 16rpx; - padding-top: 16rpx; - - .goods-title { - font-size: 26rpx; - max-height: 76rpx; - } - - .goods-props { - margin-top: 14rpx; - height: 40rpx; - color: #ababab; - font-size: 24rpx; - overflow: hidden; - - .goods-props-item { - display: inline-block; - margin-right: 14rpx; - padding: 4rpx 16rpx; - border-radius: 12rpx; - background-color: #F5F5F5; - width: auto; - } - } - - - } - - // 交易信息 - .goods-trade { - padding-top: 16rpx; - width: 150rpx; - text-align: right; - color: $uni-text-color-grey; - font-size: 26rpx; - - .goods-price { - vertical-align: bottom; - margin-bottom: 16rpx; - - .unit { - margin-right: -2rpx; - font-size: 24rpx; - } - } - } - - } - - } - - // 订单合计 - .order-total { - font-size: 26rpx; - vertical-align: bottom; - text-align: right; - height: 40rpx; - margin-bottom: 30rpx; - - .unit { - margin-left: 8rpx; - margin-right: -2rpx; - font-size: 26rpx; - } - - .money { - font-size: 28rpx; - } - } - - // 订单操作 - .order-handle { - .btn-group { - - .btn-item { - border-radius: 10rpx; - padding: 8rpx 20rpx; - margin-left: 15rpx; - font-size: 26rpx; - float: right; - color: #383838; - border: 1rpx solid #a8a8a8; - - &:last-child { - margin-left: 0; - } - - &.active { - color: $main-bg; - border: 1rpx solid $main-bg; - } - } - - } - - } - - // 弹出层 - 核销二维码 - .qrcode-popup { - padding: 36rpx 30rpx; - - .title { - font-size: 30rpx; - margin-bottom: 26rpx; - font-weight: bold; - text-align: center; - } - - .pop-content { - min-height: 260rpx; - padding: 0 10rpx; - - .image { - display: block; - width: 510rpx; - height: 510rpx; - } - - } - } -</style>