settleDetail.vue 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. <template>
  2. <view>
  3. <view class="tops">
  4. <view class="top ddflex" v-if="timeIndex != 5">
  5. <picker class="picker" :range="timeData" @change="changeTimePicker">
  6. <view>{{timeData[timeIndex]}}</view>
  7. <image src="../static/promote/images/bico.png" class="bico"></image>
  8. </picker>
  9. <!-- <view class="tab ddflex">
  10. <view :class="'li' + (tabIndex == 0 ? ' active' : '')" @click="tabClick(0)">全部</view>
  11. <view :class="'li' + (tabIndex == 1 ? ' active' : '')" @click="tabClick(1)">待结算</view>
  12. <view :class="'li' + (tabIndex == 2 ? ' active' : '')" @click="tabClick(2)">已结算</view>
  13. </view> -->
  14. </view>
  15. <view class="total ddflex">总计<view><text>¥</text>{{money ? money : 0.00}}</view></view>
  16. </view>
  17. <view style="height: 170rpx;"></view>
  18. <view class="list" v-if="pageList&&pageList.length>0">
  19. <view class="li ddflex" v-for="(item,index) in pageList" :key="index">
  20. <image :src="item.avatar ? item.avatar : '../../static/images/userimg.png'" mode="aspectFill" class="userimg"></image>
  21. <view class="fflex">
  22. <view class="ddflex">
  23. <view class="fflex">
  24. <view class="username">{{item.nickName}}</view>
  25. <view class="time">{{item.orderCreateDate}}</view>
  26. </view>
  27. <view class="money">¥<text>{{item.orderMoney}}</text></view>
  28. </view>
  29. <view class="des ddflex tover">
  30. 购买了
  31. <view class="fflex">
  32. <view class="tover" v-for="(it,idx) in item.products" :key="idx">{{it.productName}}</view>
  33. </view>
  34. </view>
  35. <!-- <view class="money ddflex">奖励<view><text>¥</text>{{item.commission}}</view></view> -->
  36. <view class="opt ddflex">
  37. <view :class="'shifu ddflex' + (item.state==2 ? ' green' : item.state==1 ? ' dai' : '')"><text>佣金</text>¥<text>{{item.money}}</text></view>
  38. <view class="sta dai" v-if="item.state==1">待结算</view>
  39. <view class="sta green" v-else-if="item.state==2">已结算</view>
  40. </view>
  41. </view>
  42. </view>
  43. </view>
  44. <view class="nodata" v-else>
  45. <image :src="picUrlss+'empty_dd.png'"></image>
  46. <text>暂无记录</text>
  47. </view>
  48. </view>
  49. </template>
  50. <script>
  51. //获取应用实例
  52. const app = getApp();
  53. const req = require('../../utils/request.js');
  54. const api = require('../../utils/api.js');
  55. export default {
  56. data() {
  57. return {
  58. picUrlss: req.public.picUrls,
  59. timeIndex: 0,
  60. timeData: [
  61. '全部',
  62. '今天',
  63. '昨天',
  64. '近7天',
  65. '近30天'
  66. ],
  67. pageList: [],
  68. form: {
  69. page: 1,
  70. limit: 12
  71. },
  72. isLoad: true,
  73. money: '',
  74. state: 1
  75. };
  76. },
  77. onLoad(options) {
  78. this.state = options.state
  79. this.timeIndex = options.timeIndex
  80. if(options.timeIndex == 5){
  81. uni.setNavigationBarTitle({
  82. title:'本月收入'
  83. })
  84. }else{
  85. if(options.state == 1){
  86. uni.setNavigationBarTitle({
  87. title:'待结算'
  88. })
  89. }else{
  90. uni.setNavigationBarTitle({
  91. title:'可提现'
  92. })
  93. }
  94. }
  95. this.getMoney();
  96. this.getData();
  97. },
  98. onReachBottom: function() {
  99. this.form.page++;
  100. this.getData();
  101. },
  102. methods: {
  103. changeTimePicker(e){
  104. this.timeIndex = e.detail.value;
  105. this.getMoney();
  106. this.isLoad = true;
  107. this.form.page = 1;
  108. this.getData();
  109. },
  110. getMoney(){
  111. let params = {
  112. state: this.state,
  113. }
  114. if(this.timeIndex == 0){
  115. delete params.timeType;
  116. }else if(this.timeIndex == 1){//今天
  117. params.timeType = 0;
  118. }else if(this.timeIndex == 2){//昨天
  119. params.timeType = -1;
  120. }else if(this.timeIndex == 3){//近7天
  121. params.timeType = -7;
  122. }else if(this.timeIndex == 4){//近30天
  123. params.timeType = -30;
  124. }else if(this.timeIndex == 5){//本月
  125. params.timeType = 1;
  126. }
  127. req.getRequest('/api/distribution/incomeCountMoney',params,data=>{
  128. this.money = data.data
  129. })
  130. },
  131. getData() {
  132. if (!this.isLoad) return false;
  133. this.isLoad = false;
  134. let that = this;
  135. let form = that.form;
  136. form.state = that.state;
  137. if(that.timeIndex == 0){
  138. delete form.timeType;
  139. }else if(that.timeIndex == 1){
  140. form.timeType = 0;
  141. }else if(that.timeIndex == 2){
  142. form.timeType = -1;
  143. }else if(that.timeIndex == 3){
  144. form.timeType = -7;
  145. }else if(that.timeIndex == 4){
  146. form.timeType = -30;
  147. }else if(that.timeIndex == 5){//本月
  148. form.timeType = 1;
  149. }
  150. req.getRequest('/api/distribution/incomeV2', form, data => {
  151. // console.log(data);
  152. if(data&&data.length > 0){
  153. data.map(it=>{
  154. it.products = JSON.parse(it.products)
  155. return it;
  156. })
  157. }
  158. if (data && data.length >= 10) that.isLoad = true;
  159. if (that.form.page > 1) data = that.pageList.concat(data);
  160. that.pageList = data;
  161. // that.money = data.money > 0 ? data.money.toFixed(2) : '0.00'
  162. });
  163. }
  164. }
  165. };
  166. </script>
  167. <style>
  168. @import "./settleDetail.css";
  169. </style>