分油记录

pull/3/head
zhangyouji 1 year ago
parent 1c47c1cd47
commit bf2ac62a0e
  1. 16
      api/sy.js
  2. 14
      pages.json
  3. 64
      salesRanking/page/distributeQuantity/contribution.css
  4. 152
      salesRanking/page/distributeQuantity/distributeQuantity.vue
  5. 78
      salesRanking/page/enterpriseDetails/enterpriseDetails.vue
  6. 64
      salesRanking/page/outDistributeQuantity/contribution.css
  7. 151
      salesRanking/page/outDistributeQuantity/outDistributeQuantity.vue

@ -106,5 +106,19 @@ export default {
method: 'post',
data:data
})
}
},
getDistributeCount (data) {
return request({
url: `/oil-finance/oilCompanyAccountReverse/getDistributeCount`,
method: 'post',
data:data
})
},
distributeGetByPage(data) {
return request({
url: `/oil-finance/oilCompanyDistributeReverse/getByPage`,
method: 'post',
data: data
})
}
}

@ -132,6 +132,20 @@
"enablePullDownRefresh": false
}
}, {
"path": "page/distributeQuantity/distributeQuantity",
"style": {
"navigationBarTitleText": "自营分油记录",
"enablePullDownRefresh": false
}
}, {
"path": "page/outDistributeQuantity/outDistributeQuantity",
"style": {
"navigationBarTitleText": "外请分油记录",
"enablePullDownRefresh": false
}
}, {
"path": "page/index/enterpriseIndex",
"style": {

@ -0,0 +1,64 @@
.contribution_body{
padding: 40rpx 0;
display: flex;
flex-direction: column;
flex-wrap: wrap;
height: 100vh;
color: #666666;
}
.list_item{
display: flex;
padding: 26rpx 30rpx;
align-items: center;
color: #666666;
}
.list_item_tip{
padding: 11rpx 14rpx;
background-color:#9F43CC;
color: #FFFFFF;
font-size: 16rpx;
width: fit-content;
margin: 0 auto;
}
.samalltext{
font-size: 24rpx;
color: #BBBBBB;
}
.contribution_header_car{
height: 270rpx;
background: #FFFFFF;
border-radius: 10px;
/* padding: 0 100rpx; */
padding-top: 50rpx;
position: relative;
margin: 0 44rpx;
}
.jc{
justify-content: center;
}
.ac{
align-items: center;
}
.list_item{
height: 120rpx;
background: #FFFFFF;
border-radius: 10px;
width: 660rpx;
margin: 0 auto;
/* margin: 0 44rpx; */
margin-bottom: 10rpx;
}
.contribution_header_car_tip{
position: absolute;
width: calc(100% - 200rpx);
height:90rpx ;
background-color: #ADCEFF;
color: #FFFFFF;
font-size:28rpx;
bottom: -45rpx;
border-radius: 10px;
left: calc((100% - (100% - 200rpx))/2);
}
.flex{
display: flex;
}

@ -0,0 +1,152 @@
<template>
<view class="contribution_body">
<view style="display: flex;flex-direction: column;flex-wrap: wrap;" class="contribution_header_car">
<view class="flex ac jc">
<view class="flex jc">
<uni-icons v-if="dedata.routerIndex" color="#2866ff" custom-prefix="iconfont" type="iconjiayou" size="25"></uni-icons>
<image v-else style="width: 60rpx; height: 60rpx;" src="../../../static/selegs.png"></image>
<view style="width: 365rpx; overflow: hidden;margin-left: 24rpx;" >
<view style="overflow: hidden;width: 100%;white-space: nowrap;text-overflow: ellipsis;" >
{{ dedata.routerIndex?dedata.siteName:dedata.companyName}}
</view>
<view class="samalltext">{{dedata.id}}</view>
</view>
<view>
<view v-if="!dedata.routerIndex" :style="{background:dedata.parentMark=='0'?'':'#BC853B'}" style="height: fit-content;" class="list_item_tip">
{{dedata.parentMark=='0'?'总公司':'子公司'}}
</view>
<view style="font-size: 24rpx;color: #ADCEFF;padding: 3rpx 0;">
自营油卡
</view>
</view>
</view>
</view>
<view style=" margin-top: 24rpx;justify-content: space-around;" class="flex">
<view>{{dedata.totalAmount|price}}
<text style="color: #BBBBBB;"></text>
</view>
<view>
{{dedata.quantity|price}}
<text style="color: #BBBBBB;"></text>
</view>
</view>
<view class="contribution_header_car_tip flex ac jc">{{dedata.startTime.split(' ')[0]}} - {{dedata.endTime.split(' ')[0]}}</view>
</view>
<view style="flex: 1; margin-top: 73rpx; overflow: hidden; ">
<scroll-view class="scroll-view" @scrolltolower='scrolltolower' style="height: 100%;" scroll-y="true">
<view v-for="(item,index) in list" class="list_item">
<image style="width: 80rpx;height: 80rpx;" src="../../../static/tx.png"></image>
<view style="width: 300rpx;margin-left: 10rpx;">
<view v-if="item.nickName" style="font-size: 28rpx;font-weight: 700;" @click="callPhone(item.phone)">{{item.nickName}}-{{item.phone}}</view>
<view v-if="!item.nickName" style="font-size: 28rpx;font-weight: 700;" @click="callPhone(item.phone)">{{item.phone}}-{{item.phone}}</view>
<view style="font-size: 22rpx;color: #999999;margin-top: 6rpx;">{{item.createTime}}</view>
</view>
<view style="width: 200rpx;text-align: right;">
<view style="font-size: 24rpx;">
<view v-if="item.auditMark==0" style="color: 20.87rpx">待审核</view>
<view v-if="item.auditMark==1" style="color: #0256FF">审核成功</view>
<view v-if="item.auditMark==-1" style="color: #EA0000">审核失败</view>
</view>
<view>
<view style="font-size: 30rpx;font-weight: 700;">{{item.disAmount|price}}</view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</template>
<script>
import sy from '@/api/sy'
import convertW from '../../components/convertW.js'
export default {
data() {
return {
routerIndex:true,
list:[],
dedata:null,
getData: {
pageSize: 10,
currentPage: 1,
params: {
siteId: '',
endTime: '',
startTime: ''
}
},
}
},
onLoad(e) {
let routes = getCurrentPages();
let routerIndex = routes[(routes.length - 2)].$page.fullPath.indexOf('?') != -1 ?
routes[(routes.length - 2)].$page.fullPath.split('?')[0].split('/')[routes[(routes.length - 2)]
.$page.fullPath.split('?')[0].split('/').length - 1] :
routes[(routes.length - 2)].$page.fullPath.split('/')[routes[(routes.length - 2)].$page
.fullPath.split('/').length - 1];
// this.routerIndex= routerIndex =='enterpriseIndex'?false:true;
if (e.jsData) {
this.dedata = JSON.parse(e.jsData);
this.getData.params.siteId = this.dedata.id
this.getData.params.endTime = this.dedata.endTime.split(' ')[0]?this.dedata.endTime.split(' ')[0]:this.dedata.endTime
this.getData.params.startTime = this.dedata.startTime.split(' ')[0]?this.dedata.startTime.split(' ')[0]:this.dedata.startTime
this.getlist()
}
},
filters:{
price(e){
return convertW.convertW(e)
}
},
methods: {
callPhone(phone){
uni.makePhoneCall({
//
phoneNumber: phone
});
},
imgError(e){
e.siteImages=null
},
getlist(){
sy.distributeGetByPage({
pageSize: this.getData.pageSize,
currentPage: this.getData.currentPage,
params: {
disCompanyId:this.getData.params.siteId,
createTimeEnd: this.getData.params.endTime+' 23:59:59',
createTimeStart:this.getData.params.startTime+' 00:00:00',
disTagType: "ESELF_SUPPORT",
disType: '1'
}
}).then(res=>{
if (res.code !== 20000) return
if (res.data.list.length == 0) {
uni.showToast({
title: '没有数据了哦',
icon: 'none'
})
}
if (this.getData.currentPage !== 1) {
this.list = this.list.concat(res.data.list);
return
}
this.list = res.data.list
})
},
scrolltolower() {
this.getData.currentPage+=1
this.getlist()
}
}
}
</script>
<style scoped>
@import url("./contribution.css");
::-webkit-scrollbar {
width: 0;
color: transparent;
}
</style>

@ -113,6 +113,30 @@
{{quantity}}
</view>
</view>
<view v-if="!routerIndex" @click="jump(4)" class="footer_item">
<view
style=" margin-top: 60rpx; margin-bottom:32rpx; display: flex;flex-direction: column;justify-content: center;align-items: center;">
<view class="iicombody">
<uni-icons custom-prefix="iconfont" type="iconwangdian1" size="30"></uni-icons>
</view>
<view>自营分油记录</view>
</view>
<view style="text-align: center;">
<text>{{totalAmount}}</text>
</view>
</view>
<view v-if="!routerIndex" @click="jump(5)" class="footer_item">
<view
style=" margin-top: 60rpx; margin-bottom:32rpx; display: flex;flex-direction: column;justify-content: center;align-items: center;">
<view class="iicombody">
<uni-icons custom-prefix="iconfont" type="iconwangdian1" size="30"></uni-icons>
</view>
<view>外请分油记录</view>
</view>
<view style="text-align: center;">
<text>{{outTotalAmount}}</text>
</view>
</view>
</view>
</view>
<datePopup style="z-index: 9999999999999;" @datePopupChange='datePopupChange' v-model="isShow.date"></datePopup>
@ -150,11 +174,13 @@
}],
chartSeleIndex: 0,
Line: {},
LineTwo: {}
LineTwo: {},
distributeData:{},
totalAmount:0,
outTotalAmount:0
}
},
onLoad(e) {
console.log(e)
let routes = getCurrentPages();
let routerIndex = routes[(routes.length - 2)].$page.fullPath.indexOf('?') != -1 ?
@ -163,11 +189,10 @@
routes[(routes.length - 2)].$page.fullPath.split('/')[routes[(routes.length - 2)].$page
.fullPath.split('/').length - 1];
this.routerIndex= routerIndex =='enterpriseIndex'?false:true;
console.log(routerIndex)
console.log(this.routerIndex)
if (e.jsData) {
this.dedata = JSON.parse(e.jsData);
this.getdata(JSON.parse(e.jsData));
this.getDistributeCount(JSON.parse(e.jsData))
}
},
filters:{
@ -186,16 +211,29 @@
datePopupChange(e) {
sy[(this.routerIndex ? 'queryBusinessIncome':'queryEnterpriseIncome')]({
[((this.routerIndex ? 'siteId':'companyId'))]: this.dedata.id,
endTime: e[1],
endTime: e[1].split(' ')[0]+' 23:59:59',
startTime: e[0]
}).then(res => {
this.enterpriseData = res.data
this.income = res.data.enterpriseContributionAmount
this.quantity = res.data.orderNumber
this.dedata.startTime = e[0]
this.dedata.endTime = e[1]
this.dedata.endTime = e[1].split(' ')[0]+' 23:59:59'
})
if(!this.routerIndex){
sy.getDistributeCount({
companyId: this.dedata.id,
endTime: e[1].split(' ')[0]+' 23:59:59',
startTime: e[0]
}).then(res => {
this.distributeData = res.data
this.totalAmount = res.data.totalAmount ==null ? 0 : res.data.totalAmount
this.outTotalAmount = res.data.outTotalAmount ==null ? 0 : res.data.outTotalAmount
})
console.log(e)
}
},
ishowFn() {
this.isShow.date = true
@ -239,7 +277,6 @@
}]
}
}).catch(e=>{
console.log(e,'///')
})
sy[(this.routerIndex ? 'queryBusinessIncome':'queryEnterpriseIncome')]({
[((this.routerIndex ? 'siteId':'companyId'))]: e.id,
@ -249,7 +286,17 @@
this.enterpriseData = res.data
this.income = res.data.enterpriseContributionAmount
this.quantity = res.data.orderNumber
console.log(res, '收入')
})
},
getDistributeCount(e){
sy.getDistributeCount({
companyId: e.id,
endTime: e.endTime.split(' ')[0]+' 23:59:59',
startTime: e.startTime
}).then(res => {
this.distributeData = res.data
this.totalAmount = res.data.totalAmount ==null ? 0 : res.data.totalAmount
this.outTotalAmount = res.data.outTotalAmount ==null ? 0 : res.data.outTotalAmount
})
},
jump(e) {
@ -266,7 +313,6 @@
})
break;
case 2:
console.log(this.dedata,'rechargeRecordrechargeRecordrechargeRecordrechargeRecord')
uni.navigateTo({
url: '../rechargeRecord/rechargeRecord?jsData=' + JSON.stringify(Object.assign(this
.dedata, {
@ -283,6 +329,18 @@
.dedata, this.enterpriseData))
})
break;
case 4:
uni.navigateTo({
url: '../distributeQuantity/distributeQuantity?jsData=' + JSON.stringify(Object.assign(this
.dedata, this.distributeData))
})
break;
case 5:
uni.navigateTo({
url: '../outDistributeQuantity/outDistributeQuantity?jsData=' + JSON.stringify(Object.assign(this
.dedata, this.distributeData))
})
break;
}
},

@ -0,0 +1,64 @@
.contribution_body{
padding: 40rpx 0;
display: flex;
flex-direction: column;
flex-wrap: wrap;
height: 100vh;
color: #666666;
}
.list_item{
display: flex;
padding: 26rpx 30rpx;
align-items: center;
color: #666666;
}
.list_item_tip{
padding: 11rpx 14rpx;
background-color:#9F43CC;
color: #FFFFFF;
font-size: 16rpx;
width: fit-content;
margin: 0 auto;
}
.samalltext{
font-size: 24rpx;
color: #BBBBBB;
}
.contribution_header_car{
height: 270rpx;
background: #FFFFFF;
border-radius: 10px;
/* padding: 0 100rpx; */
padding-top: 50rpx;
position: relative;
margin: 0 44rpx;
}
.jc{
justify-content: center;
}
.ac{
align-items: center;
}
.list_item{
height: 120rpx;
background: #FFFFFF;
border-radius: 10px;
width: 660rpx;
margin: 0 auto;
/* margin: 0 44rpx; */
margin-bottom: 10rpx;
}
.contribution_header_car_tip{
position: absolute;
width: calc(100% - 200rpx);
height:90rpx ;
background-color: #ADCEFF;
color: #FFFFFF;
font-size:28rpx;
bottom: -45rpx;
border-radius: 10px;
left: calc((100% - (100% - 200rpx))/2);
}
.flex{
display: flex;
}

@ -0,0 +1,151 @@
<template>
<view class="contribution_body">
<view style="display: flex;flex-direction: column;flex-wrap: wrap;" class="contribution_header_car">
<view class="flex ac jc">
<view class="flex jc">
<uni-icons v-if="dedata.routerIndex" color="#2866ff" custom-prefix="iconfont" type="iconjiayou" size="25"></uni-icons>
<image v-else style="width: 60rpx; height: 60rpx;" src="../../../static/selegs.png"></image>
<view style="width: 365rpx; overflow: hidden;margin-left: 24rpx;" >
<view style="overflow: hidden;width: 100%;white-space: nowrap;text-overflow: ellipsis;" >
{{ dedata.routerIndex?dedata.siteName:dedata.companyName}}
</view>
<view class="samalltext">{{dedata.id}}</view>
</view>
<view>
<view v-if="!dedata.routerIndex" :style="{background:dedata.parentMark=='0'?'':'#BC853B'}" style="height: fit-content;" class="list_item_tip">
{{dedata.parentMark=='0'?'总公司':'子公司'}}
</view>
<view style="font-size: 24rpx;color: #ADCEFF;padding: 3rpx 0;">
外请油卡
</view>
</view>
</view>
</view>
<view style=" margin-top: 24rpx;justify-content: space-around;" class="flex">
<view>{{dedata.outTotalAmount|price}}
<text style="color: #BBBBBB;"></text>
</view>
<view>
{{dedata.outQuantity|price}}
<text style="color: #BBBBBB;"></text>
</view>
</view>
<view class="contribution_header_car_tip flex ac jc">{{dedata.startTime.split(' ')[0]}} - {{dedata.endTime.split(' ')[0]}}</view>
</view>
<view style="flex: 1; margin-top: 73rpx; overflow: hidden; ">
<scroll-view class="scroll-view" @scrolltolower='scrolltolower' style="height: 100%;" scroll-y="true">
<view v-for="(item,index) in list" class="list_item">
<image style="width: 80rpx;height: 80rpx;" src="../../../static/tx.png"></image>
<view style="width: 300rpx;margin-left: 10rpx;">
<view v-if="item.nickName" style="font-size: 28rpx;font-weight: 700;" @click="callPhone(item.phone)">{{item.nickName}}-{{item.phone}}</view>
<view v-if="!item.nickName" style="font-size: 28rpx;font-weight: 700;" @click="callPhone(item.phone)">{{item.phone}}-{{item.phone}}</view>
<view style="font-size: 22rpx;color: #999999;margin-top: 6rpx;">{{item.createTime}}</view>
</view>
<view style="width: 200rpx;text-align: right;">
<view style="font-size: 24rpx;">
<view v-if="item.auditMark==0" style="color: 20.87rpx">待审核</view>
<view v-if="item.auditMark==1" style="color: #0256FF">审核成功</view>
<view v-if="item.auditMark==-1" style="color: #EA0000">审核失败</view>
</view>
<view>
<view style="font-size: 30rpx;font-weight: 700;">{{item.disAmount|price}}</view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</template>
<script>
import sy from '@/api/sy'
import convertW from '../../components/convertW.js'
export default {
data() {
return {
routerIndex:true,
list:[],
dedata:null,
getData: {
pageSize: 10,
currentPage: 1,
params: {
siteId: '',
endTime: '',
startTime: ''
}
},
}
},
onLoad(e) {
let routes = getCurrentPages();
let routerIndex = routes[(routes.length - 2)].$page.fullPath.indexOf('?') != -1 ?
routes[(routes.length - 2)].$page.fullPath.split('?')[0].split('/')[routes[(routes.length - 2)]
.$page.fullPath.split('?')[0].split('/').length - 1] :
routes[(routes.length - 2)].$page.fullPath.split('/')[routes[(routes.length - 2)].$page
.fullPath.split('/').length - 1];
// this.routerIndex= routerIndex =='enterpriseIndex'?false:true;
if (e.jsData) {
this.dedata = JSON.parse(e.jsData);
this.getData.params.siteId = this.dedata.id
this.getData.params.endTime = this.dedata.endTime.split(' ')[0]?this.dedata.endTime.split(' ')[0]:this.dedata.endTime
this.getData.params.startTime = this.dedata.startTime.split(' ')[0]?this.dedata.startTime.split(' ')[0]:this.dedata.startTime
this.getlist()
}
},
filters:{
price(e){
return convertW.convertW(e)
}
},
methods: {
callPhone(phone){
uni.makePhoneCall({
phoneNumber: phone
});
},
imgError(e){
e.siteImages=null
},
getlist(){
sy.distributeGetByPage({
pageSize: this.getData.pageSize,
currentPage: this.getData.currentPage,
params: {
disCompanyId:this.getData.params.siteId,
createTimeEnd: this.getData.params.endTime+' 23:59:59',
createTimeStart:this.getData.params.startTime+' 00:00:00',
disTagType: "OUTSIDE",
disType: '1'
}
}).then(res=>{
if (res.code !== 20000) return
if (res.data.list.length == 0) {
uni.showToast({
title: '没有数据了哦',
icon: 'none'
})
}
if (this.getData.currentPage !== 1) {
this.list = this.list.concat(res.data.list);
return
}
this.list = res.data.list
})
},
scrolltolower() {
this.getData.currentPage+=1
this.getlist()
}
}
}
</script>
<style scoped>
@import url("./contribution.css");
::-webkit-scrollbar {
width: 0;
color: transparent;
}
</style>
Loading…
Cancel
Save