This commit is contained in:
weipengfei 2023-11-09 18:22:09 +08:00
commit 7e85b90fc7
25 changed files with 1579 additions and 1063 deletions

View File

@ -17,3 +17,11 @@ export function behalfAdminOrderList(data) {
return request.get("behalf_admin/order_list", data);
}
/**
* 订单统计
*
*/
export function behalfAdminNumber(data) {
return request.get("behalf_admin/number", data);
}

View File

@ -331,7 +331,7 @@
});
if(value.receipt_type == '增值税专用发票'){
if (!value.bank_name) return that.$util.Tips({
title: '请填写开户行'
title: '请填写银行卡号'
});
if (!value.bank_code) return that.$util.Tips({
title: '请填写银行账号'

View File

@ -12,6 +12,9 @@
"nvueCompiler" : "uni-app",
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"compatible":{
"ignoreVersion": true //trueHBuilderX1.9.0
},
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : true,

View File

@ -235,10 +235,21 @@
}
,{
"path" : "pages/replace_replenishment/index",
"path" : "pages/replace_replenishment/replace",
"style" :
{
"navigationBarTitleText": "代发补货",
"navigationBarTitleText": "代发订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ff5c2d",
"navigationBarTextStyle": "white"
}
},
{
"path" : "pages/replace_replenishment/replenishment",
"style" :
{
"navigationBarTitleText": "补货订单",
"enablePullDownRefresh": false,
"navigationBarBackgroundColor": "#ff5c2d",
"navigationBarTextStyle": "white"

View File

@ -40,6 +40,25 @@
{{orderInfo.refund_num}}
</view>
</view>
<view class="form-item item-txt">
<text class="label">退款原因</text>
<view class="picker">
{{orderInfo.refund_message}}
</view>
</view>
<view class="form-item item-txt">
<text class="label">退款备注</text>
<view class="picker">
{{orderInfo.mark}}
</view>
</view>
<view class="form-item item-txt">
<text class="label">退款凭证</text>
<view class="imgs">
<image v-for="(img, index) in orderInfo.pics4" :src="img" :key="index" style="width: 60rpx;height: 60rpx;margin-right: 10rpx;"></image>
<image @click="previewImg" src="@/static/images/right.png" style="width: 40rpx;height: 40rpx;transform: rotate(180deg);"></image>
</view>
</view>
</view>
<view v-if="orderInfo.refund_type == 2 && status == 1" class="form-box">
<view class="form-item item-txt">
@ -116,7 +135,8 @@
let that = this;
getRefundOrderInfo(that.mer_id, that.order_id).then(
res => {
that.orderInfo = res.data
res.data.pics4 = res.data.pics.slice(0,4);
that.orderInfo = res.data;
that.refundInfo = res.data.refund_info
},
err => {
@ -138,7 +158,7 @@
status: that.status,
fail_message: that.fail_message
}
if(that.orderInfo.refund_type == 2){
if(that.orderInfo.refund_type == 2 && that.status != -1){
if (!that.refundInfo.mer_delivery_user) {
return that.$util.Tips({
title: '请填写收货人姓名'
@ -176,6 +196,13 @@
}
);
},
//
previewImg(){
uni.previewImage({
urls: this.orderInfo.pics,
})
}
}
}
</script>
@ -191,6 +218,15 @@
justify-content: space-between;
border-bottom: 1px solid #f0f0f0;
font-size: 30rpx;
.label{
flex-shrink: 0;
margin-right: 24rpx;
}
.imgs{
display: flex;
flex-wrap: wrap;
align-items: center;
}
}
.item-txt{
align-items: center;

View File

@ -121,7 +121,11 @@
//
getindex(){
getUserInfo().then(res => {
if (res.data.mer_info.length == 0) {
return uni.showModal({
title: '暂无商户信息'
})
}
this.mer_id = res.data.service.mer_id;
if(this.isLogin){
this.getList(this.mer_id)

View File

@ -277,8 +277,8 @@
<view class='list'>
<view class="item">
<view class="acea-row row-middle">
<text class="item-name">开户行名称:</text>
<input type="text" maxlength="30" placeholder="请输入开户行名称" v-model="merchantData.bank_username"
<text class="item-name">开户行名称:</text>
<input type="text" maxlength="30" placeholder="请输入开户行名称" v-model="merchantData.bank_username"
@input="validateBtn" placeholder-class='placeholder' />
</view>
</view>
@ -293,8 +293,8 @@
<view class="item">
<view class="acea-row row-middle">
<text class="item-name">开户行:</text>
<input type="text" placeholder="请输入开户行" v-model="merchantData.bank_opening" @input="validateBtn"
<text class="item-name">银行卡号:</text>
<input type="text" placeholder="请输入银行卡号" v-model="merchantData.bank_opening" @input="validateBtn"
placeholder-class='placeholder' />
</view>
</view>
@ -768,7 +768,7 @@
title: '请输入银行账户姓名'
});
if (!value.bank_opening) return that.$util.Tips({
title: '请输入开户行'
title: '请输入银行卡号'
});
if (value.bank_front.length == 0) return that.$util.Tips({
@ -939,6 +939,7 @@
// console.log(res);
this.userid = res.data.uid
this.userInfoData = res.data
this.$store.commit('SET_USERINFO', res.data);
this.merchantData.phone = res.data.phone
if (res.data.service == null) {
// console.log('123');
@ -1638,6 +1639,7 @@
background-color: #d9d9d9;
text-align: center;
padding-top: 80rpx;
flex-shrink: 0;
.content-top_txt {
font-size: 18rpx;
@ -1665,6 +1667,7 @@
padding-left: 30rpx;
position: relative;
padding-top: 80rpx;
flex: 1;
.content-right-one {
display: flex;
@ -1693,7 +1696,8 @@
height: 70rpx;
line-height: 70rpx;
border-radius: 20rpx 20rpx;
left: 50%;
right: 50%;
transform: translate(50%, 0);
color: #ffffff;
background-color: #00a1f1;
text-align: center;

View File

@ -49,6 +49,7 @@
paymerchant,
marginlist
} from '@/api/api.js'
import { Toast } from '../../libs/uniApi'
export default {
data() {
return {
@ -130,7 +131,7 @@
// console.log('');
paymerchant().then((res) => {
console.log(res);
uni.requestPayment({
provider: 'wxpay',
orderInfo: res.data
@ -146,12 +147,13 @@
this.$util.Tips({
title: '支付失败'
});
console.log('fail:' + JSON.stringify(err));
}
});
}).catch((err) => {
console.log(err)
this.$util.Tips({
title: err
});
})
} else if (res.cancel) {
console.log('用户点击取消');

File diff suppressed because it is too large Load Diff

View File

@ -525,7 +525,7 @@
category_id: this.cloudList[this.current]?.category_id || "",
order: this.type,
keyword: this.keyword,
page_num: this.page_num
page: this.page_num
}).then(res => {
// console.log(res.data.list[0].product_id, this.goodsList[0].product_id)
@ -793,7 +793,7 @@
category_id: this.cloudList[this.current]?.category_id || "",
order: this.type,
keyword: this.keyword,
page_num: this.page_num
page: this.page_num
}).then(res => {
this.goodsList = res.data.list

View File

@ -457,7 +457,7 @@
category_id: this.cloudList[this.current].category_id,
order: this.type,
keyword: this.keyword,
// page_num: this.page_num
// page: this.page_num
}).then(res => {
this.goodsList = res.data.list

View File

@ -242,20 +242,22 @@
showModel: false,
showModelCode: '',
goods: [
// {
// "id": 35,
// "store_name": "DT1515015024",
// "bar_code": "6903244675314",
// "manu_address": "",
// "price": "0.00",
// "stock": 9999999,
// "image": "https://lihai001.oss-cn-chengdu.aliyuncs.com/uploads/20230130/00ebcfdf75684f5494c0193075055d1.png",
// "slider_image": [],
// "spec": "1",
// "trademark": "",
// "manu_name": null,
// "note": ""
// },
// {
// "id": 7,
// "store_name": " 400",
// "bar_code": "6922868290895",
// "manu_address": "",
// "price": "4.80",
// "stock": 9999999,
// "image": "http://lihai001.oss-cn-chengdu.aliyuncs.com/def/2023-11-02/202311021740247976.jpg",
// "slider_image": [
// "https://lihai001.oss-cn-chengdu.aliyuncs.com/def/e4784202311041417185146.jpg"
// ],
// "spec": "****()",
// "trademark": "****()",
// "manu_name": null,
// "note": "login_dateJul 13 1998 12:00:00:000AMvalid_dateJul 13 2020 12:00:00:000AM"
// },
],
putGoods: { //
@ -316,25 +318,29 @@
return flag;
},
clickImg(data, type, index){
if(!data.update&&!this.uploadImgIdList.get(data.id)){
let arr = [];
if(this.isNullImage(data.image))arr.push(-1);
if(this.isNullImage(data.slider_image[0]))arr.push(0);
if(this.isNullImage(data.slider_image[1]))arr.push(1);
if(this.isNullImage(data.slider_image[2]))arr.push(2);
this.uploadImgIdList.set(data.id, arr)
}
let obj = this.uploadImgIdList.get(data.id) || [];
if(type==1&&!obj.includes(-1)) return ;
if(type==2&&!obj.includes(index)) return ;
//
// if(!data.update&&!this.uploadImgIdList.get(data.id)){
// let arr = [];
// if(this.isNullImage(data.image))arr.push(-1);
// if(this.isNullImage(data.slider_image[0]))arr.push(0);
// if(this.isNullImage(data.slider_image[1]))arr.push(1);
// if(this.isNullImage(data.slider_image[2]))arr.push(2);
// this.uploadImgIdList.set(data.id, arr)
// }
// let obj = this.uploadImgIdList.get(data.id) || [];
// if(type==1&&!obj.includes(-1)) return ;
// if(type==2&&!obj.includes(index)) return ;
this.uploadImgInfo.id = data.id;
this.uploadImgInfo.type = type;
this.uploadImgInfo.index = index;
if(data.image==this.defaultImageSRC||(type==2&&this.isNullImage(data.slider_image[index]))){
this.chooseImg()
}else if(data.update){
this.chooseImg()
}
// if(data.image==this.defaultImageSRC||(type==2&&this.isNullImage(data.slider_image[index]))){
// this.chooseImg()
// }else if(data.update){
// this.chooseImg()
// }
// ,
this.chooseImg()
},
chooseImg(){
let that = this;
@ -1210,6 +1216,7 @@
}
.list-box-put {
padding-bottom: 30rpx;
.item {
width: 694rpx;
margin: 0 auto;

View File

@ -16,8 +16,8 @@
<view class="message">
<view class="goodstitle">{{item.store_name}}</view>
<view class="flex_a_c">
<view class="">分类{{item.storeCategory.cate_name}}</view>
<view class="unit">单位{{item.unit_name}}</view>
<view class="">分类{{item.storeCategory && item.storeCategory.cate_name}}</view>
<view class="unit">规格{{item.unit_name}}</view>
</view>
<view class="bar_code">条形码{{ item.bar_code || "无" }}</view>
</view>
@ -33,8 +33,8 @@
<view class="popup_cont" v-if="redactGoods.store_name">
<view class="title">{{redactGoods.store_name}}</view>
<view class="message flex_a_c_j_sb">
<view class="">分类{{redactGoods.storeCategory.cate_name}}</view>
<view class="">单位{{redactGoods.unit_name}}</view>
<view class="">分类{{redactGoods.storeCategory && redactGoods.storeCategory.cate_name}}</view>
<view class="">规格{{redactGoods.unit_name}}</view>
<view class="">订货价{{redactGoods.price}}</view>
</view>
<view class="bar_code flex_a_c_j_sb">
@ -129,9 +129,10 @@
if (data.length < 9) this.status = 'nomore';
},
redactShow(item) {
console.log(item);
this.product_id = item.product_id
this.merId = item.mer_id
this.redactGoods = item
this.redactGoods = {...item}
this.popupShow = true
productDetail(item.mer_id, item.product_id).then(res => {
this.particulars = res.data
@ -145,7 +146,8 @@
},
//
async submitCreatedGoods() {
this.particulars.attrValue[0].stock = Number(this.goodsNum)
console.log(this.particulars);
// this.particulars.attrValue[0].stock = Number(this.goodsNum)
this.particulars.attrValue[0].price = this.goodsPrive
const res = await productUpdateFree(this.product_id, {
attr:this.particulars.attr,

View File

@ -251,7 +251,15 @@
])),
onReady() {},
mounted: function() {},
onLoad: function(options) {},
onLoad: function(options) {
let userInfo = this.$store.state.app.userInfo;
if(typeof userInfo == 'string') userInfo = JSON.parse(userInfo);
if (userInfo?.mer_info?.length == 0) {
uni.showModal({
title: '暂无商户信息'
})
}
},
onShow: function() {
let that = this
let routes = getCurrentPages();

View File

@ -128,7 +128,7 @@
线上入库
</view> -->
<view class="" class="bnt" @click="Fline(item)" style="width:150rpx">
线下入库
修改库存
</view>
<view v-if="item.is_show == 1 && item.status == 1" class="bnt"
@ -155,7 +155,7 @@
<u-popup :show="show" @close="close" mode="center" bgColor='transparent'>
<image src="@/static/images/xianxia.png" mode="widthFix"></image>
<view class="popen">
<h4 v-if="this.on_line==1">线下入库</h4>
<h4 v-if="this.on_line==1">修改库存</h4>
<h4 v-else>线上入库</h4>
<view class="guige">
<scroll-view scroll-y="true" class="scroll_y">
@ -171,7 +171,7 @@
</view>
<view class="shuru" v-if="this.on_line == 1">
数量: <input type="number" v-model="data.number" placeholder="请输入">
<view>数量: </view><input type="number" v-model="data.number" placeholder="请输入">
</view>
<view class="btn">
<button class="btn_l" @click="close()">取消</button>
@ -391,6 +391,7 @@
this.show = true
this.data.product_id = this.checkboxList1[0].product_id
this.data.unique = this.checkboxList1[0].unique
this.data.number = this.checkboxList1[0].stock
this.on_line = 1
} else {
this.show = false
@ -971,10 +972,13 @@
.shuru {
display: flex;
justify-content: flex-start;
align-items: center;
padding: 5px;
margin-left: 20px;
width: 80%;
margin: 0 auto;
&>view{
flex-shrink: 0;
}
input {
background: #F5F5F5;
@ -982,6 +986,7 @@
border: 1px solid #999999;
padding-left: 3px;
margin-left: 3px;
flex: 1;
}
}

View File

@ -19,26 +19,26 @@
搜索我的订单
</navigator>
<view class='nav acea-row row-around'>
<view class='item' :class='orderStatus==-1 ? "on": ""' @click="statusClick(-1)">
<view class='item all' :class='orderStatus=="all" ? "on": ""' @click="statusClick('all')">
<view>全部</view>
<view class='num'>{{orderData.orderCount+len || 0}}</view>
<!-- <view class='num'>{{orderData.orderCount+len || 0}}</view> -->
</view>
<!-- <view class='item' :class='orderStatus==1? "on": ""' @click="statusClick(1)">
<view>待付款</view>
<view class='num'>{{orderData.noPay || 0}}</view>
</view> -->
<view class='item' :class='orderStatus==2 ? "on": ""' @click="statusClick(2)">
<view class='item' :class='orderStatus==0 ? "on": ""' @click="statusClick(0)">
<view>待发货</view>
<view class='num'>{{orderData.noPostage || 0}}</view>
</view>
<view class='item' :class='orderStatus==3? "on": ""' @click="statusClick(3)">
<view class='item' :class='orderStatus==1? "on": ""' @click="statusClick(1)">
<view>待收货</view>
<view class='num '>{{orderData.noDeliver || 0}}</view>
</view>
<view class='item' :class='orderStatus==4 ? "on": ""' @click="statusClick(4)">
<!-- <view class='item' :class='orderStatus==4 ? "on": ""' @click="statusClick(4)">
<view>待评价</view>
<view class='num'>{{orderData.noComment || 0}}</view>
</view>
</view> -->
<!-- <view class='item' :class='orderStatus==5 ? "on": ""' @click="statusClick(5)">
<view>售后/退款</view>
<view class='num'>{{len || 0}}</view>
@ -65,7 +65,7 @@
<view class='list'>
<!-- 代付款 -->
<view v-if="orderList.length > 0">
<block v-if="orderStatus == 0">
<block v-if="orderStatus == -1">
<view class='item' v-for="(item,index) in orderList" :key="index">
<view @click='goOrderDetails(item.group_order_id)'>
<view class='title acea-row row-between-wrapper'>
@ -263,6 +263,9 @@
<view class='bottom acea-row row-right row-middle'>
<!-- <view v-if="!item.receipt && item.status != -1" class='bnt cancelBnt'
@click.stop='applyInvoice(item.order_id)'>申请开票</view> -->
<block v-if="item.order_status==2">
<view class='bnt b-color' @click='goOrderDetails(item.order_id)'>去发货</view>
</block>
<block v-if="item.status == 0 || item.status == 9 || item.status == -1">
<view class='bnt b-color' @click='goOrderDetails(item.order_id)'>查看详情</view>
</block>
@ -385,7 +388,8 @@
refundList
} from '@/api/order.js';
import{
behalfAdminOrderList
behalfAdminOrderList,
behalfAdminNumber
} from "@/api/behalfAdmin.js"
import {
getUserInfo
@ -424,7 +428,7 @@
presellProList: [], //
presellOrderCount: 0,
orderData: {}, //
orderStatus: -1, //
orderStatus: 'all', //
page: 1,
limit: 20,
receivingshow: false,
@ -501,15 +505,15 @@
methods: {
arrlist() {
refundList({
product_type: 98,
type: 0,
page: 1,
limit: 1500
// refundList({
// product_type: 98,
// type: 0,
// page: 1,
// limit: 1500
}).then(res => {
this.len = res.data.list.length
})
// }).then(res => {
// this.len = res.data.list.length
// })
},
// 退
returns() {
@ -585,10 +589,8 @@
*/
getOrderData: function() {
let that = this;
orderData({
product_type: 98
}).then(res => {
// console.log(res.data)
behalfAdminNumber().then(res => {
console.log(res.data)
that.$set(that, 'orderData', res.data);
})
},
@ -744,20 +746,13 @@
* 切换类型
*/
statusClick: function(status) {
if (status == 5) {
uni.navigateTo({
url: '/pages/users/refund/list?type=98'
})
} else {
if (status == this.orderStatus) return;
if (status == this.orderStatus) return;
this.orderStatus = status;
this.loadend = false;
this.loading = false;
this.page = 1;
this.$set(this, 'orderList', []);
this.getOrderList();
}
},
/**
* 获取订单列表
@ -768,56 +763,29 @@
if (that.loading) return;
that.loading = true;
that.loadTitle = "加载更多";
// console.log('');
// console.log(that.isReady);
if (that.isReady) {
that.isReady = false
if (that.orderStatus == -1) {
behalfAdminOrderList({
page: that.page,
limit: that.limit,
}).then(res => {
that.isReady = true;
let list = res.data.list || [];
let loadend = list.length < that.limit;
// console.log(that.orderList)
that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that
.orderList);
that.$set(that, 'orderList', that.orderList);
// console.log(that.orderList)
that.getProductCount();
that.loadend = loadend;
that.loading = false;
that.loadTitle = loadend ? "我也是有底线的" : '加载更多';
that.page = that.page + 1
})
} else {
let arr;
if (that.orderStatus > -1) {
arr = that.orderStatus
} else {
arr = ''
}
getOrderList({
status: arr,
page: that.page,
limit: that.limit,
product_type: 98
}).then(res => {
let list = res.data.list || [];
let loadend = list.length < that.limit;
that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that
.orderList);
that.$set(that, 'orderList', that.orderList);
that.getProductCount();
that.loadend = loadend;
that.loading = false;
that.loadTitle = loadend ? "我也是有底线的" : '加载更多';
that.page = that.page + 1;
that.isReady = true;
}).catch(err => {
that.loading = false;
that.loadTitle = "加载更多";
})
}
behalfAdminOrderList({
page: that.page,
limit: that.limit,
status: that.orderStatus
}).then(res => {
let list = res.data.list || [];
let loadend = list.length < that.limit;
// console.log(that.orderList)
that.orderList = that.page == 1 ? list : that.$util.SplitArray(list, that
.orderList);
that.$set(that, 'orderList', that.orderList);
// console.log(that.orderList)
that.getProductCount();
that.loadend = loadend;
that.loading = false;
that.loadTitle = loadend ? "我也是有底线的" : '加载更多';
that.page = that.page + 1;
that.isReady = true;
})
}
},
/**
@ -1327,4 +1295,10 @@
font-size: 23rpx;
}
}
.all{
display: flex;
align-items: center;
}
</style>

View File

@ -0,0 +1,197 @@
<template>
<view class="page">
<u-sticky style="padding: 28rpx 0;background-color: #f5f5f5;" offset-top="0" customNavHeight="0">
<view class="search_box">
<u-search borderColor="#F84221" bgColor="white" :showAction="false" placeholder="搜索订单"
class="search_cls"></u-search>
<button class="search">搜索</button>
</view>
</u-sticky>
<view>
<view class="order" v-for="i in 4">
<view class="order_id flex_sb">
<view>订单号: {{'ssdfdsfsfds'}}</view>
<view class="order_type">待补货</view>
</view>
<u-line></u-line>
<view class="short_name">
<text class="iconfont icon-shangjiadingdan" style="margin-right: 10rpx;"></text>店铺名称
</view>
<view class="order_card flex">
<image class="img" src="http://lihai001.oss-cn-chengdu.aliyuncs.com/def/2023-11-04/202311041457096683.jpg">
</image>
<view class="card_text">
<view class="name">商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称</view>
<view class="price_num">
<view>10</view>
<view>x10</view>
</view>
</view>
</view>
<view class="all_price">
共计{{'1'}} 实付金额: <text>100.00</text>
</view>
<u-line></u-line>
<view class="flex_sb t_line">
<view>下单时间:</view>
<view>sss</view>
</view>
<view class="flex_sb t_line">
<view>支付状态:</view>
<view>sss</view>
</view>
<view class="flex_sb t_line">
<view>支付方式:</view>
<view>sss</view>
</view>
<button class="confrim">确认收货</button>
</view>
</view>
</view>
</template>
<script>
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEBCRMEB
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
export default {
data() {
return {
};
},
}
</script>
<style scoped lang="scss">
.page {
// padding-top: 28rpx;
.flex_sb {
display: flex;
justify-content: space-between;
}
}
.search_box{
width: 694rpx;
margin: 0 auto;
position: relative;
.search_cls{
width: 100%;
}
.search{
position: absolute;
top: 50%;
right: 1%;
width: 115.65rpx;
height: 56.82rpx;
line-height: 56.82rpx;
text-align: center;
border-radius: 56.82rpx;
background-color: #F84221;
color: #fff;
transform: translate(0, -50%);
}
}
.order {
margin: 0 auto;
margin-bottom: 28rpx;
padding: 28rpx;
width: 694rpx;
background-color: #fff;
border-radius: 21rpx 21rpx 21rpx 21rpx;
.order_id {
padding-bottom: 20rpx;
font-size: 26.29rpx;
font-weight: 500;
.order_type {
font-size: 30rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: #F84221;
}
}
.short_name {
padding-top: 20rpx;
padding-bottom: 28rpx;
font-size: 29.79rpx;
}
.order_card {
height: 150rpx;
.img {
width: 150rpx;
height: 150rpx;
border-radius: 14rpx;
margin-right: 20rpx;
}
.card_text {
display: flex;
flex-direction: column;
justify-content: space-around;
height: 100%;
flex: 1;
.name {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
max-height: 3em;
/* 如果每行高度为1.2em两行文字的高度就是2.4em */
overflow: hidden;
font-size: 26.29rpx;
}
.price_num {
display: flex;
justify-content: space-between;
font-size: 29.79rpx;
}
}
}
.all_price {
text-align: right;
padding: 20rpx 0;
font-size: 26.29rpx;
text {
color: #F84221;
font-size: 42rpx;
}
}
.t_line {
padding-top: 20rpx;
font-size: 26rpx;
}
.confrim {
margin: 0 auto;
margin-top: 30rpx;
width: 589rpx;
height: 72rpx;
line-height: 72rpx;
border-radius: 42rpx 42rpx 42rpx 42rpx;
opacity: 1;
border: 2rpx solid #F84221;
font-size: 33rpx;
font-family: PingFang SC-Medium, PingFang SC;
font-weight: 500;
color: #F84221;
}
}
</style>

View File

@ -51,10 +51,10 @@
</view>
<view class='tip mt25'>
当前可提现金额: <text
class="price">{{extract_money}},</text>冻结佣金{{userInfo.lock_brokerage}}
class="price">{{extract_money}}</text>, 冻结金额: {{lock_money}}
</view>
<view class='tip'>
说明: 每笔佣金的冻结期为{{userInfo.broken_day}}到期后可提现
说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额
</view>
<view class="btn-submit">
<button formType="submit" class='bnt b-color'>提现</button>
@ -92,10 +92,10 @@
<view class='tip mt25'>
当前可提现金额: <text
class="price">{{extract_money}},</text>冻结佣金{{userInfo.lock_brokerage}}
class="price">{{extract_money}},</text>冻结金额: {{lock_money}}
</view>
<view class='tip'>
说明: 每笔佣金的冻结期为{{userInfo.broken_day}}到期后可提现
说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额
</view>
<button formType="submit" class='bnt b-color'>提现</button>
</view>
@ -141,11 +141,11 @@
</view>
<view class='tip mb25'>
当前可提现金额: <text
class="price">{{extract_money}},</text>冻结佣金{{userInfo.lock_brokerage}}
</view>
<view class='tip' v-if="userInfo.broken_day>0">
说明: 每笔佣金的冻结期为{{userInfo.broken_day}}到期后可提现
</view>
class="price">{{extract_money}}</text>, 冻结金额: {{lock_money}}
</view>
<view class='tip'>
说明: 用户确认收货{{lock_time}}天后, 才可提现该订单金额
</view>
<view class="btn-submit">
<button formType="submit" class='bnt b-color'>提现</button>
</view>
@ -194,6 +194,8 @@
data() {
return {
extract_money:"",
lock_money: "",
lock_time: "",
mode: {
bank_address: "",
bank_code: "",
@ -279,6 +281,8 @@
this.mode.bank_name = res.data.financial_bank_bank
this.mode.bank_address = res.data.financial_bank_branch
this.extract_money=res.data.extract_money
this.lock_money = res.data.lock_money
this.lock_time = res.data.lock_time
console.log(this.extract_money)
} catch (err) {
//TODO handle the exception

View File

@ -1,24 +1,23 @@
<template>
<view class="list">
<view class="list">
<view class="head">
<view class="head_conent">
<view class="tatil">
<view class="sum">
<u-count-to :startVal="0" :endVal="count"></u-count-to>
<h3>提现次数</h3>
</view>
<view class="sum">
<u-count-to :startVal="0" :endVal="sumTofixed" :decimals="2"></u-count-to>
<h3>提现总额</h3>
</view>
<view class="sum">
<view class="text">已提现金额</view>
<u-count-to class="num" style="color: #F84221;" :startVal="0" :endVal="sumTofixed" :decimals="2"></u-count-to>
</view>
<view class="line"></view>
<view class="sum">
<view class="text">已提现次数</view>
<u-count-to class="num" :startVal="0" :endVal="count"></u-count-to>
</view>
</view>
<u-line></u-line>
<view class="tixian" @click="tixian">
立即提现
</view>
</view>
<view class="public-wrapper">
<!-- <view class="public-wrapper">
<view class="title">
提现详情
</view>
@ -40,7 +39,30 @@
</scroll-view>
</view>
</view>
</view> -->
<view class="recoder">
<block>
<!-- <picker mode="date" fields="month" :end="endDate" @change="changeDate">
<view class="time">
<view>2023-11</view>
<image src="@/static/images/arrow-right.png" class="icon"></image>
</view>
</picker> -->
<view class="card" v-for="(item,index) in UserApplylist" :key="index">
<image class="left" src="@/static/images/qianbao.png" style="width: 60rpx;height: 60rpx;"></image>
<view class="right">
<view class="item">
<view class="item_title">佣金提现到银行卡</view>
<view class="item_money">+{{item.extract_money}}</view>
</view>
<view class="item">
<view class="item_brank">{{`${item.financial_account.bank} (${item.financial_account.bank_code}) `}}</view>
<view class="item_time">{{item.create_time}}</view>
</view>
</view>
</view>
</block>
</view>
</view>
</template>
@ -63,6 +85,7 @@
sum: 0,
count:0,
scrollTop: 0,
endDate: '',
merId: '',
UserApplylist:[]
}
@ -77,13 +100,19 @@
},
onLoad(option) {
this.merId = option.mer_id
console.log(this.merId);
let date = new Date();
this.endDate = `${date.getFullYear()}-${date.getMonth()+1}-01`
console.log(this.endDate);
// console.log(this.merId);
this.ApplyList()
// this.UserApplylist.forEach((item)=>{
// console.log(item.extract_money);
// })
},
methods: {
changeDate(e){
console.log(e.detail.value);
},
/**数字强制转为两位小数*/
returnFloat(value){
var value=Math.round(parseFloat(value)*100)/100;
@ -110,8 +139,10 @@
this.UserApplylist=res.data.list
this.count=this.UserApplylist.length
this.UserApplylist.forEach(item=>{
item.create_time=item.create_time.substr(0,10)
console.log(parseInt(item.extract_money));
item.financial_account.bank_code=item.financial_account.bank_code.substr(-4)
console.log(item.financial_account.bank_code);
// item.create_time=item.create_time.substr(0,10)
// console.log(parseInt(item.extract_money));
})
for(let i =0; i<this.UserApplylist.length; i++){
this.sum+=parseInt(this.UserApplylist[i].extract_money)
@ -128,54 +159,79 @@
<style lang="scss">
.list {
.head {
width: 100%;
height: 150px;
display: flex;
background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%);
position: relative;
// width: 100%;
// height: 150px;
// display: flex;
// background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%);
// position: relative;
// padding-top: 28rpx;
width: 694rpx;
margin: 28rpx auto;
padding: 28rpx;
background-color: #fff;
border-radius: 24rpx;
.head_conent {
width: 90%;
height: 150px;
background-color: #fff;
margin: 50px auto;
border-radius: 15px;
box-shadow: 0px 0px 5px rgba(#FA6514, 0.5);
// width: 694rpx;
// margin: 28rpx auto;
// height: 150px;
// margin: 50px auto;
// border-radius: 15px;
// box-shadow: 0px 0px 5px rgba(#FA6514, 0.5);
.tatil {
display: flex;
justify-content: space-around;
align-items: center;
width: 100%;
display: flex;
justify-content: space-around;
align-items: center;
.sum {
text-align: center;
margin-top: 30px;
.line{
width: 1rpx;
height: 70rpx;
background-color: #dfdfdf;
}
h3 {
margin-top: 15px;
font-size: 18px;
font-weight: 700;
color: #E93323;
}
}
.sum {
flex: 1;
text-align: center;
color: #737373;
font-size: 30rpx;
.num{
font-size: 42.06rpx;
margin-bottom: 15rpx;
}
.text{
margin-bottom: 15rpx;
}
}
}
.tixian {
position: absolute;
background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%);
box-shadow: 0px 0px 5px rgba(#FA6514, 0.5);
width: 100px;
height: 40px;
line-height: 40px;
border-radius: 30px;
text-align: center;
font-size: 18px;
color: #fff;
font-weight: 700;
left: 37%;
top: 150px;
width: 326rpx;
height: 53rpx;
line-height: 53rpx;
text-align: center;
background: #FFFFFF;
border-radius: 25rpx 25rpx 25rpx 25rpx;
opacity: 1;
border: 2rpx solid #F84221;
margin: 0 auto;
margin-top: 20rpx;
font-size: 26rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: #F84221;
// position: absolute;
// background-image: linear-gradient(90deg, #FA6514 0%, #E93323 100%);
// box-shadow: 0px 0px 5px rgba(#FA6514, 0.5);
// width: 100px;
// height: 40px;
// line-height: 40px;
// border-radius: 30px;
// text-align: center;
// font-size: 18px;
// color: #fff;
// font-weight: 700;
// left: 37%;
// top: 150px;
}
}
@ -245,5 +301,75 @@
}
}
.recoder{
padding: 0 28rpx 28rpx 28rpx;
.time{
height: 42rpx;
font-size: 30rpx;
font-family: PingFang SC-Medium, PingFang SC;
font-weight: 500;
color: #333333;
line-height: 45rpx;
margin-bottom: 20rpx;
display: flex;
align-items: center;
.icon{
width: 30rpx;
height: 30rpx;
transform: rotate(90deg);
margin-left: 10rpx;
}
}
.card{
width: 694rpx;
background: #FFFFFF;
border-radius: 21rpx 21rpx 21rpx 21rpx;
opacity: 1;
padding: 28rpx;
margin-bottom: 20rpx;
display: flex;
align-items: center;
.left{
flex-shrink: 0;
margin-right: 20rpx;
}
.right{
flex: 1;
.item{
width: 100%;
display: flex;
justify-content: space-between;
&_title{
font-size: 30rpx;
font-family: PingFang SC-Medium, PingFang SC;
font-weight: 500;
color: #333333;
line-height: 45rpx;
}
&_money{
font-size: 33rpx;
font-family: PingFang SC-Medium, PingFang SC;
font-weight: 500;
color: #F84221;
line-height: 50rpx;
}
&_brank{
font-size: 26rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: #737373;
line-height: 39rpx;
}
&_time{
font-size: 23rpx;
font-family: PingFang SC-Regular, PingFang SC;
font-weight: 400;
color: #B3B3B3;
line-height: 34rpx;
}
}
}
}
}
}
</style>

View File

@ -208,7 +208,7 @@
}
if(this.receipt_type == 2){
if (!formData.bank_name) return this.$util.Tips({
title: '请输入开户行'
title: '请输入银行卡号'
});
if (!formData.bank_code) return this.$util.Tips({

View File

@ -150,6 +150,25 @@
<!-- #ifndef H5 -->
<passwordPopup></passwordPopup>
<!-- #endif -->
<!-- 购物车 -->
<view class="card" :style="`bottom:10px`"
@click="navgo('/pages/order_addcart/order_addcart?product_type=98')">
<view class="left">
<view class="cart" :class="{ act_cart: false }" style="position: relative; z-index: 9999999">
<u--image :showLoading="true" src="/static/images/LHYC/GWC.png" width="63.09rpx"
height="63.09rpx"></u--image>
<view class="badge">
{{goodsNum}}
</view>
</view>
<view class="tot_price">
<view class=""> {{totalMoney}} </view>
<view class=""> 支持配送 售后无忧 </view>
</view>
</view>
<view class="right"> 去结算 </view>
</view>
</view>
</template>
@ -200,6 +219,11 @@
import {
getconfig,
} from '@/api/public.js';
import {
getCartCounts,
getCartList,
} from '@/api/requesta.js';
const app = getApp();
export default {
components: {
@ -231,6 +255,8 @@
domain: HTTP_REQUEST_URL,
productList: [],
is_switch: true,
goodsNum: 0,
totalMoney: 0,
where: {
cate_id: '',
order: '',
@ -334,8 +360,11 @@
this.get_host_product();
this.getClassfication();
this.getStoreType();
this.tabIndex = 2
// this.tabIndex = 2
},
onShow() {
this.cartFn()
},
onReady() {},
mounted() {
uni.getStorage({
@ -791,6 +820,55 @@
})
}
},
skuaddcart() {
this.showcartpop = false
// this.skuform = {}
let res = postCartAdd({
cart_num: this.skuNumber,
is_new: 0,
product_attr_unique: this.skuform.sku[this.skusize].unique,
product_id: this.skuform.product_id,
product_type: this.skuform.product_type,
spread_id: "",
}).then((res, err) => {
this.cartFn()
uni.showToast({
title: "加入成功",
duration: 1000,
})
}).catch(err => {
// this.act_cart = false
uni.showToast({
title: err,
icon: "none",
duration: 1000,
})
})
},
cartFn() {
getCartList().then(res => {
// console.log(res)
this.totalMoney = 0
this.cartList = res.data.list
this.cartList.forEach(e => {
e.list.forEach(item => {
this.totalMoney += item.cart_num * item.productAttr.price
})
})
this.totalMoney = this.totalMoney.toFixed(2)
})
getCartCounts().then(res => {
this.goodsNum = res.data[0].count
})
},
navgo(url){
uni.navigateTo({
url: url
})
}
},
onPullDownRefresh() {
@ -1661,4 +1739,59 @@
}
}
}
.card {
width: 720rpx;
z-index: 99;
// margin:auto;
left: 50%;
transform: translateX(-50%);
position: fixed;
// bottom: 0;
background-color: #333333;
height: 101.64rpx;
border-radius: 50.82rpx;
overflow: hidden;
color: white;
display: flex;
justify-content: space-between;
box-sizing: border-box;
.left {
display: flex;
align-items: center;
padding: 10rpx 35rpx;
.tot_price {
display: flex;
margin-left: 42rpx;
flex-direction: column;
justify-content: space-between;
}
.badge {
position: absolute;
top: 0;
right: 0;
background-color: #f84221;
transform: translate(50%, -50%);
// padding: 10rpx 10rpx;
border-radius: 35rpx;
text-align: center;
width: 35rpx;
line-height: 35rpx;
height: 35rpx;
}
}
.right {
font-size: 33.29rpx;
line-height: 50px;
background: linear-gradient(to right, #f84221, #ff6d20);
width: 140.19rpx;
text-align: center;
}
}
.act_cart {
transition: 0.5s;
transform: scale(1.1);
}
</style>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
static/images/qianbao.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB