stat_gather.vue 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <template>
  2. <view class="page-box-bg-fff r-30 p-30 sys-weight-400" :class="is_margin_top?'m-t20':''">
  3. <StatisticsTitle :genre="genre" :leftText="leftText" :rightText="rightText" @onHandle="onHandle">
  4. </StatisticsTitle>
  5. <view v-if="is_type == 1">
  6. <view class="ranking_item sys-from-background-color m-b16 r-20 p-20 p-tb40" v-if="index<=2" v-for="(item,index) in outList"
  7. :key="index">
  8. <view class="row-justify-sb center sys-weight-400 size-28 color-000 r-20">
  9. <view class="row-c line-40">
  10. <image class="wh-36 m-r20" :src="`/static/img/statistics/${iconList[index]}.png`"
  11. mode="aspectFill">
  12. </image>
  13. <text>{{item.name}}</text>
  14. </view>
  15. <text>{{item.total_num}}笔</text>
  16. <view class="sys-weight-600 line-30">
  17. <text class=" text-color-12 m-r10">{{item.value}}万</text>
  18. <uni-icons type="forward" size="14" color="#D8D8D8"></uni-icons>
  19. </view>
  20. </view>
  21. </view>
  22. <en-blank v-if="outList.length<=0"></en-blank>
  23. </view>
  24. <view v-if="is_type == 2">
  25. <view class="ranking_item sys-from-background-color m-b16 r-20 p-20 p-tb40" v-if="index<=2" v-for="(item,index) in putList"
  26. :key="index">
  27. <view class="row-justify-sb center sys-weight-400 size-28 color-000 r-20">
  28. <view class="row-c line-40">
  29. <image class="wh-36 m-r20" :src="`/static/img/statistics/${iconList[index]}.png`"
  30. mode="aspectFill">
  31. </image>
  32. <text>{{item.name}}</text>
  33. </view>
  34. <text>{{item.total_num}}笔</text>
  35. <view class="sys-weight-600 line-30">
  36. <text class=" text-color-12 m-r10">{{item.value}}万</text>
  37. <uni-icons type="forward" size="14" color="#D8D8D8"></uni-icons>
  38. </view>
  39. </view>
  40. </view>
  41. <en-blank v-if="putList.length<=0"></en-blank>
  42. </view>
  43. </view>
  44. </template>
  45. <script>
  46. import StatisticsTitle from "./statistics_title.vue";
  47. import EnBlank from "@/components/en-utils/en-blank/en-blank.vue";
  48. export default {
  49. name: 'stat_gather',
  50. components: {
  51. EnBlank,
  52. StatisticsTitle
  53. },
  54. props: {
  55. genre: {
  56. type: Number,
  57. default: 0
  58. },
  59. is_type: {
  60. type: Number,
  61. default: 1
  62. },
  63. is_margin_top: {
  64. type: Boolean,
  65. default: true
  66. },
  67. leftText: {
  68. type: String,
  69. default: ''
  70. },
  71. rightText: {
  72. type: String,
  73. default: '全部'
  74. },
  75. outList:{
  76. default:[]
  77. },
  78. putList:{
  79. default:[]
  80. }
  81. },
  82. data() {
  83. return {
  84. iconList: ['champion', 'runner-up', 'third'],
  85. userIconList: ['one', 'two', 'three'],
  86. taskIconLsit: ['task-one', 'task-two', 'task-three', 'task-four']
  87. };
  88. }
  89. }
  90. </script>
  91. <style lang="scss" scoped>
  92. .ranking_item:last-child {
  93. margin-bottom: 0;
  94. }
  95. </style>