index.vue 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. <template>
  2. <view>
  3. <view class="container">
  4. <van-tabs :active="active" class="custom_tabs" line-width="20" line-height="2" :swipe-threshold="6" :border="false" @click="onClickTab">
  5. <van-tab title="待审核" :name="0"></van-tab>
  6. <van-tab title="通过" :name="1"></van-tab>
  7. <van-tab title="驳回 " :name="-1"></van-tab>
  8. </van-tabs>
  9. <view class="list">
  10. <view class="item" v-for="(log, index) in dataList" :key="index">
  11. <view class="item_t">
  12. <view class="price">¥{{ log.money }}</view>
  13. <view :class="log.status == 0 ? 'status' : log.status == -1 ? 'status refuse' : 'status pass'">
  14. {{ log.status == 0 ? '待审核' : log.status == -1 ? '驳回' : '通过' }}
  15. </view>
  16. </view>
  17. <view class="mark" v-if="log.created_at">
  18. <view class="mark_l">申请时间:</view>
  19. <view class="mark_r">{{ log.created_at }}</view>
  20. </view>
  21. <view class="mark" v-if="log.review_at">
  22. <view class="mark_l">审核时间:</view>
  23. <view class="mark_r">{{ log.review_at }}</view>
  24. </view>
  25. <view class="mark" v-if="log.comment">
  26. <view class="mark_l">审核备注:</view>
  27. <view class="mark_r">{{ log.comment }}</view>
  28. </view>
  29. </view>
  30. </view>
  31. </view>
  32. <!-- loading -->
  33. <van-overlay :show="loading" :z-index="100">
  34. <van-loading custom-class="custom_loading" />
  35. </van-overlay>
  36. </view>
  37. </template>
  38. <script>
  39. let myPro = require('../../../utils/wxRequest.js');
  40. let util = require('../../../utils/util.js');
  41. export default {
  42. data() {
  43. return {
  44. imgUrl: getApp().globalData.imgUrl,
  45. active: 0,
  46. // 0待审核 -1驳回 1通过
  47. dataList: [],
  48. page: 1,
  49. size: 10,
  50. finished: false,
  51. // 全局loading
  52. loading: false,
  53. log: {
  54. money: '',
  55. status: 0,
  56. created_at: '',
  57. review_at: '',
  58. comment: ''
  59. }
  60. };
  61. }
  62. /**
  63. * 生命周期函数--监听页面加载
  64. */,
  65. onLoad: function (options) {
  66. let that = this;
  67. if (options.status != null) {
  68. that.setData({
  69. active: options.status
  70. });
  71. }
  72. that.getDataList();
  73. },
  74. /**
  75. * 生命周期函数--监听页面初次渲染完成
  76. */
  77. onReady: function () {},
  78. /**
  79. * 生命周期函数--监听页面显示
  80. */
  81. onShow: function () {
  82. let that = this;
  83. },
  84. /**
  85. * 生命周期函数--监听页面隐藏
  86. */
  87. onHide: function () {},
  88. /**
  89. * 生命周期函数--监听页面卸载
  90. */
  91. onUnload: function () {},
  92. /**
  93. * 页面相关事件处理函数--监听用户下拉动作
  94. */
  95. onPullDownRefresh: function () {},
  96. /**
  97. * 页面上拉触底事件的处理函数
  98. */
  99. onReachBottom: function () {
  100. let that = this;
  101. if (!that.finished) {
  102. that.getDataList();
  103. }
  104. },
  105. methods: {
  106. // 获取商家订单列表
  107. getDataList() {
  108. let that = this;
  109. let params = {
  110. page: that.page,
  111. size: that.size,
  112. status: that.active
  113. };
  114. that.setData({
  115. loading: true
  116. });
  117. myPro
  118. .wxRequest('store/tx/log', 'GET', params)
  119. .then((res) => {
  120. that.setData({
  121. loading: false
  122. });
  123. let tempList = res.result; // 无数据
  124. if (tempList.length == 0) {
  125. uni.showToast({
  126. title: '暂无更多数据',
  127. icon: 'none'
  128. });
  129. that.setData({
  130. finished: true
  131. });
  132. } else {
  133. // 有数据
  134. let list = that.dataList;
  135. list = list.concat(tempList);
  136. that.setData({
  137. dataList: list,
  138. page: that.page + 1
  139. });
  140. }
  141. })
  142. .catch((err) => {
  143. that.setData({
  144. loading: false
  145. });
  146. console.log('报错信息', err);
  147. uni.showToast({
  148. title: err,
  149. icon: 'none'
  150. });
  151. });
  152. },
  153. // 切换列表
  154. onClickTab(event) {
  155. // console.log('event',event)
  156. let that = this;
  157. that.setData({
  158. active: event.detail.name,
  159. page: 1,
  160. dataList: [],
  161. finished: false
  162. });
  163. that.getDataList();
  164. }
  165. }
  166. };
  167. </script>
  168. <style>
  169. /* tab */
  170. .van-tabs__scroll--line {
  171. height: auto !important;
  172. }
  173. .van-tabs {
  174. border-bottom: 1rpx solid rgba(243, 244, 249, 1);
  175. }
  176. .van-tabs__line {
  177. width: 40rpx !important;
  178. height: 4rpx;
  179. background: rgba(211, 68, 68, 1);
  180. border-radius: 2rpx !important;
  181. }
  182. .van-tab,
  183. .van-tab .van-ellipsis {
  184. padding: 0 !important;
  185. font-size: 30rpx;
  186. color: rgba(0, 0, 0, 1);
  187. }
  188. .van-tab--active,
  189. .van-tab--active .van-ellipsis {
  190. color: rgba(211, 68, 68, 1);
  191. }
  192. /* 提现记录 */
  193. .list {
  194. padding: 90rpx 30rpx 0;
  195. }
  196. .list .item {
  197. margin-top: 30rpx;
  198. font-size: 30rpx;
  199. background: rgba(255, 255, 255, 1);
  200. box-shadow: 0rpx 0rpx 21rpx 0rpx rgba(0, 0, 0, 0.09);
  201. border-radius: 10rpx;
  202. padding: 0 30rpx;
  203. }
  204. .list .item .item_t {
  205. display: flex;
  206. justify-content: space-between;
  207. align-items: center;
  208. padding: 10rpx 0;
  209. }
  210. .list .item .mark {
  211. display: flex;
  212. justify-content: space-between;
  213. align-items: center;
  214. padding: 10rpx 0;
  215. }
  216. .list .item .mark .mark_r {
  217. padding-left: 30rpx;
  218. }
  219. .list .item .status.refuse {
  220. color: #d54c43;
  221. }
  222. .list .item .status.pass {
  223. color: rgba(100, 200, 133, 1);
  224. }
  225. /* 固定tab的位置 */
  226. .custom_tabs {
  227. width: 100%;
  228. position: fixed;
  229. top: 0;
  230. left: 0;
  231. }
  232. </style>