equipmentSratisticsList.vue 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <template>
  2. <view v-if="merchantListSize>1">
  3. <uni-collapse :accordion="true">
  4. <uni-list>
  5. <view v-for="merchant in merchantList" :key="merchant.id">
  6. <uni-list-item :title="getMerchantTitle(merchant)" @click="openEquipmentStatisticsByAdmin(merchant)"/>
  7. </view>
  8. </uni-list>
  9. </uni-collapse>
  10. </view>
  11. <view v-else>
  12. <equipmentStatistics v-if="firstMerchantAdminId" :adminId="firstMerchantAdminId" style="padding: 20upx;"></equipmentStatistics>
  13. <view v-else style="text-align: center;">暂无数据</view>
  14. </view>
  15. </template>
  16. <script>
  17. import {mapState,mapActions,mapMutations} from 'vuex'
  18. import uniCollapse from '@/components/uni-collapse/uni-collapse.vue'
  19. import uniCollapseItem from '@/components/uni-collapse-item/uni-collapse-item.vue'
  20. import uniList from '@/components/uni-list/uni-list.vue'
  21. import uniListItem from '@/components/uni-list-item/uni-list-item.vue'
  22. import {equipmentStatistics} from '@/pages/Charts/equipmentStatistics';
  23. export default {
  24. components: {
  25. uniCollapse,
  26. uniCollapseItem,
  27. uniList,
  28. uniListItem
  29. },
  30. data() {
  31. return {
  32. globalUser:{},
  33. merchantList:[{equipmentList:[]}],
  34. extraIcon: {
  35. color: '#4cd964',
  36. size: '22',
  37. type: 'spinner'
  38. }
  39. }
  40. },
  41. computed: {
  42. ...mapState(['loginUser']),
  43. firstMerchantAdminId:{
  44. get(){
  45. console.log('firstMerchantAdminId',this.merchantList[0].id)
  46. return this.merchantList[0].id;
  47. }
  48. },
  49. merchantListSize:{
  50. get(){
  51. console.log('merchantList1',this.merchantList.length)
  52. return this.merchantList.length;
  53. }
  54. }
  55. },
  56. onShow(state){
  57. this.globalUser = uni.getStorageSync("globalUser");
  58. this.init();
  59. },
  60. onLoad(state){
  61. // this.init();
  62. },
  63. onPullDownRefresh() {
  64. this.init();
  65. },
  66. methods: {
  67. ...mapActions('chart', ['getEquipmentListByUser']),
  68. async init(){
  69. await this.getEquipmentListData();
  70. },
  71. openEquipmentStatisticsByAdmin(merchant){
  72. const adminId = merchant.id;
  73. const pname = merchant.name;
  74. uni.navigateTo({
  75. url: '/pages/Charts/equipmentStatistics?adminId=' + adminId+'&pname='+pname,
  76. });
  77. },
  78. getMerchantTitle(merchant){
  79. return merchant.name?merchant.name:merchant.username;
  80. },
  81. getEquipmentListData(){
  82. // console.log('getEquipmentListData')
  83. this.getEquipmentListByUser(this.globalUser)
  84. .then(data => {
  85. debugger
  86. this.merchantList = data;
  87. console.log('getEquipmentListData',this.merchantList)
  88. uni.stopPullDownRefresh();
  89. }
  90. , _ => void uni.stopPullDownRefresh());
  91. }
  92. }
  93. }
  94. </script>
  95. <style>
  96. </style>