Commit 3372192e authored by 黄媛媛's avatar 黄媛媛

供应商中心

parent 3f8afde5
......@@ -31,7 +31,6 @@
{
"path": "pages/webbox/webbox"
}
],
"subPackages": [{
"root": "pages/goods",
......@@ -101,6 +100,28 @@
}
]
},
{
"root": "pages/mySupplier",
"pages": [
{
"path": "index/index",
"style": {
"navigationStyle": "custom"
}
},{
"path":"myBill"
},{
"path":"billDetails"
},{
"path":"mySupplierList"
},{
"path":"myProduct"
},{
"path":"supplierOrder"
}
]
},
{
"root": "pages/share",
"pages": [{
......
<template>
<view class="billDetailsStyle" :style="{'height':contentHeight}">
<view style="width: 100%;height: 100%;">
<u-empty v-if="g.length==0" text="暂无数据" mode="data"></u-empty>
<template v-if="g.length > 0">
<view
style="
height: calc(100vh);
width: calc(100vw);
overflow: hidden;
padding: 10px 0;
">
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
:enable-flex="true"
@scrolltolower="lower"
:style="{ height: '100%' }">
<view style="display: flex;flex-direction: column;align-items: center;">
<view v-for="(item, index) in g" :key="index" class="listbox">
<view class="box_t">
<u-avatar :src="item.Photo" size="64"></u-avatar>
<text style="margin-left: 15px;">{{item.UserName}}</text>
</view>
<view class="box_c" v-for="(x, index2) in item.DetailList" :key="index2">
<image :src="x.CoverImagePath" style="width: 65px;height: 65px;border-radius: 6px;" ></image>
<view style="width: calc(100vw - 30px - 65px - 15px);display: flex;flex-direction: column;margin-left: 15px;">
<view class="box_c_name">{{x.GoodsName}}</view>
<view class="box_c_name" style="font-size: 12px;color: #555555;margin-top: 3px;">
规格:
<text v-for="(t, y) in x.SpecificationList" :key="y">{{t}}</text>
</view>
<view class="box_r_b">
<text style="font-size: 12px;color: #555555;">X{{x.Number}}</text>
<view style="padding: 5px 10px;background: #F8F6F5;font-size: 12px;color: #111111;">
<text>已得佣金:</text>
<text style="color: #FF4048;font-size: 12px;">{{x.Final_Price}}</text>
<text></text>
</view>
</view>
</view>
</view>
<view class="OrderNoStyle" >
<text style="margin-left: 15px;">订单号:{{item.OrderNo}}</text>
</view>
</view>
</view>
<u-loadmore
:status="status"
:load-text="loadText"
:font-size="24"
:margin-top="20"
:margin-bottom="20"
bg-color="#f3f4f6"
/>
</scroll-view>
</view>
</template>
</view>
</view>
</template>
<script>
export default {
data() {
return {
pageTitle: "账单详情",
contentHeight:0,
mainColor:'',
secondary:'',
g:[],
msg:{
pageIndex: 1,
pageSize:10,
BillId:0
},
SelectBillState:0,
page_count:1,
status: "loadmore",
loadText: {
loadmore: "轻轻上拉,加载更多",
loading: "努力加载中",
nomore: "没有更多了",
},
}
},
created(){
this.contentHeight = this.$utils.calcContentHeight(-40)+'px';
this.mainColor = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
onLoad(options){
if(options){
this.msg.BillId = options.ID
}
this.init()
},
mounted() {
},
methods: {
init(){
uni.showLoading({
title: '加载中'
});
this.request2(
{
url: '/api/AppletUser/GetOrderBilldetailPageList',
data: this.msg
},
(res) => {
uni.hideLoading();
this.g = this.g.concat(res.data.pageData);
this.page_count = res.data.pageCount;
if (this.page_count == 1) {
this.status = "nomore";
}
}
);
},
lower(e) {
if (this.msg.pageIndex < this.page_count) {
this.msg.pageIndex++;
this.status = "loading";
this.init();
} else {
this.status = "nomore";
}
},
}
}
</script>
<style>
.billDetailsStyle{
background: #FAF8F9;
}
.billDetailsStyle .listbox{
width: 100%;
margin-bottom: 10px;
padding: 15px;
background: #fff;
display: flex;
flex-direction: column;
align-items: center
}
.billDetailsStyle .box_t{
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
overflow: hidden;
height: 32px;
}
.billDetailsStyle .box_c{
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
overflow: hidden;
margin-top: 15px;
}
.billDetailsStyle .box_c_name{
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
line-clamp: 1;
-webkit-box-orient: vertical;
font-size: 13px;
color: #111111;
}
.billDetailsStyle .box_r_b{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
margin-top: 3px;
}
.billDetailsStyle .OrderNoStyle{
width: 100%;
height: 35px;
background: #F8F6F5;
display: flex;
flex-direction: row;
align-items: center;
font-size: 11px;
color: #888888;
margin-top: 15px;
}
</style>
This diff is collapsed.
<template>
<view class="myBillStyle" :style="{'height':contentHeight}">
<view style="width: 100%;height: 100%;">
<u-tabs :list="list" :is-scroll="false" :current="SelectBillState" @change="change" :active-color='mainColor' bg-color='#FFFFFF'></u-tabs>
<u-empty v-if="g.length==0" text="暂无数据" mode="data"></u-empty>
<template v-if="g.length > 0">
<view
style="
height: calc(100vh - 50px);
width: calc(100vw);
overflow: hidden;
padding: 10px 0;
">
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
:enable-flex="true"
@scrolltolower="lower"
:style="{ height: '100%' }">
<view style="display: flex;flex-direction: column;align-items: center;background: #FFFFFF;">
<view v-for="(item, index) in g" :key="index" class="listbox" @click="goDetails(item)">
<view class="box_b" >
<view class="box_b_t">
<text>{{item.Periods}}</text>
<text :style="{color:item.BillState==1?'#FF4048':'#111111','font-size':'16px'}">{{item.BillState==2?'+':''}}{{item.Money}}</text>
</view>
<view class="box_b_b">
<text>{{item.SupplierName}}</text>
<text v-if="item.BillState == 1">待打款</text>
<text v-if="item.BillState == 2">已打款</text>
<text v-if="item.BillState == 3">驳回</text>
</view>
</view>
</view>
</view>
<u-loadmore
:status="status"
:load-text="loadText"
:font-size="24"
:margin-top="20"
:margin-bottom="20"
bg-color="#f3f4f6"
/>
</scroll-view>
</view>
</template>
</view>
</view>
</template>
<script>
export default {
data() {
return {
pageTitle: "我的账单",
contentHeight:0,
mainColor:'',
secondary:'',
g:[],
list:[
{name: '全部'},
{name: '待打款'},
{name: '已打款'},
],
msg:{
pageIndex: 1,
pageSize:10,
SelectBillState:-1
},
SelectBillState:0,
page_count:1,
status: "loadmore",
loadText: {
loadmore: "轻轻上拉,加载更多",
loading: "努力加载中",
nomore: "没有更多了",
},
}
},
created(){
this.contentHeight = this.$utils.calcContentHeight(-40)+'px';
this.mainColor = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
uni.setNavigationBarTitle({
title: this.pageTitle,
});
this.init()
},
mounted() {
},
methods: {
init(){
uni.showLoading({
title: '加载中'
});
this.request2(
{
url: '/api/AppletUser/GetSupplierDistributorBill',
data: this.msg
},
(res) => {
uni.hideLoading();
this.g = this.g.concat(res.data.pageData);
this.page_count = res.data.pageCount;
if (this.page_count == 1) {
this.status = "nomore";
}
}
);
},
change(index){
if(index==1){
this.msg.SelectBillState = -1;
}else if(index ==2){
this.msg.SelectBillState = 1;
}else if(index ==3){
this.msg.SelectBillState = 2;
}
this.SelectBillState = index;
this.msg.pageIndex=1;
this.g=[]
this.init()
},
lower(e) {
if (this.msg.pageIndex < this.page_count) {
this.msg.pageIndex++;
this.status = "loading";
this.init();
} else {
this.status = "nomore";
}
},
goDetails(item){
uni.navigateTo({
url: '/pages/mySupplier/billDetails?ID='+item.Id
});
}
}
}
</script>
<style>
.myBillStyle{
background: #f3f4f6;
}
.myBillStyle .listbox{
width: 94%;
border-radius: 10rpx;
background: #fff;
}
.myBillStyle .listbox .box_b{
width: 100%;
padding: 10px;
/* border-top: 1px solid #f5f5f5; */
display: flex;
flex-direction: column;
align-items: center;
border-bottom: 1px solid #E2E2E2;
}
.myBillStyle .listbox .box_b_t{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
font-size: 14px;
color: #000000;
}
.myBillStyle .listbox .box_b_b{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
font-size: 10px;
color: #999999;
margin-top: 10px;
}
.myBillStyle .text_s{
font-size: 14px;
color: #999999;
margin-top: 3px;
}
</style>
<template>
<view class="myProductStyle" :style="{'height':contentHeight}">
<view style="width: 100%;height: 100%;">
<u-empty v-if="g.length==0" text="暂无数据" mode="data"></u-empty>
<template v-if="g.length > 0">
<view
style="
height: calc(100vh);
width: calc(100vw);
overflow: hidden;
padding: 10px 0;
">
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
:enable-flex="true"
@scrolltolower="lower"
:style="{ height: '100%' }">
<view style="display: flex;flex-direction: column;align-items: center;">
<view v-for="(item, index) in g" :key="index" class="listbox">
<view class="box_c" >
<image :src="item.CoverImage" style="width: 65px;height: 65px;border-radius: 6px;"></image>
<view style="width: calc(100vw - 30px - 65px - 15px);display: flex;flex-direction: column;margin-left: 15px;">
<view class="box_c_name">{{item.Name}}</view>
</view>
</view>
<view class="SupplierListstyle">
<view class="Sitem" v-for="(x, index2) in item.SupplierSpecificationList" :key="index2" v-if='item.showdetail == true || index2==0' @click=" isdetail(index,index2) ">
<view class="Sitem_gg" >
<text v-for="(j, index3) in x.attr_list" :key="index3">{{j.attr_group_name}}:{{j.attr_name}}{{x.attr_list.length==index3+1?'':','}}</text>
</view>
<view class="Sitem_k">库存{{x.stock}}</view>
<view class="Sitem_k">成本价{{x.costPrice}}</view>
<view class="Sitem_k" :style="{color:mainColor}">¥{{x.price}}</view>
<u-icon name="arrow" v-if='item.showdetail==false && index2==0' ></u-icon>
<u-icon name="arrow-down" v-if='item.showdetail==true && index2==0'></u-icon>
</view>
</view>
</view>
</view>
<u-loadmore
:status="status"
:load-text="loadText"
:font-size="24"
:margin-top="20"
:margin-bottom="20"
bg-color="#f3f4f6"
/>
</scroll-view>
</view>
</template>
</view>
</view>
</template>
<script>
export default {
data() {
return {
pageTitle: "我的产品",
contentHeight:0,
mainColor:'',
secondary:'',
g:[],
msg:{
pageIndex: 1,
pageSize:10,
SupplierIds:0
},
SelectBillState:0,
page_count:1,
status: "loadmore",
loadText: {
loadmore: "轻轻上拉,加载更多",
loading: "努力加载中",
nomore: "没有更多了",
},
}
},
created(){
this.contentHeight = this.$utils.calcContentHeight(-40)+'px';
this.mainColor = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
onLoad(options){
if(options){
this.msg.SupplierIds = options.ID
}
this.init()
},
mounted() {
},
methods: {
init(){
uni.showLoading({
title: '加载中'
});
this.request2(
{
url: '/api/AppletUser/GetAppletGoodsPageList',
data: this.msg
},
(res) => {
uni.hideLoading();
let data = res.data.pageData
data.forEach(x=>{
x.showdetail = false
})
this.g = this.g.concat(data);
console.log(this.g)
this.page_count = res.data.pageCount;
if (this.page_count == 1) {
this.status = "nomore";
}
}
);
},
lower(e) {
if (this.msg.pageIndex < this.page_count) {
this.msg.pageIndex++;
this.status = "loading";
this.init();
} else {
this.status = "nomore";
}
},
isdetail(index,index2){
if(index2==0){
this.g[index].showdetail = !this.g[index].showdetail;
this.$forceUpdate()
}
},
}
}
</script>
<style>
.myProductStyle{
background: #FAF8F9;
}
.myProductStyle .listbox{
width: 100%;
margin-bottom: 10px;
padding: 15px;
background: #fff;
display: flex;
flex-direction: column;
align-items: center
}
.myProductStyle .box_t{
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
overflow: hidden;
height: 32px;
}
.myProductStyle .box_c{
display: flex;
flex-direction: row;
width: 100%;
overflow: hidden;
margin-top: 15px;
}
.myProductStyle .box_c_name{
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 3;
line-clamp: 3;
-webkit-box-orient: vertical;
font-size: 13px;
color: #111111;
}
.myProductStyle .box_r_b{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
margin-top: 3px;
}
.myProductStyle .OrderNoStyle{
width: 100%;
height: 35px;
background: #F8F6F5;
display: flex;
flex-direction: row;
align-items: center;
font-size: 11px;
color: #888888;
margin-top: 15px;
}
.myProductStyle .SupplierListstyle{
width: 100%;
background: #F8F6F5;
display: flex;
flex-direction: column;
align-items: center;
margin-top: 10px;
}
.myProductStyle .Sitem{
width: 96%;
display: flex;
flex-direction: row;
align-items: center;
font-size: 10px;
color: #888888;
height: 35px;
margin-left: 2%;
}
.myProductStyle .Sitem_gg{
width: 35%;
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
line-clamp: 1;
-webkit-box-orient: vertical;
}
.Sitem_k{
width: 20%;
text-align: center
}
</style>
<template>
<view class="mySupplierList" :style="{'height':contentHeight}">
<view style="width: 100%;height: 100%;">
<u-empty v-if="g.length==0" text="暂无数据" mode="data"></u-empty>
<template v-if="g.length > 0">
<view
style="
height: calc(100vh);
width: calc(100vw);
overflow: hidden;
padding: 10px 0;
">
<scroll-view
:scroll-y="true"
:enable-back-to-top="true"
:enable-flex="true"
@scrolltolower="lower"
:style="{ height: '100%' }">
<view style="display: flex;flex-direction: column;align-items: center;">
<view v-for="(item, index) in g" :key="index" class="listbox" >
<view>
<view style="font-size: 14px;color: #000000;">{{item.Name}}</view>
<view style="font-size: 10px;color: #999999;margin-top: 5px;">{{item.Mobile}}</view>
</view>
<view style="display: flex;flex-direction: row;align-items: center;" @click="checkBL(item.SupplierCommissionList)">
<text style="font-size: 12px;color: #888888;">返佣比例查询</text>
<u-icon name="arrow" size="24" color="#A5A4AC"></u-icon>
</view>
</view>
</view>
<!-- <u-loadmore
:status="status"
:load-text="loadText"
:font-size="24"
:margin-top="20"
:margin-bottom="20"
bg-color="#f3f4f6"
/> -->
</scroll-view>
</view>
<view class="agreementbox" v-if='isshowagreement==true'></view>
<view class="agreementbox_t" v-if='isshowagreement==true'>
<view class="agreement_b">
<view style="width: 100%;height: 45px;font-size: 14px;color: #000000;display: flex;flex-direction: row;border-bottom: 1px solid #E2E2E2;">
<view class="popupstyle">
<text>毛利率</text>
</view>
<view class="popupstyle">
<text>返佣比例</text>
</view>
</view>
<view style="width: 100%;max-height: 360px;font-size: 12px;color: #111111;display: flex;flex-direction: row;">
<view style="width: 50%;display: flex;flex-direction: column;align-items: center;">
<view class="popupstyle_t" v-for="(item, index) in supplierList" :key="index">
<text>{{index+1}}0%</text>
</view>
</view>
<view style="width: 50%;display: flex;flex-direction: column;align-items: center;">
<view class="popupstyle_t" v-for="(item, index2) in supplierList" :key="index2">
<text>{{item.CommissionRate}}%</text>
</view>
</view>
</view>
<view class="agreement_bottom" :style="{background:mainColor}" @click="read">
<Text style='color: #fff;'>确定</Text>
</view>
</view>
</view>
</template>
</view>
</view>
</template>
<script>
export default {
data() {
return {
pageTitle: "我的供应商",
contentHeight:0,
mainColor:'',
secondary:'',
g:[],
isshowagreement:false,
msg:{
pageIndex: 1,
pageSize:10,
BillId:0
},
SelectBillState:0,
page_count:1,
status: "loadmore",
loadText: {
loadmore: "轻轻上拉,加载更多",
loading: "努力加载中",
nomore: "没有更多了",
},
supplierList:[],
}
},
created(){
this.contentHeight = this.$utils.calcContentHeight(-40)+'px';
this.mainColor = this.$uiConfig.mainColor;
this.secondary = this.$uiConfig.secondary;
},
onLoad(options){
uni.setNavigationBarTitle({
title: this.pageTitle,
});
this.init()
},
mounted() {
},
methods: {
init(){
uni.showLoading({
title: '加载中'
});
this.request2(
{
url: '/api/AppletUser/GetUserMemberSupplier',
data: {}
},
(res) => {
uni.hideLoading();
this.g = res.data;
// this.g = this.g.concat(res.data.pageData);
// this.page_count = res.data.pageCount;
// if (this.page_count == 1) {
// this.status = "nomore";
// }
}
);
},
lower(e) {
// if (this.msg.pageIndex < this.page_count) {
// this.msg.pageIndex++;
// this.status = "loading";
// this.init();
// } else {
// this.status = "nomore";
// }
},
checkBL(list){
this.isshowagreement = true;
this.supplierList = list
},
read(){
this.isshowagreement = false
},
}
}
</script>
<style>
.mySupplierList{
background: #FAF8F9;
}
.mySupplierList .listbox{
width: 100%;
padding: 15px;
background: #fff;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
border-bottom: 1px solid #E2E2E2;
}
.mySupplierList .box_t{
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
overflow: hidden;
height: 32px;
}
.mySupplierList .box_c{
display: flex;
flex-direction: row;
align-items: center;
width: 100%;
overflow: hidden;
margin-top: 15px;
}
.mySupplierList .box_c_name{
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
line-clamp: 1;
-webkit-box-orient: vertical;
font-size: 13px;
color: #111111;
}
.mySupplierList .box_r_b{
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
margin-top: 3px;
}
.mySupplierList .OrderNoStyle{
width: 100%;
height: 35px;
background: #F8F6F5;
display: flex;
flex-direction: row;
align-items: center;
font-size: 11px;
color: #888888;
margin-top: 15px;
}
.mySupplierList .agreementbox{
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: #333333;
opacity: 0.3;
z-index: 888;
}
.mySupplierList .agreementbox_t{
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 999;
display: flex;
align-items: center;
justify-content: center;
}
.mySupplierList .agreementbox_t .agreement_b{
width:80% ;
border-radius: 10px;
background: #fff;
display: flex;
flex-direction: column;
align-items: center;
overflow: hidden;
}
.mySupplierList .agreementbox_t .agreement_bottom{
width: 100%;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
}
.mySupplierList .agreement_b .popupstyle{
width: 50%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}
.mySupplierList .agreement_b .popupstyle_t{
width: 100%;
height: 30px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}
</style>
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment