ソースを参照

【完善导航收款模块】

master
GL 4年前
コミット
1b55ce53f8
5個のファイルの変更302行の追加37行の削除
  1. +12
    -0
      src/services/apiUrl.js
  2. +9
    -2
      src/stores/index.js
  3. +25
    -1
      src/views/home/index.vue
  4. +123
    -13
      src/views/navigation/consume/current.vue
  5. +133
    -21
      src/views/navigation/consume/todayConsume.vue

+ 12
- 0
src/services/apiUrl.js ファイルの表示

@@ -32,4 +32,16 @@ export const apiUrl = {
cancel: "/api/couponOrder/verify",
// 已被核销的券包
couponOrderListVerified: '/api/couponOrder/listVerified',
/**
* B端用户详情
*/
userDetail: '/api/user/detail',
/**
*C端扫B端储值卡交易流水(消费记录 + 补贴)列表接口
*/
cardPayList:"/api/cardPay/list",
/**
*C端扫B端储值卡交易流水SUM
*/
payMum:"/api/cardPay/sum",
}

+ 9
- 2
src/stores/index.js ファイルの表示

@@ -12,13 +12,20 @@ Vue.use(Vuex)
export default new Vuex.Store({
state: {
token: '',

merchant_id:'',
merchant_id_scan:'',

},
mutations: {
setToken (state, token) {
state.token = token
}
},
setMerchantId(state,id){
state.merchant_id = id
},
setMerchantIdScan(state,id){
state.merchant_id_scan = id
},
},
actions: {
doLogin ({commit}, res) {


+ 25
- 1
src/views/home/index.vue ファイルの表示

@@ -65,6 +65,9 @@
</template>

<script type="text/babel">
import Vue from "vue";
import {mapMutations} from 'vuex'
import { Toast } from "vant";
// 组件
export default {
name: 'page-index',
@@ -111,12 +114,13 @@ export default {
};
},
mounted() {
this.setUser();
this.getTabletListOrder();
this.getTabletListVerify();
this.getMicroPayAmountOnDate();

},
methods: {
...mapMutations(['setMerchantId','setMerchantIdScan']),
toWriteoff(path){
this.$router.push(path)
},
@@ -382,8 +386,28 @@ export default {
}]
};
chart.setOption(option)
},
/**
* 设置用户信息
*/
setUser(){
this.$http.userDetail({
method:'get'
}).then(res=>{
console.log(res,"????");
const {code ,data,message}= res
if(code==200){
this.setMerchantId(data.merchant_id)
this.setMerchantIdScan(data.merchant_id_scan)
}else{
Toast(message);
}
}).catch(res=>{
Toast(res);
})
}
}

}
</script>


+ 123
- 13
src/views/navigation/consume/current.vue ファイルの表示

@@ -16,13 +16,13 @@
<div class="inquire">查询</div>
<div class="acounts">
<div class="title">收款总计(元)</div>
<div class="num">0.2</div>
<div class="title1">1笔</div>
<div class="num">{{(sum_real_payment1+sum_real_payment2+sum_real_payment3)/100}}</div>
<div class="title1">{{`${list.length} 笔`}}</div>
<div class="billBox">
<div class="billBox_left">
<div>已到账(元)</div>
<div style="color: #333; font-weight: bold; padding-bottom: 0.5rem">
0.2
{{(sum_real_payment2+sum_real_payment3)/100}}
</div>
</div>
<div class="billBox_right">
@@ -30,18 +30,19 @@
<div
style="color: #ff6a6a; font-weight: bold; padding-bottom: 0.5rem"
>
0
{{sum_real_payment1/100}}
</div>
</div>
</div>
</div>
<div class="content">
<div class="content" v-for="(item,index) in list" :key="index">
<div class="content_left">
<div class="content_left_text">2020-09-28 09:47:53</div>
<div class="customer">{{item.onickName}}</div>
<div>{{setTiem(item.createDate,"YYYY-MM-DD HH:mm:ss")}}</div>
</div>
<div class="content_rigth">
<div class="price">¥100</div>
<div style="color: red">实收 ¥0.2</div>
<div class="price">{{`${item.deductionAmount/100}`}}</div>
<div style="color: red">{{`实收 ¥${item.realPayment/100}`}}</div>
</div>
</div>
<div class="noData">暂无数据</div>
@@ -64,10 +65,11 @@
</template>
<script>
import { formatDate } from "@/utils/cloud-utils";
import moment from "moment";
import Vue from "vue";
import { Calendar } from "vant";
Vue.use(Calendar);
import { Calendar,Toast } from "vant";
import{ mapState} from "vuex";
Vue.use(Calendar).use(Toast);
export default {
data() {
return {
@@ -79,9 +81,95 @@ export default {
startMaxDate:new Date(2025, 0, 1),
endMinDate:new Date(2015, 0, 1),
endMaxDate:new Date(2025, 0, 1),
sum_real_payment1: 0,
sum_real_payment2: 0,
sum_real_payment3:0,
pageNum:1,
pageSize:10,
list:[],
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
};
},
computed: {
...mapState(['merchant_id'])
},
methods: {
//查询消费卡扫码记录列表
getCardPay() {
this.$http.cardPayList({
methods: "get",
params: {
pageNum:this.pageNum,
pageSize:this.pageSize,
startdate: this.startdate,
enddate: this.enddate,
},
}).then(res=>{
const {code,message,data} = res
if(code ==200){
this.list = data.list
}else{
Toast(message);
}
}).catch(res=>{
Toast(res);
})
},
payMum1(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:0
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment1= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
payMum2(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:1
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment2= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
payMum3(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:2
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment3= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
onConfirm1(date){
const tmepTime = formatDate(new Date(date), "yyyy-MM-dd")
this.startTiem = tmepTime
@@ -94,8 +182,18 @@ export default {
this.endTiem = tmepTime
this.endTiemShow = false
console.log(this.endTiem ,"????");
},
//时间处理
setTiem(temp,format){//第一个参数是时间戳 第二个参数是格式 参考momentJS
return moment(Number(temp)).format(format)
}
},
mounted(){
this.getCardPay();
this.payMum1();
this.payMum2();
this.payMum3();
}
};
</script>
<style scoped>
@@ -184,13 +282,25 @@ export default {
color: #999;
}
.content {
overflow: hidden;
background-color: #fff;
margin-top: 0.5rem;
padding: 0 0.6rem;
overflow: hidden;
font-size: 0.42rem;
font-family: PingFang-SC-Medium;
font-weight: 500;
border-bottom: 0.01rem solid #f6f6f6;
color: rgba(153, 153, 153, 1);
padding-top: 0.5rem;
}
.content_left {
width: 50%;
float: left;
line-height: 1rem;
text-align: left;
}
.customer{
color: #000;
font-size: 0.48rem;
}
.content_rigth {
width: 50%;


+ 133
- 21
src/views/navigation/consume/todayConsume.vue ファイルの表示

@@ -2,41 +2,148 @@
<div class="Box">
<div class="topbox">
<div class="title">今日收款总额(元)</div>
<div class="num">0.2</div>
<div class="piece">1 笔</div>
<div class="num">{{(sum_real_payment1+sum_real_payment2+sum_real_payment3)/100}}</div>
<div class="piece">{{`${list.length} 笔`}}</div>
<div class="intOne">
<div class="left">
<div class="text1">已到账(元)</div>
<div class="text" style="color: #fff; font-weight: bold">5</div>
<div class="text" style="color: #fff; font-weight: bold">{{(sum_real_payment2+sum_real_payment3)/100}}</div>
</div>
<div class="right">
<div class="text1">未到账(元)</div>
<div class="text" style="color: #fff; font-weight: bold">6</div>
<div class="text" style="color: #fff; font-weight: bold">{{sum_real_payment1/100}}</div>
</div>
</div>
</div>
<div class="clearfix">
<div class="clearfix_left">2020-9-28</div>
<div class="clearfix_left">{{setTiem(new Date().getTime(),"YYYY-MM-DD")}}</div>
<div class="clearfix_right" @click="goCurrent">按日期查询</div>
</div>
<div class="contents">
<div class="contents_left">2020-09-28 09:47:53</div>
<div class="contents" v-for="(item,index) in list" :key="index">
<div class="contents_left">
<div class="customer">{{item.onickName}}</div>
<div>{{setTiem(item.createDate,"YYYY-MM-DD HH:mm:ss")}}</div>
</div>
<div class="contents_right">
<div style="color: #000;line-height: 1rem;">¥120</div>
<div>实收 ¥0.2</div>
<div style="color: #000; line-height: 1rem;text-align: right;">{{`¥${item.deductionAmount/100}`}}</div>
<div>{{`实收 ¥${item.realPayment/100}`}}</div>
</div>
</div>
<div class="noData">暂无数据</div>
</div>
</template>
<script>
import Vue from "vue";
import moment from "moment";
import { Toast } from "vant";
import{ mapState} from "vuex";
export default {
methods: {
goCurrent(){
this.$router.push('/current')
data() {
return {
pageNum:1,
pageSize:10,
list:[],
sum_real_payment1: 0,
sum_real_payment2: 0,
sum_real_payment3:0,
}
},
computed: {
...mapState(['merchant_id'])
},
methods: {
goCurrent() {
this.$router.push("/current");
},
//查询消费卡扫码记录列表
getCardPay() {
this.$http.cardPayList({
methods: "get",
params: {
pageNum:this.pageNum,
pageSize:this.pageSize,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
},
}).then(res=>{
const {code,message,data} = res
if(code ==200){
this.list = data.list
}else{
Toast(message);
}
}).catch(res=>{
Toast(res);
})
},
}
payMum1(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:0
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment1= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
payMum2(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:1
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment2= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
payMum3(){
this.$http.payMum({
methods: "get",
params:{
merchantId: this.merchant_id,
startdate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 00:00:00',
enddate: moment(new Date().getTime()).format("YYYY-MM-DD")+' 23:59:59',
payStatus:2
}
}).then(res=>{
const{code , data,message}=res
if(code==200){
this.sum_real_payment3= Number(data.length!=0?res.data[0].sum_real_payment:0)
}else{
Toast(message);
}
})
},
//时间处理
setTiem(temp,format){//第一个参数是时间戳 第二个参数是格式 参考momentJS
return moment(Number(temp)).format(format)
}
},
mounted() {
this.getCardPay();
this.payMum1();
this.payMum2();
this.payMum3();
},
};
</script>

<style scoped>
@@ -107,16 +214,21 @@ export default {
padding-top: 0.5rem;
}
.contents_left {
float: left;
line-height: 1rem;
float: left;
line-height: 1rem;
text-align: left;
}
.customer{
color: #000;
font-size: 0.48rem;
}
.contents_right {
float: right;
line-height: 0.8rem;
padding-bottom: 0.5rem;
float: right;
line-height: 0.8rem;
padding-bottom: 0.5rem;
}
.noData{
line-height: 2rem;
text-align: center;
.noData {
line-height: 2rem;
text-align: center;
}
</style>

読み込み中…
キャンセル
保存